使用机器学习数据集构建销售预测Web应用程序( 二 )
PS3平台的销售额最高 。 之后是Xbox360:
文章插图
动作类别的销售额最高 , 难题类别的销售额最低
文章插图
2007年到2011年的销售额最高:
文章插图
通常 , 我们在EDA之后进行特征工程或特征选择步骤 。 但是 , 我们的功能较少 , 着重于实际使用模型 。 因此 , 我们正在朝着下一步迈进 。 但是 , 请记住 , USER_POINTS和CRITICS_POINTS列可用于派生其他功能 。
步骤4:建立模型
由于我们具有许多分类功能 , 因此我们将对数据集使用catboost回归模型 。 由于catboost可以直接作用于分类特征 , 因此跳过了对分类特征进行标签编码的步骤 。
首先 , 我们使用pip install命令安装catboost软件包 。
然后 , 我们创建一个分类特征列表 , 将其传递给模型 , 然后将模型拟合到训练数据集上:
import catboost as catcat_feat = ['CONSOLE','CATEGORY', 'PUBLISHER', 'RATING']features = list(set(train.columns)-set(['SalesInMillions']))target = 'SalesInMillions'model = cat.CatBoostRegressor(random_state=100,cat_features=cat_feat,verbose=0)model.fit(train[features],train[target])
步骤5:检查模型的准确性
首先 , 我们根据测试数据集创建真实的预测:
y_true= pd.DataFrame(data=http://kandian.youth.cn/index/test[target], columns=['SalesInMillions'])test_temp = test.drop(columns=[target])
接下来 , 我们在测试数据集上运行训练良好的模型以获取模型预测并检查模型准确性
y_pred = model.predict(test_temp[features])from sklearn.metrics import mean_squared_errorfrom math import sqrtrmse = sqrt(mean_squared_error(y_true, y_pred))print(rmse)#Output: 1.5555409360901584
我们的RMSE值为1.5 , 这相当不错 。 有关在出现回归问题时准确性指标的更多信息 , 可以参考本文 。
现在 , 我们可以将模型保存到pickle文件中 , 然后将其保存在本地:
import picklefilename = 'finalized_model.sav'pickle.dump(model, open(filename, 'wb'))
保存pickle文件后 , 你可以从Google Colab Notebook文件部分的左侧边栏中下载并保存在本地文章插图
额外提示
- 添加更多数据
- 提高模型效率
如果你已完成此步骤 , 请轻拍一下自己的背 , 因为我们刚刚完成了项目的第一个主要部分 。 休息一会儿 , 拉伸一下 , 然后开始本文的下一部分 。
第2部分:根据模型创建后端API我们将使用Python Flask创建后端API 。
因此 , 首先在本地创建一个名为server的文件夹 。 另外 , 如果还没有 , 请在你的计算机上安装Python和pip软件包管理器 。
接下来 , 我们需要在文件夹中创建一个虚拟环境 。 我在Linux上使用python3 , 因此我创建虚拟环境的命令为:python3 -m venv server 。
推荐阅读
- Biogen将使用Apple Watch研究老年痴呆症的早期症状
- Eyeware Beam使用iPhone追踪玩家在游戏中的眼睛运动
- 唐山四维智能科技有限公司:双臂机器人引领人机协作新纪元
- 计算机专业大一下学期,该选择学习Java还是Python
- 大众展示EV公共充电新解决方案:移动充电机器人
- 普渡机器人获最佳商用服务机器人奖
- 翻译|机器翻译能达60个语种3000个方向,近日又夺全球五冠,这家牛企是谁?
- 假期弯道超车 国美学习“神器”助孩子变身“学霸”
- 想自学Python来开发爬虫,需要按照哪几个阶段制定学习计划
- 未来想进入AI领域,该学习Python还是Java大数据开发