20210510_AI方面常见试题

  • 记录下自己开始学AI方面的一些日常习题


第一天_2021.5.10

1,为什么要对特征做归一化

答: (1)对数值类型的特征做归一化可以将所有的特征都统一到一个大致相同的数值区间内。
(2)从经验上说,归一化是让不同维度之间的特征在数值上有一定比较性,可以大大提高分类器的准确性


归一化和标准化本质上都是一种线性变换,线性变化不改变原始数据的数值排序,引入归一化,是由于在不同评价指标(特征指标)中,其量纲或是量纲单位往往不同,变化区间处于不同的数量级,若不进行归一化,可能导致某些指标被忽视,影响到数据分析的结果。

  • 一般是将数据映射到指定的范围,用于去除不同维度数据的量纲以及量纲单位。常见的映射范围有 [0, 1] 和 [-1, 1] ,
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

https://zhuanlan.zhihu.com/p/38339767 标准化与归一化
https://www.zhihu.com/question/20455227/answer/370658612 特征工程中的「归一化」有什么作用?


2,什么是组合特征?如何处理高维组合特征?

答: 为了提高复杂关系的拟合能力,在特征工程中经常会把一阶离散特征两两组合,构成高阶组合特征
组合特征也叫特征交叉(Feature Crosses),即不同类型或者不同维度特征之间的交叉组合,其主要目的是为了弥补CTR场景中早期的模型无法有效的进行特征组合而产生的想法和实践,随着算法模型的进步,虽然一些机器学习排序模型(GBDT+LR、FM等)和深度学习排序模型能够捕获特征之间的联系,但是前期仍然会生成一些组合特征,比如用户在某些类别下的行为统计,性别下的数据统计等。

处理方法: 利用矩阵分解 将mn的矩阵分解为一个mk和一个k*n的矩阵乘积

https://blog.csdn.net/youif/article/details/106773637
https://zhuanlan.zhihu.com/p/261620957
https://www.zhihu.com/question/385146015

3,请比较欧式距离与曼哈顿距离?

在k-means或kNN,我们常用欧氏距离来计算最近的邻居之间的距离,有时也用曼哈顿距离
答:欧式距离,其实就是应用勾股定理计算两个点的直线距离
曼哈顿距离,就是表示两个点在标准坐标系上的绝对轴距之和

在这里插入图片描述
图中红线代表曼哈顿距离,绿色代表欧氏距离,也就是直线距离,而蓝色和黄色代表等价的曼哈顿距离。曼哈顿距离——两点在南北方向上的距离加上在东西方向上的距离,即d(i,j)=|xi-xj|+|yi-yj|。


  • 欧氏距离是一个通常采用的距离定义,指在m维空间中两个点之间的真实距离,或者向量的自然长度(即该点到原点的距离)。在二维和三维空间中的欧氏距离就是两点之间的实际距离。
    欧氏距离虽然很有用,但也有明显的缺点。它将样本的不同属性(即各指标或各变量量纲)之间的差别等同看待,这一点有时不能满足实际要求。例如,在教育研究中,经常遇到对人的分析和判别,个体的不同属性对于区分个体有着不同的重要性。因此,欧氏距离适用于向量各分量的度量标准统一的情况。

  • 曼哈顿距离,我们可以定义曼哈顿距离的正式意义为L1-距离或城市区块距离,也就是在欧几里得空间的固定直角坐标系上两点所形成的线段对轴产生的投影的距离总和。例如在平面上,坐标(x1, y1)的点P1与坐标(x2, y2)的点P2的曼哈顿距离为:,要注意的是,曼哈顿距离依赖座标系统的转度,而非系统在坐标轴上的平移或映射。当坐标轴变动时,点间的距离就会不同。

https://zhuanlan.zhihu.com/p/61448727
https://www.cnblogs.com/yibeimingyue/p/11770542.html

4,为什么一些场景中使用余弦相似度而不是欧式距离

答: 余弦相似度:取值范围[-1,1]
余弦距离=1-余弦相似度:取值范围[0,2]

  • 余弦相似度在高维的情况下依然保持“相同时为1,正交时为0,相反时为-1”的性质。
  • 欧式距离的数值受维度的影响,范围不固定,并且含义也比较模糊。
  • 欧式距离体现数值上的绝对差异,而余弦距离体现方向上的相对差异。

https://www.jianshu.com/p/4f0ee6d023a5

5,One-hot的作用是什么?为什么不直接使用数字作为表示

答: One-hot主要用来编码类别特征,即采用哑变量(dummy variables)对类别进行编码。它的作用是避免因将类别用数字作为表示而给函数带来抖动。直接使用数字会将人工误差而导致的假设引入到类别特征中,比如类别之间的大小关系,以及差异关系等等。

  • 将离散型特征使用one-hot编码,确实会让特征之间的距离计算更加合理。比如,有一个离散型特征,代表工作类型,该离散型特征,共有三个取值,不使用one-hot编码,其表示分别是x_1 = (1), x_2 = (2), x_3 = (3)。两个工作之间的距离是,(x_1, x_2) = 1, d(x_2, x_3) = 1, d(x_1, x_3) = 2。那么x_1和x_3工作之间就越不相似吗?显然这样的表示,计算出来的特征的距离是不合理。那如果使用one-hot编码,则得到x_1 = (1, 0, 0), x_2 = (0, 1, 0), x_3 = (0, 0, 1),那么两个工作之间的距离就都是sqrt(2).即每两个工作之间的距离是一样的,显得更合理。

https://zhuanlan.zhihu.com/p/37471802


https://copyfuture.com/blogs-details/202012031847242589pbsk8efo4wsljq机器学习知识点整理(一)

第二天_2021.5.11

1,在模型评估过程中,过拟合和欠拟合具体指什么现象

  • 欠拟合是指模型在训练集误差较大, 即模型复杂度低,训练集表现就较差
    • 解决措施: 通过增加网络复杂度或者在模型中增加特征
  • 过拟合过拟合是指训练误差测试误差之间的差距太大, 即模型复杂度高于实际问题,模型在训练集上表现很好,但在测试集上却表现很差, 科学地讲就是泛化能力不行.
    在这里插入图片描述

2,降低过拟合和欠拟合的方法

  • 解决欠拟合方法:
  1. 增加新特征,可以考虑加入进特征组合、高次特征,来增大假设空间
  2. 添加多项式特征,这个在机器学习算法里面用的很普遍,例如将线性模型通过添加二次项或者三次项使模型泛化能力更强
  3. 减少正则化参数,正则化的目的是用来防止过拟合的,但是模型出现了欠拟合,则需要减少正则化参数
  4. 使用非线性模型,比如核SVM 、决策树、深度学习等模型
  5. 调整模型的容量(capacity),通俗地,模型的容量是指其拟合各种函数的能力
  6. 容量低的模型可能很难拟合训练集;使用集成学习方法,如Bagging ,将多个弱学习器Bagging
  • 解决过拟合方法:
  1. 正则化(Regularization)(L1和L2)
  2. 数据扩增,即增加训练数据样本
  3. Dropout在训练时,每次随机(如50%概率)忽略隐层的某些节点;这样,我们相当于随机从 2 n 2^n 2n(n个神经元的网络) 个模型中采样选择模型
  4. Early stoppingEarly stopping便是一种迭代次数截断的方法来防止过拟合的方法,即在模型对训练数据集迭代收敛之前停止迭代来防止过拟合

https://www.cnblogs.com/zhhfan/p/10476761.html
https://blog.csdn.net/chen645096127/article/details/78990928

3,L1和L2正则先验分别服从什么分布

L1正则化可通过假设权重w的先验分布为拉普拉斯分布,由最大后验概率估计导出。

L2正则化可通过假设权重w的先验分布为高斯分布,由最大后验概率估计导出。

https://blog.csdn.net/m0_38045485/article/details/82147817

4,对于树形结构为什么不需要归一化?

因为数值缩放不影响分裂点位置,对树模型的结构不造成影响。
按照特征值进行排序的,排序的顺序不变,那么所属的分支以及分裂点就不会有不同。而且,树模型是不能进行梯度下降的,因为构建树模型(回归树)寻找最优点时是通过寻找最优分裂点完成的,因此树模型是阶跃的,阶跃点是不可导的,并且求导没意义,也就不需要归一化。

https://blog.csdn.net/zzy1448331580/article/details/106782884
5,什么是数据不平衡,如何解决?

数据不平衡,又称样本比例失衡。对于二分类问题,在正常情况下,正负样本的比例应该是较为接近的,很多现有的分类模型也正是基于这一假设。但是在某些特定的场景下,正负样本的比例却可能相差悬殊,如社交网络中的大V判断、电商领域的恶意差评检测、金融领域的欺诈用户判断、风控领域的异常行为检测、医疗领域的肿瘤诊断等

数据不平衡的常见形式及特点

根据数据量的多少和数据不平衡程度,可以将数据不平衡问题分为以几类:

(1)大数据+轻微数据不平衡(正负样本数量相差在一个数量级内)

如豆瓣上的电影评分数据分布等,此类问题常见的机器学习模型即可解决,无须额外处理。

(2)小数据 + 轻微数据不平衡(正负样本数量相差在一个数量级内)

此类问题可以通过加随机扰动的上采样方法处理。

(3)大数据 + 中度数据不平衡(正负样本数量相差在两个个数量级内)

此类问题可以通过下采样的方法处理。

(4)小数据 + 中微数据不平衡(正负样本数量相差在两个数量级内)

如医学图像分析。此类问题可以用数据合成的方法来解决。

(5)大数据 + 重度数据不平衡(正负样本数量相差超过两个数量级)

如金融领域的欺诈用户判断,风控领域的异常行为检测。此类问题可以通过一分类(one-class Learning)或离群点异常检测方法来解决。

(6)小数据 + 重度度数据不平衡(正负样本数量相差超过两个数量级)

如医疗领域的肿瘤诊断。此类问题可以通过一分类(one-class Learning)或离群点异常检测方法来解决。

解决方法:
2.1 数据采样

数据采样通过对原始数据集进行处理,使各类别数据比例维持在一个合理的比例。可分为上采样和下采样。

(1)上采样。上采样(Oversampling)是通过把少量数据类别的数据重复复制的方法使各类别数据比例维持在合理的比例,但是基于这样采样方法训练出来的模型容易出现过拟合,可以在每次生成新数据的时候加入轻微随机扰动。

(2)下采样。下采样(Undersampling)是通过从多数数据类中筛选出部分数据使各类别数据比例维持在合理的比例,但是这种采样方法容易丢失关键数据,可以通过多次随机下采样来解决。
2.2 数据合成

数据合成是利用已有样本的特征相似性生成更多新的样本,主要应用在小数据场景下,如医学图像分析。
2.3 加权

加权的方法是通过对不同类别分类错误施加不同权重的代价,使得不同类别的加权损失值近似相等。
2.4 一分类

当正负样本比例严重失衡时,靠单纯的采样和数据合成已经并不能很好地解决问题。因为上述方法虽然解决了训练数据的正负样本比例问题,但却严重偏离了原始数据的真实分布情况,会导致模型训练结果并不能真正反映实际的情况,会有很大的偏差。

此时,可以考虑用一分类(One-class Classification)来解决。最常见的一分类方法是One-class SVM,其基本思路如下:利用高斯核函数将样本空间映射到核空间,在核空间中找到一个能够包含所有数据的一个球体,当进行判别时,如果测试数据位于这个高维球体之中,则将其归为多数类,否则就归为少数类。一分类除了可用来解决数据严重不平衡时的分类问题,还可以应用于金融和医疗领域的异常检测。

总结来说,在样本数据量较大,且正负样本比例相差并不悬殊(两个数量级以内)的情况下,可以考虑使用采样或加权的方法解决;在正负样本数据都非常之小时,可以考虑用数据合成的方法解决;在正负样本数据比例相差悬殊的情况下,可以考虑用一分类的方法解决。

https://blog.csdn.net/flysky1991/article/details/78379360

第三天_2021.5.13

1,逻辑回归相比线性回归,有何异同?

答: 不同之处:
1.逻辑回归解决的是分类问题,线性回归解决的是回归问题,这是两者最本质的区别

2.逻辑回归中因变量是离散的,而线性回归中因变量是连续的这是两者最大的区别

3在自变量超参数确定的情况下逻辑回归可看作广义的线性模型在因变量下服从二元分布的一个特殊情况

4.使用最小二乘法求解线性回归时我们认为因变量服从正态分布

相同之处:
1.二者在求解超参数的过程中都使用梯度下降的方法

2.二者都使用了极大似然估计对训练样本进行


都说线性回归用来做回归预测,逻辑回归用于做二分类,一个是解决回归问题,一个用于解决分类问题。但很多人问起逻辑回归和线性回归的区别,很多人会大喊一声:逻辑回归就是对线性回归做了一个压缩,将 y y y的阈值从 y ∈ ( + ∞ , − ∞ ) y\in(+\infty,-\infty) y(+,)压缩到(0,1)。那么问题来了,为什么仅仅做一个简单的压缩,就将回归问题变成了分类问题?里面蕴含着本质?
  首先要从数据说起,线性回归的样本的输出,都是连续值, y ∈ ( + ∞ , − ∞ ) y\in(+\infty,-\infty) y(+,)而,逻辑回归中y∈{0,1},只能取0和1。对于拟合函数也有本质上的差别:
  线性回归 f ( x ) = θ T X = θ 1 x 1 + θ 2 x 2 + ⋯ + θ n x n f(x)=\theta^TX=\theta_1x_1+\theta_2x_2+\dotsb+\theta_nx_n f(x)=θTX=θ1x1+θ2x2++θnxn
  逻辑回归 f ( x ) = p ( y = 1 ∣ x ; θ ) = g ( θ T X ) f(x)=p(y=1\mid x ;\theta)=g(\theta^TX) f(x)=p(y=1x;θ)=g(θTX),其中, g ( z ) = 1 1 + e − z g(z)=\frac{1}{1+e^{-z}} g(z)=1+ez1

可以看出,线性回归的拟合函数,的确是对f(x)的输出变量y的拟合,而逻辑回归的拟合函数是对为1类的样本的概率的拟合。

2、那么,为什么要以1类样本的概率进行拟合呢,为什么可以这样拟合呢?
  首先,logstic 函数的本质说起。若要直接通过回归的方法去预测二分类问题, y 到底是0类还是1类,最好的函数是单位阶跃函数。然而单位阶跃函数不连续(GLM 的必要条件),而 logsitic 函数恰好接近于单位阶跃函数,且单调可微。于是希望通过该复合函数去拟合分类问题:
  
y = 1 1 + e − θ T X y=\frac{1}{1+e^{-\theta^TX}} y=1+eθTX1

于是有:
l n y 1 − y = θ T X ln\frac{y}{1-y}=\theta^TX ln1yy=θTX
发现如果我们假设 y = p ( y 为 1 类 ∣ x ; θ ) y=p(y为1类\mid x ;\theta) y=p(y1x;θ)作为我们的拟合函数,等号左边的表达式的数学意义就是1类和0类的对数几率(log odds)。这个表达式的意思就是:用线性模型的预测结果去逼近1类和0类的几率比。于是, θ T X = 0 \theta^TX=0 θTX=0就相当于是1类和0类的决策边界:
  当 θ T X > 0 \theta^TX\gt0 θTX>0,则有 y>0.5;若 θ T X → + ∞ \theta^TX\to+\infty θTX+ ,则 y→1 ,即y 为1类;
  当 θ T X < 0 \theta^TX\lt0 θTX<0,则有 y<0.5 ; 若 θ T X → − ∞ \theta^TX\to-\infty θTX,则 y→0,即 y 为0类。
  
  这个时候就能看出区别来了,在线性回归中 θ T X \theta^TX θTX为预测值的拟合函数;而在逻辑回归中 θ T X \theta^TX θTX=0为决策边界

https://blog.csdn.net/chenhefangai/article/details/108984224
https://blog.csdn.net/u010692239/article/details/52345754

2,回归问题常用的性能度量指标

在这里插入图片描述
在这里插入图片描述

3,分类问题常用的性能度量指标

  • 混淆矩阵(confusion matrix分类结果:

    • True negative(TN),称为真反例,是负样本预测成负样本的样本数
    • False positive(FP),称为假正例,是负样本预测成正样本的样本数
    • False negative(FN),称为假反例,是正样本预测成负样本的样本数
    • True positive(TP),称为真正例,是正样本预测成正样本的样本数
  • T和F表示预测是否正确,P和N表示预测结果是正例还是反例

混淆矩阵P(实际)N(实际)
P(预测)TPFN
N(预测)FPTN

在这里插入图片描述

  • Accuracy,Precision,Recall和F1 score的定义如下:
    • 准确率(ACC):分类正确的样本数占总样本的比例,即: A c c u r a c y = T P + T N F P + F N + T P + T N Accuracy = \frac{TP+TN}{FP+FN+TP+TN} Accuracy=FP+FN+TP+TNTP+TN.
    • 精度(PRE):预测为正且分类正确的样本占预测值为正的比例,即: P r e c i s i o n = T P T P + F P Precision = \frac{TP}{TP+FP} Precision=TP+FPTP.
    • 召回率(REC):预测为正且分类正确的样本占类别为正的比例,即: R e c a l l = T P T P + F N Recall= \frac{TP}{TP+FN} Recall=TP+FNTP.
      精度和召回率是一对矛盾的度量,一般来说,精度高时,召回率往往偏低,反之亦然。精度-召回率曲线:precision为纵轴,recall为横轴。P-R曲线见下:

在这里插入图片描述
其中查准率为P,查全率为R

  • F1值:综合衡量精度和召回率,即: F 1 s c o r e = 2 P R E × R E C P R E + R E C F1 score= 2\frac{PRE\times REC}{PRE + REC} F1score=2PRE+RECPRE×REC.
    F1-score是Precision和Recall两者的综合。
  • ROC曲线:以假阳率为横轴,真阳率为纵轴画出来的曲线,曲线下方面积越大越好。
    ROC曲线即受试者工作特征曲线 (receiver operating characteristic curve),又称为感受性曲线(sensitivity curve)。横坐标为假正例率(FPR),纵坐标为真正例率(TPR)。横坐标 F P R = F P F P + T N ​ FPR=\frac{FP}{FP+TN} ​ FPR=FP+TNFP,纵坐标 T P R = T P T P + F N TPR=\frac{TP}{TP+FN} TPR=TP+FNTP。由公式可以看到横纵坐标都在[0,1]之间,所以ROC曲线的面积小于等于1。
    ROC曲线的性质
    • (0,0):假正例率和真正例率都为0,TP=FP=0,即全部预测成负样本
    • (0,1):假正例率为0,FP=0,真正例率为1,FN=0,全部完美预测正确
    • (1,0):假正例率为1,TN=0,真正例率为0,TP=0,全部完美预测错误
    • (1,1):假正例率和真正例率都为1,FN=TN=0,即全部预测成正样本
    • TPR=FPR,斜对角线,预测为正样本的结果一半是对的,一半是错的,代表随机分类器的预测效果
  • ROC曲线在斜对角线以下,则表示该分类器效果差于随机分类器,反之,效果好于随机分类器。期望是ROC曲线尽量位于斜对角线以上,也就是向左上角(0,1)凸,因为(0,1)为完美预测。

  • ROC曲线见下图,当一个模型的ROC曲线完全包裹另一个模型的ROC时,前一个模型更优。 如下左图中,A包裹B,B包裹C,则模型A优于模型B,模型B优于模型C。
    在这里插入图片描述

4,逻辑回归的损失函数

在这里插入图片描述

5,逻辑回归处理多标签分类问题时,一般怎么做?

在这里插入图片描述

第四天_2021.5.14

1,写出全概率公式&贝叶斯公式

2,朴素贝叶斯为什么“朴素naive”?
3,朴素贝叶斯有没有超参数可以调?
4,朴素贝叶斯的工作流程是怎样的?
5,朴素贝叶斯对异常值敏不敏感?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值