當前人工智慧特別是深度學習最前沿的研究方向是什麼?
深度學習顯然是人工智慧中最熱門的研究方向,不過這裡我想問的是更具體一點的研究方向。比如OpenAI的研究方向:
1)Deep Generative Models 深度生成模型2)Neural Turing Machine 神經圖靈機3)Deep Reinforcement Learning 深度增強學習但這也讓我產生疑問:這三個方向是不是人工智慧領域最前沿最重要的研究方向,還有什麼研究方向的重要性和這三個方向相當?為什麼DeepMind和OpenAI重點研究這三個方向呢?懇請知乎大牛們分享一下你們的看法。這個問題順便可以回答 到底研究什麼人工智慧問題才是最有價值的,最值得去做的?
另外,無論是計算機視覺,語音識別,機器人控制,都只能算是人工智慧演算法的應用出口。上面提及的方向都能夠應用到不同垂直領域。
當前深度學習技術主要是data driven的,即對一個特定任務來說,只要增加訓練數據的規模,深度學習模型的表現就可以得到提高。但是發展到今天,這種思路面臨很多挑戰。主要面臨下面幾個問題:
- 很多領域(如醫療,教育),很難獲取大量的監督數據或者數據的標註成本過高。
- 訓練數據規模再大,也有難以覆蓋的情況。例如聊天機器人,你不可能窮盡所有可能的答案。而且很多答案,也是隨時間變化的(例如明星年齡,配偶)。因此僅僅依靠大規模的訓練語料,並不能解決這些問題。
- 通用深度學習模型,直接應用到具體問題,表現(效果,性能,佔用資源等)可能不盡如人意。這就要求根據特定的問題和數據,來定製和優化深度學習網路結構。這個是當前研究最多最熱的地方。
- 訓練的問題。包括網路層數增加帶來的梯度衰減,如何更有效的進行大規模並行訓練等等。
為了解決上面的問題,當前的研究前沿主要包括以下幾個方向:
引入外部知識(如知識圖譜,WordNet)
Knowledge-Based Semantic Embedding for Machine Translation A Neural Knowledge Language Model深度學習與傳統方法的結合。
- 人工規則與神經網路的結合 Harnessing Deep Neural Networks with Logic Rules
- 貝葉斯與神經網路的結合
Human-level concept learning through probabilistic program induction(論文講的是用貝葉斯讓機器模仿人寫字的,但是對深度學習有非常大的啟發價值)
- 遷移學習與神經網路的結合
- 強化學習與神經網路的結合 Mastering the game of Go with deep neural networks and tree search
- 圖模型與神經網路的結合 Bidirectional LSTM-CRF Models for Sequence Tagging A Hierarchical Latent Variable Encoder-Decoder Model for Generating Dialogues
無監督的深度生成模型。
Generative Adversarial Networks- 新的網路結構 Highway Networks Neural Turing Machines End-To-End Memory Networks Deep Residual Learning for Image Recognition
Mollifying Networks
- 新的訓練方法 Batch Normalization Accelerating Deep Network Training by Reducing Internal Covariate Shift
從具體研究方向上來說,我覺得深度學習在圖像和語音上已經非常成熟,因為圖像信號和語音信號,都是比較原始的信號,從原始信號中抽取特徵對人比較困難,但對深度學習模型比較容易,因此深度學習技術率先在這兩個領域取得巨大成功。而NLP領域,因為文字是一種high level的信息,而且從文字到語義,存在一個比較大的語義鴻溝,因此深度學習技術在NLP上存在很大的挑戰,但是挑戰也意味著機會,因此除了傳統NLP領域的研究人大量開始發力深度學習,許多其他領域的人(如機器學習,統計),也開始向NLP進軍(Bengio組的人開始搞機器翻譯,語言模型,對話系統等等)。
上面是我一些不太成熟的看法,歡迎大家指正交流。更新
谷歌DeepMind最新論文:用記憶增強神經網路改善One-shot Learning一些具有增強記憶功能的架構,比如說神經圖靈機(Neural Turing Machines, NTMs),提供了快速編碼和讀取新信息的能力,因此能夠有可能避免常規模型的下降趨勢。在這篇論文中,我們證明了記憶增強神經網路(MNNNs)可以快速吸收新數據,並且僅利用少數幾個例子就可以從從數據中做出準確預測。我們同時介紹了一種新的方法,來獲取一種關注存儲內容的外部存儲,這區別於之前的模型,它們需要額外使用基於位置的存儲來關注機制。~~~~~~~~~~~摘錄一些楊強教授在「2016全球人工技術大會(GAITC)暨人工智慧60年紀念活動啟動儀式上發表的演講,我們可以看到他對人工智慧未來發展的認識。 楊強教授指出,搜索和學習的結合才是人工智慧的發展方向。我們不能完全依靠機器去全部自動化自我學習,機器學習的弊端是自我偏差,目前仍需要人為干預。未來,遷移學習會是這個問題的解決途徑。遷移學習還能讓人工智慧得以擺脫對大數據的嚴重依賴深度神經網路的成功就使得我們能夠在不同的層次來觀察同一個數據,同樣就可以獲得我們所謂的大局觀。
強化學習應該說是用來做人工智慧規劃的有力工具,但不是唯一的工具。這個領域相對深度學習應該說更古老,研究的力度也很多。但在很長時間處於靜默狀態,這個原因是因為它在計算上有很大的瓶頸,不能有很大的數據量。一個例子就是強化學習在很長時間以來只能解決一些玩具型的問題,非常小的數據。 最近的Google的DeepMind,把深度學習和強化學習合在一起,這樣的一個議題使得很多強化學習所需要突破的瓶頸,就是狀態的個數能隱藏起來。這種隱藏就使得強化學習能夠大規模應對數據。它突出的一點叫做端到端的學習,所以強化學習也是下一個突破。AlphaGo對我們的啟示,就是我們把[搜索和學習]兩者結合起來,才是一個完整的智能機器。這個我們可以叫做人工智慧的通用性,也就是說我們對於這兩個技術的某種結合,比方說多一點搜索,少一點機器學習。目前我們不能完全依靠機器去全部自動化自我學習,至少到現在我們還沒有摸索出這樣一個路徑。是因為機器學習有一個很嚴重的現象,就是自我偏差,這種偏差可以體現在統計學的一個重要概念中,就是我們獲得的數據也許是一個有偏數據,我們可能建了一個模型,對大部分的數據都有用,但其中有一些特例。我們如何來處理這些特例,如何來處理我們訓練數據和應用數據之間的偏差,這是我們下一步要研究的內容。一個非常有希望的技術叫做遷移學習,, 深度模型可以把它反轉,成為一種生成模型。它不僅可以去對數據做一個決策,它還可以自己產生新的數據的那些圖像給描述出來如果我們達到了遷移學習的要點,我們想問下一步是不是可以把所有人類經歷過的這些學習任務給沿著時間軸串起來,能夠讓機器像人一樣,學習能力和智能隨時間在不斷增長。那麼它所需要學習的努力程度,樣本數也是逐漸減少的。這也是我們在努力的一個方向最近發表的一篇文章也說明了遷移學習的重要性。這篇文章叫做 bayesian program learning(單個例學習),這是從一個例子就能學會,我們知道深度學習是有千萬個例子的。實際上它用了我們過去沒有涉及到的概念,就叫做結構,如果我們了解了一個問題的結構,那麼這個結構的一個具體形式只用一個例子就可以學會了。其他的部分,需要很多例子的那一部分可能是參數、統計,這一部分我們實際上可以通過遷移學習來學習。也就是說這個圓就圓滿了,就是一個閉環了。看到這麼多人工智慧的,有失敗的時候,有成功的時候,我們到現在能總結出什麼經驗呢?我覺得現在的人工智慧的成功離不開高質量的大數據,但是並不是未來人工智慧的成功一定需要大數據。那麼我們下面要問是不是在未來有小數據也可以讓人工智慧成功?大數據開疆拓土、更多的應用和更多的計算能力確實來自於工業。人才培養、小數據研究則依靠學界。這兩者結合是我們今後發展的一個方向。強化學習比大家想像的要更有用,它不僅僅是在圍棋或者是在計算機遊戲上有用。在金融、在我們日常生活當中,甚至在教育上,機器人的規劃都離不開強化學習。我們明天要看到的應該是遷移學習,因為遷移學習能夠讓我們把大數據得到的模型遷移到小數據上面,使得千千萬萬的人都能夠受益,人人都能享受人工智慧帶來的紅利這是個很好的問題,自薦來回答一下,順便也幫自己理了一下思路。個人背景,我自己是從走計算機視覺產業應用,再回到人工智慧學術研究的,所以我的個人經歷導致我考慮研究問題時會更偏嚮應用。1. 產業和學術研究的「互惠」作用 在產業界,我們更多的關注的是價值最大化,就是說怎麼樣才可以用最少的數據,甚至沒數據的情況下做出產品,怎麼樣才可以在最少的計算資源和最短的時間內獲得訓練結果,所以,只要在產業,我們可以理解深度生成模型(DCGAN)和深度增強學習(Deep Reinforcement Learning ),甚至是有知友提到的楊老師的遷移學習,其實本質上都在做一件事情,就是用最少的數據去實現模型優化,也就是目標是做無監督或者半監督,減少人工標記的成本,在模型中建立自我監督的能力,這個本身就非常有價值了,題主應該是沒有挖掘出來研究方向本質是為了什麼而做的。所以不理解他們為什麼在做這些。而且這些方向都是經過了研究人員很多的假設、實驗後,覺得最有可能能做出成果和效果的方向。當然,我自己是覺得還有很多方向可以繼續探索,也不必硬要篤定在這些方向上。 而在學術界,研究的問題很深很細,但稍微容易缺乏大局觀,但好處是,解決和提出了很多產業界的人無法解決的問題,不是說產業的人沒有這個能力,而是人力、精力、時間和效益都不一定那麼允許的情況下,我們看到學界給出了很多很好的突破思維和思路,以及對一個方向fine-turn的能力。一些突破性的思路和思維,就例如題主提到的那三個方向,從提出到能夠優化,到能應用是一條很漫長的道路,而每一步都在推動著一個方向的進步。 正是因為產業和學界的「互惠」作用,所以很多著名的企業都會建立自己的實驗室,這些大家都很了解了。2. DeepMind和OpenAI的宗旨
還有一點題主沒有注意到的是,只看他們的研究方向其實看不出來太多的意義,但是要注意的是他們都有自己的願景和目標,像OpenAI,他的目標就是打造Safe AI,舉個例子,人眼看東西的時候,即使看不清楚一個東西,但是總不會出現很離譜的錯誤,例如不過把一個白色的車廂看作是一片天空,但是對於深度學習來說,這個是很可能會發生的,而且一旦發生,後果非常嚴重,就例如特斯拉的車禍,就是我上面提到的原因。OpenAI自稱是不以盈利為目標的,他們更希望把自己定位成為一個科研團隊,但是明眼人一眼就看得出來,他們做的事情商業前景是非常樂觀的,支持和贊助他們做這件事情的企業多的去了。個人贊助者更是包括了Elon Musk,這個已經體現了這項研究方向的價值性。
3. 人工智慧到底研究什麼才有價值 一方面,DeepMind和OpenAI的研究的東西都很有價值,這些都是偏向基礎研究,而從研究都應用的過度會有很多企業願意去實現。 另一方面,人工智慧在新領域的應用也很有價值,例如Stanford就有PhD在研究計算機視覺在能源的應用,幫助特斯拉做能源預測,個人覺得都非常有趣和有價值。 希望答題對提主有幫助,不過可能有些觀點扯遠了,不過人工智慧有價值的點還是很多的,但是難度也很大,需要所有產學研的人才一起去推動。 最後,私人順一則廣播:組織了一個計算機視覺的開發者交流微信群,目標是彙集【計算機視覺,圖像處理,3D圖像,視頻處理,深度學習,機器學習】的開發者,一起分享開發經驗,共同探討技術,有興趣入群的可以加我微信(微信號LaurenLuoYun, 二維碼如下),請註明「姓名-公司/學校-技術方向」,謝謝。-------------更新,大家說二維碼太小,於是,,,,放個大一點的,希望不要影響美觀-----------
http://weixin.qq.com/r/oOYOFnrE-yeArT5197Oy (二維碼自動識別)
人類語言是人工智慧的核心,如果神經網路能理解人類自然語言,那將是人工智慧大功告成的一天。
人類語言作為自身發明的最複雜工具,在接下來肯定會成為研究熱點問題。
- 神經網路是 error-driven 學習,例如 back-prop,但強化學習可以根據「獎勵」來學習。 有獎勵時,答案正確,那麼 error = 0; 有懲罰(負獎勵)時,答案不正確但卻不知道正確答案,所以 error 也是不知道的。 簡言之,就是沒法用 error-driven 學習。我想出了一個解決辦法,就是有(負)獎勵時,加大(或減小)輸入空間中的「鄰域」。 方法是調較 Jacobian 行列式,因為 Jacobian 代表某函數將單位體積元變換的比例。 我在 Stack-Exchange 網站提出了這個問題:
differential geometry 問題
(我的多元微積分根底不好,可能計算有錯)但算出來的結果很複雜,實際上不可行,我估計要用數值微分的方法。2. 深層的神經網路似乎有能力學習到一些複雜的「結構」,似乎應該發展一套理論去解釋深度學習的這種能力。 這裡所謂「深結構」是指,例如一組有變數的一階邏輯式子,它們可以描述很複雜的程式、關係、或數學上的物體。3. Neural Turing Machine 裡面,「記憶 (memory)」是最關鍵的概念; 基本上,有限自動機(finite state machines)和 Turing machine 的分別,就是那條「讀寫帶 (tape)」。 所以問題就是如何讓一個神經網路有 "working memory" 可以作暫時儲存之用; 我覺得 Neural Turing Machine 只是其中一種做法,它未必是最好的,還有很多其他可能。 例如,「記憶」可以是時間上的一個序列。 還有,記憶的「寫入」會刪除現有的記憶,但在向量空間可以用向量的「加法」加在舊記憶上; 「疊加」和「over-write(抹掉重寫)」可以是連續變化的。
4. 如何將深層神經網路和強化學習兩個模組合併起來,這個 architecture 可以怎樣設計? 在強化學習那邊,我們有控制 (或者叫 action ),似乎需要用這個 來控制神經網路。
我前幾天想到一個解決辦法: 令神經網路的輸出是 ,其中 是神經網路的輸入空間(它基本上是一個 automorphism,輸入和輸出空間相同),而 是 的空間。 這樣就可以用 的方向來「選擇」輸出空間的一個「截面」,其大小是 。 我會儘快將詳細的理論發表在論文上。
Yann LeCun在NIPS 2016大會主題報告可一定程度上反映當前人工智慧特別是深度學習的最新進展,以下是個人總結。 原文PPT獲取詳見文末。
深度學習
- 所謂「深度」是指不止一層的非線性特徵變換,例如卷積神經網路中低層、中層、高層圖像特徵抽取變換,典型的卷積神經網路如VGG、GoogLeNet、ResNet都用了很深的網路結構
- 深度學習實現了模型全流程的學習(「端到端」),而之前機器學習方法需要手工或無監督的抽取特徵
- 卷積神經網路在計算機視覺領域已有很多「令人驚喜」的應用,如給圖像配標題、圖像語義分割、圖像物體識別與定位等
預測學習
- 共識=世界如何運作的常識
- 共識+智能=感知+預測模型+記憶+推理(預測+規劃)
- 準確的測量環境狀態
- 關注重要的事件
- 記住相關的事件
- 預測何種行為將生成最優結果
- 預測學習(或很多人認為的無監督學習)主要目標是讓機器擁有「共識」,即從可獲得的任意信息中預測所感知對象(系統狀態/行為、圖像、語言等)的過去、現在或將來任意部分
- 預測學習的難點在於監督學習預測標註數據,或是強化學習預測值函數等方法都是不夠等,參見LeCun著名的「AI蛋糕理論」
增強學習
- 傳統增強學習的基本原理是「在行動前按腦子裡的想法嘗試下」,智能體感知環境並作用於環境,嘗試最小化長期損失目標
- 想要提前做規劃,必須有「世界模擬器」,智能體通過最小化長期預測損耗來實現推理決策
- 實例
- PhysNet:基於Unreal圖形模擬引擎預測下降物體軌跡
- EntNet:記憶文本世界狀態,第一個通過文本故事判別測試(20bAbI)
基於能量函數的無監督學習
- 能量函數,也稱差異函數(contrast function),即給定樣本數據映射到一個新的流型空間,在該空間里預期的數據點能量值最小,而其它點上的能量值都很大
- 學習的關鍵在於構造「合適的」能量函數,有七種常用策略
- 構建機器使得低能量項為常量,例如PCA、K-means、GMM等方法
- 降低數據點的能量,提高其它數據點的能量,例如最大似然估計
- 降低數據點的能量,提高指定區域點的能量,例如Contrastive divergency、Ratio matching
- 最小化數據點的梯度最大化其曲率,例如score matching
- 訓練能夠學習數據樣本流型的動態系統,例如降噪自編碼器
- 使用正則項限制數據空間中低能量的區域,例如稀疏編碼、稀疏自編碼器
- 如果E(Y)=||Y-G(Y)||^2,令G(Y)儘可能為常量,例如合約自編碼器
對抗學習
- 無監督學習的難點在於「不確定情況下」的預測,輸入數據X只不過是真實世界的一個採樣,假設還有隱狀態變數Z作用下,預測值Y是處於某流型分布之中。但當數據採樣不夠的話,是很難進行預測的
- 從能量函數角度看對抗學習,核心思想是用生成器決定那些數據點的能量高,其中判別器是一個自編碼器,然後定義判別器和生成器的損失函數,並尋找最優的納什均衡情況下的判別器和生成器
- 目前對抗學習已經在生成不存在的真實圖像、圖像算術運算、視頻預測等方面有應用
最後,想進一步學習Yann LeCun報告PPT的朋友,請關注「數據小蝦米」微信公眾號,後台回復「預測學習」即可得到下載地址。
沒人提降維和流形學習么?
生成模型重要的原因是因為生成模型能學習到完整的特徵,能學習到結構,像GAN VAE等演算法,非常重要!
神經圖靈機重要因為個人推測將來神經圖靈機可以像人的意識一樣對自我學習的概念進行操作推理等等!強化學習則為機器提供了通往自我目標的途徑!
當前深度學習還需要跨越的一大障礙是長時間段的事件抽象能力!也就是生成模型應用到視頻-生成視頻的應用; 生成模型學習到的特徵為什麼值得關註:因為生成模型學到的特徵是真正了理解了事物,是語義層級的特徵,所以生成模型的特徵是可以關聯到語言的,這時候機器表達的語言才是有源之水,是基於認知的語言表達,而不只是符號轉換。最後廣告一下我的公眾號 createamind;1.很多領域(如醫療,教育),很難獲取大量的監督數據或者數據的標註成本過高。
2.訓練數據規模再大,也有難以覆蓋的情況。例如聊天機器人,你不可能窮盡所有可能的答案。而且很多答案,也是隨時間變化的(例如明星年齡,配偶)。因此僅僅依靠大規模的訓練語料,並不能解決這些問題。
3.通用深度學習模型,直接應用到具體問題,表現(效果,性能,佔用資源等)可能不盡如人意。這就要求根據特定的問題和數據,來定製和優化深度學習網路結構。這個是當前研究最多最熱的地方。
4.訓練的問題。包括網路層數增加帶來的梯度衰減,如何更有效的進行大規模並行訓練等等。
為了解決上面的問題,當前的研究前沿主要包括以下幾個方向:
1.引入外部知識(如知識圖譜,WordNet)
Knowledge-Based Semantic Embedding for Machine Translation
A Neural Knowledge Language Model
2.深度學習與傳統方法的結合
▲人工規則與神經網路的結合
Harnessing Deep Neural Networks with Logic Rules
▲貝葉斯與神經網路的結合
Human-level concept learning through probabilistic program induction(論文講的是用貝葉斯讓機器模仿人寫字的,但是對深度學習有非常大的啟發價值)
▲遷移學習與神經網路的結合
▲強化學習與神經網路的結合
Mastering the game of Go with deep neural networks and tree search
▲圖模型與神經網路的結合
Bidirectional LSTM-CRF Models for Sequence Tagging
A Hierarchical Latent Variable Encoder-Decoder Model for Generating Dialogues
3.無監督的深度生成模型。
Generative Adversarial Networks
4.新的網路結構
▲Highway Networks
▲Neural Turing Machines
▲End-To-End Memory Networks
▲Deep Residual Learning for Image Recognition
▲Mollifying Networks
5.新的訓練方法
Batch Normalization Accelerating Deep Network Training by Reducing Internal Covariate Shift
從具體研究方向上來說,我覺得深度學習在圖像和語音上已經非常成熟,因為圖像信號和語音信號,都是比較原始的信號,從原始信號中抽取特徵對人比較困難,但對深度學習模型比較容易,因此深度學習技術率先在這兩個領域取得巨大成功。而NLP領域,因為文字是一種high level的信息,而且從文字到語義,存在一個比較大的語義鴻溝,因此深度學習技術在NLP上存在很大的挑戰,但是挑戰也意味著機會,因此除了傳統NLP領域的研究人大量開始發力深度學習,許多其他領域的人(如機器學習,統計),也開始向NLP進軍(Bengio組的人開始搞機器翻譯,語言模型,對話系統等等)。
有本創業書說的挺好 我們要的是會飛的汽車 結果只給了我們一百四十個字(暗指推特)。想想科學發展是不是就在探索自然,我們給一個輸入變數X,大自然會給我們一個輸出Y,我們想知道這個過程。誠然在一些領域深度學習取得了不錯的」成績」,但真正拓寬人類認知的成果似乎很少,其中一個原因是上面提到的人具有少量數據歸納能力,這是人的思維偉大之處。所以 如何讓深度學習真的幫助我們認識世界應該是廣大理工科同胞一起奮鬥的目標吧.。
語義學習?
思考先於語言,只要有語言,就有心靈,就有靈魂的存在。
——Friday《屍者的帝國》
推薦閱讀:
※有沒有可能讓機器讀遍github上的開源代碼,然後學會編程?
※梯度下降法的神經網路容易收斂到局部最優,為什麼應用廣泛?
※深度學習晶元?
※有沒有介紹神經網路、蟻群、遺傳、退火、魚群等等演算法的書籍?
※怎樣看待地平線機器人以深度強化學習演算法為切入點?
TAG:人工智慧 | 機器學習 | 深度學習DeepLearning | 研究方向 |