终於到最後一天了,可喜可贺可喜可贺!其实我也知道在这30天的期间内还有很多没能讲到的东西,既然都到最後一天了,那今天就来大概介绍一下那些没能提到的事情吧!
然後在国庆连假时我们小组里有人忘记发文,明明都写到26天结果却因此断赛了,哭阿。
其实现在想想,在介绍自然处理(Natural Language Processing,简称 NLP)的方法时,也许应该先提一下这个方法的...毕竟 N-gram 是一种基於机器学习的语言模型。要知道所有的语言模型 (Language Model)在做的其实都是一件事,那就是「预测一个句子/词的机率」说。比方说:
众上所述,而 N-gram 模型是一种语言概率模型,它的输入是一句话,输出则是这句话出现的概率。常用的有二元语法 Bi-gram(n=2)和三元语法 Tri-gram(n=3),它会将文本里面的内容按照字节进行大小为 N 的滑动窗口操作,形成了长度是 N 的字节片段序列。
举个例子,假设我们输入的句子是『 I am a student 』,则:
Bi-gram:{(I,am),(am,a),(a,stuedent)}
Tri-gram:{(I,am,a),(am,a,student)}
而每一个字节片段称为 gram,我们会对所有 gram 的出现频率进行统计。之後假设第 N 个词的出现只与前面 N-1 个词相关,而与其它任何词都不相关,则整句话的机率就是各个词出现机率的乘积。
既然都提到 N-gram 了,那就顺便来介绍一下 TF-IDF 好了。因为 TF-IDF 很常和 N-gram 搭配在一起来做像是文章的关键字提取或是文章的相似度比较、文章分类之类的任务。
TF-IDF 是一种统计方法,主要是用来评估一个词对於一篇文章的重要程度。TF-IDF 演算法包含了两个部分:词频(term frequency,TF)跟逆向文件频率(inverse document frequency,IDF)。
我们将第 个词汇对於第 篇文件的 TF-IDF 权重定义为 = x 。当辞汇 很常出现在文章 内却不常出现在其他文章内时, 和 相乘起来就会很大,我们就能够知道说辞汇 对於文章 而言非常重要了。
因为传统的神经网路只能处理一维资料的缘故,因此它有个问题就是他往往会忽略资料的形状。如果我们使用传统的神经网路去做图像识别的话,就需要将2维的图片打散成1维。而 CNN 就是为了处理这类问题而被开发出来的架构。
(还记得我们在介绍 Self-Attention 时有提到,有人打算用 CNN 的架构来处理 RNN 的问题吗? 这下你就知道 CNN 的架构有多灵活了吧)
CNN 相较传统的架构多了 Convolutional layer(卷积层)及 Pooling layer (池化层),用来维持形状资讯并且避免参数大幅增加。其中,卷积层主要负责做特徵撷取;池化层负责降低参数。在加入此两层後,最後再加入全连结层并搭配 Softmax 函式来决定输出结果。
https://zhuanlan.zhihu.com/p/32829048
https://taweihuang.hpd.io/2017/03/01/tfidf/
https://chtseng.wordpress.com/2017/09/12/%E5%88%9D%E6%8E%A2%E5%8D%B7%E7%A9%8D%E7%A5%9E%E7%B6%93%E7%B6%B2%E8%B7%AF/
不知不觉30天就过去了,虽然我们介绍的东西可能很简单,但是我其实也不过是个嫩嫩的学生,可能很多东西的内容介绍的并不完善,还可能讲错,但是透过这些回顾,我也理解了自己哪些地方不足,也算是一次难能可贵的经验。
<<: 30天学会 Python: Day 29- 云端资料库
山姆回想着刚刚看到的雪人怪,还心有余悸。 转了个弯,继续找寻水晶。 「碰!」山姆迎头撞上了白色的物...
虽然 browser 已经可以支援多个分页浏览了(全在同一个 Activity 中做切换),但有些时...
Git Git 是一个开源的分布式版本控制系统, 允许我们跟踪档案异动, 最初目的是为更好地管理 L...
前言 这一场 LOL 的掉排位来自於之前自己已经雷了千万场 ---阿峻20190928 在资料的世界...
你以为JS拿来就乖乖照着我们打的一行一行跑吗?太天真了,我说我~~ 变数怎麽存,存哪里,在哪里叫得到...