當前位置:
首頁 > 最新 > 產品經理入門機器學習:AIPM從入門到實踐

產品經理入門機器學習:AIPM從入門到實踐

本文通過示例的方法幫助讀者入門機器學習演算法,希望你能夠從中有所啟發和收穫。

在生活中,我們會依靠經驗來處理大量的事情,而形成經驗就需要通過大量的實踐,總結出事物的重要特徵和結果之間的規律。

比如,我們經常會去超市,在選購水果時,會通過顏色、形狀等特徵對水果口味進行預判。那麼,我們是怎樣具備的這種預判經驗呢?正是由於我們在生活中品嘗水果時,不斷積累與發現的水果的顏色、形狀等特徵與口味之間的對應規律,例如全紅色的蘋果會比半青色半紅色的要甜一些。

同樣,為了能夠更好的完成工作,我們也需要不斷從實踐中總結各種業務規律。例如,在電商平台的用戶購物場景中,為了能夠增加用戶的購買金額,運營人員需要設置為用戶推薦的關聯購買商品。

此時,為了使推薦出的商品得到最大的轉化率,需要運營人員分析歷史訂單數據,從中找出商品關聯購買的規律。但是,人工尋找並分析出每一個商品的關聯規律,並不是一件容易的事情,需要消耗大量的時間與人力。並且隨著商品不斷推出新款,市場中商品流行趨勢的變化等因素影響,已經形成的規律也需要不斷進行及時的調整更新。

那有沒有辦法,讓計算機為我們做類似這樣的總結規律的工作呢?這個答案正是機器學習技術。

1、機器學習是什麼?

可以將機器學習理解為:讓機器從大量的數據中自行尋找潛在規律,並應用此規律來識別或預測新的數據。機器學習所取得的成果稱為模型,這個模型類似於傳統產品開發出的後台服務程序,在實際使用中也是通過前端程序獲取輸入數據,經過模型處理後輸出結果。只不過,研發這個模型的過程變化了。

研發模型並不是通過研發工程師編寫而成,也不需要提供嚴密的業務邏輯與判斷流程文檔,而是通過訓練機器學習模型完成。

圖1 機器學習模型

在開始訓練機器模型前,必須先為模型準備一個唯一的任務目標,因為一個模型只能完成一個任務目標。然後進入訓練機器學習模型的三個步驟,如圖1。

第一步,根據任務目標確定演算法。關於演算法方面,最為主要的演算法類型有分類演算法、回歸演算法和聚類演算法等。不同的演算法類型可以解決不同的業務問題,例如:分類演算法可以識別或預測分類類型;回歸演算法可以預測連續型數值,這裡所說的連續型數值是指包含若干位小數且取值密集的數值;聚類可以挖掘出不同數據的分組關係,從而可以用於數據分析與知識發現。

演算法類型下會很多種有不同的具體演算法。例如分類演算法下會有K鄰近、樸素貝葉斯、隨機森林等,不同的演算法在完成同一的任務目標的訓練和應用時,會體現出不同的特性。這裡所說的特性,包括訓練與應用需要消耗的計算資源/存儲資源、應用的準確性等方面。

第二步,根據演算法的學習方式準備好數據。這裡所說的學習方式主要有三類:有監督學習、無監督學習和半監督學習。但在講解學習方式之前,需要先了解幾個概念:

訓練樣本是指為訓練機器學習模型所需要準備的數據,這裡的數據可以是圖片、文本或是表格數據等。如圖2,是預測芒果口味的訓練樣本數據。特徵就是樣本數據的屬性,如圖2中包含兩個特徵[顏色、大小]。這裡需要強調的是,在機器學習過程中,選擇特徵是一項非常重要的工作,通常是由在目標業務領域中有較多經驗的人參與,並且過程中需要發揮很多智力行為。因為特徵選擇的好壞直接決定最終模型的好壞。例如上面的案例中,如果增加包裝類型的屬性,也許就與芒果口味的關係不大了。類似增加這種無關或相關性非常低的特徵,不但需要投入更多的計算資源,而且還可能對訓練的模型產生干擾。特徵值就是樣本數據對應特徵的參數值。標記可以理解為樣本數據的結果,是機器學習模型將要預測的目標數據。如圖2,口味便是標記項。

圖2 樣本數據

接下來講解三種學習方式,這三種方式的區別在於訓練樣本中是否會包含標記值。

有監督學習是指訓練樣本中的所有樣本數據都包含標記值的學習方式。這種方式將學習到特徵值與標記值之間的對應規律。在很多情況下,樣本數據的標記值是由人工標記的,例如在準備語音識別訓練樣本時,是由人工標記的文本信息。因此也不難看出,為了得到帶有標記值的樣本數據,是需要付出大量的人工處理工作。

無監督學習是指訓練樣本中的所有樣本數據都不包含標記值的學習方式。當需要了解一組數據存在的分組關係時,便可以用到無監督學習。

半監督學習是指訓練樣本中只有部分樣本數據包含標記值的學習方式。當沒有足夠人力標記所有的樣本數據,並且稍稍降低對模型預測精度的要求時,便可以使用半監督學習。相比無監督學習會有較高的精度,相比有監督學習可以大幅降低人工標記成本。例如,在擁有上百萬篇文章資訊類的網站中進行文章分類標記,便可以採用半監督學習,只需要對訓練樣本進行少量的人工標註處理,便可以得到較高精度的分類結果。

第三步,使用訓練樣本數據與演算法進行模型的訓練。本步驟首先需要由AI工程師進行演算法的參數設置。之後進入機器自我訓練的過程,該過程可能會需要很長時間,甚至是幾天時間。

這個步驟需要注意三點:

第一,由於機器學習演算法執行過程具有一定的隨機性,在保持演算法、數據與演算法參數不變的情況下,多次運行機器學習訓練後得到的結果可能不相同;第二,為了能夠訓練出較高性能的模型,通常會同時選擇多個演算法進行訓練,並對訓練結果進行比較,最終選擇最高性能的模型投入使用;第三,機器學習訓練得到的模型是個「黑箱」,一般情況下不可能通過調整模型來優化機器學習模型的性能。

到現在為止,我們通過訓練得到了一個機器學習模型,該模型可以嵌入到前端程序中用於識別或預測任務。上文說過,不同的演算法類型能夠解決不同類型的問題,而入門機器學習最多被提及的演算法類型有分類演算法、回歸演算法與聚類演算法,那麼下面就詳細講解這三種演算法類型。

2、理解機器學習中的分類、回歸與聚類

(1)分類演算法

分類演算法是一種有監督學習,目標是學習到訓練樣本數據中多個特徵值與標記值的對應規律,訓練出模型稱為分類器。使用訓練好的分類器,輸入新數據的全部特徵值時,輸出識別或預測的結果。

這裡所說的識別與預測對於演算法模型來說並沒有實質上的區別,僅是在實際使用分類器時,描述業務目標的方式不同。識別更強調對當前信息的辨認,而預測更強調對尚未發生的事情的推測。

分類演算法分為二分類與多分類。二分類的意思是結果會包含正類與反類,比如當前任務是識別出貓的圖片,那麼貓的圖片就為正類,其他圖片就為反類。多分類可以完成多種類型的識別,例如在識別新聞文章類型時,多分類分類器可以識別出文章屬於經濟、娛樂、體育等多種類型中的一個或多個類型。

通常情況下可以使用多個二分類分類器的方式實現。這時先對問題進行拆分,然後為拆出的每個二分類任務訓練一個分類器。例如上面的新聞分類例子中,可以拆解為三個分類器:經濟類型分類器、娛樂類型分類器、體育類型分類器,其中每一個分類器都包含一個正類與一個反類。

下面講解一個二分類在業務中的應用示例。

案例:

一家汽車銷售公司,擁有完備的客戶歷史消費和潛在客戶詳細資料資料庫。現公司準備舉辦一次汽車促銷活動。為了能夠提升本次促銷活動的銷售量,公司準備為潛在客戶寄送一份精美的汽車銷售材料和一份禮品。但活動經費有限,僅能寄送給1000名潛在客戶。

任務目標:選出1000名寄送資料與禮品的潛在客戶,並儘可能最大化這些潛在客戶的購買轉化率。

應用分類演算法:

第一步,整理歷史數據並確定分類方式。找出類似於本次促銷活動的歷史促銷活動消費數據和對應的客戶詳細資料,並按照是否購買車輛將結果標記分為正反兩類,正類為客戶參與相關促銷活動後購買了的車輛,反類是沒有購買。第二步,確定訓練樣本數據的特徵。從客戶的詳細資料中,分析對購車行為可能有影響的客戶屬性,將這些屬性確定為訓練樣本的特徵,本例中的特徵有:年齡、性別、有無車、年收入等屬性欄位。第三步,確定選用的分類演算法。這裡可以選擇邏輯回歸演算法、決策樹演算法或是支持向量機等具體的演算法。第四步,完成模型訓練工作。訓練完成的模型是一個二分類分類器,分類器輸出的結果可以表示成概率形式,即有可能為正類的概率值。如輸入某一客戶數據,得到0.68的輸出結果時,可以認為這個客戶購買車輛的可能性有68%的概率。第五步,找出最有可能轉化的1000名潛在客戶。此時,可以將所有潛在客戶信息輸入分類器,將得到每一名潛在客戶購買車輛的概率值。然後將概率值從大到小排列,選擇前1000名潛在客戶,就完成了本次任務的目標。

(2)回歸演算法

回歸演算法是一種有監督學習,學習目標與分類演算法相同,也將學習到訓練樣本數據中多個特徵值與標記值的對應規律。使用訓練好的回歸模型可以對已知數據的未知參數進行估算,在業務上可用於對特定參數進行預測,例如:預測電影票房、預測車流量、預測天氣污染指數、預測產品銷量等。

回歸演算法與分類演算法有一定區別。分類演算法可以對數據的某個屬性類別進行預判,這個類別是由有限個類型組成。而回歸可以對數據的某個參數值進行預測,這個參數值是連續型的數值,因此有無限可能性。例如:分類演算法可以確定如[甜、不甜]這樣的有限分類,而回歸演算法可以推算出如天氣溫度25.325°C等這種連續型數值。

下面講解一個應用回歸演算法預測電影票房的示例。

案例:

一家媒體機構希望對一部即將上映的電影進行票房預測。該媒體已經收集過眾多電影詳細資料與歷史的票房數據,數據欄位包括:電影名稱、題材、內容、導演、演員、編輯、發行方、票房金額等等。

任務目標:收集相關信息並預測即將上映的電影票房數值。

應用回歸演算法:

第一步,整理歷史數據並確定訓練樣本特徵。除了上文內容,還可以使用影評數據、輿情數據等當做特徵,但這些特徵值需要進行處理後才能投入使用。例如影評數據可以通過自然語言處理技術,將影評內容區分出不同類型,再去應用。第二步,收集預測影片的相關信息。根據確定的特徵項,收集目標影片當前的信息。第三步,確定選用的回歸演算法。這裡可以選擇線性回歸、支持向量機回歸、相關向量機等具體的演算法。第四步,完成訓練工作。訓練完成後,便可以使用模型計算出指定影片的票房預測數值。在本例中輸出值可以是2830000,代表預測票房為283萬元。

(3)聚類演算法

聚類演算法是一種無監督學習,可以挖掘到樣本數據的特徵值的潛在相關性,將具有類似特徵值的數據進行分組。因此,聚類演算法可以被用作知識發現使用,也被稱為探索性數據分析方法。該演算法常被用於市場研究、用戶分組、用戶畫像等分析過程。

聚類演算法與前兩類演算法不相同,訓練模型時的樣本數據中並不包含標記,所以就不能具備對特定屬性進行預測的能力。

使用聚類演算法時,可以劃分為指定的分組數目,也可以不確定具體分組數目。如果不確定分組數量時,演算法會根據自身特性計算出最合適的分組數目。劃分好分組後,使用者可以分析分組中的數據,研究演算法劃分的具體原因。

下面講解一個應用聚類演算法進行市場研究的示例。

案例:

一家筆記本電腦製造公司,準備研發一款新型筆記本電腦。現在進行初期的市場研究工作,希望能夠根據市場中筆記本產品的配置、價格及銷售情況,指導新款筆記本的研發與市場定價。

任務目標:挖掘出市場中銷售量較高的筆記本產品具有配置特點,並找出不同配置類型的定價情況。

應用聚類演算法:

第一步,收集相關數據。從各個電商平台收集相關筆記本電腦的配置信息,如:電腦型號、品牌、CPU性能、顯卡性能、內存大小、硬碟大小、屏幕大小、重量、電池容量、定價等。並且篩選出銷售量較高的產品。

第二步,確定聚類分析的特徵項。在聚類分析中,特徵項的數目不是越多越好,對於沒有明顯差異的變數對聚類分析並沒有實質的意義,並且可能會對結果造成干擾。因此,可以選擇CPU性能、顯卡性能、內存大小、硬碟大小等作為聚類分析的特徵項。

第三步,確定選用的聚類演算法。這裡可以選擇K-means、層次聚類演算法、SOM聚類演算法等具體的演算法。

第四步,完成訓練工作。當指定聚類演算法分為N個分組時,會輸出N個分組的情況。當不指定分組數據時,會輸出演算法認為合適的分組數量與分組情況。

第五步,分析各組數據的相似性特點,並為每類分組命名。這一步需要使用者對每一個分組內的數據進行詳細分析,找出其中分組內哪些特徵值相類似,最終還要為每一個分組進行命名。本例中,需要分析每組筆記本相似的配置項,然後為每組數據分類命名,最終的命名結果可能為:配置高顯卡高的分組命名為遊戲本、配置一般顯卡低的命名為商務本、配置高顯卡一般的命名為家用本等等。

第五步,按照每種分組統計平均價格。到此為止,就完成了對市場中銷量較好的筆記本產品的研究,研究結果可以了解市場中暢銷的筆記本產品的不同配置分組與平均價格。

3、小結

本篇為讀者首先介紹了機器學習技術,從大量的數據中自行尋找潛在規律,並應用此規律來識別或預測新數據的技術。第二,介紹了機器學習模型的訓練過程:確定演算法、準備數據、訓練模型。第三,介紹了機器學習面向業務使用中最重要的三個演算法:分類演算法、回歸演算法與聚類演算法。

本文通過示例的方法幫助讀者入門機器學習演算法。但真實案例中肯定不會這麼簡單,通常情況下特徵項都會超過10萬個,還需要考慮樣本數據對最終模型可能產生的影響等。因此,讀者首先要從示例中理解不同的演算法能夠解決什麼樣的問題,然後在深入學習機器學習相關的數據預處理、特徵工程、演算法調參、性能評估等知識。

產品經理需要深入學習相關技術知識么?筆者認為還是需要根據實際應用程度進行一定程度的深入學習,原因有以下三點:

第一,不同類型的機器學習演算法有不同應用場景與價值,如果不能對演算法類型所解決的問題有所認知,那麼在解決具體業務問題時的思路將受到限制;第二,同一演算法類型下的不同演算法,在面向不同數據時會有不同的性能效果,這裡所說的性能效果可以簡單理解為精確度,如果對演算法沒有了解,那麼在實際項目中可能會影響研發周期;第三,不同機器學習演算法對硬體計算能力、數據存儲空間有不同要求,並且具體業務也會對演算法的計算時間與精度有限制,如果沒有相關了解,那麼可能會影響研發成本。

目前機器學習技術應用範圍非常廣泛,最為典型的應用領域有數據分析、商品推薦、文章推薦等。雖然機器學習也可以應用在圖像識別與語音識別等領域,但是一直以來並沒有得到很好的識別準確率。

這其中主要的原因就是,機器學習演算法的性能依賴於所提取的特徵的準確度。而深度學習嘗試從數據中自行挖掘出有效的特徵屬性,並且已經在圖像識別與語音識別領域取得了非常優異的成績。後續,我們將繼續講解深度學習。

本文由 @howie楊 原創發佈於人人都是產品經理。未經許可,禁止轉載。

題圖來自unsplash,基於CC0協議

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 機器學習 的精彩文章:

機器學習——神經網路代價函數、反向傳播、梯度檢驗、隨機初始化
Python與機器學習

TAG:機器學習 |