机器学习经典算法(scikit-learn)

devtools/2024/12/22 13:40:23/

安装库:pip install scikit-learn numpy

  1. 线性回归 (Linear Regression)

在这里插入图片描述

import numpy as np  
import pandas as pd  
from sklearn.model_selection import train_test_split  
from sklearn.linear_model import LinearRegression  
from sklearn.datasets import load_boston  # 加载数据  
boston = load_boston()  
X = boston.data  
y = boston.target  # 划分数据集  
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)  # 创建线性回归模型  
model = LinearRegression()  
model.fit(X_train, y_train)  # 预测  
predictions = model.predict(X_test)  
print(predictions)
  1. Logistic 回归 (Logistic Regression)

在这里插入图片描述

from sklearn.datasets import load_iris  
from sklearn.linear_model import LogisticRegression  # 加载数据  
iris = load_iris()  
X = iris.data  
y = iris.target  # 选择二分类问题  
X_bin = X[y != 2]  
y_bin = y[y != 2]  # 划分数据集  
X_train, X_test, y_train, y_test = train_test_split(X_bin, y_bin, test_size=0.2, random_state=42)  # 创建Logistic回归模型  
model = LogisticRegression()  
model.fit(X_train, y_train)  # 预测  
predictions = model.predict(X_test)  
print(predictions)
  1. 线性判别分析 (Linear Discriminant Analysis, LDA)

在这里插入图片描述

from sklearn.discriminant_analysis import LinearDiscriminantAnalysis  # 使用上面的鸢尾花数据  
lda = LinearDiscriminantAnalysis()  
lda.fit(X_train, y_train)  # 预测  
predictions = lda.predict(X_test)  
print(predictions)
  1. 决策树 (Decision Tree)
    在这里插入图片描述
from sklearn.tree import DecisionTreeClassifier  # 创建决策树模型  
tree_model = DecisionTreeClassifier(random_state=42)  
tree_model.fit(X_train, y_train)  # 预测  
predictions = tree_model.predict(X_test)  
print(predictions)
  1. 朴素贝叶斯 (Naive Bayes)

在这里插入图片描述

from sklearn.naive_bayes import GaussianNB  # 创建朴素贝叶斯模型  
nb_model = GaussianNB()  
nb_model.fit(X_train, y_train)  # 预测  
predictions = nb_model.predict(X_test)  
print(predictions)
  1. K 最近邻算法 (K-Nearest Neighbors)

在这里插入图片描述

from sklearn.neighbors import KNeighborsClassifier  # 创建KNN模型  
knn_model = KNeighborsClassifier(n_neighbors=3)  
knn_model.fit(X_train, y_train)  # 预测  
predictions = knn_model.predict(X_test)  
print(predictions)
  1. 学习向量量化 (Learning Vector Quantization)
    学习向量量化可以使用 KNN 的变种,通常在实际使用中与 KNN 一起。
    在这里插入图片描述

  2. 支持向量机 (Support Vector Machine)

在这里插入图片描述

from sklearn.svm import SVC  # 创建支持向量机模型  
svm_model = SVC(kernel='linear')  
svm_model.fit(X_train, y_train)  # 预测  
predictions = svm_model.predict(X_test)  
print(predictions)
  1. 袋装法和随机森林 (Bagging and Random Forest)

在这里插入图片描述

 from sklearn.ensemble import RandomForestClassifier  # 创建随机森林模型  
rf_model = RandomForestClassifier(n_estimators=100, random_state=42)  
rf_model.fit(X_train, y_train)  # 预测  
predictions = rf_model.predict(X_test)  
print(predictions)

http://www.ppmy.cn/devtools/144388.html

相关文章

CLION中运行远程的GUI程序

在CLION中运行远程GUI程序,很有可能会遇到下面错误 Gtk-WARNING **: cannot open display: 这是因为远程的GUI程序不能再本地机器上显示。这个问题一般有两种解决方法 通过SSH的ForwardX11的方法,就是将远程的GUI程序显示到本地机器上,一般在…

前端配置跨域的详细指南

在现代Web开发中,跨域资源共享(CORS, Cross-Origin Resource Sharing)是一个非常重要的概念。浏览器出于安全考虑,默认情况下不允许跨域请求。如果你需要在前端与不同源的服务器进行通信,就必须配置跨域支持。本文将介…

redis 在 win10中的使用

执行以下命令安装redis服务 redis-server.exe --service-install redis.windows.conf --loglevel verbose

HTMLCSS:酷炫的3D开关控件

这段代码创建了一个具有 3D 效果的开关控件&#xff0c;当用户点击滑块时&#xff0c;滑块会移动到开关的另一侧&#xff0c;同时改变背景颜色&#xff0c;模拟开关的开启和关闭状态。动画效果增加了页面的互动性和视觉吸引力。 演示效果 HTML&CSS <!DOCTYPE html>…

html中实用标签dl dt dd(有些小众的标签 但是很好用)

背景描述 html <dl> <dt> <dd>是一组合标签&#xff0c;他们与ol li、ul li标签很相似 但是他却是没有默认前缀并且有缩进的标签 使用方式与table表格的标签一致 使用方式 dt和dd是放于dl标签内&#xff0c;dt与dd处于dl下相同级。就是dt不能放入dd内&am…

AI的进阶之路:从机器学习到深度学习的演变(三)

&#xff08;承接上集&#xff1a;AI的进阶之路&#xff1a;从机器学习到深度学习的演变&#xff08;二&#xff09;&#xff09; 四、深度学习&#xff08;DL&#xff09;&#xff1a;机器学习的革命性突破 深度学习&#xff08;DL&#xff09;作为机器学习的一个重要分支&am…

k8s,理解容器中namespace和cgroups的原理

一旦“程序”被执行起来&#xff0c;它就从磁盘上的二进制文件&#xff0c;变成了计算机内存中的数据、寄存器里的值、堆栈中的指令、被打开的文件&#xff0c;以及各种设备的状态信息的一个集合。像这样一个程序运行起来后的计算机执行环境的总和&#xff0c;就是我们今天的主…

如何在电脑上控制手机?

在现代生活中&#xff0c;通过电脑控制手机已经成为一种高效的工作和娱乐方式。Total Control 是一款实用的电脑端软件&#xff0c;通过USB或Wi-Fi连接&#xff0c;用户可以在电脑上直接操作多台手机,通过电脑键盘输入文字&#xff0c;提高操作效率。特别适合需要大屏操作的用户…