xgboost

No speedup using XGBClassifier with GPU support

删除回忆录丶 提交于 2021-02-19 08:19:06
问题 In the following code, I try to search over different hyper-parameters of xgboost. param_test1 = { 'max_depth':list(range(3,10,2)), 'min_child_weight':list(range(1,6,2)) } predictors = [x for x in train_data.columns if x not in ['target', 'id']] gsearch1 = GridSearchCV(estimator=XGBClassifier(learning_rate =0.1, n_estimators=100, max_depth=5, min_child_weight=1, gamma=0, subsample=0.8, colsample_bytree=0.8, objective= 'binary:logistic', n_jobs=4, scale_pos_weight=1, seed=27, kvargs={'tree

科大讯飞工程机械核心部件寿命预测挑战赛冠军方案分享

狂风中的少年 提交于 2021-02-18 08:50:48
本次分享从以下几个方面展开,尽可能做到有理有据,希望对读者有所帮助:赛题简介、赛题难点、数据预处理、特征工程、数据增强、模型构建、其他、总结。 1.赛题简介 预测性维护是工业互联网应用“皇冠上的明珠”,实现预测性维护的关键是对设备系统或核心部件的寿命进行有效预测。对工程机械设备的核心耗损性部件的剩余寿命进行预测,可以据此对于相关部件的进行提前维护或者更换,从而减少整个设备非计划停机时间,避免因计划外停机而带来的经济损失,比如导致整个生产现场其他配套设备等待故障设备部件的修复。本赛题由中科云谷科技有限公司提供某类工程机械设备的核心耗损性部件的工作数据,包括部件工作时长、转速、温度、电压、电流等多类工况数据。希望参赛者利用大数据分析、机器学习、深度学习等方法,提取合适的特征、建立合适的寿命预测模型,预测核心耗损性部件的剩余寿命。 2.赛题难点 针对数据量以及划分构造训练集的问题采用以下方案解决: 训练集与测试集的构造: a.一个训练样本按照寿命的一定比例进行构造多个小样本; 这里有两种方法,一是采用固定的比例列表,例如[0.45,0.55,0.63,0.75,0.85]。 二是采用多次选取随机比例构造。 b.测试集不变。 (队友周杰曾尝试过测试集也进行比例划分,有提升) 比如说一个样本的寿命为1000,我们截取450前的数据作为一个训练样本,其剩余寿命为550; 然后截取550前的数据

如何入门机器学习

試著忘記壹切 提交于 2021-02-17 08:16:14
本篇文章,我将从过来的人角度介绍下机器学习如何从入门到精通,这里我们谈经验,谈工具,更谈方法论。 1.入门 作为初入机器学习的小白,你可能除了一颗好奇的心和一番热血外什么都不没有,当然最好还是希望你能有线性代数、微积分和概率论的基础。你可能会心存顾虑:学过但忘了。不用担心,这种东西不用就会忘,但只要用到,学一学便会;或者说你可能真的没学过,这个也不用担心,只要你真的想学现在也来得及。 好了废话不多说,我们进入入门阶段的正题。入门阶段主要有三个任务: 快速看完周志华的《西瓜书》 ; 看吴恩达 Coursera 上的《机器学习》 ; 调包跑算法 。 看完这个后可能大家会有很多不解或者很多疑惑。不着急,我们一个一个解答。 1.1 快速看完《西瓜书》 问题一:为什么要选《机器学习》? 因为这本书真的很不错,作为入门书籍非常合适。同样有名的《统计学习方法》虽然也很不错,但是其对小白来说相对较难。虽然《西瓜书》上面也有公式,但我们在初学的时候太复杂的完全可以先跳过去,并且书中还配有西瓜的例子,可以很好的帮助同学们理解算法的工作过程。 问题二:为什么要快速看完? 我这里强调快速,是因为快速真的很重要。因为如果战线拉得太长,如果一开始看的太细又读哪儿哪不懂,人是很容易有排斥心理的。最简单的一个例子,你想想你背英语单词的时候,多少次是从“abandon”开始背起的。每次快要期末考试了,或者四六级

机器学习常见算法

强颜欢笑 提交于 2021-02-14 12:56:11
一 线性回归 链接:https://www.cnblogs.com/LUOyaXIONG/p/10690191.html 二 逻辑回归 链接:https://www.cnblogs.com/LUOyaXIONG/p/10697596.html 三 k-近邻算法 链接:https://www.cnblogs.com/LUOyaXIONG/p/10698121.html 四 决策树 链接:https://www.cnblogs.com/LUOyaXIONG/p/10705304.html 五 随机森林 链接:https://www.cnblogs.com/LUOyaXIONG/p/11528575.html 六 支持向量机 链接:https://www.cnblogs.com/LUOyaXIONG/p/10686824.html 七 朴素贝叶斯 链接:https://www.cnblogs.com/LUOyaXIONG/p/10702288.html 八 EM算法 链接:https://www.cnblogs.com/LUOyaXIONG/p/10703120.html 九 Adaboost 链接:https://www.cnblogs.com/LUOyaXIONG/p/10951438.html 十 GBDT 链接:https://www.cnblogs.com/LUOyaXIONG

常见机器学习算法背后的数学

三世轮回 提交于 2021-02-14 12:13:45
不同的机器学习算法是如何从数据中学习并预测未见数据的呢? 机器学习算法是这样设计的,它们从经验中学习,当它们获取越来越多的数据时,性能就会提高。每种算法都有自己学习和预测数据的方法。在本文中,我们将介绍一些机器学习算法的功能,以及在这些算法中实现的有助于学习过程的一些数学方程。 机器学习算法的类型 机器学习算法大致可以分为以下四类: 监督学习:预测的目标或输出变量是已知的。这些算法生成一个函数,该函数将输入映射到输出变量。回归和分类算法属于这一类。在回归中,输出变量是连续的,而在分类中,输出变量包含两个或更多的离散值。一些监督学习算法包括线性回归,逻辑回归,随机森林,支持向量机,决策树,朴素贝叶斯,神经网络。 无监督学习:目标或输出变量是未知的。这些算法通常对数据进行分析并生成数据簇。关联、聚类和维数约简算法属于这一类。K-means聚类、PCA(主成分分析)、Apriori算法等是非监督学习算法。 半监督学习:它是监督和非监督学习方法的结合。它使用已知数据来训练自己,然后标记未知数据。 强化学习:机器或代理被训练从“试错”过程中学习。机器从过去的决策经验中学习,并利用它的学习来预测未来决策的结果。强化学习算法的例子有Q-Learning, Temporal Difference等。 线性回归 线性回归是通过拟合数据点上的最佳直线来预测连续变量的结果

How to install Xgboost on macOS compiled with GPU Support?

浪尽此生 提交于 2021-02-10 12:48:26
问题 I am trying to install xgboost integrated with GPU support, on my MacOS Mojave(10.14.6) from last 3 days, however, no success has been reached. I tried 2 approaches: pip install xgboost xgboost is installed here and it runs successfully without GPU option(i.e., without tree_method=’gpu_hist’). I want to run with gpu_hist by giving “tree_method=’gpu_hist’ ” in tree parameters. When I gave “tree_method=’gpu_hist’ ” in tree parameters, following error has come: XGBoostError: [12:10:34] /Users

Windows Error 0xe06d7363 when using Cross Validation XGboost

核能气质少年 提交于 2021-02-10 12:42:33
问题 I am using xgb api for python and when trying to do xgb.cv I get the following error, param = {'max_depth': 6, 'eta': 0.1,'objective' :'reg:squarederror','subsample':0.8 ,'gamma':0, 'colsample_bytree':1,'nthread':cores,'base_score':y_train.mean(),'eval_metric':'rmse'} num_round = 1 evallist = [(test, 'eval'), (train, 'train')] xgb.cv(param, train, num_round, nfold=5, metrics={'error'}, seed=0, callbacks=[xgb.callback.print_evaluation(show_stdv=True)]) OSError Traceback (most recent call last)

Windows Error 0xe06d7363 when using Cross Validation XGboost

我与影子孤独终老i 提交于 2021-02-10 12:42:13
问题 I am using xgb api for python and when trying to do xgb.cv I get the following error, param = {'max_depth': 6, 'eta': 0.1,'objective' :'reg:squarederror','subsample':0.8 ,'gamma':0, 'colsample_bytree':1,'nthread':cores,'base_score':y_train.mean(),'eval_metric':'rmse'} num_round = 1 evallist = [(test, 'eval'), (train, 'train')] xgb.cv(param, train, num_round, nfold=5, metrics={'error'}, seed=0, callbacks=[xgb.callback.print_evaluation(show_stdv=True)]) OSError Traceback (most recent call last)

Prediction of a discrete numerical target. Multiclass Classifier or Regressor?

喜夏-厌秋 提交于 2021-02-08 10:16:24
问题 In brief, I am trying to come up with a ML (and later DL model) for predicting control input variable of my computer simulation model, based on all other model input variables - let's call them environmental variables. Whether the simulation gives a convergent result or not depends on the value of the control variable. The database for the problem has been generated in a long, iterative simulation run with different scenarios. It consists of all environmental inputs, the control input value,

Prediction of a discrete numerical target. Multiclass Classifier or Regressor?

旧城冷巷雨未停 提交于 2021-02-08 10:15:22
问题 In brief, I am trying to come up with a ML (and later DL model) for predicting control input variable of my computer simulation model, based on all other model input variables - let's call them environmental variables. Whether the simulation gives a convergent result or not depends on the value of the control variable. The database for the problem has been generated in a long, iterative simulation run with different scenarios. It consists of all environmental inputs, the control input value,