学习知识记录

1、nnlm神经网络语言模型:

A Neural Probabilistic Language Model ------阅读笔记_hx14301009的博客-CSDN博客

2、Word2vec的skip gram模型

输入是 中心词和背景词

NLP之---word2vec算法skip-gram原理详解_Ricky-CSDN博客_skipgram

层级的softmax:本质是将N分类问题转换成logN(底数为2)次的二分类

负采样:更新部分权重,其他的权重固定

3、batchnormalization

layer normalization

batchNormalization与layerNormalization的区别 - 知乎

normalization 规范化

4、驱动和固件的区别  驱动与固件的区别是什么? - 知乎

驱动driver指的是提供编程api接口,用以操控某一硬件、软件产品的应用程序。以程序的使用目的来定义 它是否为driver。

固件firmware概念上来说是指那些预安装到硬件产品内存只读记忆体里面,与硬件产品捆绑匹配的程序。这个名词的定义主要强调此类软件的不应当被修改,并且与硬件捆绑的特性。更改fireware属于hack范畴了。

相同点都是管理硬件的,区别是随谁一起发布。随硬件一起发布的叫固件,随软件一起发布的叫驱动。

随硬件一起发布是因为没有固件,硬件本身无法工作,如bios。随软件一起发布是因为为没有它软件无法在目标硬件上工作,如linux驱动。说白了只看出身立场,不看能力。

软件厂商和硬件厂商之间有一个接口界面,这个界面下的软件通常叫firmware,由硬件厂商提供,之上的操作硬件的叫驱动,有软件厂商提供。这个界面可以是大家一起订立的,也可以是软件厂商定义的,也可以是硬件厂商定义的。硬件厂商定义的话,通常倾向于把界限网上推,这样他能干更多的事情,能对软件友好,从而提高市场占有率。软件厂商定义的话,倾向于往下推,这样它可以要求硬件厂商开放更多硬件信息,软件可以做更多优化。通常的结果是大家定义一个最合适的界限,然后都想越过这个界限。比如说uefi,它做了很多驱动做的事情,试图取代驱动。而linux内核也不肯放弃驱动,所以选择不使用uefi提供的好多功能。

5、cuda与cuDNN CUDA与cuDNN - 简书

cuda(computeUnified Device Architecture),是显卡厂商NVIDIA推出的运算平台。CUDA是一种由NVIDIA推出的通用并行计算架构,该架构使gpu能够解决复杂的计算问题。

CUDNN是用于深度神经网络的gpu加速库。它强调性能、易用性和低内存开销。

你可能感兴趣的:(面试,算法,cnn,深度学习,tensorflow)