AI產(chǎn)品經(jīng)理是如何理解機(jī)器學(xué)習(xí)的(附注釋)
對(duì)于AI產(chǎn)品經(jīng)理來說,在懂得業(yè)務(wù)之外,有時(shí)也需要懂得一些技術(shù)。本文作者通過講故事聊天的方式,對(duì)機(jī)器學(xué)習(xí)的一些常見的算法和評(píng)價(jià)指標(biāo)進(jìn)行了介紹,希望能給你帶來一些幫助。
本期目的:回顧之前敲代碼的日常,利用生活場(chǎng)景幫助AI產(chǎn)品經(jīng)理認(rèn)識(shí)機(jī)器學(xué)習(xí)及學(xué)習(xí)過程中常用算法和評(píng)價(jià)指標(biāo)。
適用讀者:AI/數(shù)據(jù)產(chǎn)品經(jīng)理。
閱讀重點(diǎn):品,細(xì)品,結(jié)合班級(jí)故事再品。
最近看了很多關(guān)于機(jī)器學(xué)習(xí)相關(guān)的文章或書籍,可以歸結(jié)為兩類吧。第一類,百科型:說它是BD百科吧,它不如BD百科智能,說它不是BD百科吧,它只能給你拽名詞解釋名詞,還解釋得特別專業(yè),晦澀難懂。第二類,偽專家型:滿滿的全是干貨(太干了……)。各種專業(yè)的名詞,專業(yè)的數(shù)學(xué)公式,小白看不懂,專家懶得看,完全沒有發(fā)揮出那一堆文字的價(jià)值。
本文將全程通過講故事聊天的方式介紹機(jī)器學(xué)習(xí),讓小白也能學(xué)會(huì)機(jī)器學(xué)習(xí)原理。總共分三部分:認(rèn)識(shí)機(jī)器學(xué)習(xí)、機(jī)器學(xué)習(xí)原理和常見問題、案例實(shí)操。
1)認(rèn)識(shí)機(jī)器學(xué)習(xí):普及一下機(jī)器學(xué)習(xí)的基本理論(定義、場(chǎng)景、分類、要素等),方便小白同學(xué)更好地進(jìn)入狀態(tài)。小灰同學(xué),也可以對(duì)照基本理論,沉淀一下自己的項(xiàng)目經(jīng)歷。很多知識(shí)一遍是學(xué)不明白的,多學(xué)幾遍,每一遍都有不同的收獲。
2)機(jī)器學(xué)習(xí)算法原理評(píng)價(jià)指標(biāo):介紹一些常見算法、怎么評(píng)價(jià)不同模型的好壞。
3)代碼實(shí)現(xiàn):通過邏輯回歸案例,認(rèn)識(shí)機(jī)器學(xué)習(xí)的工作流程。本章會(huì)設(shè)計(jì)代碼操作,非技術(shù)人員可以跳過代碼,看注釋文字,不懂代碼也能看明白機(jī)器要怎樣才能學(xué)習(xí)到歷史規(guī)律的。
一、利用生活場(chǎng)景認(rèn)識(shí)機(jī)器學(xué)習(xí)
1. 相關(guān)名詞介紹
機(jī)器學(xué)習(xí)(ML)、深度學(xué)習(xí)(DL)、自然語(yǔ)言處理(NLP)、計(jì)算機(jī)視覺(CV)等,相關(guān)名詞介紹去B度百科搜索一下,那里比我解釋的詳細(xì)。相關(guān)名詞還是有必要了解一下的,這樣有助于理解后邊的學(xué)習(xí)內(nèi)容。
產(chǎn)品經(jīng)理要懂業(yè)務(wù)也要懂技術(shù)(最起碼專業(yè)術(shù)語(yǔ)要了解),尤其是數(shù)據(jù)或AI型的產(chǎn)品經(jīng)理。可以去這個(gè)地址(http://dict.code-nav.cn/)學(xué)習(xí)一下,好心人整理的編程詞典,匯集了計(jì)算機(jī)大部分領(lǐng)域的專業(yè)術(shù)語(yǔ)。向好心人致敬?。?!
2. 定義
定義:為了解決任務(wù)T,設(shè)計(jì)一段程序,從經(jīng)驗(yàn)E中學(xué)習(xí),達(dá)到性能度量值P,當(dāng)且僅當(dāng)有了經(jīng)驗(yàn)E后,經(jīng)過P評(píng)判,程序在處理T時(shí)的性能得到提升。
定義雖然有點(diǎn)繞口,但是已經(jīng)把機(jī)器學(xué)習(xí)的原理講的很明白了。需要你品,而且靜心細(xì)品。聯(lián)想生活實(shí)例,咱們小學(xué)學(xué)習(xí)寫字時(shí),是怎樣的一個(gè)學(xué)習(xí)場(chǎng)景?
- 為了寫字工整好看(任務(wù)T)
- 我們照著課本寫,照著字帖寫,照著同學(xué)的寫(經(jīng)驗(yàn)E)
- 直到有一天,老師說,“瞧你寫的一手好字”(度量值P)
化悲傷為動(dòng)力,你反復(fù)練習(xí),老師多次指導(dǎo),日復(fù)一日,年復(fù)一年……
- 小學(xué)六年級(jí)的鉛筆書法大賽(處理任務(wù)T)
- 你拿著寫好的大字(已經(jīng)有了經(jīng)驗(yàn)E)
- 請(qǐng)老師點(diǎn)評(píng):恭喜你小學(xué)畢業(yè)了(通過P評(píng)判)
故事講到這里,你應(yīng)該能品明白這句繞口的話了吧(任務(wù)T),如果還不明白,就反復(fù)去品更多故事(經(jīng)驗(yàn)E),直到品明白(評(píng)判P)。
3. 應(yīng)用場(chǎng)景
無(wú)人駕駛 、人臉識(shí)別、語(yǔ)音識(shí)別、智能互動(dòng)(小愛)、個(gè)性化廣告。
4. 機(jī)器學(xué)習(xí)有哪些分類
按學(xué)習(xí)方法可以分為:有監(jiān)督學(xué)習(xí)、無(wú)監(jiān)督學(xué)習(xí)、強(qiáng)化學(xué)習(xí);
按任務(wù)類型可以分為:回歸、分類、聚類和時(shí)間序列。
強(qiáng)化學(xué)習(xí)和時(shí)序分析比較少見(fact:我還講不明白),可以共同討論。
(看圖識(shí)意1.0)
5. “監(jiān)督”是什么意思
對(duì)于機(jī)器而言,就是用來學(xué)習(xí)的數(shù)據(jù)集,有沒有明確的標(biāo)簽(回歸也是有標(biāo)簽的,只不過是連續(xù)的)。就好比,你在學(xué)習(xí)寫字的時(shí)候,眾多的參考文字中,老師有沒有告訴你,什么樣的字代表著好,什么樣的字代表著不好。
1)有監(jiān)督學(xué)習(xí)(有標(biāo)簽)
分類,樣本標(biāo)簽屬于離散變量(垃圾郵件、腫瘤檢測(cè)),ChatGPT就屬于分類問題中的生成模型。
回歸,樣本標(biāo)簽屬于連續(xù)變量(預(yù)測(cè)房?jī)r(jià)、預(yù)測(cè)銷售額)。
2)無(wú)監(jiān)督學(xué)習(xí)(無(wú)標(biāo)簽)
聚類:用戶分群,朋友分組(朋友分組),細(xì)分市場(chǎng),異常流量監(jiān)測(cè)。
降維:線索太多可能干擾判斷,影響判斷速度及準(zhǔn)確度。
6. 學(xué)習(xí)方法三要素
模型、策略和算法是學(xué)習(xí)方法的三要素。不要急,咱們先專業(yè)得講,再結(jié)合生活實(shí)例去理解他。
1)模型
- 要學(xué)習(xí)的概率分布或決策函數(shù)(這就是模型,這就是模型,這就是模型!?。。。。。?/li>
- 假設(shè)空間:所有可能的條件概率分布或決策函數(shù)構(gòu)成的集合
2)策略
從假設(shè)空間中學(xué)習(xí)最優(yōu)模型的方法稱為策略。衡量模型好與不好需要一些指標(biāo),這時(shí)候我們引入損失函數(shù)來衡量,衡量預(yù)測(cè)值和真實(shí)值的差距。常用損失函數(shù)有:0-1損失函數(shù)、平方損失函數(shù)、絕對(duì)損失函數(shù)、交叉熵?fù)p失函數(shù)等。
3)算法
計(jì)算損失函數(shù)最優(yōu)解(可以理解為最?。┑姆椒?。
看完上邊的解釋小白同學(xué)可能一臉蒙,算法的同學(xué)可以去深究一下具體有哪些實(shí)現(xiàn)的方法和公式推導(dǎo)。對(duì)于產(chǎn)品經(jīng)理實(shí)在理解不了,也不勉強(qiáng),畢竟產(chǎn)品經(jīng)理靠腦子比較吃力。不過我們可以通過接下來的生活場(chǎng)景去理解模型、策略、算法三個(gè)層面含義。
故事背景:
學(xué)校要組織數(shù)學(xué)競(jìng)賽,每班只允許推薦一名同學(xué)參加。小白的班里共50名同學(xué)。為了班級(jí)榮譽(yù),班主任打算在這50名同學(xué)中選擇一個(gè)數(shù)學(xué)成績(jī)最好的去參加學(xué)校的數(shù)學(xué)競(jìng)賽。
如何選擇找到這名數(shù)學(xué)成績(jī)好的同學(xué)呢?用什么指標(biāo)評(píng)判數(shù)學(xué)成績(jī)好壞呢?是最近一次月考成績(jī)?還是期中或期末成績(jī)?還是下半年或本年度平均成績(jī)或最高成績(jī)?
班主任考慮到數(shù)學(xué)競(jìng)賽是考察數(shù)學(xué)方面的綜合能力,既要考慮這名同學(xué)對(duì)知識(shí)掌握的全面性又要考慮穩(wěn)定性。最終決定:參評(píng)分?jǐn)?shù) = 期中成績(jī) * ? + 期末成績(jī) * ? 。誰(shuí)的參評(píng)分?jǐn)?shù)高,就代表誰(shuí)的數(shù)學(xué)成績(jī)好,可以代表班級(jí)參賽。
參照機(jī)器學(xué)習(xí):
每名同學(xué)都是一個(gè)模型,班級(jí)50名同學(xué)組成了假設(shè)空間;眾多的評(píng)判指標(biāo)(期中成績(jī)、期末成績(jī)、最高分、平均分等)就是策略,依據(jù)目標(biāo)任務(wù)實(shí)際特征,選擇了班主任認(rèn)為合理的策略(參評(píng)分?jǐn)?shù));參評(píng)分?jǐn)?shù)具體的計(jì)算方法就是算法。
故事講完,小白同學(xué)輸?shù)眯姆诜?/p>
二、機(jī)器學(xué)習(xí)算法原理和評(píng)價(jià)指標(biāo)
剛通過粗糙的小故事帶大家初步認(rèn)識(shí)了機(jī)器學(xué)習(xí)。那么接下來就講一下機(jī)器學(xué)習(xí)的常用算法?
機(jī)器學(xué)習(xí)常用算法:線性回歸、邏輯回歸、支持向量機(jī)、決策樹、隨機(jī)森林等。因本文預(yù)期讀者都跟小白同學(xué)一樣,只是初識(shí)機(jī)器學(xué)習(xí),所以本文先通過線性回歸和邏輯回歸帶大家走近算法。
1. 線性回歸
還記得模型是什么嗎?第一章強(qiáng)調(diào)過三次(概率分布或決策函數(shù))。線性回歸模型就是由多個(gè)(無(wú)限)決策函數(shù)組成的。
“f(x)=ax+b”,看到這個(gè)熟悉吧,但凡上過中專的同學(xué)都不好意思承認(rèn)說不認(rèn)識(shí),最簡(jiǎn)單的線性回歸模型就是這樣。
線性回歸的目的:預(yù)測(cè)。通過學(xué)習(xí)大量的歷史數(shù)據(jù),發(fā)現(xiàn)一條盡可能多的涵蓋舊數(shù)據(jù)的直線,當(dāng)以后有新的特征(x)產(chǎn)生時(shí),就能預(yù)測(cè)目標(biāo)值(f(x))。
看圖知意,品一品下面這幅圖,結(jié)合上邊小白班級(jí)選擇數(shù)學(xué)王子的故事去品(沒上過職高的同學(xué)可以先別看損失函數(shù))。
(看圖識(shí)意2.0)
損失函數(shù)或代價(jià)函數(shù),就是我們之前將的策略。怎么判定那條直線是擬合效果最優(yōu)的,就可以通過損失函數(shù)來判斷,損失函數(shù)越小就說明該直線(預(yù)測(cè)函數(shù))擬合度越高。
上圖只是在二維空間展示,只有一個(gè)特征(X),屬于一元線性回歸,當(dāng)有多個(gè)特征(X1,X2,X3…)時(shí),空間就是多維的,叫多元線性回歸。
當(dāng)一條直線能很好的擬合歷史數(shù)據(jù)時(shí),會(huì)出現(xiàn)變相的函數(shù),比如指數(shù)函數(shù)(y=a^x)、冪函數(shù)(y=x^a)、多項(xiàng)式(如:y=ax^2 + bx + c)等。
2. 邏輯回歸
邏輯回歸雖然叫回歸,但是在解決分類問題,通過找到一條曲線(其實(shí)是概率)可以將兩種類別的數(shù)據(jù)劃分開(二分類),可以參照《機(jī)器學(xué)習(xí)有哪些分類》中(看圖識(shí)意1.0)。
邏輯回歸的假設(shè)函數(shù):結(jié)果是[ 0 , 1 ]的概率數(shù)字,表示:樣本是1類的概率。
(不用理解,就知道這是一條曲線,可以將樣本劃分成兩類即可)
想通過這種方式了解更多算法的同學(xué)們可以下期見。
3. 回歸模型的評(píng)價(jià)指標(biāo)
- 均方差(Mean Squared Error,MSE): 該指標(biāo)通過計(jì)算預(yù)測(cè)值與實(shí)際值之間的偏差平方和的均值,反映了模型對(duì)數(shù)據(jù)的擬合程度,越小越好。
- 均方根誤差(Root Mean Square Error,RMSE):該指標(biāo)將 MSE 的結(jié)果開根號(hào),以便于和原始數(shù)據(jù)的單位保持一致,反映了模型對(duì)數(shù)據(jù)的擬合程度,越小越好.
- 平均絕對(duì)偏差(Mean Absolute Deviation,MAE) : 該指標(biāo)衡量的是預(yù)測(cè)值與實(shí)際值之間的平均偏差的絕對(duì)值,反映了模型對(duì)數(shù)據(jù)的擬合程度,越小越好。
- R方(Coefficient of determination):該指標(biāo)衡量的是預(yù)測(cè)值和實(shí)際值之間的相關(guān)程度,取值范圍為 0-1,越接近 1 越好。
(珍藏手抄版)
4. 分類模型的評(píng)價(jià)指標(biāo)
不同評(píng)價(jià)指標(biāo),不同的適用場(chǎng)景,本期先讓大家消化一下,各指標(biāo)都是如何計(jì)算的,代表的什么意思。下期通過實(shí)例分享各指標(biāo)的適用場(chǎng)景。所有指標(biāo)并非人工計(jì)算,sklearn庫(kù)自帶計(jì)算公式,模型訓(xùn)練結(jié)束后直接調(diào)用對(duì)應(yīng)指標(biāo)就可以輸出各指標(biāo)值是多少。
1)Accuracy(準(zhǔn)確率)
2)Precission(精確率)/Recall(召回率)
3)混淆矩陣
4)F1(調(diào)和均值)
5)Fβ
6)AUC(Area Under Curve)
為ROC曲線下與坐標(biāo)軸圍成的面積(不會(huì)大于1),衡量二分類模型優(yōu)劣的一種評(píng)價(jià)指標(biāo),表示預(yù)測(cè)的正例排在負(fù)例前面的概率。
AUC反映模型對(duì)正負(fù)樣本排序能力的強(qiáng)弱,對(duì)score的大小和精度沒有要求.AUC越高,排序能力越強(qiáng). 模型把所有正樣本都排在負(fù)樣本之前,AUC為1。
7)ROC曲線
全稱為受試者工作特征曲線 (receiver operating characteristic curve),它是根據(jù)一系列不同的二分類方式(分界值或決定閾),以真陽(yáng)性率(靈敏度)為縱坐標(biāo),假陽(yáng)性率(特異度)為橫坐標(biāo)繪制的曲線。
二、分類案例實(shí)操——看注釋就能讀懂代碼
業(yè)務(wù)目標(biāo):通過邏輯回歸將實(shí)驗(yàn)數(shù)據(jù)進(jìn)行二分類(0,1),標(biāo)簽為“activity”。
流程導(dǎo)讀:①獲取數(shù)據(jù)—>②數(shù)據(jù)基本處理—>③特征工程—>④模型訓(xùn)練—>⑤模型評(píng)估
導(dǎo)入機(jī)器學(xué)習(xí)需要的各種工具庫(kù)。因?yàn)槲覀円玫较嚓P(guān)庫(kù)中很多現(xiàn)成的能力,之前講到的很多理論知識(shí)只是為了讓同學(xué)們了解機(jī)器學(xué)習(xí)的底層原理,現(xiàn)實(shí)作業(yè)中,一行代碼就能實(shí)現(xiàn),哈哈哈,就是這么簡(jiǎn)單。
①讀取文件數(shù)據(jù)
產(chǎn)品經(jīng)理要對(duì)業(yè)務(wù)數(shù)據(jù)有一個(gè)初步了解,了解數(shù)據(jù)的特征之間的關(guān)系,數(shù)據(jù)特征與標(biāo)簽之間的關(guān)系。同開發(fā)同學(xué)講清楚數(shù)據(jù)這些關(guān)系,才能幫助開發(fā)的同學(xué)構(gòu)建更合理的特征。
②數(shù)據(jù)基本處理
更多的是數(shù)據(jù)清洗工作,比如數(shù)據(jù)審核(數(shù)據(jù)特征是否均衡,不均衡的數(shù)據(jù)集,影響模型可信度和評(píng)價(jià)指標(biāo)的選擇)、空值異常值的處理等。因?yàn)楸緮?shù)據(jù)集是經(jīng)過清洗后的數(shù)據(jù)集,比較完整,沒有體現(xiàn)清洗這一步。下圖可以看出來,數(shù)據(jù)類別比較均衡。
③特征工程
特征就是函數(shù)中的X。開發(fā)的同學(xué)可以通過相關(guān)性分析等方法,不斷構(gòu)建合理的特征,產(chǎn)品的同學(xué)也可以依據(jù)對(duì)業(yè)務(wù)經(jīng)驗(yàn),幫助開發(fā)同學(xué)快速構(gòu)建特征。特征不是越多越好,而是約精煉約好。特征越精煉,模型性能(收斂速度,評(píng)價(jià)指標(biāo)表現(xiàn))越好。下圖,構(gòu)建了兩個(gè)特征:hour和week。
④模型訓(xùn)練
產(chǎn)品經(jīng)理無(wú)需關(guān)注具體函數(shù)的實(shí)現(xiàn)細(xì)節(jié),只需要了解實(shí)現(xiàn)步驟即可(紅色字體)。
⑤模型評(píng)估
模型評(píng)估就是用適合業(yè)務(wù)場(chǎng)景的指標(biāo)來評(píng)判模型的性能。代碼介紹開始部分,調(diào)用的sklearn庫(kù),包含各種機(jī)器學(xué)習(xí)的評(píng)級(jí)指標(biāo)算法,直接調(diào)用即可。
參考文獻(xiàn):
算法圖解.[美]巴爾加瓦,[譯]袁國(guó)忠,人民郵電出版社,2017-03
機(jī)器學(xué)習(xí):Python實(shí)踐.魏貞原,電子工業(yè)出版社,2018-01
Jared Dean. 大數(shù)據(jù)挖掘與機(jī)器學(xué)習(xí)[M]. 林清怡,譯. 北京:人民郵電出版社,2016.
數(shù)據(jù)思維:從數(shù)據(jù)分析到商業(yè)價(jià)值.王漢生,中國(guó)人民大學(xué)出版社,2017-09
本文由 @天兒 tiān er 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載
題圖來自 Unsplash,基于 CC0 協(xié)議
該文觀點(diǎn)僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺(tái)僅提供信息存儲(chǔ)空間服務(wù)。
有些舉例真的是越舉例越看不懂
牛