主頁(http://m.by236.com):華為200萬博士的學術研究淺析 我們來看看華為新招的200萬年薪的博士小哥究竟研究了些啥吧。 這個是他的所有論文:
世上的所有規律,如果用數學家的角度來看,就是一個方程,如果一個不夠,就兩個來表達。雖然表達是容易的,但是解出來這個方程的解就難了。令輸入的信息為X,輸出的結果為Y,則Y=Q(x)就是一個表達。但是這個Q究竟長什么樣子就復雜了,鐘博士研究的就是這個難題,讓Q長的好看又奈斯。用論文的話說是:elegant in topology with a fast inference speed。拓撲結構學上優美,前向傳播快。 今天抽空看了下他最新的這篇文章: IRLAS: Inverse Reinforcement Learning for Architecture Search 這篇文章是他18年文章Practical block-wise neural networkarchitecture generation的一個遞進。18年的文章沒有細看,用兩張圖大概總結下兩篇文章究竟干了啥。
18 左邊是谷歌的NASnet,學出來的模樣是有些亂,加上block,學出來的blockQNN就優雅多了。
19 谷歌的NASNET是采用的暴力窮舉法搜索網絡結構,搜索到的網絡結構長的千奇百怪,里面也有太多冗余,雖然精度很高。鐘博士18年做的工作是,在搜索的時候加入了block,這樣你不能隨意生長了,相當于貨物往船上運輸,用集裝箱裝好貨物,貨物就不會亂跑了。集裝箱占地,因而精度要差些,但是如果集裝箱排列的好,精度也很高,而且拆裝都方便。 19年的時候,覺得集裝箱有些笨重傻乎乎的沒變化,就加了些變化,用了一個命名為相反強化學習的方法來做優化。 來認真讀一下這篇文章吧。 首先講一下總體結構,然后重點說下Inverse Reinforcement Learning 究竟干了什么事情。 總體結構:
圖1 這個總體結構圖是清晰的,文章后面的具體算法介紹感覺有些欠缺層次性。 我來幫大家理一下: 1、總loss函數長這個樣子。
第一項代表的是整個網絡的分類精度損失,這個很好理解,第二項你可以認為是正則化項,講的是網絡的拓撲結構損失,這個損失講的是學習到的網絡和專家設計的精巧網絡結構之間的差異。你理解為正則化比較合適:我不光要學習精度,我還要讓他結構更合理,增加一個結構拓撲的懲罰項。相當于在精度和結構優美兩方面追求一個平衡,平衡點就由λ來協調。我們看到,圖片中兩項損失都有通過紅色虛線輸給智能體Agent?俵oss抓住了,那算法的主要枝干就清晰了。 2、我們在看下圖1,他這里乍一看只有一個拓撲結構的loss,看起來是專家網絡和我們搜索得到的網絡之間的拓撲差,其實是圖缺了一塊,分類loss是搜索得到的網絡前向傳播后跟真實數據的差,他直接畫了一個紅虛線替代了。 重點講一下這個拓撲之差。拓撲差不好計算,他想了很多法子,首先,把每個小組件用編碼表示,例如Depthwise convolution with kernel size 1×1 給他標為1,標完后,就可以把一個網絡結構層層用編碼表示了,然后求每一層的特征碼之間的不一致和連線的不一致就代表了整個網絡結構之間的相似性。怎么求沒有去細嚼。 強化學習的狀態和動作:狀態就是每層現在的特征碼排序,動作就是這一層目前采用什么特征碼,以及跟相鄰層之間的特征碼怎么連線。 Inverse Reinforcement Learning就是用在求這個網絡結構之間的相似性上的。
我的解說不能替代你看論文,但就像大學上課一樣,老師講一遍你再看課本,你就會更有思路和針對性。
題外話: 鐘博研究的比較底層的模型結構,這個東西不是5G,也不是物聯網,華為直接拿來變現基本不現實,看來華為還是很有學術情懷的。
其實現在deeplearning研究領域還有一個更底層的,就是如何搞清楚模型這個黑盒子是怎么運轉的。這有兩個學術方向,一個是田淵棟的研究,認為模型結構確定后,起作用的是一些關鍵參數;另一個研究方向是谷歌大腦的人,他們發現,確定一組參數,我不斷變換網絡結構后,也能讓模型收斂到比較高的精度。這些都是不斷往黑盒子里深挖了。也就是尋找文章開篇講的那個極具魔性的Q(x)的模樣。
(本文內容來自微信公眾號:櫻園的玻爾茲曼機) (中國集群通信網 | 責任編輯:李俊勇) |








