自学内容网 自学内容网

pytorch-时间序列

1. 时间序列

具有时间相关性的序列叫做时间序列,比如:语音、文本句子

2. word embedding

2.1 one hot

针对句子来说,可以用[seq_len, vector_len]
有多少个单词vector_len就是多少,比如汉字有3500个,句子长度是5,那么就表示为[5, 3500]
如下图:
vector index 0为1表示Rome, index 1为1表示Pairs,其他位置都为0
在这里插入图片描述
one hot编码的问题是:比较稀疏,数据长度可能比较长,但是有用的数据比较少。比如:英文常用单词有2-4w个,那么这种方式就很难用了。

2.2 word2vec

利用语言相关性,相近或者相反
如下图:
king 与kings最相近,值也就越大,这个值是通过两个单词向量的cos夹角计算的(角越大值越小)
在这里插入图片描述

2.3 GloVe

下图是自己建立一个单词向量表,有两个单词索引是0和1,然后使用torch.nn.Embedding(2, 5)生成单词向量表,即2个单词,每个单词用5个dimension vector表示。
在这里插入图片描述
torch.nn.Embedding(2, 5)生成的词向量表,采用随机值进行初始化,这种随机值初始化后的向量值,并不能反映特定单词与单词之间的余弦距离以及不同单词之间的相关性。而且还需要根据特定的文本对其进行训练,以符合特定业务场景的需求。
Glove是预定义的,他人已经根据大量的文本数据训练好的数据集,可以直接使用,一般不需要自己修改。

glove使用见下图:
在这里插入图片描述


原文地址:https://blog.csdn.net/wyw0000/article/details/140169124

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!