簡介
初創(chuàng)企業(yè)將一些最具創(chuàng)新性的產品和服務推向市場,但通常要少量工具、手動操作以及不斷拓展專業(yè)知識的人員。人工智能 (AI),尤其是機器學習 (ML) 和深度學習 (DL),正在通過自動化流程和減少工作量,助力初創(chuàng)企業(yè)解決這些難題及其他問題。在這類初創(chuàng)企業(yè)當中,AI不是產品的一部分,它的實施最終是為了幫助初創(chuàng)企業(yè)解決業(yè)務問題、改進流程和提升企業(yè)的潛在價值。
有時,自動化可以建立在以人為主導的流程的專業(yè)知識之上手動執(zhí)行。但是,當可用數據的數量、復雜性或可變性使得這種方法捉襟見肘時,機器學習可以帶來真正的實惠。本文旨在深度剖析如何確定AI輸入和輸出、使用數據集、探索數據可能性以及最終確定AI模型(圖1)。
圖1:這些步驟強調運用機器學習解決初創(chuàng)企業(yè)常見問題的過程。(圖源:作者)
第1步:識別輸入、輸出和指標
該過程的第一步是確定算法的輸入和輸出,以及選擇正確的指標衡量其性能。這些決策應該受到業(yè)務目標和技術限制的影響。例如,數據的可用性和數量以及隱私要求會影響數據輸入,文件格式的一致性和存儲數據的需求也會帶來影響。
在大多數情況下,數據輸入淺顯易懂,例如文本、圖像或數字值,在使用前只需進行少量的預處理。然而,可能需要對結果數據進行預處理,以產生單個值來標記每個輸入數據點。例如,一家企業(yè)可能希望對通過電子郵件收到的客戶服務投訴進行分類,或者可能希望根據買家購物車中的商品推薦其他商品。無論哪種情況,結果數據都需要進行調整,以標記這些電子郵件投訴的緊急程度,或者識別與產品圖像匹配的產品代碼。
可以基于數據特定結果達到一定準確性的重要性,來選擇衡量模型成功與否的正確指標(圖2)。盡管追求高精度似乎合乎邏輯,卻并非金標準。例如,在欺詐檢測中,識別潛在的欺詐比正確預測出每個事件更為重要。根據經驗,如果選擇的指標有利于提升一類鮮少發(fā)生事件的準確性,許多非事件也可能會標記出來。在這種情況下,為避免損害檢測欺詐性交易的能力,人機協(xié)同 (HitL) 最終敲定結果可能會有所幫助。
在選擇指標時,值得調查其他人做了什么和推薦什么,以及開始數據聚合和清洗過程。在某些情況下,數據尚未處于您需要的狀態(tài),或者可以調整數據收集,使之更加“適合AI”。
第二步:數據準備工作
通常,AI模型期望數據始終處于特定格式。這一步需要清洗和轉換數據,以滿足AI模型和目標所需的標準,整個過程無比費時,且異常復雜。通常會請一名數據工程師,處理基礎架構、存儲空間和用于數據提取的管道。
首先,每個輸入都需要一個您想要預測的對應標簽或目標。例如,如果有100張狗的圖像,則需要將每張圖像標識為一條狗。這可以通過簡單的方法來實現,例如,使用CSV文件或將它們存儲在稱為“狗”的單獨文件夾中。幾乎所有的分類算法都認為預測目標也是數值,二進制或離散類別。“是或否”是二進制類別的示例,而對象預測中的許多類(例如,狗、貓或鳥)則是離散類別的示例。預測值而不是類別(稱為回歸),必須將目標標準化為0或1。復雜的AI方法也需要同樣復雜的類別,但是無論如何,所有內容都必須保持一致,且研究相應的數據結構非常重要。
此外,數據點也需要進行標準化。對于圖像,這意味著它們至少大小相同,且不會大到無法用AI模型處理。對于文本,這可能意味著縮短或填充短語,使它們具有相同的長度,也可能意味著短語標記化,即,用數字替換每個單詞。在此階段,考慮分類和數據的各種選項以確保在最初選擇的輸入和輸出未能產生有意義的結果或證明噪聲太大的情況下,可以其他方式使用數據。
最后,應該清洗數據集,以確保數據正確、一致和可用。這可能包括識別和糾正數據集的損壞、不完整、重復或不相關的部分。數據清洗通常比開發(fā)新算法要花費更多的時間,因此,請記住80-20規(guī)則:80%的數據需要20%的工作量。在項目的初始階段,應當使數據易于處理,而不必擔心需要強大的系統(tǒng)清洗每一條數據。
第3步:瀏覽數據并確認選擇
探索性數據分析 (EDA) 旨在識別底層模式,發(fā)現異常并檢查數據集中的假設。EDA可以作為數據準備工作的一部分完成;但是,其通常伴隨著數據清洗。EDA中最重要的任務包括分析
數據缺失,這可能影響模型的性能。根據必填字段中缺失的百分比,可能丟棄這些數據點,執(zhí)行值的插值,或者在沒有足夠有用的信息時放棄使用該信息。
異常數據:區(qū)分異常數據是噪聲還是您想要捕捉的實際事件至關重要。例如,將過高或過低的錯誤值與數據看起來也頗為相似的罕見值(如欺詐或機器故障)進行比較。
數據標簽噪聲:標簽噪聲來自錯誤標記的數據點,會妨礙AI學習數據和目標之間適當相關性的能力。
根據數據量的不同,或能糾正這些錯誤,但有時可能需要選擇不同的選項作為預測目標。
第4步:研究算法并準備資源
接下來,需要研究AI本身。始終對可能適合該任務的可用算法進行初步調查(圖3)。借助大量資源,包括預先訓練好的模型和詳細說明特定任務算法的研究文章,可以充分利用現有的資源,而不必重復別人的勞動、做無用功。
圖3: 不同機器學習目標的算法/方法類型的可視化指南。(圖源:Toward Data Science)
此外,根據每一類可用的數據量,決定需要機器學習 (ML) 算法還是深度學習 (DL) 算法。通常,深度學習效果最好是每個類標簽有5,000多個示例。如果每個類的例子較少,該模型可能只會學習您的訓練數據,而無法根據新的真實世界信息正確預測結果。在DL出現之前,ML已使用了很長時間,且在較小的數據集上產生了非常好的結果;但是,數據點需要更多的人工工作,這個過程通常稱為特征工程。
根據數據集和每個數據點的大小(請記住,即使是300 × 300像素的圖像也需要花費很長時間進行訓練!),您應該投資提升一些算力:通過現有平臺或添置內部圖形處理器 (GPU)。通常,對于初次接觸的項目,建議使用前者,因為如果項目行不通,您還可以終止訪問。鑒于Amazon Web Services (AWS)、Google Cloud Platform (GCP) 和Microsoft Azure等平臺上可用的AI服務的成熟性和完整性,在沒有專門的“AI人員”甚至沒有任何編碼的情況下,也可以渡過這一階段。它們對特定任務所產生的效果,將影響您決定是否為項目聘請外援。
第5步:基準測試、迭代和最終確定模型
無論采用何種機器學習類型(輸入型還是學習型),Model Zoo、Tensorflow Hub,Google Cloud Platform或AWS等網站都可能有經過預先訓練的解決方案,并已經學會了根據數據進行一些預測。重要的是,還可以通過微調執(zhí)行類似的任務(稱為轉移學習)重用這些模型,例如,使用經過訓練的模型預測圖像中的對象,以便在給定較少數據的情況下只預測家具的類型,即使它在第一輪訓練中沒有看到這些物品。轉移學習是一種非常常見的方法,可以在利用他人工作的同時獲得巨大的效益,而不需要如此豐富的數據。通常,使用這些解決方案需要掌握Python的基本編程技能,但也需要其他技能。
您還可以在數據特征的子集上使用更簡單的機器學習算法,作為確定數據中信號的粗略方法。一旦確定了開箱即用方法的工作效果,就可以開始迭代過程。具體是要改進嘗試的模型還是嘗試定制模型,取決于初創(chuàng)企業(yè)要求的閾值,以確保此任務的準確性。
第六步:準備交工!
典型的AI項目流程到此結束。簡而言之,就是您需要選擇輸入、輸出和性能指標,然后按順序獲取數據并完成探索性數據分析,繼而確認您在第一步中的選擇。 之后,開始模型開發(fā)和迭代階段。 一旦對模型性能感到滿意,且其得到了所需的結果,初創(chuàng)企業(yè)就可以開始付諸生產,享受這種新發(fā)現的自動化功能所帶來的利好。
生產本身就是一個過程,也需要多個步驟和流程。您需要確定如何彌合模型性能和所需精度之間的差異,如數據部分所述。其他考慮因素包括加強數據清洗軟件,決定數據集和模型的版本控制過程或工具。敬請關注第2部分,深度探秘在生產中交付AI所需的一切!
審核編輯:郭婷
-
人工智能
+關注
關注
1791文章
47352瀏覽量
238791 -
機器學習
+關注
關注
66文章
8422瀏覽量
132736 -
深度學習
+關注
關注
73文章
5504瀏覽量
121238
發(fā)布評論請先 登錄
相關推薦
評論