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

北京大兴最专业的网站建设公司推广app赚钱项目

北京大兴最专业的网站建设公司,推广app赚钱项目,找推广平台需要多少钱,php网站留言板是怎么做的在这里,我们将根据给定的特征预测葡萄酒的质量。我们使用互联网上免费提供的葡萄酒质量数据集。该数据集具有影响葡萄酒质量的基本特征。通过使用几种机器学习模型,我们将预测葡萄酒的质量。 导入库和数据集 Pandas是一个有用的数据处理库。用于处理数…

在这里,我们将根据给定的特征预测葡萄酒的质量。我们使用互联网上免费提供的葡萄酒质量数据集。该数据集具有影响葡萄酒质量的基本特征。通过使用几种机器学习模型,我们将预测葡萄酒的质量。

导入库和数据集

  • Pandas是一个有用的数据处理库。
  • 用于处理数组的Numpy库。
  • Seaborn/Matplotlib用于数据可视化。
  • Sklearn -该模块包含多个库,这些库具有预实现的功能,可以执行从数据预处理到模型开发和评估的任务。
  • XGBoost -这包含eXtreme Gradient Boosting机器学习算法,这是帮助我们实现高精度预测的算法之一。
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sbfrom sklearn.model_selection import train_test_split
from sklearn.preprocessing import MinMaxScaler
from sklearn import metrics
from sklearn.svm import SVC
from xgboost import XGBClassifier
from sklearn.linear_model import LogisticRegressionimport warnings
warnings.filterwarnings('ignore')

现在让我们看看数据集的前五行。

df = pd.read_csv('winequality.csv')
print(df.head())

在这里插入图片描述
让我们研究一下数据集中每一列中的数据类型。

df.info()

在这里插入图片描述
现在我们将探索数据集的描述性统计度量。

df.describe().T

在这里插入图片描述

探索性数据分析(EDA)

EDA是一种使用可视化技术分析数据的方法。它用于发现趋势和模式,或在统计摘要和图形表示的帮助下检查假设。 现在,让我们检查数据集列中空值的数量。

df.isnull().sum()

在这里插入图片描述
由于不同列中的数据是连续值,因此让我们通过平均值来估算缺失值。

for col in df.columns:if df[col].isnull().sum() > 0:df[col] = df[col].fillna(df[col].mean())df.isnull().sum().sum()

输出:

0

让我们绘制直方图来可视化数据集列中具有连续值的数据的分布。

df.hist(bins=20, figsize=(10, 10))
plt.show()

在这里插入图片描述
现在,让我们绘制计数图,以可视化每种葡萄酒质量的数字数据。

plt.bar(df['quality'], df['alcohol'])
plt.xlabel('quality')
plt.ylabel('alcohol')
plt.show()

在这里插入图片描述
有时提供给我们的数据包含冗余特征,它们无助于提高模型的性能,这就是为什么我们在使用它们来训练模型之前删除它们。

plt.figure(figsize=(12, 12))
sb.heatmap(df.corr() > 0.7, annot=True, cbar=False)
plt.show()

在这里插入图片描述
从上面的热图中,我们可以得出结论,“total sulphur dioxide”和“free sulphur dioxide”是高度相关的特征,因此,我们将删除它们。

df = df.drop('total sulfur dioxide', axis=1)

模型建立

让我们为训练准备数据,并将其分为训练和验证数据,以便我们可以根据用例选择哪个模型的性能最好。我们将训练一些最先进的机器学习分类模型,然后使用验证数据从中选择最佳模型。

df['best quality'] = [1 if x > 5 else 0 for x in df.quality]

我们也有一个对象数据类型的列,让我们用0和1替换它,因为只有两个类别。

df.replace({'white': 1, 'red': 0}, inplace=True)

从数据集中分离特征和目标变量后,我们将其分成80:20的比例进行模型选择。

features = df.drop(['quality', 'best quality'], axis=1)
target = df['best quality']xtrain, xtest, ytrain, ytest = train_test_split(features, target, test_size=0.2, random_state=40)xtrain.shape, xtest.shape

输出:

((5197, 11), (1300, 11))

在训练之前对数据进行归一化有助于我们实现模型的稳定和快速训练。

norm = MinMaxScaler()
xtrain = norm.fit_transform(xtrain)
xtest = norm.transform(xtest)

由于数据已经完全准备好了,让我们在上面训练一些先进的机器学习模型。

models = [LogisticRegression(), XGBClassifier(), SVC(kernel='rbf')]for i in range(3):models[i].fit(xtrain, ytrain)print(f'{models[i]} : ')print('Training Accuracy : ', metrics.roc_auc_score(ytrain, models[i].predict(xtrain)))print('Validation Accuracy : ', metrics.roc_auc_score(ytest, models[i].predict(xtest)))print()

在这里插入图片描述

模型评估

从上述准确率,我们可以说,逻辑回归和SVC()分类器在验证数据上表现更好,验证数据和训练数据之间的差异更小。让我们使用Logistic回归模型绘制验证数据的混淆矩阵。

metrics.plot_confusion_matrix(models[1], xtest, ytest)
plt.show()

在这里插入图片描述
让我们打印性能最好的模型的分类结果。

print(metrics.classification_report(ytest,models[1].predict(xtest)))

在这里插入图片描述

http://www.mfbz.cn/news/649/

相关文章:

  • 下载asp网站微信小程序开发工具
  • 天津网站建设首选津坤科技站长统计性宝app
  • 彩票开发网站建设应该要注意哪些问题永久不收费的软件app
  • wordpress 更改注册页面seo chinaz
  • 做网站模版seo建站需求
  • 公司vi包括什么seo网站排名优化公司哪家
  • 做网站公司那家好磁力岛引擎
  • 网站轮播图片怎么做seo应该怎么做
  • 深圳最好的营销网站建设公司哪家好网站收录一键提交
  • 做移动网站优化软件网络推广引流有哪些渠道
  • 做网站的公司都是小公司如何做好品牌推广工作
  • 北京市做网站有创意的营销策划案例
  • 网站建设合同 模板seo具体seo怎么优化
  • 浙江省工程建设质量管理协会 网站营销技巧和话术
  • 云阳如何做网站一个关键词要刷多久
  • 如何做防水网站外包公司怎么赚钱
  • 上海网站推广行业需求百度网站打开
  • 公司做一个静态网站多少钱谷歌seo外链平台
  • 行业用品网站怎么建设外链免费个人网站制作
  • 网站建设推广新闻百度推广课程
  • 郑州网站维护种子搜索神器 bt 下载
  • 格子三合一交友婚恋网站模板如何制作网页
  • 服装网站建设环境分析计算机培训班
  • 点击最多的网站上海搜索引擎优化1
  • 12306网站建设花了多少钱江门seo网站推广
  • 贵阳微网站建设公司如何制作网页设计
  • 青岛网站建设优化电商平台的推广及运营思路
  • 如何做代购网站设计百度网站链接
  • 建设银行信用卡积分兑换网站手机百度网页版登录入口
  • 备案通过后 添加网站网络营销品牌