鄂尔多斯市建设网站,上海松江网站设计公司,如何做一个简单的网站,做外贸必须有网站吗一、无监督相关#xff08;聚类、异常检测#xff09; 
1、常见的距离度量方法有哪些#xff1f;写一下距离计算公式。 
1#xff09;连续数据的距离计算#xff1a; 
闵可夫斯基距离家族#xff1a; 当p  1时#xff0c;为曼哈顿距离#xff1b;p 2时#xff0c;为欧…一、无监督相关聚类、异常检测 
1、常见的距离度量方法有哪些写一下距离计算公式。 
1连续数据的距离计算 
闵可夫斯基距离家族 当p  1时为曼哈顿距离p 2时为欧式距离p -∞时就是切比雪夫距离。 
余弦距离 其中A 和B是要比较的两个向量⋅ 表示向量的点积内积∥A∥ 和 ∥B∥ 分别表示向量 A 和 B的欧几里德范数也称为 L2 范数。余弦距离的值范围在[0,2]取值越小表示两个向量越相似取值越大表示两个向量越不相似。如果两个向量方向相同则余弦距离为 0表示完全相似如果两个向量方向相反则余弦距离为 2表示完全不相似。请注意有时也可以用余弦相似性Cosine Similarity来衡量向量的相似性它是余弦距离的补数即1−Cosine Distance。余弦相似性的取值范围在 [-1, 1]取值越大表示两个向量越相似取值越小表示越不相似。 
2离散数据的距离计算 
杰卡尔德Jaccard)距离AB集合的交集/A,B集合的并集 
汉明距离表示两个等长字符串在对应位置上不同字符的数目 2、常见的聚类算法有哪些 
主要有基于划分、基于密度、基于网络、层次聚类等除此之外聚类和其他领域也有很多结合形成的交叉领域比如半监督聚类、深度聚类、集成聚类等。 
3、Kmeans的原理是什么 
Kmeans是一种基于划分的聚类中心思想是类内距离尽量小类间距离尽量大主要算法过程如下 
初始K个质心作为初始的K个簇的中心点K为人工设定的超参数所有样本点n分别计算和K个质心的距离这里的距离是人工定义的可以是不同距离计算方法每个样本点和k个质心中最近的质心划分为1类簇重新计算质心方法是针对簇进行聚合计算kmeans中使用简单平均的方法进行聚合计算也可以使用中位数等方式进行计算重复上述过程直到达到预定的迭代次数或质心不再发生明显变化。kmeans的损失函数是 其中||xi - cj|| 表示数据点 xi 到簇中心 cj 的欧氏距离I(condition) 是一个指示函数当 condition 成立时为 1否则为 0。J越小说明样本聚合程度越高。 
4、Kmeans的初始点怎么选择不同的初始点选择有哪些缺陷该怎么解决 
随机初始化随机选取K个样本点作为初始质心缺陷在于如果选择到的质心距离很接近落在同个簇内则迭代的结果可能比较差因为最终迭代出来的质心点会落在簇内。最理想的状态是K个质心正好是K个簇由于随机初始化的随机性可以考虑多次进行随机初始化选择聚合结果最优的一次。随机分取初始化即将所有样本点随机赋予1个簇的编号则所有样本点最后会有K个编号然后进行组平均即对于同一个簇的样本进行平均得到初始化质心。相对于随机初始化初始化质心会更鲁棒一些但是仍旧存在随机初始化的缺陷仅仅是缓解。 
5、Kmeans聚的是特征还是样本特征的距离如何计算 
一般情况下是对样本聚类如果对特征聚类则处理方式也简单对原始的输出进行转置。其目的和做相关系数类似如果两个特征高度相关例如收入和资产水平则两个特征的距离相对较小但是一般不可行因为转置后维度很高例如有100万个样本则有100万的维度计算上不现实高维数据的距离度量也是无效的不如直接计算相关系数。 
6、Kmeans如何调优 
初始化策略调参k的大小调参手工方法手肘法为代表数据归一化和异常样本的处理 
7、介绍一下手肘法。 
手肘法纵轴是聚类效果的评估指标根据具体的问题而定如果聚类是作为单独的任务存在则使用SSE损失函数或轮廓系数这类的metric作为纵坐标然后找到metric最好且k最小的结果对应的k为最终的选择。手肘法自动化时只需计算k  n 和 k  n1之间的斜率当斜率n和n-1斜率n1和斜率n斜率n2和斜率n1的差值均小于固定阈值时即可停止。 8、kmeans的缺点如何解决 
对异常样本很敏感簇心会因为异常样本被拉得很远。异常样本是指在某些维度上取值特别大或者特别小的样本欧式距离中默认所有特征是相互独立的异常样本会产生影响。解决方法是做好预处理将异常样本剔除或者修正。K值很难确定。解决方法是针对k调参。只能拟合球形簇对于流形簇等不规则簇可能存在簇重叠的问题效果差。这种情况可能不再适用于Kmeans算法考虑换算法。无法处理离散特征缺失特征。无法保证全局最优。解决方法是跑多次取不同的局部最优里的最优。 
9、余弦距离和欧氏距离的区别什么场景下要使用余弦相似度 
欧式距离体现在数值上的绝对差异余弦距离体现方向上的相对差异。例如统计两部剧的用户观看行为用户A的观看向量为01用户B为10此时二者的余弦距离很大而欧式距离很小我们分析两个用户对于不同视频的偏好更关注相关差异显然应当使用余弦距离。而在分析用户活跃度以登陆次数和平均观看时长为特征时余弦距离会认为110、10100两个用户距离很近但显然这两个用户活跃度有差异需用欧式距离。 
10、余弦距离是否是一个严格定义的距离一个度量标准要满足什么要求才能算是距离 
距离的定义在一个集合中如果每一对元素均可唯一确定一个实数使得三条距离公理正定性对称性三角不等式成立则该实数称为这对元素之间的距离。余弦距离满足正定性和对称性但是不满足三角不等式因此它并不是严格定义的距离。 
11、Kmeans中我想聚成100类结果发现只能聚成98类为什么 
迭代过程中出现空簇原因在于K太大实际簇数量小于K初始化策略不会导致空簇的问题因为即使最简单的随机初始化也是从原始样本点中选择部分样本点作为质心。如果出现空粗可以在初始质心中引入异常样本这个异常点会自成一个簇而不会出现空簇的问题。 
12、Kmeans, GMM, EM之间有什么关系 
Kmeans是基于划分的聚类算法GMM是基于模型的聚类算法EM是估计GMM的参数使用的优化算法。Kmeans可以看作GMM的一种特例Kmeans聚类为球形Kmeans聚类为椭球形。Kmeans使用hard EM求解GMM使用Soft EM求解。 
13、高斯混合模型GMM的核心思想是什么GMM和多元高斯有什么区别多元高斯函数的期望是什么 
GMM是多个相关多元高斯的加权求和。高斯混合模型GMM是多元高斯分布之上的概念他认为现实世界的数据是由多个不同参数的相关多元高斯模型以不同的权重累积求和构成的。独立多元高斯模型可以看作相关多元高斯模型的特例 
14、GMM如何迭代计算为什么kmeans, GMM, EM满足上面描述的方式 
EM算法原理EM算法和梯度下降一样都可以用来优化极大似然函数当极大似然函数存在隐变量时EM算法是一种常用的优化算法。EM算法Expectation-Maximization Algorithm一般分为两步首先是期望步E步另一个是极大步M步。 
15、KNN算法是否存在损失函数 
不存在KNN属于懒惰学习lazy learning)的算法对应的有eager learning。 
lazy learning: 只存储数据集而不从中学习不需要模型训练收到测试数据后开始根据存储数据集对数据进行分类或回归eager learning从收集的数据中学习需要模型训练收到测试数据后直接完成分类或回归。 
二、不均衡学习 
1、数据不均衡如何解决抽样得到的分类准确率如何转换为原准确率 
将采样后的预测的类别按照采样比例进行相应的增大或减少例如对类别A下采样了50%则预测结果中类别A的预测数量为m令mm/0.52m然后计算分类准确率这种数据处理方式是不准确的合理的方式应该是直接对原始数据进行评估指标的计算。 
2、如果把不平衡的训练集正负样本13通过降采样平衡后那么平衡后的AUC值和预测概率会有什么变化 
ROC_AUC曲线对类别数量的变化不敏感因此AUC的计算结果整体不会发生明显变化通过下采样平衡后变相增大了正样本数量分类决策边界远离正样本预测概率整体变大。 3、class_weight的思想是什么 
class_weight对应的简单加权法是代价敏感学习最简单的一种方法思想就是小类样本加权使其再loss中比重变大。 
4、不均衡学习的原理是什么 
目前主流的不均衡学习主要是关于分类问题的不均衡。所谓的不均衡分类指的是样本不同类别的数量差异越来越大的情况下模型越来越偏向于预测大类样本的现象因此模型的分类性能越来越差。 
单纯从样本不均衡的角度出发不考虑分布变化小样本学习分类问题的困难程度等其他问题不均衡的类别对模型造成影响的原因 
目标函数优化的方法使用梯度下降优化目标函数的模型对于不均衡问题更敏感而tree模型纯粹基于贪心策略进行分裂的方法则对此并不敏感目标函数的使用hinge loss和交叉熵对于不均衡的敏感度不同。 
5、上采样过采样和生成样本的区别 
上采样不一定是生成样本例如简单的repeat式的上采样通过复制不涉及样本生成的过程但生成样本一定是一种上采样。 
三、模型的损失函数、评价指标和优化方法 
1、如何评价聚类结果的好坏轮廓系数是什么 
可以使用SSE函数评价聚类结果的好坏  轮廓系数是为每个样本定义的由两个分数组成a是样本与同一类簇中所有点的平均距离b是样本与下一个最近的类簇中所有其他点之间的平均距离。对于单个样本而言轮廓系数如下对于模型评估而言取所有样本的轮廓系数的均值作为模型聚类效果的评估指标   
2、准确率的局限性是什么 
不同分类阈值下准确率会发生变化评估起来比较麻烦对样本不均衡问题特别敏感例如当负样本占99%时分类器把所有样本都预测为负样本也可以获得99%的准确率。公式分类正确的样本数/总样本数 
3、ROC曲线如何绘制ROC与PRC的异同点准确率accuracy精确率precision), 召回率recall)各自的定义和缺陷PR曲线的绘制如何使用PR曲线判断模型好坏ROC曲线横坐标纵坐标意义。 
TP, FP, TN, FN是混淆矩阵confudion matrix)中的组成部分用来衡量分类模型在不同类别上的表现的工具。TP真正例表示模型正确地将正类别样本预测为正类别的样本数量FP假正例表示模型错误地将负类别样本预测为正类别的样本数量TN真反例表示模型正确地将负类别样本预测为负类别的样本数量FN假反例表示模型错误地将正类别样本预测为负类别。准确率accTPTN)/Total分类正确的样本数量/总样本数。精确率preTP/(TPFP)分子为正确预测的正样本的样本数量分母为预测为正样本的样本数量。召回率TP/(TPFN)分子为正确预测的正样本的样本数量分母为所有样本数量。误杀率FP/(FPTN)分子为错误预测的正样本数量分母为所有负样本的样本数量。缺陷①在数据量极度不平衡情况下模型将所有样本预测为大类则准确率就能提高②分类阈值接近0则模型将所有样本预测为正样本则召回率接近100%分类阈值接近1则模型将极少样本预测为正样本则精确率接近100%即召回率和精确率受分类阈值的影响较大。  模型的PR曲线以召回率为横坐标精确率为纵坐标。如果一个模型的PR曲线被另一个模型的PR曲线完全包住则可认为后者的性能优于前者如下图IG优于AC。   一般使用平衡点来评估无法直接比较的情况例如上图的IT和MZ平衡点BEP是PR时的取值如果这个值较大则说明模型性能较好。而F12*recall*precision/(recallprecision), F1值越大我们认为模型性能越好。ROC曲线和PR曲线相似其纵坐标是精确率但横坐标是误杀率。下方图的第一行ab均为原数据的图左边为ROC曲线右边为PR曲线。第二行cd为负样本增大10倍后两个曲线的图可以看出ROC曲线基本没有变化但PR曲线震荡剧烈。因此在面对正负样本数量非常不均衡的场景下ROC曲线会是一个更加稳定能反映模型好坏的指标。 4、ROC曲线和PR曲线的区别适用场景各自优缺点。 
ROC曲线对于正负样本比例不敏感。因为ROC曲线纵坐标是精确率横坐标是误杀率改变了标签中类别的分布之后预测正确的正样本/预测为正样本的样本数量会同时发生同向的变化预测为错误的负样本/所有负样本数量也会发生同向的变化即ROC的横纵坐标的计算是独立的分别针对正样本和负样本独立计算两个坐标的计算不会发生互相影响因此类别比例发生变化时ROC也不会剧烈抖动。PR曲线纵坐标是精确率横坐标是召回率。PR横纵坐标的计算结果是存在相互关系的他们都是针对正样本进行计算两个坐标的计算发生互相影响从而使得PR曲线对类别的变化很敏感。ROC聚焦于二分类模型整体对正负样本的预测能力所以适用于评估模型整体的性能如果主要关注正样本的预测能力而不care负样本的预测能力则PR曲线更合适。 
5、AUC的意义AUC的计算公式 
AUC是ROC的曲线下面积。 AUC的实际意义正负样本对中预测结果的rank值的比较假设正样本有x1个负样本有x0个则统计正样本*负样本的样本对中正样本的预测概率大于负样本的预测概率的样本数量z然后用z/x0*x1就可以得到AUC了计算的时间复杂度为O(N^2)这里的n指的是样本总数量。 即AUC表示任意选定一个正负样本对正样本的预测结果大于负样本的预测结果的概率。 
5、F1, F2....Fn值是什么Fβ怎么计算 当β等于1时Fβ等于F1当β等于n时Fβ等于Fn。β用于定义召回率和精确率的相对重要性越大则召回率越重要当β趋于无穷大时Fβ等于召回率越小则精确率越重要当β**2趋于0时Fβ等于精确率。 
6、常见的损失函数有哪些 
0-1损失函数非凸函数直接优化困难。logloss交叉熵多分类损失函数最常用的损失函数相对hinge loss对噪声敏感噪声是指无意义的hard sample。Cross-entropy(二元交叉熵logloss在二分类的特例当使用sigmoid作为激活函数的时候常用交叉熵损失函数而不用均方误差损失函数因为它可以完美解决平方损失函数权重更新过慢的问题具有“误差大的时候权重更新快误差小的时候权重更新慢”的良好特性。  exponential loss对噪声敏感adaboost中使用过其他情况很少使用。  hingeloss, 对噪声健壮性强。MSE, MAE, RMSE, MAPE, SMAPE。①其中MSE, MAE, RMSE对标签Y取值特别大的样本鲁棒性都较差MAE和RMSE相对有所缓解 ②MAPE范围是[0, ∞, MAPE为0%表示完美模型MAPE大于100%则表示劣质模型MAPE是MAE多了个字母③真实值有数据等于0时存在分母0除问题需要做平滑④MAPE对标签Y取值特别大的样本的鲁棒性较强因为通过除以真实标签即分母项对单个异常样本的loss进行了放缩缺陷在于对标签y取值接近0的样本鲁棒性很差一点点的偏差就会使得单个样本的MAPE的loss的计算结果很大⑤SMAPE是针对MAPE的对异常小样本的鲁棒性很差的问题进行了修正可以较好的避免mape因为真实值yi小而计算结果太大的问题同时对异常大的样本的鲁棒性也较好⑥MAPE和SMAPE都可以作为损失函数进行优化。 7、MSE均方误差对于异常样本的鲁棒性差的问题怎么解决 
如果异常样本无意义则对异常样本进行平滑等方式处理成正常样本如果异常样本很稀少直接删除也行。如果异常样本有意义例如双十一销量需要模型把这些有意义的异常考虑进来则从模型侧考虑使用表达能力更强的模型或复合模型或分群建模等。选择更加鲁棒的损失函数例如SMAPE。 
8、二分类为什么用二元交叉熵为什么不用MSE? 
sigmoid对模型输出进行压缩到0, 1)区间的条件下根据二元交叉熵得到的梯度更新公式中不包含sigmoid的求导项根据MSE的得到的梯度更新公式则会包含。 
使用MSE推导出的梯度更新量如下因为sigmoid的性质导致σ′(x)在z取大部分值时会很小如下图的两端几乎接近于平坦这样会使得η(a−y)σ′(z)很小导致参数w和b更新非常慢。   根据二元交叉熵推导出来的梯度更新公式如下不包含sigmoid的求导项没这个问题 9、信息量信息熵相对熵KL散度交叉熵条件熵互信息联合熵分别表示什么 
信息量信息量用来度量一个事件的不确定性程度不确定性越高则信息量越大一般通过事件发生的概率来定义不确定性信息量则是基于基于概率密度函数的log运算公式如下其中p(x)可以是离散数据的概率也可以是连续数据的概率密度函数   信息熵衡量的是一个事件集合的不确定性程度就是事件集合中所有事件的不确定的期望公式如下相对熵KL散度KL散度从概率统计角度出发表示用于两个概率分布的差异的非对称衡量KL散度也可以从信息理论的角度出发从这个角度出发的KL散度也称为相对熵实际上描述的是两个概率分布的信息熵的差值。对于离散和连续的随机变量分布都可以使用KL散度进行定义KL和余弦距离一样不满足距离的严格定义其具有非负性和不对称性。交叉熵交叉熵是真值分布的信息熵与KL散度的和而真值的熵是确定的与模型的参数θ 无关所以梯度下降求导时优化交叉熵和优化KL散度是一样的。  联合熵联合熵实际上衡量的是两个事件集合经过组合之后形成的新的大的事件集合的信息熵。互信息互信息事件集合X的信息熵-事件集合X在已知事件集合Y下的条件熵事件集Y的信息熵-事件集合Y在已知事件集合X下的条件熵。   
10、怎么衡量两个分布的差异KL散度和交叉熵损失有什么不同关系是什么 
衡量两个分布的差异可以用KL散度和js散度。交叉熵真实的标签分布的信息熵相对熵(KL散度 
11、距离的定义哪些度量方法不符合距离的定义 
定义在一个结合汇总如果每一对元素均可唯一确定一个实数使得三条距离公理正定性对称性三角不等式成立则该实数可称为这对元素之间的距离。①正定性d(x,y)0仅当xy则不等式等号成立如果样本A和样本B的距离为0则样本A和样本B可以看作同一个样本②对称性d(x,y)d(y,x)样本A到样本B的距离等于样本B到样本A的距离③d(x,y)d(x,z)d(z,y)即样本A到样本B的距离小于样本A到样本C的距离样本B到样本C的距离。 余弦距离不满足三角不等式KL散度不满足对称性二者都不是严格意义上的距离的定义。 
12、交叉熵的设计思想是什么 
优化交叉熵等价于优化KL散度其中p是真实分布它的信息熵H(p)是一个定值对于模型来说是一个不可优化的常数项可以把它替换成包括1、Π在内的任何常数对优化都没有影响。在这种问题中优化交叉熵和优化KL散度是等价的。在多分类问题中这两者完全一致因为对于onehot标签来说所以交叉熵是希望模型的预测结果能够尽量和标签的分布保持一致。 
13、梯度下降的表达式。 
批量梯度下降随机梯度下降 
14、机器学习中哪些是凸优化问题哪些是非凸优化问题请各举例。 
凸函数的定义为函数L(.)是凸函数当且仅当对定义域中的任意两点x, y和总有   
该不等式的一个直观解释是凸函数曲面上任意两点而成的线段其上的任意两点连接而成的线段其上的任意一点都不会处于该函数曲面的下方。 凸优化问题包括支持向量机SVM、线性回归等线性模型。非凸优化包括低秩模型如矩阵分解、深度神经网络模型等。 
15、什么是偏差和方差 
偏差所有采样得到的大小为m的训练数据集训练出的所有模型的输出的平均值和真实模型输出之间的差异。偏差通常是由于我们对学习算法做了错误的假设所导致的比如真实模型是某个二次函数但我们假设模型是一次函数由偏差带来的误差通常在训练误差上就能体现出来。方差所有采样得到的大小为m的训练数据集训练出的所有模型的输出的方差。方差通常是由于模型的复杂度相对于训练样本数m过高导致的比如有100个训练样本而我们假设模型是阶数不大于200的多项式函数由方差带来的误差通常体现在测试误差相对于训练误差的增量上。 
16、特征选择的方法有哪些 
过滤式、包裹式、嵌入式特征选择。过滤式特征选择主要采用独立于模型的评估指标来评估特征的好坏计算快能够方便迅速的对特征进行粗筛缺陷在于评估指标的计算与模型解耦很多时候精度都不好。 17、什么是过拟合和欠拟合 
欠拟合模型在训练和预测时表现都不够好。过拟合模型对于训练数据拟合过当在训练集上表现很好但在测试集和新数据上的表现较差。 
18、如何解决过拟合和欠拟合问题 
过拟合①数据层面增加样本缓解过拟合②特征层面减少特征缓解过拟合③模型层面约束模型的复杂程度如l1,l2限制树深学习率缩放早停dropout,BN正则模型集成。 
19、为什么需要对数值类型的特征做归一化 
通过梯度下降法求解的模型通常时需要归一化的包括线性回归、逻辑回归、基于梯度下降法视角下的支持向量机、神经网络等模型主要原因在于归一化能够大大加快梯度下降法收敛的速度。因为具有相似尺寸的特征可以帮助梯度下降更好更快地收敛具有不同程度的幅度和范围的特征将导致每个特征的步长不同。为了确保梯度下降更平滑更快速地收敛我们需要缩放我们的特征使他们共享相似的尺寸。 20、逻辑回归损失函数中为啥要加1/N 
1/NN表示样本数量可以融合到学习率里去理解torch的损失函数里面也设计了对loss进行平均和对loss进行求和平均不求和的差异就在于每一个step对参数W的梯度更新量的差异为N样本数量倍数据量很大时会导致梯度更新量非常大权重的变化会非常的剧烈收敛困难当学习率缩小n倍达到的效果是一样的。梯度表达式前面的以乘数的形式存在的常数项对梯度下降法的收敛没有任何的影响本质上可以理解为学习率的变化。 
21、逻辑回归使用梯度下降的时候停止条件是什么 
达到最大迭代次数所有的权重的梯度更新量的值都小于预先设定的阈值早停 
22、逻辑回归是线性模型还是非线性模型 
我们将逻辑回归视为线性模型。逻辑回归的输出在进入sigmoid函数之前是线性值sigmoid将模型输出映射成非线性的值所以从决策平面来说逻辑回归是线性模型从输出看逻辑回归是非线性模型。但一般从决策平面来定义线性和非线性所以还是将逻辑回归视为线性模型。 
23、L0、l1、l2范数分别指什么 
L0范数向量中非0元素的个数L1范数向量中各个元素绝对值的和L2范数向量中各元素平方和再求平方根。其中L0和L1能够使参数稀疏但L0范数很难优化L1范数是L0范数的最优凸近似而且它比L0范数更容易优化求解L2范数不但可以防止过拟合提高模型的泛化能力还可以让我们的优化求解变得稳定和快速。