杂谈机器学习的几个应用场景
在上一篇文章末尾,小夕提到了“機器學習是實現自然語言處理的正確道路”。其實確實如此,縱觀整個自然語言處理的發展史,也是縱觀整個人工智能的發展史,從誕生到現在,機器學習不僅是在理論和工程上實現自然語言處理的目前最佳選擇,也是最貼近生物掌握自然語言處理能力的本能方式。
?
從規則到統計,再到如今深度學習這個特殊而一般的統計,這條發展之路滲透在自然語言處理的幾乎每一個應用場景。如中文分詞,從最初的最大匹配法(通過規則查字典——基于規則),到后來的基于DAG的最大概率路徑法、由字構詞法、基于詞的n-gram方法等(通過感知機、HMM、最大熵、CRF等model實現——基于統計),甚至到現在出現了基于深度學習的無聊方法。
?
從統計的時代開始,機器學習便當上了人工智能舞臺的主角——視覺、聽覺、語言等能力都成為了它的表現形式。而機器學習是從數據中學習到規律,將這個規律用一個模型去表示。因此,理論上來說,只要某一應用場景可以記錄歷史知識并且將知識表示成機器學習認可的數據的形式,那么機器學習就應該可以從該場景的歷史知識中學習到規律,并且描述該規律,以用于日后的分類、聚類、回歸、序列標注等任務。
?
下面小夕就帶領大家看一下幾個火熱的應用領域是如何將它們的知識表示成機器學習可以消化的數據的。
?場景1、圖像視頻處理:
?
相關方向:計算機視覺、模式識別。
?
圖像可以看成是一個靜態的矩陣。灰度圖則是一個標準的矩陣(上帝視角的矩陣是個二維張量,即2D Tensor。回顧一下,2Dtensor就是矩陣,1D tensor是向量,0D tensor就是一個點。),矩陣中的每個元素都是0-255的數值,代表顏色深度。因此0代表純黑,255代表純白。
而彩色圖則是一個3D的Tensor(張量),其中第0維一般為R、G、B三個值,分別代表紅色通道、綠色通道、藍色通道,第0維的每個值下(也就是每個顏色通道下)當然就是一個矩陣啦,跟灰度圖一樣,代表該顏色通道的顏色深度,因此B這個通道的255就代表純藍,RGB三個通道的顏色深度組合形成自然界中任何一種顏色。
?
而視頻則是一個圖像序列,視頻中的每一個時間點,即每一幀,就是一個圖像。
?
因此,在處理圖像的時候,就是對一個2D Tensor或者3D Tensor的數據處理;在處理視頻的時候,就是對一個2D或者3D Tensor序列的數據處理。
?
場景2、語音信號處理:
?
相關方向:語音識別、模式識別。
?
原始的語音信號可以看成是一個序列,但是這個序列的精髓在于時間軸。先不談神奇的時間軸,先說時間軸上的某個點。
?
單通道的語音信號在每個時間點上的值就是一個點,即0D的tensor所以簡單看語音信號的話,就是一個0D Tensor序列。
?
但是,如果單獨的看這個0D Tensor序列的某一點,或者某一極小片段的話,是意義不大的(雖然對視頻這個序列這樣做的話是有意義的),這樣得到的樣本僅僅是某一點或者極小片段的聲音的響度。但是生物對聲音的主觀辨識不僅在于某一點的響度,還有非常重要的音調和音色,而后兩者依賴于對響度隨時間軸變化的密集程度和變化規律進行感知,因此對語音信號的處理既一般化,又要注意時間軸上的區別。
?
場景3、自然語言處理:
?
相關方向:自然語言處理、信息檢索。
?
自然語言既可以看成序列,也可以看成結構,或者結構+序列。自然語言處理即對人類語言描述出的文本進行處理。
?
我們可以將一段文本看作是從左到右隨著“時間軸”變化的文字序列,也可以將一句話看做是一個“樹形結構”,比如“小夕不喜歡大土豆”(這例子是什么鬼),可以將其中的“不”和“喜歡”合成為一個結點,將“大”和“土豆”合成為一個結點,然后將“小夕”、“不喜歡”、“大土豆”合成為最終的句子:
而序列或結構中的每個點,則是一個有著豐富意義的詞,比如同樣的“土豆”,放在食物中就是吃的,放在人身上可能是貶義詞,放在電影里還可能是個暗號。因此,對于一個詞的編碼往往用一個向量(1D Tensor)來描述。簡單描述如one-hot,復雜描述如word embedding,詳情見這里。
而詞又有不同的分析角度,比如從詞法上來說,詞可以分為動詞、形容詞、名詞等,因此還可以將詞像彩色圖像一樣編碼成多個通道,比如語義通道、詞性通道、甚至奇怪的拼音通道、偏旁部首通道等,這樣就成了一個矩陣(2D Tensor)。因此對一段自然語言文本的處理就是對1D或2D Tensor序列或結構的處理。
場景4、游戲
相關方向:機器學習、控制類和上述感知類方向。
?
游戲是一個很大的概念,機器學習在游戲上的應用經常同時包括圖像視頻處理、語音信號處理甚至自然語言處理,但除此之外,“規劃(planning)”往往是游戲場景的特色和核心。
?
包括自動駕駛,其實也可以看做是一個特殊的游戲。其本質即通過機器學習訓練得到的視覺、聽覺等感知能力來將外部信息處理成計算機可以進一步運算的“符號”,而這些符號其實就是機器學習可以消化的數據。
?
因此,積累這些符號的歷史數據,就可以通過機器學習訓練得到的具有規劃能力的model來將這些符號轉變為對外輸出的自身行動。
?
上述4個應用場景直接體現了大眾眼里的人工智能概念。但下面兩個應用場景同樣是機器學習廣泛應用的地方。
?
場景5、信息安全:
?
相關方向:數據挖掘、自然語言處理、上述感知類方向。
如果覺得信息安全跟機器學習毫不沾邊,那你的知識面就有點窄啦。一個爛大街的例子是將機器學習用于網站的入侵檢測,基本思想即學習網站的正常運行的歷史數據和被入侵時的歷史數據,進而用學習到的model來對網站的運行狀況進行監控,自動監測是否被入侵。
?
除此之外,實際上機器學習在信息安全的應用非常廣泛。如通過對加密信息的學習,來破解加密信息;對流量類別的學習來分類流量;對互聯網違法信息的學習來養成帥帥嗒小網警;對微博的文字情感和話題的學習來監督輿情;對色情視頻的學習(跟你們學習的立足點不一樣!!)來識別色情網站等等。這些場景都可以通過學習歷史數據來完成安全任務。
?
場景6、數據處理:
?
相關方向:數據挖掘。
數據處理是機器學習的重頭戲,也是跟商業(錢)聯系最為緊密的應用方向。現代幾乎任何的企業想要發展壯大,都離不開對商業數據的處理。比如對產品的大量用戶反饋數據進行處理,通過聚類或分類來挖掘出產品的核心槽點;對企業的財務數據進行處理,從而制定更合理的收支分配等。
?
由于傳統的數據處理算法難以挖掘出數據背后更為隱晦的規律,或者難以發現海量的商業數據背后的宏觀規律,因此通過機器學習,而不是人的主觀算法和主觀分析,來對商業數據進行深層次的處理和挖掘,進而直接為企業創造出價值。
?
商業數據一般是以結構化的形式存儲于數據庫中,因此一方面是最容易被機器學習直接利用的數據,另一方面也是最混雜臟亂,難以高效利用的數據。
當然啦,廣義的數據處理也會涉及自然語言、語音甚至圖像形式的非結構化數據,因此在數據處理中涉及到的機器學習技術非常廣泛,從最簡單的KNN一直到復雜的深度學習,都有它存在的場景。
?
上述各應用場景的數據形式基本決定了機器學習在該場景的存在形式。
最貼近人類視覺系統的深度神經網絡很自然的在圖像視頻處理的場景帶來了巨大的成功,注定深度學習是該應用場景的核心;而人的聽覺系統也是類似的,因此在語音處理場景也是如此;但人的語言系統卻是十分復雜而神秘的,因此哪怕目前機器學習最先進的深度學習model在自然語言處理領域也表現不盡人意,注定自然語言處理場景成為一個日新月異,研究難度大的場景;而在數據處理的場景下,面對世界上紛繁多樣的數據形式和需求場景,使得幾乎每個機器學習模型都在該場景下有容身之處,因此該領域也是“最不浪費機器學習模型”的領域。
?
再講點最現實的吧。
?
在入門難度和“投資回報”周期上,數據處理領域是“性價比”很高的領域,通過對統計機器學習的掌握和數據的預處理就可以完成相當多的數據處理任務,而且市場需求十分大,非人工智能導向的企業也會對其有非常旺盛的需求,因此小夕覺得還是比較適合非科班出身,希望轉行又缺乏大量時間、精力和基礎的同學的。
?
既然入門難度小,投資回報周期短,那么在這一應用領域有沒有合適的培訓機構呢?
7月20-24日,通信和信息技術創新人才培養工程項目辦公室(http://ciit.org.cn/)將在北京舉辦“python大數據挖掘與分析(機器學習)核心技術案例實戰專題培訓班”
該培訓班的培訓對象是從事計算機、云計算、大數據、互聯網等相關領域項目的科研院所的項目負責人、科研人員、工程技術人員;各地方政府信息中心負責人、技術骨干;大數據產業投資團隊,大數據應用開發商,大數據服務提供商等;有志于python機器學習研究和應用的個人及從業者,高校相關專業的教學科研人員、高年級本科生及研究生。
該培訓班:
1,可以幫助學員盡快掌握python語言的基本結構與語法與數據類型,模塊、基本用法,熟悉函數,類設計,包的使用及基本的編程方法;
2,理解python數據挖掘與分析技術在當代各種大數據相關產品中的應用,并掌握該領域最關鍵技術的原理以及技術應用過程;
3,能開發出一些實際的應用項目并初步勝任Python的數據挖掘和機器學習工作;
4,通過緊密結合應用實例,針對工作中存在的疑難問題進行分析講解和專題討論,進而有效提升學員解決工作中實際問題的能力同時提升其從數據角度去思考的能力;
下面是教學大綱:
第一天 | 第1講:數據分析方法概述及相關工具 | 1.認識數據 2.數據分析的步驟和原則(確定/分解/評估/決策) 3.相關工具概述及對比(excel/spss/R/matlab/python/Java) |
第2講:python環境和基礎語法與 | 1.安裝anaconda套件 2.基本數據結構(列表/字符串/字典) 3.基本語法(條件/循環/函數/類/模塊) 4.python語言編程的最佳實踐經驗 5.python在業界的典型應用 | |
第3講:基礎工具庫 | 1.基礎環境linux/ipython 2.數值計算 numpy 3.繪圖與可視化 ?matplotlib與 Chart 4.數據操作 pandas 5.高級應用案例分享 | |
第二天 | 第4講:統計分析庫 | 1.概率和統計分析 ?statsmodels 2.科學計算和最優化 ?scipy 3.線性回歸和邏輯回歸 statsmodels |
第5講:數據挖掘概覽 | 1.數據挖掘與模型 2.建模流程和步驟 3.常見算法 5.高級應用案例解析 | |
第6講:典型數據挖掘項目示范 | 1.基于titanic數據集預測生存概率 2.演示如何進行繪圖探索 3.特征處理和建模 4.練習及答疑 | |
第三天 | 第7講:數據挖掘與機器學習 | 1.感知機、決策樹、特征工程、正則化方法、PCA等 2.練習和答疑 |
第8講:機器學習進階(一) | 1.參數調優、集成學習、文本挖掘、神經網絡、深度學習等 2.練習和答疑 | |
第9講:機器學習進階(二) | 1.基于MNIST數據集識別數字 2.展示如何進行特征構造 3.常規機器學習算法和深度學習算法的效果差異 4.機器學習的結果評估 5.深度學習的最新進展分享 | |
第10講:現代分析技術的應用(選修) | 1.社交網絡分析 2.空間數據的展示與地理信息分析 3.圖像分析技術簡介 | |
第四天 Kaggle機器學習案例實戰解析 | 第1講:二分類任務案例分析 | 1.二分類任務簡介 2.泰坦尼克沉船幸存者預測 3.Amazon員工訪問需求預測 4.融360-用戶二次貸款需求預測 |
第2講:多分類與回歸案例分析 | 1.多分類與回歸任務簡介 2.XGBoost簡介 3.Otto集團產品分類預測 4.舊金山犯罪類型預測--利用地理信息可視化 5.Rossmann公司門店銷量預測 | |
第3講:其它數據挖掘任務案例分析 | 1.圖像分類任務簡介 2.樹葉圖片分類任務 3.推薦任務及評價指標簡介 4.Santander銀行產品推薦任務 |
內容很良心吶有木有。
培訓費用為4980元/人(含培訓費、教材費、考試費、證書申報、場地等相關費用),食宿統一安排,費用自理。
?
已經心動的同學快快拿出小本本記下聯系方式:
電話: 15811578768
微信:15811578768
聯系人: 金老師
郵? 箱:384595672@qq.com
相比較數據處理,其他應用場景的“速成”難度就大多了。
機器學習是自然語言處理的核心方法,但不是解決方法。自然語言處理的研究進展日新月異,遠遠沒有達到批量工業化的程度,因此需要足夠扎實的數學基礎來跟進最新論文,并自主實驗。
基于規則的諸多算法、統計機器學習、深度學習在該領域僅僅是研究基礎,而不是最終目標。因此相對而言入門難度很大,投資回報周期很長。而且注意一下,目前深度學習依然是機器學習在該領域的主流方法,對硬件平臺要求較高,只用手頭的PC是遠遠不夠的。
圖像視頻處理、語音信號處理有大量的非機器學習任務,因此通信、電子出身的人可以很好的以此為切入點,將機器學習融入其中,從而完成更加智能的圖像視頻與音頻處理的任務。
當然了,涉及更加智能的處理任務后,對數學的要求同樣是蠻高的,機器學習與深度學習只是實現智能處理的工具,而不是用了這些工具就一定能完成智能處理。兼備數學理論與工程研發能力才可以做到。
而且與自然語言處理一樣,深度學習是機器學習在圖像視頻與語音領域應用的前沿且主流方法,但是由于數據格式的原因,對硬件設備的要求比自然語言處理還要大,因此只用一臺PC的話更不靠譜啦。
小夕暫時就想到這些啦~水平和認知所限,文中觀點或許有些片面,歡迎在評論區指出哦~
總結
以上是生活随笔為你收集整理的杂谈机器学习的几个应用场景的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SpringCloud实战小贴士:Zuu
- 下一篇: 美团下一代服务治理系统 OCTO 2.0