首頁>科技>

大概4-5年前,看了一位日本學者的書叫《人工智慧狂潮》,彼時,人工智慧的熱潮在國內剛剛興起,所有的創新都要打上AI的標籤,但對於人工智慧到底是什麼的界定卻是一直模糊。4年多之後的今天,人們又都開始扯起遠離人工智慧的大旗,有時候在想當初鼓吹進入的和今天大喊離開的是不是同一批人呢?

像我之前一直認為的,人工智慧技術底層其實這些年一直都還在之前的邊界裡並沒有實質性的突破,但是在應用層面的發展突破卻是突飛猛進,AI 技術雖然仍然智慧有限,但已經逐漸作為我們的眼睛、耳朵、嘴巴的輔助,實現了一定程度的智慧。忍不住想起那句話,人們總是傾向於高估一年的變化,卻低估10年的變化,我相信人工智慧也是如此。

第一次人工智慧浪潮——“推理”與“搜素”的時代

這一次人工智慧浪潮,以推理和搜尋為主角,推理其實是把人的思維過程用符號表示,處理方法和搜尋類似。搜尋的處理簡單理解就是情形區分,窮舉所有模式,找到正確的路徑,形象化的理解就是構建搜素樹,如下圖所示:

構建搜尋樹有兩種方式:一種是儘量往深處挖掘走到不能走為止,然後再轉往下一個分支,稱為深度優先搜素;另一種是寬度優先搜尋,應該可以理解。兩種方法各有利弊,關於兩者相結合的研究直至今天還在繼續,其他一些研究包括機器人行動規劃、博弈組合、國際象棋等等。這一時期的人工智慧能解決的問題非常有限,其解決的問題主要是在明確定義好規則的前提下做下一步判斷,現實問題卻複雜得多,人們覺得計算機並不能真正解決問題,人工智慧發展一度進入低潮時期。

第二次人工智慧浪潮——知識,讓計算機更聰明

第一次人工智慧浪潮中人們發現計算機只能解決一些“玩具問題”,因此在20世紀70年代,人工智慧研究一度冷寂,20世紀80年代,人工智慧捲土重來,和之前不同,他開始應用在工廠的生產車間等現實產業領域,更多依靠“知識”的支撐,代表性的成果如1964年的Eliza人機對話系統,以及由斯坦福大學研發的MYCIN醫療診斷專家系統。

隨之而來的問題是第一規則多了之後,相互之間出現矛盾或前後不一致,需要不斷對知識系統進行維護調整,另外計算機專業知識很強,但在一些常識性問題上表現很差。關於讓計算機理解處理常識知識的研究被稱為知識表示研究,並由此延伸出本體研究,本體論的研究讓人們意識到對知識進行表述的難度非常之高,由此衍生出兩大方向,一個方向是認為人應該要思考清楚如何描述知識,並需研究為此應該怎麼做,稱為“重量級本體論”;另一種是把資料輸入計算機,讓計算機尋找概念之間的相關性,稱為“輕量級本體論”,一個極致的例子就是IBM的沃森,沃森所用的是問題回答傳統領域研究成果,即在維基百科知識描述的基礎上生成的輕量級本體,應用於問題解答。

第二次人工智慧浪潮試圖匯入知識來提升人工智慧的能力,並具備一定的產業實用性,但知識描述的難度超出想象,輸入無法窮盡,計算機無法掌握人類所擁有的無法窮盡的海量知識。1995年起,人工智慧又開始進入一個蕭瑟期。

第三次人工智慧浪潮之一——機器學習悄然興起

第二次人工智慧浪潮時期,只要往計算機輸入足夠多知識,它就能相應完成很多事情,但其能力僅限於所輸入知識的範圍。但如果要擴充其實用性及應對例外情況,則需要輸入永遠也輸不完的海量知識。

與此同時,機器學習穩步發展,其發展背景是文字識別等模式識別領域長期累積的技術基礎以及不斷增加的海量資料,所謂機器學習,簡單理解就是指人工智慧自身進行學習的機理。以翻譯為例,網際網路的影響,使得資料量大幅增加,網路文字的自然語言處理技術和機器學習發展迅速,不同於傳統的翻譯演算法,利用機器學習演算法的翻譯系統,不考慮語法和文字的意思,將對譯概率較高的詞語找出來組成句子,準確率大幅度提高。

機器學習大體上可分為兩類,即有監督學習和無監督學習,有監督學習是指事先準備好輸入和正確輸出相配套的訓練資料,讓機器進行學習,以便讓他輸入某個資料時得到正確的輸出 。無監督學習則被應用於僅提供輸入資料,需要計算機自己找出資料內在結構的場合,從中抽取出其所包含的模式和規則。

說到機器學習則必須要提神經網路,以手寫文字識別為例,有個MNIST的資料集,由從0-9共10個數字的影象組成,用於幫助計算機正確識別手寫文字作為訓練用資料,每個手寫數字都是28*28=784的畫素圖象,共計7萬張,每張都正確標註是哪個數字,將這些影象的畫素單位資料匯入神經網路,有輸入層、隱層和輸出層三層結構,新的資料輸入,再從隱層到輸出層,神經網路的輸出層有分別對應0到9的10個神經元,分別輸出各自的值,哪個神經元輸出概率最高則判定為哪個數字。假設隱層有100個神經元,那共有784*100+100*10條線,連線權重則會影響輸出結果的準確度,通過機器學習的方法,讓計算機不斷地對輸出答案進行確認,發生錯誤就調整權重,從而提高識別精準度。

機器學習可以分為學習階段和預測階段,學習階段可以理解為製作人工神經網路的過程,這個過程需要輸入大量的資料進行確認和調整,比較費時,預測階段則是利用已經利用已經完成的人工神經網路輸出正解,使用起來則非常簡單。機器學習這項技術在web和大資料領域已經有相當的使用,但弱點也非常明顯,就是特徵工程,即特徵量的設計,選什麼作為特徵量對預測精準度有很大的影響,“輸入何種特徵量”是大腦思維來解決的,這也是機器學習最大的難關。

第三次人工智慧浪潮之二——“深度學習”打破沉寂

前文有提到機器學習依賴擁有專業知識和長年工作經驗的研究人員來完成特徵量的設計,到了一定的階段後,效能的提高遇到瓶頸,很難出現大的突破。2012年國際影象識別領域國際大賽ILSVRC上,首次參賽的多倫多大學將錯誤率降到15%,領先其他人工智慧團隊10個點以上,有如此突破的祕訣就是他們開發了新式機器學習——深度學習。

所謂深度學習就是以資料為基礎,由計算機自動生成特徵量,不需要人來設計特徵量,而是由計算機自動獲取高層特徵量,可以說深度學習代表的“特徵表示學習”是一次歷史性的突破。

深度學習是多層結構的神經網路,和之前機器學習提到的三層結構的神經網路不同,重疊至數層,形成深層結構。多層神經網路結構實際上在神經網路初期就有人嘗試製作過,常規的想法是既然三層的結構沒問題,那四層、五層的結構是不是更好呢?然而,實際上,實際執行並非如此,層數增多但精確度卻難以提高,原因在於如果層級太深,誤差反向(即根據上司判斷的正確與否來加強或減弱與下屬之間的關係,以此來修正和改進)傳播就無法抵達下面的層級,因為如果單位層級過多,那麼頂層上司判斷的正確與否,傳遞到位於末端的基層職員那邊,影響幾乎為0。深度學習與以前機器學習相比兩個比較大的不同點:一是需要一層一層逐層學習,二是使用一種被稱為自動編碼器的資訊壓縮器。深度學習演算法的輸出也是28*28=784的影象,中間的隱層可能只有100的神經元,這樣一來,在資訊傳輸的過程中則需要不斷地進行歸納總結,反覆不停地重複同一影象的編碼(壓縮)和解碼(還原重構),在這個過程中學習用較少的資訊量進行還原,得到較好的結果時,隱層裡面的產生的東西即為良好的特徵表示,和統計學上的主成分分析類似,就是將多個變數縮減成為較少個數的無相關合成變數的方法。

多層架構的深度挖掘,簡單理解就是把第一段隱層作為第二段隱層的輸入,讓計算機不斷去學習,最下層的輸入經過每一層後逐漸抽象,就生成了高層的特徵量,抓住這些特徵量以後,有監督學習只需要很少量的樣本就可以實現。這個過程是使用無監督學習的資料來提高有監督學習的精確度,核心是在於使得提取的特徵量和概念具備“魯棒性”(“健壯性”),這需要在無監督學習的過程中在輸入的資料中加入噪音,通過反覆加入噪音後獲取的特徵量,才不會因為一點風吹草動就搖擺不定,可以成為“不會出錯”的特徵量。

當然不是說深度學習的出現使得一切人工智慧問題迎刃而解,但是他的出現,顯示了計算機能夠自動獲取以資料為基礎的特徵表示的可能性,至少目前在影象和語音領域是可以實現的,他為我們提供了一個極為重要的突破口,作者相信人類智慧是有理由通過程式來實現的。

以上時關於人工之智慧三次技術發展的簡單描述,從底層技術角度來講,以我目前的了解,應該都還在這個範圍之內,但是從應用層面來講,則突飛猛進。隨著底層技術的成熟、資料和運算能力的提升,讓AI的應用有了更多的想象空間。

  • 整治雙十一購物亂象,國家再次出手!該跟這些套路說再見了
  • 華為5G技術太猛了!華為5G網速再次重新整理全球新紀錄:下載速度驚人