我眼中的人工智慧學習三境界
人工智慧像是新一輪的工業革命一樣或者世界革命一樣,學術界和科技公司如果不涉及到這方面好像你就會落伍和被淘汰,特別學術界如果你做的是影象處理方面,比如影象分類、人臉識別這塊,現有的人工設計特徵的演算法遠遠比不上深度學習演算法那樣優秀,特別是卷積網路的改進和優化已經能在影象分類方便做到無可匹敵的地步。本人之所以能接觸到這一塊是因為在研究生階段做的研究是對視訊的智慧處理。簡單來說是影象智慧分類的擴充套件-視訊中人體行為識別。王國維先生認為讀書有三境界,即為:"昨夜西風凋碧樹,獨上高樓,望盡天涯路"; "衣帶漸寬終不悔,為伊消得人憔悴"; "眾裡尋他千百度,驀然回首,那人卻在燈火闌珊處"。此處借王國維先生的讀書三境界來闡述一下本人接觸學習人工智慧的心裡與實踐路程。
"昨夜西風凋碧樹,獨上高樓,望盡天涯路"
上句是王國維先生的讀書三境界之第一層境界,意思就是做學問之前,先要有思想準備,看到學海無邊知識無涯,從而激發奮鬥併為之獻身的精神和勇氣,同時又感慨自己的學問之不足。
“Hello world”與Hello world!,就像剛開始學習每一種語言都要去寫第一個程式“Hello world”一樣,學習人工智慧也要有入手點,怎麼才能不是機械的像語言輸出而是真的對它打個招呼Hello world!呢?人工智慧是個綜合性複雜學科包含了太多的知識,想要學習它真是路漫漫其修遠兮,吾將上下而求索。
“相見”
本人本科就讀一個普通二本院校,大學渾渾噩噩的過了三年,等快要大四面臨畢業了開始慌了,就決定考研了。研究生導師的研究方向是智慧資訊處理、模式識別與資訊融合,當時被劃分研究的專案是視訊資訊處理。大家都知道研究生畢業的主要依據是發表論文,當時關於影象處理的演算法實驗室已經做了很多的研究,大多是在比較經典的手工設計的演算法上進行結合或微調,結合深度學習的演算法進行處理還是第一次去做。關鍵的是那幾年是人工智慧、雲端計算、大資料的浪潮之時,有關這方面的論文也是井噴且易中的一種情況,所以導師也建議用比較火的卷積神經網路去做。其實剛接觸人工智慧的時候連圖靈測試都不清楚,當時理解的人工智慧比如智慧聊天機器人、智慧導航駕駛。而像電影裡的那些和人無二的人工智慧感覺是不能實現的,只是科幻電影。後來慢慢了解到,人工智慧在歷史的長河中由來已久,只是在其一個分支中的機器學習、深度學習等又一浪潮的興起被人又拾起。
LeNet 5手寫數字識別
如上圖的LetNet5的手寫數字識別,其內部實現正是卷積網路,當第一次接觸到這種"智慧"的時候感覺還是滿神奇的,姑且算是真的與她”相見“了。當時在做研究時也看了大量的已存在人工設計的演算法,想在師兄師姐工作的基礎上再做些改進就可以產出論文,但當看了一段時間後,得出只有兩個選擇:一是理解已有演算法進行修改結合,致命缺點就是已有算的改進已經被做的很多,想要找到創新點很難並且不容易中不新穎(相比較而言沒有機器學習方向點熱點度高和效果好);二是選擇一個機器學習演算法努力研究想辦法改進,因為當時14年關於處理視訊的結合深度學習的文章還不是特別的多(視訊處理有不同方向點比如簡單行為分類,複雜行為分析等等),而從關於影象分類處理的效果看首選卷積神經網路。所以從一個純白的小白開始了接觸什麼是機器學習、智慧模式識別,也就是"昨夜西風凋碧樹,獨上高樓,望盡天涯路",但相反的是在讀了很多論文和大量的部落格之後沒有激發我的鬥志,反而有想放棄的念頭,感覺就是“這道題太難了,不會做,我不會做”。
”相識“
在擔心自己沒有能力結合深度學習演算法寫出論文後也曾找過導師商談要不要換個研究點,因為一個人搞這個點的難度太大了,並且實驗室做機器學習方向的人不多,有一位是用的是自動編碼器做步態模擬識別,他的老師在機器學習中比較熟悉的是自動編碼器,卷積網路也是沒有怎麼接觸,所以對於我來說缺乏指導和交流,不過做步態模擬的同學還是給了很多指導和意見的,既然沒的選只能望著遠處高山之巔慢慢前行了。在學習卷積網路演算法過程中,擴充套件閱讀了很多關於人工智慧的基本科普,機器學習演算法是一個人工智慧裡很重要的組成部分,而所重點看得卷積網路演算法也只是機器學習演算法裡的一種,即便連帶了解了BP、自動編碼器等,這也只是人工智慧的冰山一角,姑且說與其相識了。
"衣帶漸寬終不悔,為伊消得人憔悴"
王國維先生的讀書第二層境界就是在第一層境界之後漸漸產生了對讀書的興趣,就算為此衣帶漸寬和人憔悴都不悔
秋風落葉、時間易逝
”相知“
在選定目標後開始研讀大量的論文和部落格,時間總是過得很快,但是回過頭來還是一頭霧水,後來發現很多人都愛用高大上的語言來描述而不用通俗的解釋或者白話的陳述來解釋專有名詞。所在學習了很長一段時間之後感覺重心沒有放對,雖然要學習卷積神經網路要了解神經網路、機器學習、深度學習等等,但是最終要用的是使用卷積網路進行視訊處理,所以後來就從最原始的手寫數字識別的卷積網路程式碼結合理論文章進行學習分析。很多時候文章上的描述轉換為數學表示式就是一些公式變化而我們就不需要糾結於理論上抽象研究,比如說卷積網路的區域性感受野,談到他或許也會讀到關於他的發現,兩位學者使用貓進行電位變換的研究發現區域性感受的存在,轉到程式碼的實現就是區域性共享引數減少運算量。在這裡所謂的相知並不是說對人工智慧真的明白,只是對所研究的點有進一步的認知,在我之前的部落格裡機器學習(周志華)讀書筆記-(五)神經網路(2)裡已經描述了我個人對卷積神經網路的理解和在學習過程中遇到的問題和注意點。比如說(個人觀點):1、為什麼打亂樣本分配和樣本平均訓練(某一時間只見某一個人你就淡忘之前還見過別的人);2、引數的隨機設定在怎樣的範圍內更好、迭代次數的多少(一般是損失函式曲線來判定,並不是迭代次數愈多越好到一定程度會在最優值震盪);3、標籤的設定(和選擇的最後的啟用函式選擇有關,形如sigmod[0,1]或tanh[0,-1])等等。
"小成"
經過一段時間的苦澀研究基本瞭解卷積神經網路的一些知識點,主要是看一些大牛的部落格和最新的關於卷積網路的優質文章,最主要的是看最經典的卷積網路程式碼,結合程式碼有助於理解一些晦澀的概念,更重要的是去發現程式碼裡的一些技巧而在論文裡不會提到的(如打亂樣本順序的實現,引數隨機初始化歸置的初始範圍)。在瞭解了怎麼通過去改變一些引數設定達到想要的效果,學習caffe框加並行加速等,最後在參考一篇3D卷積網路的行為識別的論文後,通過輸入資料預處理和引數調節發了一篇比較普通的論文。所謂的3D卷積網路就是在2D影象的基礎上結合了時間的維度,也有人使用深度攝像採集裝置,比如kinect裝置可以獲取活動主題的深度資訊,就是讓影象不再是2D平面圖而是三維圖,但是深度採集裝置目前還不具備普適性且裝置價格也挺昂貴,所以還是結合時間維度將2D的卷積網路變成3D的卷積網路。視訊是一幀幀影象構成,單張影象所帶資訊有限而且不能完全夠顯一個動作,所有選取一定時間內的影象組作為輸入。在思路確定後其實程式碼實現也是一大塊難點,當時有關3D實現的程式碼基本找不到,自己經過很長一段時間分析修改才完成自己想要的結果(主要是殘差調節之間的連結關係和2D時的差別),不管怎麼說卷積網路有關影象分類的理論算是瞭解了一些。後來有關機器學習演算法又看了一些別的演算法,比如自動編碼器、決策樹等等,在你能明白其中一種演算法,其他演算法學起來會相對容易一些,因為雖然他們的理論和構成元件不一樣,但是最終知道他是得到一個黑盒模型,由輸入得輸出,模型怎樣才會更好正是這些約束引數調節。
”眾裡尋他千百度,驀然回首,那人卻在燈火闌珊處“
此為第三境界,意思是經過前兩個境界後你就會豁然開朗,讀書就變得輕鬆簡單。曾經我所認為的人工智慧是有完全自主的智慧就是感知、認知、推理、學習、執行。感知可以認為是計算機視覺的機械應用,認知、推理、學習就是像人一樣思考做出決策,那麼現在最好的實現演算法就是機器學習。讀了幾本關於機器學習的書,像白話大資料與機器學學習、白話深度學習與TensorFlow、統計學習演算法等,裡面介紹了很多不同類別的演算法及應用,像百度的人臉識別、頁面智慧推薦演算法等等,能讓冰冷機器做一些人工的工作,這就是人工智慧啊,曾經也一度認為人工智慧時代很快就要到來了。但是後來越來越覺得,現有的這麼多的監督的、半監督的、非監督的演算法仍然是在認為準則下對資料處理的一個模型,沒有自我決策推演能力。
其實人們即希望真正的人工智慧的到來,也害怕真正的人工智慧給人類帶來威脅。就像電影《我,機器人》雖然人們設計師規定了三大準則,但當真的有機器人擁有自我意識會不會像電影裡一樣,控制人類是它認為遵守三大準則也是最好的方法保護人類。在讀過朱鬆純的關於人工智慧現狀、任務、架構和統一之後,我又有了新認識,現在的大部分智慧仍是指令工作,即使是現在的人臉識別、自動駕駛等都是一個大資料小任務模式,而不是小資料大任務模式。就拿卷積網路的影象識別來說,我們加深網路的層數或其他調節靠攏與深度學習,實現像生物學裡發現生物視覺的分層結構達到像生物思考的模式一樣,但是個人覺得我們創造出來的一個黑盒子無論有多少層和多少引數,還是一個冰冷的機械化結果,沒有人類的推演化能力,也有專家認為最接近人腦思考的深度學習也陷入困境,人工智慧的冬天正在路上。就像朱鬆純先生說的,創造出來的應該是烏鴉學習的那種智慧而不是鸚鵡學舌那種。
看山是山,看山不是山,看山還是山。
人對一個概念的理解不同,原因有很多,有主觀意識和客觀知識的積累等等。從開始覺得影象識別、智慧駕駛、智慧推薦、語音聊天啊覺得是很了不起的人工智慧,到後來覺得這不就是人工設定了準則和方法,讓機器按照人為設定的”路線“走嗎,哪有自我認知智慧啊。但是能讓按照指令去做人可以完成的工作甚至更甚於人(人臉識別區分雙胞胎、智慧推薦不用自己去搜索等等),這些不是智慧是什麼,當然了實現自主認知學習還要很長一段時間,他是計算機視覺、機器人學習、語言處理、博弈論等等學科綜合的一個組成。而裡面最重要的是演算法,因為像人一樣如果不會說話(計算機語言處理)可以去聽去寫還可以思考,如果看不見(計算機視覺),仍可以去感知對世界的思考和表達,如果沒有思想就像人被抽出大腦你覺得會怎樣。看到很多有關人工智慧工程師的培訓除了基礎知識和具備一門語言以及數學基礎,佔重要篇幅的就是機器學習演算法。作為“人工智慧教父”的Geoffrey Hinton他堅信無監督學習未來會是一個很重要的演算法。但是從目前來看監督學習,也就是有標籤學習訓練預測下一個目標的學習方法還是佔主要位置。但是他也曾想推翻之前的理論研究,因為他認為反向傳播從最低層依據殘差不符合生物資訊選擇,每一層資訊變換都會有資訊丟失,所以迴圈網路結構就更接近與資訊更迭,就是輸入到隱層,隱層輸出再次作為輸入資訊進輸入層,資訊迴圈,增強資訊的關聯。很多神將網路的演算法的一個重要點就是感知機模型,類神經元工作原理,放在神經網路模型裡就是啟用函式對輸入值在一定閾值到達時才會有想要的輸出類似於軸突樹突間的工作,但是他們都有一個假設層間神經元不相連,我之前部落格中也寫過對這種假設的懷疑,也有可能億萬神經元的星狀連結我們在數學模型上怎麼表達,怎麼規範一個神經元到其他神經元的連結傳輸大小是個難題。現在規定的這種神經網路已經實現了了不起的處理效果,如果完全搞定生物神經的工作原理再到機器人的實現,那真正的智慧也許就來了。
相關推薦
我眼中的人工智慧學習三境界
人工智慧像是新一輪的工業革命一樣或者世界革命一樣,學術界和科技公司如果不涉及到這方面好像你就會落伍和被淘汰,特別學術界如果你做的是影象處理方面,比如影象分類、人臉識別這塊,現有的人工設計特徵的演算法遠遠比不上深度學習演算法那樣優秀,特別是卷積網路的改進和優化已經能在影象分類方
學習三境界
WHTA(初級) 能做哪些事情? API層次 我們要了解API,要知道每個類是幹什麼的,我們可以使用哪些方法來實現我們的效果 HOW(中級) 採用的什麼方式實現? impl
【蜂口 | AI人工智慧】三維人臉重建——龍鵬 深度學習與人臉影象應用連載(十)
本次我們的分享是三維人臉重建問題,我們將從以下幾個方面給大家進行分享: 首先,我們對三維人臉重建做一個通用的介紹,並對它的常見的方進行比較詳細的介紹。 其次,我們對當前的三維人臉重建中最常用的一個模型,也就是3DMM模型給大家做個非常詳細的介紹。在我們的傳統方法和深度學習的方法中,都
我眼中的Linux裝置樹(三 屬性)
三 屬性(property)device_type = "memory"就是一個屬性,等號前邊是屬性,後邊是值。節點是一個邏輯上相對獨立的實體,屬性是用來描述節點特性的,根據需要一個節點由0個,1個或多個屬性表示節點的特性。一個屬性由名字和值兩部分組成。和節點的名字類似,規範
人工智慧的三個分支:認知、機器學習、深度學習
人工智慧進入了一切領域——從自動駕駛汽車,到自動回覆電子郵件,再到智慧家居。 你似乎可以獲得任何商品(例如醫療健康,飛行,旅行等),並通過人工智慧的特殊應用使其更加智慧。所以除非你相信事件具有終結者般的轉折,你可能會問自己,人工智慧能夠預示著工作場所或整體的業務線的什麼利益。
我眼中的人工智慧(2017年初)
宣告:原創作品,轉自我的公眾號:http://mp.weixin.qq.com/s/j02w51JYEF-5iPwynpvKhw (因面向讀者不同,此處略有刪減) “除人腦以外,沒有任何一個自然或人工系統能夠具有對新環境新挑戰的自適應能力、新資訊與新技能的自動獲取能力
我的php學習筆記(三十七) PHP站內搜尋:多關鍵字、加亮顯示
一、SQL語句中的模糊查詢 主要通過LIKE(不區分大小寫)關鍵字實現模糊查詢。LIKE條件一般用在指定搜尋某欄位的時候, 通過"%"或者" _" 萬用字元的作用實現模糊查詢功能,萬用字元可以在欄位前面也可以在後面或前後都有。只通過LIKE是無法實現模糊查詢的
我的spark學習之路(三):利用spark做迴歸分析
spark的機器學習庫(MLlib)下有簡單的迴歸分析方法,今天只說最簡單的線性迴歸,spark提供有兩個迴歸分析庫(mllib和ml),我學習的時候在網上也查了不少資料,有一個奇怪的現象是網上關於spark迴歸分析的資料基本全是mllib,關於ml的基本沒見到
我眼中的設計模式(三)
各種模式之間都有一定的聯絡,以面向物件為基礎,運用類的概念設計模式,充分體現封裝、繼承和多型的特性。 另外幾種設計模式這裡不一一介紹了,今天這篇部落格談一下設計模式的分類: 一、 建立型模式:
人工智慧學習總結(1)——人工智慧的三個分支:認知、機器學習、深度學習
人工智慧進入了一切領域——從自動駕駛汽車,到自動回覆電子郵件,再到智慧家居。 你似乎可以獲得任何商品(例如醫療健康,飛行,旅行等),並通過人工智慧的特殊應用使其更加智慧。所以除非你相信事件具有終結者般的轉折,你可能會問自己,人工智慧能夠預示著工作場所或整體的業務線的什麼利益。
小白一路走來,連續刷題三年,談談我的演算法學習經驗
資料結構與演算法應該算是一個比較難的模組,從小白一路走過來,從大一連續刷過好幾年題,看過挺多書,踩過挺多坑,也漲了一些經驗,姑且在這裡分析一波對資料結構與演算法 的學習經驗,請耐心看完,相信對你會有所幫助。 對於初學者來說,我認為選擇一本合適、不錯的演算法書是非常非常重要的,從大一到現在我也看過不少的演算法書
我是如何學習寫一個作業系統(三):作業系統的啟動之保護模式
前言 上一篇其實已經說完了boot的大致工作,但是Linux在最後進入作業系統之前還有一些操作,比如進入保護模式。在我自己的FragileOS裡進入保護模式是在載入程式結束後完成的。 真實模式到保護模式屬於作業系統的一個大坎,所以需要先提一下 從真實模式到保護模式 真實模式和保護模式都是CPU的工作模式,它
Struts2學習三----------Action搜索順序
round col uil 1-1 earch sch 預覽 image pin ? 版權聲明:本文為博主原創文章,轉載請註明出處 Struts2的Action的搜索順序 http://localhost:8080/path1/path2/student.action
java學習(三) eclipse_jsp學習
bin文件 5.1 font aaa spa mac war bin log 1.首先打開eclipse,新建一個Dynamac web project項目文件 2.在WebContent單擊右鍵創建JSP File 3. 4.簡單的jsp代碼 運行結果:
Flask學習 三
sky html 文件 deb alt bar javascrip contain sed 使用flask-bootstrap 集成Bootstrap pip install flask-bootstrap 安裝後即可繼承使用Bootsftrap所有文件的基模版 f
跟我一起寫Makefile(三)
image 函數名 headers 波浪 用法 日期 最好 頭文件 哪些 書寫規則————規則包含兩個部分,一個是依賴關系,一個是生成目標的方法。在Makefile中,規則的順序是很重要的,因為,Makefile中只應該有一個最終目標,其它的目標都是被這個目標所連帶出來的,
Nginx初次學習三個知識點記錄
更多 讀取 單獨 基於 存儲 驗證 session 集群 使用 1.Nginx是用來解決負載均衡問題的,它可以將請求均衡的發放到集群的每一個節點,但是使用者又擁有極大的控制權,通俗來講就是你既可以讓請求均衡發放,也可以指定哪些服務器接收更多的請求。更多的時候是用在集群服務器
robotium學習(三)
後序 ews spa left 其中 如果 () ext 翻譯 Robotium是一個通用的測試Android App的框架,所以官方提供了一套通用的PKI文檔。我們在下載Solo包的時候同時可以下載一個javadoc包,解壓後就能看到官方文檔了,不過官方文檔是英文版本的,
我眼中的軟件項目實施(一)
項目實施 軟件開發 工作環境 互聯網 軟件測試 隨著互聯網+時代的到來,相信大家對IT軟件已經不再陌生,尤其是企、事業用戶,會涉及到很多大型的數字辦公信息系統,而這些軟件系統項目的實施,需要職業的實施團隊來完成。通俗來講,軟件開發將開發出相應的軟件,解決對應的需求;軟件測試是對已開發的軟件
Html學習(三) 分類學習
watermark avi 分享 span 代碼 什麽 http 效果 瀏覽器 代碼: <h1>這是一級分類嗎</h1> <h2>這是二級分類嗎</h2> <h3>這是三級分類嗎 </h3>