丁香五月天婷婷久久婷婷色综合91|国产传媒自偷自拍|久久影院亚洲精品|国产欧美VA天堂国产美女自慰视屏|免费黄色av网站|婷婷丁香五月激情四射|日韩AV一区二区中文字幕在线观看|亚洲欧美日本性爱|日日噜噜噜夜夜噜噜噜|中文Av日韩一区二区

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號安全和更好的產(chǎn)品體驗,強烈建議使用更快更安全的瀏覽器
此為臨時鏈接,僅用于文章預(yù)覽,將在時失效
人工智能學(xué)術(shù) 正文
發(fā)私信給楊曉凡
發(fā)送

0

不要只關(guān)心怎么優(yōu)化模型,這不是機器學(xué)習(xí)的全部

本文作者: 楊曉凡 2019-04-22 21:45
導(dǎo)語:機器學(xué)習(xí)社區(qū)太在意模型的預(yù)測表現(xiàn)了,但模型只是拼圖中的一塊而已

雷鋒網(wǎng) AI 科技評論按:機器學(xué)習(xí)領(lǐng)域的學(xué)生、研究員、企業(yè)開發(fā)者都習(xí)慣了在模型的優(yōu)化上花大量功夫,仿佛取得更高的準(zhǔn)確率/AUC/mAP 等等就是機器學(xué)習(xí)研究和應(yīng)用的全部。但是很少有人去問:測試表現(xiàn)優(yōu)秀的模型就真的能很好解決真實世界的問題嗎?

可解釋的機器學(xué)習(xí)方向的研究員、《可解釋的機器學(xué)習(xí)》書作者 Christoph Molnar 近日就發(fā)表了一篇博客,提醒領(lǐng)域內(nèi)的各位警醒這種風(fēng)氣,開始注意機器學(xué)習(xí)的應(yīng)用中那些不應(yīng)該被忽視的問題。雷鋒網(wǎng) AI 科技評論編譯如下。

先講一個小故事。

德國某處,一個安靜的夜里。大多數(shù)人都已經(jīng)沉沉睡去,但我沒有。我得把機器學(xué)習(xí)模型訓(xùn)練完。我在和全世界和我一樣對模型著迷的人比拼,我們要看看到底誰的模型能得到最好的預(yù)測結(jié)果。我電腦的風(fēng)扇在嗡嗡地響,鍵盤也被我敲得咯咯吱吱。我目前的模型沒拿到什么好名次,在公開排行榜上排在中間而已。真讓人來氣。模型的準(zhǔn)確率其實還過得去,但在這個比賽里,「還過得去」是遠遠不夠的。比所有其他人的模型都好,才是我最終的目標(biāo)。我還需要更好的特征工程、更好的學(xué)習(xí)算法。我已經(jīng)有了一個建立新的特征的好點子,而且我還可以把隨機森林換成增強樹。訓(xùn)練這個模型應(yīng)該只需要半個小時時間,然后我就必須去睡覺了。

好幾個小時過去了,現(xiàn)在的時間是凌晨三點半。我終于得到了新模型的預(yù)測結(jié)果,可以沖擊排行榜上的新位置了。我滿懷希望地點了提交按鈕。我已經(jīng)很累了,「你的結(jié)果正在被評估」的提示看起來都那么模糊。我能到多少位呢,能到前 10% 嗎?我開始甜蜜地遐想。但真正的結(jié)果很快打碎了我的幻象,這一刻我感覺到前所未有地疲憊。別說得到更好的名次了,這個新模型的表現(xiàn)還不如上一個模型。代碼里有 bug?過擬合了?還是我上傳錯文件了?我腦中有一個又一個的問題冒出來,但是理智告訴我自己必須要躺下了。我在床上翻來覆去,然后夢見了一個不停增長、大到我永遠沒法理解的決策樹。

不要只關(guān)心怎么優(yōu)化模型,這不是機器學(xué)習(xí)的全部

「我得繼續(xù)改進我的機器學(xué)習(xí)模型!」

掀開眼罩看一看

我自己也曾有過類似這樣反復(fù)折騰機器學(xué)習(xí)比賽用的模型直到深夜的經(jīng)歷,現(xiàn)在我已經(jīng)不會再這么做了,原因有兩個,1,正常的睡眠現(xiàn)在對我來說重要得多,2,我對機器學(xué)習(xí)的認(rèn)識也有了很大變化。

當(dāng)我一開始接觸機器學(xué)習(xí)的時候,我認(rèn)為最重要的機器學(xué)習(xí)技能就是知道如何訓(xùn)練出表現(xiàn)最好的模型。為了達到這個目標(biāo),我把全部的精力都用來學(xué)習(xí)更多的算法、更多的特征工程技巧、更多的算法評估方法,一切都是為了讓模型的誤差立刻降下去。我如此地沉迷,以至于我當(dāng)年甚至為隨機森林寫了一首詩。

今天我的觀點有了很大變化。我覺得「機器學(xué)習(xí)」這四個字的含義遠不僅僅是把損失函數(shù)最小化。某種程度上,模型的擬合可以說是最簡單的部分了,因為有大批的文獻、教材、練習(xí)以及實用工具來幫你改善現(xiàn)狀。而且你也總能立刻得到反饋(只需要在模型沒有見過的數(shù)據(jù)上進行測試就行),總的來說很讓人滿意。我覺得,以機器學(xué)習(xí)整個領(lǐng)域來講,在模型擬合這方面已經(jīng)發(fā)展得相當(dāng)成熟了。但是除了擬合模型之外,我們還需要解決很多別的很困難的問題。比如:

  • 如何把現(xiàn)實問題轉(zhuǎn)化為預(yù)測任務(wù)?

  • 我們?nèi)绾卧陬A(yù)測模型中建立信任機制?

  • 訓(xùn)練數(shù)據(jù)是否含有偏倚?訓(xùn)練數(shù)據(jù)和實際部署以后的輸入數(shù)據(jù)相似程度有多高?

  • 如果系統(tǒng)的運行不太正常,如何為機器學(xué)習(xí)模型 debug?

  • 模型給出的預(yù)測(尤其是錯誤的預(yù)測)會對用戶和產(chǎn)品本身造成什么樣的影響?

  • 在當(dāng)前的預(yù)測和未來會增添的訓(xùn)練數(shù)據(jù)之間是否存在有害的反饋關(guān)系?

  • 一個固定不變的模型在不斷變化的環(huán)境中會有怎么樣的表現(xiàn)?

不要只關(guān)心怎么優(yōu)化模型,這不是機器學(xué)習(xí)的全部

狗展門口。 - 「我的狗訓(xùn)練得很好啊」-「不行!」
—— 這就是數(shù)據(jù)科學(xué)家們把最新的模型整合到真實世界的時候的樣子

我自己的觀點是,機器學(xué)習(xí)領(lǐng)域內(nèi)的人們大多數(shù)都還只關(guān)心怎么優(yōu)化模型,對我列舉的這種模型實際應(yīng)用中會遇到的問題知之甚少。但好消息是總的來說大家越來越意識到這些問題的存在,也投入更多精力考慮這些問題了。系統(tǒng)性思維、可解釋性、公平性、社會影響、數(shù)據(jù)的角色等等問題都在得到越來越多的關(guān)注。

模型的誘惑

我剛開始做機器學(xué)習(xí)的那幾年有一則趣事。我那時候剛加入一家創(chuàng)業(yè)公司,負責(zé)機器學(xué)習(xí)相關(guān)的幾個應(yīng)用。那時候我的編程水平不如團隊里其它的成員,不過我問了很多問題,比如問他們訓(xùn)練用的數(shù)據(jù)和之后在應(yīng)用里使用的數(shù)據(jù)是否類似。我的導(dǎo)師表揚我提了一些好問題,但我自己沒明白他為什么要表揚我,顯然我那時候心里更在乎的是「我怎么還沒學(xué)會用 Scala 語言編程」;而且我還覺得,知道怎么構(gòu)建更厲害的預(yù)測模型要比提出這些問題更重要。直到現(xiàn)在我才能完全理解我的導(dǎo)師為什么要表揚我。

經(jīng)過了五年時間我才終于明白了,「擬合出最佳的機器學(xué)習(xí)模型」這件事的影響有多小??擅靼走@個為什么要花五年呢?簡單來說,所有的機器學(xué)習(xí)教學(xué)和科研都太過于關(guān)注「最好的模型」,因此也就忽視了數(shù)據(jù)、忽視了人的因素,也忽視了預(yù)測模型與所在環(huán)境的復(fù)雜相互作用。

展開來說的話,讓我們通過一個假想的機器學(xué)習(xí)新人感受一下吧。她的名字叫 Anna,她現(xiàn)在在讀電子工程的碩士,有扎實的數(shù)學(xué)基礎(chǔ),也能夠用 C 和 Python 語言寫代碼。她的機器學(xué)習(xí)入門第一課是吳恩達的機器學(xué)習(xí)在線課程,同時她還在看《統(tǒng)計學(xué)習(xí)基礎(chǔ)(Elements of Statistical Learning)》這本書。和其它所有的教學(xué)材料一樣,在線課程和書里都是一個接一個地列出各種模型,并且詳細介紹模型背后的數(shù)學(xué)原理。它們幾乎不會提到如何認(rèn)識數(shù)據(jù)、如何考慮社會和道德影響、如何解釋模型、模型的應(yīng)用場景等等問題。她當(dāng)然會看到一些應(yīng)用案例,但這些案例都只不過是經(jīng)過精心設(shè)計的簡單理想問題而已。

過了一段時間以后,她開始參加 Kaggle 上的各種比賽。再一次地,她在 Kaggle 上也看到各種經(jīng)過精心設(shè)計的預(yù)測問題,簡直是喂到嘴邊了:在我們看到的比賽背后,Kaggle 已經(jīng)把最難最累的活都做完了,先尋找企業(yè)、數(shù)據(jù)、問題,把問題轉(zhuǎn)化成預(yù)測任務(wù),然后考慮要用哪些數(shù)據(jù),可能還需要做一些數(shù)據(jù)清理和合并,再選一個模型評價標(biāo)準(zhǔn),這些都由 Kaggle 包辦了。那對于參加 Kaggle 比賽的人來說,給他們剩下的事情除了特征工程以外,當(dāng)然就只有「擬合出最好的模型」這一件事了!贏走了比賽獎金的都是誰呢?不是模型表現(xiàn)優(yōu)良、有可解釋性的團隊,不是當(dāng)別人要花幾天訓(xùn)練的時候他們只需要幾秒鐘的團隊,不是模型真的有機會部署在生產(chǎn)環(huán)境中的團隊,因為這些模型的預(yù)測準(zhǔn)確率注定不會是最高的。所以 Anna 也就跟著相信,機器學(xué)習(xí)就只不過是找到預(yù)測表現(xiàn)最佳的模型,而且這個信念越來越牢固。這不是開玩笑,大家都看得到,得到了獎金和榮譽的就是那些能做出預(yù)測表現(xiàn)最佳的模型的人,

所以 Anna 對機器學(xué)習(xí)的熱情也跟著被點燃了,她想要在下一個比賽中拿到更好的名次!幸運的是,機器學(xué)習(xí)社區(qū)很棒、很開放,有很多討論如何調(diào)試模型表現(xiàn)的技術(shù)博客可以供她學(xué)習(xí),也有很多最新的機器學(xué)習(xí)庫可以讓她從 GitHub 上克隆使用。她終于明白:機器學(xué)習(xí)就是擬合出最好的模型。

Anna 也開始意識到機器學(xué)習(xí)這個領(lǐng)域有多么年輕、學(xué)術(shù)界和工業(yè)界的聯(lián)系又有多么緊密。為了了解最前沿的技術(shù),她開始閱讀機器學(xué)習(xí)的學(xué)術(shù)論文。從哪里開始呢,嗯,當(dāng)然是讀引用數(shù)最高的論文了!那么哪些論文引用數(shù)高呢?當(dāng)然是研究常見科研任務(wù)模型的論文和各種機器學(xué)習(xí)框架的論文了……

不要只關(guān)心怎么優(yōu)化模型,這不是機器學(xué)習(xí)的全部

數(shù)據(jù)科學(xué)家們的畢生夢想:一個模型,解決一切(就像魔戒的「一枚戒指,統(tǒng)治一切」)

可以說,在 Anna 的這一路上,她都時時刻刻在感受到這條最簡單的信息:想要做好機器學(xué)習(xí),你就需要深入研究建模算法(以及一些特征工程的技巧)。而除此之外的方面,幾乎見不到人提起。

擬合模型不是唯一重要的環(huán)節(jié)

說了這么半天我想已經(jīng)說明白了,只會贏 Kaggle 比賽是不足以稱得上機器學(xué)習(xí)專家的。那欠缺的知識都是什么呢?以我的淺見,下面這些課題的重要性被完全忽視了,整個機器學(xué)習(xí)領(lǐng)域都需要開始注意這些問題。

  • 問題的格式化:把一個實際問題轉(zhuǎn)化為一個預(yù)測或者模式識別問題。

  • 數(shù)據(jù)生成過程:理解數(shù)據(jù),明白數(shù)據(jù)在解決問題中的限制和適用性。

  • 模型解釋:用交叉驗證的性能估計方法之外的方式分析模型

  • 應(yīng)用場景:思考模型會如何和真實世界相互影響

  • 模型部署:把模型集成到產(chǎn)品或者計算過程中

這里只是簡單列了幾項,大家可以繼續(xù)補充。

你完全有可能在擬合出了最好的模型之后在這幾個方面犯錯,然后你的模型就會變得沒用,甚至變得有害。當(dāng)你的訓(xùn)練數(shù)據(jù)和應(yīng)用中的實際數(shù)據(jù)不匹配的時候,你的模型可能根本給不出正確的預(yù)測結(jié)果。當(dāng)你的高管擔(dān)心模型是個黑盒子所以拒絕使用它的時候,你得拿出白板想方設(shè)法給他們解釋。假如你發(fā)現(xiàn)你的模型對不同膚色的人有偏倚,那你最好別使用這個模型。

只要你把問題的格式化、數(shù)據(jù)、解釋、場景和部署做好,你的項目就可以非常成功了,你的模型預(yù)測準(zhǔn)確率很一般都沒關(guān)系。其他方面如果做不好,那么即便是調(diào)試很久的、在測試數(shù)據(jù)上完美無缺的集成模型也只能被扔進垃圾桶。

做錯容易,做對很難

機器學(xué)習(xí)模型完全可以有好的預(yù)測表現(xiàn),但是帶來的影響和人們預(yù)期的相反,我給大家講個故事來說明一這點。我有個朋友在一家電信公司工作,這家公司的業(yè)務(wù)之一是銷售移動通信套餐(通話+短信+流量)。他在公司的數(shù)據(jù)科學(xué)團隊工作,然后公司想要預(yù)測哪些客戶最有可能不繼續(xù)使用套餐,他也是這個項目的成員;做這個預(yù)測的目標(biāo)是給可能不再繼續(xù)使用的客戶提供性價比更高的套餐。那么,這個項目團隊就著手構(gòu)建了一個機器學(xué)習(xí)模型,這個模型分辨用戶的能力也相當(dāng)不錯。然后他們把高概率的用戶列出來,給到另一個團隊,這個團隊會和這些用戶逐一聯(lián)系,給他們提供更優(yōu)惠的套餐。

那么結(jié)果呢?取消這家公司套餐的人更多了,而不是更少了!

事后他們才意識到,他們逐一聯(lián)系那些有可能不再使用他們的服務(wù)的用戶,這提醒了對方不能繼續(xù)使用這家公司的套餐。聯(lián)系用戶的舉動反倒成了使得他們最終解約并轉(zhuǎn)向別的運營商的導(dǎo)火索。

為什么不對勁了?從一開始他們嘗試把實際問題變成預(yù)測問題的時候就出錯了。他們的模型預(yù)測了「客戶 X 解約的可能性如何」,但他們實際上需要預(yù)測的是「當(dāng)我們聯(lián)系客戶 X 的時候他解約的可能性如何」。這也可以看做是和應(yīng)用場景相關(guān)的問題,他們沒有仔細考慮聯(lián)系已經(jīng)有了解約心思的人之后的后果到底是什么。這個例子里,模型構(gòu)建可以得 10 分,但問題的格式化和應(yīng)用場景考慮只能得 1 分。

別以為你的隊友們就靠得住

那么是不是只有初學(xué)者才會在用機器學(xué)習(xí)解決真實世界問題的時候犯錯?當(dāng)然不是。想要學(xué)習(xí)擬合模型之外的機器學(xué)習(xí)技能,最好的方法就是參與解決真實世界的問題。不過這還不算完,你必須真的希望自己在擬合模型之外的方面也變得更厲害。

只有經(jīng)驗是不夠的。谷歌、亞馬遜之類對機器學(xué)習(xí)有大規(guī)模長期投入的企業(yè),是不是就掌握了模型優(yōu)化之外的方方面面了呢?其實也沒有。即便他們有那么多博士、有那么多資金、有那么多經(jīng)驗、有那么多數(shù)據(jù)、那么多技術(shù)特長,他們也還沒能完全弄清楚。實際上他們也還在犯一些很蠢的錯誤,因為在真實世界任務(wù)中應(yīng)用機器學(xué)習(xí)就是很難。

我舉幾個大公司用了機器學(xué)習(xí)然后搞砸了的例子:

  • 谷歌照片(Google Photos)會把黑人分類為黑猩猩。然后他們的解決方案是不再讓模型預(yù)測黑猩猩這個類別。這就好像你家的墻漏水了,你貼了張墻紙遮住了事,而不是找你樓上的鄰居談?wù)劇?/p>

  • 谷歌流感預(yù)測(Google Flu Trends)會高估流感的發(fā)生幾率。他們已經(jīng)下線了這個產(chǎn)品。它的工作方式是關(guān)注那些和流感發(fā)生有很高相關(guān)性的詞語,然后似乎把「高中籃球」之類的完全沒有因果關(guān)系的詞也學(xué)進去了。

  • 亞馬遜建立的招聘工具有性別偏倚。亞馬遜拿自己的招聘數(shù)據(jù)訓(xùn)練了模型,然后模型就簡單直接地反映出了亞馬遜在招聘時的性別偏倚(也就是說,更傾向于招男性)。所以他們一直都沒有使用這個工具。但同時他們的潛臺詞是:我們不用這個工具就沒事,當(dāng)前確實存在的性別偏倚也就當(dāng)作不知道了。和上面一樣,貼墻紙遮住了事。

為什么不用數(shù)據(jù)簡化你的生活呢?為什么不?

如果工作里沒有什么反饋告訴你做的對不對、做的好不好,你可能會覺得很疲憊。尤其是做學(xué)術(shù)研究,或者你沒有直接上級的時候,不確定自己現(xiàn)在做的事情有多大意義是挺常見的一件事。如果有個老板或者上級告訴你應(yīng)該做什么,感覺上會輕松一點,但是我偷偷跟你講個實話,沒人能真的弄明白。不管你做了十幾年還是幾十年,不管你有多少社會閱歷,你都不可能從某一天開始就對這個世界上的一切都一清二楚。

有一種解決辦法是用數(shù)據(jù)度量你的進展,這會給你提供一些反饋。可以算是通向成功的指標(biāo)吧。

  • 「今天我讀了 5 篇論文。」

  • 「這周我做完了一個 10 頁的報告。」

  • 「我的網(wǎng)站這個月有 10k 訪問量?!?/p>

  • 「今年我拿到了 20k 的獎金?!?/p>

某種程度上,用數(shù)字度量成功是一種很棒的方法,能幫你簡化工作、幫你更高效地工作。不過這些數(shù)據(jù)也過于簡化了「成功」這件事,怎么可能把所有條件用簡單的幾個數(shù)字就表示出來呢。

  • 比如你收入很高,但你不喜歡你的工作內(nèi)容。那你還成功嗎?

  • 比如你的論文經(jīng)常被引用,但你對真實世界還沒造成什么實際的影響。那你還成功嗎?

  • 比如你有上千個關(guān)注者,但是沒有人在看完你的動態(tài)之后點贊留言。那你還成功嗎?

  • 比如你在機器學(xué)習(xí)競賽中取得了很靠前的名次,但是你偷偷利用了數(shù)據(jù)里的漏洞,就和其它排在前面的參賽者一樣。那你還成功嗎?

其實很難說什么時候要為了達成某個數(shù)字而努力,什么時候又不要。在我看來,如果要在「達成數(shù)字」和「難以測量的工作」(比如研究新的產(chǎn)品,而不是賣更多舊產(chǎn)品)做一個取舍的話,整個社會的口味都嚴(yán)重偏向于達成數(shù)字的那一邊。機器學(xué)習(xí)領(lǐng)域也是一樣。

當(dāng)我覺得某人仿佛在「為達成某個數(shù)字而努力」的時候,我腦海里會浮現(xiàn)出賽馬的景象。有一匹很漂亮、很強壯的馬, 經(jīng)過人們的訓(xùn)練它可以跑得很快。然后如果它在比賽里獲得了好的名次,人們就會給它獎勵胡蘿卜吃(我不太確定馬是不是特別愛吃胡蘿卜,不過為了方便我講故事,我們暫且認(rèn)為馬最愛吃的就是胡蘿卜吧)。為了讓馬的注意力完全集中在目標(biāo)上,人們給馬眼睛上戴了眼罩,它會遮住馬對左右兩側(cè)的視野,讓它們只看得到前面?,F(xiàn)在我們就是這些賽馬,我們每個人都帶著眼罩,讓我們只能「盲目」地為了評價指標(biāo)而努力。但是很多時候,如果我們左右看看的話,也許賽道邊上就是一片無人照看的胡蘿卜地。

不要只關(guān)心怎么優(yōu)化模型,這不是機器學(xué)習(xí)的全部

作為機器學(xué)習(xí)這個領(lǐng)域內(nèi)的成員,我們已經(jīng)在錯誤的機器學(xué)習(xí)比賽里面比拼了太久了。我們得摘掉頭上的眼罩。所以我寫了這篇博客,希望能啟發(fā)更多人摘掉自己的眼罩,以及希望這個領(lǐng)域的關(guān)注點能夠不再局限于模型表現(xiàn),而開始更多地關(guān)注數(shù)據(jù)、解釋性、應(yīng)用場景以及社會影響。

via https://bentoml.com/posts/2019-04-19-one-model/,雷鋒網(wǎng) AI 科技評論編譯。

雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。

不要只關(guān)心怎么優(yōu)化模型,這不是機器學(xué)習(xí)的全部

分享:
相關(guān)文章

讀論文為生

日常笑點滴,學(xué)術(shù)死腦筋
當(dāng)月熱門文章
最新文章
請?zhí)顚懮暾埲速Y料
姓名
電話
郵箱
微信號
作品鏈接
個人簡介
為了您的賬戶安全,請驗證郵箱
您的郵箱還未驗證,完成可獲20積分喲!
請驗證您的郵箱
立即驗證
完善賬號信息
您的賬號已經(jīng)綁定,現(xiàn)在您可以設(shè)置密碼以方便用郵箱登錄
立即設(shè)置 以后再說