Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion chapter/10.文本聚类.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@

1. **基本原理**

形式化啊定义 k均值算法所解决的问题,给定 n 个向量 d1 到 dn,以及一个整数 k,要求找出 k 个簇 S1 到 Sk 以及各自的质心 C1 到 Ck,使得下式最小:
形式化的定义 k均值算法所解决的问题,给定 n 个向量 d1 到 dn,以及一个整数 k,要求找出 k 个簇 S1 到 Sk 以及各自的质心 C1 到 Ck,使得下式最小:

![](https://github.com/NLP-LOVE/Introduction-NLP/raw/master/img/2020-2-13_14-28-33.gif)

Expand Down
8 changes: 4 additions & 4 deletions chapter/4.隐马尔可夫模型与序列标注.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@

![](https://github.com/NLP-LOVE/Introduction-NLP/raw/master/img/2020-2-6_10-36-13.png)

求解序列标注问题的模型一般称为**序列标注器**,通常由模型从一个标注数据集 ![](https://github.com/NLP-LOVE/Introduction-NLP/raw/master/img/2020-2-8_0-45-19.gif) 中学习相关知识后再进行预测。再NLP问题中,x 通常是字符或词语,而 y 则是待预测的组词角色或词性等标签。中文分词、词性标注以及命名实体识别,都可以转化为序列标注问题。
求解序列标注问题的模型一般称为**序列标注器**,通常由模型从一个标注数据集 ![](https://github.com/NLP-LOVE/Introduction-NLP/raw/master/img/2020-2-8_0-45-19.gif) 中学习相关知识后再进行预测。在NLP问题中,x 通常是字符或词语,而 y 则是待预测的组词角色或词性等标签。中文分词、词性标注以及命名实体识别,都可以转化为序列标注问题。

1. **序列标注与中文分词**

Expand Down Expand Up @@ -81,7 +81,7 @@

**隐马尔可夫模型**:它的马尔可夫假设作用于状态序列,

假设 ① 当前状态 Yt 仅仅依赖于前一个状态 Yt-1, 连续多个状态构成隐**马尔可夫链 y**。有了隐马尔可夫链,如何与观测序列 x 建立联系呢?
假设 ① 当前状态 Yt 仅仅依赖于前一个状态 Yt-1, 连续多个状态构成**隐马尔可夫链 y**。有了隐马尔可夫链,如何与观测序列 x 建立联系呢?

隐马尔可夫模型做了第二个假设: ② 任意时刻的观测 x 只依赖于该时刻的状态 Yt,与其他时刻的状态或观测独立无关。如果用箭头表示事件的依赖关系(箭头终点是结果,依赖于起点的因缘),则隐马尔可夫模型可以表示为下图所示

Expand Down Expand Up @@ -149,13 +149,13 @@

1. **案例假设和模型构造**

设想如下案例:某医院招标开发“智能”医疗诊断系统,用来辅助感冒诊断。已知①来诊者只有两种状态:要么健康,要么发烧。②来诊者不确定自己到底是哪种状态,只能回答感觉头晕、体寒或正常。医院认为,感冒这种病,只跟病人前一天的状态有关,并且,④当天的病情决定当天的身体感觉。有位来诊者的病历卡上完整地记录了最近 T 天的身体感受(头晕、体寒或正常),请预测这 T 天的身体状态(健康或发烧)。由于医疗数据属于机密隐私,医院无法提供训练数据,但根据医生经验,感冒发病的规律如下图所示(**箭头上的数值表示概率**):
设想如下案例:某医院招标开发“智能”医疗诊断系统,用来辅助感冒诊断。已知①来诊者只有两种状态:要么健康,要么发烧。②来诊者不确定自己到底是哪种状态,只能回答感觉头晕、体寒或正常。医院认为,感冒这种病,只跟病人前一天的状态有关,并且,④当天的病情决定当天的身体感觉。有位来诊者的病历卡上完整地记录了最近 T 天的身体感受(头晕、体寒或正常),请预测这 T 天的身体状态(健康或发烧)。由于医疗数据属于机密隐私,医院无法提供训练数据,但根据医生经验,感冒发病的规律如下图所示(**箭头上的数值表示概率**):

![](https://github.com/NLP-LOVE/Introduction-NLP/raw/master/img/2020-2-6_14-9-11.png)



根据已知条件①②,病情状态(健康、发烧)可作为隐马尔可夫模型的隐状态(上图蓝色状态),而身体感受(头晕、体寒或正常)可作为隐马尔可夫模型的显状态(图中白色状态)。条件③符合隐马尔可夫模型假设一,条件④符 合隐马尔可夫模型假设二。这个案例其实描述了一个隐马尔可夫模型, 并且参数已经给定。构造模型代码见:
根据已知条件①②,病情状态(健康、发烧)可作为隐马尔可夫模型的隐状态(上图蓝色状态),而身体感受(头晕、体寒或正常)可作为隐马尔可夫模型的显状态(图中白色状态)。条件③符合隐马尔可夫模型假设一,条件④符合隐马尔可夫模型假设二。这个案例其实描述了一个隐马尔可夫模型, 并且参数已经给定。构造模型代码见:

```python
import numpy as np
Expand Down
4 changes: 2 additions & 2 deletions chapter/5.感知机分类与序列标注.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

为了利用更多的特征,线性模型( linear model )应运而生。线性模型由两部分构成: 一系列用来提取特征的特征函数 φ,以及相应的权重向量 w。

本章将深人讲解感知机算法的原理,以及在分类和序列标注上的应用。在序列标注应用部分,我们将实现基于感知机的中文分词器。由于感知机序列标注基于分类,并且分类问题更简单,所以我们先学习分类问题。
本章将深入讲解感知机算法的原理,以及在分类和序列标注上的应用。在序列标注应用部分,我们将实现基于感知机的中文分词器。由于感知机序列标注基于分类,并且分类问题更简单,所以我们先学习分类问题。



Expand Down Expand Up @@ -101,7 +101,7 @@

运行下面代码后会自动下载。

预料格式为逗号分隔的 .csv,第一列为姓名,第二列为性别:
语料格式为逗号分隔的 .csv,第一列为姓名,第二列为性别:

```
赵伏琴,女
Expand Down
2 changes: 1 addition & 1 deletion chapter/6.条件随机场与序列标注.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

## 6. 条件随机场与序列标注

本章介绍一种新的序列标注模型条件随机场。这种模型与感知机同属结构化学习大家族,但性能比感知机还要强大。为了厘清该模型的来龙去脉,我们先对机器学习模型做番柿理。然后结合代码介绍条件随机场理论,探究它与结构化感知机的异同。
本章介绍一种新的序列标注模型条件随机场。这种模型与感知机同属结构化学习大家族,但性能比感知机还要强大。为了厘清该模型的来龙去脉,我们先对机器学习模型做番梳理。然后结合代码介绍条件随机场理论,探究它与结构化感知机的异同。



Expand Down
4 changes: 2 additions & 2 deletions chapter/8.命名实体识别.md
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ HanLP内部提供了语料库转换工序,用户无需关心,只需要传入

1. **标注领域命名实体识别语料库**

首先我们需要收集一些文本, 作为标注语料库的原料,称为**生语料**。由于我们的目标是识别文本中的战斗机名称或型号,所以生语料的来源应当是些军事网站的报道。在实际工程中,求由客户提出,则应当由该客户提供生语料。语料的量级越大越好,一般最低不少于数千个句子。
首先我们需要收集一些文本, 作为标注语料库的原料,称为**生语料**。由于我们的目标是识别文本中的战斗机名称或型号,所以生语料的来源应当是些军事网站的报道。在实际工程中,需求由客户提出,则应当由该客户提供生语料。语料的量级越大越好,一般最低不少于数千个句子。

生语料准备就绪后,就可以开始标注了。对于命名实体识别语料库,若以词语和词性为特征的话,还需要标注分词边界和词性。不过我们不必从零开始标注,而可以在HanLP的标注基础上进行校正,这样工作量更小。

Expand All @@ -135,7 +135,7 @@ HanLP内部提供了语料库转换工序,用户无需关心,只需要传入
[米格/nr -/w 阿帕奇/nrf -/w 666/m S/q]/np 横空出世/l 。/w
```

这句话已经在语料库中出现过,能被正常识别并不意外。我们可以伪造一款“米格-阿帕奇-666S”战斗机,试试模型的繁华能力,发现依然能够正确识别。
这句话已经在语料库中出现过,能被正常识别并不意外。我们可以伪造一款“米格-阿帕奇-666S”战斗机,试试模型的泛化能力,发现依然能够正确识别。



Expand Down
8 changes: 4 additions & 4 deletions chapter/9.信息抽取.md
Original file line number Diff line number Diff line change
Expand Up @@ -95,9 +95,9 @@

### 9.2 关键词提取

词语颗粒度的信息抽取还存在另一个需求,即提取文章中重要的单词,称为**关键词提起**。关键词也是一个没有定量的标准,无法统一语料库,所以就可以利用无监督学习来完成。
词语颗粒度的信息抽取还存在另一个需求,即提取文章中重要的单词,称为**关键词提取**。关键词也是一个没有定量的标准,无法统一语料库,所以就可以利用无监督学习来完成。

分别介绍词频、TF-IDF和TextRank算法,单文档提起可以用词频和TextRank,多文档可以使用TF-IDF来提取关键词。
分别介绍词频、TF-IDF和TextRank算法,单文档提取可以用词频和TextRank,多文档可以使用TF-IDF来提取关键词。

1. **词频统计**

Expand Down Expand Up @@ -147,7 +147,7 @@

TF-IDF (Term Frequency-lnverse Document Frequency,词频-倒排文档频次)是信息检索中衡量一个词语重要程度的统计指标,被广泛用于Lucene、Solr、Elasticsearch 等搜索引擎。

相较于词频,TF-IDF 还综合考虑词语的稀有程度。在TF-IDF计算方法中,一个词语的重要程度不光正比于它在文档中的频次,还反比于有多少文档包含它。包含该词语的文档趣多,就说明它越宽泛, 越不能体现文档的特色。 正是因为需要考虑整个语料库或文档集合,所以TF-IDF在关键词提取时属于多文档方法。
相较于词频,TF-IDF 还综合考虑词语的稀有程度。在TF-IDF计算方法中,一个词语的重要程度不光正比于它在文档中的频次,还反比于有多少文档包含它。包含该词语的文档越多,就说明它越宽泛, 越不能体现文档的特色。 正是因为需要考虑整个语料库或文档集合,所以TF-IDF在关键词提取时属于多文档方法。

计算公式如下:

Expand Down Expand Up @@ -198,7 +198,7 @@

![](https://github.com/NLP-LOVE/Introduction-NLP/raw/master/img/2020-2-12_17-24-59.gif)

其中 d 是一个介于 (0,1) 之间的常数因子,在PagRank中模拟用户点击链接从而跳出当前网站的概率,In(Vi) 表示链接到 Vi 的节点集合,Out(Vj) 表示从 Vj 出发链接到的节点集合。可见,开不是外链越多,网站的PageRank就越高。网站给别的网站做外链越多,每条外链的权重就越低。如果一个网站的外链都是这种权重很低的外链,那么PageRank也会下降,造成不良反应。正所谓物以类聚,垃圾网站推荐的链接往往也是垃圾网站。因此PageRank能够比较公正的反映网站的排名。
其中 d 是一个介于 (0,1) 之间的常数因子,在PagRank中模拟用户点击链接从而跳出当前网站的概率,In(Vi) 表示链接到 Vi 的节点集合,Out(Vj) 表示从 Vj 出发链接到的节点集合。可见,并不是外链越多,网站的PageRank就越高。网站给别的网站做外链越多,每条外链的权重就越低。如果一个网站的外链都是这种权重很低的外链,那么PageRank也会下降,造成不良反应。正所谓物以类聚,垃圾网站推荐的链接往往也是垃圾网站。因此PageRank能够比较公正的反映网站的排名。

将 PageRank 应用到关键词提取,无非是将单词视作节点而已,另外,每个单词的外链来自自身前后固定大小的窗口内的所有单词。

Expand Down