已知输入变量x,判别模型通过求解条件概率分布P(y|x)或者直接计算y的值来预测y。
生成模型通过对观测值和标注数据计算联合概率分布P(x,y)来达到判定估算y的目的。
常见的判别模型有线性回归(Linear Regression),逻辑回归(Logistic Regression),支持向量机(SVM), 传统神经网络(Traditional Neural Networks),线性判别分析(Linear Discriminative Analysis),条件随机场(Conditional Random Field)
常见的生成模型有朴素贝叶斯(Naive Bayes), 隐马尔科夫模型(HMM),贝叶斯网络(Bayesian Networks)和隐含狄利克雷分布(Latent Dirichlet Allocation)。
2. 以P(w)表示词条w的概率,假设已知P(南京)=0.8,P(市长)=0.6,P(江大桥)=0.4:P(南京市)=0.3,P(长江大桥)=0.5:如果假设前后两个词的出现是独立的,那么分词结果就是( B)
A南京市*长江*大桥
B南京*市长*江大桥
C南京市长*江大桥
D南京市*长江大桥
该题考察的是最大概率分词,其基本思想是:一个待切分的汉字串可能包含多种分词结果,将其中概率最大的作为该字串的分词结果。若某候选词在训练语料中未出现,其概率为0。 A分词结果的概率为P(A)=P(南京市)*P(长江)*P(大桥),由于“长江”未在语料中出现,所以P(长江)=0,从而P(A)=0; 同理可以算出B, C, D分词结果的概率分别是: P(B)=P(南京)*P(市长)*P(江大桥)=0.8*0.6*0.4=0.192; P(C)=P(南京市长)*P(江大桥)=0*0.4=0; P(D)=P(南京市)*P(长江大桥)=0.3*0.5=0.15。 因为P(B)最大,所以为正确的分词结果。
3.在二分类问题中,当测试集的正例和负例数量不均衡时,以下评价方案哪个是相对不合理的( A)(假设precision=TP/(TP+FP),recall=TP/(TP+FN)。)
AAccuracy:(TP+TN)/all
BF-value:2*recall*precision/(recall+precision)
CG-mean:sqrt(precision*recall)
DAUC:ROC曲线下面积
解析:
对于分类器,主要的评价指标有precision,recall,F-score,以及ROC曲线等。 在二分类问题中,我们主要关注的是测试集的正样本能否正确分类。当样本不均衡时,比如样本中负样本数量远远多于正样本,此时如果负样本能够全部正确分类,而正样本只能部分正确分类,那么(TP+TN)可以得到很高的值,也就是Accuracy是个较大的值,但是正样本并没有取得良好的分类效果。因此A选项是不合理的。在样本不均衡时,可以采用BCD选项方法来评价。
4.在其它条件不变的前提下,以下哪种做法容易引起机器学习中的过拟合问题(D )
A增加训练集数量
B减少神经网络隐藏层节点数
C删除稀疏的特征
DSVM算法中使用高斯核/RBF核代替
机器学习中发生过拟合的主要原因有: (1)使用过于复杂的模型; (2)数据噪声较大; (3)训练数据少。 由此对应的降低过拟合的方法有: (1)简化模型假设,或者使用惩罚项限制模型复杂度; (2)进行数据清洗,减少噪声; (3)收集更多训练数据。 本题中,A对应于增加训练数据,B为简化模型假设,C为数据清洗。D选项中,高斯核的使用增加了模型复杂度,容易引起过拟合。选择合适的核函数以及软边缘参数C就是训练SVM的重要因素。一般来讲,核函数越复杂,模型越偏向于过拟合;C越大模型越偏向于过拟合,反之则拟合不足。
5.下面哪项操作能实现跟神经网络中Dropout的类似效果?B
ABoosting
BBagging
CStacking
DMapping
Dropout可以认为是一种极端的Bagging,每一个模型都在单独的数据上训练,同时,通过和其他模型对应参数的共享,从而实现模型参数的高度正则化。
6. 在训练神经网络时,损失函数(loss)在最初的几个epochs时没有下降,可能的原因是?D
A学习率(learning rate)太低
B正则参数太高
C陷入局部最小值
D以上都有可能
学习率过低,模型参数迭代更新缓慢,loss有可能不下降。 正则化太高,模型复杂度过低,模型变得简单,loss很大的时候就,就已经收敛了。 陷入局部最小值,模型已经收敛,loss不会下降了。
7.如果增加多层感知机(Multilayer Perceptron)的隐藏层层数,分类误差便会减小。这种陈述正确还是错误? B
A正确
B错误
并不总是正确。层数增加可能导致过拟合,从而可能引起错误增加
8. float('inf') < float('inf')+1执行后的结果
ATrue
BFalse
该题考察了对Python数值对象中的无穷数的掌握,inf加减任何数结果都是inf。因此两个inf比较大小结果为False
9. 运行以下Python中表达式后,X的值为是 x = 3==3, 5
A3
B5
C(True,5)
D(False,5)
程序运算流程:(1)3==3 判定为True;(2)Ture,5 赋值给 x ;(3)x 的值为元组 (True,5) , 如图:
10.以下代码运行的结果为: a=b=['AI教育','julyedu.com'];a.append('七月在线') print(b) B
A['AI教育','julyedu.com']
B['AI教育','julyedu.com','七月在线']
C['七月在线']
DNoneType
该题考察了对Python中可变对象与不可变对象的理解 。可变对象是指可以被其引用所改变的对象。
11.以下代码返回: a=15 True if a!=5 else False C
A5
B15
CTrue
DFalse
解析:
该题考察了对Python中三元表达式的掌握 。



