随笔分类 - 机器学习算法
摘要:一、项目目录 (一)数据加载 基础统计 特征分类 基本分布(scatter) (二)数据分析 正态性检验 偏离度分析 (hist | scatter) 峰度分析 (hist | scatter) 分散度分析 (box) 特征本身分散度 SalePrice 的分散度 方差齐次检验 方差分析 (bar)
阅读全文
摘要:一、EDA(Exploratory Data Analysis) EDA:也就是探索性的分析数据 目的: EDA:也就是探索性的分析数据 1)每个特征的意义、特征的类型: df.describe() df['Category'].unique() 1)每个特征的意义、特征的类型: 2)看是否存在 m
阅读全文
摘要:一、scikit-learn 的文档查阅 网页访问 scikit-learn 的文档: API 下可以直接搜索某一类,然后查看其用法; scikit-learn 的文档相对于机器学习的教材,而不单是讲解类、函数、参数、变量等的功能及使用规则; 二、深入学习机器学习的思路 实际工作中,有很多时间,很重
阅读全文
摘要:一、集成学习的思路 共 3 种思路: 共 3 种思路: 二、增强集成学习(Boosting) 1)基础理解 Boosting 类的集成学习,主要有:Ada Boosting 和 Gradient Boosting 两类; 由于每个子模型要使用全部的数据集进行训练,因此 Ada Boosting 算法
阅读全文
摘要:一、基础理解 随机森林(Random-Trees) 1)定义 定义:使用决策树算法进行集成学习时所得到的集成学习的模型,称为随机森林; 只要集成学习的底层算法是 决策树算法,最终得到的模型都可以称为随机森林; 2)scikit-learn 中:随机森林分类器及回归器 RandomForestClas
阅读全文
摘要:一、oob(Out - of - Bag) 定义:放回取样导致一部分样本很有可能没有取到,这部分样本平均大约有 37% ,把这部分没有取到的样本称为 oob 数据集; 根据这种情况,不对数据集进行 train_test_split,也就是不适用 测试数据集,而使用这部分没有取到的样本做测试 / 验证
阅读全文
摘要:一、集成学习算法的问题 可参考:模型集成(Enxemble) 博主:独孤呆博 思路:集成多个算法,让不同的算法对同一组数据进行分析,得到结果,最终投票决定各个算法公认的最好的结果; 弊端:虽然有很多机器学习的算法,但是从投票的角度看,仍然不够多;如果想要有效果更好的投票结果,最好有更多的算法参与;(
阅读全文
摘要:一、Hard Voting 与 Soft Voting 的对比 1)使用方式 voting = 'hard':表示最终决策方式为 Hard Voting Classifier; voting = 'soft':表示最终决策方式为 Soft Voting Classifier; 2)思想 Hard V
阅读全文
摘要:一、集成学习的思想 集成学习的思路:一个问题(如分类问题),让多种算法参与预测(如下图中的算法都可以解决分类问题),在多个预测结果中,选择出现最多的预测类别做为该样本的最终预测类别; 生活中的集成思维: 二、scikit-learn 中的集成分类器 scikit-learn 中封装的集成分类器:Vo
阅读全文
摘要:一、解决回归问题的思路 1)思路对比 解决分类问题:根据模型参数训练结束后,对每个“叶子”节点的样本数据进行投票,规定数量最多的样本的类型为该“叶子”的预测类型; 解决回归问题:根据模型参数划分结束后,对每个“叶子”节点处 的相应的数据输出值的平均值,作为该“叶子”的预测值;(也就是训练结束后,每个
阅读全文
摘要:老师:非参数学习的算法都容易产生过拟合; 一、决策树模型的创建方式、时间复杂度 1)创建方式 决策树算法 2)二叉树的实际复杂度 预测样本时的时间复杂度:O(logm) 训练决策树模型时的时间复杂度:O(n*m*logm) 二、scikit-learn 中决策树算法的参数 1)决策树算法的问题 方案
阅读全文
摘要:一、基础理解 1)公式 2)实例计算基尼系数 3 种情况计算基尼系数: 基尼系数的性质与信息熵一样:度量随机变量的不确定度的大小; 3)只有两种类别的数据集 二、使用基尼系数划分节点数据集 1)格式 from sklearn.tree import DecisionTreeClassifier dt
阅读全文
摘要:老师强调:作为计算机工程师,传统的算法和数据结构是最基础的内容,要掌握。 一、节点数据集的划分 1)决策树算法的思想 解决分类问题时,决策树算法的任务是构造决策树模型,对未知的样本进行分类; 决策树算法利用了信息熵和决策树思维: 2)划分步骤 划分点:某一特征的某一个数值;(根据该特征值对数据集样本
阅读全文
摘要:一、决策树思维、决策树算法 1)决策树思维 决策树思维是一种逻辑思考方式,逐层的设定条件对事物进行刷选判断,每一次刷选判断都是一次决策,最终得到达到目的;整个思考过程,其逻辑结构类似分叉的树状,因此称为决策树思维; 例一:公式招聘时的决策树思维 此过程形成了一个树的结构,树的叶子(录用 / 考察)节
阅读全文
摘要:一、SVM 思想在解决回归问题上的体现 回归问题的本质:找到一条直线或者曲线,最大程度的拟合数据点; 怎么定义拟合,是不同回归算法的关键差异; SVM 的思路解决回归问题: SVM 解决回归问题的思路与解决分类问题的思路相反,解决分类问题时,希望 Margin 区域内没有样本点或者样本点尽可能的少;
阅读全文
摘要:一、高斯核函数、高斯函数 μ:期望值,均值,样本平均数;(决定告诉函数中心轴的位置:x = μ) σ2:方差;(度量随机样本和平均值之间的偏离程度:, 为总体方差, 为变量, 为总体均值, 为总体例数) σ:标准差;(反应样本数据分布的情况:σ 越小高斯分布越窄,样本分布越集中;σ 越大高斯分布越宽
阅读全文
摘要:一、核函数(Kernel Function) 1)格式 K(x, y):表示样本 x 和 y,添加多项式特征得到新的样本 x'、y',K(x, y) 就是返回新的样本经过计算得到的值; 在 SVM 类型的算法 SVC() 中,K(x, y) 返回点乘:x' . y' 得到的值; 2)多项式核函数 业
阅读全文
摘要:一、基础理解 数据:线性数据、非线性数据; 线性数据:线性相关、非线性相关;(非线性相关的数据不一定是非线性数据) 1)SVM 解决非线性数据分类的方法 方法一: 多项式思维:扩充原本的数据,制造新的多项式特征;(对每一个样本添加多项式特征) 步骤: 方法一: 方法二: 使用scikit-learn
阅读全文
摘要:一、基础理解 Hard Margin SVM 和 Soft Margin SVM 都是解决线性分类问题,无论是线性可分的问题,还是线性不可分的问题; 和 kNN 算法一样,使用 SVM 算法前,要对数据做标准化处理; 原因:SVM 算法中设计到计算 Margin 距离,如果数据点在不同的维度上的量纲
阅读全文
摘要:一、Hard Margin SVM SVM 的思想,最终用数学表达出来,就是在优化一个有条件的目标函数: 此为 Hard Margin SVM,一切的前提都是样本类型线性可分; 1)思想 SVM 算法的本质就是最大化 margin; margin = 2d,SVM 要最大化 margin,也就是要最
阅读全文