這是一個建立於
的文章,其中的資訊可能已經有所發展或是發生改變。
本系列教程適合對機器學習一無所知,甚至文科森哦。反正不會有數學公式,I promise!教程基於sklearn的python機器學習庫。
開啟機器學習的面紗,就是這樣。
首先要有利器。工欲善其事必先利其器。看我下面這個文章吧,下載一下這個軟體,然後我們就可以開始了。
http://blog.csdn.net/qtlyx/article/details/49742483
1.什麼是機器學習?
資料採礦,深度學習,模式識別,大資料採礦。一切聽起來很深奧的樣子。其實呢,就是一句話:分類和預測!說的那麼好聽就是在做這兩件事。
2.線性迴歸
馬上開始!有一種東西叫做最小二乘法,不知道也沒有關係。
話說有這樣一張圖,上面有這麼多點點是已知的,現在問題來了,告訴你橫軸的值是0.56的點,縱軸的值應該是多少?這就是預測嘍。最最簡單的方法就是最小二乘法,說白了就是找一條直線,能夠很好的預測0.56的點對應的函數值。那怎麼畫出這個直線呢?接下來就是sklearn登場了。http://scikit-learn.org/stable/
這個是sklearn的官網,都很詳細的說明,不過當然不如我通俗啦~Anaconda裡面整合了這個包,直接import就可以了。
import matplotlib.pyplot as plt#畫圖包import numpy as np#sklearn的支援包from sklearn import datasets, linear_model#匯入sklearn中的資料集和線性模型# 讀取一組資料,好像是糖尿病的哦。這不是重點diabetes = datasets.load_diabetes()diabetes_X = diabetes.data[:, np.newaxis, 2]diabetes_X = diabetes_X[:-20]diabetes_y = diabetes.target[:-20]# 重點來了,這裡利用資料建立了一個線性迴歸的類regr = linear_model.LinearRegression()#把資料放進去,說好聽點,就是讓這個模型“學習”一下。資料就是我們的那些點。regr.fit(diabetes_X, diabetes_y)
regr.coef_#返回最小二乘法的那根直線的。分別是常數和一次項係數。
把直線畫出來的話的,就是這樣的。然後就可以快樂的拿這條直線與預測了。機器學習,其實就是這麼簡單。