給產品經理的 AI 開發指南

為什麼管理機器學習(ML)產品比一般軟體困難?「實驗」是關鍵!

Bastiane Huang
Nov 11, 2019 · 10 min read

關於管理AI產品,我認為最重要的幾件事:

  1. 機器學習(ML)產品管理比一般軟體更具挑戰性,因為它涉及更多的不確定性。不僅需要技術上的改變,還需要組織上的改變。
  2. ML最適合做出決策或預測。
  3. ML產品經理最重要的工作:明確定義問題,確定需求,設定衡量成功的標準,並為ML工程師提供足夠的空間和時間探索解決方案。
  4. 從第一天就開始計畫數據策略(Data Strategy)。
  5. 構建ML產品是跨領域的,不只是資料科學。

想看更多文章嗎?點這裡追蹤我!

在先前的<AI重新定義機器人>文章中,我提到了ML帶來的最大不同是:

讓機器從依賴人工編寫程式,轉向真正的自主學習

機器不需要人工指示,而是自行根據數據中識別出的模式,進行預測和改進。這就是為什麼ML特別適用於那些,以往難以明確解釋定義的問題。這也代表ML可以使你的產品更個人化,更自動化,和更精確。

先進的演算法,大數據,和硬體價格下降,成為ML成長的主要驅動力。

AI已在各個領域逐漸被採用。麥肯錫(Mckinsey)最近的報告中顯示,近一半的公司在其研發流程中整合了AI,另外有30%的公司正在試驗AI項目。

不難看出為什麼,許多人預期ML將比移動技術帶來更巨大的產業變革。但是,與此同時,公司引進ML的難度,也可能比當年採用移動技術更高數倍以上。為什麼呢?在討論具體原因之前,讓我們先一起聊聊什麼是ML。

機器學習(ML)三大類型:監督學習、無監督學習、強化學習

AI人工智能並沒有一個普遍被認同的定義,而且它的定義不斷在改變。一旦某項任務能夠成功被機器執行,該任務就不再屬於AI的範圍。

ML是AI的一部分。 Carnegie Mellon大學教授湯姆·米切爾(Tom M.Mitchell)將機器學習定義為對一種,「允許程式根據經驗自動進行改進」的演算法。

機器學習有三種主要類型:

  • 監督學習(Supervised Learning):最常見和最被廣泛使用的類型。這些算法從被事先標記好的數據(labeled data)中學習,大多時候被用以預測結果。例如,給予機器大量標記好的動物圖片,讓機器學習判斷貓和狗。
  • 無監督學習(Unsupervised Learning):無監督學習算法不需要事先標示,而是直接從數據學習判讀模式。它可以用於聚類(clustering),關聯(association) 和異常檢測(anomaly detection)問題。另外還有半監督學習,是監督學習與非監督學習之間的混合體。
  • 強化學習(Reinforcement Learning):演算法藉由得到環境中的反饋而學習。 RL通常用於機器人技術,或自動駕駛汽車等控制領域。例如將目標函數(Objective Funcion)設定為「成功從A點移動到B點」,每次機器人成功到達B點,就會得到正面回應(reward),一直到重複直到機器人學會執行這項任務為止。

機器學習產品的類型

根據產品的類型和核心價值的來源,你將需要不同技能,並且專注於產品的不同面向。

  • 使用者是企業,還是一般消費者?

像Alexa或Google Assistant這樣的消費性ML產品,具有更強的社交互動成分。因此,用戶體驗(UX)在設計消費類ML產品中扮演著極關鍵的角色,而ML技術則往往是達成更好用戶體驗的方式之一。

例如,NLP(自然語言處理)被用於達成Alexa及用戶之間更自然的溝通。另一方面,B2B的ML產品對應的是企業,甚至是工業用戶(例如用於預測工廠儀器維護時程的演算法),其核心價值往往來自預測的準確性,而非UX。

這並不是說UX對面向企業的ML產品不重要。而是,當你的資源有限,並且需要集中精力優化產品的某些部分時,就需要考慮這個問題。

  • 你要設計的是ML產品?或是將ML應用到你的產品中?

如果你產品的核心價值來自ML模型,那麼你很可能正在設計一個ML產品。相反的,如果ML僅用於增強產品的用戶體驗或部分性能,那麼你很可能正在將ML應用於產品上。

在第二種情況下,身為產品經理,你不應該花太多時間顧慮技術細節;像是「ML模型是以CNN(卷積神經網路)還是R-CNN為基礎」,而是應該花時間了解模型的輸入(input)和輸出(output)。

舉例來說,你要使用的這個ML模型,採用用戶的人口統計數據(input)來預測用戶在平台上的每月支出(output)?另一方面,設計ML產品通常需要PM具備更高的技術能力,以幫助團隊確定關鍵決策和權衡取捨。

產品類型也會影響組織結構。對於研發機器學習產品的公司,或像Facebook和Google這類在ML上投入大量資金的的大型公司,通常會雇用機器學習研究人員或資料科學家,並將他們與機器學習工程師組成團隊。

相反的,對於想將ML應用於其產品的公司,或資源有限的小型公司,最好的策略是雇用跨領域的ML工程師,或培訓軟體工程師學習ML,而不是僱用ML研究人員。

  • 構建ML產品通常是跨領域的。

研發機器學習產品很少會只涉及ML。它通常是跨領域的,不僅涉及ML模型設計及訓練,還涉及軟體工程,後端結構,數據分析,UX / UI設計,甚至是軟硬體整合等等。

產品經理需要能夠管理跨職能的團隊,並處理團隊之間的相互依賴和潛在衝突。 ML從根本上不同於其他學科,這點會在下一段進一步說明。如果你要設計和現實世界互動的ML產品(例如機器人技術或自動駕駛汽車),情況將變得更加複雜。

PM需要知道使用ML可以做什麼,和不能做什麼,何時應該使用ML和何時不應該使用ML。

其他需要理解的關鍵ML概念

  • 過擬合 (Overfit):是一種常見的錯誤類型,當機器學習模型過於匹配特定的數據集時發生。可靠的ML模型不僅在「訓練數據集」(training dataset),也在「驗證數據集」(validation dataset)上表現良好。但是,在過擬合的情況下,訓練數據的表現會變好,但對於沒有看過的,驗證數據的表現卻反而會變差。
  • 深度學習(DL):主要用於圖像分類。 DL使用深度神經網絡,並以標籤圖像作為輸入。神經網絡的每一層,都會將輸入轉換為稍微抽象和複合的表示形式。最終,模型將能學會識別圖像中的內容。
  • 自然語言處理(NLP):這是電腦科學中的一個領域,目的是使機器可以理解人類語言,但不一定涉及ML。NLP通常用於聊天機器人、語音助手、或是預處理數據。

管理機器學習產品的挑戰

1. 實驗是機器學習的關鍵部分。

ML也會用到程式代碼和數據,但若因此就認為ML與軟體工程本質相同,那就大錯特錯了。

與軟體工程不同,開發ML產品需要進行更多的實驗,涉及更多的不確定性和可變性。軟體工程是一個為機器編寫規則的確定性過程,而機器學習則具有更高的機率性,因為它可以自行學習,而不需要我們來編寫規則。

例如,如果你想教機器識別貓。透過軟體工程,你可能會想出「一隻貓有四隻腿和兩個尖尖的耳朵」這樣的明確規則。

但如果使用深度學習,要做的就不是提供明確的規則。

而是為機器提供一堆貓的照片(事先標記好這些是貓的圖像),然後讓機器自行學習,摸索出規則。

你和你的團隊要做的是:定義問題,準備數據,建立機器學習模型,測試和迭代,直到你擁有可以提供所需結果的模型為止。

這就是為什麼在開發ML產品時通常需要承擔更多的風險。對於產品經理而言,重要的是要幫團隊建立正確的期望,以避免團隊之間可能發生的衝突。

例如,軟體工程師可能會覺得,ML團隊沒有給他們足夠明確的需求。但這並不一定是ML團隊的問題,在實驗階段,就連ML團隊也很難預測最後模型的表現是好是壞。這時讓其他團隊了解ML產品的實驗本質就很重要。

讓工程師與研究人員,資料科學家緊密合作也很重要,這樣他們才能彼此平衡,不讓產品研究失焦。更重要的是,最好早點開發出可供測試的產品,定期測試,以確保ML團隊所用的演算法與產品目標一致。

2. 開發ML是一個高度迭代的(iterative)過程。

正如前面提到的,ML非常適合解決人類無法明確定義的復雜問題。模型需要訓練,測試和調整。通常,資料科學家在選擇令人滿意的方法之前,必須先測試好幾種方法。這就是為什麼通常很難定義ML產品的里程碑和時間表。

也因此,對於產品經理來說,明確定義需求,設定產品成功標準,並確保團隊經常根據所需標準來測試ML模型,都是相當重要的。

3. 除技術挑戰外,還有更多的組織結構挑戰。

因為ML與軟體工程本質截然不同,所以更需要進行一些根本性的組織變革:例如尊重實驗文化,數據分析驅動的思維方式,以及對不確定性的包容。

如果將機器學習視為純粹的技術問題,而忽略了相關的組織變革,公司很可能會面臨所謂「創新者的困境」(The Innovator’s Dilemma)。這對機器人製造商等硬體公司來說尤其具有挑戰,因為它們對於過去一直追求高精度,然而,ML雖然會隨著數據增加而進步,卻通常無法在一開始就達到100%精準。此外,機器學習產品需要大量的數據,所以業者必須建立自己的數據管道和基礎架構,以支持ML產品的擴展。對大多數的公司來說,這也是一個全新的課題。

4. 機器學習仍然是一個新領域,並且會不斷發展。

「軟體工程」一詞最早於1965年出現,也就是程式語言出現15年後。大約20年後,軟體工程學院才成立,以管理軟體工程開發流程。今天,我們已經找到了軟體工程的最佳實踐(best practice)。

反觀機器學習,在1990年才開始作為一個單獨的領域而蓬勃發展。深度學習是ML的一部分,它在圖像識別和NLP等領域創造了新的記錄,但直到2012年AlexNet出現之後,才被大眾廣泛討論。

與軟體工程相比,ML仍處於起步階段,因此仍缺乏行業標準,衡量指標,基礎架構和開發工具。因此,相關企業仍在探索最佳作法和熱門應用。

5. 機器學習產品的可解釋性和透明度。

機器學習算法就像一個黑盒子,它接受輸入(例如圖像)並輸出預測(例如圖像中的人物是什麼)。這使得產品經理很難解釋ML模型是如何運作的,也很難從用戶和相關單位得到全面支持。

尤其是在醫療保健等關鍵領域,責任歸屬和資訊透明度至關重要。在沒有清楚地了解算法實際工作原理的情況下,確保ML模型與產品目標之間的一致性是一項艱鉅的挑戰。

面對這些挑戰,我們應該如何管理機器學習產品?在第二部分中,我將分享我所學習到的最佳作法。

想看更多文章嗎?點這裡追蹤我!

感謝閱讀!如果希望看到其他相關的主題也歡迎留言!
如果你喜歡這篇文章,請給我 1–19 個拍手;
如果想看更多關於產品管理的文章,請給我 20–50 個拍手!
如果文章對你有一點啟發或幫助,請長按拍手按鈕(max50)讓我知道 👏每週我都會定期更新產品經理或機器學習相關文章,點這裡追蹤我!✨

Bastiane Huang 目前在舊金山擔任 AI/Robotics新創公司產品經理,專注於開發機器學習軟體,用於機器人視覺和控制。她擁有近10年產品及市場開發管理經驗,並在美國《機器人商業評論》及《哈佛商業評論》發表文章及個案研究。如果你也對Robotics 2.0(AI-Enabled Robotics)、產品管理、Future of Work有興趣,請點這裡追蹤她

Marketingdatascience

行銷資料科學 — 數據驅動精準行銷。基礎概念、趨勢、方法和實戰。

Bastiane Huang

Written by

Machine Learning, Product Management, Robotics 2.0: AI-Defined Robotics, Tech x Business ✉ bastiane.substack.com Silicon Valley Startup, Harvard Business School

Marketingdatascience

行銷資料科學 — 數據驅動精準行銷。基礎概念、趨勢、方法和實戰。

Bastiane Huang

Written by

Machine Learning, Product Management, Robotics 2.0: AI-Defined Robotics, Tech x Business ✉ bastiane.substack.com Silicon Valley Startup, Harvard Business School

Marketingdatascience

行銷資料科學 — 數據驅動精準行銷。基礎概念、趨勢、方法和實戰。

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch

Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore

Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store