丰富的线上&线下活动,深入探索云世界
做任务,得社区积分和周边
最真实的开发者用云体验
让每位学生受益于普惠算力
让创作激发创新
资深技术专家手把手带教
遇见技术追梦人
技术交流,直击现场
海量开发者使用工具、手册,免费下载
极速、全面、稳定、安全的开源镜像
开发手册、白皮书、案例集等实战精华
为开发者定制的Chrome浏览器插件
1、执行如下程序代码后,C的值是(C)inta=0,c=0;do{–c;a=a-1;}while(a>0);01-1死循环
A、6423517
B、6452173
C、3246157
D、3217456
3、设指针变量p指向双向链表中结点A,指针变量s指向被插入的结点X,则在结点A的后面插入结点X的操作序列为(D)。p->right=s;s->left=p;p->right->left=s;s->right=p->right;
s->left=p;s->right=p->right;p->right=s;p->right->left=s;
p->right=s;p->right->left=s;s->left=p;s->right=p->right;
s->left=p;s->right=p->right;p->right->left=s;p->right=s;
前驱后继,前驱后继
4、在一条线段上任取两点,求能构成三角形的概率是多少:(B)A、1/8
B、1/4
C、1/3
D、1/2
解析:假设总线长为10,第一段线长x,第二段线长y,则第三段线长10-x-y。
由三角形性质可知:x+y>10-x-y,即x+y>5;x+(10-x-y)>y,即y<5;同理x<5;
接下来用图解法,画出方程相应的线就可以求出,x,y可取值的范围的面积为25,所以概率为25/100=1/4
5、以下正则表达式,能用来提取下面文字中的所有日期的是(D)
“Thenextmeetupondatasciencewillbeheldon2017-09-21,previouslyithappenedon31/03,2016”
A、\d{4}-\d{2}-\d{2}
B、(19|20)\d{2}-(0[1-9]|1[0-2])-[0-2][1-9]
C、(19|20)\d{2}-(0[1-9]|1[0-2])-([0-2][1-9]|3[0-1])
D、都不能
解析:
(1)限定符(Quantifier)
a*:a出现0次或多次
a+:a出现1次或多次
a:a出现0次或1次
a{6}:a出现6次
a{2,6}:a出现2-6次
a{2,}:a出现两次以上
(2)或运算符(OROperator)(a|b):匹配a或者b
(ab)|(cd):匹配ab或者cd
(3)字符类(CharacterClasses)
[abc]:匹配a或者b或者c
[a-c]:同上
[a-fA-F0-9]:匹配小写+大写英文字符以及数字
[^0-9]:匹配非数字字符(4)元字符(Meta-characters)
\d:匹配数字字符
\D:匹配非数字字符
\w:匹配单词字符(英文、数字、下划线)
\W:匹配非单词字符
\s:匹配空白符(包含换行符、Tab)
\S:匹配非空白字符
.:匹配任意字符(换行符除外)
\bword\b:\b标注字符的边界(全字匹配)
^:匹配行首
$:匹配行尾
(5)贪婪/懒惰匹配(Greedy/LazyMatch)
<.+>:默认贪婪匹配“任意字符”
<.+>:懒惰匹配“任意字符”
B、C是能匹配2017-09-21,不能匹配31/03,2016
6、观察者模式定义了一种()的依赖关系。AA、一对多
B、一对一
C、多对多
D、都有可能
7、N-Grams指的是N个单词的组合,下面的句子可以产生的Bi-Gram(N=2)是(C)
“KingsoftCorporationisafamoussoftwarecompanyintheworld.”
A、7B、8C、9D、10
8、堆可以用作(A)
A、优先队列B、栈C、降序数组D、普通数组
9、列哪个HTTP请求方法的请求体为空(C)A、POSTB、SENDC、GETD、PUT
10、下列伪代码段说明了OOP的哪个特征?(D)
classStudent{intmarks;};classTopper:publicStudent{intage;Topper(intage){this.age=age;}};A、继承
B、多态
C、继承与多态
D、封装和继承
11、Attention机制属于以下哪种网络结构(D)A、SeqtoSeq
B、SeqtoVector
C、VectortoSeq
D、Encoder-Decoder
12、one-hot和word2vec的相比,以下哪项是正确的(B)
A、one-hot向量稀疏,内存占用比Word2vec小
B、word2vec的向量考虑了词的上下文语义
C、one-hot可以用来判断相似词
D、Word2vec输出的向量维度与词典大小有直接关系
解析:A、D错:one-hot编码法,是按照词典来进行编码的,词向量维度取决于就是词典数量。向量稀疏,内存占用会比Word2vec大,Word2vec可以控制输出维度。
B对:word2vec是基于分布假设,认为上下文环境相同的词语其语义也相似.,主要的方法有两种:CBOW和skip-gram.Word2vec能将one-hotEncoder转化为低维度的连续值,也就是稠密向量,具有相似语义的单词的向量之间距离会比较小,部分词语之间的关系能够用向量的运算表示.C错:word2vec可以用来判断相似词,用Word2Vec得到词向量后,一般用余弦相似度来比较两个词的相似程度
13、NaveBayes(朴素贝叶斯)是一种特殊的Bayes分类器,特征变量是X,类别标签是Y,它的一个假定是(B)
A、各类别的先验概率P(Y)是相等的
B、特征变量X的各个维度是类别条件独立随机变量
C、以0为均值,sqr(2)/2为标准差的正态分布
D、P(X|Y)是高斯分布
解析:朴素贝叶斯的条件就是每个变量相互独立
14、在LogisticRegression中,如果同时加入L1和L2范数,不会产生什么效果(D)A、可以做特征选择,并在一定程度上防止过拟合
B、能解决维度灾难问题
C、能加快计算速度
D、可以获得更准确的结果
解析:L0范数计算非零参数个数,无法防止过拟合
L1范数进行特征选择,使得参数矩阵稀疏,一定程度上防止过拟合
L2范数可以防止过拟合
15、有一个15×15的图像,使用一个3×3的filter进行卷积(步幅为2)之后,得到的图像大小为(A)A、8*8
B、9*9
C、10*10
D、11*11
16、下列哪个不属于有监督学习(C)A、逻辑回归B、SVMC、K-meansD、XGBoost
18、LogisticLoss是()
交叉熵$$L=-[ylog\hat{y}+(1-y)log(1-\hat{y})]$$
19、以下哪种模型可以被用来计算文档相似度是(D)A、练一个word2vec模型学习文档中的上下文关系
B、训练一个词袋模型学习文档中的词共现关系
C、建立文档-词矩阵,用每个文档的cos距离
D、选项所有
解析:七种方法计算文本相似度方法余弦相似度余弦(余弦函数),三角函数的一种。…简单共有词通过计算两篇文档共有的词的总字符数除以最长文档字符数来评估他们的相似度。…编辑距离…SimHash+汉明距离…Jaccard相似性系数…欧几里得距离…曼哈顿距离
20、甲、乙、丙、丁4人分别掌握英、法、德、日四种语言中的两种,其中有3人会说英语,但没有一种语言是4人都会的,并且知道:
(1)没有人既会日语又会法语;
(2)甲会日语,而乙不会,但他们可以用另一种语言交谈;
(3)丙不会德语,甲和丁交谈时,需要丙为他们做翻译;
(4)乙、丙、丁不会同一种语言。
根据上述条件,以下哪项是四人分别会的两种语言?(A)
A、甲会英语和日语,乙会英语和德语,丙会英语和法语,丁会法语和德语。
B、甲会英语和日语,乙会英语和法语,丙会英语和德语,丁会法语和德语。
C、甲会英语和德语,乙会英语和日语,丙会英语和法语,丁会法语和德语。
D、甲会英语和德语,乙会英语和法语,丙会法语和德语,丁会英语和日语。
解析:根据不会的某种语言进行排除法做。
B和D、题目说了丙不会德语
C、题目说了,乙不会日语
21、
下列可以用来提升短文本分类模型的准确率的特征是(ABCD)A、词频
B、文本的向量表示
C、词性标注
D、语法依赖关系
22、如果神经网络有高的偏差(bias),下列哪些方法可以尝试(A、C)A、增加隐层神经元数量
B、增加测试(test)数据
C、增加网络层数
D、增加正则项
E、增加训练(training)数据
解析:网络层有较高的偏差(bias),模型拟合效果不佳,模型结构不够复杂,可以加深网络层,增加隐层神经元的个数。
23、下列关于栈的叙述正确的是(A、D)
A、栈是线性结构
B、栈是一种树状结构
C、栈具有先进先出的特征
D、栈有后进先出的特征
24、有关模板方法模式,以下叙述正确的是()ACDA、允许定义不同的子过程,同时维护基本过程的一致性。
B、将定义和操作相互分离。
C、创建一个抽象类,用抽象方法实现一个过程,这些抽象方法必须在子类中实现。
D、实现抽象方法的子类的步骤可以独立变化,并且这些步骤可以采用Strategy模式来实现。
解析:模板方法是将不变算法部分封装到父类中,将可变需要扩展部分封装到子类中实现,而不是将算法与操作相分离。
25、WhichofthefollowingstatementsarecorrectwithregardstoTopicModeling()
牛客官方正确答案:CD,我觉得官方答案不正确,我的答案:ABDA、Itisasupervisedlearningtechnique
B、LDA(LinearDiscriminantAnalysis)canbeusedtoperformtopicmodeling
C、Selectionofnumberoftopicsinamodeldependsonthesizeofdata
D、Numberoftopictermsarenotdirectlyproportionaltosizeofthedata
解析:关于主题模型正确的是:
它是一种有监督学习;
LDA可用于主题建模;
模型中主题数量的选择取决于数据的大小;
主题词的数量与数据的大小不成正比。
解释:LDA是一种无监督的主题模型。
模型的主题数量的选择不取决于数量的大小,取决于数据中主题类别;
主题词的数量类似于关键词,与数据大小无关。
26、装饰器模式和代理模式有哪些相同点和不同点,并分别举例说明
修饰器模式:动态地给一个对象添加一些额外的职责,同时又不改变其结构,就增加功能来说装饰模式比生成子类更为灵活。
代理模模式:为其他对象提供一种代理以控制对这个对象的访问。
(1)相同点
两种从设计模式分类来看都属于结构型,因为两者均使用了组合关系。其次两者都能实现对对象方法进行增强处理的效果。
(2)不同点
代理模式,注重对对象某一功能的流程把控和辅助。它可以控制对象做某些事,重心是为了借用对象的功能完成某一流程,而非对象功能如何。
装饰模式,注重对对象功能的扩展,它不关心外界如何调用,只注重对对象功能的加强,装饰后还是对象本身。
举个例子说明两者不同之处,代理和装饰其实从另一个角度更容易去理解两个模式的区别:代理更多的是强调对对象的访问控制,比如说,访问A对象的查询功能时,访问B对象的更新功能时,访问C对象的删除功能时,都需要判断对象是否登陆,那么我需要将判断用户是否登陆的功能抽提出来,并对A对象、B对象和C对象进行代理,使访问它们时都需要去判断用户是否登陆,简单地说就是将某个控制访问权限应用到多个对象上;而装饰器更多的强调给对象加强功能,比如说要给只会唱歌的A对象添加跳舞功能,添加说唱功能等,简单地说就是将多个功能附加在一个对象上。
(1)数据预处理,包括去除特殊字符,大小写统一
(2)利用分词工具进行分词,并采用word2vec编码为词向量
(3)利用二分类模型,TextCNN,Fasttext,等文本分类模型
(4)评价指标采用混淆矩阵、准确率、召回率、ROC、AUC等
从算法角度出发,通常的方法包括了:
29、给定一个长度为n的数组a[0],a[1]…a[n-1]和一个数字x,在数组中查找两个数a和b(可以是相同的值,但是不可以是相同位置的数字),使得它们的和与输入的数字差的绝对值最小。