【NLP】目前有比Topic Model更先进的聚类方式么?比如针对短文本的、加入情感分析的?...
点击上方,选择星标或置顶,每天给你送干货!
阅读大概需要6分钟
跟随小博主,每天进步一丢丢
编辑:忆臻
https://www.zhihu.com/question/298517764
本文仅作为学术分享,如果侵权,会删文处理
PyTorch中在反向传播前为什么要手动将梯度清零?
作者:霍华德
https://www.zhihu.com/question/298517764/answer/537539141
Topic Model (主题模型)如果从99年Hofmann提出pLSA开始,发展了近20年了。这20年里出现了很多东西,最近一些年也有长足的发展,只是被深度学习盖住了风头。
Topic Model近几年的发展主题是“更多的Topic”。传统LDA一般就搞几百个topic,最多上千个topic就够了。突然有些人说我们要搞更多的topic,我们要上百万的topic。google有个系统能搞50万topic,非常之牛啤。另外大家觉得,topic多了就能学习出更小的topic,表达更加细微的语义。
于是大家就搞起了,LDA从12年开始,逐步发展了SparseLDA, AliasLDA, LightLDA, WarpLDA。发展到2015年底,通过降低理论的时间复杂度,学100万topic已经非常快了,这的确是长足进步。
简单总结一下这些进步:
SparseLDA利用了稀疏性来加速算法。因为当上百万topic的时候,一个词只会属于少数的几个topic。但这个算法有个重大缺点,就是初始化时,模型一点都不稀疏,所以前几轮迭代会非常慢。
AliasLDA主要是利用Alias table来优化了Gibbs Sampling采样的时间复杂度,从而使得N个topic的采样的时间复杂度从O(N)降低到O(1)。
LightLDA的主要贡献在于采用了两个交替进行的独立采样过程,一个过程只依赖词,一个过程只依赖文档。
WarpLDA主要是LightLDA的工程优化。
不得不说LDA是词袋模型的巅峰之作,优雅的模型,优雅的推导过程,是一位优雅的古典美人。
作者:zhugehun
https://www.zhihu.com/question/298517764/answer/513015199
谢Nemo老师邀请,第一次在知乎回答技术问题~
首先,LDA本身是一个主题模型,主要是提取一段话的主题,不过由于一类文档属于同一个主题,所以也可以用作文本的聚类。
其次,所有的NLP任务基本都会有两种解决方案,
第一种是基于规则的解决方案,比如:解决情感分析的聚类问题,可以人工构建一个巨大的情感词的列表和一系列的人工规则,如:“开心”属于正面情感,“不”“开心”属于负面情感,“非常”“不”“开心”属于负面情感,“非常”“开心”属于正面情感等。
然后利用这个巨大的情感词库和这些规则就可以实现对文本情感方面的聚类。
第二种是基于统计学习的解决方案,这种解决方案主要包括两个部分,第一个部分是文本的表示学习,第二个部分是使用机器学习进行分类/聚类。
文本的表示学习本质上是用一个向量来表示词、句子、一段文本等,又有很多种不同的表示学习方式:
使用One-hot的方式来表示词或者字。
使用TF-IDF来表示句子或者文本。
使用Word2Vec表示词。
自己定义的特征提取方式,如根据偏旁、部首、拼音、词性、依存关系或者业务相关词等来作为一个句子的表示。
使用DeepLearning的方式来表示词或者文本,这块也是深度学习在NLP领域应用最广的一块,希望通过深度学习的方式来提取文本特征,使得文本嵌入到多维空间中之后能体现出文本的语义信息,如“king”-“male” = “queen”-“female”。在DeepLeaning做表示学习这块有几篇代表的论文:Word2Vec,Elmo和最新出来的BERT模型。
然后是使用机器学习的方式来对进行文本表示之后的向量进行分类和聚类。
如果是分类,可以采用LR/SVM/决策树/XGBOOST/DNN/Bayes等来分类。
如果是聚类,可以采用Kmeans等来聚类。
因为对文本表示学习的好坏很大程度上决定了聚类或者分类的效果,所以想要做好文本的聚类或者分类很大程度上决定于文本表示的好坏。
希望能够帮到您。
作者:Jesper
https://www.zhihu.com/question/298517764/answer/511437491
首先,你这是两个点,分类和聚类。
简单说说分类好了,传统方法来讲,将文本通过tfidf、word2vec、glove等各种花式取词向量或句向量。通过传统分类器,如svm,lr等,简单暴力,可做为base model,可达到一定的效果。
近几年吵得火热的深度,效果就更为显著了。首先就是14年Kim大神提出的text-cnn, 简单的神经网络,却达到了显著的效果。然后就是各种LSTM, 单向,双向什么的。CNN呢,就是卷积层和池化层不停做文章。当然不得不提attention, 加attention显然理论上效果更好。补充一句,简单粗暴的话,首推fasttext。
推荐阅读:
【ACL 2019】腾讯AI Lab解读三大前沿方向及20篇入选论文
【一分钟论文】IJCAI2019 | Self-attentive Biaffine Dependency Parsing
【一分钟论文】 NAACL2019-使用感知句法词表示的句法增强神经机器翻译
【一分钟论文】Semi-supervised Sequence Learning半监督序列学习
【一分钟论文】Deep Biaffine Attention for Neural Dependency Parsing
详解Transition-based Dependency parser基于转移的依存句法解析器
经验 | 初入NLP领域的一些小建议
学术 | 如何写一篇合格的NLP论文
干货 | 那些高产的学者都是怎样工作的?
一个简单有效的联合模型
近年来NLP在法律领域的相关研究工作
我就知道你“在看”
【NLP】目前有比Topic Model更先进的聚类方式么?比如针对短文本的、加入情感分析的?...相关推荐
- 深度学习保姆级别之NLP入门文本分类之情感分析
缘起 作为一个菜鸟小硕,无师自通入门NLP已经一年多了,想着自己的第一个项目就是情感分析,以及第一篇CCF B类中文期刊也是情感分析,决定开一个关于文本分类的专栏,提供保姆级别的模型训练过程.很多同学 ...
- NLP复习资料(7)-机器翻译、文本分类、情感分析
NLP复习资料 国科大,宗老师<自然语言处理>课程复习笔记,个人整理,仅供参考. 此部分为手稿,高清图下载见链接:https://download.csdn.net/download/si ...
- LDA︱基于LDA的Topic Model变形+一些NLP开源项目
一.LDA的变形 转载于:转:基于LDA的Topic Model变形 Topic Model最适合的变种是加入先验信息: 我相信题主使用的是完全无监督的Topic Model,然而这实在是过于不wor ...
- 『NLP打卡营』实践课5:文本情感分析
『NLP直播课』Day 5:情感分析预训练模型SKEP 本项目将详细全面介绍情感分析任务的两种子任务,句子级情感分析和目标级情感分析. 同时演示如何使用情感分析预训练模型SKEP完成以上两种任务,详细 ...
- NLP之TEA:自然语言处理之文本情感分析的简介、算法、应用、实现流程方法、案例应用之详细攻略
NLP之TEA:自然语言处理之文本情感分析的简介.算法.应用.实现流程.实现方法之详细攻略 目录 TEA的简介 TEA的应用 TEA的实现流程 TEA的实现方法 T1.词袋模型 TEA的案例应用 TE ...
- NLP自然语言处理之情感分析分析讲解、知识构建
!!!!!!不要急着代码,搞清楚原理知识结构才下手,以后还指着它吃饭呢,又不是水一篇论文当混子!!!!!!! !!!!!!书越读越薄,本文源自:https://blog.csdn.net/linxid ...
- NLP应用:情感分析和自然语言推断
0 序言 回顾: 如何在文本序列中表示词元 训练了词元的表示 这样的预训练文本可通过不同的模型架构,放入不同的下游NLP任务 之前的提到的NLP应用没有使用 预训练 本章: 重点:如何应用 DL表征学 ...
- AI学习笔记(十八)NLP常见场景之情感分析
目录 情感分析 基于情感词典的传统算法 基于深度学习的算法 情感分析 情感分析是自然语言处理中常见的场景,对于指导产品更新迭代具有关键性的作用. 通过情感分析,可以挖掘产品在各个维度的优劣,从而明确如 ...
- 【自然语言处理NLP】中文语料整理【情感分析、文本分类、摘要、实体分析】
中文NLP语料整理 新闻文本分类语料 情感分析语料 实体分析语料 垃圾分类语料 个人开发在做很多NLP相关任务的时候,语料的寻找十分头疼. 有很多公开的语料,被他人收费,或要积分下载等等. 对平时开发 ...
- Topic Model
基于LDA的Topic Model变形 最近几年来,随着LDA的产生和发展,涌现出了一批搞Topic Model的牛人.我主要关注了下面这位大牛和他的学生: David M. BleiLDA的创始者, ...
最新文章
- 一场库文件的远程修复
- Linux之文件权限命令
- openlayer右键菜单_使用OpenLayers3 添加地图鼠标右键菜单
- terminal怎么运行c语言文件,在mac电脑的terminal里该如何运行c语言
- 文巾解题 264. 丑数 II (剑指 Offer 49. 丑数)
- 差分能量分析介绍(二)
- java rabbitmq 绑定_RabbitMQ:交换,队列和绑定 - 谁设置了什么?
- 解决Scrapy使用pipline保存到数据库后返回None
- console线驱动安装_文通证件识别SDK和驱动安装使用说明
- NP、NP-完全、NP-难问题
- 程序员如何在 HTTPS 中高效配置通配符证书?| 技术头条
- 光凭 5G 根本无法解决宽带问题!
- 菜单的无限极分类实现
- 【转】7个顶级心理预言
- Matlab计算空间权重矩阵(地理距离和经济地理距离)
- 新媒体广告摘录 形泰传媒 尹语堂®
- matlab x~=0
- PDF英文文档免费翻译成中文
- OAuth2授权方式
- 父亲节!程序员给父亲一份代码信
热门文章
- 使用Docker跑MySQL 作为Django的存储后端
- 网络语音视频技术浅议(附多个demo源码下载)
- C# 遍历DLL导出函数
- 写在2012的最后一天
- 用 Javascript 验证表单(form)中多选框(checkbox)值
- 20190823 尚硅谷MySQL核心技术
- http/tcp/ip/端口
- 百度智能云新型产品了解
- 【SpringCloud Eureka源码】从Eureka Client发起注册请求到Eureka Server处理的整个服务注册过程(下)...
- 查询记录rs.previous()使用