在logistic regression 中,如果同时加入l1l1范数和l2范数数,会产生什么效果

浅谈L0,L1,L2范数及其应用 - 简书
浅谈L0,L1,L2范数及其应用
原文传送门: 浅谈L0,L1,L2范数及其应用在线性代数,函数分析等数学分支中,范数(Norm)是一个函数,其赋予某个向量空间(或矩阵)中的每个向量以长度或大小。对于零向量,另其长度为零。直观的说,向量或矩阵的范数越大,则我们可以说这个向量或矩阵也就越大。有时范数有很多更为常见的叫法,如绝对值其实便是一维向量空间中实数或复数的范数,而Euclidean距离也是一种范数。范数的一般化定义:设p≥1的实数,p-norm定义为:||x||p:=(∑i=1n∣∣xi∣∣p)1p(1)此处,当p=1时,我们称之为taxicab Norm,也叫Manhattan Norm。其来源是曼哈顿的出租车司机在四四方方的曼哈顿街道中从一点到另一点所需要走过的距离。也即我们所要讨论的l1范数。其表示某个向量中所有元素绝对值的和。 而当p=2时,则是我们最为常见的Euclidean norm。也称为Euclidean distance。也即我们要讨论的l2范数。 而当p=0时,因其不再满足三角不等性,严格的说此时p已不算是范数了,但很多人仍然称之为l0范数。 这三个范数有很多非常有意思的特征,尤其是在机器学习中的正则化(Regularization)以及稀疏编码(Sparse Coding)有非常有趣的应用。下图给出了一个Lp球的形状随着P的减少的可视化图。
1- L0 范数虽然L0严格说不属于范数,我们可以采用等式来给出l0-norm得定义:||x||0:=0∑i=0nx0i??????????(2)上面的公式仍然让人不是很明白,0的指数和平方根严格意义上是受限条件下才成立的。因此在实际应用中,多数人给出下面的替代定义:||x||0=#(i)withxi≠0(3)其表示向量中所有非零元素的个数。正是L0范数的这个属性,使得其非常适合机器学习中,特征选择的应用。通过最小化L0范数,来寻找最少最优的稀疏特征项。但不幸的是,L0范数的最小化问题在实际应用中是NP难问题。因此很多情况下,L0优化问题就会被relaxe为更高维度的范数问题,如L1范数,L2范数最小化问题。2- L1 范数对于向量X,其L1范数的定义如下:||x||1:=∑i=1n∣∣xi∣∣(4)其应用范围非常的广泛。如在计算机视觉中的,,都是利用L1范式的定义。L1最优化问题的解是稀疏性的,其倾向于选择很少的一些非常大的值和很多的insignificant的小值。而L2最优化则更多的非常少的特别大的值,却又很多相对小的值,但其仍然对但从最优化问题解的平滑性来看,L1范数的最优解相对于L2范数要少,但其往往是最优解,而L2的解很多,但更多的倾向于某种局部最优解。
但由于L1范数并没有平滑的函数表示,起初L1最优化问题解决起来非常困难,但随着计算机技术的到来,利用很多凸优化算法使得L1最优化成为可能。3- L2 范数当然范数中最常见,也最著名的非L2范数莫属。其应用也几乎包括科学和工程的各个领域。定义公式如下:||x||2:=∑i=1nx2i??????????(5)也Euclidean Norm,如果用于计算两个向量之间的不同,即是Euclidean Distance.欧几里德范数的最优化问题可以用如下公式表述:min||x||2subjecttoAx=b(6)借助拉格朗日乘子,我们便可以解决该最优化问题。由L2衍生,我们还可以定义无限norm,即l-infinity norm:||x||∞:=∞∑i=1nx∞i??????????(7)一眼看上去上面的公式还是有点tricky的。我们通过一个简单的数学变换,假设X_j是向量中最大的元素,则根据无限大的特性,我们可以得到:x∞j&&x∞i∨j≠i则可知∑i=1nx∞i=x∞j则根据公式(7)的定义,我们可以得到:||x||∞=∞∑i=1nx∞i??????????=∞x∞j???√=∣∣xj∣∣因此我们便可以说l-infinity norm是X向量中最大元素的长度。||x||∞=max(∣∣xj∣∣)(8)4- 机器学习中的应用不知道有多少人是因为机器学习中的正则化和特征选择等才开始了解这些范数的,至少我是。L0范数本身是特征选择的最直接最理想的方案,但如前所述,其不可分,且很难优化,因此实际应用中我们使用L1来得到L0的最优凸近似。L2相对于L1具有更为平滑的特性,在模型预测中,往往比L1具有更好的预测特性。当遇到两个对预测有帮助的特征时,L1倾向于选择一个更大的特征。而L2更倾向把两者结合起来。4-1 正则化在机器学习中正则化是指在损失函数中通过引入一些额外的信息,来防止问题或问题。一般这些额外的信息是用来对模型复杂度进行惩罚()。其一般形式如下:Loss(X,Y)=Error(X,Y)+α∣∣∣∣w∣∣∣∣(9)∣∣∣∣w∣∣∣∣便可以选取L1或是L2范数来作为惩罚项,不同的模型,其损失函数也不同,对于线性回归而言,如果惩罚项选择L1,则是我们所说的,而L2则是。下面我们列出了不同模型中的正则化的损失函数(来自Andrew Ng的课程):Regularized Logistic RegressionJ(θ)=-1m[∑i=imy(i)loghθ(x(i))+(1-y(i))log(1-hθ(x(i)))]+λ2m∑j=1nθ2jRegularized Neural NetworkJ(θ)=-1m[∑i=im∑k=1Ky(i)klog(hθ(x(i)))k+(1-y(i))log(1-(hθ(x(i)))k)]+λ2m∑l=1L-1∑i=1sl∑j=1sl+1(θ(l)ji)2Soft Margin SVM12|w|2+C∑imax(0,1-yi(w?xi+b))从上面可以看出常用的正则化项多是L2范数,除了防止过拟合的问题,还有一个好处就是能否改善ill-posed(condition)问题。尤其是当训练样本相对于特征数非常少时,其矩阵便是非满秩的,往往倾向于有无数个解,且是不可逆的。其便会很大。一方面,根据此得到的最优化值很不稳定,往往某个特征变量很小的变动都会引发最终结果较大的偏差。另外通过矩阵求逆从而求的最优解就会变的非常困难。如对于线性回归而言,求的最优解析解为:w^=(XTX)-1XTy而加上L2正则项后,其变为:w?=(XTX+λI)-1XTy从而可以直接求逆,改善了condition number。而对于无解析解,通过迭代优化的算法,L2正则化通过将目标函数变为λ-strongly convex(λ强凸),有效的加快了其收敛速度。4-2 贝叶斯先验正则化项从贝叶斯学习理论的角度来看,其相当于一种先验函数。即当你训练一个模型时,仅仅依靠当前的训练集数据是不够的,为了实现更好的预测(泛化)效果,我们还应该加上先验项。而L1则相当于设置一个Laplacean先验,去选择MAP(maximum a posteriori)假设。而L2则类似于 Gaussian先验。如下图所示:
从上图可以看出,L1先验对大值和小值的tolerate都很好,而L2先验则倾向于均匀化大值和小值。4-3 特征选择与稀疏编码机器学习社区里通常把特征选择的方法分为三种。一种是基于统计学的一些方法,对特征进行预筛选,选出子集作为模型输入。如统计推理使用的假设检验,P值。另一种是采用某种成熟的学习算法进行特征选择,如决策树中采用信息增益来选择特征。还有一种便是在模型算法中进行自动特征选择。而L1范数作为正则化项,其特征选择的图谱倾向于spiky,实现了有效的特征选择。稀疏编码也是想通过寻找尽可能少的特征表达某个输入的向量X。mina(j)i,?i∑j=1m∣∣∣∣∣∣∣∣x(j)-∑i=1ka(j)i?i∣∣∣∣∣∣∣∣2+λ∑i=1kS(a(j)i)其中?i是所要寻找的基向量,a(j)i是我们要优化的各个基向量的权重。最右边的表达式便是其正则化惩罚项,在这里也称Sparse Cost。实际中我们通常便用L1范数。5 参考[1.].[2.].[3.].[4.].[5.].[6.].
The goal of life is to make you heartbeat match the beat of the universe, to match your nature with Nature.
---http:hengwei.me逻辑回归模型(Logistic Regression)是一个重要的有监督二类分类模型,在计算广告学中有着非常广泛的应用。在求职过程中发现各大互联网公司凡是涉及广告工程师的岗位面试几乎都会问到逻辑回归,因此在这里作一个总结。1.什么是逻辑回归Logistic Regression 属于广义线性模型(generalized linear model)的一种,是基于Sigmoid函数(又叫“S型函数”)的有监督二类分类模型。Sigmoid函数公式为:其导数形式为:注意,这个导数形式在求解参数的推导过程中会用到。 取值范围被压缩在0到1之间,其图像如下图所示:我们知道有监督分类问题需要有带类别标记的训练样本,中的 就对应训练集中某个样本的信息。 而样本信息通常用一系列特征的线性组合来表示,即其中 表示 n 个特征,是每个特征的权重,代表对应特征的重要程度,是偏移,上式通常被写成向量形式:
( 对应的等于1)。那么Sigmoid函数就可以相应地写为如下的形式:假设我们知道了某个样本对应的特征取值和权重参数,那么只要将其带入上式即可得到一个0到1之间的数,通常认为
则属于正类别,反之属于负类别,即这个数其实反映了该样本属于正类别的概率。现在的问题是,我们手上有了训练集,即样本的都是已知的,而模型参数是未知的。我们需要通过训练集来确定未知的值。一旦被确定,每当面临新样本时,我们就可以将其对应的
中,根据结果是否大于0.5,轻松加愉快地得出新样本的类别了。2.目标函数假设训练集中有个样本,每个样本属于正类别的概率为 ,属于负类别的概率就是 ,在训练过程中,我们应该尽可能地使整个训练集的分类结果与这个样本的类别标记尽可能地一致。换句话说,我们要使训练样本集分类正确的似然函数最大,而我们可以很容易地写出如下的似然函数:其中是训练集中第
个样本已经被标记好的类别,若为1.则上式的前半部分起作用,反之后半部分起作用。由于对 整体求 ,其极值点保持不变,因此可以简化为:接下来的任务是求相应的值,使得取最大值。如果对整体取负号即为Logistic回归的损失函数(loss function),相应地,应该求使取最小值的。3.求解过程这里采用随机梯度下降对求解,首先对每个特征对应的参数
随机赋一个较小的值,然后需要对求偏导数,复合函数求偏导说白了就是“剥洋葱大法”,即由外层到内层逐层求导,结合第1小节给出的 ,不难得出如下推导过程。有了偏导数之后,就可以采用迭代的方式求解每个了:也就是
其中是步长,又叫学习率,是一个常数。经过若干次迭代后,当不再变化或者前后两次的差异小于某个阈值时,我们将此时的一组
作为逻辑回归模型的参数。如果使用损失函数作为优化目标函数,那么上式应该换成如下形式:注意:其实前者对似然函数求解是“梯度上升法”(求最大值),对损失函数求解是梯度下降法(求最小值),两者本质是一样的,效果也等同,一般广义上的梯度下降法包含了梯度上升法和梯度下降法。除了梯度下降法之外,以L-BFGS为代表的拟牛顿法也比较流行,且速度更快。4.正则化在实际应用中,为了防止过拟合,使得模型具有较强的泛化能力,往往还需要在目标函数中加入正则项。在逻辑回归的实际应用中,L1正则应用较为广泛,原因是在面临诸如广告系统等实际应用的场景,特征的维度往往达到百万级甚至上亿,而L1正则会产生稀疏模型,在避免过拟合的同时起到了特征选择的作用。工业界一般采用更快的L-BFGS算法求解。关于L1正则逻辑回归和逻辑回归在广告系统中的实际应用可以参考
。5. Logistic Regression 与 Softmax Regression待补充6.问题补充在面试过程中,往往面试官要求讲解逻辑回归的原理和推导后,还会追问一些问题,现列举几个代表性的问题如下:(1)逻辑回归有何优缺点?优点:简单易于实现。逻辑回归可以输出一个[0,1]之间的浮点数,也就是不仅可以产生分类的类别,同时产生属于该类别的概率。逻辑回归是连续可导的,易于最优化求解。缺点:容易过拟合原始的逻辑回归只能处理两分类问题,且必须线性可分。(2)步长α有什么要求,应该怎么选择?梯度下降算法的每次迭代受到学习率的影响,如果学习率α过小,则达到收敛所需的迭代次数会非常高;如果学习率过大,每次迭代可能不会减小代价函数,可能会越过局部最小值导致无法收敛。在斯坦福的机器学习课程中介绍了一种“启发式”的方法确定α,即按照α=0.01,0.03,0.1,0.3,1,3,10的顺序不断尝试。其他方法待补充。(3)L1正则和L2正则有什么区别?L1正则和L2正则分别对应1范数和2范数,具体可以参考 (4)梯度下降和随机梯度下降有什么区别?前者对整个样本集优化,后者每次只对一个样本优化,因此更快,但是可能收敛到局部最优解。另外,介于两者之间的还有批处理梯度下降法。(5)梯度下降速度比较慢,有没有更快的方法?可以用L-BFGS等牛顿迭代系列方法。关于牛顿迭代的详细介绍可以看。(6)为什么牛顿迭代比梯度下降速度快?牛顿迭代与梯度下降法的不同之处在于多了一项二阶导数,因此牛顿法是二阶收敛的,而梯度下降法是一阶收敛。二阶其实相当于考虑了梯度的梯度,所以相对更快。可以类比物理中的速度和加速度的概念,梯度下降相当于对速度作优化,牛顿法相当于还对加速度做优化,因此更快。(7) 对逻辑回归的并行化是否有了解?可以参考 7.参考文献[1]
/content/3586335.html[2]
/content/4487577.html[2]
/content/6706604.html[7]
/content/6700446.html[8]
如果您想留下此文,您可以将其发送至您的邮箱(将同时以邮件内容&PDF形式发送)
相关文章推荐
(Ctrl+Enter提交) &&
已有0人在此发表见解
&在& 15:32收藏到了
&&在信息爆炸的时代,您的知识需要整理,沉淀,积累!Lai18为您提供一个简单实用的文章整理收藏工具,在这里您可以收藏对您有用的技术文章,自由分门别类,在整理的过程中,用心梳理自己的知识!相信,用不了多久,您收藏整理的文章将是您一生的知识宝库!
· 蜀ICP备号-1& 京东校招笔试题及解析
//仅供学习,请勿转载
一:若k为整形,下述while循环的次数为()
while(k&1)
解:log2(1024)=10;9&log2(1000)&10,所以,结果为9
二:基于二次准则函数的H-K算法较之于感知器算法的优点是();
解:1.可以判别问题是否线性可分。3:其解的适应性更好
HK算法思想很朴实,就是在最小均方误差准则下求得权矢量.
他相对于感知器算法的优点在于,他适用于线性可分和非线性可分得情况,对于线性可分的情况,给出最优权矢量,对于非线性可分得情况,能够判别出来,以退出迭代过程.
三:在统计模式分类中,当先验概率未知时,可以使用()?
1:N-P判决,2:最小最大损失准则。
在贝叶斯决策中,对于先验概率p(y),分为已知和未知两种情况。
p(y)已知,直接使用贝叶斯公式求后验概率即可;
p(y)未知,可以使用聂曼-皮尔逊决策(N-P决策)来计算决策面。而最大最小损失规则主要是使用解决最小损失规则时先验概率未知或难以计算的问题的。
四:下面函数可以作为聚类分析中的判别函数的有?
五:在()情况下,用分支定界法做特征选择计算量相对较少?BD
1:选用的可分性判据J对特征数目单调不减。2:
一般在( 可分性判据对特征个数具有单调性)和( Cnm&&n )的条件下,可以使用分支定界法以减少计算量
分支定界法:定义一个满足单调性条件的评价准则函数,对两个特征子集s1和s2而言,如果s1是s2的子集,那么s1所对应的评价函数必须要小于s2所对应的评价函数值,在定义了该评价函数的前提下,该算法对最终特征子集的选择过程可以用一棵树来描述,树根是所有特征的集合从树根可分性判据值和事先定义的最佳特征子集的特征数目,搜索满足要求的特征子集。
但是,存在三个问题:1.该算法无法对所有的特征依据其重要性进行排序,如何事先确定最优特征子集中特征的数目是一个很大的问题。2:合乎问题要求的满足单调性的可分性判据难以设计。3:当处理高维多分类问题时,算法要运行多次,计算效率低下的问题将非常明显。
六:以下()属于线性分类器最佳准则?acd
1:感知准则函数2:支持向量机3:Fisher准则
解:线性分类器有三大类:感知器准则函数,SVM,Fisher准则。
感知器准则函数:代价函数J=-(W*X+w0),分类的准则是最小化代价函数。感知器是神经网络的基础。
SVM:支持向量机也是很经典算法,优化目标是最大间隔,又称最大间隔分类器,是一种典型的线性分类器。(使用核函数可解决非线性问题)
Fisher准则:更广泛的称呼是线性判别分析(LDA),将所有样本投影到一条远点出发的直线,使得同类样本距离尽可能的小,不同类样本距离尽可能的大,具体为最大化“广义瑞利熵”
七:有两个样本点,第一个点为正样本,它的特征向量是(0,-1);第二个点为负样本,它的特征向量是(2,3),从这两个样本点组成的训练集构建一个线性SVM分类器的分类面方程式()b
解:先求斜率,再求中点。x+2y=3;斜率:(3-(-1))/(2-0)=2;中点(1,1),
八:下面代码片段中,存在编译错误的语句是bcd
Byte b1=1,b2=2,b3,b6,b8;
Final byte b4=4,b5=6,b7;
b3=(b1+b2);
b8=(b1+b4);
b7=(b2+b5);
解:java中的类型解析知识点,final 根据自己类型转化,b1+b2变成int型,b3是byte型,无法接受
b4+b5是byte类型,b1+b4是int类型,b2+b5是int类型。
九:SecondNamenode的正确描述是()
1:SecondNamenode会周期的进行fsimage文件的合并,防止edits文件过大,导致Namenode启动时间过长,应该与Namenode部署到同一个节点上。
2:SecondNamenode是对主Namenode的一个补充,对内存的需求和Namenode相同。
SecondNamenode是对主Namenode的一个补充,它会周期的执行对HDFS元数据的检查点。
当前的设计仅仅允许每个HDFS只有单个SecondNamenode结点。
SecondNamenode是有一个后台的进程,会定期的被唤醒(唤醒的周期依赖相关配置)执行检查点任务,然后继续休眠。
它使用ClientProtocol协议与主Namenode通信。
SecondNamenode最好与Namenode部署到不同的服务器( 应该在merge的过程中,SecondNamenode对内存的需求与Namenode是相同的,所以对于那些 大型的生产系统 中,如果将两者部署 到同台服务器 上,在 内存上会出现 瓶颈。)
十:假设x1和x2是两个以0为均值,1为标准差的正态分布,那么x1+x2的概率密度分布是b
解:以0为均值,sqrt(2)为标准差的正态分布。
若x1与x2相互独立,则E(x1+x2)=E(x1)+E(x2)=0;方差:Val(x1+x2)=Val(x1)+Val(x2)=2;
#include&stdio.h&
int cnt=0;
int fib(int n)
Else if(n==1)
fib(n-1)+fib(n-2);
Void main()
Printf(“%d”,cnt);
解:从f(0),f(1)向上加;
n=0;cnt=1;
n=1;cnt=1;
n=2;cnt=3;f(2)=f(1)+f(0)+1=3
n=3;cnt=5;
十二:下面有关Hive的说法正确的是()
1:Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文本映射为一张数据库表,并提供简单的SQL查询功能
2:Hivez在加载数据过程中不会对数据进行任何的修改,只是将数据移动到HDFS中Hive设置的目录下。
Hive使用类sql语句进行相关操作,称为HQL,它允许熟悉 SQL 的用户查询数据。同时,这个语言也允许熟悉 MapReduce 开发者的开发自定义的 mapper 和 reducer 来处理内建的 mapper 和 reducer 无法完成的复杂的分析工作。
Hive 构建在基于静态批处理的Hadoop 之上,Hadoop 通常都有较高的延迟并且在作业提交和调度的时候需要大量的开销。因此,Hive 并不能够在大规模数据集上实现低延迟快速的查询,例如,Hive 在几百MB 的数据集上执行查询一般有分钟级的时间延迟。
Hive 并不适合那些需要低延迟的应用,例如,联机事务处理(OLTP)。Hive 查询操作过程严格遵守Hadoop MapReduce 的作业执行模型,Hive 将用户的HiveQL 语句通过解释器转换为MapReduce 作业提交到Hadoop 集群上,Hadoop 监控作业执行过程,然后返回作业执行结果给用户。Hive 并非为联机事务处理而设计,Hive 并不提供实时的查询和基于行级的数据更新操作。Hive 的最佳使用场合是大数据集的批处理作业,例如,网络日志分析。
十三:关于input split和block的描述正确的是()
1:input split是一种记录的逻辑划分,而block是对输入数据的物理分割,两者之间有着本质的区别
一个split不会包含零点几或者几点几个Block,一定是包含大于一个整数个Block
一个split不会包含两个File的Block,不会跨界File边界
Split和Block的关系是一对多的关系
Maptask的个数最终决定于split的长度
十四:以下是strom特点的是()
1:实时性,2:容错机制3:批处理4:高可靠性
Strom是一个分布式的,容错的实时计算系统,strom的特点如下:简单的编程模型,类似于Mapreduce降低了并行批处理的复杂度,strom降低了进行实时处理的复杂性。
可以使用各种编程语言,默认支持clojure,java,ruby和python。要增加其他语言的支持,只需实现一个简单的strom通信协议即可。
容错性,strom会管理工作进程和节点的故障。
水平扩展,计算在多个线程、进程和服务器之间并行进行的。
可靠地消息处理,strom保证每个消息至少完整处理一次,任务处理失败时,它会负责从消息源重试消息。
本地模式,strom有一个本地模式,可以在处理过程中完全模拟strom集群,这让你完全快速进行开发和单元测试。
十五:以下几种模型方法属于判别式模型(Discriminative Model)的有()
1:条件随机场 2:区分度训练
解:常见的判别模型有:
支持向量机
传统神经网络
线性判别分析
产生式模型:
朴素贝叶斯
混合多项式
混合高斯模型
隐马尔科夫模型
十六:大整数836701转化成16进制的表示,最后两位字符是()
解:701拿出来Mod(16).结果为为13.最后一位为D
十七:已知数据表A中每个元素距其最终位置不远,为了节约时间,应该采取的算法是()
直接插入排序
因为每个数据里最终目标不远,说明数据基本有序,直接插入排序是数据越有序越快,最快时间复杂度可达到O(n),选择排序无论何时都是O(n^2), 快速排序越有序越慢,它要从后到前遍历找比基准小的,时间复杂度达到O(n),堆排序需要不断进行调整,时间复杂度为O(nlog2^n)
十八:下列有关k-means算法说法正确的是:
1:不能自动识别类的个数,随机挑选初始点为中心点
2:初始聚类中心的选择对聚类结果的影响很大
十九:在linux中,file.sh文件的权限为-rw-r--r-x,其对应权限用数值形式表示为()
Linux权限中,第一个指是否是目录,后面分别指对拥有者、所属组,其他人的权限,权限有三位,分别是读,写,执行,-代表0,否则代表1,所以,表示为110 100 101 =6 4 5
二十:设图的相邻矩阵如下:
则G的顶点有5个,边有8条
解:这是个无向图
二十一:有一段楼梯台阶有15级,以小明的脚力一步最多只能跨3级,请问他登上这个楼梯有多少种登法。
解:这是一个递归问题,对斐波那契问题的变形,f(15)=f(14)+f(13)+f(12),已知f(1)=1,f(2)=2,f(3)=4
二十二:整数240有几个因数()
解:质数分解,240=2^4*3*5;所以,因数个数(4+1)*(1+1)*(1+1)=20个
二十三:Navie Bayes是一种特殊的Bayes分类器,特征变量是X,类别标签是C,它的一个假定是:()
解:特征变量X的各个维度是类别条件独立随机变量。
编程题:有一楼梯共m级,刚开始时你在第一级,若每次只能跨上一级或者二级,要走上m级,共有多少种走法?注:从一级到一级有0种走法。
给定一个正整数int n,请返回一个数,代表上楼的方式数。保证n小于等于100.为了防止溢出,请返回结果Mod
小东和三个朋友一起在楼上抛小球,他们站在楼房的不同层,假设小东占站的楼层距离地面N米,球从他手里自由落下,每次落地后反跳回上一次下落高度的一半,并以此类推知道全部落到地面不跳,求4个小球一共经过多少米?(数字都为整数)
解:利用极限思想
Res=x+2*x*(1/2+1/4+1/8+…………)=3*x
1:在区间[-2,2]里任取2个实数,它们的平方和&1的概率是大约是( 80% )
1-小圆的面积/矩形的面积
2:已知一组数据的协方差矩阵P,下面关于主分量说法错误的是()
K-L变换与PCA变换是不同的概念,PCA的变换矩阵是协方差矩阵,K-L变换的变换矩阵可以有很多种(二阶矩阵、协方差矩阵、总类内离散度矩阵等等)。当K-L变换矩阵为协方差矩阵时,等同于PCA。
解:1:主分量分析的最佳准则是对一组数据进行按一组正交基分解, 在只取相同数量分量的条件下,以均方误差计算截尾误差最小。2:在经主分量分解后,协方差矩阵成为对角矩阵3:主分量是通过求协方差矩阵的特征值得到
3:从根开始按层次(第0层-&第1层-&第2层)遍历一颗二叉树,需要使用什么辅助数据结构?( queue
4:Which of the following statements are true?(acd)
A :We can create a binary tree from given inorder and preorder traversal sequences.
B:We can create a binary tree from given preorder and postorder traversal sequences.
C:For an almost sorted array, insertion sort can be more effective than Quicksort.
D:Suppose T(n) is the runtime of resolving a problem with n elements, T(n) = Θ(1) if n = 1; T(n) = 2T(n/2) + Θ(n) if & 1; so T(n) is Θ(n log n).
E:None of the above.
5:下列哪种排序算法是不稳定算法cd
快速排序 堆排序
6:对于一个分布式计算系统来说,以下哪三个指标不能同时完成?abd
1:一致性2:可用性3:区分容错性
7:以下关于PMF(概率质量函数),PDF(概率密度函数),CDF(累积分布函数)描述错误的是()
1:CDF是PDF在特定区间上的积分2:PMF描述的是离散型随机变量在特定取值点的概率3:有一个分布的CDF函数H(x),则H(a)等于P(X&=a)
8:在分类问题中,我们经常会遇到正负样本数据量不等的情况,比如正样本为10w条数据,负样本只有1w条数据,以下最合适的处理方法是()
解:将负样本重复10次,生成10w样本量,打乱顺序参与分类
9:Hadoop的核心概念之一是map/reduce,关于map/reduce以下描述错误的是(
解:1:map/reduce是“分而治之”思想的实现模型2:用户不能直接设置map task的数量,而只能通过修改 Input Split的最小值,间接改变map task的数量3:map阶段对输入的数据划分成小块并在各个节点上并行处理,等所有节点的数据都处理完了,转入reduce阶段,对各个节点处理的结果进行合并,最终输出归并后的结果
10:在Logistic Regression 中,如果同时加入L1和L2范数,会产生什么效果()
可以做特征选择,并在一定程度上防止过拟合
11:执行程序
tr a-z A-Z & $file & $file
done的结果是(
)文件中的小写转换为大写
12:幼儿园10个小朋友排成一列,其中3个小朋友是女孩,求女孩排在一起的概率是( 1/15 )
所有人排列的情况是10!
把三个小女孩看做整体排列是8!
三个小女孩排列是3!
最后结果就是 (8!X3!)/10!
消除8!就是
3!/(10X9)
13:独立部署模式下的spark各角色作用描述正确是(
1:Driver负责Spark作业的解析、生成Stage并调度Task到Executor上
2:Master是Standalone模式的主控节点,负责接收Client提交的作业,管理Worker
14:下列处理方式中,可达到Spark性能优化是(
1:默认情况下,shuffle文件数目为map tasks * reduce tasks
2:通过修改spark.default.parallelism参数可调整reduce的数目。通常,reduce数目应设置为core数目的2到3倍
15:执行下列语句后的显示结果是什么?(
from math import sqrt
print sqrt(3)*sqrt(3) == 3
16:Suppose that a Selection Sort of 80 items has completed 32 iterations of the main loop. How many items are now guaranteed to be in their final spot (never to be moved again)?
17:设某公路上经过的货车与客车的数量之比为2:1,货车中途停车修理的概率为0.02,客车为0.01,今有一辆汽车中途停车修理,求该汽车是货车的概率( 0.8
18:Nave Bayes是一种特殊的Bayes分类器,特征变量是X,类别标签是C,它的一个假定是:()
19:以下代码的输出结果是?
public class B
public static B t1 = new B();
public static B t2 = new B();
System.out.println("构造块");
System.out.println("静态块");
public static void main(String[] args)
B t = new B();
构造块 构造块 构造块 静态块
20:Linux文件权限一共10位长度,分成四段,第三段表示的内容是()。
文件所有者所在组的权限
作者:u 发表于 8:39:53 原文链接
阅读:88 评论:0 查看评论
最新发表文章}

我要回帖

更多关于 l1范数和l2范数 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信