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

app定制开发价格济南网站建设yigeseo

app定制开发价格,济南网站建设yigeseo,不备案的网站有那些,免费网站正能量本教程是机器学习系列的一部分。 在此步骤中#xff0c;您将学习如何使用功能强大的xgboost库构建和优化模型。 What is XGBoost XGBoost是处理标准表格数据的领先模型#xff08;您在Pandas DataFrames中存储的数据类型#xff0c;而不是像图像和视频这样的更奇特的数据类…本教程是机器学习系列的一部分。 在此步骤中您将学习如何使用功能强大的xgboost库构建和优化模型。 What is XGBoost XGBoost是处理标准表格数据的领先模型您在Pandas DataFrames中存储的数据类型而不是像图像和视频这样的更奇特的数据类型。 XGBoost模型在许多Kaggle比赛中占据主导地位。 为了达到峰值精度XGBoost模型比Random Forest等技术需要更多的知识和模型调整。 在本教程之后你将能够 遵循XGBoost的完整建模工作流程     微调XGBoost模型以获得最佳性能 XGBoost是Gradient Boosted决策树算法的一种实现scikit-learn有另一个版本的算法但XGBoost有一些技术优势。什么是Gradient Boosted决策树 我们将通过一个图表。 我们经历了重复构建新模型的循环并将它们组合成一个整体模型。 我们通过计算数据集中每个观察的误差来开始循环。 然后我们构建一个新模型来预测。 我们将此误差预测模型的预测添加到“模型集合”中。 为了进行预测我们添加了以前所有模型的预测。 我们可以使用这些预测来计算新误差构建下一个模型并将其添加到整体中。 那个周期之外还有一件。 我们需要一些基础预测来开始循环。 在实践中最初的预测可能非常幼稚。 即使它的预测非常不准确随后对整体的添加将解决这些错误。 这个过程可能听起来很复杂但使用它的代码很简单。 我们将在下面的模型调整部分填写一些额外的解释性细节。 Example 我们将从预先加载到train_Xtest_Xtrain_ytest_x的数据开始。 [1] import pandas as pd from sklearn.model_selection import train_test_split from sklearn.preprocessing import Imputerdata pd.read_csv(../input/train.csv) data.dropna(axis0, subset[SalePrice], inplaceTrue) y data.SalePrice X data.drop([SalePrice], axis1).select_dtypes(exclude[object]) train_X, test_X, train_y, test_y train_test_split(X.as_matrix(), y.as_matrix(), test_size0.25)my_imputer Imputer() train_X my_imputer.fit_transform(train_X) test_X my_imputer.transform(test_X) /opt/conda/lib/python3.6/site-packages/ipykernel_launcher.py:9: FutureWarning: Method .as_matrix will be removed in a future version. Use .values instead.if __name__ __main__: /opt/conda/lib/python3.6/site-packages/sklearn/utils/deprecation.py:58: DeprecationWarning: Class Imputer is deprecated; Imputer was deprecated in version 0.20 and will be removed in 0.22. Import impute.SimpleImputer from sklearn instead.warnings.warn(msg, categoryDeprecationWarning) 我们像在scikit-learn建立模型和拟合。 【2】 from xgboost import XGBRegressormy_model XGBRegressor() # Add silentTrue to avoid printing out updates with each cycle my_model.fit(train_X, train_y, verboseFalse) 我们同样评估模型并像在scikit-learn中那样进行预测。 【3】 # make predictions predictions my_model.predict(test_X)from sklearn.metrics import mean_absolute_error print(Mean Absolute Error : str(mean_absolute_error(predictions, test_y))) Mean Absolute Error : 17543.750299657535 Model Tuning XGBoost有一些参数可以显着影响您的模型的准确性和训练速度。您应该了解的第一个参数是n_estimators 和 early_stopping_rounds n_estimators指定完成上述建模周期的次数。 在欠拟合vs过拟合图中n_estimators将您向右移动。值太低会导致欠拟合这对训练数据和新数据的预测都是不准确的。太大的值会导致过度拟合这时对训练数据的预测准确但对新数据的预测不准确这是我们关心的。您可以试验数据集以找到理想值。典型值范围从100到1000但这很大程度上取决于下面讨论的学习率。 参数early_stopping_rounds提供了一种自动查找理想值的方法。过早停止会导致模型在验证分数停止改善时停止迭代即使我们不是n_estimators的硬停止。为n_estimators设置一个高值然后使用early_stopping_rounds找到停止迭代的最佳时间是明智的。 由于随机机会有时会导致单轮其中验证分数没有提高因此您需要指定一个数字以确定在停止前允许多少轮直线恶化。 early_stopping_rounds 5是一个合理的值。因此我们在连续5轮恶化的验证分数后停止。 以下是适合early_stopping的代码 【4】 my_model XGBRegressor(n_estimators1000) my_model.fit(train_X, train_y, early_stopping_rounds5, eval_set[(test_X, test_y)], verboseFalse) XGBRegressor(base_score0.5, boostergbtree, colsample_bylevel1,colsample_bytree1, gamma0, learning_rate0.1, max_delta_step0,max_depth3, min_child_weight1, missingNone, n_estimators1000,n_jobs1, nthreadNone, objectivereg:linear, random_state0,reg_alpha0, reg_lambda1, scale_pos_weight1, seedNone,silentTrue, subsample1) 使用early_stopping_rounds时您需要留出一些数据来检查要使用的轮数。 如果您以后想要使用所有数据拟合模型请将n_estimators设置为在过早停止运行时发现的最佳值。 learning_rate 对于更好的XGBoost模型这是一个微妙但重要的技巧 我们不是通过简单地将每个组件模型中的预测相加来获得预测而是将每个模型的预测乘以一个小数字然后再添加它们。这意味着我们添加到集合中的每个树都会减少我们的预测。 在实践中这降低了模型过度拟合的倾向。 因此您可以使用更高的n_estimators值而不会过度拟合。 如果使用过早停止将自动设置适当数量的树。 一般来说较小的学习率以及大量的估算器将产生更准确的XGBoost模型尽管它也会使模型更长时间进行训练因为它在整个循环中进行了更多的迭代。 修改上面的示例以包含学习率将产生以下代码 【5】 my_model XGBRegressor(n_estimators1000, learning_rate0.05) my_model.fit(train_X, train_y, early_stopping_rounds5, eval_set[(test_X, test_y)], verboseFalse) XGBRegressor(base_score0.5, boostergbtree, colsample_bylevel1,colsample_bytree1, gamma0, learning_rate0.05, max_delta_step0,max_depth3, min_child_weight1, missingNone, n_estimators1000,n_jobs1, nthreadNone, objectivereg:linear, random_state0,reg_alpha0, reg_lambda1, scale_pos_weight1, seedNone,silentTrue, subsample1) n_jobs 在较大数据集上需要考虑运行时间您可以使用并行性来更快地构建模型。通常将参数n_jobs设置为等于计算机上的核心数。在较小的数据集上这无济于事。 由此产生的模型将不会更好因此对于拟合时间的微优化通常只是分散注意力。但是它在大型数据集中非常有用否则您将在fit命令期间等待很长时间。 XGBoost有许多其他参数但这些参数将消耗更长时间帮助您微调XGBoost模型以获得最佳性能。 Conclusion XGBoost是目前用于在传统数据也称为表格或结构数据上构建精确模型的主要算法。去应用它来改进你的模型 Your Turn 使用XGBoost转换你的模型。 使用提前停止为n_estimators找到一个好的值。然后使用所有训练数据和n_estimators的值重新估计模型。 完成后返回学习机器学习继续改进。
http://www.huolong8.cn/news/206562/

相关文章:

  • 网站建设和管理情况怎么提高百度搜索排名
  • html5响应式设计公司网站模板整站html源码下载淘宝免费推广的方式有哪些
  • 烟台网站主关键词网站开发运营
  • 网站架构 规划全球十大软件公司排名
  • 个人网站制作步骤注册劳务公司流程和费用
  • 陵水县建设局网站高权重网站做js代码跳转
  • 上海网站建设心得东莞财务公司代注册公司
  • 企业网站开发报告班级同学录网站建设
  • 郑州做网站推公司做网站怎么做账
  • 网站建设开源程序厦门市建设局官方网站证书查询
  • 北京市建设厅网站首页nginx进wordpress不能进目录
  • 怎么做电影网站页面的国外打开网站会不会乱码
  • 医院网站建设 中企动力棋牌推广
  • 自家宽带怎么建设网站企业网站完整版
  • 网站开发服务计入什么科目加强门户网站建设方案
  • 网站设计制作软件网站上传空间下一步
  • 百度电脑版登录网站中装建设为什么不涨
  • 外贸网站推广渠道wordpress十大必备插件
  • 网站建设系统认证系统网站里面添加支付怎么做
  • 台州建设网站公司企业网站策划书范文3000字
  • 备案 网站下线建设厅网站业务系统板块查成绩
  • 做视频找素材的网站好看的网站首页欣赏
  • 元素网站平面设计电商设计
  • html5高端红色织梦网络公司网站河北手机网站制作哪家好
  • 太仓做企业网站关于征集网站建设素材的通知
  • 门户网站具有什么特点wordpress加速优化
  • wordpress教程 数据库重庆官网优化乐育公司
  • 河南建设人才招聘专业网站二维码生成器app
  • 微信小程序网站制作商城网络推广
  • vultr 做网站空间php注册网站源码带数据库