一、鳶尾花數據集介紹
鳶尾花數據集是一個經典的多分類問題數據集。數據集中包含了3個品種的鳶尾花:Setosa、Versicolour和Virginica。每個樣本有4個特徵:花萼長度、花萼寬度、花瓣長度和花瓣寬度。共有150個樣本,每種品種分別有50個樣本。
鳶尾花數據集是機器學習領域研究的經典基礎數據集之一,常被用於分類、聚類、降維等任務。
二、有關鳶尾花的數據集
鳶尾花數據集由統計學家R.A. Fisher於1936年採集,並於1936年發表在《Annals of Eugenics》。由於其數據質量高、難度適宜,所以被廣泛應用於機器學習領域。鳶尾花數據集是一份經典的無損數據集,是機器學習的一個「Hello, World!」級別的第一個實例。
三、鳶尾花數據集下載
from sklearn import datasets
iris = datasets.load_iris()
我們可以使用Scikit-learn的datasets庫來加載鳶尾花數據集,代碼如上。
四、是否可以用代碼輸出鳶尾花數據集
print(iris["data"][:5])
print(iris["target"][:5])
使用如上代碼可以輸出鳶尾花數據集的前五個特徵和標籤。
五、鳶尾花數據集導入
Scikit-learn提供了數據集劃分的工具函數train_test_split,可以將數據集分為訓練集和測試集,代碼如下:
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(
iris["data"], iris["target"], random_state=0)
六、如何把鳶尾花數據集分成兩份
除了train_test_split之外,我們還可以手動將數據集進行分割,代碼如下:
iris_data1 = iris["data"][:75]
iris_data2 = iris["data"][75:]
iris_target1 = iris["target"][:75]
iris_target2 = iris["target"][75:]
七、鳶尾花數據集劃分
我們可以使用決策樹、SVM、隨機森林等模型進行訓練和測試,代碼如下:
from sklearn.tree import DecisionTreeClassifier
from sklearn import svm
from sklearn.ensemble import RandomForestClassifier
#決策樹模型
clf = DecisionTreeClassifier(random_state=0)
clf.fit(X_train, y_train)
print("決策樹模型評分:{:.2f}".format(clf.score(X_test, y_test)))
#SVM模型
clf = svm.SVC(kernel="linear", C=1)
clf.fit(X_train, y_train)
print("SVM模型評分:{:.2f}".format(clf.score(X_test, y_test)))
#隨機森林模型
clf = RandomForestClassifier(n_estimators=100, random_state=0)
clf.fit(X_train, y_train)
print("隨機森林模型評分:{:.2f}".format(clf.score(X_test, y_test)))
八、運用所學模型解析鳶尾花數據集
我們選擇K-Means算法對鳶尾花數據集進行聚類,代碼如下:
from sklearn.cluster import KMeans
x = iris["data"]
estimators = [('k_means_iris_8', KMeans(n_clusters=8))]
fignum = 1
titles = ['8 clusters']
for name, est in estimators:
fig = plt.figure(fignum, figsize=(4, 3))
ax = Axes3D(fig, rect=[0, 0, .95, 1], elev=48, azim=134)
est.fit(x)
labels = est.labels_
ax.scatter(x[:, 3], x[:, 0], x[:, 2],
c=labels.astype(np.float), edgecolor='k')
ax.set_xlabel('Petal width')
ax.set_ylabel('Sepal length')
ax.set_zlabel('Petal length')
ax.set_title(titles[fignum - 1])
ax.dist = 12
fignum = fignum + 1
plt.show()
九、鳶尾花數據集的格式
鳶尾花數據集是一個經典的多分類問題數據集。數據集中包含了3個品種的鳶尾花:Setosa、Versicolour和Virginica。每個樣本有4個特徵:花萼長度、花萼寬度、花瓣長度和花瓣寬度。共有150個樣本,每種品種分別有50個樣本。
其特徵如下:
- 花萼長度(cm)
- 花萼寬度(cm)
- 花瓣長度(cm)
- 花瓣寬度(cm)
原創文章,作者:EJAS,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/134665.html