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

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

0

改進(jìn)模型架構(gòu)遇到了瓶頸?你該考慮改善自己的數(shù)據(jù)了!

本文作者: MrBear 編輯:楊曉凡 2018-06-17 20:40
導(dǎo)語(yǔ):工欲善其事,必先利其器。garbage in,garbage out!

雷鋒網(wǎng) AI 科技評(píng)論按:這篇博客來(lái)自 Jetpac(現(xiàn)被谷歌收購(gòu)) CTO、蘋(píng)果畢業(yè)生、TensorFlow 團(tuán)隊(duì)成員 Pete Warden。文中討論了一個(gè)很容易被機(jī)器學(xué)習(xí)領(lǐng)域的研究人員們忽略的問(wèn)題:你是否真的清楚數(shù)據(jù)對(duì)模型表現(xiàn)有多大影響,同時(shí)你又有沒(méi)有付出適當(dāng)?shù)木υ诟纳颇愕臄?shù)據(jù)上呢?已經(jīng)為生產(chǎn)環(huán)境開(kāi)發(fā)過(guò)模型的研究人員相信已經(jīng)對(duì)這件事足夠重視,不過(guò)也不妨重溫一下其中的重要思路。

原文標(biāo)題「Why you need to improve your training data, and how to do it」,雷鋒網(wǎng) AI 科技評(píng)論全文編譯如下。

改進(jìn)模型架構(gòu)遇到了瓶頸?你該考慮改善自己的數(shù)據(jù)了!

Andrej Karpathy(char-rnn 作者,https://twitter.com/karpathy)在「Train AI」(https://www.figure-eight.com/train-ai/)會(huì)議上演講的時(shí)候放了這張幻燈片,我非常喜歡它!他的幻燈片完美地抓住了深度學(xué)習(xí)研究和工業(yè)生產(chǎn)之間的差異(讀博的時(shí)候大多數(shù)熬夜都是在調(diào)模型,但在企業(yè)里大多數(shù)熬夜是在處理數(shù)據(jù))。學(xué)術(shù)論文的關(guān)注點(diǎn)幾乎都在具有創(chuàng)新性、性能有所提升的模型上,而它們使用的數(shù)據(jù)集往往都是一小部分的公開(kāi)數(shù)據(jù)集。然而,據(jù)我所知,在實(shí)際應(yīng)用中使用深度學(xué)習(xí)技術(shù)的人往往會(huì)花大量的時(shí)間分析考慮他們的訓(xùn)練數(shù)據(jù)。

研究人員如此關(guān)注模型架構(gòu)的理由有很多,但這同時(shí)也意味著,能幫助指導(dǎo)如何把機(jī)器學(xué)習(xí)用在生產(chǎn)環(huán)境中的資料非常少。為了解決這個(gè)問(wèn)題,我在 Train AI 大會(huì)上的演講題目為「訓(xùn)練數(shù)據(jù)無(wú)法解釋的有效性」,并且在這篇博文中,我想對(duì)這個(gè)題目進(jìn)行進(jìn)一步的拓展,解釋為什么數(shù)據(jù)如此重要,介紹一些改進(jìn)數(shù)據(jù)的實(shí)用技巧。

作為我工作的一部分,我與許多研究人員和產(chǎn)品團(tuán)隊(duì)進(jìn)行了密切的合作。當(dāng)我看到他們專(zhuān)注于模型構(gòu)建過(guò)程中的數(shù)據(jù)改進(jìn)工作,并且由此取得了大量的成果,我對(duì)于數(shù)據(jù)改進(jìn)的威力便深信不疑。在大多數(shù)應(yīng)用中,使用深度學(xué)習(xí)技術(shù)的最大阻礙是在現(xiàn)實(shí)世界中獲得足夠高的準(zhǔn)確率,而改進(jìn)訓(xùn)練數(shù)據(jù)集是我所見(jiàn)到的最快的能夠提升準(zhǔn)確率的途徑。即使你受限于延遲、存儲(chǔ)空間等因素,在特定的模型上提升準(zhǔn)確率也可以讓你能夠通過(guò)使用較小的模型架構(gòu)在這些性能指標(biāo)上進(jìn)行折衷。

語(yǔ)音控制

在這里,我不能公開(kāi)分享我對(duì)于工業(yè)生產(chǎn)系統(tǒng)的觀察,但是我為大家提供了一個(gè)開(kāi)源的示例來(lái)演示相同的模式。去年,我創(chuàng)建了一個(gè)TensorFlow 環(huán)境下的「簡(jiǎn)單語(yǔ)音識(shí)別示例」(https://www.tensorflow.org/tutorials/audio_recognition)。結(jié)果表明,并沒(méi)有現(xiàn)有的數(shù)據(jù)集可以被很容易地用于訓(xùn)練模型。在大量的志愿者的慷慨的幫助下,通過(guò)使用 AIY 團(tuán)隊(duì)協(xié)助我開(kāi)發(fā)的「開(kāi)放式語(yǔ)音記錄網(wǎng)站」(https://aiyprojects.withgoogle.com/open_speech_recording),我收集到了 60,000 條一秒長(zhǎng)的人類(lèi)說(shuō)短單詞的音頻片段。由此得到的模型是可用的,但是仍然沒(méi)有達(dá)到我想要的準(zhǔn)確度。為了看看這種情況在多大程度上是由于我自己作為一個(gè)模型設(shè)計(jì)者存在的不足,我使用相同的數(shù)據(jù)集舉辦了一個(gè)Kaggle 競(jìng)賽(https://www.kaggle.com/c/tensorflow-speech-recognition-challenge/)。參賽者的模型性能比我的簡(jiǎn)單模型要好得多,但盡管有許多不同的方法,多支隊(duì)伍的準(zhǔn)確率都止步于 91% 左右。這告訴我數(shù)據(jù)中存在著本質(zhì)上錯(cuò)誤的問(wèn)題。而實(shí)際上參賽者們也發(fā)現(xiàn)了很多錯(cuò)誤,比如不正確的標(biāo)簽或被截?cái)嗟囊纛l。這促使我開(kāi)始動(dòng)手發(fā)布一個(gè)修復(fù)了參賽者發(fā)現(xiàn)的問(wèn)題的新數(shù)據(jù)集,并且提供更多的樣本。

我查看了一下錯(cuò)誤度量結(jié)果,從而了解該模型對(duì)于哪些詞語(yǔ)存在的問(wèn)題最多。結(jié)果顯示,「其它」類(lèi)別(語(yǔ)音能夠被識(shí)別,但是相應(yīng)單詞在模型有限的詞匯表中無(wú)法找到)尤其容易出錯(cuò)。為了解決這個(gè)問(wèn)題,我加大了我們捕獲的不同單詞的數(shù)量,從而為訓(xùn)練數(shù)據(jù)提供更大的多樣性。

因?yàn)?nbsp;Kaggle 參賽者報(bào)告了標(biāo)注錯(cuò)誤的問(wèn)題,我眾包了一個(gè)額外的驗(yàn)證過(guò)程,要求人們聽(tīng)每一個(gè)音頻片段,并確保它與預(yù)期的標(biāo)簽相匹配。由于參賽者在Kaggle 競(jìng)賽中還發(fā)現(xiàn)了一些幾乎無(wú)聲或者被截?cái)嗔说囊纛l文件,我還編寫(xiě)了一個(gè)實(shí)用程序來(lái)進(jìn)行一些簡(jiǎn)單的音頻分析(https://github.com/petewarden/extract_loudest_section),并且自動(dòng)刪除質(zhì)量特別差的樣本。最終,得益于更多的志愿者和一些有償眾包接包者的努力,盡管刪除了質(zhì)量不佳的文件,我將語(yǔ)音樣本的數(shù)量增大到了超過(guò) 100,000 份的規(guī)模。

為了幫助他人使用該數(shù)據(jù)集(并且從我的錯(cuò)誤中吸取教訓(xùn)?。┪覍⑺杏嘘P(guān)的內(nèi)容和更新后的準(zhǔn)確率的結(jié)果寫(xiě)到了一篇論文中(https://arxiv.org/abs/1804.03209)中。最重要的結(jié)論是,在完全不改變模型結(jié)構(gòu)或測(cè)試數(shù)據(jù)的情況下,首位準(zhǔn)確率提高了超過(guò) 4 個(gè)百分點(diǎn),從 85.4% 提高到了 89.7%。這是一個(gè)顯著的提升,并且當(dāng)人們?cè)诎沧炕驑?shù)莓派上嘗試應(yīng)用 demo 時(shí),結(jié)果也令人滿意得多。盡管我知道我現(xiàn)在使用的并非最先進(jìn)的模型,但是我堅(jiān)信如果我把時(shí)間都花在模型架構(gòu)的調(diào)整上,我將無(wú)法取得如此大的提升。

在生產(chǎn)環(huán)境中,我看到這種處理方法一次又一次地產(chǎn)生了很好的的結(jié)果,但如果你想做同樣的事情,卻可能無(wú)從下手。你可以從我在語(yǔ)音數(shù)據(jù)上使用的技術(shù)中得到一些啟發(fā),但是接下來(lái),我將向你介紹一些我認(rèn)為非常實(shí)用的方法。

首先,觀察你的數(shù)據(jù)

這似乎是顯而易見(jiàn)的,但你首先應(yīng)該做的便是隨機(jī)地瀏覽你將要開(kāi)始使用的訓(xùn)練數(shù)據(jù)。你需要將文件復(fù)制到本地機(jī)器上,然后花幾個(gè)小時(shí)預(yù)覽它們。如果你要處理圖像,你可以使用 MacOS 的 finder 這樣的工具來(lái)滾動(dòng)瀏覽縮略視圖,這樣就能很快地查看數(shù)以千計(jì)的圖片;對(duì)于音頻文件來(lái)說(shuō),則可以使用 finder 播放預(yù)覽;或者對(duì)于文本文件來(lái)說(shuō),將隨機(jī)片段轉(zhuǎn)存到你的終端中。我并沒(méi)有花費(fèi)足夠的時(shí)間對(duì)第一版語(yǔ)音控制系統(tǒng)進(jìn)行上述操作,而這也正是為什么一旦 Kaggle 競(jìng)賽的參賽者開(kāi)始處理數(shù)據(jù)就發(fā)現(xiàn)了如此之多的問(wèn)題。

我一直覺(jué)得這個(gè)處理過(guò)程有點(diǎn)傻,但是做完后我從未后悔過(guò)。每當(dāng)我完成這些數(shù)據(jù)處理工作,我都會(huì)發(fā)現(xiàn)一些對(duì)數(shù)據(jù)至關(guān)重要的東西,無(wú)論是不同種類(lèi)樣本數(shù)量的失衡、損壞的數(shù)據(jù)(例如將 PNG 文件的擴(kuò)展名標(biāo)注為 JPG 文件)、錯(cuò)誤的標(biāo)簽,或者僅僅是令人感到驚訝的數(shù)據(jù)組合。通過(guò)仔細(xì)的檢查,Tom White 在 ImageNet 中取得了許多有趣的發(fā)現(xiàn)。例如:

標(biāo)簽「sunglass」(太陽(yáng)鏡),實(shí)際上指的是一種古代的用于放大太陽(yáng)光線的裝置(下圖)

改進(jìn)模型架構(gòu)遇到了瓶頸?你該考慮改善自己的數(shù)據(jù)了!

而 ImageNet 中的「sunglass」和「sunglasses」(太陽(yáng)眼鏡)高度混淆(左側(cè)圖像類(lèi)別被標(biāo)注為「sunglass」、右側(cè)類(lèi)別為「sunglasses」,攤手)

改進(jìn)模型架構(gòu)遇到了瓶頸?你該考慮改善自己的數(shù)據(jù)了!

標(biāo)簽為「garbage truck」(垃圾車(chē))的分類(lèi)中,有一張美女的照片

改進(jìn)模型架構(gòu)遇到了瓶頸?你該考慮改善自己的數(shù)據(jù)了!

標(biāo)簽為「cloak」(斗篷)的圖像似乎對(duì)不死女有偏見(jiàn)

改進(jìn)模型架構(gòu)遇到了瓶頸?你該考慮改善自己的數(shù)據(jù)了!

除此之外,Andrej 手動(dòng)地對(duì) ImageNet 中的圖片進(jìn)行分類(lèi)的工作(http://karpathy.github.io/2014/09/02/what-i-learned-from-competing-against-a-convnet-on-imagenet/)也教會(huì)了我很多關(guān)于這個(gè)數(shù)據(jù)集的知識(shí),包括如何分辨出所有不同的狗的種類(lèi),甚至是對(duì)一個(gè)人來(lái)說(shuō)。

你將采取什么樣的行動(dòng)取決于你發(fā)現(xiàn)了什么,但是在做其它任何的數(shù)據(jù)清理工作之前,你總是需要做這種檢查,因?yàn)閷?duì)于數(shù)據(jù)集中內(nèi)容直觀的了解可以幫助你在接下來(lái)的步驟中做出正確的決策。

快速地選擇一個(gè)模型

不要花太長(zhǎng)的時(shí)間去選擇恰當(dāng)?shù)哪P汀H绻阋鰣D像分類(lèi),請(qǐng)查看 AutoML(https://cloud.google.com/automl/),否則可以看看 TensorFlow 的模型倉(cāng)庫(kù)(https://github.com/tensorflow/models/)或者 Fast.AI 收集的樣例(http://www.fast.ai/),直接找到和你的產(chǎn)品解決的問(wèn)題相似的模型。重要的是盡可能快的開(kāi)始迭代,這樣你就可以盡早并且經(jīng)常地讓真實(shí)用戶來(lái)測(cè)試你的模型。你總是可以,而且可能看到更好的實(shí)驗(yàn)結(jié)果,但首先你得保證數(shù)據(jù)沒(méi)有問(wèn)題。深度學(xué)習(xí)仍然遵循「無(wú)用輸入得到無(wú)用輸出」(garbage in,garbage out)的基本計(jì)算法則,所以即使是最好的模型的性能也會(huì)受到你的訓(xùn)練數(shù)據(jù)中的缺陷的限制。通過(guò)選擇一個(gè)模型并且對(duì)其進(jìn)行測(cè)試,你就能夠理解這些這些缺陷是什么,并開(kāi)始改進(jìn)它們。

為了進(jìn)一步加快你的模型的迭代速度,你可以試著從一個(gè)已經(jīng)在大規(guī)模的現(xiàn)有的數(shù)據(jù)集上預(yù)訓(xùn)練好的模型開(kāi)始,通過(guò)遷移學(xué)習(xí)使用你收集到的(可能小的多的)數(shù)據(jù)集對(duì)它進(jìn)行調(diào)優(yōu)。這通常會(huì)比僅僅在你較小的數(shù)據(jù)集上進(jìn)行訓(xùn)練得到的結(jié)果好得多,因此你可以快速地對(duì)如何調(diào)整你的數(shù)據(jù)收集策略有一個(gè)清晰的認(rèn)識(shí)。最重要的是,你可以根據(jù)你可與你在你的數(shù)據(jù)收集過(guò)程中考慮結(jié)果中的反饋,從而在學(xué)習(xí)的過(guò)程中進(jìn)行調(diào)整,而不是僅僅在訓(xùn)練之前將數(shù)據(jù)收集所謂一個(gè)單獨(dú)的階段運(yùn)行。

在自己做模型之前先仿造它

在建立學(xué)術(shù)研究模型和工業(yè)生產(chǎn)模型之間最大的區(qū)別在于,學(xué)術(shù)研究通常在一開(kāi)始就定義了一個(gè)明確的問(wèn)題的聲明,但實(shí)際用用的需求則存在于用戶的腦海中,并且只能隨著時(shí)間的推移慢慢變得清晰明了。例如,對(duì)于 Jetpac 來(lái)說(shuō),我們希望找到好的圖片,將其展示在城市的自助旅行指南中。

這是一個(gè)極端的例子,但是它說(shuō)明標(biāo)注過(guò)程在很大程度上取決于應(yīng)用的需求。對(duì)于大多數(shù)生產(chǎn)中的用例來(lái)說(shuō),找出模型需要回答的正確的問(wèn)題需要花費(fèi)很長(zhǎng)一段時(shí)間,而這對(duì)于正確地解決問(wèn)題是十分關(guān)鍵的。如果你正在用你的模型回答錯(cuò)誤的問(wèn)題,你將永遠(yuǎn)無(wú)法在這個(gè)糟糕的基礎(chǔ)上建立一個(gè)良好的用戶體驗(yàn)。

改進(jìn)模型架構(gòu)遇到了瓶頸?你該考慮改善自己的數(shù)據(jù)了!

我發(fā)現(xiàn)唯一能夠判斷你所問(wèn)的問(wèn)題是否正確的方法就是模擬一個(gè)你的應(yīng)用程序,而不是建立一個(gè)有人類(lèi)參與決策的機(jī)器學(xué)習(xí)模型。由于有人類(lèi)在背后參與決策,這種方法優(yōu)勢(shì)被稱(chēng)為「Wizard-of-Oz-ing」。而對(duì)于 Jetpac 來(lái)說(shuō),我們讓使用者手動(dòng)地從一些旅游指南樣例中選擇圖片,而不是訓(xùn)練一個(gè)模型,然后從測(cè)試用戶的反饋來(lái)調(diào)整我們用于選擇圖片的標(biāo)準(zhǔn)。一旦我們能夠可靠地從訓(xùn)練中獲得正反饋,我們就可以將我們?cè)O(shè)計(jì)的圖片選擇規(guī)則遷移到一個(gè)標(biāo)注指南中,從而獲得數(shù)以百萬(wàn)計(jì)的圖片作為訓(xùn)練集。接著,這些數(shù)據(jù)被用來(lái)訓(xùn)練出能夠預(yù)測(cè)數(shù)十億圖片的標(biāo)簽的模型,但它的 DNA(核心思想)來(lái)自我們?cè)O(shè)計(jì)的原始的手動(dòng)選擇圖片的規(guī)則。

使用真實(shí)數(shù)據(jù)進(jìn)行訓(xùn)練

在上述的 Jetpac 的例子中,我們用于訓(xùn)練模型的圖像和我們希望將模型應(yīng)用到的圖片的來(lái)源相同(大部分來(lái)自 Facebook 和 Instagram),但是我發(fā)現(xiàn)的一個(gè)常見(jiàn)問(wèn)題是,訓(xùn)練數(shù)據(jù)集與模型使用的輸入數(shù)據(jù)的一些關(guān)鍵性的差異最終會(huì)體現(xiàn)在生產(chǎn)結(jié)果中。

舉例而言,我經(jīng)常會(huì)看到一些團(tuán)隊(duì)試圖在無(wú)人機(jī)或機(jī)器人上使用 ImageNet 數(shù)據(jù)訓(xùn)練出的模型時(shí)遇到問(wèn)題。之所以會(huì)出現(xiàn)這種情況是因?yàn)?ImageNet 中的數(shù)據(jù)大多為人為拍攝的照片,而這些照片存在著很多共同的特性。這些圖片是用手機(jī)或靜態(tài)照相機(jī)拍攝的,它們使用中性鏡頭,拍攝的高度大約與頭部平行,在日光或人造光線下拍攝,需要標(biāo)記的物體位于圖片中央并位于前景中。而機(jī)器人和無(wú)人機(jī)使用視頻攝像機(jī),通常采用擁有大視場(chǎng)角的鏡頭,其拍攝的位置不是在地面上就是在高空中,通常拍攝的光線都比較差,并且由于沒(méi)有智能化地對(duì)圖像進(jìn)行定位的機(jī)制,通常只能對(duì)圖片進(jìn)行裁剪。這些差異意味著,如果你只是利用 ImageNet 中的圖片訓(xùn)練模型并將其部署到上述的某臺(tái)設(shè)備上,那么你將得到較低的準(zhǔn)確率。

你所使用的訓(xùn)練數(shù)據(jù)和模型最終的輸入數(shù)據(jù)還可能有一些細(xì)微的差異。不妨想象你正在建造一個(gè)能識(shí)別野生動(dòng)物的相機(jī),并且使用來(lái)自世界各地的動(dòng)物數(shù)據(jù)集來(lái)訓(xùn)練它。如果你只打算將它部署在婆羅洲的叢林中,那么圖片應(yīng)該被標(biāo)注為企鵝的概率會(huì)極其的低。而如果訓(xùn)練數(shù)據(jù)中包含南極的照片,那么模型將會(huì)有很有可能將其他動(dòng)物誤認(rèn)為企鵝,模型整體的準(zhǔn)確率會(huì)低于不使用這部分訓(xùn)練數(shù)據(jù)時(shí)的準(zhǔn)確率。

有很多方法可以讓你根據(jù)已知的先驗(yàn)知識(shí)(例如,在叢林中,大幅度降低圖片被標(biāo)注為企鵝的概率)來(lái)校準(zhǔn)你的結(jié)果,但使用能夠反映產(chǎn)品真實(shí)場(chǎng)景的訓(xùn)練集會(huì)更加有效。我發(fā)現(xiàn)最好的方法就是始終使用直接從實(shí)際應(yīng)用程序中獲取的數(shù)據(jù),這與我上面提到的 Wizard of Oz 方法能很好地結(jié)合在一起。也就是說(shuō),在訓(xùn)練過(guò)程中使用人做出決策可以改為對(duì)你的初始數(shù)據(jù)集進(jìn)行標(biāo)注,即使收集到的標(biāo)簽數(shù)量非常少,它們也可以反映真實(shí)的使用情況,并且也應(yīng)該能夠滿足進(jìn)行遷移學(xué)習(xí)的初步的實(shí)驗(yàn)的基本要求。

遵循度量指標(biāo)

當(dāng)我研究語(yǔ)音控制系統(tǒng)的例子時(shí),我最??吹降膱?bào)告之一就是訓(xùn)練期間的混淆矩陣。下面是一個(gè)在控制臺(tái)中顯示的例子: 

[[258 0 0 0 0 0 0 0 0 0 0 0]
 [ 7 6 26 94 7 49 1 15 40 2 0 11]
 [ 10 1 107 80 13 22 0 13 10 1 0 4]
 [ 1 3 16 163 6 48 0 5 10 1 0 17]
 [ 15 1 17 114 55 13 0 9 22 5 0 9]
 [ 1 1 6 97 3 87 1 12 46 0 0 10]
 [ 8 6 86 84 13 24 1 9 9 1 0 6]
 [ 9 3 32 112 9 26 1 36 19 0 0 9]
 [ 8 2 12 94 9 52 0 6 72 0 0 2]
 [ 16 1 39 74 29 42 0 6 37 9 0 3]
 [ 15 6 17 71 50 37 0 6 32 2 1 9]
 [ 11 1 6 151 5 42 0 8 16 0 0 20]]

這可能看起來(lái)有點(diǎn)讓人摸不著頭腦,但實(shí)際上它只是一個(gè)顯示網(wǎng)絡(luò)錯(cuò)誤分類(lèi)的細(xì)節(jié)的表格。下面為大家展示一個(gè)更加美觀的版本:

改進(jìn)模型架構(gòu)遇到了瓶頸?你該考慮改善自己的數(shù)據(jù)了!

表中的每一行代表一組與實(shí)際標(biāo)簽相同的樣本,每列顯示預(yù)測(cè)出的標(biāo)簽結(jié)果的數(shù)量。例如,高亮顯示的行表示所有實(shí)際上是無(wú)聲的音頻樣本,如果你從左至右閱讀則一行,可以看到標(biāo)簽預(yù)測(cè)的結(jié)果是完全正確的,因?yàn)槊總€(gè)預(yù)測(cè)標(biāo)簽都落在將樣本預(yù)測(cè)為無(wú)聲音頻的列中。這告訴我們,該模型非常善于正確識(shí)別真正的無(wú)聲音頻樣本,不存在誤判。如果我們從一整列的角度來(lái)看這個(gè)表格,第一列顯示有多少音頻片段被預(yù)測(cè)為無(wú)聲樣本,我們可以看到一些實(shí)際上是單詞的音頻片段被誤認(rèn)為是無(wú)聲的,顯然這其中有大量的誤判。這樣的結(jié)果對(duì)我們來(lái)說(shuō)非常有用,因?yàn)樗屛腋幼屑?xì)地觀察那些被錯(cuò)誤地歸類(lèi)為是無(wú)聲樣本的音頻片段,而這些片段中又很多都是在相當(dāng)安靜的環(huán)境下錄音的。這幫助我通過(guò)刪除音量較低的音頻片段來(lái)提高數(shù)據(jù)的質(zhì)量,而如果沒(méi)有混淆矩陣的線索,我將不知道該如何處理它。

幾乎所有對(duì)預(yù)測(cè)結(jié)果的總結(jié)都可能是有用的,但是我認(rèn)為混淆矩陣是一個(gè)很好的折衷方案,它提供的信息比僅僅給出準(zhǔn)確率的數(shù)字更多,同時(shí)也不會(huì)包含太多細(xì)節(jié),讓我無(wú)法處理。在訓(xùn)練過(guò)程中,觀察數(shù)字的變化也很有用,因?yàn)樗梢愿嬖V你模型正在努力學(xué)習(xí)什么類(lèi)別,并可以讓你知道在清理和擴(kuò)展數(shù)據(jù)集時(shí)需要注意哪些領(lǐng)域。

物以類(lèi)聚

我最喜歡的一種理解我的網(wǎng)絡(luò)如何解讀訓(xùn)練數(shù)據(jù)的方式是可視化聚類(lèi)。TensorBoard 為這種探索方法提供了很好的支持,雖然它經(jīng)常被用于查看詞嵌入,但我發(fā)現(xiàn)它幾乎適用于任何像嵌入技術(shù)一樣工作的的網(wǎng)絡(luò)層。例如,圖像分類(lèi)網(wǎng)絡(luò)在最后的全連接或softmax 單元之前通常具有可以被用做嵌入表示的倒數(shù)第二層(這也正是像「TensorFlow for Poets」(https://codelabs.developers.google.com/codelabs/tensorflow-for-poets/#0)這樣的簡(jiǎn)單的遷移學(xué)習(xí)示例的工作原理)。這些并不是嚴(yán)格意義上的嵌入,因?yàn)槲覀儾](méi)有在訓(xùn)練過(guò)程中設(shè)法確保在真正的嵌入中具有你所希望得到的理想的空間屬性,但對(duì)它們的向量進(jìn)行聚類(lèi)確實(shí)會(huì)得到一些有趣的結(jié)果。

舉一個(gè)實(shí)際的例子,之前一個(gè)和我一同工作的團(tuán)隊(duì)在他們的圖像分類(lèi)模型中困惑于對(duì)某些動(dòng)物的高錯(cuò)誤率。他們使用可視化聚類(lèi)技術(shù)來(lái)觀察他們的訓(xùn)練數(shù)據(jù)是如何分布到不同類(lèi)別中去的,當(dāng)他們看到「美洲豹」時(shí),他們清晰地看到發(fā)現(xiàn)數(shù)據(jù)被分成兩個(gè)彼此之間存在一定距離的不同的組

改進(jìn)模型架構(gòu)遇到了瓶頸?你該考慮改善自己的數(shù)據(jù)了!

上圖即為它們所看到的聚類(lèi)結(jié)果。一旦將每個(gè)聚類(lèi)的圖片展示出來(lái),我們可以很明顯地看到有很多「捷豹」牌汽車(chē)被錯(cuò)誤地標(biāo)注為美洲豹。一旦他們知道了這一問(wèn)題,他們就能夠檢查標(biāo)注過(guò)程,并且意識(shí)到工作人員的指導(dǎo)和用戶界面是令人困惑的。有了這些信息,他們就能夠改進(jìn)(人類(lèi))標(biāo)注者的訓(xùn)練過(guò)程并修復(fù)工具中存在的問(wèn)題,將所有汽車(chē)圖像從美洲豹的類(lèi)別中刪除,使得模型在該類(lèi)別上取得更高的分類(lèi)準(zhǔn)確率。

通過(guò)讓你深入了解你的訓(xùn)練集中的內(nèi)容,聚類(lèi)提供了與僅僅觀察數(shù)據(jù)相同的好處,但網(wǎng)絡(luò)實(shí)際上是通過(guò)根據(jù)自己的學(xué)習(xí)理解將輸入分組來(lái)指導(dǎo)您的探索。作為人類(lèi),我們非常善于從視覺(jué)上發(fā)現(xiàn)異常情況,所以將我們的直覺(jué)和計(jì)算機(jī)處理大量輸入的能力相結(jié)合為追蹤數(shù)據(jù)集質(zhì)量問(wèn)題提供了一個(gè)高可擴(kuò)展的解決方案。關(guān)于如何使用 TensorBoard 來(lái)完成這樣的工作的完整教程超出了本文的范圍,不多贅述。但如果你真的想要提高模型性能,我強(qiáng)烈建議你熟悉這個(gè)工具。

持續(xù)收集數(shù)據(jù)

我從來(lái)沒(méi)有見(jiàn)過(guò)收集更多的數(shù)據(jù)而不能提高模型準(zhǔn)確性的情況,結(jié)果表明,有很多研究都支持我的這一經(jīng)驗(yàn)。

改進(jìn)模型架構(gòu)遇到了瓶頸?你該考慮改善自己的數(shù)據(jù)了!

該圖來(lái)自「谷歌證明數(shù)據(jù)為王,初創(chuàng)公司們被潑上了一盆冰水」,展示了即使訓(xùn)練集的規(guī)模增長(zhǎng)到包含數(shù)以億計(jì)的樣本,圖像分類(lèi)的模型準(zhǔn)確率也在不斷提高。Facebook 最近進(jìn)行了更深入的探索,它們使用數(shù)十億帶標(biāo)簽的 Instagram 圖像在 ImageNet 圖像分類(lèi)任務(wù)上獲得了新的準(zhǔn)確率最高的記錄(「發(fā)美照時(shí)打上 #,還能幫Facebook提升圖片識(shí)別率喲」)。這表明,即使對(duì)擁有大規(guī)模、高質(zhì)量數(shù)據(jù)集的任務(wù)來(lái)說(shuō),增加訓(xùn)練集的大小仍然可以提高模型的性能。

這意味著,只要有任何用戶可以從更高的模型準(zhǔn)確率中受益,你就需要一個(gè)可以持續(xù)改進(jìn)數(shù)據(jù)集的策略。如果可以的話,你可以尋找具有創(chuàng)造性的方法來(lái)利用甚至是十分微弱的信號(hào)來(lái)獲取更大的數(shù)據(jù)集。Facebook 使用 Instagram 標(biāo)簽就是一個(gè)很好的例子。另一種方法是提高標(biāo)注過(guò)程的智能化程度,例如通過(guò)將模型的初始版本的標(biāo)簽預(yù)測(cè)結(jié)果提供給標(biāo)注人員,以便他們可以做出更快的決策。這種方法的風(fēng)險(xiǎn)是可能在早期引入一些偏差,但實(shí)際上我們所獲得的好處往往超過(guò)這種風(fēng)險(xiǎn)。聘請(qǐng)更多的人標(biāo)注新的訓(xùn)練數(shù)據(jù)來(lái)解決這個(gè)問(wèn)題,通常也是一項(xiàng)劃算的投資行為,但是對(duì)于那些對(duì)這類(lèi)支出沒(méi)有預(yù)算的傳統(tǒng)的組織來(lái)說(shuō),這可能十分困難。如果你運(yùn)營(yíng)的是非營(yíng)利性組織,讓你的支持者通過(guò)某種公共工具更方便地自愿提供數(shù)據(jù),這可能是在不增加開(kāi)支的情況下加大數(shù)據(jù)集規(guī)模的好方法。

當(dāng)然,對(duì)于任何組織來(lái)說(shuō),最優(yōu)的解決方案都是應(yīng)該有一種產(chǎn)品,它可以在使用時(shí)自然地生成更多的帶標(biāo)簽數(shù)據(jù)。盡管我不會(huì)過(guò)于關(guān)注這個(gè)想法,因?yàn)樗诤芏嗾鎸?shí)的用例中都不適用,畢竟人們只是想盡快得到答案,而不希望參與到復(fù)雜的標(biāo)注過(guò)程中來(lái)。如果你經(jīng)營(yíng)一家初創(chuàng)公司,這是一個(gè)很好的投資項(xiàng)目,因?yàn)樗拖袷且粋€(gè)改進(jìn)模型的永動(dòng)機(jī),但在清理或增強(qiáng)你所擁有的數(shù)據(jù)時(shí)難免會(huì)涉及到一些單位成本。所以經(jīng)濟(jì)學(xué)家最終經(jīng)常會(huì)選擇一種比真正免費(fèi)的方案看起來(lái)更加便宜一點(diǎn)的商業(yè)眾包版本。

潛在的風(fēng)險(xiǎn)

模型錯(cuò)誤對(duì)應(yīng)用程序用戶造成的影響幾乎總是大于損失函數(shù)可以捕獲的影響。你應(yīng)該提前考慮可能的最壞的結(jié)果,并嘗試設(shè)計(jì)一個(gè)模型的底線以避免它們發(fā)生。這可能只是一個(gè)因?yàn)檎`報(bào)的成本太高而不想讓模型去預(yù)測(cè)的類(lèi)別的黑名單,或者你可能有一套簡(jiǎn)單的算法規(guī)則,以確保所采取的行動(dòng)不會(huì)超過(guò)某些已經(jīng)設(shè)定好的邊界參數(shù)。例如,你可能會(huì)維護(hù)一個(gè)你不希望文本生成器輸出的臟話詞表,即便它們確實(shí)存在于訓(xùn)練集中。因?yàn)樗鼈兂霈F(xiàn)在你的產(chǎn)品中是很不恰當(dāng)?shù)摹?/p>

究竟會(huì)得到怎樣不好的結(jié)果在事先并不總是那么明顯,所以從現(xiàn)實(shí)世界中的錯(cuò)誤中吸取教訓(xùn)是至關(guān)重要的。要做的好一點(diǎn),最簡(jiǎn)單的方法之一就是在一旦你有一個(gè)半成品的時(shí)候,就使用錯(cuò)誤報(bào)告。當(dāng)人們使用你的應(yīng)用程序時(shí),如果她們得到了它們不想要的結(jié)果,他們就可以很容易地告訴你。如果可能的話,你需要獲得完整的模型輸入,但當(dāng)它們是敏感數(shù)據(jù)時(shí),僅僅知道什么是不好的輸出是什么同樣有助于指導(dǎo)你的調(diào)查。這些類(lèi)別可被用于選擇收集更多數(shù)據(jù)的來(lái)源,以及您應(yīng)該去了解其哪些類(lèi)別的當(dāng)前標(biāo)簽質(zhì)量。一旦對(duì)模型進(jìn)行了新的調(diào)整,除了正常的測(cè)試集之外,還應(yīng)該對(duì)之前產(chǎn)生不良結(jié)果的輸入進(jìn)行單獨(dú)的測(cè)試。考慮到單個(gè)指標(biāo)永遠(yuǎn)無(wú)法完全捕捉到人們關(guān)心的所有內(nèi)容,這個(gè)錯(cuò)例圖片庫(kù)類(lèi)似于回歸測(cè)試,并且為您提供了一種可以用來(lái)跟蹤你改善用戶體驗(yàn)的方法。通過(guò)觀察過(guò)去引發(fā)強(qiáng)烈反應(yīng)的一小部分例子,你已經(jīng)得到了一些獨(dú)立的證據(jù)來(lái)表明你實(shí)際上正在為你的用戶提供更好的服務(wù)。如果因?yàn)閿?shù)據(jù)過(guò)于敏感而無(wú)法獲取模型的輸入數(shù)據(jù),可以使用內(nèi)部測(cè)試或內(nèi)部實(shí)驗(yàn)來(lái)確定哪些輸入會(huì)產(chǎn)生這些錯(cuò)誤,然后替換回歸數(shù)據(jù)集中的那些輸入。

這只是曇花一現(xiàn)嗎?

我希望我已經(jīng)設(shè)法說(shuō)服你在數(shù)據(jù)的準(zhǔn)備和處理上花費(fèi)更多時(shí)間,并且向你提供了一些關(guān)于如何改進(jìn)它的想法。目前這個(gè)領(lǐng)域還沒(méi)有得到應(yīng)有的重視,我甚至覺(jué)得我在這篇文章中所講的也都只是皮毛,所以我感謝每一個(gè)與我分享他們的研究策略的人,我希望未來(lái)我能聽(tīng)到更多的關(guān)于你們已經(jīng)成功應(yīng)用的方法的消息。我認(rèn)為會(huì)有越來(lái)越多的組織建立工程師團(tuán)隊(duì)致力于數(shù)據(jù)集的改進(jìn),而不是僅僅讓機(jī)器學(xué)習(xí)研究人員來(lái)推動(dòng)這個(gè)領(lǐng)域的研究。我期待看到整個(gè)領(lǐng)域能夠得益于此而取得進(jìn)展。我常常驚訝于模型即使在具有嚴(yán)重缺陷的數(shù)據(jù)集上也能很好地工作,所以我迫不及待地想看看,隨著我們對(duì)于數(shù)據(jù)的改進(jìn),我們能夠做些什么!

via petewarden.com,雷鋒網(wǎng) AI 科技評(píng)論編譯

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

改進(jìn)模型架構(gòu)遇到了瓶頸?你該考慮改善自己的數(shù)據(jù)了!

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

知情人士

當(dāng)月熱門(mén)文章
最新文章
請(qǐng)?zhí)顚?xiě)申請(qǐng)人資料
姓名
電話
郵箱
微信號(hào)
作品鏈接
個(gè)人簡(jiǎn)介
為了您的賬戶安全,請(qǐng)驗(yàn)證郵箱
您的郵箱還未驗(yàn)證,完成可獲20積分喲!
請(qǐng)驗(yàn)證您的郵箱
立即驗(yàn)證
完善賬號(hào)信息
您的賬號(hào)已經(jīng)綁定,現(xiàn)在您可以設(shè)置密碼以方便用郵箱登錄
立即設(shè)置 以后再說(shuō)