請問「端到端機器學習」中的「端到端」應如何理解?
下面是查到的文字解釋,不過還是感覺不是很容易理解,中間有了步驟就不是端到端了?但一般機器學習總歸還是需要數據預處理、特徵提取之類的步驟啊?
什麼是端到端學習
端到端學習是一種解決問題的思路,與之對應的是多步驟解決問題,也就是將一個問題拆分為多個步驟分步解決,而端到端是由輸入端的數據直接得到輸出端的結果。但是一般情況下,更常見的是介於兩者之間的解決思路,先把任務拆解為簡單的兩步解決。例如人臉識別門禁系統,不是由檢測到的圖片直接得到結果(識別出該員工的id),而是第一步將檢測到的圖片中的人臉部分放大居中,第二步通過識別得到該員工的id。
照片進,告訴你這是誰出。英文句子進,中文句子出。圖片進,圖片里有啥出……
就是不要預處理和特徵提取,直接把原始數據扔進去得到最終結果。
從學會畫一個點開始,直到學會最複雜的漢字。感覺這個詞翻譯不太好,我的理解是從點到面。其複雜度呈現指數級增長。目前在對自然語言、語音進行智能學習時多見。
抱歉,我以為無論是端到端,或P2P、End2End……etc.,都是錯誤的理解。正確理解是從點到面的學習,或指從零開始學習某種技能直至大滿貫。確實就是指盡量省去中間步驟,從問題的輸入直接得到問題的輸出,中間的過程都交給模型來學習、擬合。通常來說,在機器學習方面提端到端,只是指機器學習的演算法部分,而那些確定性的預處理過程也可以不算在端到端的裡面。
分了多個步驟對於人來說可解釋性更強了,但強行指定多個步驟的結合方式,肯定會損失一些信息。端到端模型通常希望把由人指定的中間步驟,也用機器學習替代,讓數據來決定如何讓兩個步驟的信息直接結合起來,而不是轉為人能看懂的顯式中間層。
端到端的好處就是只要維護一個模型的輸入輸出就夠了,不用考慮中間結果的一些問題,通常效果更好,效率也更高。最好的解決一類具體問題,通常端到端的思路會比較好。不過端到端的話,每類具體的問題可能都需要定製一個模型,如果輸入或輸出有變化可能就得調整整個演算法,有一定的設計難度。有時候我們不追求極致只是實現一個功能的話,直接組合幾個步驟很可能會更快的達成需求。端到端就是指從挖沙子提煉硅一直到把廣告賣掉,放在機器學習的領域也差不多。
端到端是個框,誰都想裝,什麼都想裝。
不廢話,端到端這個詞是通信術語,End to End,準確含義是「通信的兩個起始點開始,考慮了所有處理節點的業務功能、控制和管理的一整套解決方案」。概括一下就是「你所有需要的我都想到了」。
區別於某些僅敘述通信兩端的解決方案,例如http,ftp這樣的協議和方案,中間節點的功能需求都是不敘述的。
但是用到其他領域,我只能說是裝13.
不信,我們讓他解釋一下什麼叫「END」,什麼叫「E2E」。
謝邀。沒有專門去查過end-to-end的定義和解釋,只說說自己的理解。
先解釋一下你問題中的那段話:端到端學習是一種解決問題的思路,與之對應的是多步驟解決問題,也就是將一個問題拆分為多個步驟分步解決,而端到端是由輸入端的數據直接得到輸出端的結果。
其實也就是說,端到端將分步解決的中間步驟連接整合在一起,成為一個黑盒子,我能看看到的只是輸入的數據和輸出的結果,就是從數據的端,到了結果的端。
比如,如果要對一幅圖像分類,分步驟解決的辦法是:先圖像預處理,提取紋理,顏色,飽和度,邊緣等等特徵,然後按照這些特徵設計分類器進行分類,每一步你都進行了設計,篩選,不是黑盒子的。而端到端的做法應該是輸入一幅圖像,特徵提取和分類器在盒子中,你得到只有結果。
而你的問題其實是在對輸入端的理解。
不能說進行了數據預處理就不算是端到端,比如圖像送入卷積神經網路之前一般都要縮放到固定的尺寸(也可以通過池化等方式變換到固定尺寸),但是你預處理之後的結果還是一個圖像,並不是你最終需要的分類結果;所以,從你預處理之後的數據到你的結果還是端到端的。
再比如,要對一段文本進行情感分類;送入模型之前一般也要進行分詞和word2vec,也算是預處理的過程,但是後面的特徵學習和分類也是端到端的。
所以,預處理只是為了讓模型更好更快的學習,但是學習到了什麼並不是人為設計的,是一個黑盒子。
而且,一個模型是不是端到端,也是要基於你的任務而定的。
比如,自然場景的文字識別,通常包含文字檢測和文字識別兩部分:輸入一幅圖像輸出圖像中包含文字的區域(檢測);輸入文字區域輸出文字內容(識別);這兩部分單獨來看都是端到端的,但是就自然場景文字識別這任務而言,如果要分成這兩個模型來做就不是端到端的,而應該是:輸入一幅帶文字的圖像,輸出圖像中的文字內容,不管中間是如何檢測和分類是別的,這才是端到端。
如你問題中的那段話的後半部分,將分步驟和端到端進行結合才是通用的解決辦法,而真正核心的部分在於後面的端到端,前面都可以看作是預處理過程。
@wangyang 贊同這位同學的觀點
推薦閱讀:
TAG:人工智慧 | 機器學習 | 人工智慧演算法 | 大數據 | 深度學習DeepLearning |