首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ML Mastery 博客文章翻译 20220116 更新

通过从零开始实现机器学习算法来理解它们(以及绕过坏代码的策略) 使用随机森林:在 121 个数据集上测试 179 个分类器 为什么从零开始实现机器学习算法 Machine Learning Mastery...测试和验证数据集之间有什么区别? 为什么机器学习每次得到的结果都不一样?...如何重塑 Keras 长短期记忆网络的输入数据 如何在 Keras 中重塑长短期存储网络的输入数据 了解 Keras 中 LSTM 的返回序列和返回状态之间的差异 RNN 展开的温和介绍 5 个使用 LSTM...牛津自然语言处理深度学习课程 如何为机器翻译准备法语到英语的数据集 如何为情感分析准备电影评论数据 如何为文本摘要准备新闻文章 如何准备照片标题数据集来训练深度学习模型 如何使用 Keras 为深度学习准备文本数据...如何将时间序列数据分解为趋势和季节性 如何用 ARCH 和 GARCH 为时间序列预测建模波动率 如何使用 Python 差分时间序列数据集 Python 中用于时间序列预测的指数平滑的温和介绍 Python

3.4K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    终于有人把XGBoost 和 LightGBM 讲明白了,项目中最主流的集成算法!

    下图分别显示了 XGBoost、XGBoost_hist(利用梯度直方图的 XGBoost) 和 LightGBM 三者之间针对不同数据集情况下的内存和训练时间的对比: ?...稀疏特征优化 XGBoost 在进行预排序时只考虑非零值进行加速,而 LightGBM 也采用类似策略:只用非零特征构建直方图。...2.1.3 互斥特征捆绑算法 高维特征往往是稀疏的,而且特征间可能是相互排斥的(如两个特征不同时取非零值),如果两个特征并不完全互斥(如只有一部分情况下是不同时取非零值),可以用互斥率表示互斥程度。...,因为非零值越多,互斥的概率会越大。...无论增益多大,乘以该比例之后几乎可以忽略;较大的那个拆分样本集,它几乎就是原始的样本集,增益几乎为零; 影响决策树学习:决策树依赖的是数据的统计信息,而独热码编码会把数据切分到零散的小空间上。

    5.4K20

    终于有人把XGBoost 和 LightGBM 讲明白了,项目中最主流的集成算法!

    下图分别显示了 XGBoost、XGBoost_hist(利用梯度直方图的 XGBoost) 和 LightGBM 三者之间针对不同数据集情况下的内存和训练时间的对比: ?...稀疏特征优化 XGBoost 在进行预排序时只考虑非零值进行加速,而 LightGBM 也采用类似策略:只用非零特征构建直方图。...2.1.3 互斥特征捆绑算法 高维特征往往是稀疏的,而且特征间可能是相互排斥的(如两个特征不同时取非零值),如果两个特征并不完全互斥(如只有一部分情况下是不同时取非零值),可以用互斥率表示互斥程度。...,因为非零值越多,互斥的概率会越大。...无论增益多大,乘以该比例之后几乎可以忽略;较大的那个拆分样本集,它几乎就是原始的样本集,增益几乎为零; 影响决策树学习:决策树依赖的是数据的统计信息,而独热码编码会把数据切分到零散的小空间上。

    5K21

    终于有人把XGBoost 和 LightGBM 讲明白了,项目中最主流的集成算法!

    下图分别显示了 XGBoost、XGBoost_hist(利用梯度直方图的 XGBoost) 和 LightGBM 三者之间针对不同数据集情况下的内存和训练时间的对比: ?...稀疏特征优化 XGBoost 在进行预排序时只考虑非零值进行加速,而 LightGBM 也采用类似策略:只用非零特征构建直方图。...2.1.3 互斥特征捆绑算法 高维特征往往是稀疏的,而且特征间可能是相互排斥的(如两个特征不同时取非零值),如果两个特征并不完全互斥(如只有一部分情况下是不同时取非零值),可以用互斥率表示互斥程度。...,因为非零值越多,互斥的概率会越大。...无论增益多大,乘以该比例之后几乎可以忽略;较大的那个拆分样本集,它几乎就是原始的样本集,增益几乎为零; 影响决策树学习:决策树依赖的是数据的统计信息,而独热码编码会把数据切分到零散的小空间上。

    1.6K10

    【ML】项目中最主流的集成算法XGBoost 和 LightGBM

    下图分别显示了 XGBoost、XGBoost_hist(利用梯度直方图的 XGBoost) 和 LightGBM 三者之间针对不同数据集情况下的内存和训练时间的对比: ?...稀疏特征优化 XGBoost 在进行预排序时只考虑非零值进行加速,而 LightGBM 也采用类似策略:只用非零特征构建直方图。...2.1.3 互斥特征捆绑算法 高维特征往往是稀疏的,而且特征间可能是相互排斥的(如两个特征不同时取非零值),如果两个特征并不完全互斥(如只有一部分情况下是不同时取非零值),可以用互斥率表示互斥程度。...,因为非零值越多,互斥的概率会越大。...无论增益多大,乘以该比例之后几乎可以忽略;较大的那个拆分样本集,它几乎就是原始的样本集,增益几乎为零; 影响决策树学习:决策树依赖的是数据的统计信息,而独热码编码会把数据切分到零散的小空间上。

    63510

    终于有人把XGBoost 和 LightGBM 讲明白了,项目中最主流的集成算法!

    1.1 数学原理 1.1.1 目标函数 我们知道 XGBoost 是由 k 个基模型组成的一个加法运算式: 其中 为第 k 个基模型, 为第 i 个样本的预测值。...稀疏特征优化 XGBoost 在进行预排序时只考虑非零值进行加速,而 LightGBM 也采用类似策略:只用非零特征构建直方图。...2.1.3 互斥特征捆绑算法 高维特征往往是稀疏的,而且特征间可能是相互排斥的(如两个特征不同时取非零值),如果两个特征并不完全互斥(如只有一部分情况下是不同时取非零值),可以用互斥率表示互斥程度。...将 EFB 算法中通过构建图,根据节点度来排序的策略改成了根据非零值的技术排序,因为非零值越多,互斥的概率会越大。...无论增益多大,乘以该比例之后几乎可以忽略;较大的那个拆分样本集,它几乎就是原始的样本集,增益几乎为零; 影响决策树学习:决策树依赖的是数据的统计信息,而独热码编码会把数据切分到零散的小空间上。

    1.2K20

    R+python︱XGBoost极端梯度上升以及forecastxgb(预测)+xgboost(回归)双案例解读

    甚至是在希格斯子比赛中的“奇葩”衡量标准AMS 交叉验证时可以返回模型在每一折作为预测集时的预测结果,方便构建ensemble模型。...这一步(如下所示)会在每一个可能值的变量使用标志建立一个稀疏矩阵。稀疏矩阵是一个矩阵的零的值。稀疏矩阵是一个大多数值为零的矩阵。相反,一个稠密矩阵是大多数值非零的矩阵。...“-1”意味着该命令会删除矩阵的第一列。 最后你需要指定数据集名称。 其中这个-1很有意思,response代表因变量,那么为什么还要“-1”,删去第一列?...dtrain, nrounds = nround, nfold = 5, prediction = TRUE) res$evaluation_log length(res$pred) 交叉验证时可以返回模型在每一折作为预测集时的预测结果...类似BOX-COX数据变换 在negative数据上使用数据变换,默认值为BoxCox.lambda(abs(y)) 不过,目前为止数据转换并没有很好地强化模型的性能 非平稳的情况 较多使用ARIMA来进行趋势预测

    4.1K10

    最全!两万字带你完整掌握八大决策树!

    的均方差之和最小所对应的特征和特征值划分点。表达式为: ? 其中, ? 为 ? 数据集的样本输出均值, ? 为 ? 数据集的样本输出均值。...C.稀疏特征优化 XGBoost 在进行预排序时只考虑非零值进行加速,而 LightGBM 也采用类似策略:只用非零特征构建直方图。...3)互斥特征捆绑算法 高维特征往往是稀疏的,而且特征间可能是相互排斥的(如两个特征不同时取非零值),如果两个特征并不完全互斥(如只有一部分情况下是不同时取非零值),可以用互斥率表示互斥程度。...,在特征不多的情况下可以应付,但如果特征维度达到百万级别,计算量则会非常大,为了改善效率,我们提出了一个更快的解决方案:将 EFB 算法中通过构建图,根据节点度来排序的策略改成了根据非零值的技术排序,因为非零值越多...无论增益多大,乘以该比例之后几乎可以忽略;较大的那个拆分样本集,它几乎就是原始的样本集,增益几乎为零; 影响决策树学习:决策树依赖的是数据的统计信息,而独热码编码会把数据切分到零散的小空间上。

    1.9K32

    从业多年,总结几点关于机器学习的经验教训

    如何解决数据收集问题? 如何扩展到大型数据集? 为什么特征工程如此重要? 如何从生产中的模型转变为功能完备的系统? 我们是否需要数据科学平台?...特征选择/提取,例如移除可能不相关的特征,并应用其他降维技术,例如主成分分析 (PCA)。 使用稀疏数据表示或特征哈希来减少具有许多零值的数据集的内存占用。...为ML模型设置不同的超参数值可以产生不同的结果。 例如,SVM的线性内核将无法对不可线性分离的数据进行分类。...2、解释性:正如我们之前看到的,许多用例不仅需要预测,还需要解释预测背后的原因: 为什么贷款被拒绝? 或者为什么保险单价格会上涨? 基于树和基于系数的算法直接允许可解释性,但神经网络不能够解释。...DL擅长的地方实际上涉及非结构化数据,即图像,文本或音频。 4、适用性:不要用霰弹枪杀死苍蝇。

    66331

    信用卡欺诈检测|用启发式搜索优化XGBoost超参数

    若有朋友需要本数据集,可直接联系原文作者云朵君(wx: Mr_cloud_data)免费获取! 对于XGBoost来说,训练及预测该数据集,并不是一个非常困难的情况。...本数据集相对较大,因此可以将其划分为训练集、验证集及测试集合,将在一个验证数据集上校准超参数,并在一个新的测试数据集上评估模型预测性能。...非欺诈交易分布和所有交易的总和分布使相同的,因为诈骗的案例很少,影响不了总体交易分布。 该数据集有两天的数据,所以它显示了正常交易的两个高峰。 但无法从两天的数据中识别出任何显著的欺诈交易模式。...所需的格式创建矩阵,为每个数据集传递预测器数据和标签。...然后训练模型,并将验证数据集上预测得到的F-Score与模型一起返回。

    95730

    Kaggle神器LightGBM最全解读!

    由于特征被离散化后,找到的并不是很精确的分割点,所以会对结果产生影响。但在不同的数据集上的结果表明,离散化的分割点对最终的精度影响并不是很大,甚至有时候会更好一点。...图:直方图做差 注意: XGBoost 在进行预排序时只考虑非零值进行加速,而 LightGBM 也采用类似策略:只用非零特征构建直方图。...通常被捆绑的特征都是互斥的(即特征不会同时为非零值,像one-hot),这样两个特征捆绑起来才不会丢失信息。...为了继续提高效率,LightGBM提出了一种更加高效的无图的排序策略:将特征按照非零值个数排序,这和使用图节点的度排序相似,因为更多的非零值通常会导致冲突,新算法在算法3基础上改变了排序策略。...会影响决策树的学习。因为就算可以对这个类别特征进行切分,独热编码也会把数据切分到很多零散的小空间上,如下图左边所示。

    4.7K30

    算法面试太难?反手就是一波面经

    9、DQN模型为什么要做经验回放 10、数据之间如果不是独立同分布的会怎样 11、AUC的原理介绍一下 12、XGBOOst和GBDT的区别。...13、强化学习和监督学习的区别 14、神经网络里面的损失函数有哪些 15、机器学习中常见的激活函数有哪些?为什么通常需要零均值?...) 9、一个数组,所有数组都出现了两次,只有一个数出现了一次,返回这个数(位运算) 10、一个数组,一个数出现了超过一半次数,返回这个数 11、将除法的结果用字符串返回,如果能够除尽,则返回相除的结果,...7、如何预测一家店分品类的销量 8、信息流采样,有n份数据,但是n的长度并不知道,设计一个采样算法,使得每份被选择的概率是相同的。...10、在CTR预估问题中,假设训练数据的正负样本数为1:4,测试数据中的正负样本数也为1:4,那么此时模型对测试集,学到的平均点击率为1/(1+4),假设此时采取了欠采样策略,使正负样本数为1:1,对同样的测试集进行预测

    1.8K30

    ML Mastery 博客文章翻译(二)20220116 更新

    DeepLearningAI 卷积神经网络课程(复习) 如何在 Keras 中配置图像数据扩充 如何从零开始为 CIFAR-10 照片分类开发 CNN 用于 Fashion-MNIST 服装分类的深度学习...不平衡数据集的单类分类算法 如何计算不平衡分类的准确率、召回率和 F-Measure 音素不平衡类别数据集的预测模型 如何校准不平衡分类的概率 不平衡分类概率度量的温和介绍 用于不平衡分类的随机过采样和欠采样...为机器学习学习概率的 5 个理由 Machine Learning Mastery R 机器学习教程 从乘客存活预测案例研究中获得的应用机器学习经验 R 机器学习书籍 用于应用预测建模的 Caret...如何获得更多 Weka 机器学习工作台的帮助 如何使用 Weka 处理机器学习数据中的缺失值 如何在 Weka 中运行你的第一个分类器 如何在 Weka 中调整机器学习算法 在 Weka 中为更好的预测使用提升...针对机器学习问题的快速脏数据分析 如何在 Weka 中浏览回归机器学习项目 如何保存你的机器学习模型并在 Weka 中做出预测 Weka 中用于练习的标准机器学习数据集 Weka 中解决机器学习问题的模板

    4.4K30

    独家 | XGBoost介绍:用监督学习来预测期望寿命

    本文将介绍XGBoost的定义,并利用这一模型对人类指数官方数据集进行回归预测。 一座漂亮的森林,是如此的随机!...来源:Pixabay 今天我们将会用XGBoost提升树对人类发展指数官方数据集进行回归预测。XGBoost是一种可以使用提升树进行多核并行训练的框架。...今天我们将用XGBoost提升树对人类发展指数官方数据集进行回归预测。谁说监督学习全都是针对分类问题的? XGBoost:是什么?...不管怎样,每个叶节点会在我们的预测空间上返回一个数值(或是向量)。 针对每一个非叶节点的子节点,提升树都需要决定:在一个确定的特征值和一个临界值之间进行数值比较。 目前只是定义了一棵回归树。...在我们获得了大量的指标后,我只是手动选取了其中一些我觉得与我们的标签有关联(或许没有)的指标,其实也可以选择其他的指标。 下面的代码是为了把我们这些形式古怪的数据集整理为地更易使用的格式。

    1.5K31

    【Python篇】深入机器学习核心:XGBoost 从入门到实战

    XGBoost 完整学习指南:从零开始掌握梯度提升 1. 前言 在机器学习中,XGBoost 是一种基于梯度提升的决策树(GBDT)实现,因其卓越的性能和速度,广泛应用于分类、回归等任务。...梯度提升:使用损失函数的梯度信息来逐步优化模型。 XGBoost 提供了对内存效率、计算速度、并行化的优化,是一个非常适合大数据和高维数据集的工具。 3....我们将使用经典的鸢尾花数据集(Iris dataset),这是一个用于分类任务的多类数据集。...,最后返回最优组合。...实战案例:XGBoost 与 Kaggle 竞赛 XGBoost 在许多 Kaggle 竞赛中取得了优异的成绩。以下是一个实际案例:我们将使用泰坦尼克号乘客生存预测数据集,进行完整的模型训练与评估。

    1.3K10

    【深度研究】Stacking 集成学习在多因子选股中的应用

    训练数据划分:样本内数据74个月,其中前72个月的数据为训练集,后2个月的数据为验证集。样本外数据(测试数据)为截面后1个月的数据。...首先选取第100-171个月的数据作为训练数据集,172-173个月的数据作为验证集。利用XGBoost模型对训练数据集进行训练。训练完成后使用该模型对验证集进行预测,得到第一层输出。 2....另外,因子在2011年至今的IC均值为10.94%,IR比率为1.47,IC值大于零比例为91.86%;因子在2015年至今的IC均值为12.57%,IR比率为1.59,IC值大于零比例为94.74%,...将Learn1 - Learn3作为训练数据集,Learn4作为验证数据集,预测结果为Predict4。...将前三个数据集视为训练数据集,最后一个作为验证数据集进行预测。 步骤三:将验证集上生成的预测结果作为新的特征,该特征是样本内数据在模型1上的Stacking转换。

    2K21

    猫头虎 分享:Python库 XGBoost 的简介、安装、用法详解入门教程

    今天猫头虎就给大家带来一篇详细的 XGBoost 入门教程,帮助大家从零开始掌握这个在机器学习领域备受欢迎的工具。...数据预处理 我们使用经典的 Iris 数据集 进行演示: # 加载数据集 iris = load_iris() X, y = iris.data, iris.target # 拆分数据集 X_train...模型预测与评估 最后,我们使用测试集进行预测并评估模型的准确性: # 预测 y_pred = model.predict(X_test) # 计算准确率 accuracy = accuracy_score...(y_test, y_pred) print(f"Model Accuracy: {accuracy:.2f}") 常见问题与解决方法 在使用 XGBoost 的过程中,可能会遇到一些常见问题。...展望未来,随着数据量的不断增长和算法的进一步优化,XGBoost 将在大规模数据处理和实时预测中发挥更加重要的作用。期待大家在实践中灵活运用这个工具,解决更多复杂的机器学习问题。

    37010

    塔秘 | 详解XGBoost机器学习模型的决策过程

    导读 本文用一个具体的数据集分析了 XGBoost 机器学习模型的预测过程,通过使用可视化手段展示结果,我们可以更好地理解模型的预测过程。...随着机器学习的产业应用不断发展,理解、解释和定义机器学习模型的工作原理似乎已成日益明显的趋势。对于非深度学习类型的机器学习分类问题,XGBoost 是最流行的库。...另一个例子是,如果我们的机器学习模型说,一个婚姻档案和一个出生档案是和同一个人相关的(档案关联任务),但档案上的日期暗示这桩婚姻的双方分别是一个很老的人和一个很年轻的人,我们可能会质疑为什么模型会将它们关联起来...现在让我们将数据集分为训练集和测试集。 ? 并通过少量的超参数测试构建一个训练管道。 ? ? 接着查看测试结果。为简单起见,我们将会使用与 Kaggle 相同的指标:准确率。 ?...基本上,首先需要定义一个处理训练数据的解释器(我们需要确保传递给解释器的估算训练数据集正是将要训练的数据集): ? 随后你必须定义一个函数,它以特征数组为变量,并返回一个数组和每个类的概率: ?

    1.4K110
    领券