机器学习与数据挖掘复习(2)
深度学习和机器学习的区别
主要区别:
机器学习的数据是处理好的数据而深度学习的数据是原始数据
数据呈现给系统的方式
- 机器学习算法经常需要构建好的数据而深度学习网络依赖于人工神经网络中各层的计算
监督学习和无监督学习的区别
监督学习:数据有打上标签
无监督学习:数据没有标签,用聚类的方式进行处理
如何选择重要的数据
- 在确定重要数据前不考虑无关变量
- Lasso Regression
- 随机森林
- 基于信息增益选择特征
对于给定数据集如何选择算法
线性的数据集:线性回归
非线性的数据集:核函数、bagging、商业用途可以用决策树、SVM,数据集是图像、视频、音频,可以用神经网络
正则化在机器学习中的作用
使参数趋于零从而防止过拟合,降低模型复杂度并且有更好的预测性能。
高方差是好是坏
高方差导致数据集分布大并且有大量特征,不利于建模
如何处理高方差
bagging算法:将数据分成子组,并从随机数据中复制抽样。 数据拆分后,使用随机数据和训练算法创建规则,最后用投票对模型的所有结果进行预测
随机梯度下降(SGD)和梯度下降(GD)
两者都是寻找最小化损失函数的参数集。区别在于梯度下降是对所有样本的估计而随机梯度下降是只对一个样本进行估计
batch梯度下降是对一个batch进行估计
决策树的优缺点
优点:可解释性、对噪音的鲁棒性、无参数
缺点:容易过拟合
什么是混淆矩阵及作用
混淆模型是评估算法和模型表现好坏的重要基础,是计算指标的前提。用计数值汇总正确和错误预测的数量并按每个类别标签细分,给我们提供了分类器产生的错误及其类型的信息。
解释“维度灾难”
建模困难、噪音太多、过拟合
解决方法:主成分分析(PCA)
正则化和归一化的区别
标准化是对数据的处理,归一化是对数值的重新缩放以使其在[0,1]的范围内;而正则化是对预测函数的处理,在函数后面加上正则化项,如L1正则化和L2正则化,以此防止过拟合和降低模型复杂性
标准化和归一化的区别
归一化是对数值的重新缩放以使其在[0,1]的范围内,而标准化是将训练集中某一列数值特征的值缩放成均值为0,方差为1的状态
回归和分类的区别
两者都是有监督的机器学习。主要区别是回归输出的变量是连续的,而分类输出的变量是离散的
什么是懒惰的机器学习?为什么?
K近邻(KNN):不主动学习到一个模型中,对于分类的不同属性定义距离。对于一个新的待分类样本点,只取k个与该样本距离最近的点,然后找这k个点所归属的最多的类做为新样本点的分类。由于只取k个点,不需要全部样本点来做分类
K-Means和KNN的区别
KNN是有监督的机器学习而K-Means是无监督的机器学习。在KNN中,我们基于未标签数据的最邻近点来给它打上标签并且将该算法应用到分类和基于回归的问题中
K-Means是无监督的机器学习,基于数据的坐标来对数据进行聚类操作,并尝试根据聚类过滤的数据来定义聚类的性质
SVM中的核函数是什么
在点积时运用的数学函数,通过某非线性变换 φ( x) ,将输入空间映射到高维特征空间,基于是否线性可以选择不同核函数
什么是集成模型?解释为什么集成技术优于传统机器学习?
集成模型是多种单模型一起进行分类和回归预测的模型。因为组合了多种模型,集成学习提升了机器学习的性能,比起单模型有更好的预测结果,减少了方差、偏差和更少的过拟合可能
什么是过拟合和欠拟合?为什么决策树容易过拟合?
过拟合:捕捉过多噪音
欠拟合:没有很好地拟合数据(低方差高偏差)
在决策树中,当决策树完美地拟合了训练数据中的所有样本时就会发生过拟合。这会导致分支中的规则太过严格、数据过于稀疏,在预测其它数据集时会有较差的准确度
解释Lasso回归和岭回归的区别
区别主要在于前者是L1正则化而后者是L2正则化。Lasso中是对于系数绝对值的加总进行惩罚,而岭回归是对系数平方的加总进行惩罚。二者结合的正则化方法是弹性网络
概率和似然的区别
概率:和结果相关,是事件发生的可能性
似然:和假设相关,是样本在参数空间中被观测到的可能
为什么要进行剪枝操作
减小规模并且降低过拟合的可能性,分为预剪枝和后剪枝。
预剪枝:划分节点前
后剪枝:构建完
模型准确性或者模型性能应该选择哪个
先搞清楚模型性能的含义,如果是速度的话,任何模型在实际的应用中都需要高速度这一重要特征。
在不平衡数据集中,性能意味着准确性不是最重要的性质,F1值会是在商业案例中更值得青睐
如何处理不平衡数据集
欠采样:减少大规模类型数据的规模以与规模较小的类型匹配,会导致忽视重要信息的问题
过采样:对规模较少的数据类型进行多次采样,会导致过拟合问题
特征工程为什么重要?
特征工程从数据中抽取特征并应用到算法中,能让算法即使不强大也能达到好的效果。
两个主要目标:
- 准备与机器学习算法约束兼容的合适数据
- 提升机器学习模型的效果
Boosting和Bagging的区别
二者都是集成技术。
Bagging:用于在有很高方差的情况下减少算法方差。决策树是分类器中一种易受高偏差影响的模型
Boosting:通过对样本集的操作获得样本子集,然后用弱分类算法在样本子集上训练生成一系列的基分类器,每个弱分类器都能补偿并强化对之前错误数据点的分类
生成式模型和判别式模型的区别
二者都是用于监督学习
生成模型:利用贝叶斯定理预测条件概率,清楚地对每个类的实际分布进行建模
判别式模型:学习条件概率的分布,鉴定各类的边界概率
什么是超参数?和参数有什么区别?
参数:其在训练过程评估并在训练完保存,是模型内部的参数,可以理解为内生变量
超参数:外部给定的参数,模型无法学习得到,可以理解为外生变量
聚类算法中如何确定聚类数目?
通过轮廓系数进行判断。轮廓系数是聚类效果好坏的一种评价方式,最佳值为1,最差值为-1,接近0的值表示重叠的群集,负值通常表示样本已分配给错误的聚类。
对于簇中的每个向量,分别计算它们的轮廓系数。对于其中的一个点 i 来说:
计算 簇内不相似度a(i) :i向量到同簇内其他点不相似程度的平均值,体现凝聚度
计算 簇间不相似度b(i) :i向量到其他簇的平均不相似程度的最小值,体现分离度
那么第i个对象的轮廓系数就为:
交叉验证的作用
用来提高机器学习算法性能的技术。将数据随机划分成几个相同的几个部分并分别用其中一个部分作为测试集其余部分作为训练集。以此得到更好的性能评估,消除偶然性
K近邻的距离度量
- 曼哈顿距离
- 闵可夫斯基距离
- Jaccard
- Cosine
- 欧氏距离
随机森林中用到的集成技术
Bagging:随机森林是利用多棵树对样本进行训练并预测的结果进行算数平均的一种分类器
熵和信息增益的区别
熵:信息的混乱程度
信息增益:数据划分前后熵的差异
使用SVM而不用随机森林的情形
- 问题是线性不可分时,使用非线性核的SVM
- 在更高维度的空间时也使用SVM
SVM作为大间隔分类器,会被outliers影响吗
当C很大时会
能否在逻辑回归中应用核函数
逻辑回归在复杂度上高于SVM,虽然理论上可以使用核函数来解决逻辑回归问题,但是实际上不会这样做
SVM是否会有概率性的输出
SVM不会直接导致概率性的评估,概率性的输出是由于五折交叉验证
区分贝叶斯风险和经验风险
贝叶斯决策函数$f:x\rightarrow A$是对所有可能的函数风险达到的最小化。贝叶斯决策函数的风险就是贝叶斯风险。贝叶斯决策函数通常被称为“目标函数”,因为它是我们能得到的最好的决策函数
经验风险是对所有训练样本都求一次损失函数,再累加求平均得到的值。即模型f(x)对训练样本中所有样本的预测能力。所谓经验风险最小化即对训练集中的所有样本点损失函数的平均最小化。经验风险越小说明模型f(x)对训练集的拟合程度越好。
经验风险:
什么是拉格朗日乘数
在数学优化中,拉格朗日乘数法是一项在相同约束下计算函数局部最大值和最小值的方法。
主要思想是将约束问题转化成可以求导的无约束问题。拉格朗日对偶函数提供了最优解的下界
随机森林的随机性体现在哪里
当构建随机森林的每一颗树时,为了确保每棵树的独立性,我们通常使用两级随机性:
- 通过bagging的方法随机选择数据进行替换
- 随机选择m个特征
为什么随机森林不容易过拟合
随机森林是一种决策树的集成模型。单决策树对于数据的偏离非常敏感,非常容易拟合数据中的噪音。只有一棵树的随机森林野容易过拟合。当我们向随机森林中加入树时过拟合的可能性将会降低。然而,泛化误差随着树的增加会趋于0却不会消失。
深度学习和集成学习的联系
诸如CNN和Transformers之类的深度学习模型在集成方法中广泛运用
分类器的集成可能不会比它的任何一个单模型更精确。这句话是否正确?为什么?
正确。通常来说,集成模型会提升模型性能,但并非一定。