1. 程式人生 > >看看滴滴大牛是如何從碼農到AI的華麗轉身

看看滴滴大牛是如何從碼農到AI的華麗轉身

作者簡介

     網名:小豬觀察員,來自浙江大學軟體工程的碩士研究生。在滴滴研究院大資料領航項       目中扮演核心成員,是位資深資料探勘、資料分析專家;

來自大神的自述: 

“本人碼農一枚,因公司需要開發使用者畫像,開始接觸機器學習。然後打開了另一扇門。個人認為機器學習對於碼農來說應該是一門必修課,就猶如java一樣,未來的開發中,機器學習會更加的普遍,成為一個個外掛。

從2017年5月27日,在柯潔與阿爾法圍棋的人機大戰之後。深度學習火遍了整個業界。從2013年開始,機器學習就已經開始升溫,只是在alphgo之後進入白熾化。本文主要是從一個碼農的角度介紹如何入手學習機器學習,如有不妥之處,還望指點。”

機器學習關鍵

   機器學習關鍵是要弄明白四點: 
1)什麼是機器學習 
2)機器什麼時候可以學習。 
3)機器是怎麼學習的,大部分情況我們都將注意力集中到這裡。 
4)如何讓機器學習更好,比如增加資料量,正則化,通過aggregation方式等等。 
推薦林軒田的機器學習基石和技法課程: 
https://www.csie.ntu.edu.tw/~htlin/course/ml15fall/
把各種機器學習演算法都串起來了,從線性模型中的pla到svm到邏輯迴歸,然後到非線性模型,模型之間的關聯,模型的優缺點都做了詳細的描述。感覺入門還是很不錯的,數學基礎也不用太多。

機器學習定義

何為機器學習,何為學習。如果一個系統能夠通過執行它的過程,而改善其效能,這就是學習。機器學習也有其他定義, “機器學習是一門人工智慧的科學,該領域的主要研究物件是人工智慧,特別是如何在經驗學習中改善具體演算法的效能”。 “機器學習是對能通過經驗自動改進的計算機演算法的研究”。 “機器學習是用資料或以往的經驗,以此優化計算機程式的效能標準。”

人類的學習又是如何的呢?當我們學習一個個單詞,學習數學,幾何,歷史等等,識別他人的聲音,辨別物體。形式化的說,我們大腦獲取外界輸入,聽覺、視覺、觸覺、味覺、嗅覺等輸入訊號,經過大腦神經網路處理,訊號轉換為相應特徵,最後轉換成知識儲存大腦中。最後進行各種行為反應。

機器學習分類

機器學習從學習方法上,分為監督學習、非監督學習、強化學習以及半監督學習。          

監督學習

監督學習,是對於訓練集有相應的正確輸出。比如給定一組資料x:{房屋面積、朝向、精裝修否},Y{房價}。然後給定一套房子的面積、朝向,輸出房價。監督學習有如下兩類:

分類問題,比如我們要從一堆人中辨別誰是好人,誰是壞人。這就是分類問題。簡單的講就是對一個問題,我們將其離散化到一個維度上。手寫識別,典型的資料集是:[MNIST](http://yann.lecun.com/exdb/mnist/)。

迴歸問題,比如預測明天的溫暖,根據今天以及最近一週的情況,給出明天的氣溫,溼度等。The target output is a real number or a whole vector of real numbers。

常用的監督學習演算法有:xgboost、gbdt、LR、決策樹、SVM、貝葉斯分類器、k鄰近等。當然深度學習也可以算作是監督學習,比如卷積神經網路進行手寫識別。

非監督學習

非監督學習,其實到現在為主基本數被忽略的物件,在未加標籤的資料中,試圖找到隱藏的結構。因為提供給學習者的例項是未標記的,因此沒有錯誤或報酬訊號來評估潛在的解決方案。因為就是給一堆資料給你,沒有標記這個資料是好還是壞,一般採用聚類的方式。比如常見的k-means聚類、密度聚類等。

非監督學習可以用來降維,如LDA(線性判別分析)、PCA(主成分分析)。

強化學習

強化學習我這裡採用Geoffrey Hinton  的定義:In reinforcement learning, the output is an action or sequence of actions and the only supervisory signal is an occasional scalar reward. 比如我們要訓練機器下棋,電腦輸出一個步驟,返回出這個棋局的好壞,如此反覆迴圈,直到電腦能夠記住怎麼下棋才是好琪。 

常用的有蒙特卡洛強化學習、模仿學習等

學習資料進階

作為一個從碼農到學習機器學習的過程中,也是一個自我學習,自我探索的過程。

數學知識是必備的:線性代數、概率論、高等數數學,當然其他的比如資訊理論,統計學,能多學點就多學點嘍

推薦如下的學習資料:

[統計學習方法](https://item.jd.com/10975302.html)

[機器學習](https://item.jd.com/11867803.html)

[深度學習](https://item.jd.com/13188291644.html)

MLAPP及PRML,參考連結:https://www.52ml.net/11578.html

視訊推薦

Geoffrey Hinton :https://www.coursera.org/learn/neural-networks/home

Andrew Ng: https://www.coursera.org/learn/machine-learning/home

林軒田 :https://www.csie.ntu.edu.tw/~htlin/course/ml15fall/

看完這些差不多入門了,要想進一步提升,

**看論文

看論文

看論文**

https://arxiv.org/pdf/1603.02754.pdf

https://www.researchgate.net/publication/220416607_Distributed_Optimization_and_Statistical_Learning_via_the_Alternating_Direction_Method_of_Multipliers

https://arxiv.org/

http://www.gitxiv.com/  這個網站中是有原始碼的,在git上可以找到。

等等

如果有關於學習、工作或者行業相關的問題想問大牛的,可以留言哦;小編彙總後會為您們專門諮詢他哦。

今日贈言

相見即緣,留下您的腳步,分享您的行程!

推薦閱讀:

python量化學習篇

python學習篇

機器學習篇