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

上海定制建站网站建设网站小图标怎么制作

上海定制建站网站建设,网站小图标怎么制作,dw 做静态网站,设计网站大全扣西湖南岚鸿首选XGBoost:是eXtreme Gradient Boosting(极端梯度提升)的缩写,是一种强大的集成学习(ensemble learning)算法,旨在提高效率、速度和高性能。XGBoost是梯度提升(Gradient Boosting)的优化实现。集成学习将多个弱模型组合起来,形成一个…

      XGBoost:是eXtreme Gradient Boosting(极端梯度提升)的缩写,是一种强大的集成学习(ensemble learning)算法,旨在提高效率、速度和高性能。XGBoost是梯度提升(Gradient Boosting)的优化实现。集成学习将多个弱模型组合起来,形成一个更强大的模型。可用于回归、分类、排序。

      源码地址:https://github.com/dmlc/xgboost,它是经过优化的,可扩展、可移植和分布式梯度提升(GBDT, GBRT or GBM)库,适用于Python、C++等,可在单机、Hadoop、Spark等上运行,支持在Linux、Mac、Windows上的安装,license为Apache-2.0,最新发布版本为2.1.4。

      XGBoost使用决策树(decision trees)作为基础学习器(learners),按顺序组合它们以提高模型的性能。每棵新树都经过训练以纠正前一棵树的错误,这个过程称为提升(boosting)。该过程可以分解如下:

      (1).从基础学习器开始:第一个模型决策树在数据上进行训练。在回归任务中,这个基础模型只是预测目标变量的平均值。

      (2).计算误差:训练第一棵树后,计算预测值和实际值之间的误差。

      (3).训练下一棵树:下一棵树在前一棵树的错误上进行训练。此步骤尝试纠正第一棵树所犯的错误。

      (4).重复该过程:这个过程继续进行,每棵新树都试图纠正前一棵树的错误,直到满足停止标准。

      (5).合并预测:最终预测是所有树的预测总和。

      XGBoost模型主要保存为二进制文件UBJSON、也可选择JSON或文本格式。

      XGBoost优势

      (1).具有高度可扩展性和高效率,适合处理大型数据集。

      (2).实现并行处理技术并利用硬件优化来加快训练过程,在训练期间使用所有CPU内核并行构建树。

      (3).提供了广泛的可自定义参数和正则化技术,允许用户根据自己的特定需求对模型进行微调。

      (4).分布式计算,可使用一组机器训练非常大的模型。

      XGBoost缺点:

      (1).计算量非常大,尤其是在训练复杂模型时,因此不太适合资源受限的系统。

      (2).对噪声数据或异常值很敏感,因此需要数据预处理才能获得最佳性能。

      (3).在小数据集上或在模型中使用过多树时容易过拟合。

      注意

      (1).只有Linux平台支持使用多个GPU进行训练。

      (2).本地安装时,Linux上需要glibc 2.28+;Windows上需要安装Visual C++ Redistributable。pip的版本需要21.3+。

      (3).使用pip的默认安装("pip install xgboost")将安装完整的XGBoost包,包括对GPU算法和联合学习(federated learning)的支持。可安装仅cpu版的,执行"pip install xgboost-cpu",此版本将减少安装包的大小并节省磁盘空间,但不提供某些功能,如GPU算法和联合学习。

      (4).通过Conda安装,执行"conda install -c conda-forge py-xgboost",Conda应该能够检测到您的机器上是否存在GPU,并安装正确的XGBoost变体。也可指定仅安装cpu版本,执行"conda install -c conda-forge py-xgboost-cpu"。

      注:以上整理的内容主要来自:

      1. https://xgboost.readthedocs.io/en/latest/

      2. ttps://machinelearningmastery.com

      3. https://www.geeksforgeeks.org/xgboost/

      以下Python测试代码用于回归,使用波士顿房价数据集,共包含506个样本,每个样本有13个特征和1个目标变量:

import colorama
import argparse
import pandas as pd
import xgboost as xgbdef parse_args():parser = argparse.ArgumentParser(description="test XGBoost")parser.add_argument("--task", required=True, type=str, choices=["regress", "classify", "rank"], help="specify what kind of task")parser.add_argument("--csv", required=True, type=str, help="source csv file")parser.add_argument("--model", required=True, type=str, help="model file, save or load")args = parser.parse_args()return argsdef split_train_test(X, y):X = X.sample(frac=1, random_state=42).reset_index(drop=True) # random_state=42: make the results consistent each timey = y.sample(frac=1, random_state=42).reset_index(drop=True)index = int(len(X) * 0.8)X_train, X_test = X[:index], X[index:]y_train, y_test = y[:index], y[index:]return X_train, X_test, y_train, y_testdef calculate_rmse(input, target): # Root Mean Squared Errorreturn (sum((input - target) ** 2) / len(input)) ** 0.5def regress(csv_file, model_file):# 1. load datadata = pd.read_csv(csv_file)# 2. split into training set and test seX = data.drop('MEDV', axis=1)y = data['MEDV']print(f"X: type: {type(X)}, shape: {X.shape}; y: type: {type(X)}, shape: {y.shape}")X_train, X_test, y_train, y_test = split_train_test(X, y)train_dmatrix = xgb.DMatrix(X_train, label=y_train)test_dmatrix = xgb.DMatrix(X_test, label=y_test)print(f"train_dmatrix type: {type(train_dmatrix)}, shape(h,w): {train_dmatrix.num_row()}, {train_dmatrix.num_col()}")# 3. set XGBoost paramsparams = {'objective': 'reg:squarederror', # specify the learning task: classify: binary:logistic or multi:softmax or multi:softprob; rank: rank:ndcg'max_depth': 5, # maximum tree depth'eta': 0.1, # learning rate'subsample': 0.8, # subsample ratio of the training instance'colsample_bytree': 0.8, # subsample ratio of columns when constructing each tree'seed': 42, # random number seed'eval_metric': 'rmse' # metric used for monitoring the training result and early stopping}# 4. train modelbest = xgb.train(params, train_dmatrix, num_boost_round=1000) # num_boost_round: epochs# 5. predicty_pred = best.predict(test_dmatrix)# print(f"y_pred: {y_pred}")# 6. evaluate the modelrmse = calculate_rmse(y_test, y_pred)print(f"rmse: {rmse}")# 7. save modelbest.save_model(model_file)# 8. load mode and predictmodel = xgb.Booster()model.load_model(model_file)result = model.predict(test_dmatrix)test_label = test_dmatrix.get_label()for idx in range(len(result)):print(f"ground truth: {test_label[idx]:.1f}, \tpredict: {result[idx]:.1f}")if __name__ == "__main__":print("xgboost version:", xgb.__version__)colorama.init(autoreset=True)args = parse_args()if args.task == "regress":regress(args.csv, args.model)print(colorama.Fore.GREEN + "====== execution completed ======")

      执行结果如下图所示:

      GitHub:https://github.com/fengbingchun/NN_Test

http://www.dtcms.com/wzjs/831879.html

相关文章:

  • 宁波企业网站开发公司如何保存网站上的图片不显示图片
  • 建立个人网站的费用校园网站建设的重要性
  • 网站建设合同管辖地百度入驻
  • 信用网站建设是国家统一部署C2C电子商务网站管理系统
  • 怎么选择丹徒网站建设湛江网站推广优化
  • 个人做网站费用wordpress怎么添加用户中心页面
  • 中国十大小说网站排名国外的包装设计网站
  • 乐清市城乡建设局网站企业官网是什么意思
  • 外包网站设计公司中山做企业网站
  • 西安微网站开发wordpress域名修改数据库
  • 简历制作免费模板网站资讯网站建设流程
  • 做理论的网站最新房价排行榜
  • 湖南建筑工程集团网站排名优化培训哪家好
  • 个人空间网站免费做网站多少钱一张页面
  • 网站怎么做才是对搜索引擎友好wordpress指定分类不显示
  • 学习网站大全建筑网站建设需要注意哪些
  • 优秀的电商app设计网站德阳建设银行招聘网站
  • 网站设计公司地址微信公众号怎么创建优惠券
  • 濮阳市城乡建设管理局网站wordpress excel插件
  • 小额贷网站建设卡片式 主题 wordpress
  • 网站制作 合同dedecms 迁移 wordpress
  • 网站建设的计划wp如何转换wordpress
  • 网络建站 响应式网站设计类相关网站
  • 网站定制设计制作公司wordpress shop
  • 网站商城建设价格百度seo关键词排名优化工具
  • 晋州网站建设哪家好线上推广话术
  • 资讯类网站模板下载网站是否开启gzip
  • 网站建设安全与维护网站排名怎么优化
  • 张家界有没有做网站的公司微网站开发平台 开源
  • 北京企业网站推广哪家公司好免费的网站模板下载