Python機器學習iris數據集預處理和模型訓練方式
一、iris數據集簡介
iris數據集的中文名是安德森鳶尾花卉數據集,英文全稱是Anderson`s Iris data set。iris包含150個樣本,對應數據集的每行數據。
每行數據包含每個樣本的四個特征和樣本的類別信息,所以iris數據集是一個150行5列的二維表。
通俗地說,iris數據集是用來給花做分類的數據集,每個樣本包含了花萼長度、花萼寬度、花瓣長度、花瓣寬度四個特征(前4列),我們需要建立一個分類器,分類器可以通過樣本的四個特征來判斷樣本屬于山鳶尾(setosa)、變色鳶尾(versicolor)、維吉尼亞鳶尾(virginica)這三個名詞都是花的品種。iris的每個樣本都包含了品種信息,即目標屬性(第5列,也叫target或label)
如圖所示部分數據:
iris在機器學習中的應用:
- 屬于監(jiān)督式學習應用:根據花的四個特征預測鳶尾花卉屬于(iris-setosa,iris-versicolour,iris-virginica)中的那一品種。
- 機器學習中經典案例,簡單而具有代表性。
二、基本數據操作和模型訓練
1.加載iris數據集
# iris數據集加載 from sklearn import datasets iris = datasets.load_iris()
2.展示所有數據
#展示數據 print(iris.data )
3.展示每列的屬性名
print(iris.feature_names)
4.展示輸出目標結果以及結果的含義
print(iris.target) print(iris.target_names)
5.查看輸入和輸出數據類型
print(type(iris.data)) print(type(iris.target))
6.確認行列維度
print(iris.data.shape) print(iris.target.shape)
7.給x,y賦值
X =iris.data Y = iris.target
8.利用knn模型進行預測結果
from sklearn.neighbors import KNeighborsClassifier #創(chuàng)建實例,假設k值為1 knn = KNeighborsClassifier(n_neighbors=1) #訓練數據集模型 knn.fit(x,y)
9.給定特征的值預測花的品種
#預測某種花的品種 knn.predict([[1,2,3,4]])
得到數組的數據 “2” ,它代表的是花萼長度為1、花萼寬度為2、花瓣長度為3、花瓣寬度為4的鳶尾花卉預測結果的品種是第三種:維吉尼亞鳶尾(virginica)
#多種花的預測 x_test = [[1,2,3,4],[2,4,1,2]] knn.predict(x_test) `
得到數組的數據 “2” 和 “0”,它代表的是
- 花萼長度為1、花萼寬度為2、花瓣長度為3、花瓣寬度為4的鳶尾花卉預測結果的品種是第三種:維吉尼亞鳶尾(virginica)
- 花萼長度為2、花萼寬度為4、花瓣長度為1、花瓣寬度為2的鳶尾花卉預測結果的品種是第一種:山鳶尾(setosa)
總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Python使用psutil對系統(tǒng)數據進行采集監(jiān)控
psutil庫可以實時獲取系統(tǒng)的一些信息,這樣就可以達到實時監(jiān)控系統(tǒng)的目的。本文對詳細講解了ython使用psutil對系統(tǒng)數據進行采集監(jiān)控,感興趣的朋友可以看一看2021-08-08Python?hashlib模塊與哈希算法保護數據完整性教程
hashlib模塊為Python提供了一種簡便的方式來使用各種哈希算法,如MD5、SHA-1、SHA-256等,哈希函數廣泛用于密碼學、數據完整性驗證和安全存儲等領域2024-01-01Python自動檢測requests所獲得html文檔的編碼
這篇文章主要為大家詳細介紹了如何通過Python自動檢測requests實現獲得html文檔的編碼,文中的示例代碼講解詳細,感興趣的可以了解下2024-11-11