【投稿】給產品經理的 AI 開發指南:「實驗」是關鍵,別用開發軟體的方式開發 AI 產品

【為什麼我們要挑選這篇文章】AI 開始普及,不少企業正在開發機器學習相關產品。不同於傳統的軟體,機器學習沒辦法一開始就精準運算,它需要大量的學習,以提升模型的精準性。為了面對學習過程的不確定性,企業也需要進行文化變革。

以下,是企業開發機器學習產品時需要有的 mindset。(責任編輯:郭家宏)

作者:Bastiane Huang(OSARO 產品經理)

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

1. 機器學習(ML)產品管理比一般軟體更具挑戰性,因為它涉及更多的不確定性。不僅需要技術上的改變,還需要組織上的改變。

2. ML 最適合做出決策或預測。

3. ML 產品經理最重要的工作:明確定義問題,確定需求,設定衡量成功的標準,並為 ML 工程師提供足夠的空間和時間探索解決方案。

4. 從第一天就開始計畫數據策略(Data Strategy)。

5. 建構 ML 產品是跨領域的任務,不止是資料科學。

在上一篇文章中 ,我提到 ML 的最大不同是: 讓機器從依賴人工寫程式,轉向真正的自主學習。機器不需要人工指示,而是自行根據數據識別出的模式,進行預測和改進。這就是為什麼 ML 特別適用於以往難以明確解釋定義的問題;這也代表 ML 可以使你的產品更精確、個人化、自動化。先進的演算法,大數據,和硬體價格下降,成為 ML 成長的主要驅動力。

AI 已在各個領域逐漸被採用。麥肯錫(Mckinsey)最近的報告中顯示,近一半的公司在研發流程中整合了 AI,另外有 30% 的公司正在研究 AI。不難看出為什麼,許多人預期 ML 將比行動技術帶來更巨大的產業變革。但是同時,公司引進 ML 的難度也可能比當年採用行動技術更高數倍以上。為什麼?在討論具體原因之前,讓我們先一起聊聊什麼是 ML。

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

AI 人工智慧並沒有一個普遍被認同的定義,而且它的定義不斷在改變。一旦某項任務能夠成功被機器執行,該任務就不再屬於 AI 的範圍。 機器學習 ML 是 AI 的一部分。 CMU 教授湯姆.米切爾(Tom M.Mitchell)將機器學習定義為對一種,允許程式根據經驗自動進行改進的演算法。

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

1. 監督學習(Supervised Learning):最常見和最被廣泛使用的類型。這些演算法從事先標記好的數據(labeled data)中學習,大多時候被用以預測結果。例如,給予機器大量標記好的動物圖片,讓機器學習判斷貓和狗。

2. 無監督學習(Unsupervised Learning):無監督學習演算法不需要事先標示,而是直接從數據學習判讀模式。它可以用於聚類(clustering)、關聯(association)和異常檢測(anomaly detection)問題。另外還有半監督學習,是監督學習與非監督學習之間的混合體。

3. 強化學習(Reinforcement Learning):演算法藉由得到環境中的反饋而學習。 RL 通常用於控制領域,例如機器人技術或自動駕駛汽車。例如,將目標函數(Objective Funcion)設定為成功將 A 點移動到 B 點,每次機器人成功到 B 點就會得到正面反饋,一直到重複直到機器人學會執行這項任務為止。

設計機器學習產品前需要思考:使用者是企業還是一般消費者

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

使用者是企業或一般消費者?

像 Alexa 或 Google Assistant 的消費性 ML 產品,具有更強的社交互動成分。因此,用戶體驗(UX)在設計消費類 ML 產品中扮演著極關鍵的角色,ML 技術是達成更好用戶體驗的方式之一。例如,NLP(自然語言處理)被用於達成 Alexa 及用戶之間更自然的溝通。另一方面,B2B 面對企業用戶,尤其是工業用 ML 產品(例如用於預測工廠儀器維護時程的演算法),其核心價值往往來自預測的準確性。這並不是說 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 模型設計及訓練,還涉及軟體工程,後端結構,數據分析,UX/UI 設計,甚至是軟硬體整合。產品經理需要能夠管理跨職能的團隊,並處理團隊之間的相互依賴和潛在衝突。 ML 從根本上不同於其他學科,這點我會在下一段進一步說明。如果你要設計和現實世界互動的 ML 產品(例如機器人技術或自動駕駛汽車),情況將變得更加複雜。 PM 需要知道使用 ML 可以做什麼和不能做什麼,何時應該使用 ML 和何時不應該使用 ML。

其他需要理解的 ML 概念:過擬合、深度學習、自然語言處理

過擬合(Overfit):是一種錯誤類型,機器學習模型過於配對特定的數據集時發生。可靠的 ML 模型不僅在訓練數據集(training dataset),也在驗證數據集(validation dataset)上表現良好。但是在過擬合的情況下,訓練數據的表現會變好,但對於沒有看過的,驗證數據的表現卻反而會變差。

深度學習(DL):主要用於圖像分類。DL 使用深度神經網路,並以標籤圖像作為輸入。神經網路的每一層都會將輸入轉換為稍微抽象和復合的表示形式。最終,模型學會識別圖像中的對象。

自然語言處理(NLP):電腦科學的一個領域,目的是使機器可以理解人類語言。它不一定涉及 ML。 NLP 用於聊天機器人,語音助手或預處理數據。

管理機器學習產品的 5 個挑戰

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

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

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

例如,如果你想教機器識別貓,有了軟體工程,你可能會想出「一隻貓有四條腿和兩個尖尖的耳朵」這樣的明確規則。如果你使用深度學習,你要做的就不是提供明確的規則,而是為機器提供一堆貓照片(是先標記好這是貓的圖像),然後讓機器自行學習,摸索出規則。你和你的團隊要做的是定義問題,準備數據,建立機器學習模型,測試和迭代,直到你擁有可以提供所需結果的模型為止。

這就是為什麼在開發 ML 產品時通常需要承擔更多的風險。對於產品經理而言,重要的是要幫團隊建立正確的期望,以避免團隊之間可能發生的衝突。例如軟體工程師可能會覺得,ML 團隊沒有給他們足夠明確的需求。但這並不一定是 ML 團隊的問題,在實驗階段,連 ML 團隊也很能預測最後模型的表現是好是壞。這時讓其他團隊了解 ML 產品的本質就很重要。讓工程師與研究人員/科學家緊密合作也很重要,這樣他們才能彼此平衡,不讓產品研究失焦。更重要的是,最好早點開發出可供測試的產品,定期測試,以確保 ML 團隊所用的演算法與產品目標一致。

2. 開發 ML 是一個高度迭代的過程

正如前面提到的,ML 非常適合解決人類無法明確定義的復雜問題。模型需要訓練、測試和調整。通常資料科學家們在得到令人滿意的方法之前,必須先測試好幾種方法,這就是為什麼通常很難定義 ML 產品的里程碑和時間表。也因此,對於產品經理來說,明確定義需求,設定產品成功標準,並確保團隊經常根據所需標準測試機器學習模型至關重要。

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

因為 ML 與軟體工程截然不同,所以更需要進行一些根本性的組織變革:例如尊重實驗文化,數據分析驅動的思維方式,以及對不確定性的包容。如果將機器學習視為純粹的技術問題,而忽略了相關的組織變革,公司很可能會面臨「創新者的困境」。這對機器人製造商等公司來說特別有挑戰,因為他們過去一直追求高精度,而機器學習雖然會隨著數據增加而進步,卻通常無法在一開始就達到 100% 精準。此外,機器學習產品需要大量的數據,公司需要建立自己的數據管道和基礎架構,以支持 ML 產品的擴展,這對大多數的公司也是一個新的課題。

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

「軟體工程」一詞最早於 1965 年出現,也就是程式語言出現 15 年後。大約 20 年後,軟體工程學院才成立,以管理軟體工程開發流程。今天,我們已經找到了軟體工程的最佳實踐(best practice)。機器學習在 1990 年才開始作為一個單獨的領域而蓬勃發展。深度學習是 ML 的一個子集,它在圖像識別和 NLP 等領域創造了新的記錄,但直到 2012 年 AlexNet 出現之後,才被大眾廣泛討論。與軟體工程相比,ML 仍處於起步階段,因此缺乏行業標準,衡量指標,基礎架構和開發工具。企業仍在探索最佳作法和熱門應用。

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

機器學習算法就像一個黑盒子,它接受輸入(例如圖像)並輸出預測(例如圖像中的對象/人是什麼/是誰)。這使得產品經理很難解釋 ML 模型是如何運作的,也很難從用戶和相關單位得到全面支持。尤其是在醫療保健等關鍵領域,責任歸屬和透明度至關重要。在沒有清楚地了解算法實際工作原理的情況下,確保 ML 模型與產品目標之間的一致性是一項挑戰。

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

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

(本文經投稿作者 Bastiane Huang 授權刊登,並同意 TechOrange 編寫導讀與修訂標題,原文標題為 〈如何管理 AI 產品 — Part I〉。意投稿者可寄至:[email protected],經編輯檯審核並評估合宜性後再行刊登。首圖來源:Flickr CC Licensed)

更多關於 AI 的資訊

分析百位資安專家思考模式!劍橋科學家的 AI 系統清楚抓出網攻所有細節
【工程師真偉大】日本正在研發辨識大便的 AI 馬桶,負責蒐集大便的數據分析師表示……
一之軒推出全台首個「麵包辨識」AI,機器一掃價格瞬間幫你算好!

點關鍵字看更多相關文章: