目录
- 一、前置知识
- 1.1 语料库(Corpus)
- 1.2 词元(Token)
- 1.3 词表(Vocabulary)
- 二、nn.Embedding 基础
- 2.1 为什么要 embedding?
- 2.2 基础参数
- 2.3 nn.Embedding 与 nn.Linear 的区别
- 2.4 nn.Embedding 的更新问题
- 三、nn.Embedding 进阶
- 3.1 全部参数
- 3.2 使用预训练的词嵌入
- 四、最后
一、前置知识
1.1 语料库(Corpus)
太长不看版: NLP任务所依赖的语言数据称为语料库。
详细介绍版: 语料库(Corpus,复数是Corpora)是组织成数据集的真实文本或音频的集合。 此处的真实是指由该语言的母语者制作的文本或音频。 语料库可以由从报纸、小说、食谱、广播到电视节目、电影和推文的所有内容组成。 在自然语言处理中,语料库包含可用于训练 AI 的文本和语音数据。
1.2 词元(Token)
为简便起见,假设我们的语料库只有三个英文句子并且均已经过处理(全部小写+去掉标点符号):
corpus = ["he is an old worker", "english is a useful tool", "the cinema is far away"]
我们往往需要将其词元化(tokenize)以成为一个序列,这里只需要简单的 split
即可:
def tokenize(corpus): return [sentence.split() for sentence in corpus] tokens = tokenize(corpus) print(tokens) # [['he', 'is', 'an', 'old', 'worker'], ['english', 'is', 'a', 'useful', 'tool'], ['the', 'cinema', 'is', 'far', 'away']]
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)