2022-7-22 面经复习+简单题目整理

Posted lyz_fish

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2022-7-22 面经复习+简单题目整理相关的知识,希望对你有一定的参考价值。

listC = [('e', 4), ('o', 2), ('!', 5), ('v', 3), ('l', 1)] 
print(sorted(listC, key=lambda x: x[1])) 

class Solution:
    def intersectionSizeTwo(self, intervals: List[List[int]]) -> int:
        # print(intervals)
        intervals.sort(key = lambda x:(x[1],-x[0]))
        # print(intervals)
        li = [-1,-1]
        for x in intervals:
            if x[0] <= li[-2]:
                continue
            if x[0] > li[-1]:
                li.append(x[1]-1)
            li.append(x[1])
            # print(li)
        return len(li) - 2

Batch Normalization (BN) 就被添加在每一个全连接和激励函数之间.

题组 I

  1. Batch Normalization 缺点?(百度)

👉查看答案👈什么是BN: 什么是批标准化 (Batch Normalization) - 知乎 (zhihu.com)
batch 太小,会造成波动大;对于文本数据,不同有效长度问题;测试集上两个数据均值和方差差别很大就不合适了 附:LN 是对一个样本的一个时间步上的数据进行减均除标准差,然后再回放(参数学习)对应到普通线性回归就是一层节点求均除标准差。

  1. 分词如何做?(百度)

👉查看答案👈
基于规则(超大词表);基于统计(两字同时出现越多,就越可能是词);基于网络 LSTM + CRF 词性标注,也可以分词。

  1. word2vector 负采样时为什么要对频率做 3/4 次方?(百度)

👉查看答案👈
在保证高频词容易被抽到的大方向下,通过权重 3/4 次幂的方式,适当提升低频词、罕见词被抽到的概率。如果不这么做,低频词,罕见词很难被抽到,以至于不被更新到对应 Embedding。

  1. word2vec 的两种优化方式?(车企)

👉查看答案👈
第一种改进为基于层序 softmax 的模型。
首先构建哈夫曼树,即以词频作为 n 个词的节点权重,不断将最小权重的节点进行合并,最终形成一棵树,权重越大的叶子结点越靠近根节点,权重越小的叶子结点离根节点越远。 然后进行哈夫曼编码,即对于除根节点外的节点,左子树编码为 1,右子树编码为 0。 最后采用二元逻辑回归方法,沿着左子树走就是负类,沿着右子树走就是正类,从训练样本中学习逻辑回归的模型参数。
优点:计算量由 V(单词总数)减小为 log2V;高频词靠近根节点,所需步数小,低频词远离根节点。
第二种改进为基于负采样的模型。
通过采样得到少部分的负样本,对正样本和少部分的负样本,利用二元逻辑回归模型,通过梯度上升法,来得到每个词对应的模型参数。具体负采样的方法为:根据词频进行采样,也就是词频越大的词被采到的概率也越大。

  1. CNN 原理及优缺点?(车企)

👉查看答案👈
CNN 是一种前馈神经网络,通常包含 5 层,输入层,卷积层,激活层,池化层,全连接 FC 层,其中核心部分是卷积层和池化层。
优点:共享卷积核,对高维数据处理无压力;无需手动选取特征。
缺点:需要调参;需要大量样本。

  1. 描述下 CRF 模型及应用(车企)

👉查看答案👈
给定一组输入随机变量的条件下另一组输出随机变量的条件概率分布密度。条件随机场假设输出变量构成马尔科夫随机场,而我们平时看到的大多是线性链条随机场,也就是由输入对输出进行预测的判别模型。求解方法为极大似然估计或正则化的极大似然估计。CRF 模型通常应用于优化命名实体识别任务。

  1. transformer 结构?(车企)

👉查看答案👈
Transformer 本身是一个典型的 encoder-decoder 模型,Encoder 端和 Decoder 端均有6个 Block,Encoder 端的 Block 包括两个模块,多头 self-attention 模块以及一个前馈神经网络模块;Decoder 端的 Block 包括三个模块,多头 self-attention 模块,多头 Encoder-Decoder attention 交互模块,以及一个前馈神经网络模块;需要注意:Encoder 端和 Decoder 端中的每个模块都有残差层和 Layer Normalization 层。

  1. elmo 和 Bert 的区别?(车企)

👉查看答案👈
BERT 采用的是 Transformer 架构中的 Encoder 模块; GPT 采用的是 Transformer 架构中的 Decoder 模块; ELMo 采用的双层双向 LSTM 模块。

  1. elmo 和 word2vec 的区别?(车企)

👉查看答案👈
elmo 词向量是包含上下文信息的,不是一成不变的,而是根据上下文而随时变化。

  1. lstm 与 GRU 区别?(车企)

👉查看答案👈
(1)LSTM 和 GRU 的性能在很多任务上不分伯仲;
(2)GRU 参数更少,因此更容易收敛,但是在大数据集的情况下,LSTM性能表现更好;
(3)GRU 只有两个门(update和reset),LSTM 有三个门(forget,input,output),GRU 直接将hidden state 传给下一个单元,而 LSTM 用 memory cell 把 hidden state 包装起来。

  • 不需要实例化,就直接调用class中的函数
class C(object):
    @staticmethod
    def f():
        print('runoob');
 
C.f();          # 静态方法无需实例化
cobj = C()
cobj.f()        # 也可以实例化后调用

以上是关于2022-7-22 面经复习+简单题目整理的主要内容,如果未能解决你的问题,请参考以下文章

2022-7-22 面经复习+简单题目整理

笔记总结计算机系期末复习专业课学习算法与其他笔记

java开发总体知识复习

三年经验Java开发面经总结,附赠复习资料

2021.8.9美团实习Java岗面经,已拿offer!

每日面经IntuitMicrosoftAmazon最新面经速递!