1. 程式人生 > >如何給普通人解釋機器學習是什麼

如何給普通人解釋機器學習是什麼

 

資料探勘只是機器學習中涉獵的領域之一,機器學習還有模式識別、計算機視覺、語音識別、統計學習以及自然語言處理等,而在目前機器學習中,深度學習是機器學習研究中的一個新的領域,其動機在於建立、模擬人腦進行分析學習的神經網路,它模仿人腦的機制來解釋資料,例如影象,聲音和文字。這裡也拋磚引玉說一點自己所通俗易懂了解的一些機器學習的知識,相對機器學習有一個入門或者更深入的認識可以在網上找一些公開看,從我目前接觸的比較淺顯易懂的是斯坦福大學計算機科學系和電子工程系副教授,人工智慧實驗室主任:Andrew Ng(吳恩達)關於機器學習的公開課。

首先,機器學習即 ML,是一門多領域交叉學科,涉及概率論、統計學、逼近論、凸分析、演算法複雜度理論等多門學科。專門研究計算機怎樣模擬或實現人類的學習行為,以獲取新的知識或技能,重新組織已有的知識結構使之不斷改善自身的效能。

機器學習作為人工智慧研究較為年輕的分支,機器學習也分監督學習和非監督學習,同時隨著人工智慧越來越被人們重視和越熱,深度學習也是機器學習的一個新的領域。

那麼,我們要問,機器學習能幫我們幹什麼?

可以幫我們抽象一些因子的關聯絡(非監督學習)

這樣的案例莫過於資料探勘中最經典的案例之一啤酒與尿布的故事

“啤酒與尿布”的故事產生於20世紀90年代的美國沃爾瑪超市中,沃爾瑪的超市管理人員分析銷售資料時發現了一個令人難於理解的現象:在某些特定的情況下,“啤酒”與“尿布”兩件看上去毫無關係的商品會經常出現在同一個購物籃中,這種獨特的銷售現象引起了管理人員的注意,經過後續調查發現,這種現象出現在年輕的父親身上。

在美國有嬰兒的家庭中,一般是母親在家中照看嬰兒,年輕的父親前去超市購買尿布。父親在購買尿布的同時,往往會順便為自己購買啤酒,這樣就會出現啤酒與尿布這兩件看上去不相干的商品經常會出現在同一個購物籃的現象。如果這個年輕的父親在賣場只能買到兩件商品之一,則他很有可能會放棄購物而到另一家商店,直到可以一次同時買到啤酒與尿布為止。沃爾瑪發現了這一獨特的現象,開始在賣場嘗試將啤酒與尿布擺放在相同的區域,讓年輕的父親可以同時找到這兩件商品,並很快地完成購物;而沃爾瑪超市也可以讓這些客戶一次購買兩件商品、而不是一件,從而獲得了很好的商品銷售收入,這就是“啤酒與尿布”故事的由來。

當然“啤酒與尿布”的故事必須具有技術方面的支援。1993年美國學者Agrawal (個人翻譯--艾格拉沃)提出通過分析購物籃中的商品集合,從而找出商品之間關聯關係的關聯演算法,並根據商品之間的關係,找出客戶的購買行為。艾格拉沃從數學及計算機演算法角度提出了商品關聯關係的計算方法——A prior演算法。沃爾瑪從上個世紀90年代嘗試將A prior演算法引入到POS機資料分析中,並獲得了成功,於是產生了“啤酒與尿布”的故事。

可以幫我們做一些海量資料的文字分類甚至語義分析(監督學習)

在文類資訊特徵提取中,向量空間模型(VSM: Vector Space Model),把對文字內容的處理簡化為向量空間中的向量運算,並且它以空間上的相似度表達語義的相似度。它特徵詞條(T1 ,T2 ,…Tn)及其權值Wi來表徵目標文字。在進行資訊匹配時,使用這些特徵項評價未知文字與目標樣本的相關程度。特徵詞條及其權值的選取稱為目標樣本的特徵提取。

比如基於NLP的樸素貝葉斯進行文字分類

那麼將貝葉斯函式利用到工作中,它能幫助我們幹什麼呢?如果生活中你的工作郵件經常收到各種垃圾郵件,對你來說如果能夠有效的攔截和識別這些垃圾郵件是不是很好的一件事,那麼就有了以下做法:

我們現在要對郵件進行分類,識別垃圾郵件和普通郵件,如果我們選擇使用樸素貝葉斯分類器,那目標就是判斷P(“垃圾郵件”|“具有某特徵”)是否大於1/2。現在假設我們有垃圾郵件和正常郵件各1萬封作為訓練集。需要判斷以下這個郵件是否屬於垃圾郵件:

“我司可辦理正規發票(保真)17%增值稅發票點數優惠!”

也就是判斷概率P(“垃圾郵件”|“我司可辦理正規發票(保真)17%增值稅發票點數優惠!”)是否大於1/2。

咳咳,有木有發現,轉換成的這個概率,計算的方法:就是寫個計數器,然後+1 +1 +1統計出所有垃圾郵件和正常郵件中出現這句話的次數啊,具體點說:

如果真的這麼做了,很多人會覺得如果這樣一個句子去做語料庫是不是太low了,傻子才會將文字資訊一句不差的發給所有人或者每次都是同樣的作弊特徵。本身我們能夠窮舉的訓練集是有限的,而句子的可能性則是無限的。那麼,我們就得找到可替代的方案——切詞/分詞

如果以句子作為訓練集,可能它的組合是無限,但是詞語的搭配都是按照語義去搭配的,我們漢語常用字2500個,常用詞語也就56000個。那麼我們再拆詞的時候就能夠抓住詞的作弊特徵。

比如“我司可辦理正規發票,17%增值稅發票點數優惠!”,這句話就比之前那句話少了“(保真)”這個詞,但是意思基本一樣。那我們可以作為訓練集的樣本數量就會增加,這就方便我們計算了。

我們以詞作為特徵去提取作弊特徵這樣我們可供訓練和提取的特徵明顯多了。eg:“正規發票”、“增值稅”可以作為一個單獨的詞語,如果在工作中再建立體套豁免機制豁免本公司白名單使用者,是不是這些詞明顯能夠提高垃圾郵件的攔截。

句子“我司可辦理正規發票,17%增值稅發票點數優惠!”就可以變成(“我”,“司”,“可”,“辦理”,“正規發票”,“保真”,“增值稅”,“發票”,“點數”,“優惠”))。

我們觀察(“我”,“司”,“可”,“辦理”,“正規發票”,“保真”,“增值稅”,“發票”,“點數”,“優惠”),這可以理解成一個向量:向量的每一維度都表示著該特徵詞在文字中的特定位置存在。這種將特徵拆分成更小的單元,依據這些更靈活、更細粒度的特徵進行判斷的思維方式,在自然語言處理與機器學習中都是非常常見又有效的。

因此貝葉斯公式就變成了:

我們找了個最簡單常見的例子:垃圾郵件識別,說明了一下樸素貝葉斯進行文字分類的思路過程。基本思路是先區分好訓練集與測試集,對文字集合進行分詞、去除標點符號等特徵預處理的操作,然後使用條件獨立假設,將原概率轉換成詞概率乘積,再進行後續的處理。

貝葉斯公式 + 條件獨立假設 = 樸素貝葉斯方法

物以類聚、人以群分-聚類分析(非監督學習)

經常我們會聽到一句俗話:物以類聚,人以群分,聚類分析就是將物理或抽象物件的集合分成由類似的物件組成的多個類的過程。但是聚類和分類不同的是,分類是監督學習;聚類是非監督學習 ,聚類所要求劃分的類是未知的。

聚類分析被應用於很多方面,在商業上,聚類分析被用來發現不同的客戶群,並且通過購買模式刻畫不同的客戶群的特徵;在生物上,聚類分析被用來動植物分類和對基因進行分類,獲取對種群固有結構的認識;在地理上,聚類能夠幫助在地球中被觀察的資料庫商趨於的相似性;在保險行業上,聚類分析通過一個高的平均消費來鑑定汽車保險單持有者的分組,同時根據住宅型別,價值,地理位置來鑑定一個城市的房產分組;在因特網應用上,聚類分析被用來在網上進行文件歸類來修復資訊。

比如利用word2vec對關鍵詞進行聚類,加入我們要知道新聞的推薦和關鍵詞有什麼聯絡?首先析,我們收集一批資料,這裡不可能一下子就得到所有詞的集合,最常見的方法是自己寫個爬蟲去收集網頁上的資料,這裡的資料應該說越多越好。其次,我們開始分詞,將一些非文字的資訊去掉,這樣有助於對文字聚類的時候不會出現干擾項。然後利用谷歌開源的word2vec演算法進行聚類分析,得到如下;

(圖片來源於Felven個人部落格,由於word2vec計算的是餘弦值,距離範圍為0-1之間,值越大代表這兩個詞關聯度越高,所以越排在上面的詞與輸入的詞越緊密。)

此外,還有迴歸分析(線性和非線性迴歸分析)、主成分分析(降維分析)等,都是機器學習中必不可少的模型分析。總之,機器學習從20世紀50年代中葉到60年代中葉到現在不斷的在拓展新的領域,可能隨著人工智慧的興起,機器學習也將大放異彩!

 

原文地址:https://baijiahao.baidu.com/s?id=1560315386534131&wfr=spider&for=pc