机器学习
- 获取数据的方式有哪些?
- 爬虫
- 已有数据
- 网上获取相关数据
- 特征工程有哪些内容?
- 特征获取
- 特征预处理
- 归一化
- 定义
- 是将值通过线性变换映射(0,1)的范围内
- 定义
- API
- MinMaxScaler()
- 归一化
- 标准化
- 定义
- 是将值映射到均值为0,标准差为1的标准正态分布上
- 定义
- API
- StandardScaler()
- 异常值处理
- 特征组合
- 将几个特征组合形成一个新的特征
- 特征选择
- 选择有意义的特征
- 特征降维
- 定义
- 降低数据特征的个数
- 定义
- 分类
- 低方差过滤法
- 定义
- 删除方差低于threshold(阈值)的所有特征(删除方差低于某个阈值的所有特征)
- 定义
- API
- VarianceThreshold(threshold)
- 低方差过滤法
- 主成分分析(PCA)
- 定义
- 压缩数据的维数,尽可能降低原数据的维数,损失少量数据
- 定义
- API
- PCA(n_components)
- n_components:为小数时,指降低到原来的百分之多少,为整数时,指降低到多少
- PCA(n_components)
- 相关系数
- 定义
- 反映特征之间的密切相关程度的统计指标
- 核心是:找相似特征→踢掉多余的→留下核心的
- 相关系数的值r介于 [-1,1] 之间
- r>0时,表示两变量成正相关;r<0,表示成负相关
- | r | = 0 ,表示完全不相关,| r |= 1,表示完全相关
- 0< | r |<1 ,表示一定程度上的相关,具体划分为:
- 0< | r | <0.4:低程度相关
- 0.4< | r | <0.7:显著性相关
- | r |>0.7:高度线性相关
- 定义
- 分类
- 皮尔逊相关系数
- 定义
- 计算数据的协方差
- 定义
- API
- pearsonr()
- 皮尔逊相关系数
- 斯皮尔曼相关系数
- 定义
- 根据数据在总数据中的等级(排名)
- 定义
- API
- spearmanr()
- 特征预处理的方法有哪些?
- 归一化
- 通过线性变换将数值映射到某个范围内,一般是(0,1),(x-min/max-min)
- 归一化
- 标准化
- 将数值映射到均值为0,标准差为1的标准正态分布上
- 特征降维的方式有哪些?
- 低方差过滤法
- 删除方差低于某个阈值的所有特征
- 低方差过滤法
- 主成分分析(PCA)
- 通过压缩数据的维数,尽可能的保留数据
- 相关系数
- 皮尔逊相关系数
- 通过计算数据的协方差
- 皮尔逊相关系数
- 斯皮尔曼相关系数
- 通过计算数据在总数据中的等级(排名)
- 什么叫特征组合?
- 将几个特征组合形成一个新的特征
- 学过哪些算法?
- 有监督学习
- 线性回归
- 定义
- 利用回归方程(函数)对特征值行和目标值之间的关系进行建模的一种方式
- 定义
- 分类
- 一元线性回归
- 多元线性回归
- API
- LinearRegression()
- 线性回归
- K近邻(KNN)
- 定义
- 一个样本中K个最相似的样本中大多数属于一个类别,则该样本也属于这个类别
- 定义
- 分类问题
- 思想
- 先计算该样本到所有样本的距离,排序,然后选取最近的K个值,进行多数表决投票确定该样本的目标值
- 思想
- API
- KNeighborsClassifier(n_neighbors)
- 回归问题
- 思想
- 先计算样本到所有样本间的距离,排序,选取k个最近的计算平均值为该样本的目标值
- 思想
- API
- KNeighborsRegressor(n_neighbors)
- 逻辑回归(LR)
- 定义
- 用于解决二分类问题,是一种分类模型
- 定义
- 有监督学习
- API
- LogisticRegression()
- 拉索回归(L1正则化)
- 定义
- 会将高次项系数变为0
- 定义
- API
- Lasso()
- 岭回归(L2正则化)
- 定义
- 把高次项前面的系数变得很小,但不为0
- 定义
- API
- Ridge()
- 决策树
- 定义
- 是一种树形结构
- 每一个内部节点表示一个特征,每一个分支代表一个判断结果的输出,每一个叶子结点表示一个分类的结果
- 定义
- 方法
- ID3
- 核心:用信息增益指标选择特征
- 信息增益越大,优先选择该特征
- 信息熵
- ID3
- 条件熵
- 信息增益
- 信息熵-条件熵
- 缺点
- 倾向于选择种类多的特征作为分裂依据
- C4.5
- 核心:使用信息增益率选择特征
- 信息增益率越大,优先选择该特征
- 作用:增加了一个惩罚系数,缓解了ID3中存在的不足
- 特征熵
- 这里指的就是信息熵
- 信息增益率
- 信息增益/特征熵
- CART
- CART分类
- API
- DecisionTreeClassifier()
- API
- 核心:使用基尼指数选择特征
- 基尼指数越小越好,优先选择该特征
- CART分类
- CART回归
- API
- DecisionTreeRegressor()
- API
- 核心:使用均方误差选择特征
- 均方误差越小越好,优先选择该特征
- 剪枝
- 定义
- 是一种防止决策树过拟合化的一种方法
- 定义
- 分类
- 预剪枝
- 后剪枝
- 集成学习
- Bagging
- 随机森林
- Bagging
- Boosting
- Adaboost
- GDBT
- XGBoost
- 朴素贝叶斯
- MultinomialNB
- 支持向量机
- 定义
- 找到一个最大间隔的超平面将样本分为两类
- 定义
- 最大间隔
- 硬间隔
- 如果样本线性可分,在所有样本都分类正确的情况下,寻找最大间隔,这就是硬间隔
- 硬间隔
- 软间隔
- 如果样线性不可分,或者出现异常值硬间隔没办法分类
- 软间隔允许部分样本出现在最大间隔之内,或者是错误的一边,寻找最大间隔
- 目标:保持最大宽度和限制违例之间找到良好的平衡
- 用惩罚系数来衡量,惩罚系数C,C越大
- 无监督学习
- 无监督学习一般没有分类和回归的概念,因为无监督学习没有标签值
- 聚类
- 定义
- 计算样本之间的相似性或者距离,将没有类别标签的数据划分为不重叠的几个簇
- 定义
- 算法分类
- 粗聚类
- 细聚类
- 实现方法
- K-means聚类
- 降维
- 三种均属于无监督,且只对特征做预处理,自身不预测
- 低方差过滤法
- PCA主成分分析
- 相关系数
- 有监督学习的算法有哪些?
- 线性回归,KNN,决策树,逻辑回归,拉索回归,岭回归,集成学习(随机森林,AdaBoost,GDBT,XGBoost)
- 无监督算法有哪些?
- 聚类(KMeans)
- 降维(PCA)
- 如何评估模型?线性回归的?分类的?
- 分类问题
- 定义
- 类别判得对不对
- 定义
- 方法
- 混淆矩阵
- 精确率
- 召回率
- F1分数
- AUC指标
- ROC曲线
- 分类问题
- 回归问题
- 定义
- 数值预测准不准
- 定义
- 方法
- 均方误差(MSE)
- 平均绝对误差(MAE)
- 均方根误差(RMSE)
- 过拟合怎么办?
- 清洗数据
- 增加数据量
- 欠拟合怎么产生?怎么处理?
- 训练集的特征比较少,模型太简单
- 增加数据量,增加数据特征,换用复杂的模型
- 距离的度量方式有哪些?
- 曼哈顿距离
- 欧氏距离
- 切比雪夫距离
- 闵可夫斯基距离
- 集成学习中的两种算法分类?
- Bagging
- 随机森林
- Bagging
- Boosting
- AdaBoost
- 逐步提高在前一次模型中被分类错误的权重来训练模型
- AdaBoost
- GDBT
- 梯度提升树,不在像提升术拟合残差,而是利用损失函数中的负梯度作为拟合残差的近似值
- XGBoost
- 极端梯度提升树,就是在损失函数中加入正则化项
- 有监督学习如何评估模型好坏?
- 对于分类问题,采用混淆矩阵,精确率,召回率,F1分数,ROC曲线,AUC面积
- 对于回归问题,一般使用均方误差(MSE),平均绝对误差(MAE)、均方根误差(RMSE)
- 什么是支持向量机SVM?
- 找到一个最大的超平面将样本分为两类,且间隔最大
- 逻辑回归的算法的原理是啥? 逻辑回归有损失函数
- 将线性回归的输出当做逻辑回归的输入,将其映射到sigmoid函数上,值在(0,1)之间
- KNN算法的核心思想是啥?
- 对于分类问题,先计算待测样本到所有样本之间的距离,按照升序排序,取K个距离最近的样本,进行多数表决
- 对于回归问题,先计算待测样本到所有样本之间的距离,按照升序排序,取k个最近的样本求平均值
- 什么叫归一化
- 通过线性变换将数据映射到某个范围内,默认是(0,1),对异常点敏感
- 什么叫标准化
- 将数据映射到均值为0,标准差为1的标准正态分布上,数据量大时,对异常点不敏感
- 什么是梯度下降?
- 沿着梯度下降的方向求解极小值
- 梯度下降方法有哪些?
- 全梯度下降算法(FGD)
- 随机梯度下降算法(SGD)
- 小批量梯度下降算法(mini-bantch)
- 随机平均梯度下降算法(SAG)
- 梯度下降是用来做什么的?(找损失函数的最小值)
- 用来求解损失函数的最小值,也就是线性回归模型w和b的最优值
- 什么是损失函数?
- 用来衡量预测值和真实值之间的误差
- 常见的损失函数有哪些?
- 均方误差(MSE)
- 平均绝对误差(MAE)
- 最小二乘法
- 线性回归
- 定义
- 利用回归方程(函数)对特征值和目标值之间的关系进行建模
- 定义
- API
- LinearRegression()
- 过拟合解决方案
- 增加数据集的数量
- 增加数据集的特征值
- 决策树:剪枝
- ROC曲线和AUC指标 评估模型的性能
- ROC曲线
- 以模型的假正率(FPR)为x轴,真正率(TPR)为y轴,将模型在不同阈值的下的表现以曲线的形式表现出来
- ROC曲线
- AUC指标
- 指的是ROC曲线下的面积
- 面积越大,分类器性能越好
- 什么是正则化?如何理解正则化?
- 解决模型的过拟合问题
- 给机器学习的模型增加限制,避免模型复杂度过高而过拟合
- 为何要常对数据做归一化?
- 消除特征值之间的差异
- 归一化的种类
- MinMaxScaler()
- 基尼指数(Gini)存在的问题?
- 基尼值
- 从数据集中随机抽取两个样本,其类别标记不一致的概率,基尼值越小,数据集的纯度越高
- 衡量单个数据集的纯度
- 基尼值
- 基尼指数
- 选择使划分后基尼系数最小的属性作为最优划分属性
- 选择最优划分特征
- 偏向特征取值比较多的
- 决策树怎么剪枝?
- 预剪枝
- 后剪枝
- SVM的原理是什么?
- 找到一个最大间隔的超平面,将样本分为两类
- 简单描述Bagging vs Boosting
- Bagging
- 随机取样
- 平权投票
- 并行
- Bagging
- Boosting
- 取全部样本
- 加权投票
- 串行
- k-means算法的k值如何选取
- 肘方法
- 观察下降趋势,拐点处为最优
- 肘方法
- 轮廓系数法(FC)
- 衡量簇内紧密度和簇外的分离度
- CH
- 衡量簇内紧密度和簇外的分离度和质心
- 讲一讲PCA(主成分分析)
- 主成分分析法是通过对特征进行压缩,降低特征的维数,尽可能的保留特征,是一种对特征降维的处理方法
- 朴素贝叶斯的优缺点?
- 优点
- 对小规模数据很友好,能处理多分类问题
- 优点
- 缺点
- 特征独立条件假设在实际中往往不存在