初学者如何选择合适的机器学习算法(附算法 如何为分类问题选择合适的机器学习算法

作者&投稿:唱柴 (若有异议请与网页底部的电邮联系)
如何为分类问题选择合适的机器学习算法 若要达到一定的准确率,需要尝试各种各样的分类器,并通过交叉验证选择最好的一个。但是,如果你只是为你的问题寻找一个“足够好”的算法或者一个起点,以下准则有利于选择合适的分类器:你的训练集有多大?如果训练集很小,那么高偏差/低方差分类器(如朴素贝叶斯分类器)要优于低偏差/高方差分类器(如k近邻分类器),因为后者容易过拟合。然而,随着训练集的增大,低偏差/高方差分类器将开始胜出(它们具有较低的渐近误差),因为高偏差分类器不足以提供准确的模型。这可以认为这是生成模型与判别模型的区别。一些特定算法比较朴素贝叶斯优点:简单;如果朴素贝叶斯(NB)条件独立性假设成立,相比于逻辑回归这类的判别模型,朴素贝叶斯分类器将收敛得更快,所以你只需要较小的训练集。而且,即使NB假设不成立,朴素贝叶斯分类器在实践方面仍然表现很好。如果想得到简单快捷的执行效果,这将是个好的选择。缺点:不能学习特征之间的相互作用(比如,它不能学习出:虽然你喜欢布拉德·皮特和汤姆·克鲁斯的电影,但却不喜欢他们一起合作的电影)。逻辑回归优点:有许多正则化模型的方法,不需要像在朴素贝叶斯分类器中那样担心特征间的相互关联性。与决策树和支持向量机 不同,有一个很好的概率解释,并能容易地更新模型来吸收新数据(使用一个在线梯度下降方法)。如果你想要一个概率框架(比如,简单地调整分类阈值,说出什么时候是不太确定的,或者获得置信区间),或你期望未来接收更多想要快速并入模型中的训练数据,就选择逻辑回归。决策树优点:易于说明和解释,很容易地处理特征间的相互作用,并且是非参数化的,不用担心异常值或者数据是否线性可分(比如,决策树可以很容易地某特征x的低端是类A,中间是类B,然后高端又是类A的情况)。缺点:1)不支持在线学习,当有新样本时需要重建决策树。2)容易过拟合,但这也正是诸如随机森林(或提高树)之类的集成方法的切入点。另外,随机森林适用于很多分类问题(通常略优于支持向量机)---快速并且可扩展,不像支持向量机那样调一堆参数。随机森林正渐渐开始偷走它的“王冠”。 SVMs 优点:高准确率,为过拟合提供了好的理论保证;即使数据在基础特征空间线性不可分,只要选定一个恰当的核函数,仍然能够取得很好的分类效果。它们在超高维空间是常态的文本分类问题中尤其受欢迎。然而,它们内存消耗大,难于解释,运行和调参 复杂,尽管如此,更好的数据往往胜过更好的算法,设计好的特征非常重要。如果有一个庞大数据集,这时使用哪种分类算法在分类性能方面可能并不要紧;因此,要基于速度和易用性选择算法。

如何为分类问题选择合适的机器学习算法 若要达到一定的准确率,需要尝试各种各样的分类器,并通过交叉验证选择最好的一个。但是,如果你只是为你的问题寻找一个“足够好”的算法或者一个起点,以下准则有利于选择合适的分类器:你的训练集有多大?如果训练集很小,那么高偏差/低方差分类器(如朴素贝叶斯分类器)要优于低偏差/高方差分类器(如k近邻分类器),因为后者容易过拟合。然而,随着训练集的增大,低偏差/高方差分类器将开始胜出(它们具有较低的渐近误差),因为高偏差分类器不足以提供准确的模型。这可以认为这是生成模型与判别模型的区别。一些特定算法比较朴素贝叶斯优点:简单;如果朴素贝叶斯(NB)条件独立性假设成立,相比于逻辑回归这类的判别模型,朴素贝叶斯分类器将收敛得更快,所以你只需要较小的训练集。而且,即使NB假设不成立,朴素贝叶斯分类器在实践方面仍然表现很好。如果想得到简单快捷的执行效果,这将是个好的选择。缺点:不能学习特征之间的相互作用(比如,它不能学习出:虽然你喜欢布拉德·皮特和汤姆·克鲁斯的电影,但却不喜欢他们一起合作的电影)。逻辑回归优点:有许多正则化模型的方法,不需要像在朴素贝叶斯分类器中那样担心特征间的相互关联性。与决策树和支持向量机 不同,有一个很好的概率解释,并能容易地更新模型来吸收新数据(使用一个在线梯度下降方法)。如果你想要一个概率框架(比如,简单地调整分类阈值,说出什么时候是不太确定的,或者获得置信区间),或你期望未来接收更多想要快速并入模型中的训练数据,就选择逻辑回归。决策树优点:易于说明和解释,很容易地处理特征间的相互作用,并且是非参数化的,不用担心异常值或者数据是否线性可分(比如,决策树可以很容易地某特征x的低端是类A,中间是类B,然后高端又是类A的情况)。缺点:1)不支持在线学习,当有新样本时需要重建决策树。2)容易过拟合,但这也正是诸如随机森林(或提高树)之类的集成方法的切入点。另外,随机森林适用于很多分类问题(通常略优于支持向量机)---快速并且可扩展,不像支持向量机那样调一堆参数。随机森林正渐渐开始偷走它的“王冠”。 SVMs 优点:高准确率,为过拟合提供了好的理论保证;即使数据在基础特征空间线性不可分,只要选定一个恰当的核函数,仍然能够取得很好的分类效果。它们在超高维空间是常态的文本分类问题中尤其受欢迎。然而,它们内存消耗大,难于解释,运行和调参 复杂,尽管如此,更好的数据往往胜过更好的算法,设计好的特征非常重要。如果有一个庞大数据集,这时使用哪种分类算法在分类性能方面可能并不要紧;因此,要基于速度和易用性选择算法。

如何为分类问题选择合适的机器学习算法 若要达到一定的准确率,需要尝试各种各样的分类器,并通过交叉验证选择最好的一个。但是,如果你只是为你的问题寻找一个“足够好”的算法或者一个起点,以下准则有利于选择合适的分类器:你的训练集有多大?如果训练集很小,那么高偏差/低方差分类器(如朴素贝叶斯分类器)要优于低偏差/高方差分类器(如k近邻分类器),因为后者容易过拟合。然而,随着训练集的增大,低偏差/高方差分类器将开始胜出(它们具有较低的渐近误差),因为高偏差分类器不足以提供准确的模型。这可以认为这是生成模型与判别模型的区别。一些特定算法比较朴素贝叶斯优点:简单;如果朴素贝叶斯(NB)条件独立性假设成立,相比于逻辑回归这类的判别模型,朴素贝叶斯分类器将收敛得更快,所以你只需要较小的训练集。而且,即使NB假设不成立,朴素贝叶斯分类器在实践方面仍然表现很好。如果想得到简单快捷的执行效果,这将是个好的选择。缺点:不能学习特征之间的相互作用(比如,它不能学习出:虽然你喜欢布拉德·皮特和汤姆·克鲁斯的电影,但却不喜欢他们一起合作的电影)。逻辑回归优点:有许多正则化模型的方法,不需要像在朴素贝叶斯分类器中那样担心特征间的相互关联性。与决策树和支持向量机 不同,有一个很好的概率解释,并能容易地更新模型来吸收新数据(使用一个在线梯度下降方法)。如果你想要一个概率框架(比如,简单地调整分类阈值,说出什么时候是不太确定的,或者获得置信区间),或你期望未来接收更多想要快速并入模型中的训练数据,就选择逻辑回归。决策树优点:易于说明和解释,很容易地处理特征间的相互作用,并且是非参数化的,不用担心异常值或者数据是否线性可分(比如,决策树可以很容易地某特征x的低端是类A,中间是类B,然后高端又是类A的情况)。缺点:1)不支持在线学习,当有新样本时需要重建决策树。2)容易过拟合,但这也正是诸如随机森林(或提高树)之类的集成方法的切入点。另外,随机森林适用于很多分类问题(通常略优于支持向量机)---快速并且可扩展,不像支持向量机那样调一堆参数。随机森林正渐渐开始偷走它的“王冠”。 SVMs 优点:高准确率,为过拟合提供了好的理论保证;即使数据在基础特征空间线性不可分,只要选定一个恰当的核函数,仍然能够取得很好的分类效果。它们在超高维空间是常态的文本分类问题中尤其受欢迎。然而,它们内存消耗大,难于解释,运行和调参 复杂,尽管如此,更好的数据往往胜过更好的算法,设计好的特征非常重要。如果有一个庞大数据集,这时使用哪种分类算法在分类性能方面可能并不要紧;因此,要基于速度和易用性选择算法。

如何为分类问题选择合适的机器学习算法 若要达到一定的准确率,需要尝试各种各样的分类器,并通过交叉验证选择最好的一个。但是,如果你只是为你的问题寻找一个“足够好”的算法或者一个起点,以下准则有利于选择合适的分类器:你的训练集有多大?如果训练集很小,那么高偏差/低方差分类器(如朴素贝叶斯分类器)要优于低偏差/高方差分类器(如k近邻分类器),因为后者容易过拟合。然而,随着训练集的增大,低偏差/高方差分类器将开始胜出(它们具有较低的渐近误差),因为高偏差分类器不足以提供准确的模型。这可以认为这是生成模型与判别模型的区别。一些特定算法比较朴素贝叶斯优点:简单;如果朴素贝叶斯(NB)条件独立性假设成立,相比于逻辑回归这类的判别模型,朴素贝叶斯分类器将收敛得更快,所以你只需要较小的训练集。而且,即使NB假设不成立,朴素贝叶斯分类器在实践方面仍然表现很好。如果想得到简单快捷的执行效果,这将是个好的选择。缺点:不能学习特征之间的相互作用(比如,它不能学习出:虽然你喜欢布拉德·皮特和汤姆·克鲁斯的电影,但却不喜欢他们一起合作的电影)。逻辑回归优点:有许多正则化模型的方法,不需要像在朴素贝叶斯分类器中那样担心特征间的相互关联性。与决策树和支持向量机 不同,有一个很好的概率解释,并能容易地更新模型来吸收新数据(使用一个在线梯度下降方法)。如果你想要一个概率框架(比如,简单地调整分类阈值,说出什么时候是不太确定的,或者获得置信区间),或你期望未来接收更多想要快速并入模型中的训练数据,就选择逻辑回归。决策树优点:易于说明和解释,很容易地处理特征间的相互作用,并且是非参数化的,不用担心异常值或者数据是否线性可分(比如,决策树可以很容易地某特征x的低端是类A,中间是类B,然后高端又是类A的情况)。缺点:1)不支持在线学习,当有新样本时需要重建决策树。2)容易过拟合,但这也正是诸如随机森林(或提高树)之类的集成方法的切入点。另外,随机森林适用于很多分类问题(通常略优于支持向量机)---快速并且可扩展,不像支持向量机那样调一堆参数。随机森林正渐渐开始偷走它的“王冠”。 SVMs 优点:高准确率,为过拟合提供了好的理论保证;即使数据在基础特征空间线性不可分,只要选定一个恰当的核函数,仍然能够取得很好的分类效果。它们在超高维空间是常态的文本分类问题中尤其受欢迎。然而,它们内存消耗大,难于解释,运行和调参 复杂,尽管如此,更好的数据往往胜过更好的算法,设计好的特征非常重要。如果有一个庞大数据集,这时使用哪种分类算法在分类性能方面可能并不要紧;因此,要基于速度和易用性选择算法。

机器学习该怎么入门~

机器学习入门最佳的方法其实就是理论和代码一起学习。一边看相应的理论推导,一边看并且实践经典代码。所以,为了更快入门,我推荐你最好能够懂点MATLAB或者是Python语言。

Matlab和Python说实话做高端的机器学习肯定是不推荐的,但是如果你想的是机器学习快速入门,那这两门语言绝对是绝佳选择。

第一步
有了上述基础后,你可以开始看点机器学习的相关内容了。我看很多人推荐elements of machine learning。我想说,你想让一个基础为零的人去看这本书,真的合适吗???

所以,我推荐的是Machine Learning in action,(这里面的完成语言为Python)这是英文版本的。当然如果你觉得英文对你是一个完全过不去的坎,(虽然我建议做技术的人都必须至少要看得懂英文)现在有中文版本,叫“机器学习实践”。

这本书用尽量少的公式把机器学习的基本算法都过了一遍,而且还讲得很清楚,更为重要的是他将公式和代码结合了起来。因此,你的机器学习并没有那么的抽象了,你知道算法里的公式如何的转化为代码。

所以,第一步,你可以耐着性子将这本书看完。反正我当时,把书中的代码自己敲了一次,虽然代码有的下载,你也可以选择只是把代码看懂完事。但我还是建议,自己敲一次,运行运行,这样你会得到不一样的体会。

第二步

学习Coursera上面Andrew Ng老师的machine learning的课程。这门课造福了众多机器学习的入门者,不仅仅是因为课程全面,内容由浅入深。

总之,一定要耐着性子过一遍甚至是几面这个课程。

第三步

这时候你已经对机器学习很多简单的算法比较清楚了,但是可能还没有一种大的全局观。所以,我建议大家可以看看这两本中文教材。周志华老师的西瓜书《机器学习》和李航老师的《统计学习方法》。

在前沿部分和第一到第三步的内容,如果你能按照这几步走下来,入门是肯定可以的。至于后面的机器学习精通部分,我也只能说:Good Luck and Have Fun

如何为分类问题选择合适的机器学习算法
若要达到一定的准确率,需要尝试各种各样的分类器,并通过交叉验证选择最好的一个。但是,如果你只是为你的问题寻找一个“足够好”的算法或者一个起点,以下准则有利于选择合适的分类器:
你的训练集有多大?
如果训练集很小,那么高偏差/低方差分类器(如朴素贝叶斯分类器)要优于低偏差/高方差分类器(如k近邻分类器),因为后者容易过拟合。
然而,随着训练集的增大,低偏差/高方差分类器将开始胜出(它们具有较低的渐近误差),因为高偏差分类器不足以提供准确的模型。这可以认为这是生成模型与判别模型的区别。
一些特定算法比较
朴素贝叶斯
优点:简单;如果朴素贝叶斯(NB)条件独立性假设成立,相比于逻辑回归这类的判别模型,朴素贝叶斯分类器将收敛得更快,所以你只需要较小的训练集。而且,即使NB假设不成立,朴素贝叶斯分类器在实践方面仍然表现很好。如果想得到简单快捷的执行效果,这将是个好的选择。
缺点:不能学习特征之间的相互作用(比如,它不能学习出:虽然你喜欢布拉德·皮特和汤姆·克鲁斯的电影,但却不喜欢他们一起合作的电影)。
逻辑回归
优点:有许多正则化模型的方法,不需要像在朴素贝叶斯分类器中那样担心特征间的相互关联性。与决策树和支持向量机不同,有一个很好的概率解释,并能容易地更新模型来吸收新数据(使用一个在线梯度下降方法)。如果你想要一个概率框架(比如,简单地调整分类阈值,说出什么时候是不太确定的,或者获得置信区间),或你期望未来接收更多想要快速并入模型中的训练数据,就选择逻辑回归。
决策树
优点:易于说明和解释,很容易地处理特征间的相互作用,并且是非参数化的,不用担心异常值或者数据是否线性可分(比如,决策树可以很容易地某特征x的低端是类A,中间是类B,然后高端又是类A的情况)。
缺点:1)不支持在线学习,当有新样本时需要重建决策树。2)容易过拟合,但这也正是诸如随机森林(或提高树)之类的集成方法的切入点。另外,随机森林适用于很多分类问题(通常略优于支持向量机)---快速并且可扩展,不像支持向量机那样调一堆参数。随机森林正渐渐开始偷走它的“王冠”。
SVMs
优点:高准确率,为过拟合提供了好的理论保证;即使数据在基础特征空间线性不可分,只要选定一个恰当的核函数,仍然能够取得很好的分类效果。它们在超高维空间是常态的文本分类问题中尤其受欢迎。然而,它们内存消耗大,难于解释,运行和调参 复杂,
尽管如此,更好的数据往往胜过更好的算法,设计好的特征非常重要。如果有一个庞大数据集,这时使用哪种分类算法在分类性能方面可能并不要紧;因此,要基于速度和易用性选择算法。

一起来读西瓜书:第二章 模型评估与选择
答:4)有了实验评估方法和性能度量,剩下的就是要好好研究研究如何应用方法和度量指标去对学习器的性能进行评估比较了 研究怎么来做“比较”是很有必要的,因为第一,我们要的是泛化性能,但是能用的只是测试性能;第二,测试性能和测试集的选择有很大关系;第三,有的机器学习算法本身也有随机性,对同一测试集的多次测试结...

如何进行机器学习?
答:2、数据清洗:对数据进行初步处理,包括去重、缺失值填充、异常值处理等。3、预处理:对数据进行进一步处理,例如特征选择、数据变换(如标准化、正则化)、降维等,以提高数据质量和模型训练效果。4、模型训练:选择合适的机器学习算法,并使用已处理好的数据集来训练模型。5、模型评估:对训练好的模型...

常见的机器学习的相关算法包括
答:这只是机器学习领域中的一小部分算法,还有许多其他的算法和技术。根据问题的性质和数据的特点,选择适合的算法是非常重要的。不同的算法有不同的假设和适用场景,因此在学习和应用机器学习算法时,需要综合考虑问题的需求和数据的特点。什么是监督学习算法 监督学习是机器学习的一种常见方法,它通过使用带有...

机器学习中算法的优缺点之最近邻算法
答:机器学习中有个算法是十分重要的,那就是最近邻算法,这种算法被大家称为KNN。我们在学习机器学习知识的时候一定要学习这种算法,其实不管是什么算法都是有自己的优缺点的,KNN算法也不例外,在这篇文章中我们就详细的给大家介绍一下KNN算法的优缺点,大家一定要好好学起来哟。说到KNN算法我们有必要说一...

机器学习模型优缺点对比
答:在机器学习的广阔世界中,不同模型各有其独特魅力与局限。我们来深入探讨SVM、GBDT、神经网络等主流算法的优缺点,以及它们如何在实际场景中发挥作用。精准与效率的平衡选择机器学习模型时,首要考虑的是精度与实验效率的平衡。SVM以其高准确率著称,尤其是通过核函数处理非线性问题,但内存消耗较大。GBDT(...

数据挖掘的十大经典算法,总算是讲清楚了,想提升自己的赶快收藏
答:今天主要分享其中10种经典算法,内容较干,建议收藏备用学习。 1. C4.5 C4.5算法是机器学习算法中的一种分类决策树算法,其核心算法是ID3算法. C4.5算法继承了ID3算法的优点,并在以下几方面对ID3算法进行了改进: 1) 用信息增益率来选择属性,克服了用信息增益选择属性时偏向选择取值多的属性的不足; 2) 在树构造...

机器学习中,有哪些特征选择的工程方法
答:由此可见,特征工程尤其是特征选择在机器学习中占有相当重要的地位。通常而言,特征选择是指选择获得相应模型和算法最好性能的特征集,工程上常用的方法有以下:1. 计算每一个特征与响应变量的相关性:工程上常用的手段有计算皮尔逊系数和互信息系数,皮尔逊系数只能衡量线性相关性而互信息系数能够很好地度量...

如何利用机器学习和人工智能提高金融预测的准确率和效率?
答:数据清洗和特征工程:在使用机器学习算法进行金融预测之前,需要对数据进行清洗和特征提取。这包括处理缺失值、异常值、离群点等,并找到最具预测能力的特征。选择合适的算法:不同的金融预测问题需要不同的机器学习算法,如线性回归、逻辑回归、决策树、随机森林等。需要根据问题类型和数据特征选择最适合的...

神经网络预测(利用机器学习算法实现准确预测未来趋势)
答:随着人工智能技术的快速发展,神经网络预测已经成为了一种非常流行的机器学习算法。神经网络预测可以帮助我们预测各种未来趋势,如股票价格、销售额、天气等。在本文中,我们将介绍神经网络预测的操作步骤,以及如何利用神经网络预测准确预测未来趋势。一、神经网络预测的操作步骤 神经网络预测的操作步骤分为以下几...

如何利用机器学习算法预测股市短期波动性?
答:预测股市短期波动性是一个复杂的问题,需要考虑众多因素,包括经济指标、公司业绩、政治局势等。机器学习算法可以利用历史数据和这些因素来预测股市价格变化。以下是一些常见的机器学习算法和应用方法,可以用来预测股市短期波动性:1.神经网络:神经网络是一种能够自我学习的算法,它可以利用历史数据识别价格模式...