深度学习:词嵌入(Word Embedding)以及Keras实现

深度学习:词嵌入(Word Embedding)以及Keras实现

1.文本数据需要预处理成张量的形式,才能输入到神经网络。
2.文本划分成单元的过程叫做分词过程(tokenization),分成的单元叫做标记(token)。
3.文本可以划分为,单词、字符(abcdefg…)、n-gram等等。
4.一般用one-hot编码或者word-embedding将单词处理为数值张量。
5.one-hot编码简单,但是没有结构,任何两个单词之间的距离为 2 \sqrt2 2
6.word-embedding空间维度较小,空间中具有结构,相似的单词距离近,不相关的单词距离远。
7.embedding层的作用实际上可以看作是一个矩阵,将高维空间中的点映射到低维空间中。

----------------------------------分割线---------------------------------

正文:

神经网络无法对原始的文本数据训练,我们需要先将文本数据处理成数值张量,这一过程又叫文本向量化(vectorize)

文本向量化有多种策略:
1.将文本分割为单词,每个单词转换为一个向量
2.将文本分割为字符,每个字符转化为一个向量
3.提取单词或者字符的n-gram,将n-gram转换为一个向量

将文本分解成的单元叫做标记(token),将文本分解成标记的过程叫做分词(tokenization)

简单的讲,我们要讲文本数据输入到神经网络,让它去训练,但是神经网络并不能直接处理文本数据,我们需要讲文本数据预处理成神经网络能够理解的格式,也就是以下过程:

文本 → \rightarrow 分词 → \rightarrow 向量化

词向量化的方法主要有两种:
1.one-hot编码
2.word embedding

----------------------------------分割线---------------------------------

one-hot encoding(独热编码)

为什么叫做one-hot呢?每一个单词经过one-hot编码后,只有一个位置的元素为1,其他位置全为0。

比如说“the boy is crying”这句话(假设世界上额英文单词就这四个),经过one-hot编码后,
the 对应(1,0,0,0)
boy 对应(0,1,0,0)
is 对应(0,0,1,0)
crying 对应(0,0,0,1)
每一个单词对应向量中的一

  • 5
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值