展望:從深度學習進展到通用學習機

NO IMAGE

【首先宣告,本文僅用於對通用學習機有真誠興趣的朋友之間的交流】

    前幾天寫了一個短文“究竟深度學習在幹什麼?” (文章的微信連結:本微信公眾號歷史中2017年11月15日專題文章或http://www.sohu.com/a/205257734_680233)。發表後,很多朋友參與了討論。謝謝大家。文中提到了展望比深度學習更高效的機器學習——通用學習機。現在我們來對通用學習機做一些更具體的展望。

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

············

什麼是通用學習機

    通俗地講,通用學習機就是可以自主學習任何東西的機器。這樣講當然對。但是,究竟不是精準的定義。完全精準的定義,請參考我的英文原文,連結在這裡。http://arxiv.org/pdf/1706.00066.pdf
也請參考中文翻譯,連結在這裡:(詳見本微信公眾號歷史中2017年11月15日專題文章或http://www.sohu.com/a/205257734_680233

    不過,我們可以不失精確但又比較通俗地說:通用學習機就是這樣一個計算機系統,它不需要人工的干預,只要有資料,就可以高效能學習,學會資料裡面隱含的東西。尤其,不需要像深度學習那樣,需要預先人工搭好一個模型,才能學習。

    我們將採用這個比較通俗的說法。但是,我們還是要附加一句:有對空間圖式(如指紋)學習的,有對時序圖式(如語言)學習的。最初階段,集中精力做對空間圖式的學習機更有利一些。

0?wx_fmt=jpeg

············

為什麼要考慮通用學習機

    那麼為什麼要考慮通用學習機呢?深度學習不是也是這樣的嗎?只要有資料,就可以學會資料裡面隱含的東西?

    這個問題問得非常好。的確,我們需要首先解答這個問題。

    但是,這個問題也好解答:明確說,現有的深度學習框架並不能做到:“這樣一個計算機系統,它不需要人工的干預,只要有資料,就可以高效能學會資料裡面隱含的東西,尤其,不需要預先人工搭好一個特定的模型,就能學習”。正因為深度學習做不到,我們才要展望通用學習機。

0?wx_fmt=jpeg

············

通用學習機和現有深度學習的區別

    那麼究竟深度學習和通用學習機有什麼根本的區別呢?
    1. 通用學習機獲得並將繼續獲得更多的理論指導,而現有的深度學習的理論指導嚴重不足。
    2. 深度學習沒有一個明確的內部表徵空間,使得不能清晰簡明地表達X-形式。而通用學習機有一個清晰簡明的內部表徵空間。
    3. 因為沒有明確的內部表徵空間,深度學習很難做動態結構調整。如果採用人工干預,當然是可以調整結構的。但是那樣就又有了許多困難。相反,通用學習機從一開始就是可以自動地動態調整內部結構的。

    因為這些區別,使得通用學習機具備若干優勢,這裡對這些優勢做一些簡單的描述,可能很不全面:
    1. 因為具備良好的表徵空間,可以對通用學習機的行為作出完全的解釋和達到完全的控制(即所謂的XAI,這是急迫需求)。
    2. 通用學習機本身具備很強的資訊處理能力,而且這種能力既可以用程式設計來賦予,也可以用學習的方法來賦予,更可混合賦予。深度學習很難做到。
    3. 可以採用多種學習策略和學習方法,完全可以採取和現有深度學習相同的方法(即嵌入巨大引數空間,並且匯入求極值的動力學),也可以採取現在無法企及的方法(如,在充足支援的資料驅動下,逐級提取抽象),還可以採用教學灌輸的學習方法。
    4. 可以很自然容納5種不同的學習方式一起使用(即:邏輯推導或者符號方式,連線主義方式,概率方式,進化論方式,聯想方式),深度學習很難達到這樣的自然容納。因此可以比較有效地做無監督學習。可以用較少的資料學到較多的東西。
    5. 可以比較有效地利用以前的學習結果,縮短學習的時間和需要的資料。不需要於人工預設一個模型,然後才能學習。
    6. 完全有條件做到低功耗,低計算資源消耗,因此做到嵌入系統中去。
    7. 具備很強的拓展潛力。綜合而言,有潛力成為把資訊處理和學習整合為一體的新一代計算的基本框架。

    根據這些優勢,通用學習機就比深度學習更高一個層次。

0?wx_fmt=jpeg

············

能夠做出通用學習機嗎?

    通用學習機很好,但是,能夠做出嗎?我們明確回答。但是為什麼呢?

我們的回答是:首先,通用學習機的確存在於世界上,在生物世界裡面就有很多,我們不用懷疑其存在,需要的是用電子計算把存在的複製出來。其次,我們已經證明了一些定理,說明能夠構建通用學習機。請參考文章:http://arxiv.org/pdf/1706.00066.pdf 也請參考中文翻譯,連結在這裡:本微信公眾號歷史中2017年11月15日專題文章或http://www.sohu.com/a/205257734_680233

    那麼應該怎樣來構建通用學習機呢?

0?wx_fmt=jpeg

············

怎樣做通用學習機?

    從比較廣泛意義上講,我們需要做這些事情:
    1. 研究X-形式的數學理論,以及相關的理論,讓我們有更堅實的理論基礎。對此,我們已經做了一些初步研究。這些初步結果已經產生了重要作用,例如規定了資料充足性,使得我們對資料有了比較清楚的認識。X-形式是一個大研究領域,需要更多的人來參與。

    2. 研究和發明通用學習機的策略和方法。我們已經發明瞭一些學習策略,可以做來做通用學習機。還需要開發更多的策略,以及各種學習方法。

    3. 具體實現通用學習機。實現通用學習機的一個核心就是發明實現內部表徵空間的方法。我們預估這樣的方法肯定不唯一,肯定可以有多種方法。我們已經發明瞭一種方法,並且申請了專利。歡迎大家一起來發明。具體實現的方法,可以是軟體的,也可以是硬體的,當然也可以軟硬體結合。如果有硬體的通用學習機,應該可以更好做低功耗的學習。

    4. 應用到具體的問題。我們需要把通用學習機用到具體的問題中,產生好的效果。例如,可以做機器視覺的問題。通用學習機,因為具備通用性,完全可以做出一些通用的視覺模組(如察覺邊界),而把這些模組讓其他的程式使用,這樣就有了一些具備極高商業價值的專案。

    5. 向高價值的商業場景進展。通用學習機不僅和學術相關,更是具備高度商業價值的專案。在通用學習機初步成功的基礎上,自然會向商業場景發展。這樣的進展也將幫助通用學習機走向更廣闊的空間。

上面的這些方面,都需要有人來做。一個關鍵點是在3,就是利用已經有了理論和方法,來做出有效的通用學習機。

0?wx_fmt=jpeg

············

通用學習機的用途

    現在發散思維一下,說說對於通用學習機的用途的一些想法。通用學習機肯定可以用於非常多的領域。我們相信,如下是可以比較快的應用起來的領域:

    1. 各種模式識別,如在衛星圖中自動識別某種模式,又如虹膜識別,等等
    2. 大資料分析,不需要預先的設定就可以進行大資料分析,而且分析結果可以有良好充分的解釋
    3. 無監督學習,以及用較少的資料得到更好的結果
    4. 把機器視覺和自然語言處理推向更高的境界
    5. 低能耗的學習機(如自動駕駛,機器人)
    6. 利用以往的學習結果而繼續學習。因此可以產生一個新的產業領域,即銷售學習機模組,這些模組已經學習過,具備某種特定功能。這樣,其他的學習機,在配備了這樣的模組後,學習效率就極大提高了。

    但是,我們認為,還有更多的領域:
    1. 在相當多的領域內(如機器人控制,自動駕駛,大型控制軟體,等等),逐漸用對機器進行教學的方式來取代程式設計。
    2. 和更高層次的人工智慧(如AGI)做良好的聯絡,並且成為這些領域的重要工具。
    3. 向上聯絡到哲學層次的工作,如機器認識論,各種邏輯,等等,並且與之共同發展。
    4. 用於各種科學領域,成為這些領域內的科學家的探索工具,乃至於思考工具(不僅僅是資料準備,資料計算和呈現,而是的的確確參與思考,成為他們思考的有機組成部分)。

    我們相信,隨著工作的深入,我們將看到更多的用途。

0?wx_fmt=jpeg

·········

通用學習機目前的狀況

    通用學習機建立在機械式學習的理論基礎上,建立自己的獨到的表徵空間,並且建立自己的學習策略和學習方法,已經從理論上證明,通用學習機可以學習任何外界圖式(pattern),不用人工干預,僅通過外界提供適當資料,不必是大資料,僅是足夠資料,就可以促使通用學習機學會對特定資訊的處理能力。

    通用學習機尚在發展的最初期。對未來我們未必就完全清楚。但是我們有充分的理由來相信,通用學習機將和上個世紀40年代的通用計算機(即馮·諾依曼提出的計算機,也是現在所有計算機的基本框架)一樣,有遠大的前途,甚至於,通用學習機將成為新一代計算的基本框架。對這樣新一代的計算系統,其處理資訊能力既可以通過程式設計來賦予,更可以通過學習來賦予。這樣的新一代計算系統,將最終超越現有的計算系統。

通    用學習機可以有多樣的具體實現方式。我們已經發明瞭一種具體的實現通用學習機的方式。請檢視中國國家智慧財產權局的專利申請號:201710298481.2。這個具體發明中設計的表徵空間,具備實現極低功耗的特徵,因此有可能引入新的硬體的發展。

    通用學習機需要更多的工作,需要更多的發明。歡迎有更多的朋友一起來探索理論,發明方法,構建系統,促進應用。歡迎對通用學習機有真誠興趣的朋友的反饋,特別是數學高手和底層程式程式設計高手。

我的微訊號為:

niuyuelaoxiong,請聯絡。謝謝大家。

0?wx_fmt=jpeg

    深度學習取得了巨大的成功,這是無容置疑的。對此,我們不必再多說什麼。但是,其理論基礎仍然有很大的空白。例如:究竟深度學習在做什麼?為什麼可以學習很多東西?這些問題極為重要。但是直到現在,仍然眾說紛紜,沒有定論。

    我最近寫了一篇文章來討論這個事情。文章題目是:What Realy is Deep Learning Doing?
翻譯成中文就是:究竟深度學習在幹什麼?英文原文的連結(請大家查閱):https://arxiv.org/pdf/1711.03577.pdf ;中文連結是:本微信公眾號歷史中2017年11月15日專題文章或http://www.sohu.com/a/205257734_680233

    這裡是我在一個微信上寫的短文,用中文把原文的想法從新寫一遍,希望更容易理解一些。由於這裡寫數學公式不方便,就儘量不採用數學公式,僅用文字說明。請有興趣的讀者檢視原文。歡迎大家聯絡做更深入討論。

    我的微訊號是:niuyuelaoxiong,歡迎聯絡!