分類-鳶尾花分類

目錄

基本步驟

決策樹(分類)

導入鳶尾花數據集

賦值給x與y

劃分數據集

?導入決策樹模型

實例化

訓練

?編輯?導入計算準確率的庫

計算準確率

隨機森林(分類)

導入鳶尾花的數據集,

賦值x,y

取后一百組

劃分數據集?

導入隨機森林分類模型

實例化模型

訓練模型?

?預測訓練集數據?

預測測試集數據?

?導入計算準確率的庫

對訓練集和測試集求準確率?

邏輯回歸

導入數據

對x,y賦值

劃分數據集?

導入模型

實例化模型

訓練?

預測訓練集和測試集?

看準確率?

支持向量機

導庫

賦值x,y

劃分數據集?

導SVC的庫

線性核?

實例化

訓練?

預測訓練集,測試集?

求準確率?

?編輯高斯核

實例化

訓練

預測訓練集,測試集

求準確率

KNN分類?

導庫

給x,y賦值

劃分數據集

導庫

實例化

訓練

預測訓練集與測試集

求準確率


基本步驟

導入數據集

賦值x,y

劃分數據集

導入模型

實例化模型

訓練模型

使用模型進行預測

求準確率

決策樹(分類)

導入鳶尾花數據集

賦值給x與y

#導入鳶尾花數據集,并賦值x,y
from sklearn.datasets import load_iris
data = load_iris()
x = data['data']
x
y = data['target']
y

#先研究二分類問題,選擇前一百的數據
x = x[:100]
y = y[:100]

?

劃分數據集

?導入決策樹模型

實例化

訓練

#導入我們的決策樹分類模型
from sklearn.tree import DecisionTreeClassifier#實例化模型
#設置最長深度為3,太深容易過擬合
model = DecisionTreeClassifier(max_depth = 3)#訓練模型
model.fit(X_train,y_train)

對訓練集和測試集進行預測

?導入計算準確率的庫

計算準確率

#準確率的庫
from sklearn.metrics import accuracy_score

這么厲害?直接干到1了,難以置信,于是查了一下,發現是我沒常識了,對不起?

于是我們修改代碼,選擇的是后100數據?

#先研究二分類問題,選擇后一百的數據
x = x[50:]
y = y[50:]

然后其他的不用改,從頭 按 shift+enter 運行到最后

?可以,這個結果才是比較正常的

也可以計算其他的指標比如MSE,R^2

from sklearn.metrics import mean_squared_error
mean_squared_error(真實值,預測值)
from sklearn.metrics import r2_score
r2_score(真實值,預測值)

隨機森林(分類)

導入鳶尾花的數據集,

賦值x,y

取后一百組

#導入鳶尾花的數據集,賦值x,y,取后一百組,與上面一樣
from sklearn.datasets import load_iris
data = load_iris()
x = data['data']
y = data['target']
#先研究二分類問題,選擇后一百的數據
x = x[50:]
y = y[50:]

劃分數據集?

#劃分數據集
from sklearn.model_selection import train_test_split
X_train,X_test,y_train,y_test=train_test_split(x,y,test_size=0.2,random_state=10)

導入隨機森林分類模型

實例化模型

訓練模型?

#導入我們的隨機森林分類模型
from sklearn.ensemble import RandomForestClassifier#實例化模型
model = RandomForestClassifier()#訓練模型
model.fit(X_train,y_train)

?預測訓練集數據?

#預測訓練集數據
y_train_pred = model.predict(X_train)
y_train_pred

預測測試集數據?

#預測測試集數據
y_test_pred = model.predict(X_test)
y_test_pred 

?導入計算準確率的庫

#準確率
from sklearn.metrics import accuracy_score

對訓練集和測試集求準確率?

#訓練集
accuracy_score(y_train,y_train_pred)
#測試集
accuracy_score(y_test,y_test_pred)

這個模型還是不錯的

邏輯回歸

導入數據

對x,y賦值

#導入鳶尾花的數據集,賦值x,y,取后一百組,與上面一樣
from sklearn.datasets import load_iris
data = load_iris()
x = data['data']
y = data['target']
#先研究二分類問題,選擇后一百的數據
x = x[50:]
y = y[50:]

劃分數據集?

#劃分數據集
from sklearn.model_selection import train_test_split
X_train,X_test,y_train,y_test=train_test_split(x,y,test_size=0.2,random_state=10)

導入模型

實例化模型

訓練?

#導入我們的隨機森林分類模型
from sklearn.ensemble import RandomForestClassifier#實例化模型
model = RandomForestClassifier()#訓練模型
model.fit(X_train,y_train)

預測訓練集和測試集?

#預測訓練集數據
y_train_pred = model.predict(X_train)
y_train_pred
#預測測試集數據
y_test_pred = model.predict(X_test)
y_test_pred 

看準確率?

#準確率
from sklearn.metrics import accuracy_score
#訓練集
accuracy_score(y_train,y_train_pred)
#測試集
accuracy_score(y_test,y_test_pred)

結果還是不錯的?

支持向量機

導庫

賦值x,y

#導入鳶尾花的數據集,賦值x,y,取后一百組,與上面一樣
from sklearn.datasets import load_iris
data = load_iris()
x = data['data']
y = data['target']
#先研究二分類問題,選擇后一百的數據
x = x[50:]
y = y[50:]

劃分數據集?

#劃分數據集
from sklearn.model_selection import train_test_split
X_train,X_test,y_train,y_test=train_test_split(x,y,test_size=0.2,random_state=18)

導SVC的庫

#導庫
from sklearn.svm import SVC
#實例化
#SVC有兩個核

線性核?

實例化

訓練?

# 線性核
model_linear = SVC(kernel='linear', C=1.0)
model_linear.fit(X_train,y_train)

預測訓練集,測試集?

#預測訓練集
#預測訓練集數據
y_train_pred = model_linear.predict(X_train)
y_train_pred
#預測測試集數據
y_test_pred = model_linear.predict(X_test)
y_test_pred 

求準確率?

#準確率
from sklearn.metrics import accuracy_score
#訓練集
print("model_linear訓練集準確率:")
print(accuracy_score(y_train,y_train_pred))
#測試集
print("model_linear測試集準確率:")
print(accuracy_score(y_test,y_test_pred))

高斯核

實例化

訓練

# 高斯核(RBF)
model_rbf = SVC(kernel='rbf', gamma=0.1, C=1.0)
model_rbf.fit(X_train,y_train)

預測訓練集,測試集

#預測訓練集
#預測訓練集數據
y_train_pred = model_rbf.predict(X_train)
y_train_pred
#預測測試集數據
y_test_pred = model_rbf.predict(X_test)
y_test_pred 

求準確率

#準確率
from sklearn.metrics import accuracy_score
#訓練集
print("model_rbfr訓練集準確率:")
print(accuracy_score(y_train,y_train_pred))
#測試集
print("model_rbf測試集準確率:")      
print(accuracy_score(y_test,y_test_pred))

KNN分類?

導庫

給x,y賦值

#導入鳶尾花的數據集,賦值x,y,取后一百組,與上面一樣
from sklearn.datasets import load_iris
data = load_iris()
x = data['data']
y = data['target']
#先研究二分類問題,選擇后一百的數據
x = x[50:]
y = y[50:]

劃分數據集

#劃分數據集
from sklearn.model_selection import train_test_split
X_train,X_test,y_train,y_test=train_test_split(x,y,test_size=0.2,random_state=20)

導庫

實例化

訓練

#導庫
from sklearn.neighbors import KNeighborsClassifier#實例化
model = KNeighborsClassifier(n_neighbors=3)#訓練
model.fit(X_train, y_train)

預測訓練集與測試集

#預測訓練集數據
y_train_pred = model.predict(X_train)
y_train_pred
#預測測試集數據
y_test_pred = model.predict(X_test)
y_test_pred 

求準確率

#準確率
from sklearn.metrics import accuracy_score
#訓練集
accuracy_score(y_train,y_train_pred)
#測試集
accuracy_score(y_test,y_test_pred)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/91529.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/91529.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/91529.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

單元測試、系統測試、集成測試知識詳解

🍅 點擊文末小卡片,免費獲取軟件測試全套資料,資料在手,漲薪更快 一、單元測試的概念單元測試是對軟件基本組成單元進行的測試,如函數或一個類的方法。當然這里的基本單元不僅僅指的是一個函數或者方法,有可…

Python初學OpenCV:圖像預處理進階指南(二)

——實戰技巧與創新應用 > 圖像預處理是計算機視覺的"基石",掌握它等于獲得了讓機器"看懂世界"的魔法棒。 在上一篇教程中,我們學習了OpenCV的基礎預處理操作。本篇將帶你進入圖像預處理的進階世界,通過**實戰案例+創新應用**,教你如何組合多種技…

UML類圖--基于大話設計模式

類 一般矩形框代表類&#xff0c;類圖分為三層&#xff0c;第一層顯示類的名稱&#xff0c;如果是抽象類&#xff0c;則就用斜體顯示&#xff0c;如果是接口&#xff0c;則使用<<interface>>&#xff1b;第二層是類的特性&#xff0c;通常就是字段和屬性&#xff1…

數據結構 ArrayList與順序表

本節目標&#xff1a;了解線性表和順序表能夠實現簡單的順序表及其基本操作認識 ArrayList類并且知道如何去使用本篇文章正式進入數據結構&#xff01;進入之前&#xff0c;先了解一下什么是線性表和順序表。1.線性表與順序表線性表線性表&#xff08; linear list &#xff09…

佳維視工業顯示器在除塵與過濾設備中的應用

工業顯示器憑借高可靠性、防護性能、高顯示質量及多功能性&#xff0c;在除塵與過濾設備中扮演著關鍵角色&#xff0c;其應用貫穿設備監控、數據管理、故障診斷及遠程維護全流程&#xff0c;顯著提升了設備的運行效率、穩定性和智能化水平。以下是具體應用場景及優勢分析&#…

svn與git Merge重要區別講解

SVN有哪些merge方式 總的來說&#xff0c;SVN 的 merge 主要有以下 五種類型&#xff1a;1. 同步合并 (Sync Merge) / 追趕合并 (Catch-up Merge) 這是在分支開發過程中最常用的一種合并。目的&#xff1a;讓你的功能分支保持最新&#xff0c;及時獲取主干&#xff08;trunk&am…

Vue 3 入門教程5 - 生命周期鉤子

一、生命周期概述Vue 組件從創建到銷毀的整個過程稱為生命周期&#xff0c;在這個過程中&#xff0c;Vue 會自動觸發一系列的函數&#xff0c;這些函數被稱為生命周期鉤子。通過生命周期鉤子&#xff0c;我們可以在組件的不同階段執行特定的操作&#xff0c;例如初始化數據、發…

負載均衡Haproxy

簡介 HAProxy是一款高性能、開源的負載均衡器與反向代理服務器&#xff0c;主要用于 HTTP、TCP等協議的流量分發&#xff0c;廣泛應用于高并發、高可用的網絡架構中 HAProxy是法國威利塔羅&#xff08;Willy Tarreau&#xff09;使用C語言開發的一個開源軟件 企業版&#xff1a…

PostgreSQL鎖機制詳解:從并發控制到死鎖檢測

PostgreSQL鎖詳解 ————向逍xiangxiaohighgo.com 首先要講鎖的話&#xff0c;必須得先了解并發控制。數據庫中的對象都是共享的&#xff0c;如果同時間不同的用戶對同一個對象進行修改&#xff0c;就會出現數據不一致的情況。所以如果要實現并發訪問&#xff0c;就需要對這…

【啟發式算法】RRT*算法詳細介紹(Python)

&#x1f4e2;本篇文章是博主人工智能&#xff08;AI&#xff09;領域學習時&#xff0c;用于個人學習、研究或者欣賞使用&#xff0c;并基于博主對相關等領域的一些理解而記錄的學習摘錄和筆記&#xff0c;若有不當和侵權之處&#xff0c;指出后將會立即改正&#xff0c;還望諒…

Docker架構深度解析:從核心概念到企業級實踐

Docker架構深度解析&#xff1a;從核心概念到企業級實踐一、Docker架構全景圖1.1 整體架構示意圖二、核心組件深度解析2.1 Docker Daemon工作機制三、鏡像與容器原理3.1 鏡像分層結構3.2 容器生命周期四、網絡架構詳解4.1 網絡模式對比4.2 Bridge網絡實現原理五、存儲架構與實踐…

PPT自動化 python-pptx - 8: 文本(text)

在使用 python-pptx 庫操作 PowerPoint 文檔時&#xff0c;理解文本的結構和處理方式至關重要。本文將深入探討文本在形狀中的組織層級、訪問方式以及各級別的格式化選項。文本容器與層級結構可容納文本的形狀&#xff1a; 只有自動形狀 (Auto shapes) 和表格單元格 (table cel…

使用realsense進行目標檢測并標識目標深度

涉及知識點都在代碼中注釋了&#xff0c;直接看代碼 // This example is derived from the ssd_mobilenet_object_detection opencv demo // and adapted to be used with Intel RealSense Cameras // Please see https://github.com/opencv/opencv/blob/master/LICENSE#includ…

OpenWrt Network configuration

OpenWrt Network configuration device 和 interface 關系device device 表示底層的網絡設備&#xff0c;如物理網卡、橋接設備&#xff08;bridge&#xff09;、VLAN 設備等。 通過 config device 定義&#xff0c;描述設備類型、端口成員、VLAN 等屬性。 例如&#xff1a;br…

VuePress 使用詳解

一、核心概念 VuePress 是 Vue.js 團隊開發的靜態網站生成器&#xff0c;專為技術文檔優化&#xff0c;具備以下特性&#xff1a; Markdown 優先&#xff1a;原生支持 Markdown 語法擴展Vue 驅動&#xff1a;可在 Markdown 中使用 Vue 組件默認主題優化&#xff1a;內置響應式…

AI大模型前沿:Muyan-TTS開源零樣本語音合成技術解析

AI大模型前沿&#xff1a;Muyan-TTS開源零樣本語音合成技術解析引言&#xff1a;語音合成技術的演進與Muyan-TTS的突破性意義語音合成&#xff08;Text-to-Speech, TTS&#xff09;技術作為人機交互的核心接口之一&#xff0c;自20世紀30年代貝爾實驗室首次嘗試電子語音合成以來…

c# everthing.exe 通信

1 獲取everthing進程 調用 Everything 搜索創建SearchWithEverything函數using Microsoft.Win32; using System; using System.Diagnostics; using System.IO; using System.Management; using System.Text;class EverythingHelper {// 方法 1&#xff1a;從進程獲取路徑publi…

Gitee:中國企業級DevOps平臺的本土化突圍之路

Gitee&#xff1a;中國企業級DevOps平臺的本土化突圍之路 在國內數字化轉型浪潮下&#xff0c;DevOps平臺作為企業研發效能提升的核心引擎&#xff0c;正在經歷從工具到生態的全面升級。作為國內領先的一站式DevOps解決方案&#xff0c;Gitee憑借其本土化優勢與全鏈路服務能力&…

C++法則22:運算符 ::* 和 ->* 和 ::* 是獨特的整體運算符,是不可分的。

C法則22&#xff1a;運算符 ::* 和 ->* 和 ::* 是獨特的整體運算符&#xff0c;是不可分的。1. ::*&#xff08;成員指針聲明符&#xff09;作用&#xff1a;用于聲明一個指向類成員的指針。語法&#xff1a;ReturnType (ClassName::*pointerName) &ClassName::MemberN…

Linux系統管理習題

Linux 系統管理練習題 1.請為此虛擬機配置以下網絡參數&#xff1a; 1&#xff09;主機名&#xff1a;chenyu.example.com &#xff08;將chenyu改成自己名字的全拼&#xff09; 2&#xff09;IP 地址&#xff1a;192.168.100.100/24 3&#xff09;默認網關&#xff1a;192.168…