当前位置: 首页 > news >正文

定制做网站报价网站后台传图片传不了

定制做网站报价,网站后台传图片传不了,如何做网站产品经理,可以写代码的网站有哪些问题吗机器学习实战通常是将理论与实践结合,通过实际的项目或案例,帮助你理解并应用各种机器学习算法。下面是一个简单的机器学习实战例程,使用Scikit-Learn库来完成一个常见的分类任务——**鸢尾花数据集(Iris Dataset)**的…

机器学习实战通常是将理论与实践结合,通过实际的项目或案例,帮助你理解并应用各种机器学习算法。下面是一个简单的机器学习实战例程,使用Scikit-Learn库来完成一个常见的分类任务——**鸢尾花数据集(Iris Dataset)**的分类。我们将通过该数据集来演示数据预处理、模型训练、评估和预测的全过程。

 访问更多内容来源 https://ai.tmqcjr.com

1. 安装所需库

首先,确保你已安装了scikit-learnmatplotlib等库,如果没有,请通过以下命令安装:

 

bash

复制代码

pip install scikit-learn matplotlib

2. 机器学习实战例程

导入必要的库
 

python

复制代码

import numpy as np import matplotlib.pyplot as plt from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split from sklearn.preprocessing import StandardScaler from sklearn.neighbors import KNeighborsClassifier from sklearn.svm import SVC from sklearn.tree import DecisionTreeClassifier from sklearn.ensemble import RandomForestClassifier from sklearn.metrics import classification_report, confusion_matrix, accuracy_score

加载数据集

我们使用Scikit-Learn自带的鸢尾花数据集,这是一个经典的机器学习数据集。

 

python

复制代码

# 加载鸢尾花数据集 iris = load_iris() X = iris.data # 特征数据(花瓣和萼片的长度和宽度) y = iris.target # 标签数据(花的种类)

数据探索

在开始训练模型之前,我们可以对数据进行简单的探索,比如查看数据的维度和前几行。

 

python

复制代码

# 查看数据集的结构 print(f"数据集的特征名称: {iris.feature_names}") print(f"数据集的标签名称: {iris.target_names}") print(f"数据集的特征形状: {X.shape}") print(f"数据集的标签形状: {y.shape}") # 查看前5行数据 print(f"特征数据:\n{X[:5]}") print(f"标签数据:\n{y[:5]}")

数据划分

我们将数据集划分为训练集和测试集,通常使用70%训练,30%测试的比例。

 

python

复制代码

# 划分数据集为训练集和测试集 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42) print(f"训练集的样本数量: {X_train.shape[0]}") print(f"测试集的样本数量: {X_test.shape[0]}")

数据预处理

在使用机器学习模型之前,通常需要对数据进行标准化处理,以便提高模型的性能。

 

python

复制代码

# 数据标准化:将特征缩放至均值为0,方差为1的标准正态分布 scaler = StandardScaler() X_train = scaler.fit_transform(X_train) X_test = scaler.transform(X_test)

训练模型

我们将训练多个机器学习模型进行比较。这里使用常见的几种分类模型:K近邻(KNN)、支持向量机(SVM)、决策树和随机森林。

1. K近邻(KNN)
 

python

复制代码

# 初始化KNN模型并训练 knn = KNeighborsClassifier(n_neighbors=3) knn.fit(X_train, y_train) # 在测试集上评估模型 y_pred_knn = knn.predict(X_test) print("KNN分类报告:") print(classification_report(y_test, y_pred_knn)) print(f"KNN的准确率: {accuracy_score(y_test, y_pred_knn)}")

2. 支持向量机(SVM)
 

python

复制代码

# 初始化SVM模型并训练 svm = SVC(kernel='linear') svm.fit(X_train, y_train) # 在测试集上评估模型 y_pred_svm = svm.predict(X_test) print("SVM分类报告:") print(classification_report(y_test, y_pred_svm)) print(f"SVM的准确率: {accuracy_score(y_test, y_pred_svm)}")

3. 决策树(Decision Tree)
 

python

复制代码

# 初始化决策树模型并训练 dt = DecisionTreeClassifier(random_state=42) dt.fit(X_train, y_train) # 在测试集上评估模型 y_pred_dt = dt.predict(X_test) print("决策树分类报告:") print(classification_report(y_test, y_pred_dt)) print(f"决策树的准确率: {accuracy_score(y_test, y_pred_dt)}")

4. 随机森林(Random Forest)
 

python

复制代码

# 初始化随机森林模型并训练 rf = RandomForestClassifier(n_estimators=100, random_state=42) rf.fit(X_train, y_train) # 在测试集上评估模型 y_pred_rf = rf.predict(X_test) print("随机森林分类报告:") print(classification_report(y_test, y_pred_rf)) print(f"随机森林的准确率: {accuracy_score(y_test, y_pred_rf)}")

评估模型

使用classification_report来评估模型的性能,显示精确度(Precision)、召回率(Recall)和F1-score。accuracy_score则显示整体的分类准确率。

 

python

复制代码

# 显示每个模型的准确率 models = ['KNN', 'SVM', '决策树', '随机森林'] accuracies = [ accuracy_score(y_test, y_pred_knn), accuracy_score(y_test, y_pred_svm), accuracy_score(y_test, y_pred_dt), accuracy_score(y_test, y_pred_rf) ] for model, accuracy in zip(models, accuracies): print(f"{model}的准确率: {accuracy}")

混淆矩阵

为了进一步分析模型的分类效果,可以绘制混淆矩阵。

 

python

复制代码

# 绘制混淆矩阵 def plot_confusion_matrix(cm, classes): plt.figure(figsize=(6, 6)) plt.imshow(cm, interpolation='nearest', cmap=plt.cm.Blues) plt.title('Confusion Matrix') plt.colorbar() tick_marks = np.arange(len(classes)) plt.xticks(tick_marks, classes, rotation=45) plt.yticks(tick_marks, classes) plt.xlabel('Predicted label') plt.ylabel('True label') plt.tight_layout() # KNN模型的混淆矩阵 cm_knn = confusion_matrix(y_test, y_pred_knn) plot_confusion_matrix(cm_knn, iris.target_names) # 显示图形 plt.show()

预测新数据

最后,我们可以使用训练好的模型对新的数据进行预测。

 

python

复制代码

# 使用KNN模型对新样本进行预测 new_data = np.array([[5.1, 3.5, 1.4, 0.2]]) # 一个新的样本(鸢尾花特征) new_data = scaler.transform(new_data) # 标准化 prediction = knn.predict(new_data) print(f"预测的花种类: {iris.target_names[prediction]}")

3. 模型总结

通过上述步骤,我们完成了以下内容:

  1. 数据加载与预处理:加载鸢尾花数据集并进行标准化处理。
  2. 模型训练与评估:训练了4个常见的机器学习模型(KNN、SVM、决策树和随机森林),并通过classification_reportaccuracy_score评估了各个模型的性能。
  3. 模型预测:使用训练好的模型对新数据进行了预测。

4. 总结

  • KNN:适合用于小型数据集,计算复杂度较高。
  • SVM:对于中小型数据集效果不错,但训练时间较长。
  • 决策树:易于理解和解释,但容易过拟合。
  • 随机森林:通过集成多棵决策树,通常表现良好,减少了过拟合的风险。

在实际的机器学习项目中,你可以根据任务的特点选择合适的模型,并不断调整参数以优化模型的表现。

http://www.15wanjia.com/news/189070.html

相关文章:

  • 网站怎么用网站建设网络推广首选公司
  • 通用网站后台管理系统(php版)logopond设计网站
  • 做网站实现自动生成pdf开源网
  • 中国专门做统计网站地产金融网站开发
  • 怎么样上传网站资料wordpress后台下载
  • 自己公司怎样弄个网站宁波网站seo公司
  • asp提交到另外网站网站设计需求方案
  • 网站开发 定制 合同深圳网络设计
  • 广州建网站哪家最好wordpress文章模板自定义字段
  • 福州哪家专业网站设计制作最好cms主题 wordpress
  • 苏州网站制作计划wordpress上传空间后
  • 郴州建设网站的公司2019年云南建设银行招聘网站
  • 买网站域名旅游网站制作建设
  • 国内好的网站设计学做ppt推荐网站
  • 怎么用dw制作网站公司做网站自己注册域名
  • 南宁网站seo大概多少钱浏览器兄弟懂的拿走不谢2021
  • 网站建设的布局对网络推广的影响企业管理咨询合同模板
  • 朝阳区住房和城乡建设部网站山西省建设工程招投标监督网站
  • 做网站还是app好在线制作图片拼接
  • wordpress大学模板电商关键词seo排名
  • 端午节网站建设品牌建设的最高境界是培育客户成为什么购买者
  • 如何制作单页网站网站宣传需要多少钱
  • 网站英文域名郑州小程序
  • 域名信息查询网站化妆品网站建设需求问卷调查
  • 网站建设需要多少费用公司名字大全列表
  • 信用网站一体化建设方案百度关键词优化送网站
  • php程序员做企业网站好看大方的企业网站源码.net
  • 常州网站建设费用公司起名大全2020最新版的
  • 台州椒江网站建设删掉wordpress主题
  • 域名备案关闭网站平台和网站有什么区别