

一个绝妙的idea:变长文本序列转换成定长向量
source link: https://allenwind.github.io/blog/6336/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

NLP、深度学习、机器学习、Python、Go
一个绝妙的idea:变长文本序列转换成定长向量
NLP中有一个平淡无奇且简单的idea,但思考片刻发现,这真是一个大道至简的绝妙idea~
NLP通常是要对不定长的文本(不定长的词序列)建模,在把文本输入到机器学习模型前需要把其转换为定长的向量。咋想一下,这太难了!怎么能把变长的序列转换为定长的向量呢?
直到遇到词袋模型(BOW,Bag of Words)一切都迎刃而解。BOW把文档看做是词的集合,不考虑词序信息,不考虑语法。例如文档d=c1c2c3…ckd=c1c2c3…ck,BOW直接把它看做是词cici的集合,
dbow={c1,c2,…,ck}dbow={c1,c2,…,ck}然后统计大量的文档D=[d1,d2,…,dm]D=[d1,d2,…,dm],获得词汇表V=c1,c2,…,cnV=c1,c2,…,cn,对于文档didi的向量化为,
vetorize(di)=[wi,1,wi,2,…,wi,n]vetorize(di)=[wi,1,wi,2,…,wi,n]该取值为布尔权重,只有两个取值,
wi,j={10wi,j={10当文档didi包括词cjcj时取值未1,否则为0。当然,取值还可以是词频,TF-IDF等等,这些都是后话了。
于是每个文档dd都可以向量化为一个1×n1×n大小的特征向量,所有的文档可以组成矩阵,
Dm,n=⎡⎢ ⎢ ⎢ ⎢ ⎢⎣w1,1w1,2…w1,nw2,1w2,2…w2,n⋮⋮⋮⋮wm,1wm,2…wm,n⎤⎥ ⎥ ⎥ ⎥ ⎥⎦Dm,n=[w1,1w1,2…w1,nw2,1w2,2…w2,n⋮⋮⋮⋮wm,1wm,2…wm,n]矩阵的第ii行表示文档didi的向量化特征。
于是,我们就把变长的文本转换成定长的向量。当然基于BOW获得的文档向量化有如下问题:
- 向量维度大小为词汇表大小,对于中文数据,这个向量通常非常大
- 向量是稀疏的
这些都是小问题,通过一定的技巧修复即可。
这里也强调的是,就是通过简单的词袋模型(BOW,Bag of Words),直接解决了看似复杂的文档向量化问题,可谓大道至简!
转载请包括本文地址:https://allenwind.github.io/blog/6336
更多文章请参考:https://allenwind.github.io/blog/archives/
Recommend
-
25
17个绝妙小设计,拯救“脏乱差”卫生间
-
28
-
17
在NLP中,我们经常要去比较两个句子的相似度,其标准方法是想办法将句子编码为固定大小的向量,然后用某种几何距离(欧氏距离、$\cos$距离等)作为相似度。这种方案相对来说比较简单,而且检索起来比较快速,一定程度上能满足工程需求。
-
63
©PaperWeekly 原创 · 作者|海晨威 学校|同济大学硕士生 研究方向|自然语言处理 在 NLP 中,文本数据大都是变长...
-
8
优雅绝妙的Javascript跨域问题解决方案 浏览:5953次 出处信息 关于Javascript跨域问...
-
8
[Golang]Map的一个绝妙特性 abv123456789 · 2015-03-06 12:00:01 · 79794 次点击 · 预计阅读时间 6 分钟 · 大约8小时之前 开始浏览 ...
-
6
摘要:本文对 100 万搜索引擎用户的 13 亿搜索序列文本进行探索分析,对高端车用户以及商学院人群做了描述对比,并针对用户搜索高端车品牌过程中的动态选择行为进行建模。首先,我们发现,在人群划分上,高端车用户和商学院用户表现出更加高端的属性,这主要表...
-
4
绝妙的个人生产力(Awesome Productivity 中文版) 这是一份开放的由中文社区共建的绝妙系列精选资源清单,专注于提升个人生产力的知识方法和工具。 本单由EastLakeSide社区发起,更加偏向于国内中文用户喜好,会加入流行的中文...
-
3
《Fluent Python》 读书笔记:文本和字节序列 发布日期 2021-12-31 最后修改 2022-01-14 PYTHON 阅读 1 分钟 阅读量 113
-
5
java | 定长解码器 | 犀牛的博客 犀牛的博客 姑苏城...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK