從資料收集、模型選擇到效能評估與系統佈署,機器學習系統設計涵蓋諸多環節。資料品質、模型複雜度及佈署環境等因素都會影響系統的可靠性與可擴充套件性。持續交付和佈署方法能提升模型交付速度和品質,結合責任AI框架及機器學習治理,確保系統符合倫理規範並兼顧商業利益。資料安全和隱私是機器學習系統不可或缺的環節,尤其在生成式AI和大語言模型的應用中更需重視。透過敏捷開發流程,機器學習團隊能更有效地應對專案挑戰。產品開發流程則需整合設計思維和精益敏捷原則,並透過雙鑽石設計流程深入瞭解客戶需求,確保產品的商業可行性。
系統設計
設計機器學習系統是一個複雜的過程,涉及資料收集、處理、模型選擇、效能評估、可擴充套件性和故障模式等多個方面。有一本章《Designing Machine Learning Systems》對這個主題進行了深入的探討,涵蓋了從資料準備到模型佈署的各個階段。
在設計機器學習系統時,需要考慮多個因素,包括資料品質、模型複雜度、計算資源和佈署環境等。一個良好的設計可以幫助提高模型的效能、可靠性和可擴充套件性。
持續交付和佈署
機器學習模型的佈署和維護是整個專案中非常重要的一部分。持續交付和佈署(CD4ML)是一種方法,旨在提高機器學習模型的交付速度、品質和可靠性。它涉及可重現的模型訓練、評估和實驗,模型服務、測試和品質保證、模型佈署和監控等多個階段。
CD4ML可以幫助組織提高技術和商業績效,改善團隊的反應速度、認知負荷、滿意度和產品品質。它是一種將機器學習專案與DevOps實踐相結合的方法,旨在提高整個專案的效率和品質。
責任AI與機器學習治理
責任AI(Responsible AI)是一個框架,包含原則、政策、工具和流程,確保AI系統的開發和營運服務於個人和社會的利益,同時實作商業上的轉型影響。根據麻省理工學院史隆管理評論(MIT Sloan Management Review)的定義,責任AI是一種框架,旨在確保AI系統的開發和營運對個人和社會有益,同時也能實作商業上的轉型。
然而,根據麻省理工學院史隆管理評論2022年的全球高管報告,雖然AI專案正在增長,但責任AI的實施仍然滯後。調查發現,52%的公司正在實施某些責任AI實踐,但79%的公司表示其實施範圍和規模有限。雖然公司認識到責任AI對於解決AI風險(如安全性、偏見、公平性和隱私問題)至關重要,但他們承認自己忽略了其優先順序。
這個差距增加了公司的客戶面臨負面後果的可能性,並使公司面臨監管、財務和客戶滿意度風險。如果責任AI是目標,團隊往往需要一張地圖、路徑、指導和運輸工具來實作它。這就是機器學習治理(ML governance)作為一種機制的作用,幫助團隊實作責任AI的目標,以及其他機器學習團隊的目標。
機器學習治理涉及一系列流程、政策和實踐,旨在幫助從業者負責任地交付機器學習產品。它涵蓋了機器學習交付的整個生命週期,在以下各個階段發揮作用:
- 模型開發:為開發、測試、檔案化和佈署機器學習模型提供、最佳實踐和金標準。
- 模型評估:評估模型效能、識別偏見和確保公平性的方法,以便在佈署前進行評估。
- 監控和反饋迴圈:不斷監控模型效能、收集使用者反饋和改進模型的系統。
- 緩解策略:識別和緩解資料和演算法中的偏見,以避免負面和不公平的結果。
- 可解釋性:技術和工具,用於在某些場景下解釋模型的行為,以提高透明度、建立使用者信任和促進錯誤分析。
- 責任:明確的角色、職責和許可權;多學科團隊能夠管理機器學習系統和風險管理流程。
透過實施機器學習治理,公司可以確保其機器學習系統是負責任的、可靠的和值得信賴的,從而實作商業上的轉型和社會上的利益。
機器學習治理與資料品質
機器學習(ML)治理是一個涵蓋多個層面的概念,包括法規遵從、資料處理政策、使用者同意和隱私保護,以及倫理。這些方面對於確保機器學習系統的開發和使用是合法、合理和負責任的至關重要。
法規遵從
機器學習系統必須遵從相關的法律和行業規範,例如資料保護法規和稽核要求。這包括資料收集、儲存和處理的,以確保資料隱私和安全。使用者同意和隱私保護也是機器學習治理的一個重要方面,需要從使用者那裡獲得知情同意並保護他們的隱私。
資料品質和倫理
資料品質對於機器學習模型的效能有著至關重要的影響。如果訓練資料存在偏差,模型就會學習和延續這種偏差。因此,需要關注資料的品質和代表性,確保它們能夠反映現實世界的多樣性和複雜性。
除了資料品質之外,機器學習的倫理也是非常重要的。這包括考慮機器學習系統的社會影響、人類價值觀、潛在風險和可能的危害。機器學習治理需要在開發和使用機器學習系統時考慮這些因素,確保它們的使用是負責任和合理的。
資料迴圈和標籤
資料迴圈是機器學習系統設計的一個重要方面。這包括在生產環境中收集和標籤模型的預測,然後使用這些標籤的資料來評估和重新訓練模型。標籤可以是一個耗時的活動,需要考慮如何透過技術如主動學習、自監督學習和弱監督來擴大標籤。
機器學習治理的實踐
實踐機器學習治理需要一個全面的方法,包括以下幾個方面:
- 資料品質和代表性:確保訓練資料的品質和代表性,避免偏差和誤差。
- 使用者同意和隱私保護:從使用者那裡獲得知情同意並保護他們的隱私。
- 倫理:考慮機器學習系統的社會影響、人類價值觀、潛在風險和可能的危害。
- 資料迴圈和標籤:在生產環境中收集和標籤模型的預測,然後使用這些標籤的資料來評估和重新訓練模型。
- 機器學習治理框架:建立一個機器學習治理框架,包括、流程和工具,來支援機器學習系統的開發和使用。
透過實踐機器學習治理,組織可以確保其機器學習系統的開發和使用是合法、合理和負責任的,同時也能夠提高機器學習模型的效能和可靠性。
# 資料品質和代表性檢查
import pandas as pd
def check_data_quality(data):
# 檢查資料的品質和代表性
if data.isnull().values.any():
print("資料存在缺失值")
else:
print("資料完整")
# 使用者同意和隱私保護
def get_user_consent():
# 從使用者那裡獲得知情同意
consent = input("是否同意使用您的資料?")
if consent == "yes":
return True
else:
return False
# 資料迴圈和標籤
def data_cycle(model, data):
# 在生產環境中收集和標籤模型的預測
predictions = model.predict(data)
labels = []
for prediction in predictions:
label = input("請標籤這個預測:")
labels.append(label)
return labels
# 機器學習治理框架
class MLGovernance:
def __init__(self):
self.data_quality = None
self.user_consent = None
self.labels = None
def check_data_quality(self, data):
# 檢查資料的品質和代表性
self.data_quality = check_data_quality(data)
def get_user_consent(self):
# 從使用者那裡獲得知情同意
self.user_consent = get_user_consent()
def data_cycle(self, model, data):
# 在生產環境中收集和標籤模型的預測
self.labels = data_cycle(model, data)
# 使用機器學習治理框架
governance = MLGovernance()
governance.check_data_quality(pd.DataFrame({"A": [1, 2, 3]}))
governance.get_user_consent()
governance.data_cycle("model", pd.DataFrame({"A": [1, 2, 3]}))
這個例子展示瞭如何實踐機器學習治理,包括資料品質和代表性檢查、使用者同意和隱私保護、資料迴圈和標籤,以及機器學習治理框架的建立和使用。
資料安全與隱私:機器學習的重要環節
在機器學習(ML)的開發過程中,資料的安全與隱私是一個非常重要的環節。當我們在進行ML任務時,需要確保資料的安全和隱私,以避免資料被竊取或誤用。這不僅是對於使用者來說是一個重要的問題,也是對於企業和組織來說的一個重要的責任。
自然標籤的收集與風險
在收集自然標籤的過程中,我們需要考慮如何減少資料中毒攻擊和反饋迴圈的風險。資料中毒攻擊是指惡意的資料被加入到系統中,從而影響到模型的預測結果。反饋迴圈是指模型的預測結果影響到現實世界,從而進一步影響到資料的收集和模型的預測。
資料安全的多層次控制
為了確保資料的安全,需要實施多層次的控制。這包括在資料傳輸和儲存過程中使用加密和存取控制,實施最小許可權原則,確保只有授權的個人和系統可以存取資料。同時,需要建立資料治理和管理,定義和強制執行明確的政策,以指導資料的收集、儲存和使用。
組織層面的資料治理
在組織層面,需要建立資料治理和管理,以確保資料的使用是合乎道德和遵守相關法律法規的。這需要定義明確的政策和程式,以指導資料的收集、儲存和使用。同時,需要確保所有團隊和個人都瞭解和遵守這些政策和程式。
生成式AI和大語言模型的資料安全
在生成式AI和大語言模型的開發過程中,資料安全和隱私是一個非常重要的問題。這些模型需要大量的資料來進行訓練和最佳化,但是這些資料可能包含敏感的個人資訊或商業機密。因此,需要實施嚴格的資料安全和隱私措施,以確保資料的安全和合乎道德的使用。
圖表翻譯:
flowchart TD A[資料收集] --> B[資料儲存] B --> C[資料使用] C --> D[資料安全] D --> E[資料隱私] E --> F[組織層面的資料治理] F --> G[生成式AI和大語言模型的資料安全]
內容解密:
在上面的圖表中,我們可以看到資料安全和隱私是機器學習和生成式AI的重要環節。從資料收集到資料使用,需要實施多層次的控制和安全措施,以確保資料的安全和合乎道德的使用。同時,需要建立組織層面的資料治理和管理,以指導資料的收集、儲存和使用。
生成式人工智慧與大語言模型
近年來,生成式人工智慧(Generative AI)已成為人工智慧領域的一個重要趨勢。許多組織已經開始使用生成式人工智慧來開發新的產品和服務。作為一名技術專家,我們有機會與這些組織合作,共同開發出利用生成式人工智慧的創新解決方案。
生成式人工智慧的應用
在2023年底,許多生成式人工智慧的應用都使用了大語言模型(LLMs)來處理自然語言。LLMs是一種根據變換器架構的神經網路。除了LLMs之外,還有其他的生成式神經網路架構,例如生成式對抗網路(GANs)和自編碼器(Autoencoders)。此外,還有其他型別的生成式人工智慧,例如貝葉斯方法。
LLMs通常生成文字,包括自然語言和結構化的形式,如表格、JSON或程式碼。LLM生成輸出的方式是根據輸入的提示(prompt)生成一系列的輸出token。例如,Llama 2 7B模型可以根據一個開放的請求生成輸出,從token #4587 “Of"開始,接著是token #3236 “course”,然後繼續生成。LLMs也可以是多模態的,處理和生成影像、音訊和其他形式的資料。
LLM的訓練
作為一種神經網路,LLM的訓練過程是使用大量的輸入和預期輸出的例項,利用隨機梯度下降(SGD)演算法來最小化損失函式。損失函式代表了預測輸出和預期輸出的差異。在每次訓練迭代中,SGD調整神經網路的權重以減少損失函式,從而提高預測的準確性。雖然LLM的訓練過程複雜且需要大量的資料,但其基本原理與其他機器學習模型的訓練過程相同。
整合LLM的應用
許多整合生成式人工智慧的應用都會避免訓練或微調LLM的複雜性,直接使用預訓練的LLM作為一個靈活的應用元件。預訓練的LLM具有基礎的能力,但當它被整合到應用中時,可以透過提示和多次呼叫來獲得更好的回應。這些LLM的能力被描述為零次學習、少次學習和上下文學習,使用這些能力的技術被稱為“提示工程”。
LLM的限制
LLMs可以生成內容,但它們不能被依靠來完美地回憶資訊、抑制敏感資訊、推理、計劃、計算或檢測惡意意圖。這可能需要應用程式使用傳統的自然語言處理(NLP)和軟體應用開發技術來約束LLM的輸入或輸出,以獲得更好的效能、健壯性或保護免受威脅。一般來說,這些考慮使得整合LLMs變得複雜。
軟體架構和開發實踐
無論是整合預訓練模型還是訓練自有的模型,好的軟體架構原則和開發實踐都是非常重要的。這些原則和實踐可以幫助我們設計和開發出更好的應用程式,尤其是在面對LLM回應的不可預測性時。
效能導向的機器學習交付
在探索機器學習(ML)交付的複雜世界中,瞭解效能導向的方法至關重要。這種方法不僅關注於交付的速度和效率,也關注於交付的品質和價值。透過整合精益(Lean)原則和跨功能團隊合作,企業可以更好地交付ML解決方案,同時減少浪費,最大化價值。
精益原則在ML交付中的應用
精益是一種管理哲學,強調消除浪費,最大化價值。它的核心思想是關注於為客戶創造價值,同時消除不必要的步驟和活動。在ML交付中,精益原則可以幫助企業更好地管理複雜的資料和模型,同時提高交付的效率和品質。
跨功能團隊合作的重要性
跨功能團隊合作是ML交付中的關鍵因素。它可以幫助企業更好地整合不同的專業知識和技能,同時提高團隊的協作和溝通能力。透過跨功能團隊合作,企業可以更好地瞭解客戶的需求,同時交付更符合客戶需求的ML解決方案。
效能導向的ML交付實踐
效能導向的ML交付實踐包括以下幾個方面:
- 早期驗證: 早期驗證是ML交付中的關鍵步驟。它可以幫助企業更好地瞭解客戶的需求,同時避免投資於錯誤的ML模型。
- 跨功能團隊合作: 跨功能團隊合作可以幫助企業更好地整合不同的專業知識和技能,同時提高團隊的協作和溝通能力。
- 精益原則: 精益原則可以幫助企業更好地管理複雜的資料和模型,同時提高交付的效率和品質。
- 資料驅動的決策: 資料驅動的決策可以幫助企業更好地瞭解客戶的需求,同時交付更符合客戶需求的ML解決方案。
內容解密:
本節的內容主要關注於效能導向的ML交付的重要性和實踐。透過整合精益原則和跨功能團隊合作,企業可以更好地交付ML解決方案,同時減少浪費,最大化價值。同時,早期驗證、跨功能團隊合作、精益原則和資料驅動的決策是效能導向的ML交付實踐中的關鍵方面。
flowchart TD A[早期驗證] --> B[跨功能團隊合作] B --> C[精益原則] C --> D[資料驅動的決策] D --> E[效能導向的ML交付]
圖表翻譯:
此圖表展示了效能導向的ML交付的流程。首先,企業需要進行早期驗證,以瞭解客戶的需求。接下來,企業需要進行跨功能團隊合作,以整合不同的專業知識和技能。然後,企業需要應用精益原則,以消除浪費,最大化價值。最後,企業需要進行資料驅動的決策,以交付更符合客戶需求的ML解決方案。透過這個流程,企業可以更好地交付ML解決方案,同時減少浪費,最大化價值。
機器學習驅動的產品開發:一個跨學科的方法
在機器學習(ML)領域,建造一個成功的ML驅動的產品是一個充滿挑戰的任務。許多團隊在嘗試將ML應用於產品開發時,常常面臨著許多困難。然而,透過採用一個跨學科的方法,結合產品、工程和交付的知識和實踐,團隊可以克服這些挑戰,創造出卓越的ML驅動的產品體驗。
問題所在
在傳統的ML開發流程中,團隊通常將ML問題和資料問題分開處理。然而,這種方法忽略了ML驅動的產品開發的核心:它是一個產品問題。產品開發需要考慮使用者需求、商業目標和技術可行性等多個方面。ML團隊需要與產品經理、工程師和交付團隊合作,才能創造出成功的ML驅動的產品。
解決方案
為瞭解決這個問題,ML團隊需要進行一個基本的轉變,將ML驅動的產品開發視為一個跨學科的挑戰。這需要結合產品、工程和交付的知識和實踐,創造出一個整體的方法。以下是一些關鍵的原則和實踐:
- 產品導向: ML團隊需要與產品經理合作,瞭解使用者需求和商業目標,將ML應用於解決實際問題。
- 工程實踐: ML團隊需要採用工程實踐,如版本控制、測試和佈署,確保ML模型的可靠性和可擴充套件性。
- 交付導向: ML團隊需要與交付團隊合作,將ML模型整合到產品中,確保ML驅動的產品的交付效率和品質。
案例研究
在實踐中,許多團隊已經成功地應用了這種跨學科的方法。例如,一個醫療保健公司使用ML建立了一個預測病人復發的模型。透過與產品經理和工程師合作,該團隊創造了一個整體的解決方案,將ML模型整合到電子健康記錄系統中,提高了病人治療的效率和品質。
內容解密:
在這篇文章中,我們探討了機器學習驅動的產品開發的挑戰和解決方案。透過採用一個跨學科的方法,結合產品、工程和交付的知識和實踐,團隊可以創造出卓越的ML驅動的產品體驗。這需要ML團隊與產品經理、工程師和交付團隊合作,將ML應用於解決實際問題。
圖表翻譯:
graph LR A[ML團隊] --> B[產品經理] B --> C[工程師] C --> D[交付團隊] D --> E[ML驅動的產品] E --> F[使用者] F --> G[商業目標] G --> H[ML模型] H --> I[電子健康記錄系統] I --> J[病人治療] J --> K[效率和品質]
這個圖表展示了ML團隊、產品經理、工程師和交付團隊之間的合作關係,如何創造出卓越的ML驅動的產品體驗。
敏捷開發與機器學習團隊的交匯
在探討機器學習(ML)團隊的工作流程時,瞭解如何將敏捷開發的原則應用於機器學習專案至關重要。敏捷開發強調迭代、客戶合作以及對變化的回應。這些原則同樣適用於機器學習專案,因為它們涉及複雜的資料分析、模型建立和持續的改進。
機器學習專案的挑戰
機器學習專案經常面臨著與傳統軟體開發專案不同的挑戰。首先,機器學習專案需要大量的資料來建立和訓練模型,這些資料可能來源於各種不同的來源,包括使用者輸入、感測器資料等。其次,機器學習模型的建立需要複雜的演算法和計算資源,同時也需要對資料有深入的理解。最後,機器學習模型的評估和最佳化需要迭代的過程,包括不斷地收集新的資料、調整模型引數和評估模型的效能。
敏捷開發在機器學習中的應用
為了應對這些挑戰,機器學習團隊可以從敏捷開發中汲取經驗。以下是幾個關鍵的敏捷開發原則及其在機器學習中的應用:
- 迭代開發:機器學習專案可以透過迭代的方式進行,先建立一個基本的模型,然後透過迭代的過程不斷地改進和最佳化。
- 客戶合作:在機器學習專案中,客戶的需求和反饋至關重要。機器學習團隊需要與客戶緊密合作,以確保模型滿足客戶的需求和期望。
- 對變化的回應:機器學習專案需要對變化的需求和資料進行回應。機器學習團隊需要能夠快速地調整模型和資料處理流程,以應對新的需求和資料。
實踐中的機器學習
在實踐中,機器學習團隊可以透過以下幾種方式將敏捷開發原則應用於機器學習專案:
- 使用敏捷開發工具:機器學習團隊可以使用敏捷開發工具,如Jira、Trello等,來管理專案的進度和任務。
- 建立迭代的開發流程:機器學習團隊可以建立迭代的開發流程,先建立一個基本的模型,然後透過迭代的過程不斷地改進和最佳化。
- 與客戶緊密合作:機器學習團隊需要與客戶緊密合作,以確保模型滿足客戶的需求和期望。
內容解密:
在這篇文章中,我們探討了敏捷開發原則在機器學習專案中的應用。敏捷開發強調迭代、客戶合作以及對變化的回應,這些原則同樣適用於機器學習專案。透過迭代開發、客戶合作和對變化的回應,機器學習團隊可以更好地建立和最佳化機器學習模型,同時也能夠更好地滿足客戶的需求和期望。
flowchart TD A[敏捷開發原則] --> B[迭代開發] B --> C[客戶合作] C --> D[對變化的回應] D --> E[機器學習模型] E --> F[最佳化和改進]
圖表翻譯:
這個圖表展示了敏捷開發原則在機器學習專案中的應用流程。從左到右,圖表展示了敏捷開發原則、迭代開發、客戶合作、對變化的回應、機器學習模型、最佳化和改進的流程。這個圖表幫助我們瞭解敏捷開發原則如何應用於機器學習專案,從而更好地建立和最佳化機器學習模型。
產品交付流程:發現、啟動和交付
在產品開發過程中,瞭解客戶或商業需求以及產品工程團隊交付的內容至關重要。這章節將介紹有助於我們在實際機器學習(ML)專案中應用的產品和交付實踐。為了方便閱讀,本章節將分為三個主要階段:發現、啟動和交付。
發現階段
發現階段的目的是幫助團隊瞭解和定義機會以及適合的解決方案形狀。這個階段使用了英國設計委員會的雙鑽石設計過程,該過程包括四個部分:發現和定義機會、設計和交付解決方案選項。
啟動階段
啟動階段是一個單一的時間盒,包含多個活動,涉及多方利益相關者,以確保關鍵考慮因素在交付計劃中得到體現。
交付階段
交付階段的目的是交付解決方案的同時,管理風險,並持續演化解決方案,整合連續發現的需求。圖2-1是本章節的視覺錨點,展示了發現、啟動和交付的每個部分。
圖表翻譯:
圖2-1是一個視覺化的摘要,展示了產品發現、啟動和交付階段。這個過程是根據英國設計委員會的雙鑽石設計過程和「如何執行一個成功的發現」所改編。
設計思維和產品思維
在這個章節中,我們將介紹設計思維和產品思維的重要性。設計思維是一種以使用者或客戶為中心的思維方式,幫助我們更好地瞭解和回應使用者的需求。產品思維則是指將設計思維和產品管理結合起來,確保解決方案是可行的商業產品或其他資金模型。
精益和敏捷哲學
我們的指導哲學是精益和敏捷。這意味著我們的階段是相似的,但我們強調合作和連續性,以提高建造正確事物的機會。否則,我們將陷入舊有的「迷你瀑布」模式,發現和交付是斷裂的,產品、設計、ML和工程之間有大量的交付。
內容解密:
這個章節的內容是根據實際的ML專案經驗,提供了清晰、實用的技術,幫助您的團隊在每個階段的產品交付中。透過這個章節,您將瞭解到發現、啟動和交付階段的重要性,以及如何應用設計思維和產品思維來建立成功的產品。
資料驅動的產品開發框架
在開發機器學習(ML)產品時,瞭解客戶需求、進行敏捷規劃、早期交付價值以及對所學知識做出反應是至關重要的。不同的組織可能會有自己定義的開發框架和階段名稱,但只要這些框架遵循上述基本原則即可。
設計 Squiggle 模型
設計 Squiggle 是一個補充的模型,展示了設計產品的實際情況如何受到複雜性和不確定性的影響,但設計的目標是隨著時間的推移逐漸趨近於好的解決方案。這個模型可以在產品開發過程中提供一些安慰,尤其是在實際情況比較混亂的時候。
機器學習產品交付的挑戰
機器學習產品交付呈現出了一個特殊的挑戰,因為業務和客戶可能不知道自己到底需要或可以期待什麼。這是因為很難預先知道機器學習系統在使用特定資料的情況下會表現如何。在產品構思階段,我們可能會產生一個在技術上不可行的想法,或者在進行了一些實驗並看到工作軟體之前,我們可能不知道哪些產品功能是可行的。
解決方案:雙軌交付模型
為瞭解決這個挑戰,我們可以採用雙軌交付模型等技術。這種方法可以幫助團隊在持續發現的基礎上,橋接客戶需求和技術可行性之間的差距,從而確保開發出的機器學習解決方案不僅在技術上可行,而且對客戶有吸引力,對業務也是可行的。
發現階段
現在,讓我們深入探討本章的第一個部分:發現。這個階段包括了特定的步驟和方法,旨在收集和分析客戶需求、市場趨勢和技術可行性,以便為機器學習產品的開發提供基礎。
flowchart TD A[客戶需求] --> B[市場趨勢] B --> C[技術可行性] C --> D[產品構思] D --> E[實驗和原型] E --> F[迭代和最佳化]
圖表翻譯:
上述流程圖展示了從客戶需求到產品開發的整個過程。首先,我們需要了解客戶的需求和市場的趨勢,然後評估技術的可行性。接下來,根據這些資訊,我們可以進行產品構思和實驗,最終透過迭代和最佳化來完成產品的開發。這個過程強調了持續發現和迭代的重要性,以確保最終的產品既滿足客戶的需求,又具有技術上的可行性和商業上的可行性。
雙鑽石設計流程:機器學習產品發現的關鍵
在機器學習(ML)產品開發中,產品發現是一個至關重要的階段。它涉及到與客戶的深入互動,以確保開發出的產品能夠真正滿足客戶的需求。正如Teresa Torres所說,「好的產品發現需要在決策過程中讓客戶參與。」這意味著開發團隊需要與客戶緊密合作,以瞭解他們的需求和痛點。
產品發現的挑戰
許多團隊在開發ML產品時,常常會遇到一些挑戰。例如,交付的ML解決方案未能達到預期的使用或參與度,或者根據無法驗證的假設而過度設計ML產品的某些部分。甚至,有些團隊可能會不斷地建立概念驗證(PoC),但從未真正將其推向使用者。這些挑戰往往源於不充分的產品發現。
雙鑽石設計流程
雙鑽石設計流程是一種結構化的方法,旨在確保ML產品滿足客戶的需求。它包括四個階段:發現、定義、開發和交付。其中,發現階段是最關鍵的,因為它讓團隊能夠深入瞭解問題領域。在這個階段,團隊需要使用各種技術來收集客戶的需求和反饋。
持續發現
發現不僅是一個初始階段,也是一個持續的過程。隨著ML專案的交付,團隊需要不斷地收集客戶的反饋和資料,以驗證初始假設和原型。這個持續的發現過程可以幫助團隊早期發現問題,避免在錯誤的方向上投入時間和資源。
設計思考的雙鑽石模型
設計思考是一種創新的解決問題方法,強調同理心、創造力和實驗精神。雙鑽石模型是設計思考的一種具體實作,包括發現(Discover)、定義(Define)、開發(Develop)和交付(Deliver)四個階段。
從技術選型對商業模式的影響考量,深入剖析機器學習系統設計、交付、治理、安全、產品開發和敏捷開發的整合價值,可以發現,建構一個成功的機器學習產品需要跨領域的專業知識和實踐經驗。分析比較不同方法,例如精益原則、敏捷開發、雙軌交付模型和設計思考的雙鑽石模型,在不同階段的應用,可以看出,它們各有優劣,需要根據具體情況選擇合適的策略。目前的挑戰在於如何有效地整合這些方法,並在快速變化的技術環境中保持靈活性。玄貓認為,機器學習技術的發展趨勢將更注重產品導向和使用者經驗,因此,團隊應著重於提升產品思維和跨領域協作能力,才能在競爭激烈的市場中取得成功。接下來的 2-3 年,將是機器學習產品從技術驅動走向價值驅動的關鍵視窗期。