天天看點

大話機器學習(一)--Go for it!

本系列教程适合對機器學習一無所知,甚至文科森哦。反正不會有數學公式,I promise!教程基于sklearn的python機器學習庫。

打開機器學習的面紗,就是這樣。

首先要有利器。工欲善其事必先利其器。看我下面這個文章吧,下載下傳一下這個軟體,然後我們就可以開始了。

http://blog.csdn.net/qtlyx/article/details/49742483

1.什麼是機器學習?

資料挖掘,深度學習,模式識别,大資料挖掘。一切聽起來很深奧的樣子。其實呢,就是一句話:分類和預測!說的那麼好聽就是在做這兩件事。

2.線性回歸

馬上開始!有一種東西叫做最小二乘法,不知道也沒有關系。

大話機器學習(一)--Go for it!

話說有這樣一張圖,上面有這麼多點點是已知的,現在問題來了,告訴你橫軸的值是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_#傳回最小二乘法的那根直線的。分别是常數和一次項系數。           

複制

大話機器學習(一)--Go for it!

把直線畫出來的話的,就是這樣的。然後就可以快樂的拿這條直線與預測了。

機器學習,其實就是這麼簡單。