机器学习 涉及内容、模型适用范围 、优缺点总结

2021-03-22 09:45发布

4条回答
金喆
2楼 · 2021-03-24 11:09

机器学习【一】K最近邻算法

涉及内容:

分类——————数据集生成器、KNN拟合数据

多元分类————生成数据集、KNN拟合

回归分析————用于回归分析的数据集生成器、KNN拟合、调整近邻数

KNN实战—酒的分类————数据集有哪些键、生成训练集和测试集、KNN拟合、新样本的分类进行预测

不适用:

  •  需要对数据集认真的预处理

  • 对规模超大的数据集拟合的时间较长

  • 对高维数据集拟合欠佳

  • 对稀疏数据集无能为力

 

 

 

 

 

 机器学习【二】广义线性模型

涉及内容:

 线性模型的图形表示————导入线性模型、拟合数据点、拟合新加的数据点、训练数据集的属性“xx_”

 线性模型特点—————用于回归分析的好几种线性模型之间的区别

最基本的线性模型:线性回归————

使用L2正则化的线性模型:岭回归————线性回归和岭回归之间的重要结论

使用L1正则化的线性模型:套索回归————

套索回归和岭回归的区别————

适用:

  • 对于特征变量较多的数据集,线性模型会十分强大【尤其是训练集的特征变量 > 数据点的数量时,可以达到近乎完美的预测】

优点:

  • 线性模型的训练非常快

  • 过程也很容易被人理解

缺点:

  •  数据集的特征比较少的时候,线性模型的表现就会相对偏弱

  • 使用线性模型的前提条件是假设目标y是数据特征的线性组合

 

 

 

 

 

机器学习【三】朴素贝叶斯

涉及内容:

基本概念————原理、贝叶斯定理、对天气的简单预测

贝努利朴素贝叶斯————适合符合贝努利分布【二项分布】的数据集

高斯朴素贝叶斯————适用样本的特征符合高斯分布【正态分布】

多项式朴素贝叶斯————用于拟合多项式分布的数据集、数据预处理工具MinMaxScaler

实战:判断肿瘤良性还是恶性————导入、拆分、拟合、随机预测、高斯朴素贝叶斯的学习曲线

适用:

  •  不考虑样本之间特征的关系——> 朴素贝叶斯分类器效率极高

  • 高斯朴素贝叶斯在预测方面,对于样本数量的要求不苛刻

优点:

  • 高斯朴素贝叶斯 可以应用于任何连续数值型的数据集中,如果是符合正态分布的数据集的话,得分会更高

  • 相对于线性模型,朴素贝叶斯效率更高——> 把数据集中的各个特征看作完全独立的,不考虑特征之间的关联关系,但同时,泛化能力更弱

  • 大数据时代,很多数据集的样本特征成千上万,这种情况下,模型的效率要比泛化性能多零点几个百分点的得分更重要

缺点:

  •  是相当好的分类器,但对于预测具体的数值并不是很擅长

  • 泛化能力弱

 

 

 

 

 

机器学习【四】决策树

 涉及内容:
原理————if/else推导

决策树构建————用决策树分类器分类【设定最大深度】、分类器表现、加大深度

优点:

  • 很容易将模型可视化

  • 由于决策树算法对每个样本特征单独处理——> 不需要对数据进行转换

  • 不需要对数据预处理

缺点:

  • 即使有预剪枝处理【使用max_depth、max_leaf_nodes参数】,还是不可避免出现过拟合问题

  • 泛化性能大打折扣

 

 

 

 

 机器学习【五】随机森林

涉及内容:

简介————是一种集合学习算法,可以用于分类,也可以用于回归、可解决过拟合问题

随机森林构建 ————bootstrap  、max_features、n_estimators、图形看看随机分类的表现

实战:判断月薪是否>5万————载入数据集、用get_dummies处理数据、用决策树建模并预测

额外功能:在数据集中对数据特征的重要性进行判断————可以通过这两个算法对高维数据进行分析,在诸多特征中保留最重要的,也便于对数据降维处理

优点:

  • 不要求对数据预处理

  • 集成决策树所有优点,弥补了不足

  • 支持并行处理【实现方式是n_jobs参数,记得此参数要和cpu内核数一致,多了无意义,n_jobs=-1,使用全部内核】

  • 注意随机森林生成每棵树的方法是随机的,不同的random_state会导致模型完全不同,要固化其值

缺点:

  • 对于超高维数据集、稀疏数据集,线性模型更好

  • 更消耗内存,速度慢,若要省内存+时间,用线性模型

 

 

 

 机器学习【六】支持向量机SVM——专治线性不可分

涉及内容:
SVM原理————核函数、数据投射至高维空间、多项式内核、RBF内核

支持向量机的SVM核函数————创建一个线性内核的支持向量机模型、SVM内核换成RBF

SVM的核函数和参数选择————不同核函数的SVM对比、linearSVM算法

 RBF内核SVC的gamma参数调节————结果分析

注意事项————3个非常重要的参数

SVM在回归分析中的应用:波士顿房价数据集——————了解数据集、SVR算法建立房价预测模型、StandardScaler数据预处理

优点:

  • 可应对高维数据集和低维数据集

  • 即使数据集中样本特征的测度都比较接近,如图像识别领域,以及样本特征数和样本数比较接近的时候,都游刃有余

缺点:

  • 当数据集中特征数量在1万以内,SVM可以驾驭,但数量大于10万,就非常占内存和耗费时间

  • 对数据预处理和参数调节要求很高

 

 

 

 

机器学习【七】神经网络

 原理————MLP算法

 神经网络中的非线性矫正————非线性矫正 rele 、进行双曲正切处理 tanh

神经网络的参数设置————各个参数的含义、图像展示MLP分类的情况、减少隐藏层的节点、给MLP分类器增加隐藏层数量设计激活函数为tanh、修改alpha参数

 实战——手写识别————MNIST数据集、识别

 优点

  • 计算能力充足且参数设置合适情况下,神经网络表现特优异

  • 对于特征类型单一的数据,变现不错

缺点

  •  训练时间长、对数据预处理要求高

  •  数据特征类型差异较大,随机森林或梯度上升随机决策树算法更好

  • MLP仅限于处理小数据集,对于更大或更复杂的数据集,可以进军深度学习

 

 

 

机器学习【八】数据预处理、降维、特征提取及聚类

 涉及内容:

数据预处理————StandardScaler预处理数据、MinMaxScaler数据预处理、RobustScaler数据预处理、Normalizer数据预处理

通过数据预处理提高模型准确率————训练一个MLP神经网络、使用MinMaxScaler进行数据预处理

数据降维————PCA主成分分析原理

 对数据降维以便于进行可视化————

原始特征与PCA主成分之间的关系————

特征提取————PCA主成分分析法用于特征提取、使用一些方法来提升模型的表现、PCA中的数据白化功能、非负矩阵分解用于特征提取

聚类算法————K均值算法、凝聚聚类算法、DBSCAN算法、eps参数、min_samples参数

适用数据降维的情况:

  • 超高维度数据

  • 特征之间有非常强烈的相关性【比如,人口数据中,男性为1,女性为0,去掉其中任何一列,不会丢失任何信息,可以降维,以降低模型的复杂度】

对于机器学习来说,合理有效地对数据进行表达是至关重要的

对于没有分类标签的数据来说,无监督学习的聚类算法可以帮助我们更好的理解数据集,并且为进一步训练模型打好基础

 

 

 

 

 

 机器学习【九】数据表达与特征工程

涉及内容:

数据表达————类型特征、连续特征、使用哑变量转换类型特征、get_dummies的使用、把数值特征也进行get_dummies转换、装箱处理【离散化处理】、用新的方法来表达已经装箱的数据——OneHotEncoder,独热编码、

数据“升维”————向数据集添加交互式特征、Numpy中的hstack函数、对特征进行交互式操作对模型产生的影响、向数据集添加多项式特征、PolynomialFeatures、处理后机器学习的模型的变化

自动特征选择————使用单一变量法进行特征选择、使用SelectPercentile进行特征选择、基于模型的特征选择、迭代式特征选择、递归特征剔出法RFE

 

对样本特征进行装箱的好处:

  • 纠正模型过拟合和欠拟合问题

  • 尤其针对大规模高纬度的数据集使用线性模型的时候,可以大幅度提高预测的准确率

 

 

 

 

 

 

 

 机器学习【十】模型评估与优化

涉及内容:

使用交叉验证对模型进行评估————sklearn中的交叉验证法、K折叠交叉验证法、随机拆分和“挨个儿试”

使用网格搜索寻找模型的最优参数————简单网格搜索、局限性、与交叉验证结合的网格搜索、GridSearchCV进行参数调优的过程

对分类模型的可信度进行评估————分类模型中的预测准确率、分类模型中的决定系数、.score给分类、回归模型评分的方法、GridSearchCV改变评分的方式

 

在sklearn中,cross_val_score对于分类模型默认使用的是K折叠交叉验证,而对于分类模型则默认使用分层K交叉验证法

 

 

 

机器学习【十一】管道模型

 涉及内容:
基本概念和使用————在数据预处理中遇到的问题及使用管道模型解决

 使用管道模型进行网格搜索————

 管道模型不仅可以把 数据预处理和模型训练集结合一起,也可以将很多不同的算法打包

 

 

 

 机器学习【十二】使用管道模型对股票涨幅进行回归分析

 涉及内容:

整理数据集————删除无效数值、去掉冗余信息、考虑是否把字符串类型的特征通过get_dummies转化成整型数值

.建立包含数据预处理和MLP模型的管道模型————使用make_pipeline便捷的建立管道模型

向管道模型添加特征选择步骤————提取管道模型每个步骤的属性

使用管道模型进行模型选择和参数调优————


嘿呦嘿呦拔萝卜
3楼 · 2021-03-31 10:40

机器学习【一】K最近邻算法

涉及内容:

分类——————数据集生成器、KNN拟合数据

多元分类————生成数据集、KNN拟合

回归分析————用于回归分析的数据集生成器、KNN拟合、调整近邻数

KNN实战—酒的分类————数据集有哪些键、生成训练集和测试集、KNN拟合、新样本的分类进行预测

不适用:

  •  需要对数据集认真的预处理

  • 对规模超大的数据集拟合的时间较长

  • 对高维数据集拟合欠佳

  • 对稀疏数据集无能为力


灰机带翅膀
4楼 · 2021-04-02 14:19

机器学习【一】K最近邻算法

涉及内容:

分类——————数据集生成器、KNN拟合数据

多元分类————生成数据集、KNN拟合

回归分析————用于回归分析的数据集生成器、KNN拟合、调整近邻数

KNN实战—酒的分类————数据集有哪些键、生成训练集和测试集、KNN拟合、新样本的分类进行预测

不适用:

  •  需要对数据集认真的预处理

  • 对规模超大的数据集拟合的时间较长

  • 对高维数据集拟合欠佳

  • 对稀疏数据集无能为力

 机器学习【二】广义线性模型

涉及内容:

 线性模型的图形表示————导入线性模型、拟合数据点、拟合新加的数据点、训练数据集的属性“xx_”

 线性模型特点—————用于回归分析的好几种线性模型之间的区别

最基本的线性模型:线性回归————

使用L2正则化的线性模型:岭回归————线性回归和岭回归之间的重要结论

使用L1正则化的线性模型:套索回归————

套索回归和岭回归的区别————

适用:

  • 对于特征变量较多的数据集,线性模型会十分强大【尤其是训练集的特征变量 > 数据点的数量时,可以达到近乎完美的预测】

优点:

  • 线性模型的训练非常快

  • 过程也很容易被人理解

缺点:

  •  数据集的特征比较少的时候,线性模型的表现就会相对偏弱

  • 使用线性模型的前提条件是假设目标y是数据特征的线性组合

 机器学习【三】朴素贝叶斯

涉及内容:

基本概念————原理、贝叶斯定理、对天气的简单预测

贝努利朴素贝叶斯————适合符合贝努利分布【二项分布】的数据集

高斯朴素贝叶斯————适用样本的特征符合高斯分布【正态分布】

多项式朴素贝叶斯————用于拟合多项式分布的数据集、数据预处理工具MinMaxScaler

实战:判断肿瘤良性还是恶性————导入、拆分、拟合、随机预测、高斯朴素贝叶斯的学习曲线

适用:

  •  不考虑样本之间特征的关系——> 朴素贝叶斯分类器效率极高

  • 高斯朴素贝叶斯在预测方面,对于样本数量的要求不苛刻

优点:

  • 高斯朴素贝叶斯 可以应用于任何连续数值型的数据集中,如果是符合正态分布的数据集的话,得分会更高

  • 相对于线性模型,朴素贝叶斯效率更高——> 把数据集中的各个特征看作完全独立的,不考虑特征之间的关联关系,但同时,泛化能力更弱

  • 大数据时代,很多数据集的样本特征成千上万,这种情况下,模型的效率要比泛化性能多零点几个百分点的得分更重要

缺点:

  •  是相当好的分类器,但对于预测具体的数值并不是很擅长

  • 泛化能力弱

机器学习【四】决策树

 涉及内容:
原理————if/else推导

决策树构建————用决策树分类器分类【设定最大深度】、分类器表现、加大深度

优点:

  • 很容易将模型可视化

  • 由于决策树算法对每个样本特征单独处理——> 不需要对数据进行转换

  • 不需要对数据预处理

缺点:

  • 即使有预剪枝处理【使用max_depth、max_leaf_nodes参数】,还是不可避免出现过拟合问题

  • 泛化性能大打折扣

 机器学习【五】随机森林

涉及内容:

简介————是一种集合学习算法,可以用于分类,也可以用于回归、可解决过拟合问题

随机森林构建 ————bootstrap  、max_features、n_estimators、图形看看随机分类的表现

实战:判断月薪是否>5万————载入数据集、用get_dummies处理数据、用决策树建模并预测

额外功能:在数据集中对数据特征的重要性进行判断————可以通过这两个算法对高维数据进行分析,在诸多特征中保留最重要的,也便于对数据降维处理

优点:

  • 不要求对数据预处理

  • 集成决策树所有优点,弥补了不足

  • 支持并行处理【实现方式是n_jobs参数,记得此参数要和cpu内核数一致,多了无意义,n_jobs=-1,使用全部内核】

  • 注意随机森林生成每棵树的方法是随机的,不同的random_state会导致模型完全不同,要固化其值

缺点:

  • 对于超高维数据集、稀疏数据集,线性模型更好

  • 更消耗内存,速度慢,若要省内存+时间,用线性模型

  机器学习【六】支持向量机SVM——专治线性不可分

涉及内容:
SVM原理————核函数、数据投射至高维空间、多项式内核、RBF内核

支持向量机的SVM核函数————创建一个线性内核的支持向量机模型、SVM内核换成RBF

SVM的核函数和参数选择————不同核函数的SVM对比、linearSVM算法

 RBF内核SVC的gamma参数调节————结果分析

注意事项————3个非常重要的参数

SVM在回归分析中的应用:波士顿房价数据集——————了解数据集、SVR算法建立房价预测模型、StandardScaler数据预处理

优点:

  • 可应对高维数据集和低维数据集

  • 即使数据集中样本特征的测度都比较接近,如图像识别领域,以及样本特征数和样本数比较接近的时候,都游刃有余

缺点:

  • 当数据集中特征数量在1万以内,SVM可以驾驭,但数量大于10万,就非常占内存和耗费时间

  • 对数据预处理和参数调节要求很高

机器学习【七】神经网络

 原理————MLP算法

 神经网络中的非线性矫正————非线性矫正 rele 、进行双曲正切处理 tanh

神经网络的参数设置————各个参数的含义、图像展示MLP分类的情况、减少隐藏层的节点、给MLP分类器增加隐藏层数量、设计激活函数为tanh、修改alpha参数

 实战——手写识别————MNIST数据集、识别

 优点

  • 计算能力充足且参数设置合适情况下,神经网络表现特优异

  • 对于特征类型单一的数据,变现不错

缺点

  •  训练时间长、对数据预处理要求高

  •  数据特征类型差异较大,随机森林或梯度上升随机决策树算法更好

  • MLP仅限于处理小数据集,对于更大或更复杂的数据集,可以进军深度学习

 机器学习【八】数据预处理、降维、特征提取及聚类

 涉及内容:

数据预处理————StandardScaler预处理数据、MinMaxScaler数据预处理、RobustScaler数据预处理、Normalizer数据预处理

通过数据预处理提高模型准确率————训练一个MLP神经网络、使用MinMaxScaler进行数据预处理

数据降维————PCA主成分分析原理

 对数据降维以便于进行可视化————

原始特征与PCA主成分之间的关系————

特征提取————PCA主成分分析法用于特征提取、使用一些方法来提升模型的表现、PCA中的数据白化功能、非负矩阵分解用于特征提取

聚类算法————K均值算法、凝聚聚类算法、DBSCAN算法、eps参数、min_samples参数

适用数据降维的情况:

  • 超高维度数据

  • 特征之间有非常强烈的相关性【比如,人口数据中,男性为1,女性为0,去掉其中任何一列,不会丢失任何信息,可以降维,以降低模型的复杂度】

对于机器学习来说,合理有效地对数据进行表达是至关重要的

对于没有分类标签的数据来说,无监督学习的聚类算法可以帮助我们更好的理解数据集,并且为进一步训练模型打好基础

 机器学习【九】数据表达与特征工程

涉及内容:

数据表达————类型特征、连续特征、使用哑变量转换类型特征、get_dummies的使用、把数值特征也进行get_dummies转换、装箱处理【离散化处理】、用新的方法来表达已经装箱的数据——OneHotEncoder,独热编码、

数据“升维”————向数据集添加交互式特征、Numpy中的hstack函数、对特征进行交互式操作对模型产生的影响、向数据集添加多项式特征、PolynomialFeatures、处理后机器学习的模型的变化

自动特征选择————使用单一变量法进行特征选择、使用SelectPercentile进行特征选择、基于模型的特征选择、迭代式特征选择、递归特征剔出法RFE

 

对样本特征进行装箱的好处:

  • 纠正模型过拟合和欠拟合问题

  • 尤其针对大规模高纬度的数据集使用线性模型的时候,可以大幅度提高预测的准确率

 机器学习【十】模型评估与优化

涉及内容:

使用交叉验证对模型进行评估————sklearn中的交叉验证法、K折叠交叉验证法、随机拆分和“挨个儿试”

使用网格搜索寻找模型的最优参数————简单网格搜索、局限性、与交叉验证结合的网格搜索、GridSearchCV进行参数调优的过程

对分类模型的可信度进行评估————分类模型中的预测准确率、分类模型中的决定系数、.score给分类、回归模型评分的方法、GridSearchCV改变评分的方式

 

在sklearn中,cross_val_score对于分类模型默认使用的是K折叠交叉验证,而对于分类模型则默认使用分层K交叉验证法

 机器学习【十一】管道模型

 涉及内容:
基本概念和使用————在数据预处理中遇到的问题及使用管道模型解决

 使用管道模型进行网格搜索————

 管道模型不仅可以把 数据预处理和模型训练集结合一起,也可以将很多不同的算法打包

机器学习【十二】使用管道模型对股票涨幅进行回归分析

 涉及内容:

整理数据集————删除无效数值、去掉冗余信息、考虑是否把字符串类型的特征通过get_dummies转化成整型数值

.建立包含数据预处理和MLP模型的管道模型————使用make_pipeline便捷的建立管道模型

向管道模型添加特征选择步骤————提取管道模型每个步骤的属性

使用管道模型进行模型选择和参数调优————


相关问题推荐

  • 回答 15

    也不难学,但是要有JAVA的基础

  • 回答 13

    这个要看你在哪个城市就业了,一般来说适合大数据就业的城市不多,一线城市北上广深,甚至在成都找大数据方向的工作都不太好找。如果你学了大数据,刚好也在比较热门的城市,大数据薪资至少也得上万吧。...

  • 回答 5

    自学的话就走很多弯路,需要花费大量时间。如果时间充足可以自学。

  • 回答 7

    人工智能当前有六大研究领域,涉及到计算机视觉、自然语言处理、机器学习、自动推理、知识表示和机器人学,初学者应该选择一个主攻方向,并围绕这个主攻方向来制定学习计划。对于初学者来说,可以从机器学习开始学起,一方面机器学习是打开人工智能知识大门的...

  • 回答 4

    机器学习跟模式识别,统计学习,数据挖掘,计算机视觉,语音识别,自然语言处理等领域有着关系

  • 机器学习是啥呢?2020-06-10 10:29
    回答 4

    机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。它是人工智能的...

  • 回答 4

    先来看一下机器学习的概念,我们提供给电脑样例数据,电脑通过一定的模型自己学习出相应的规则,并且这些规则可以随着数据的输入不断调整。而深度学习,则是一种十分有效的机器学习方法。现在的深度学习主要指的是深度神经网络。神经网络形式上就是一个分层的...

  • 回答 4

    行业里其实都有参合一起用,但是java用的比较多!

  • 回答 0

  • 回答 2

    特征缩放(feature scaling)是预处理阶段的关键步骤,但常常被遗忘。虽然存在决策树和随机森林这种是少数不需要特征缩放的机器学习算法,但对于大部分机器学习算法和优化算法来说,如果特征都在同一范围内,会获得更好的结果。比如梯度下降法。特征缩放的重要...

  • 回答 3

    java 的优势就是 运行速度快(相比 pure python),python 的优势就是 库多,写起来代码量少

  • 回答 3

    微积分、线性代数、概率论、最优化方法

没有解决我的问题,去提问