200道经典机器学习面试题总结贝叶斯范数权值算法

刷题,是面试前的必备环节。本文作者总结了往年BAT机器学习面试题,干货满满,值得收藏。

想要入职大厂可谓是千军万马过独木桥。

为了通过层层考验,刷题肯定是必不可少的。本文作者根据网络在线发布的BAT机器学习面试1000题系列,整理了一份面试刷题宝典。

1.请简要介绍下SVM。

SVM,全称是supportvectormachine,中文名叫支持向量机。SVM是一个面向数据的分类算法,它的目标是为确定一个分类超平面,从而将不同的数据分隔开。

扩展:

支持向量机学习方法包括构建由简至繁的模型:线性可分支持向量机、线性支持向量机及非线性支持向量机。当训练数据线性可分时,通过硬间隔最大化,学习一个线性的分类器,即线性可分支持向量机,又称为硬间隔支持向量机;当训练数据近似线性可分时,通过软间隔最大化,也学习一个线性的分类器,即线性支持向量机,又称为软间隔支持向量机;当训练数据线性不可分时,通过使用核技巧及软间隔最大化,学习非线性支持向量机。

支持向量机通俗导论(理解SVM的三层境界)

机器学习之深入理解SVM

2.请简要介绍下Tensorflow的计算图。

@寒小阳:Tensorflow是一个通过计算图的形式来表述计算的编程系统,计算图也叫数据流图,可以把计算图看做是一种有向图,Tensorflow中的每一个计算都是计算图上的一个节点,而节点之间的边描述了计算之间的依赖关系。

3.请问GBDT和XGBoost的区别是什么?

@XijunLI:XGBoost类似于GBDT的优化版,不论是精度还是效率上都有了提升。与GBDT相比,具体的优点有:

知识点链接:集成学习的总结

4.在k-means或kNN,我们是用欧氏距离来计算最近的邻居之间的距离。为什么不用曼哈顿距离?

曼哈顿距离只计算水平或垂直距离,有维度的限制。另一方面,欧氏距离可用于任何空间的距离计算问题。因为,数据点可以存在于任何空间,欧氏距离是更可行的选择。例如:想象一下国际象棋棋盘,象或车所做的移动是由曼哈顿距离计算的,因为它们是在各自的水平和垂直方向做的运动。

5.百度2015校招机器学习笔试题。

知识点链接:百度2015校招机器学习笔试题

6.简单说说特征工程。

7.关于LR。

@rickjin:把LR从头到脚都给讲一遍。建模,现场数学推导,每种解法的原理,正则化,LR和maxent模型啥关系,LR为啥比线性回归好。有不少会背答案的人,问逻辑细节就糊涂了。原理都会那就问工程,并行化怎么做,有几种并行化方式,读过哪些开源的实现。还会,那就准备收了吧,顺便逼问LR模型发展历史。

知识点链接:机器学习之Logistic回归(逻辑蒂斯回归)

8.overfitting怎么解决?

dropout、regularization、batchnormalizatin

9.LR和SVM的联系与区别?

@朝阳在望,联系:

1、LR和SVM都可以处理分类问题,且一般都用于处理线性二分类问题(在改进的情况下可以处理多分类问题)

2、两个方法都可以增加不同的正则化项,如L1、L2等等。所以在很多实验中,两种算法的结果是很接近的。

区别:

1、LR是参数模型,SVM是非参数模型。

2、从目标函数来看,区别在于逻辑回归采用的是LogisticalLoss,SVM采用的是hingeloss.这两个损失函数的目的都是增加对分类影响较大的数据点的权重,减少与分类关系较小的数据点的权重。

4、逻辑回归相对来说模型更简单,好理解,特别是大规模线性分类时比较方便。而SVM的理解和优化相对来说复杂一些,SVM转化为对偶问题后,分类只需要计算与少数几个支持向量的距离,这个在进行复杂核函数计算时优势很明显,能够大大简化模型和计算。

5、Logic能做的SVM能做,但可能在准确率上有问题,SVM能做的Logic有的做不了。

10.LR与线性回归的区别与联系?

@nishizhen

其次经典线性模型的优化目标函数是最小二乘,而逻辑回归则是似然函数,

另外线性回归在整个实数域范围内进行预测,敏感度一致,而分类范围,需要在[0,1]。逻辑回归就是一种减小预测范围,将预测值限定为[0,1]间的一种回归模型,因而对于这类问题来说,逻辑回归的鲁棒性比线性回归的要好。

@乖乖癞皮狗:逻辑回归的模型本质上是一个线性回归模型,逻辑回归都是以线性回归为理论支持的。但线性回归模型无法做到sigmoid的非线性形式,sigmoid可以轻松处理0/1分类问题。

11.为什么XGBoost要用泰勒展开,优势在哪里?

@AntZ:XGBoost使用了一阶和二阶偏导,二阶导数有利于梯度下降的更快更准.使用泰勒展开取得二阶倒数形式,可以在不选定损失函数具体形式的情况下用于算法优化分析.本质上也就把损失函数的选取和模型算法优化/参数选择分开了.这种去耦合增加了XGBoost的适用性。

12.XGBoost如何寻找最优特征?是又放回还是无放回的呢?

@AntZ:XGBoost在训练的过程中给出各个特征的评分,从而表明每个特征对模型训练的重要性.。XGBoost利用梯度优化模型算法,样本是不放回的(想象一个样本连续重复抽出,梯度来回踏步会不会高兴)。但XGBoost支持子采样,也就是每轮计算可以不使用全部样本。

13.谈谈判别式模型和生成式模型?

判别方法:由数据直接学习决策函数Y=f(X),或者由条件分布概率P(Y|X)作为预测模型,即判别模型。

生成方法:由数据学习联合概率密度分布函数P(X,Y),然后求出条件概率分布P(Y|X)作为预测的模型,即生成模型。

由生成模型可以得到判别模型,但由判别模型得不到生成模型。

常见的判别模型有:K近邻、SVM、决策树、感知机、线性判别分析(LDA)、线性回归、传统的神经网络、逻辑斯蒂回归、boosting、条件随机场

常见的生成模型有:朴素贝叶斯、隐马尔可夫模型、高斯混合模型、文档主题生成模型(LDA)、限制玻尔兹曼机

14.L1和L2的区别。

L1范数(L1norm)是指向量中各个元素绝对值之和,也有个美称叫“稀疏规则算子”(Lassoregularization)。

比如向量A=[1,-1,3],那么A的L1范数为|1|+|-1|+|3|.

简单总结一下就是:

L1范数:为x向量各个元素绝对值之和。

L2范数:为x向量各个元素平方和的1/2次方,L2范数又称Euclidean范数或Frobenius范数

Lp范数:为x向量各个元素绝对值p次方和的1/p次方.

在支持向量机学习过程中,L1范数实际是一种对于成本函数求解最优的过程,因此,L1范数正则化通过向成本函数中添加L1范数,使得学习得到的结果满足稀疏化,从而方便人类提取特征。

L1范数可以使权值稀疏,方便特征提取。

L2范数可以防止过拟合,提升模型的泛化能力。

15.L1和L2正则先验分别服从什么分布?

@齐同学:面试中遇到的,L1和L2正则先验分别服从什么分布,L1是拉普拉斯分布,L2是高斯分布。

@许韩

知识点链接(答案解析):深度学习岗位面试问题整理笔记

17.说一下Adaboost,权值更新公式。当弱分类器是Gm时,每个样本的的权重是w1,w2…,请写出最终的决策公式。

答案解析

18.LSTM结构推导,为什么比RNN好?

推导forgetgate,inputgate,cellstate,hiddeninformation等的变化;因为LSTM有进有出且当前的cellinformaton是通过inputgate控制之后叠加的,RNN是叠乘,因此LSTM可以防止梯度消失或者爆炸。

19.经常在网上搜索东西的朋友知道,当你不小心输入一个不存在的单词时,搜索引擎会提示你是不是要输入某一个正确的单词,比如当你在Google中输入“Julw”时,系统会猜测你的意图:是不是要搜索“July”,如下图所示:

用户输入一个单词时,可能拼写正确,也可能拼写错误。如果把拼写正确的情况记做c(代表correct),拼写错误的情况记做w(代表wrong),那么”拼写检查”要做的事情就是:在发生w的情况下,试图推断出c。换言之:已知w,然后在若干个备选方案中,找出可能性最大的那个c,也就是求P(c|w)P(c|w)的最大值。而根据贝叶斯定理,有:

由于对于所有备选的c来说,对应的都是同一个w,所以它们的P(w)是相同的,因此我们只要最大化P(w|c)P(c)即可。其中:

P(c)表示某个正确的词的出现”概率”,它可以用”频率”代替。如果我们有一个足够大的文本库,那么这个文本库中每个单词的出现频率,就相当于它的发生概率。某个词的出现频率越高,P(c)就越大。比如在你输入一个错误的词“Julw”时,系统更倾向于去猜测你可能想输入的词是“July”,而不是“Jult”,因为“July”更常见。

P(w|c)表示在试图拼写c的情况下,出现拼写错误w的概率。为了简化问题,假定两个单词在字形上越接近,就有越可能拼错,P(w|c)就越大。举例来说,相差一个字母的拼法,就比相差两个字母的拼法,发生概率更高。你想拼写单词July,那么错误拼成Julw(相差一个字母)的可能性,就比拼成Jullw高(相差两个字母)。值得一提的是,一般把这种问题称为“编辑距离”,参见程序员编程艺术第二十八~二十九章:最大连续乘积子串、字符串编辑距离。

所以,我们比较所有拼写相近的词在文本库中的出现频率,再从中挑出出现频率最高的一个,即是用户最想输入的那个词。具体的计算过程及此方法的缺陷请参见HowtoWriteaSpellingCorrector。

20.为什么朴素贝叶斯如此“朴素”?

因为它假定所有的特征在数据集中的作用是同样重要和独立的。正如我们所知,这个假设在现实世界中是很不真实的,因此,说朴素贝叶斯真的很“朴素”。

21.机器学习中,为何要经常对数据做归一化?

@zhanlijun

22.谈谈深度学习中的归一化问题。

详情参见此视频:深度学习中的归一化

23.请简要说说一个完整机器学习项目的流程。

1抽象成数学问题

这里的抽象成数学问题,指的我们明确我们可以获得什么样的数据,目标是一个分类还是回归或者是聚类的问题,如果都不是的话,如果划归为其中的某类问题。

2获取数据

数据决定了机器学习结果的上限,而算法只是尽可能逼近这个上限。

数据要有代表性,否则必然会过拟合。

而且对于分类问题,数据偏斜不能过于严重,不同类别的数据数量不要有数个数量级的差距。

而且还要对数据的量级有一个评估,多少个样本,多少个特征,可以估算出其对内存的消耗程度,判断训练过程中内存是否能够放得下。如果放不下就得考虑改进算法或者使用一些降维的技巧了。如果数据量实在太大,那就要考虑分布式了。

3特征预处理与特征选择

良好的数据要能够提取出良好的特征才能真正发挥效力。

4训练模型与调优

直到这一步才用到我们上面说的算法进行训练。现在很多算法都能够封装成黑盒供人使用。但是真正考验水平的是调整这些算法的(超)参数,使得结果变得更加优良。这需要我们对算法的原理有深入的理解。理解越深入,就越能发现问题的症结,提出良好的调优方案。

5模型诊断

如何确定模型调优的方向与思路呢?这就需要对模型进行诊断的技术。

过拟合、欠拟合判断是模型诊断中至关重要的一步。常见的方法如交叉验证,绘制学习曲线等。过拟合的基本调优思路是增加数据量,降低模型复杂度。欠拟合的基本调优思路是提高特征数量和质量,增加模型复杂度。

误差分析也是机器学习至关重要的步骤。通过观察误差样本,全面分析误差产生误差的原因:是参数的问题还是算法选择的问题,是特征的问题还是数据本身的问题……

诊断后的模型需要进行调优,调优后的新模型需要重新进行诊断,这是一个反复迭代不断逼近的过程,需要不断地尝试,进而达到最优状态。

6模型融合

一般来说,模型融合后都能使得效果有一定提升。而且效果很好。

工程上,主要提升算法准确度的方法是分别在模型的前端(特征清洗和预处理,不同的采样模式)与后端(模型融合)上下功夫。因为他们比较标准可复制,效果比较稳定。而直接调参的工作不会很多,毕竟大量数据训练起来太慢了,而且效果难以保证。

7上线运行

这些工作流程主要是工程实践上总结出的一些经验。并不是每个项目都包含完整的一个流程。这里的部分只是一个指导性的说明,只有大家自己多实践,多积累项目经验,才会有自己更深刻的认识。

24.new和malloc的区别?

知识点链接:new和malloc的区别

25.hash冲突及解决办法?

@Sommer_Xia

关键字值不同的元素可能会映象到哈希表的同一地址上就会发生哈希冲突。解决办法:

1)开放定址法:当冲突发生时,使用某种探查(亦称探测)技术在散列表中形成一个探查(测)序列。沿此序列逐个单元地查找,直到找到给定的关键字,或者碰到一个开放的地址(即该地址单元为空)为止(若要插入,在探查到开放的地址,则可将待插入的新结点存人该地址单元)。查找时探查到开放的地址则表明表中无待查的关键字,即查找失败。

2)再哈希法:同时构造多个不同的哈希函数。

3)链地址法:将所有哈希地址为i的元素构成一个称为同义词链的单链表,并将单链表的头指针存在哈希表的第i个单元中,因而查找、插入和删除主要在同义词链中进行。链地址法适用于经常进行插入和删除的情况。

4)建立公共溢出区:将哈希表分为基本表和溢出表两部分,凡是和基本表发生冲突的元素,一律填入溢出表。

26.如何解决梯度消失和梯度膨胀?

(1)梯度消失:

根据链式法则,如果每一层神经元对上一层的输出的偏导乘上权重结果都小于1的话,那么即使这个结果是0.99,在经过足够多层传播之后,误差对输入层的偏导会趋于0。

可以采用ReLU激活函数有效的解决梯度消失的情况。

(2)梯度膨胀:

根据链式法则,如果每一层神经元对上一层的输出的偏导乘上权重结果都大于1的话,在经过足够多层传播之后,误差对输入层的偏导会趋于无穷大。

可以通过激活函数来解决。

27.下列哪个不属于CRF模型对于HMM和MEMM模型的优势()

A.特征灵活

B.速度快

C.可容纳较多上下文信息

D.全局最优

解答:首先,CRF,HMM(隐马模型),MEMM(最大熵隐马模型)都常用来做序列标注的建模。

隐马模型一个最大的缺点就是由于其输出独立性假设,导致其不能考虑上下文的特征,限制了特征的选择。

最大熵隐马模型则解决了隐马的问题,可以任意选择特征,但由于其在每一节点都要进行归一化,所以只能找到局部的最优值,同时也带来了标记偏见的问题,即凡是训练语料中未出现的情况全都忽略掉。

条件随机场则很好的解决了这一问题,他并不在每一个节点进行归一化,而是所有特征进行全局归一化,因此可以求得全局的最优值。

答案为B。

28.简单说下有监督学习和无监督学习的区别?

有监督学习:对具有标记的训练样本进行学习,以尽可能对训练样本集外的数据进行分类预测。(LR,SVM,BP,RF,GBDT)

无监督学习:对未标记的样本进行训练学习,比发现这些样本中的结构知识。(KMeans,DL)

29.了解正则化么?

正则化是针对过拟合而提出的,以为在求解模型最优的是一般优化最小的经验风险,现在在该经验风险上加入模型复杂度这一项(正则化项是模型参数向量的范数),并使用一个rate比率来权衡模型复杂度与以往经验风险的权重,如果模型复杂度越高,结构化的经验风险会越大,现在的目标就变为了结构经验风险的最优化,可以防止模型训练过度复杂,有效的降低过拟合的风险。

奥卡姆剃刀原理,能够很好的解释已知数据并且十分简单才是最好的模型。

31.线性分类器与非线性分类器的区别以及优劣。

如果模型是参数的线性函数,并且存在线性分类面,那么就是线性分类器,否则不是。

常见的线性分类器有:LR,贝叶斯分类,单层感知机、线性回归。

常见的非线性分类器:决策树、RF、GBDT、多层感知机。

SVM两种都有(看线性核还是高斯核)。

线性分类器速度快、编程方便,但是可能拟合效果不会很好。

非线性分类器编程复杂,但是效果拟合能力强。

32.数据的逻辑存储结构(如数组,队列,树等)对于软件开发具有十分重要的影响,试对你所了解的各种存储结构从运行速度、存储效率和适用场合等方面进行简要地分析。

33.什么是分布式数据库?

分布式数据库系统是在集中式数据库系统成熟技术的基础上发展起来的,但不是简单地把集中式数据库分散地实现,它具有自己的性质和特征。集中式数据库系统的许多概念和技术,如数据独立性、数据共享和减少冗余度、并发控制、完整性、安全性和恢复等在分布式数据库系统中都有了不同的、更加丰富的内容。

34.简单说说贝叶斯定理。

在引出贝叶斯定理之前,先学习几个定义:

条件概率(又称后验概率)就是事件A在另外一个事件B已经发生条件下的发生概率。条件概率表示为P(A|B),读作“在B条件下A的概率”。

比如,在同一个样本空间Ω中的事件或者子集A与B,如果随机从Ω中选出的一个元素属于B,那么这个随机选择的元素还属于A的概率就定义为在B的前提下A的条件概率,所以:P(A|B)=|A∩B|/|B|,接着分子、分母都除以|Ω|得到:

联合概率表示两个事件共同发生的概率。A与B的联合概率表示为P(A∩B)或者P(A,B)。

边缘概率(又称先验概率)是某个事件发生的概率。边缘概率是这样得到的:在联合概率中,把最终结果中那些不需要的事件通过合并成它们的全概率,而消去它们(对离散随机变量用求和得全概率,对连续随机变量用积分得全概率),这称为边缘化(marginalization),比如A的边缘概率表示为P(A),B的边缘概率表示为P(B)。

接着,考虑一个问题:P(A|B)是在B发生的情况下A发生的可能性。

1)首先,事件B发生之前,我们对事件A的发生有一个基本的概率判断,称为A的先验概率,用P(A)表示;

2)其次,事件B发生之后,我们对事件A的发生概率重新评估,称为A的后验概率,用P(A|B)表示;

3)类似的,事件A发生之前,我们对事件B的发生有一个基本的概率判断,称为B的先验概率,用P(B)表示;

4)同样,事件A发生之后,我们对事件B的发生概率重新评估,称为B的后验概率,用P(B|A)表示。

贝叶斯定理的公式表达式:

35.#include和#include“filename.h”有什么区别?

知识点链接:#include和#include”filename.h”有什么区别

36.某超市研究销售纪录数据后发现,买啤酒的人很大概率也会购买尿布,这种属于数据挖掘的哪类问题?(A)

A.关联规则发现B.聚类C.分类D.自然语言处理

37.将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C)

A.频繁模式挖掘B.分类和预测C.数据预处理D.数据流挖掘

38.下面哪种不属于数据预处理的方法?(D)

A变量代换B离散化C聚集D估计遗漏值

39.什么是KDD?(A)

A.数据挖掘与知识发现B.领域知识发现C.文档知识发现D.动态知识发现

40.当不知道数据所带标签时,可以使用哪种技术促使带同类标签的数据与带其他标签的数据相分离?(B)

A.分类B.聚类C.关联分析D.隐马尔可夫链

41.建立一个模型,通过这个模型根据已知的变量值来预测其他某个变量值属于数据挖掘的哪一类任务?(C)

A.根据内容检索B.建模描述

C.预测建模D.寻找模式和规则

42.以下哪种方法不属于特征选择的标准方法?(D)

A嵌入B过滤C包装D抽样

43.请用python编写函数find_string,从文本中搜索并打印内容,要求支持通配符星号和问号。

44.说下红黑树的五个性质。

教你初步了解红黑树

45.简单说下sigmoid激活函数。

Sigmoid的函数表达式如下:

也就是说,Sigmoid函数的功能是相当于把一个实数压缩至0到1之间。当z是非常大的正数时,g(z)会趋近于1,而z是非常小的负数时,则g(z)会趋近于0。

压缩至0到1有何用处呢?用处是这样一来便可以把激活函数看作一种“分类的概率”,比如激活函数的输出为0.9的话便可以解释为90%的概率为正样本。

举个例子,如下图(图引自Stanford机器学习公开课):

46.什么是卷积

非严格意义上来讲,下图中红框框起来的部分便可以理解为一个滤波器,即带着一组固定权重的神经元。多个滤波器叠加便成了卷积层。

OK,举个具体的例子。比如下图中,图中左边部分是原始输入数据,图中中间部分是滤波器filter,图中右边是输出的新的二维数据。

分解下上图

47.什么是CNN的池化pool层

池化,简言之,即取区域平均或最大,如下图所示(图引自cs231n):

上图所展示的是取区域最大,即上图左边部分中左上角2x2的矩阵中6最大,右上角2x2的矩阵中8最大,左下角2x2的矩阵中3最大,右下角2x2的矩阵中4最大,所以得到上图右边部分的结果:6834。很简单不是?

48.简述下什么是生成对抗网络。

GAN之所以是对抗的,是因为GAN的内部是竞争关系,一方叫generator,它的主要工作是生成图片,并且尽量使得其看上去是来自于训练样本的。另一方是discriminator,其目标是判断输入图片是否属于真实训练样本。

更直白的讲,将generator想象成假币制造商,而discriminator是警察。generator目的是尽可能把假币造的跟真的一样,从而能够骗过discriminator,即生成样本并使它看上去好像来自于真实训练样本一样。

如下图中的左右两个场景:

更多请参见此课程:生成对抗网络

49.学梵高作画的原理是啥?

这里有篇如何做梵高风格画的实验教程教你从头到尾利用DL学梵高作画:GTX1070cuda8.0tensorflowgpu版,至于其原理请看这个视频:NeuralStyle艺术化图片(学梵高作画背后的原理)。

50.现在有a到z26个元素,编写程序打印a到z中任取3个元素的组合(比如打印abc,dyz等)。

一道百度机器学习工程师职位的面试题

51.哪些机器学习算法不需要做归一化处理?

概率模型不需要归一化,因为它们不关心变量的值,而是关心变量的分布和变量之间的条件概率,如决策树、RF。而像Adaboost、GBDT、XGBoost、SVM、LR、KNN、KMeans之类的最优化问题就需要归一化。

52.说说梯度下降法。

@LeftNotEasy

机器学习中的数学(1)-回归(regression)、梯度下降(gradientdescent)

53.梯度下降法找到的一定是下降最快的方向么?

梯度下降法并不是下降最快的方向,它只是目标函数在当前的点的切平面(当然高维问题不能叫平面)上下降最快的方向。在PracticalImplementation中,牛顿方向(考虑海森矩阵)才一般被认为是下降最快的方向,可以达到Superlinear的收敛速度。梯度下降类的算法的收敛速度一般是Linear甚至Sublinear的(在某些带复杂约束的问题)。

知识点链接:一文清晰讲解机器学习中梯度下降算法(包括其变式算法)

54.牛顿法和梯度下降法有什么不同?

@wtq1993

知识点链接:机器学习中常见的最优化算法

55.什么是拟牛顿法(Quasi-NewtonMethods)?

机器学习中常见的最优化算法

56.请说说随机梯度下降法的问题和挑战?

57.说说共轭梯度法?

58.对所有优化问题来说,有没有可能找到比現在已知算法更好的算法

答案链接

59、什么最小二乘法?

我们口头中经常说:一般来说,平均来说。如平均来说,不吸烟的健康优于吸烟者,之所以要加“平均”二字,是因为凡事皆有例外,总存在某个特别的人他吸烟但由于经常锻炼所以他的健康状况可能会优于他身边不吸烟的朋友。而最小二乘法的一个最简单的例子便是算术平均。

最小二乘法(又称最小平方法)是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。用函数表示为:

由于算术平均是一个历经考验的方法,而以上的推理说明,算术平均是最小二乘的一个特例,所以从另一个角度说明了最小二乘方法的优良性,使我们对最小二乘法更加有信心。

最小二乘法发表之后很快得到了大家的认可接受,并迅速的在数据分析实践中被广泛使用。不过历史上又有人把最小二乘法的发明归功于高斯,这又是怎么一回事呢。高斯在1809年也发表了最小二乘法,并且声称自己已经使用这个方法多年。高斯发明了小行星定位的数学方法,并在数据分析中使用最小二乘方法进行计算,准确的预测了谷神星的位置。

对了,最小二乘法跟SVM有什么联系呢?请参见支持向量机通俗导论(理解SVM的三层境界)。

60、看你T恤上印着:人生苦短,我用Python,你可否说说Python到底是什么样的语言?你可以比较其他技术或者语言来回答你的问题。

15个重要Python面试题测测你适不适合做Python?

61.Python是如何进行内存管理的?

2017Python最新面试题及答案16道题

62.请写出一段Python代码实现删除一个list里面的重复元素。

1、使用set函数,set(list);

2、使用字典函数:

1a=[1,2,4,2,4,5,6,5,7,8,9,0]2b={}3b=b.fromkeys(a)4c=list(b.keys())5c

63.编程用sort进行排序,然后从最后一个元素开始判断。

1a=[1,2,4,2,4,5,7,10,5,5,7,8,9,0,3]23a.sort()4last=a[-1]5foriinrange(len(a)-2,-1,-1):6iflast==a[i]:7dela[i]8else:last=a[i]9print(a)

64.Python里面如何生成随机数?

@Tom_junsong

random模块

随机整数:random.randint(a,b):返回随机整数x,a<=x<=b

random.randrange(start,stop,[,step]):返回一个范围在(start,stop,step)之间的随机整数,不包括结束值。

随机实数:random.random():返回0到1之间的浮点数

random.uniform(a,b):返回指定范围内的浮点数。

65.说说常见的损失函数。

对于给定的输入X,由f(X)给出相应的输出Y,这个输出的预测值f(X)与真实值Y可能一致也可能不一致(要知道,有时损失或误差是不可避免的),用一个损失函数来度量预测错误的程度。损失函数记为L(Y,f(X))。

常用的损失函数有以下几种(基本引用自《统计学习方法》):

66.简单介绍下Logistics回归。

Logistic回归目的是从特征学习出一个0/1分类模型,而这个模型是将特性的线性组合作为自变量,由于自变量的取值范围是负无穷到正无穷。因此,使用logistic函数(或称作sigmoid函数)将自变量映射到(0,1)上,映射后的值被认为是属于y=1的概率。

假设函数:

其中x是n维特征向量,函数g就是Logistic函数。而:g(z)=11+ezg(z)=11+ez的图像是:

可以看到,将无穷映射到了(0,1)。而假设函数就是特征属于y=1的概率。

67.看你是搞视觉的,熟悉哪些CV框架,顺带聊聊CV最近五年的发展史如何?

68.深度学习在视觉领域有何前沿进展?

@元峰

69.HashMap与HashTable区别?

HashMap与Hashtable的区别

70.在分类问题中,我们经常会遇到正负样本数据量不等的情况,比如正样本为10w条数据,负样本只有1w条数据,以下最合适的处理方法是()

A、将负样本重复10次,生成10w样本量,打乱顺序参与分类

B、直接进行分类,可以最大限度利用数据

C、从10w正样本中随机抽取1w参与分类

D、将负样本每个权重设置为10,正样本权重为1,参与训练过程

HowtohandleImbalancedClassificationProblemsinmachinelearning

A.(AB)C

B.AC(B)

C.A(BC)

D.所以效率都相同

正确答案:A

@BlackEyes_SGC:m*n*p

72.NaveBayes是一种特殊的Bayes分类器,特征变量是X,类别标签是C,它的一个假定是:(C)

A.各类别的先验概率P(C)是相等的

B.以0为均值,sqr(2)/2为标准差的正态分布

C.特征变量X的各个维度是类别条件独立随机变量

D.P(X|C)是高斯分布

正确答案:C

@BlackEyes_SGC:朴素贝叶斯的条件就是每个变量相互独立。

73.关于支持向量机SVM,下列说法错误的是(C)

A.L2正则项,作用是最大化分类间隔,使得分类器拥有更强的泛化能力

B.Hinge损失函数,作用是最小化经验分类错误

C.分类间隔为1||w||1||w||,||w||代表向量的模

D.当参数C越小时,分类间隔越大,分类错误越多,趋于欠学习

@BlackEyes_SGC:

A正确。考虑加入正则化项的原因:想象一个完美的数据集,y>1是正类,y<-1是负类,决策面y=0,加入一个y=-30的正类噪声样本,那么决策面将会变“歪”很多,分类间隔变小,泛化能力减小。加入正则项之后,对噪声样本的容错能力增强,前面提到的例子里面,决策面就会没那么“歪”了,使得分类间隔变大,提高了泛化能力。

B正确。

C错误。间隔应该是2||w||2||w||才对,后半句应该没错,向量的模通常指的就是其二范数。

D正确。考虑软间隔的时候,C对优化问题的影响就在于把a的范围从[0,+inf]限制到了[0,C]。C越小,那么a就会越小,目标函数拉格朗日函数导数为0可以求出w=∑iaiyixiw=∑iaiyixi,a变小使得w变小,因此间隔2||w||2||w||变大

74.在HMM中,如果已知观察序列和产生观察序列的状态序列,那么可用以下哪种方法直接进行参数估计(D)

A.EM算法

B.维特比算法

C.前向后向算法

D.极大似然估计

正确答案:D

EM算法:只有观测序列,无状态序列时来学习模型参数,即Baum-Welch算法

维特比算法:用动态规划解决HMM的预测问题,不是参数估计

前向后向算法:用来算概率

极大似然估计:即观测序列和相应的状态序列都存在时的监督学习算法,用来估计参数

注意的是在给定观测序列和对应的状态序列估计模型参数,可以利用极大似然发估计。如果给定观测序列,没有对应的状态序列,才用EM,将状态序列看不不可测的隐数据。

75.假定某同学使用NaiveBayesian(NB)分类模型时,不小心将训练数据的两个维度搞重复了,那么关于NB的说法中正确的是:(BD)

A.这个被重复的特征在模型中的决定作用会被加强

B.模型效果相比无重复特征的情况下精确度会降低

C.如果所有特征都被重复一遍,得到的模型预测结果相对于不重复的情况下的模型预测结果一样。

E.NB可以用来做最小二乘回归

F.以上说法都不正确

正确答案:BD

@BlackEyes_SGC:NB的核心在于它假设向量的所有分量之间是独立的。在贝叶斯理论系统中,都有一个重要的条件独立性假设:假设所有特征之间相互独立,这样才能将联合概率拆分。

76.以下哪些方法不可以直接来对文本分类?(A)

A、Kmeans

B、决策树

C、支持向量机

D、KNN

正确答案:A分类不同于聚类。

@BlackEyes_SGC:A:Kmeans是聚类方法,典型的无监督学习方法。分类是监督学习方法,BCD都是常见的分类方法。

77.已知一组数据的协方差矩阵P,下面关于主分量说法错误的是(C)

A、主分量分析的最佳准则是对一组数据进行按一组正交基分解,在只取相同数量分量的条件下,以均方误差计算截尾误差最小

B、在经主分量分解后,协方差矩阵成为对角矩阵

C、主分量分析就是K-L变换

D、主分量是通过求协方差矩阵的特征值得到

正确答案:C

@BlackEyes_SGC:K-L变换与PCA变换是不同的概念,PCA的变换矩阵是协方差矩阵,K-L变换的变换矩阵可以有很多种(二阶矩阵、协方差矩阵、总类内离散度矩阵等等)。当K-L变换矩阵为协方差矩阵时,等同于PCA。

78.Kmeans的复杂度?

具体参考:机器学习之深入理解K-means、与KNN算法区别及其代码实现

79.关于Logit回归和SVM不正确的是(A)

A.Logit回归本质上是一种根据样本对权值进行极大似然估计的方法,而后验概率正比于先验概率和似然函数的乘积。logit仅仅是最大化似然函数,并没有最大化后验概率,更谈不上最小化后验概率。A错误

B.Logit回归的输出就是样本属于正类别的几率,可以计算出概率,正确

C.SVM的目标是找到使得训练数据尽可能分开且分类间隔最大的超平面,应该属于结构风险最小化。

D.SVM可以通过正则化系数控制模型的复杂度,避免过拟合。

@BlackEyes_SGC:Logit回归目标函数是最小化后验概率,Logit回归可以用于预测事件发生概率的大小,SVM目标是结构风险最小化,SVM可以有效避免模型过拟合。

80.输入图片大小为200×200,依次经过一层卷积(kernelsize5×5,padding1,stride2),pooling(kernelsize3×3,padding0,stride1),又一层卷积(kernelsize3×3,padding1,stride1)之后,输出特征图大小为:()

正确答案:97

@BlackEyes_SGC:计算尺寸不被整除只在GoogLeNet中遇到过。卷积向下取整,池化向上取整。

本题(200-5+2*1)/2+1为99.5,取99

(99-3)/1+1为97

(97-3+2*1)/1+1为97

研究过网络的话看到stride为1的时候,当kernel为3padding为1或者kernel为5padding为2一看就是卷积前后尺寸不变。计算GoogLeNet全过程的尺寸也一样。

81.影响聚类算法结果的主要因素有(BCD)

A.已知类别的样本质量;

B.分类准则;

C.特征选取;

D.模式相似性测度

82.模式识别中,马式距离较之于欧式距离的优点是(CD)

A.平移不变性;

B.旋转不变性;

C.尺度不变性;

D.考虑了模式的分布

83.影响基本K-均值算法的主要因素有(ABD)

A.样本输入顺序;

B.模式相似性测度;

C.聚类准则;

D.初始类中心的选取

84.在统计模式分类问题中,当先验概率未知时,可以使用(BD)

A.最小损失准则;

B.最小最大损失准则;

C.最小误判概率准则;

D.N-P判决

A.已知类别样本质量;

D.量纲

86.欧式距离具有(AB);马式距离具有(ABCD)。

C.尺度缩放不变性;

D.不受量纲影响的特性

87.你有哪些DeepLearning(RNN,CNN)调参的经验?

答案解析,来自知乎

88.简单说说RNN的原理。

我们升学到高三准备高考时,此时的知识是由高二及高二之前所学的知识加上高三所学的知识合成得来,即我们的知识是由前序铺垫,是有记忆的,好比当电影字幕上出现:“我是”时,你会很自然的联想到:“我是中国人”。

89.什么是RNN?

循环神经网络(RNN,RecurrentNeuralNetworks)介绍

90.RNN是怎么从单层网络一步一步构造的的

完全图解RNN、RNN变体、Seq2Seq、Attention机制

101.深度学习(CNNRNNAttention)解决大规模文本分类问题。

用深度学习(CNNRNNAttention)解决大规模文本分类问题-综述和实践

102.如何解决RNN梯度爆炸和弥散的问题的?

深度学习与自然语言处理(7)_斯坦福cs224d语言模型,RNN,LSTM与GRU

103.如何提高深度学习的性能?

机器学习系列(10)_如何提高深度学习(和机器学习)的性能

104.RNN、LSTM、GRU区别?

面试笔试整理3:深度学习机器学习面试问题准备(必会)

105.当机器学习性能遭遇瓶颈时,你会如何优化的?

可以从这4个方面进行尝试:基于数据、借助算法、用算法调参、借助模型融合。当然能谈多细多深入就看你的经验心得了。

这里有一份参考清单:机器学习系列(20)_机器学习性能改善备忘单

106.做过什么样的机器学习项目?比如如何从零构建一个推荐系统?

107.什么样的资料集不适合用深度学习

知乎解答

108.广义线性模型是怎被应用在深度学习中

109.准备机器学习面试应该了解哪些理论知识?

110.标准化与归一化的区别

简单来说,标准化是依照特征矩阵的列处理数据,其通过求z-score的方法,将样本的特征值转换到同一量纲下。归一化是依照特征矩阵的行处理数据,其目的在于样本向量在点乘运算或其他核函数计算相似性时,拥有统一的标准,也就是说都转化为“单位向量”。规则为L2的归一化公式如下:

特征向量的缺失值处理:

1.缺失值较多.直接将该特征舍弃掉,否则可能反倒会带入较大的noise,对结果造成不良影响。

2.缺失值较少,其余的特征缺失值都在10%以内,我们可以采取很多的方式来处理:

1)把NaN直接作为一个特征,假设用0表示;

2)用均值填充;

3)用随机森林等算法预测填充

111.随机森林如何处理缺失值。

方法一(na.roughfix)简单粗暴,对于训练集,同一个class下的数据,如果是分类变量缺失,用众数补上,如果是连续型变量缺失,用中位数补。

方法二(rfImpute)这个方法计算量大,至于比方法一好坏?不好判断。先用na.roughfix补上缺失值,然后构建森林并计算proximitymatrix,再回头看缺失值,如果是分类变量,则用没有阵进行加权平均的方法补缺失值。然后迭代4-6次,这个补缺失值的思想和KNN有些类似1缺失的观测实例的proximity中的权重进行投票。如果是连续型变量,则用proximity矩2。

112.随机森林如何评估特征重要性。

衡量变量重要性的方法有两种,DecreaseGINI和DecreaseAccuracy:

1)DecreaseGINI:对于回归问题,直接使用argmax(VarVarLeftVarRight)作为评判标准,即当前节点训练集的方差Var减去左节点的方差VarLeft和右节点的方差VarRight。

2)DecreaseAccuracy:对于一棵树Tb(x),我们用OOB样本可以得到测试误差1;然后随机改变OOB样本的第j列:保持其他列不变,对第j列进行随机的上下置换,得到误差2。至此,我们可以用误差1-误差2来刻画变量j的重要性。基本思想就是,如果一个变量j足够重要,那么改变它会极大的增加测试误差;反之,如果改变它测试误差没有增大,则说明该变量不是那么的重要。

113.优化Kmeans。

使用Kd树或者BallTree

将所有的观测实例构建成一颗kd树,之前每个聚类中心都是需要和每个观测点做依次距离计算,现在这些聚类中心根据kd树只需要计算附近的一个局部区域即可。

114.KMeans初始类簇中心点的选取。

K-means++算法选择初始seeds的基本思想就是:初始的聚类中心之间的相互距离要尽可能的远。

1.从输入的数据点集合中随机选择一个点作为第一个聚类中心

2.对于数据集中的每一个点x,计算它与最近聚类中心(指已选择的聚类中心)的距离D(x)

3.选择一个新的数据点作为新的聚类中心,选择的原则是:D(x)较大的点,被选取作为聚类中心的概率较大

4.重复2和3直到k个聚类中心被选出来

5.利用这k个初始的聚类中心来运行标准的k-means算法

115.解释对偶的概念。

一个优化问题可以从两个角度进行考察,一个是primal问题,一个是dual问题,就是对偶问题,一般情况下对偶问题给出主问题最优值的下界,在强对偶性成立的情况下由对偶问题可以得到主问题的最优下界,对偶问题是凸优化问题,可以进行较好的求解,SVM中就是将Primal问题转换为dual问题进行求解,从而进一步引入核函数的思想。

116.如何进行特征选择?

特征选择是一个重要的数据预处理过程,主要有两个原因:一是减少特征数量、降维,使模型泛化能力更强,减少过拟合;二是增强对特征和特征值之间的理解。

常见的特征选择方式:

1.去除方差较小的特征。

2.正则化。1正则化能够生成稀疏的模型。L2正则化的表现更加稳定,由于有用的特征往往对应系数非零。

3.随机森林,对于分类问题,通常采用基尼不纯度或者信息增益,对于回归问题,通常采用的是方差或者最小二乘拟合。一般不需要featureengineering、调参等繁琐的步骤。它的两个主要问题,1是重要的特征有可能得分很低(关联特征问题),2是这种方法对特征变量类别多的特征越有利(偏向问题)。

4.稳定性选择。是一种基于二次抽样和选择算法相结合较新的方法,选择算法可以是回归、SVM或其他类似的方法。它的主要思想是在不同的数据子集和特征子集上运行特征选择算法,不断的重复,最终汇总特征选择结果,比如可以统计某个特征被认为是重要特征的频率(被选为重要特征的次数除以它所在的子集被测试的次数)。理想情况下,重要特征的得分会接近100%。稍微弱一点的特征得分会是非0的数,而最无用的特征得分将会接近于0。

117.数据预处理。

1.缺失值,填充缺失值fillna:

i.离散:None,

ii.连续:均值。

iii.缺失值太多,则直接去除该列

2.连续值:离散化。有的模型(如决策树)需要离散值

3.对定量特征二值化。核心在于设定一个阈值,大于阈值的赋值为1,小于等于阈值的赋值为0。如图像操作

118.简单说说特征工程。

119.你知道有哪些数据处理和特征工程的处理?

120.请对比下Sigmoid、Tanh、ReLu这三个激活函数?

121.Sigmoid、Tanh、ReLu这三个激活函数有什么缺点或不足,有没改进的激活函数?

122.怎么理解决策树、xgboost能处理缺失值?而有的模型(svm)对缺失值比较敏感?

123.为什么引入非线性激励函数?

如果不用激励函数(其实相当于激励函数是f(x)=x),在这种情况下你每一层输出都是上层输入的线性函数,很容易验证,无论你神经网络有多少层,输出都是输入的线性组合,与没有隐藏层效果相当,这种情况就是最原始的感知机(Perceptron)了。

正因为上面的原因,我们决定引入非线性函数作为激励函数,这样深层神经网络就有意义了(不再是输入的线性组合,可以逼近任意函数)。最早的想法是Sigmoid函数或者Tanh函数,输出有界,很容易充当下一层输入(以及一些人的生物解释)。

124.请问人工神经网络中为什么ReLu要好过于Tanh和Sigmoidfunction

125.为什么LSTM模型中既存在Sigmoid又存在Tanh两种激活函数?

@beanfrog:二者目的不一样:sigmoid用在了各种gate上,产生0~1之间的值,这个一般只有sigmoid最直接了。tanh用在了状态和输出上,是对数据的处理,这个用其他激活函数或许也可以。

@hhhh:另可参见ACriticalReviewofRecurrentNeuralNetworksforSequenceLearning的section4.1,说了那两个tanh都可以替换成别的。

126.衡量分类器的好坏。

这里首先要知道TP、FN(真的判成假的)、FP(假的判成真)、TN四种(可以画一个表格)。

几种常用的指标:

精度precision=TP/(TP+FP)=TP/~P(~p为预测为真的数量)

召回率recall=TP/(TP+FN)=TP/P

F1值:2/F1=1/recall+1/precision

ROC曲线:ROC空间是一个以伪阳性率(FPR,falsepositiverate)为X轴,真阳性率(TPR,truepositiverate)为Y轴的二维坐标系所代表的平面。其中真阳率TPR=TP/P=recall,伪阳率FPR=FP/N

127.机器学习和统计里面的auc的物理意义是什么?

详情参见机器学习和统计里面的auc怎么理解?

128.观察增益gain,alpha和gamma越大,增益越小?

@AntZ:XGBoost寻找分割点的标准是最大化gain.考虑传统的枚举每个特征的所有可能分割点的贪心法效率太低,XGBoost实现了一种近似的算法。大致的思想是根据百分位法列举几个可能成为分割点的候选者,然后从候选者中计算Gain按最大值找出最佳的分割点。它的计算公式分为四项,可以由正则化项参数调整(lamda为叶子权重平方和的系数,gama为叶子数量):

第一项是假设分割的左孩子的权重分数,第二项为右孩子,第三项为不分割总体分数,最后一项为引入一个节点的复杂度损失。

由公式可知,gama越大gain越小,lamda越大,gain可能小也可能大。

原问题是alpha而不是lambda,这里paper上没有提到,XGBoost实现上有这个参数.上面是我从paper上理解的答案,下面是搜索到的:

如何对XGBoost模型进行参数调优

129.什么造成梯度消失问题推导一下。

神经网络的训练中,通过改变神经元的权重,使网络的输出值尽可能逼近标签以降低误差值,训练普遍使用BP算法,核心思想是,计算出输出与标签间的损失函数值,然后计算其相对于每个神经元的梯度,进行权值的迭代。

梯度消失会造成权值更新缓慢,模型训练难度增加。造成梯度消失的一个原因是,许多激活函数将输出值挤压在很小的区间内,在激活函数两端较大范围的定义域内梯度为0,造成学习停止。

130.什么是梯度消失和梯度爆炸?

@寒小阳,反向传播中链式法则带来的连乘,如果有数很小趋于0,结果就会特别小(梯度消失);如果数都比较大,可能结果会很大(梯度爆炸)。

@单车

神经网络训练中的梯度消失与梯度爆炸

131.如何解决梯度消失和梯度膨胀

根据链式法则,如果每一层神经元对上一层的输出的偏导乘上权重结果都小于1的话,那么即使这个结果是0.99,在经过足够多层传播之后,误差对输入层的偏导会趋于0,可以采用ReLU激活函数有效的解决梯度消失的情况。

(2)梯度膨胀

根据链式法则,如果每一层神经元对上一层的输出的偏导乘上权重结果都大于1的话,在经过足够多层传播之后,误差对输入层的偏导会趋于无穷大,可以通过激活函数来解决。

132.推导下反向传播Backpropagation。

推导过程

133.SVD和PCA。

PCA的理念是使得数据投影后的方差最大,找到这样一个投影向量,满足方差最大的条件即可。而经过了去除均值的操作之后,就可以用SVD分解来求解这样一个投影向量,选择特征值最大的方向。

134.数据不平衡问题。

这主要是由于数据分布不平衡造成的。解决方法如下:

1)采样,对小样本加噪声采样,对大样本进行下采样

2)进行特殊的加权,如在Adaboost中或者SVM中

3)采用对不平衡数据集不敏感的算法

4)改变评价标准:用AUC/ROC来进行评价

5)采用Bagging/Boosting/Ensemble等方法

6)考虑数据的先验分布

135.简述神经网络的发展。

MP模型+sgn—->单层感知机(只能线性)+sgn—Minsky低谷—>多层感知机+BP+Sigmoid—(低谷)—>深度学习+Pretraining+ReLU/Sigmoid

136.深度学习常用方法。

机器学习岗位面试问题汇总之深度学习

137.神经网络模型(NeuralNetwork)因受人类大脑的启发而得名。神经网络由许多神经元(Neuron)组成,每个神经元接受一个输入,对输入进行处理后给出一个输出。请问下列关于神经元的描述中,哪一项是正确的?(E)

A.每个神经元只有一个输入和一个输出

B.每个神经元有多个输入和一个输出

C.每个神经元有一个输入和多个输出

D.每个神经元有多个输入和多个输出

E.上述都正确

答案:(E)

每个神经元可以有一个或多个输入,和一个或多个输出

138.下图是一个神经元的数学表示,

139.在一个神经网络中,知道每一个神经元的权重和偏差是最重要的一步。如果知道了神经元准确的权重和偏差,便可以近似任何函数,但怎么获知每个神经的权重和偏移呢?(C)

A.搜索每个可能的权重和偏差组合,直到得到最佳值

B.赋予一个初始值,然后检查跟最佳值的差值,不断迭代调整权重

C.随机赋值,听天由命

D.以上都不正确的

答案:(C)

选项C是对梯度下降的描述。

140.梯度下降算法的正确步骤是什么?(D)

1.计算预测值和真实值之间的误差

2.重复迭代,直至得到网络权重的最佳值

3.把输入传入网络,得到输出值

4.用随机值初始化权重和偏差

5.对每一个产生误差的神经元,调整相应的(权重)值以减小误差

A.1,2,3,4,5

B.5,4,3,2,1

C.3,2,1,5,4

D.4,3,1,5,2

答案:(D)

141.已知:

-大脑是有很多个叫做神经元的东西构成,神经网络是对大脑的简单的数学表达。

THE END
1.十种常见典型算法算法有哪些那么又是哪10个计算机算法造就了我们今天的生活呢?请看下面的表单,排名不分先后: 1.归并排序(MERGE SORT),快速排序(QUICK SORT)和堆积排序(HEAP SORT) 哪个排序算法效率最高?这要看情况。这也就是我把这3种算法放在一起讲的原因,可能你更常用其中一种,不过它们各有千秋。 https://blog.csdn.net/darkhorsefly/article/details/134222961
2.10大计算机经典算法「建议收藏」腾讯云开发者社区BFPRT算法解决的问题十分经典,即从某n个元素的序列中选出第k大(第k小)的元素,通过巧妙的分析,BFPRT可以保证在最坏情况下仍为线性时间复杂度。该算法的思想与快速排序思想相似,当然,为使得算法在最坏情况下,依然能达到o(n)的时间复杂度,五位算法作者做了精妙的处理。 https://cloud.tencent.com/developer/article/2089934
3.数据挖掘的10大算法我用大白话讲清楚了,新手一看就懂数据挖掘主要分为分类算法,聚类算法和关联规则三大类,这三类基本上涵盖了目前商业市场对算法的所有需求。而这三类里又包含许多经典算法。市面上很多关于数据挖掘算法的介绍深奥难懂,今天就给大家用简单的大白话来介绍数据挖掘十大经典算法原理,帮助大家快速理解。算法分类 连接分析:PageRank 关联分析:Apriori 分类算法http://baijiahao.baidu.com/s?id=1669165676284257223&wfr=spider&for=pc
4.普通物理学(一)课程教学大纲简谐振动的描述、动力学方程、能量,同方向简谐振动的合成,相互垂直的两个简谐振动的合成,阻尼振动、受迫振动。 2.教学要点 使学生掌握简谐振动的余弦表达式,旋转矢量、相位等概念。掌握无阻尼自由振动的周期、频率、能量等概念,掌握同方向同频率简谐振动的合成,理解李萨如图形,了解阻尼振动、受迫振动。 https://physics.suda.edu.cn/6f/8f/c1873a28559/page.htm
5.数学的论文优秀(15篇)3)注重经典算法的数学软件的实现和改进 由于实际问题的特殊性导致数学模型没有固定的模式,这就要求既要熟练掌握一般数学软件和算法的实现,又要善于改进和总结,使得现有的算法和程序能够通过修正来解决实际问题,这对于学生能力的培养不可或缺。只有不断的学习和总结,才有数学素养的培养和创新能力的提高。 https://www.yjbys.com/biyelunwen/fanwen/shuxue/734624.html
6.《三位数乘两位数》教案(精选15篇)教材第5、6页,想想做做第5~10题 教学目标: 同过练习,使学生进一步掌握、规范末尾有0和中间有0的三位数乘两位数的简便笔算方法。 探索乘数、积的变化规律,进一步明白末尾有0乘法的口算依据。 教学重点: 末尾有0的三位数乘两位数的笔算 教学过程: 一、举例昨天学生作业中的几种典型错误:(竖式略) https://www.ruiwen.com/jiaoan/7431605.html
7.计算机网络与通信之局域网51CTO博客以太网交换机是一种即插即用设备,其内部的帧交换表是通过自学习算法自动地逐渐建立起来的; 支持不同的传输速率和工作模式; 低交换延迟–基于硬件交换技术; 支持虚拟局域网服务。 独占传输媒体的带宽而无碰撞地传输数据 对于普通 10 Mb/s 的共享式以太网,若共有 N 个用户,则每个用户占有的平均带宽只有总带宽(10https://blog.51cto.com/u_16011718/6127981
8.小学一年级数学人教版下册教案生1:我能用小棒摆出自己的算法:先摆出1捆零2根小棒,再从1捆中拿掉8根,把剩下的2根与原来的2根合起来是4根,所以12-8=4。 生2:我能把自己的算法画出来:先在左边画10个圆圈,右边画2个圆圈,表示12,然后从左边的10个圆圈中划掉8个,剩下的2个与右边的2个合起来是4个,即12-8=4。 https://www.unjs.com/jiaoan/shuxue/20220802201517_5383426.html
9.文案必读:创意100招上卷举例:我有一个朋友 / 同学 / 同事 比喻:你比如说 / 这就好像 段子搞:不一定非要段子,你怎样给孩子讲故事、和闺蜜怎样打闹、和兄弟怎样喝酒吹牛,就怎样写。因为文字会自然沾染你的情绪的,你情绪冷,文字就冷,你情绪热,文字就热。 11. 咒语 https://www.digitaling.com/articles/33865.html
10.生命宇宙以及任何事情的终极答案《终极算法》的作者佩德罗?多明戈斯教授有一个假设: 所有知识,无论是过去的、现在的还是未来的,都有可能通过单个通用学习算法来从数据中获得。 多明戈斯将该学习算法称为“终极算法”。 他认为,如果这种算法成为可能,它的发明将成为人类最伟大的科学成就之一。实际上,终极算法是我们最不愿意发明的东西,因为一旦对其https://36kr.com/p/1722788823041.html
11.10个经典的C语言面试基础算法及代码算法是一个程序和软件的灵魂,作为一名优秀的程序员,只有对一些基础的算法有着全面的掌握,才会在设计程序和编写代码的过程中显得得心应手。本文是近百个C语言算法系列的第二篇,包括了经典的Fibonacci数列、简易计算器、回文检查、质数检查等算法。也许他们能在你的毕业设计或者面试中派上用场。 1、计算Fibonacci数列 https://www.imooc.com/article/2775
12.统计学权威盘点过去50年最重要的统计学思想,因果推理bootstrap等他们认为,过去半个世纪中最重要的统计思想是:反事实因果推理,基于bootstrapping(自助抽样法)和基于模拟的推理,超参数化模型和正则化,多层模型,泛型计算算法(generic computation algorithms),自适应决策分析,鲁棒推理和探索性数据分析(未按时间顺序,排序不分先后)。 https://www.thepaper.cn/newsDetail_forward_12835098
13.2020年深度学习算法工程师面经(微软阿里商汤滴滴华为简单分为深度学习、机器学习基础、图像处理基础、数学基础、算法基础、程序设计语言、模型部署、HR面试以及与我本人简历相关的目标检测、属性识别、Kaggle及天池的比赛、创新想法等几个部分介绍。可能开始会有重叠或者分类不恰当,后面会逐渐更新完善。其中第一篇先介绍到HR面试,第二篇介绍个人相关的项目和比赛部分。https://maimai.cn/article/detail?fid=1514590373&efid=Oph3033j5Qs70xHZdz0sGA