机器学习 涉及内容、模型适用范围 、优缺点总结 | 您所在的位置:网站首页 › clues模型对范围有要求吗 › 机器学习 涉及内容、模型适用范围 、优缺点总结 |
机器学习【一】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便捷的建立管道模型 向管道模型添加特征选择步骤————提取管道模型每个步骤的属性 使用管道模型进行模型选择和参数调优————
|
CopyRight 2018-2019 实验室设备网 版权所有 |