如何使用 ML 进行葡萄酒质量预测?

machine learningartificial intelligencepython

本教程将从 Kaggle 等在线资源获取葡萄酒质量数据集。首选数据集是"葡萄酒质量数据集",可从"https://www.kaggle.com/datasets/yasserh/wine-quality-dataset。"获取

数据集包含一个 .csv 文件,其中包含各种葡萄酒类别,例如"固定酸度"、"挥发性酸度"、"pH"、"密度"等。从这个数据集中,在初始阶段删除了字段名称"quality",然后进一步训练模型。

这是预测葡萄酒质量的 Python 代码。

  • 导入必要的库。

import pandas as pd
import numpy as np

from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error
import matplotlib.pyplot as plt
  • 导入葡萄酒质量数据集

wine = pd.read_csv('/Users/someswarpal/Downloads/WineQT.csv')
  • 删除名为 quality 的列。

X = wine.drop(columns=['quality'])
y = wine['quality']
  • 将数据拆分为测试集和训练集。

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)
  • 对训练集进行预测。

y_pred = model.predict(X_test)
  • 评估模型

mse = mean_squared_error(y_test, y_pred)
print("Mean Squared Error:", mse)
  • 计算每个类别的平均质量

mean_quality = wine.groupby('quality')['quality'].mean()

输出

均方误差:0.38242835212919696
  • 找到平均质量最高的类别

best_quality = mean_quality.idxmax()
best_mean_quality = mean_quality.max()
  • 打印最佳葡萄酒的摘要。

print("Summary of Wine Quality:")
print("----------------------------")
print("Best Wine Quality Category:", best_quality)
print("Mean Quality Score:", best_mean_quality)

输出

Summary of Wine Quality:
   ----------------------------
   Best Wine Quality Category: 8
   Mean Quality Score: 8.0
  • 查找平均质量最低的类别

worst_quality = mean_quality.idxmin()
worst_mean_quality = mean_quality.min()
  • 打印最差葡萄酒的摘要

示例

print("葡萄酒质量摘要:")
print("----------------------------")
print("最差葡萄酒质量类别:", greatest_quality)
print("平均质量得分:", greatest_mean_quality)

输出

葡萄酒质量摘要:
----------------------------
最差葡萄酒质量类别:3
平均质量得分:3.0

结论

总之,代码以多种方式分析和显示有关葡萄酒质量的集合数据。它首先读取数据集并将其分为输入特征 (X) 和目标变量 (y)。然后使用训练集来制作和训练线性回归模型。然后在测试集上进行预测,并使用均方误差来衡量模型的效果。

代码还确定数据集中每个类别的平均质量,并找到平均质量最好的类别。散点图、直方图、箱线图、条形图、线图、相关热图和饼图是可以制作的一些图像。这些图片显示了不同事物如何影响葡萄酒的质量。

总体而言,代码彻底研究了葡萄酒质量数据集,从建模和评估数据到展示数据的分布方式以及它们之间的关系。它展示了如何使用著名的数据分析和可视化库,例如 Pandas、NumPy、sci-kit-learn、matplotlib 和 Seaborn,使分析过程更易于访问并提供有助于理解数据集的信息。


相关文章