动手深度学习TASK1

时光总嘲笑我的痴心妄想 提交于 2020-02-15 00:45:03

线性回归

线性回归就是对于现有数据拟合一个线性关系函数
y=x1w1+x2w2+by=x_{1}*w_{1}+x_{2}*w_{2}+b

逻辑回归

逻辑回归就是对于输出输出起对应类别的概率
其中输出层涉及softmax函数,来归一化输出值在0-1区间

多层感知器

除了输入和输出层还包含多个隐藏层,每个层的输出要经过一个激活函数

文本处理

文本是一类序列数据,一篇文章可以看作是字符或单词的序列,本节将介绍文本数据的常见预处理步骤,预处理通常包括四个步骤:

  1. 读入文本
  2. 分词
  3. 建立字典,将每个词映射到一个唯一的索引(index)
  4. 将文本从词的序列转换为索引的序列,方便输入模型

pytorch 的两种实现方法

spaCy:

import spacy
text = "Mr. Chen doesn't agree with my suggestion."
nlp = spacy.load('en_core_web_sm')
doc = nlp(text)
print([token.text for token in doc])
output:
['Mr.', 'Chen', 'does', "n't", 'agree', 'with', 'my', 'suggestion', '.']

NLTK:

from nltk.tokenize import word_tokenize
from nltk import data
data.path.append('/home/kesci/input/nltk_data3784/nltk_data')
print(word_tokenize(text))
output:
['Mr.', 'Chen', 'does', "n't", 'agree', 'with', 'my', 'suggestion', '.']

语言模型

一段自然语言文本可以看作是一个离散时间序列,给定一个长度为T的词的序列w1,w2,,wTw_{1},w_{2},…,w_{T},语言模型的目标就是评估该序列是否合理,即计算该序列的概率
利用n元模型(基于n-1马尔科夫链)估算概率
为了获取训练的小批量样本和标签,可分为随即采样和相邻采样

循环网络

我知道结构,代码还没看懂,下次补上

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!