Python实战:机器学习算法

本文将详细介绍Python中常用的机器学习算法,包括线性回归、逻辑回归、决策树、随机森林、支持向量机等。

一、引言

机器学习是人工智能的一个重要分支,它使计算机能够从数据中学习并做出决策。Python作为一门流行的编程语言,拥有丰富的机器学习库,如Scikit-learn、TensorFlow、Keras等,可以方便地进行机器学习的实践。

二、线性回归

线性回归是一种用于预测连续值的监督学习算法。在Python中,可以使用Scikit-learn库的LinearRegression类进行线性回归。

python 复制代码
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split
from sklearn.metrics import mean_squared_error
# 创建数据集
X = [[1, 1], [1, 2], [2, 2], [2, 3]]
y = [1, 2, 2, 3]
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
# 创建线性回归模型
model = LinearRegression()
# 训练模型
model.fit(X_train, y_train)
# 预测测试集
y_pred = model.predict(X_test)
# 计算均方误差
mse = mean_squared_error(y_test, y_pred)
print("Mean squared error: ", mse)

三、逻辑回归

逻辑回归是一种用于预测二元分类标签的监督学习算法。在Python中,可以使用Scikit-learn库的LogisticRegression类进行逻辑回归。

python 复制代码
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score
# 创建数据集
X = [[0.5, 0.5], [0.75, 0.75], [1.0, 1.0], [1.25, 1.25]]
y = [0, 0, 1, 1]
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
# 创建逻辑回归模型
model = LogisticRegression()
# 训练模型
model.fit(X_train, y_train)
# 预测测试集
y_pred = model.predict(X_test)
# 计算准确率
accuracy = accuracy_score(y_test, y_pred)
print("Accuracy: ", accuracy)

四、决策树

决策树是一种用于分类和回归的监督学习算法。在Python中,可以使用Scikit-learn库的DecisionTreeClassifier类进行分类决策树。

python 复制代码
from sklearn.tree import DecisionTreeClassifier
# 创建数据集
X = [[2, 3], [3, 3], [3, 4], [5, 4]]
y = [0, 0, 1, 1]
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
# 创建决策树分类模型
model = DecisionTreeClassifier()
# 训练模型
model.fit(X_train, y_train)
# 预测测试集
y_pred = model.predict(X_test)
# 计算准确率
accuracy = accuracy_score(y_test, y_pred)
print("Accuracy: ", accuracy)

五、随机森林

随机森林是一种集成学习算法,它由多个决策树组成。在Python中,可以使用Scikit-learn库的RandomForestClassifier类进行随机森林分类。

python 复制代码
from sklearn.ensemble import RandomForestClassifier
# 创建数据集
X = [[2, 3], [3, 3], [3, 4], [5, 4]]
y = [0, 0, 1, 1]
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
# 创建随机森林分类模型
model = RandomForestClassifier(n_estimators=10)
# 训练模型
model.fit(X_train, y_train)
# 预测测试集
y_pred = model.predict(X_test)
# 计算准确率
accuracy = accuracy_score(y_test, y_pred)
print("Accuracy: ", accuracy)

六、支持向量机

支持向量机是一种用于分类和回归的监督学习算法。在在Python中,可以使用Scikit-learn库的SVC类进行支持向量机分类。

python 复制代码
from sklearn.svm import SVC
# 创建数据集
X = [[2, 3], [3, 3], [3, 4], [5, 4]]
y = [0, 0, 1, 1]
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
# 创建支持向量机分类模型
model = SVC(kernel='linear')
# 训练模型
model.fit(X_train, y_train)
# 预测测试集
y_pred = model.predict(X_test)
# 计算准确率
accuracy = accuracy_score(y_test, y_pred)
print("Accuracy: ", accuracy)

七、总结

本文详细介绍了Python中常用的机器学习算法,包括线性回归、逻辑回归、决策树、随机森林、支持向量机等。在实际应用中,选择合适的机器学习算法非常重要。通常需要根据数据的特点和问题的需求来选择合适的算法。此外,模型的训练和优化也是机器学习中的关键环节,需要不断地调整参数和超参数,以获得更好的性能。在未来的学习中,我们可以进一步探索更多的机器学习算法,如神经网络、聚类算法、降维算法等,并深入了解它们的原理和应用。通过不断的学习和实践,我们可以更好地掌握机器学习技术,为解决实际问题提供有力的支持。

相关推荐
hujinyuan201603 分钟前
2026年3月 中国电子学会青少年软件编程(Python)三级考试试卷 真题及答案
java·python·算法
开开心心就好12 分钟前
支持多显示器的Windows高效分屏工具
运维·python·科技·游戏·计算机外设·ocr·powerpoint
froyoisle13 分钟前
CSP-J 历年复赛 T1 及解析(2019~2025)
数据结构·c++·算法·csp-j·csp·算法竞赛·信息学
珊瑚里的鱼29 分钟前
【动态规划】打家劫舍Ⅱ
算法·动态规划
chao18984430 分钟前
SGM(Semi-Global Matching)立体匹配算法 — C++ 实现
开发语言·c++·算法
黎阳之光1 小时前
数智赋能水厂全链路安全|黎阳之光以视频孪生技术落地供水精细化管控
人工智能·物联网·算法·安全·数字孪生
YXWik61 小时前
图片 OCR 文字提取 (Python + AI 模型(ModelScope))
人工智能·python·ocr
NOVAnet20231 小时前
AI 全球化部署网络瓶颈:算法模型跨地域、跨云互联核心痛点解析
算法·ai·sd-wan·专线·跨区域
Thecozzy1 小时前
写文档教 AI 用代码
开发语言·python
Misnearch1 小时前
1、数组/字符串
java·数据结构·算法