機器學(xué)習項目如何管理(2):設(shè)置期望

我在之前的一篇文章中提到纪蜒,機器學(xué)習項目如何管理,目前在行業(yè)內(nèi)是一個普遍存在的難題扰付。具體而言堤撵,對于這類項目,我們需要一套行之有效的工作辦法羽莺,幫助一線工作者:(1)知道什么時候該做什么事实昨;(2)知道什么時候該看什么指標;(3)知道什么時候可能有什么風險禽翼。這樣一套工作辦法的第一步屠橄,就是對一個機器學(xué)習項目設(shè)置合理的期望。

機器學(xué)習到底是在做什么

機器學(xué)習的基本過程可以用下面這張圖來呈現(xiàn):

拿到已有的歷史數(shù)據(jù)作為訓(xùn)練數(shù)據(jù)闰挡,我們需要對訓(xùn)練數(shù)據(jù)進行矢量化處理,把輸入的不論什么形態(tài)的數(shù)據(jù)(例如文本礁哄、音頻长酗、圖片、棋盤盤面)都轉(zhuǎn)化成包含若干列的矢量桐绒。從矢量中我們再分出特征(X)和結(jié)果(Y)夺脾,通常特征的列數(shù)遠多于結(jié)果之拨。

我們把X部分交給一個模型,算出與每一行訓(xùn)練數(shù)據(jù)對應(yīng)的預(yù)測值Y’咧叭。所謂模型蚀乔,就是一系列的權(quán)重系數(shù),把這些權(quán)重系數(shù)用在一行輸入數(shù)據(jù)上菲茬,就會得到針對這一行輸入數(shù)據(jù)的結(jié)果預(yù)測吉挣。我們把Y’與Y對比,評判這一輪預(yù)測的效果婉弹。這個效果睬魂,我們用損失來度量。

然后我們用一個機器學(xué)習算法來嘗試優(yōu)化損失镀赌。所謂優(yōu)化氯哮,就是不斷嘗試調(diào)整模型中的權(quán)重參數(shù)。調(diào)一次商佛,再計算出一組新的Y’喉钢,再與Y比較效果。如此迭代良姆,直到損失不再降低肠虽,或者達到預(yù)設(shè)的迭代次數(shù)。

所以歇盼,首先必須要記滋蚝邸:機器學(xué)習是一種優(yōu)化任務(wù)。優(yōu)化任務(wù)的目標不是找到“正確”的答案豹缀,而是找到一個“看起來不錯”的答案伯复。這一點會對我們看待這類項目的方式產(chǎn)生深遠的影響。

如何為優(yōu)化任務(wù)設(shè)置期望

傳統(tǒng)意義上的軟件開發(fā)(例如開發(fā)一個電商網(wǎng)站邢笙、開發(fā)一個社交app)是能夠得到確定結(jié)果的:只要需求分析得夠細致啸如、原型設(shè)計得夠保真、測試進行得夠周全氮惯,你就可以準確地框定一個軟件開發(fā)過程的產(chǎn)出結(jié)果叮雳,點擊哪個按鈕得到什么效果都是可以預(yù)先定義的。而機器學(xué)習項目則不然:不論分類妇汗、回歸帘不、聚類,本質(zhì)上都是對某個損失函數(shù)迭代優(yōu)化的過程杨箭。它沒有唯一正確的答案寞焙,只是有希望得到看起來不錯的答案。優(yōu)化任務(wù)的邏輯不是因果,而是概率捣郊。

對于優(yōu)化任務(wù)辽狈,我們不能問“是否正確”這個問題。有意義的問題是呛牲,模型的預(yù)測準確率能達到多少刮萌。一個缺乏經(jīng)驗的管理者可能會說“越高越好”,或者拍腦袋說出一個數(shù)字“90%”娘扩,顯然這都不太有助于合理地管理期望和把控進展着茸。暫時放下“準確率”的定義不談,我們?nèi)绾沃缹τ谝粋€機器學(xué)習得出的模型應(yīng)該期望什么樣的準確率呢畜侦?顯然大多數(shù)情況下預(yù)測準確率不可能達到100%元扔,那么這個期望應(yīng)該如何設(shè)置?

我們需要引入一個概念:貝葉斯錯誤率旋膳。簡單說澎语,貝葉斯錯誤率是對于一個問題有可能達到的最好的預(yù)測效果。貝葉斯錯誤率通常不是那么容易直接獲得的验懊,所以我們用人類的判斷作為一個代理指標:一般來說擅羞,我們認為人類的判斷錯誤率高于貝葉斯錯誤率,但是也相差不大义图。于是前面的問題變成了:對于一個機器學(xué)習得到的模型减俏,我們期望它的預(yù)測準確率與人類的判斷相比如何?

這個問題沒有唯一正確的答案碱工。有些時候我們希望模型的準確率高于娃承、甚至遠高于人類的判斷;另一些時候怕篷,我們只需要模型的準確率勉強接近人類的判斷历筝,這樣的模型就可以幫人類完成大量繁瑣的工作量。對模型的期望設(shè)置不是一個技術(shù)問題廊谓,而是一個業(yè)務(wù)問題梳猪,在開始一個機器學(xué)習項目之前,就需要先與業(yè)務(wù)的負責人展開相關(guān)的對話蒸痹。

如何定義“準確”

仍然以最簡單的分類問題為例春弥,模型的判別分為陽性(positive)和陰性(negative)兩種,兩種判別都有正確和錯誤的可能叠荠,于是總共就有了四種可能的情況:

True Positive(TP):判別為陽性匿沛,實際也是陽性

False Positive(FP):判別為陽性,實際卻是陰性

True Negative(TN):判別為陰性榛鼎,實際也是陰性

False Negative(FN):判別為陰性俺祠,實際卻是陽性

一種樸素的“準確率”定義方法是“判別正確的比例”公给,即:

但是當樣本的分布極其不均衡時借帘,這個對準確率的定義會很有誤導(dǎo)性蜘渣。例如我們假設(shè)10000人里有150人患胃癌(陽性),經(jīng)過對血樣的分析肺然,一個模型識別出100名患者(TP)蔫缸,有50名患者沒有發(fā)現(xiàn)(FN),同時誤報了另外沒有患病的150人(FP)际起;另一個模型則不做任何判斷拾碌,直接宣稱所有人都沒有胃癌。我們直覺會認為前一個模型優(yōu)于后一個街望,但樸素的準確率定義卻給了我們相反的結(jié)論:

因為樸素的準確率定義有這樣的問題校翔,實踐中更常用的指標是“精確率”(Precision)和“召回率”(Recall)。它們的定義分別是:

Precision = TP/(TP+FP):在預(yù)測的陽性個例中灾前,有多少是預(yù)測正確的防症?

Recall = TP/(TP+FN):在所有的陽性個例中,總共找出了多少哎甲?

可以看出蔫敲,Precision和Recall往往是互相矛盾的:如果追求找出更多陽性個例(提高Recall),那么陰性個例被誤判為陽性的情況也會增加(降低Precision)炭玫,反之亦然奈嘿。在不同的業(yè)務(wù)場景下,需要追求的指標也會不同吞加。例如在前面的體檢場景下裙犹,我們會追求更高的Recall:盡量找出所有患病的人,有一些人被誤報也沒關(guān)系衔憨。而另一個極端場景是推薦顧客可能會賣的商品叶圃,這時我們會追求更高的Precision:推薦位只有5個,我們必須保證推薦的每一件商品都打中用戶的興趣點巫财,至于還有幾千個他可能感興趣的商品沒有被推薦盗似,那并不重要。

以上我們看到的只是最簡單的分類問題的場景平项。對于其他場景赫舒,可能需要引入其他度量準確率的指標。所以我們再次看到闽瓢,采用什么指標來定義“準確”接癌、應(yīng)該如何權(quán)衡指標的取舍,這同樣是一個與場景高度相關(guān)的業(yè)務(wù)問題扣讼。項目的管理者和業(yè)務(wù)代表需要清晰理解指標的含義缺猛、并合理設(shè)置對指標的期望。

然后呢……

如果項目的管理者和業(yè)務(wù)方代表能懂得機器學(xué)習是一類優(yōu)化任務(wù)、能理解優(yōu)化任務(wù)的度量方式荔燎、能針對這類任務(wù)設(shè)置合理的期望耻姥,在理解和把握項目進度與風險的路上他們就邁出了第一步。在下一篇文章里有咨,我會拆解出機器學(xué)習類項目涉及的工作內(nèi)容琐簇。讀者將會看到,看起來高大上的機器學(xué)習座享、人工智能婉商,實際上需要特殊技能和高中以上數(shù)學(xué)能力的只有極小一部分,其他都是普通的渣叛、確定性的軟件開發(fā)工作丈秩,可以用典型的軟件開發(fā)過程和管理方法來對待。針對份額極小淳衙、但有時非常重要的“自行訓(xùn)練模型”部分蘑秽,我會給出更加細化的工作內(nèi)容拆解,并提出任務(wù)拆分滤祖、進度管理筷狼、風險管理的相關(guān)辦法。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末匠童,一起剝皮案震驚了整個濱河市埂材,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌汤求,老刑警劉巖俏险,帶你破解...
    沈念sama閱讀 216,496評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異扬绪,居然都是意外死亡竖独,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,407評論 3 392
  • 文/潘曉璐 我一進店門挤牛,熙熙樓的掌柜王于貴愁眉苦臉地迎上來莹痢,“玉大人,你說我怎么就攤上這事墓赴【荷牛” “怎么了?”我有些...
    開封第一講書人閱讀 162,632評論 0 353
  • 文/不壞的土叔 我叫張陵诫硕,是天一觀的道長坦辟。 經(jīng)常有香客問我,道長章办,這世上最難降的妖魔是什么锉走? 我笑而不...
    開封第一講書人閱讀 58,180評論 1 292
  • 正文 為了忘掉前任滨彻,我火速辦了婚禮,結(jié)果婚禮上挪蹭,老公的妹妹穿的比我還像新娘亭饵。我一直安慰自己,他們只是感情好嚣潜,可當我...
    茶點故事閱讀 67,198評論 6 388
  • 文/花漫 我一把揭開白布冬骚。 她就那樣靜靜地躺著,像睡著了一般懂算。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上庇麦,一...
    開封第一講書人閱讀 51,165評論 1 299
  • 那天计技,我揣著相機與錄音,去河邊找鬼山橄。 笑死垮媒,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的航棱。 我是一名探鬼主播睡雇,決...
    沈念sama閱讀 40,052評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼饮醇!你這毒婦竟也來了它抱?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,910評論 0 274
  • 序言:老撾萬榮一對情侶失蹤朴艰,失蹤者是張志新(化名)和其女友劉穎观蓄,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體祠墅,經(jīng)...
    沈念sama閱讀 45,324評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡侮穿,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,542評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了毁嗦。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片亲茅。...
    茶點故事閱讀 39,711評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖狗准,靈堂內(nèi)的尸體忽然破棺而出克锣,到底是詐尸還是另有隱情,我是刑警寧澤驶俊,帶...
    沈念sama閱讀 35,424評論 5 343
  • 正文 年R本政府宣布娶耍,位于F島的核電站,受9級特大地震影響饼酿,放射性物質(zhì)發(fā)生泄漏榕酒。R本人自食惡果不足惜胚膊,卻給世界環(huán)境...
    茶點故事閱讀 41,017評論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望想鹰。 院中可真熱鬧紊婉,春花似錦、人聲如沸辑舷。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,668評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽何缓。三九已至肢础,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間碌廓,已是汗流浹背传轰。 一陣腳步聲響...
    開封第一講書人閱讀 32,823評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留谷婆,地道東北人慨蛙。 一個月前我還...
    沈念sama閱讀 47,722評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像纪挎,于是被迫代替她去往敵國和親期贫。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,611評論 2 353

推薦閱讀更多精彩內(nèi)容