DNN的隱喻分析:「深度學習」,深在何處

2020-12-11 CSDN技術社區

【編者按】DNN現在已經被網際網路公司廣泛使用,但大眾對深度學習的理解水平並不一致。Nuance的這篇文章從另外一個角度來審視DNN技術的演進——分析隱喻如何作為強大的工具來引導我們的思維進入新視野,同時又引誘思維步入新的誤區。作者告誡說:不要被「深度學習」的隱喻衝昏頭腦。

隱喻在流行文化中和科學界隨處可見。「埃爾維斯是搖滾樂之王」就是一個例子。嚴格說來,搖滾樂界並不是一個王國,但這裡借用「王」這個字,我們會腦補出一個王國:那裡有各位不同地位的歌手,以及浩浩蕩蕩的簇擁人群(即他們的粉絲團)。回到「深度學習」這個詞,它糾纏在錯綜複雜的隱喻網中。真的有足夠複雜的機器能夠顯示出像人類一樣的學習能力?學習這種抽象的行為又何謂「深度」(亦或淺度)?我在這篇文章裡將探究這些問題。

《機械姬》、《她》、《模仿遊戲》等等電影不斷在衝擊著銀屏,圍繞「深度學習」的激動畫面也層出不窮。出於消遣目的,我用一款著名的搜索工具搜索「深度學習應用於」詞條,成百上千條返回的結果顯示,「深度學習」正被應用於:「從衛星圖像來獲取商業洞察力」,「從自然環境中採集的數據集來區分疾病狀態」,「理解電影評價」,「從生理傳感器採集的數據預測情緒」,「自然語言」,以及我最感興趣的「人類事物的糾結困惑」(我猜測我並不是唯一聲稱這兩種現象存在聯繫的人)。深度學習似乎可以被應用於所有這些領域,不過,我們首先得回答一個問題,「深度學習」這個概念源自哪兒?什麼是「深度學習」?首先,我認為這個概念和隱喻有一定聯繫。

今天,我們將苦心孤詣地探討一番,看看隱喻如何作為強大的工具來引導我們的思維進入新視野——同時又引誘思維步入新的誤區。


隱喻隨處可見,在上一句中我就輕易地插入至少七處隱喻(斜體字標註)。概括來說,隱喻是用一個領域特定的詞語和概念來介紹另一個完全不同的領域。以「埃爾維斯是搖滾樂之王」為例。嚴格地說,搖滾樂界並不是一個王國,但在這裡借用「王」字,我們可以腦補一個王國:那裡有各位不同地位的歌手,以及浩浩蕩蕩的簇擁人群(即他們的粉絲團)。相反地,我們也可以稱其為「最權威的藝術家」或者造一個意思相近的新詞。但是,前一種說法顯得碎煩,後一種說法則會給我們留下太多新詞。若下一次需要創造一個新詞來替換麥可•傑克遜的「流行音樂之王」,我們又將面臨一次窘境。顯然,隱喻不是詳細敘述時的修飾元素,而是使得語言更加精煉的修辭,在舊詞的暗示之下感知、體驗和理解新語境。

第一部分:「深度學習」之「學習」

根據大多數字典的定義,「學習」——韋氏字典定義為「通過學習、練習、傳授、體驗來掌握新知識和技能」——屬於人類的一種行為。當「學習」這個詞被用於動物、物體、甚至網絡世界的硬體系統之類事物時,就已經是一種隱含表達,因為它適用於人類的概念,涉及到意識——除人類以外的事物不存在意識。你可能聽說過所謂的形狀記憶合金。這些金屬製作的物品有一種有趣的特性:當你把它們從目前的形態彎曲成一種新的形態,然後對其加熱,它們又會恢復到原來的形態。

這裡也試圖用隱喻的方式來描述這種行為(也是有助於概念化)。維基百科也用這種方法來描述形狀記憶合金,在用到隱喻的地方加上引號:訓練意味著形狀記憶可以通過特定的方式去「學習」行為。在正常情況下,形狀記憶金屬「記住」它在低溫下的形變,但在加熱時又恢復高溫形狀,立刻「忘記」之前在低溫下的形變。我相信沒人會對此信以為真,認為金屬原子內部有個微型大腦,能「學習」和「記憶」一些事。那麼用於「機器學習」的電腦程式又是怎樣的呢?他們的「學習」也僅僅只是隱喻嗎?或者說,真的有足夠複雜的機器能夠顯示出像人類一樣的學習能力?而且,為什麼我們不像討論記憶金屬那樣,立刻推翻後一種說法呢?

原因之一當然是計算機更加複雜,很多人對計算機不夠了解。從最初談論計算機就用到隱喻的手法,在1950年代計算機被媒體稱為是「電子大腦」。接著是科幻小說,它們很少提及計算機枯燥的技術細節,而主要呈獻給大家的是會「思考」的機器和機器人,這個概念在流 行文化中一直傳播。在這裡,它們遇到了根植於西方文化的「人造生命」概念,從由黏土捏成的假人,到中世紀的鍊金術士的侏儒,直到瑪麗•雪萊的弗蘭肯斯坦。


為了判斷「機器學習」(ML)是真的學習還是「學習」,這裡有個快速入門的方法。我們從隱馬可夫數學模型(Hidden Markov Models, HMMs)開始說起,它曾一度是很多機器學習系統的中樞。請看上圖,整個結構不算太複雜,由隱含狀態(x),轉換概率(a),輸出概率(b)以及觀察狀態(y)組成。在大量訓練數據集上「訓練」得到模型,然後從中「學習」得到的概率值,訓練集可以由單詞或音素組成。我想我們都贊成這裡的「學習」屬於隱喻,因為這些模型和之前記憶金屬裡的原子並沒有實質上的區別。然而,幾年前HMM逐漸偏離主流的ML,取而代之的是另一種不同類型的模型,它最初於1990年代開始流行。這一取代沒過多久就消失了,但最近又強勢地返回舞臺(我們稍後解釋原因)。問題首先來自模型的名稱:「神經網絡」(Neural Network, NN)。從下圖可以看到,模型由多層節點組成,這些節點能夠被神經所「觸發」,工作原理如同我們的大腦:左側的箭頭表示節點輸入,就像神經元的樹突接收輸入信號(電刺激),然後觸發一些計算步驟,計算結果從右側輸出(成為下一層的輸入),猶如神經元的軸突。神經元內部的計算往往很簡單,類似找出輸入的最大值,或者輸入之和。為了將此應用於ML任務——例如圖像識別——需要把每個輸入節點和黑白圖像的一個像素對應,輸出節點和想要識別的類的物體對應(樹、牛等等)。接著,按照HMM的流程,設置輸入輸出值為樣本圖像和對應的正確分類結果(比如輸入的圖像是一頭牛)。然後,使用「反向傳播」的算法從右向左(模型在使用時是從左向右計算)調整權重值,因此若左側有一個輸入,在右側就會計算得到正確的輸出類別。


如你所見,整個模型並不比HMM複雜,至少不能立刻讓我們信服神經網絡模型能夠思考和學習。假設,真實的模型有更多的節點(幾千個),這和大腦中真正的神經元還是差別巨大:大腦擁有的神經元數量更龐大,以模擬化的方式工作,將電信號和化學信號甚至遺傳效應結合起來,況且我們還不明白意識之類東西是如何產生的。在我看來,「神經網絡」和HMMs對大腦的模擬程度並無二致。但是因為名稱裡存在「神經」(很不幸,它的替代詞「感知器」也好不到哪裡去)這個詞,這類模型就如同我們在上面所見,攜帶了大量隱喻意義:「電子大腦」能用人造「神經元」來「學習」不是很容易讓人產生聯想嗎?

第二部分:「深度學習」之「深度」

等一等,先不考慮「深度學習」的這個「深度」。從字面意思理解,「深度」是指一種空間關係。湖裡和海裡的水是深的。其它用法幾乎都是隱喻,像表示顏色的時候會說「深紅」和「深藍」,表示顏色很重或者很暗,僅此而已。當然,用來形容「思考」也很常見:你深入探究這件事,經過深度思考,提出了深刻的見解。

在《銀河系漫遊指南》一書中,道格拉斯•亞當描述了計算機「深思」(這個計算機為了運算和檢查答案深度思考了700多萬年,最後顯示出了答案42)。隨後,一名後來成為IBM員工的學生藉此命名了他的西洋棋計算機,並在1996年擊敗世界冠軍卡斯帕羅夫而出名。再後來,IBM營銷部門的一些人將其更名為「深藍」——這裡你看到了從「深海」到「深藍」(像大海,也是IBM的logo)到深度「思考」的整個隱喻過程。事實上,西洋棋計算機與「深」相關並不多:其算法相當「淺顯」且粗暴;「深藍」的成功在於它使用大量硬體來計算可能的棋子移動方向,大量的晶片來巧妙設計評估落棋位置。儘管如此,「深」仍保留於此。(Deep Fritz如今仍是一款具有競爭力的商業西洋棋計算機)。DeepQA是另一個向「深」進軍的產品:收集自維基百科的文本數據和本體打包,使機器在Jeopardy 能擊敗人類挑戰者(以沃森的名義)。

機器學習研究員幾年前就決定要擴展神經網絡中間的「淺」隱藏層,變為多層結構,並且使節點更複雜,新的網絡稱為「深度神經網絡」(DNNs),或是「深度置信網絡」(DBNs)。普通非技術人員在聽到「深度置信網絡」這個隱喻的名詞時,怎能不與「深度思考」以及人工智慧相聯繫呢?

至此,我想我們已經剖析完畢,並且充分揭秘了我們所看到的模型是一種數學建模過程,和HMMs並無太大差別。因此,不管名字如何,這些系統所謂的「學習「只是一種隱喻。那麼這意味著我們就可以低視他們了嗎?完全不是!


首先,DNNs使我們Nuance核心的自動語音識別(ASR)引擎的準確率提升(錯誤率降低)—— ASR引擎是我們雲計算背後的支持技術,也是Dragon NaturallySpeaking內部所用的技術,目前已經發展到第13代。在過去20年裡,每一代的錯誤率都持續下降。到最後,在HMM框架下降低錯誤率已經變得越來越難,因為這個框架已經經歷了20年的提升和優化,改進空間很小。所以,不僅僅是因為DNNs降低錯誤率的效果立竿見影,而且在DNNs這把大傘下蘊藏著巨大的未知改進空間,像在不同的拓撲結構,不同的層數和節點數,多節點的結構,網絡的訓練過程等等方面,它在未來幾年裡還有很大的潛能。在語音合成領域,DNNs提高了從待合成文本的語言特點到目標語言聲學參數(如音韻)的映射能力。在語音識別技術中,他們有助於提高說話人身份鑑別的準確性。考慮到這一切,可以毫不誇張地說,DNNs是近幾年我們眾多產品中對創新貢獻最大的獨立個體。

當我說到DNNs並不複雜(很難從中看到意識和真正的智慧這個層面來說),我並不是說它們很容易被發現,或者說,容易使用它們。同樣,結論完全相反。正如之前提到的,神經網絡大約在1990年代就已經出現,但當時有兩個問題限制它們的成功應用。一個是若想要在大數據集上訓練它們,或者節點數和層數太多,訓練消耗的時間就會很久——主要受限於當時的硬體條件。而且,儘管訓練得到的模型在局部區域效果比其它相似模型要好,如果從全局來看,會有其它更好的配置。你訓練得到的模型究竟是局部最優還是真正的全局最優取決於訓練階段早期的隨機因素。當Geoffrey Hinton,Yoshua Bengio等先驅者解決這兩個問題之後,DNNs開始取得突破。當然,更好的硬體幫助他們解決了第一個問題,但是利用並行計算和圖形處理單元(GPU,最初為計算機圖像開發的專用晶片)計算也是一個好主意,使其發展更快。在此之前,局部最小的問題是通過引入預訓練的概念來解決,也就是把模型預先設置在接近(更快達到)全局最優點的一個狀態,而不是完全從頭開始訓練。

下一步將是什麼?

好事不僅僅是這些問題被解決了,神經網絡現在被廣泛應用。還在於開闢了更多的研究領域,這將為未來的發展提供更多的改進。在遊戲產業的驅動下,GPU越來越強大,DNNs也搭上了順風車。縮短訓練時間不僅對實際應用有意義,也間接地幫助算法的改進:原來DNN消耗幾周或幾個月的時間在有意義的大型數據集上訓練(它們直到幾年前還是這個狀態),實驗代價非常高,進展也緩慢。現在你可以在幾天甚至幾小時內完成這些訓練,測試新想法變得容易了。

即使有了這些進步,我和其它研究員一樣,承認還有許多事情需要做。例如,使用GPU完成所有DNN訓練步驟仍是一個挑戰,這是由於網絡結構的屬性。因為一個「神經元」的輸出可能依賴於輸入數據和許多其它神經元,而且訓練不是一個單純的局部問題(因此容易並行化),大量的數據需要在計算節點之間轉移,可能會抵消GPU的時間優勢。我們怎麼來解決呢?而且,當DNNs第一次挑起語音識別的大梁時,說話者無關模型在一個龐大的訓練集上完成,訓練集儘可能全面地包含了方言的各種變形和個體說話方式。這裡的挑戰是實際應用的系統使用另一個說話者相關的訓練方法,使得基礎模型適應特定的說話者。根據你用幾秒鐘的語音素材還是幾個小時的語音來訓練,不同的方法將被採用。所有這些模型都是以HMM模型為基礎,現在要讓它們都適應DNNs形式。

等等等等……

顯然,DNNs領域還有源源不斷的工作等著我們完成,與此同時,也伴隨著大量的驚喜。我們不要被「深度學習」的隱喻衝昏頭腦。

原文地址:What is deep machine learning(譯者/趙屹華 校檢/劉帝偉、朱正貴、李子健 責編/周建丁)


【分享預告】9月29日20:30-21:30,CSDN人工智慧用戶群安排技術專家深度分享「世紀佳緣推薦和機器學習算法實踐」。

  • 講師簡介:楊鵬,世紀佳緣算法組,從事推薦和機器學習算法相關工作。
  • 分享內容:佳緣網站在用的推薦和排序的算法,用到的工具,架構,一些成功和失敗的嘗試。
  • 分享通道:1.CSDN 人工智慧技術交流QQ群:465538150。2.CSDN 人工智慧用戶微信群,請加微信號「jianding_zhou」或掃下方二維碼,由工作人員邀請入群。 加群請註明「機構名-技術方向-姓名/暱稱」,並按此格式修改群名片


本文為CSDN編譯整理,未經允許不得轉載,如需轉載請聯繫market#csdn.net(#換成@)

相關焦點

  • OpenCV+深度學習預訓練模型,簡單搞定圖像識別 | 教程
    而OpenCV最近一次版本更新,為我們帶來了更好的深度學習支持,在OpenCV中使用預訓練的深度學習模型變得非常容易。pyimagesearch網站今天發布了一份用OpenCV+深度學習預訓練模型做圖像識別的教程,量子位編譯整理如下:最近,OpenCV 3.3剛剛正式發布,對深度學習(dnn模塊)提供了更好的支持,dnn模塊目前支持Caffe、TensorFlow、Torch、PyTorch等深度學習框架。
  • OpenCV入門及應用案例:手把手教你做DNN圖像分類
    偽代碼如下:// 引入OpenCV DNN模塊的命名空間using namespace cv::dnn;// 創建人臉檢測器CascadeClassifier cascade;// 導入性別和年齡深度神經網絡模型Net gender_net=dnn::readNetFromCaffe(gender_modelTxt, gender_modelBin
  • 深度學習的學習歷程
    又好像什麼都不懂,學會這些模塊的公式就算會深度學習了嗎?整個深度學習的學習周期是怎樣的,我下一步應該幹啥?這些模塊看起來平平無奇,為什麼組合在一起就能發揮這麼大威力?為什麼drop out能起到正則作用?L1正則和L2正則有什麼區別?cnn、rnn、dnn除了公式不一樣外到底有啥區別?誒,最後一個fc層看起來跟多類別lr分類器好像啊,它們是一回事嗎?
  • EC2上的深度學習:CUDA 7/cuDNN/caffe/DIGITS實戰教程
    圖像分類的卷積深度神經網絡(DNN)對於圖像的分類或回歸,你有兩種選擇: 特徵工程及把圖像轉換為向量; 依賴於一個卷積DNN求出特徵。 深度神經網絡對計算的要求相當苛刻。NVIDIA DIGITS和caffe利用GPU支持深度學習的主流框架目前有三個,包括Theano、Torch和caffe。 NVIDIA DIGITS則是一個網絡伺服器,它提供了一個方便的網絡接口,用於訓練和測試基於caffe的深度神經網絡。我打算在以後的文章中涵蓋如何使用caffe工作。在這裡,我會告訴你如何設置CUDA。
  • 深度學習筆記15:ubuntu16.04 下深度學習開發環境搭建與配置
    作者:魯偉一個數據科學踐行者的學習日記。
  • 深度學習三人行(第3期)---- TensorFlow從DNN入手
    我們已經學習了TensorFlow的一些基礎知識,深度學習三人行(第1期)---- TensorFlow愛之初體驗
  • 【長篇博文】Docker學習筆記與深度學習環境的搭建和部署(二)
    歡迎關注我的csdn:原始碼殺手我的CSDN上一篇文章:Docker學習筆記與深度學習環境的搭建和部署(一)https://blog.csdn.net/weixin_41194129/article/details/113823982【長篇博文】Docker學習筆記與深度學習環境的搭建和部署
  • 深度分析《隱秘的角落》背後的隱喻,每一個細節都細思極恐
    自劇集的大結局上演以來,關於劇集與原著小說的分析對比、劇集本身的抽象符號和具象隱喻的分析、劇集「故事線」和深意的解讀,甚至人物的身世、性格命運的分析不勝枚舉,令人「細思恐極」、拍手稱讚之餘,也從側面映襯出了本劇的「熱度」。《隱秘的角落》的國民度之高,不僅體現在臺詞「一起爬山嗎?」、「你看我還有機會嗎」成為流行語,還體現在「全民解讀」的狂歡之中。
  • 深度學習的興起:從NN到DNN | 小白深度學習入門
    小白深度學習入門系列    1.
  • 巧用torch.backends.cudnn.benchmark減少訓練時間
    點擊文末「閱讀原文」立刻申請入群~作者:xiaopl授權轉載自知乎專欄淺度學習大家在訓練深度學習模型的時候,經常會使用 GPU 來加速網絡的訓練。但是說起 torch.backends.cudnn.benchmark 這個 GPU 相關的 flag,可能有人會感到比較陌生。
  • 面試常問的深度學習(DNN、CNN、RNN)的相關問題
    閱讀過本文的人還看了以下:分享《深度學習入門:基於Python的理論與實現》高清中文版PDF+原始碼《21個項目玩轉深度學習:基於TensorFlow的實踐詳解》完整版PDF+附書代碼《深度學習之pytorch》pdf+附書源碼將機器學習模型部署為
  • [阿里DIEN] 深度興趣進化網絡源碼分析 之 Keras版本
    [阿里DIEN] 深度興趣進化網絡源碼分析 之 Keras版本0x00 摘要0x01 背景1.1 代碼進化1.2 Deepctr1.2.1 統一視角1.2.2 模塊化1.2.3 框架優點0x2 測試數據2.1 數據集介紹2.2 原始樣本骨架raw_sample2.3 廣告基本信息表ad_feature2.4 用戶基本信息表user_profile2.5 用戶的行為日誌behavior_log2.6
  • 從零開始:深度學習軟體環境安裝指南
    為了進行強化學習研究,我最近購置了一臺基於 Ubuntu 和英偉達 GPU 的深度學習機器。儘管目前在網絡中能找到一些環境部署指南,但目前仍然沒有全面的安裝說明。另外,我也不得不閱讀了很多文檔來試圖理解安裝細節——其中的一些並不完整,甚至包含語法錯誤。因此,本文試圖解決這個問題,提供一個詳盡的軟體環境安裝指南。
  • 利用OpenCV和深度學習實現人臉檢測
    往期回顧[計算機視覺] 入門學習資料[計算機視覺論文速遞] 2018-03-20[計算機視覺論文速遞] 2018-03-18註:[1]:主要參考Face detection with OpenCV and deep learning這個英文教程,並作部分修改。
  • 【深度學習】相當全面的深度學習環境配置指南!(Windows、Mac、Ubuntu全講解)
    俗話說,環境配不對,學習兩行淚。如果你正在面臨配置環境的痛苦,不管你是Windows用戶、Ubuntu用戶還是蘋果死忠粉,這篇文章都是為你量身定製的。接下來就依次講下Windows、Mac和Ubuntu的深度學習環境配置問題。
  • 學術觀點 | 李珩:大學生英語隱喻能力和隱喻意向的認知研究
    一些研究發現,二語者對隱喻的識別和生成受二語水平影響較大,如詞彙因素,包括二語者理解詞彙意義的廣度和深度(Azuma 2005)。國際學生對漢語隱喻的識別和生成也與其漢語寫作水平呈顯著正相關(陳朗等2019)。
  • 手把手教你安裝深度學習軟體環境(附代碼)
    為了進行強化學習研究,我最近購置了一臺基於 Ubuntu 和英偉達 GPU 的深度學習機器。儘管目前在網絡中能找到一些環境部署指南,但目前仍然沒有全面的安裝說明。另外,我也不得不閱讀了很多文檔來試圖理解安裝細節——其中的一些並不完整,甚至包含語法錯誤。因此,本文試圖解決這個問題,提供一個詳盡的軟體環境安裝指南。本文將指導你安裝這些軟體之間的互相依賴關係如下圖所示。
  • 為何我們還需要隱喻?為何我們在教學中需要隱喻?
    亦因此,在教與學中使用隱喻活動同時意味著對「體驗式教育」和「全人教育」的重視;這使同樣著重「體驗式教育」和「全人教育」的「戲劇教育」(Drama-in-Education)跟隱喻有著很深的關係。把隱喻運用到戲劇教育的體驗式學習過程,並不只是運用隱喻來表達參加者對於活動過程或跟探索主題有關的體驗,更根本是通過「創造隱喻」——尤其是「眾人共同創造隱喻」——的過程,來開展一個探索性的體驗歷程。於此,隱喻不只是借一樣事物來呈現另一事物,而是在隱喻的延伸發展中,牽連到更多其他事物,猶如抽出一整個網絡。
  • 深度學習入門 | 第一講 深度學習與回歸分析
    在這一講,我想和大家探討一下深度學習與回歸分析之間的關係。深度學習作為人工智慧領域備受關注的模型方法,在媒體上可以看到大量的宣傳材料。客觀地說,很多宣傳其實是有失偏頗的,甚至是誤導的,把深度學習和人工智慧給過度神化了。而回歸分析不一樣,它是當前很多高校學生的必修課。它聽起來不是那麼的高大上,但好處是人們對它非常熟悉。
  • 揭開隱喻設計的面紗-你不知道的隱喻設計
    按照萊考夫的說法,只要我們用到了出、入、中等等跟容器相關的表達,都是在使用容器隱喻。如果我這篇說書稿的核心是什麼什麼,我寫得很有深度,希望你能從中獲得知識,請你仔細感受一下這些詞彙,「核心」「深度」「從中獲得」都是把文章看做一種容器,所以都是容器隱喻。萊考夫在《我們賴以生存的隱喻》一書還提出一個概念隱喻的理論,他分析了一個特別典型的例子,就是「時間就是金錢」。你想想,關於時間,我們日常有哪些表達?