场景描述 文本是一类非常重要的非结构化数据,如何表示文本数据一直是机器学习领 域的一个重要研究方向。 知识点 词袋模型(Bag of Words),TF-IDF(Term Frequency-Inverse Document Frequency),主题模型(Topic Model),词嵌入模型(Word Embedding) 最基础的文本表示模型是词袋模型。顾名思义,就是将每篇文章看成一袋子 词,并忽略每个词出现的顺序。具体地说,就是将整段文本以词为单位切分开, 然后每篇文章可以表示成一个长向量,向量中的每一维代表一个单词,而该维对 应的权重则反映了这个词在原文章中的重要程度。常用TF-IDF来计算权重,公式 为 其中TF(t,d)为单词t在文档d中出现的频率,IDF(t)是逆文档频率,用来衡量单词t对 表达语义所起的重要性,表示为: 将文章进行单词级别的划分有时候并不是一种好的做法,比如英文中的natural language processing(自然语言处理)一词,如果将natural,language,processing这 3个词拆分开来,所表达的含义与三个词连续出现时大相径庭。通常,可以将连续 出现的n个词(n≤N)组成的词组(N-gram)也作为一个单独的特征放到向量表示 中去,构成N-gram模型。另外,同一个词可能有多种词性变化,却具有相似的含 义。在实际应用中,一般会对单词进行词干抽取(Word Stemming)处理,即将不 同词性的单词统一成为同一词干的形式。 主题模型用于从文本库中发现有代表性的主题(得到每个主题上面词的分布 特性),并且能够计算出每篇文章的主题分布。 词嵌入是一类将词向量化的模型的统称,核心思想是将每个词都映射成低维 空间(通常K=50~300维)上的一个稠密向量(Dense Vector)。K维空间的每一 维也可以看作一个隐含的主题,只不过不像主题模型中的主题那样直观。 由于词嵌入将每个词映射成一个K维的向量,如果一篇文档有N个词,就可以 用一个N×K维的矩阵来表示这篇文档,但是这样的表示过于底层。在实际应用 中,如果仅仅把这个矩阵作为原文本的表示特征输入到机器学习模型中,通常很 难得到令人满意的结果。因此,还需要在此基础之上加工出更高层的特征。在传 统的浅层机器学习模型中,一个好的特征工程往往可以带来算法效果的显著提 升。而深度学习模型正好为我们提供了一种自动地进行特征工程的方式,模型中 的每个隐层都可以认为对应着不同抽象层次的特征。从这个角度来讲,深度学习 模型能够打败浅层模型也就顺理成章了。卷积神经网络和循环神经网络的结构在 文本表示中取得了很好的效果,主要是由于它们能够更好地对文本进行建模,抽 取出一些高层的语义特征。与全连接的网络结构相比,卷积神经网络和循环神经 网络一方面很好地抓住了文本的特性,另一方面又减少了网络中待学习的参数, 提高了训练速度,并且降低了过拟合的风险。 另外博主这些年来看过或者听过的一些不错的常用的上千本书籍,没准你想找的书就在这里呢,包含了互联网行业大多数书籍和面试经验题目等等。有人工智能系列(常用深度学习框架TensorFlow、pytorch、keras。NLP、机器学习,深度学习等等),大数据系列(Spark,Hadoop,Scala,kafka等),程序员必修系列(C、C++、java、数据结构、linux,设计模式、数据库等等)以下是部分截图 更多文章见本原创微信公众号「五角钱的程序员」,我们一起成长,一起学习。一直纯真着,善良着,温情地热爱生活。关注回复【电子书】即可领取哦。
05 文本表示模型
问题 有哪些文本表示模型?它们各有什么优缺点?
分析与解答
■ 词袋模型和N-gram模型
TF-IDF(t,d)=TF(t,d)×IDF(t) ,(1.5)
(1.6)
直观的解释是,如果一个单词在非常多的文章里面都出现,那么它可能是一个比 较通用的词汇,对于区分某篇文章特殊语义的贡献较小,因此对权重做一定惩 罚。■ 主题模型
■ 词嵌入与深度学习模型
给大家推荐一个Github,上面非常非常多的干货:https://github.com/XiangLinPro/IT_book
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算