sklearn 安装_初识sklearn
我的主業是互聯網運營,業余的python愛好者,學習python已經快兩年,主攻網絡爬蟲與數據分析,爬蟲能使用代理ip、打碼平臺、OCR識別、基本的js逆向處理反爬;數據分析主要使用pandas與pyecharts進行可視化,我的部分案例:
但數據存在的終極意義也許并非在最后的可視化,而在于利用大數據進行預測,為運營決策提供幫助,因此萌生學習機器學習的念頭,我會在此記錄我學習sklearn的整個過程,用自己的理解與思路進行記錄,希望能幫到和我一樣的小白,也給自己做個備忘錄。我會在公眾號:新青年TALKS,同步更新。
機器學習簡介[1]
機器學習是人工智能的一個分支。人工智能的研究歷史有著一條從以“推理”為重點,到以“知識”為重點,再到以“學習”為重點的自然、清晰的脈絡。顯然,機器學習是實現人工智能的一個途徑,即以機器學習為手段解決人工智能中的問題。機器學習在近30多年已發展為一門多領域交叉學科,涉及概率論、統計學、逼近論、凸分析、計算復雜性理論等多門學科。機器學習理論主要是設計和分析一些讓計算機可以自動“學習”的算法。機器學習算法是一類從數據中自動分析獲得規律,并利用規律對未知數據進行預測的算法。因為學習算法中涉及了大量的統計學理論,機器學習與推斷統計學聯系尤為密切,也被稱為統計學習理論。算法設計方面,機器學習理論關注可以實現的,行之有效的學習算法。很多推論問題屬于無程序可循難度,所以部分的機器學習研究是開發容易處理的近似算法。
sklearn簡介
scikit-learn 是基于 Python 語言的機器學習工具[2]
- 簡單高效的數據挖掘和數據分析工具
- 可供大家在各種環境中重復使用
- 建立在 NumPy ,SciPy 和 matplotlib 上
- 開源,可商業使用 - BSD許可證
學習理論
- 監督學習
- 就是給機器一堆數據,并告訴它這堆數據對應的準確結果,讓它學會自己分辨。
- 比如:一堆貓和狗的照片給機器,告訴它哪些是貓,哪些是狗,下次有新的圖片時就能自己分辨出來。
- 就是給機器一堆數據,并告訴它這堆數據對應的準確結果,讓它學會自己分辨。
- 非監督學習
- 只給數據,不給結果
- 比如:一堆貓和狗的照片給機器,不告訴他哪些是貓,哪些是狗,但它自己會分為A類和B類,下次有新照片會自動分類。
- 只給數據,不給結果
安裝sklearn
pip install -U scikit-learnsklearn官方案例(鳶尾花)
官方提供了初學者使用的鳶尾花數據,先看數據長什么樣
from sklearn import datasets # 引入數據print(datasets.load_iris())# 查看數據集主要分為兩個部分,data和target,都是ndarray類型,data是特征變量,target是目標值。簡單來說,data是不同鳶尾花類型的特征(花瓣長度寬度啥的),target是類型的分類,0是一類,1是一類,2是一類。所以這個案例是給機器一堆特征值,告訴它對應的目標值,然后測試學習結果。這是一種監督學習。
下面需要在整個數據集里分出訓練集和測試集,sklearn有自己的方法(下面默認已經執行上面的步驟)
from sklearn.model_selection import train_test_split #將數據分為測試集和訓練集 iris = datasets.load_iris() #引入iris鳶尾花數據 iris_x = iris.data #特征變量 iris_y = iris.target #目標值 x_train,x_test,y_train,y_test=train_test_split(iris_x,iris_y,test_size=0.3) #利用train_test_split進行將訓練集和測試集進行分開,test_size占30%隨后建議你自己分別打印x_train(特征變量訓練數據),x_test(特征變量測試數據),y_train(目標值訓練數據),y_test(目標值測試數據)看下結果。
下面將訓練集數據交給機器
from sklearn.neighbors import KNeighborsClassifier knn = KNeighborsClassifier() #引入訓練方法,這是種分類學習方法,稱為k近鄰分類 knn.fit(x_train,y_train) #進行填充測試數據進行訓練因為是個入門案例,我只需要知道KNeighborsClassifier這個東西是一種訓練模型,能進行分類訓練,fit方法是將特征值和其對于的目標值放一起訓練。其他模型或原理也許后面會學到。
經過以上步驟機器已經學會分類,下面進行測試
print(knn.predict(x_test))查看真實目標值
print(y_test)會發現只有一處不同。
據說弄懂這個案例就是機器學習入門了,說實話,我覺得我行了。
我已經開始學習特征工程(就是將能夠影響結果的因素進行特征化,因為機器只認識數字不認識文字),特征工程是影響機器學習最終預測結果的重要因素,根據費曼學習法,我會在自認為學的差不多時再更新,找到自己的不足。
參考
總結
以上是生活随笔為你收集整理的sklearn 安装_初识sklearn的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 初入网络系列笔记(6)TFTP协议
- 下一篇: 【2016.11.16】HTML学习笔记