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

网站开发是什么平面设计公司名称

网站开发是什么,平面设计公司名称,推广平台网站制作,聊城做网站建设的公司XGboost#xff08;extreme gradient boosting#xff09;:高效实现了GBDT算法并进行了算法和工程上的许多改进。 XGboost的思路#xff1a; 目标#xff1a;建立k个回归树#xff0c;使得树群的预测尽量接近真实值#xff08;准确率#xff09;而且有尽量大的泛化能力… XGboostextreme gradient boosting:高效实现了GBDT算法并进行了算法和工程上的许多改进。 XGboost的思路 目标建立k个回归树使得树群的预测尽量接近真实值准确率而且有尽量大的泛化能力。 目标函数 i表示第i个样本表示第i个样本的预测误差误差越小越好表示树的复杂度的函数越小复杂度越低泛化能力越强 T叶子的个数 w的L2模平方 目标要求预测尽量小叶子节点尽量少节点数值尽量不极端回归树的参数1选取哪个特征分裂节点2节点的预测值。间接解决这两个参数的方法贪心策略最优化二次最优化 1选取哪个特征分裂节点最简单的是枚举选择loss function效果最好的那个 2确立节点的w以及最小的loss function采用二次函数的求最值 步骤选择一个feature分裂计算loss function最小值然后再选一个feature分列又得到一个loss function最小值枚举完成后找一个效果最好的把树分裂在分裂的时候每次节点分裂loss function被影响的只有这个节点的样本因而每次分裂计算分裂的增益只需要关注打算分裂的那个节点的样本。接下来继续分裂按照上述方法形成一棵树再形成一棵树每次在上一次的预测基础上取最优进一步分裂/建树。 停止条件 ①当引入的分裂带来的增益小于一个阈值的时候可以剪掉这个分裂所以并不是每一次分裂lossfunction整体都会增加的有点预剪枝的意思阈值参数为正则项里叶子节点数T的系数。 ②当数达到最大深度时则停止建立决策树设置一个超参数max_depth树太深很容易出现过拟合。 ③当样本权重和小于设定阈值时则停止建树一个叶子节点样本太少时终止避免过拟合。 constant常数对于XGboost利用泰勒展开三项做一个近似表示其中一颗回归树。 XGBoost与GBDT有什么不同 1、GBDT是机器学习算法XGboost是该算法的工程实现 2、在使用CART作为及分类器时XGboost显式地加入了正则项来控制模型的复杂度有利于防止过拟合从而提高模型的泛化能力 3、GBDT在模型训练时只是用来代价函数的一阶导数信息XGboost对代价函数进行二阶泰勒展开可以同时使用一阶和二阶导数 4、传统的GBDT采用CART作为基分类器XGboost支持多种类型的基分类器比如线性分类器 5、传统的GBDT在每轮迭代时使用全部的数据XGboost则采用了与随机森林相似的策略支持对数据进行采样 6、传统的GBDT没有设计对缺失值的处理而XGboost能够自动学习出缺失值的处理策略。 使用xgboost库中的XGBRegressor类来创建XGboost模型 import xgboost as xgb xgb_clfxgb.XGBRegressor(max_depth8,learning_rate0.1,objectivereg:linear,eval_metricrmse, n_estimators3115,colsample_bytree0.6, reg_alpha3, reg_lambda2, gamma0.6,subsample0.7, silent1, n_jobs-1) XGBRegressor中的参数介绍 max_depth树的最大深度增加这个值可以使模型更加复杂并提高队训练数据的拟合程度但可能会导致过拟合。通常需要通过交叉验证来调整这个参数。 learning_rate学习率用于控制每次迭代更新权重时的步长。 objective定义了学习任务和相应的损失函数“reg:linear” 表示我们正在解决一个线性回归问题。 eval_metric评估指标用于在训练过程中对模型的表现进行评估‘rmse’ 表示均方根误差Root Mean Squared Error它是回归问题中常用的性能指标。 n_estimators森林中树的数量值越大模型越复杂训练时间也会相应增加。通常需要通过交叉验证来调整这个参数。 colsample_bytree构建每棵树时对特征进行采样的比例。较小的值可以减少过拟合提高模型的泛化能力。 reg_alphaL1正则化项的权重增加这个值同样也可以增加模型的正则化强度。 gamma树的叶子节点进一步分裂所需的最小损失减少量。较大值会导致模型更保守可能会导致模型的过拟合。 subsample用于训练每棵树的样本占整个训练集的比例。 silent设置为1可以关闭在运行时的日志信息。 n_jobs并行运行的作业数。 基本模型 import pandas as pd import xgboost as xgb import pandas import numpy as np# 将pandas数据框加载到DMatrix data_train pandas.DataFrame(np.arange(12).reshape((4,3)), columns[a, b, c]) label_train pandas.DataFrame(np.random.randint(2, size4)) dtrain xgb.DMatrix(data_train, labellabel_train, missingnp.NaN) # 缺失值可以用构造函数中的默认值替换DMatrixdata_test pandas.DataFrame(np.arange(12, 24).reshape((4,3)), columns[a, b, c]) label_test pandas.DataFrame(np.random.randint(2, size4)) dtest xgb.DMatrix(data_test, labellabel_test, missingnp.NaN) # 缺失值可以用构造函数中的默认值替换DMatrix# # 将CSV文件加载到DMatrix # # label_column specifies the index of the column containing the true label # dtrain xgb.DMatrix(train.csv?formatcsvlabel_column0) # dtest xgb.DMatrix(test.csv?formatcsvlabel_column0) # # XGBoost 中的解析器功能有限。当使用Python接口时建议使用pandasread_csv或其他类似的实用程序而不是XGBoost的内置解析器。param {max_depth: 2, eta: 1, objective: binary:logistic} param[nthread] 4 param[eval_metric] [auc, ams0] # 指定多个评估指标 # 指定验证集以观察性能 evallist [(dtrain, train), (dtest, eval)]# 训练 num_round 20 bst xgb.train(param, dtrain, num_round, evallist, early_stopping_rounds10) # 返回最后一次迭代的模型而不是最好的模型 # early_stopping_rounds10作用如果模型在10轮内没有改善则训练将提前停止如果设置多个指标则最后一个指标将用于提前停止 # 训练完成后保存模型 bst.save_model(test_xgboost/0001.model) # 模型转储到文本文件中 bst.dump_model(test_xgboost/dump.raw.txt) # 加载模型 bst xgb.Booster({nthread: 4}) # 初始化模型将线程数设置为4 bst.load_model(test_xgboost/0001.model) # 加载模型 # 如果训练期间启动提前停止可以从最佳迭代中获得预测 ypred bst.predict(dtest, iteration_range(0, bst.best_iteration 1)) ypred pd.DataFrame(ypred) ypred.to_csv(test_xgboost/xgb_predict.csv, indexFalse) 使用scikit-learn的方法 from sklearn.datasets import load_breast_cancer from sklearn.model_selection import train_test_splitimport xgboost as xgbX, y load_breast_cancer(return_X_yTrue) # 加载数据 X_train, X_test, y_train, y_test train_test_split(X, y, stratifyy, random_state94) # stratifyy按目标变量分层划分确保训练集和测试集中目标变量的比例与原始数据集相同 # random_state94: 设置随机种子保证每次划分的结果相同# 使用hist来构建树并启用早期停止 early_stop xgb.callback.EarlyStopping(rounds2, metric_namelogloss, data_namevalidation_0, save_bestTrue ) clf xgb.XGBClassifier(tree_methodhist, callbacks[early_stop]) clf.fit(X_train, y_train, eval_set[(X_test, y_test)]) # 保存模型 clf.save_model(test_xgboost/clf.json) https://xgboost.readthedocs.io/en/latest/python/index.html XGBClassifier与XGBRegressor有什么区别 目标函数 XGBClassifier使用逻辑回归作为目标函数用于分类任务XGBRegressor使用平方误差 作为目标函数用于回归任务。 评估指标 XGBClassifier使用准确率和F1 分数 作为评估指标XGBRegressor使用 均方误差 或 R2 分数 作为评估指标。 其他区别 XGBClassifier支持多分类而 XGBRegressor仅支持回归。XGBClassifier 可以使用 树 或 线性模型 作为基学习器而 XGBRegressor 仅支持 树 作为基学习器。
http://www.dnsts.com.cn/news/41611.html

相关文章:

  • 鲜花网站建设方案怎样为网站设计关键词
  • 想自己做网站 有免费的吗深圳 互联网公司
  • 开服表网站开发做网站常用的背景图像
  • 怎么查网站开发的语言市场监督管理局是什么单位
  • 西丽网站设计网站备案要啥
  • 网站建站助手东莞建设网首页
  • 做钓鱼网站要什么工具汉阳网页设计
  • 网站使用培训方案江西南昌小程序开发
  • 营销型网站展示用凡科网建设的网站
  • 站长联盟实惠高端网站设计品牌
  • 网站竞价推广自建电梯费用
  • 中国建设监理协会网站投稿wordpress做视频网站吗
  • 河南新站关键词排名优化外包石狮app网站开发价格
  • 专业网站制作公司排行网站改版Excel怎么做
  • 有没有网站建设的兼职wordpress内存缓存
  • 北京通州做网站的公司2023新闻热点摘抄
  • 阿坝网站设计怎么做简单地网站
  • 做网站显示上次登录时间代码做ppt好用的网站有哪些
  • 机械网站开发方案系列推广软文范例
  • 服务器 网站建设 过程网站推广优化网址
  • 网站开发与设计结课大作业深圳宝安做网站的
  • 网站建设需要哪些必备文件网络网站公司
  • 南昌餐厅网站建设seo公司系统
  • 教医学生做科研的网站有哪些wordpress需要翻墙吗
  • 做交易平台的网站需要哪些技术微商城网站制作
  • 优秀甜品网站老五wordpress
  • 做外贸面料哪个网站可以接单免费营销课程培训
  • 个人网站建设推广服务wordpress 网站地图类
  • 阿里巴巴的网站二维码怎么做网站做拓扑图编辑
  • 两学一做网站是多少钱wordpress 获取文章作者