主题模型综述:短文本、细粒度、加入先验知识、作者写作偏好、主题内涵随时间的变迁、融入词嵌入特性、语言模型加持

原文链接:https://www.zhihu.com/question/34801598/answer/765580727

主题模型当然有用咯,谁用谁知道!这次我来展示下它的7个“变种”(短文本、细粒度、加入先验知识、作者写作偏好、主题内涵随时间的变迁、融入词嵌入特性、语言模型加持):

  • Biterm Topic Model
  • Multi-Grain Topic Model
  • Topic Modeling with Minimal Domain Knowledge
  • Author-Topic Model
  • Dynamic Topic Models
  • Embedded Topic Model /LDA2VEC
  • Topically-Driven-Language-Model

(1)短文本主题建模的利器 ---Biterm Topic Model

从原理上说,BTM是一个非常适合于短文本的topic model,同时,作者说它在长文本上表现也不逊色于LDA。
BTM模型首先抽取biterm词对。抽取的方法是:去掉低频和stopword;对于短文本(如tweets或百度知道等),取一个doc中的任意两个词对 ;对于长文本,需要两个词在一定的距离之内,这个窗长一般取到30~60效果较好.然后通过biterm对文档集合进行建模.

LDA的问题是稀疏性。LDA中每个文档对应一个theta,每个词对应一个z。对于短文本,由于词少,z-->theta这一步的统计可能不具备统计意义。因为每个文本单独对应于theta,所以增加文本数量不能克服这种短文本带来的缺陷。

传统的解决之道有两个。1.是将多个短文本聚合成一个长文本。比如LDA-U将一个user的多个发言聚合在一起减少稀疏影响。但这种做法与应用相关,需要有外部信息来辅助找到聚合的单位。2.是利用一个长文档文本集作为辅助数据,将长文本的一些信息先以某种形式抽取反应到先验中,从而间接地提供给短文本。看似很美好,问题在于,与transfer learning类似,这个知识能不能传还两说,得先找到一个总体主题分布类似的长文档集。

总体来说,LDA并不适用于短文本,LDA-U略好,但是基于user的聚合受限于应用和领域知识。

mixture of unigram在这里表现比LDA系列更好,原因是它对于所有文档用同一个theta,克服了短文本稀疏性问题。这个模型的问题是,它假设了整个文档对应于一个z,这比较粗糙和strong了,会导致一个topic类内距离很大,因为对于长文本,较远的段落之间可能语义差异很大了。在长文本以及K较大的时候,这个模型效果会比较差,但在短文本上,这个缺陷倒是不那么明显,因此效果好于LDA系列

最后是BTM模型。可以认为BTM综合了上述二者的优点。BTM跟mix一样,利用了整个文本集合来估计一个theta,解决了稀疏问题(我们通常有海量数据)。放宽了mix中对整个doc必须同属于一个z的约束(相当于从整doc放松到了窗口长度类的两个词),加强了LDA中每个词对应于一个Z的假设(BTM中约束了窗长内的两个词组成一个biterm对应于一个z)。这个假设很接近于人类认知,因为我们知道,通常在较短的一段文本内,topic变化不大。

说一句题外话,前几天听了一个知识图谱的讲座。他们也是用一个共现词对来排歧作为LDA的补充。比如 李娜+青藏高原 这个词对,可以很大程度上将李娜和其他人(比如另一个做音乐的李娜,无法被LDA所区分)区分开来。unigram是一个极端,一大堆词是另一个极端了。BTM相当于是这种思路在TM系列模型中的一个探索。从另一个角度,2gram或许也可以替换term作为LDA的单元,而BTM的尝试是将连续的2gram放开,允许中间有一个窗长。总的来说,这是一个相当有意思的思路,而且非常nature。

原文:blog.csdn.net/windows2/

(2)多主题文本建模的利器 --- Multi-Grain Topic Model

考虑这样一个应用场景,有关于联想、戴尔、苹果三台笔记本电脑的若干评论数据,Multi-Grain Topic Model(细粒度的主题模型)基于全局和局部信息,既发现了宏观上的大主题,比如评论对应的品牌 --- 联想、戴尔、苹果;微观上的小主题,苹果电脑对应的性能话题、联想电脑对应的性价比话题等,二者相互补充,比LDA返回的信息量要大很多。

<img src="https://pic4.zhimg.com/50/v2-1d36c2d38c59f2feac9dadd5b32bcca5_hd.jpg?source=1940ef5c" data-size="normal" data-rawwidth="711" data-rawheight="326" data-default-watermark-src="https://pic1.zhimg.com/50/v2-3f944888da36cb34f0ac2b5da2169bef_hd.jpg?source=1940ef5c" class="origin_image zh-lightbox-thumb" width="711" data-original="https://pic2.zhimg.com/v2-1d36c2d38c59f2feac9dadd5b32bcca5_r.jpg?source=1940ef5c"/>
几款电子产品的Multi Grain Topic Model分析

(3)掺入少许先验知识的主题模型---Topic Modeling with Minimal Domain Knowledge

Topic Modeling with Minimal Domain Knowledge(加入少许先验知识的主题模型)通过关联解释(Correlation Explanation )进行主题建模会产生丰富的主题,这些主题可以最大限度地提供一组文本数据的信息。这种方法优化了稀疏二进制数据(Sparse Binary Data)的Correlation Explanation框架,允许对大型语料库进行主题建模。此外,该方法支持分层主题建模(Hierarchical Topic Modeling),提供一种整合领域知识的机制(Integrating Domain Knowledge) ---通过锚定词汇(Anchor Words)和信息瓶颈(The Information Bottleneck)来实现。这种半监督的锚定(Semi-Supervised Anchoring)是灵活的,允许用户提升进主题表示的效果 --- 通过添加指定主题的锚定词汇来得到解释性较高的主题。

与LDA(隐狄利克雷模型)不同,CorEx主题模型及其分层和半监督扩展不会对文档的生成方式做出任何假设。但是,它们仍然可以在各种指标中找到具有一致性和有意义的主题。一篇TACL论文对LDA的无监督和半监督变体进行了详细比较:

Gallagher,Ryan J.,Kyle Reing,David Kale和Greg Ver Steeg,《Anchored Correlation Explanation: Topic Modeling with Minimal Domain Knowledge》 ,2017

此项目可用于任何稀疏且二进制的数据集(Any Sparse Binary Dataset)。原则上,0 ~ 1范围内的连续值也可以用作输入,但是其效果未得到很好的测试。

以下以50,000条汽车评论数据为例,展示该模型的核心代码和结果:

#词汇表
words = list(np.asarray(text_pred.get_feature_names()))

#加入锚定词汇,分别是汽车油耗、外观、噪音和空间这四个先验主题关键词列表
anchor_words = [[‘油耗’,‘省油’],
[‘外观’,‘外形’,‘颜值’,‘线条’,‘前脸’,‘时尚’,‘造型’,‘流畅’],
[‘噪音’,‘胎噪’,‘噪音控制’,‘隔音’],
[‘空间’,‘座位’,‘拥挤’]]

训练带入先验知识的主题模型

topic_model = tp.Coret(
n_hidden=20 ,
max_iter=100000,
verbose=0,
count=‘fraction’,
seed=2019

                  )  

topic_model.fit(X_pro , #输入为稀疏词汇表示
words=words,
anchors = anchor_words,
anchor_strength=10 #锚定强度,数值越大,主题模型训练的结果受锚定词汇的影响就越大
)

从训练好的主题模型中看看某类结果:

topic_model.get_topics(topic=1, n_words=50)

[(‘外观’, 0.4301756671083077),
(‘颜值’, 0.10011823545089653),
(‘外形’, 0.06618560083637216),
(‘时尚’, 0.054193038069410004),
(‘前脸’, 0.04076140897169324),
(‘线条’, 0.03466495921583512),
(‘造型’, 0.03414006949798674),
(‘外观设计’, 0.01699050254486039),
(‘流畅’, 0.015337625168866267),
(‘动感’, 0.013126344098356961),
(‘运动感’, 0.009363907127811736),
(‘审美’, 0.008732302601110832),
(‘流线型’, 0.006803817188302315),
(‘流线’, 0.005895597474292352),
(‘修长’, 0.005593062618077139),
(‘大气’, 0.0429432014991769),
(‘漂亮’, 0.02758077948725461),
(‘好看’, 0.026179714467314867),
(‘霸气’, 0.019231105222624518),
(‘车身’, 0.011562041254648874),
(‘帅气’, 0.010466043602329844),
(‘年轻’, 0.009713247431314121),
(‘耐看’, 0.005438103102823669),
(‘侧面’, 0.005305290826161348),
(‘硬朗’, 0.0038887516195419613),
(‘优美’, 0.0029589904380173705),
(‘拉风’, 0.002908911717486192),
(‘担当’, 0.0023775974040011207),
(‘年轻化’, 0.0018363016664206797),
(‘前卫’, 0.001832502305643267),
(‘颜控’, 0.0015342721148661927),
(‘美观’, 0.0014017725126286868),
(‘外貌协会’, 0.0012673785507941234),
(‘始于’, 0.0012147432527814328),
(‘最喜欢的’, 0.0010902856328509434),
(‘大嘴’, 0.0010611885609235778),
(‘非常时尚’, 0.0009028912355990731),
(‘时尚运动’, 0.0008869927507607518),
(‘霸气十足’, 0.0008189071364794647),
(‘霸气侧漏’, 0.0008159337276194864),
(‘我很喜欢’, 0.0007621695922389888),
(‘高大’, 0.0007571559888997631),
(‘征服’, 0.0007147440291617015),
(‘很喜欢’, 0.0006925125995887599),
(‘运动时尚’, 0.0006689225076177874),
(‘耐看型’, 0.0005580945500139648),
(‘正义’, 0.0005483286604124153),
(‘威武霸气’, 0.0005316584992590537),
(‘改款’, 0.0005285499612510017),
(‘小巧’, 0.0005192749777102133)]

再看看整体的效果:

topics = topic_model.get_topics(n_words=30)

for topic_n,topic in enumerate(topics):
words,mis = zip(*topic)
topic_str = str(topic_n)+’: ‘+’,’.join(words)
print(topic_str)

0: 油耗,省油,平均,市区,百公里,综合,经济,上下班,磨合期,接受,油价,一公里,堵车,百公里油耗,惊喜,省钱,最低,节省,油钱,毛钱,费油,七个,油表,拥堵,国道,下降,成本,想象,郊区,预期
1: 外观,颜值,外形,时尚,前脸,线条,造型,外观设计,流畅,动感,运动感,审美,流线型,流线,修长,大气,漂亮,好看,霸气,车身,帅气,年轻,耐看,侧面,硬朗,优美,拉风,担当,年轻化,前卫
2: 隔音,噪音,胎噪,噪音控制,效果,听不到,风噪,安静,降噪,关上,很安静,听不见,隔绝,两个世界,外界,窗户,杂音,车外,静谧,nvh,车隔音,隔音棉,抑制,什么声音,密封,噪声,开窗,超棒,地步,静音性
3: 空间,拥挤,座位,后排,宽敞,后备箱,乘坐,内部,储物,车内,前排,腿部,身高,超大,头部,够用,轴距,二郎腿,充足,利用率,压抑,宽松,宽裕,三个人,个子,充裕,成年人,拉货,前后排,绰绰有余
4: 代步,问题,生活,用车,容易,天气,工具,平常,不好,享受,下雨,下班,车里,车真,过车,gl8,回老家,跑跑,外面,不多,放松,上车,没出,毛病,起码,没事,下车,开开,外出,第二天
5: 满意,车子,喜欢,车最,适合,家用,就是他,部分,类型,面子,和动力,家庭,莫过于,最最,探界者,需求,我喜欢的,三点,卡罗拉,说到,对我来说,说到最,喜欢的,商务,无非,普拉多,女生,霸道,女孩子,比较适合
6: 座椅,舒服,音响,放倒,调节,舒适,包裹,皮质,bose,视野,包裹性,开阔,地板,真皮,音质,位置,中央,舒适度,音乐,柔软,坐上,玻璃,长途,腰部,纯平,支撑,一键,主驾驶,坐姿,扶手
7: 吸引,符合,颜色,红色,年轻人,白色,第一眼,回头率,魂动,气质,犀利,黑色,深深,个性,不失,低调,外表,张扬,稳重,车漆,骚气,优雅,眼看,眼球,看脸,美式,轿跑,大街,口味,独特
8: 非常,不错,同级,优势,启辰,无论是,d60,空间表现,总体,优点,别车,一体,水平,感觉特别,真心,配合,均匀,体现,整个车,稍微,值得一提的,提升,空间感觉,人马,发挥,程度,实用性,缺点,车做,组合
9: 价格,性价比,价位,优惠,车型,品牌,级别,合资,便宜,实惠,合资车,国产车,预算,国产,同等,力度,合适,大众,迈锐宝,中华,看过,销售,十万,落地,划算,哈弗,值得,裸车,车中,亲民
10: 动力,发动机,超车,加速,变速箱,油门,强劲,起步,提速,推背感,涡轮,平顺,充沛,换挡,速度,给油,增压,高速,输出,随叫随到,排量,很快,声音,一脚,顿挫感,舍得,马力,自然吸气,顿挫,自吸
11: led,格栅,进气,大灯,晚上,尾灯,日间行车灯,车灯,镀铬,日行灯,炯炯有神,前大灯,转向灯,远近,亮度,灯光,视觉,眼睛,车顶,流水,有神,大眼睛,装饰,协调,点亮,夜间,光源,眼大,白天,冲击力
12: 操控,底盘,驾驶,精准,转向,扎实,灵活,转弯,轻松,行驶,性能,方向,上手,操控性,乐趣,指向,路面,调教,悬挂,通过性,颠簸,轻盈,平稳,过程,地盘,虚位,体验,调校,路况,弯道
13: 功能,配置,自动,巡航,实用,倒车影像,钥匙,全景,后视镜,电动,导航,胎压监测,天窗,空调,一键启动,大屏,影像,齐全,中控,自适应,加热,启动,雷达,启停,定速,倒车,定速巡航,多功能,手机,语音
14: 内饰,设计,做工,风格,用料,精致,整体,豪华,车头,上档次,十足,简洁,科技感,大方,腰线,给人,高端,饱满,中控台,尾部,搭配,车尾,档次,简约,细节,整车,轮毂,气息,充满,圆润
15: 马自达,阿特兹,宝马,创驰蓝天,蓝天,凯美瑞,新款,老款,跑车,奥迪,奔驰,凯迪拉克,君威,有点,昂克赛拉,传统,完美,全新,日系车,cx5,东瀛,形容,雅阁,设计师,设计理念,惊艳,改变,钢丝,称号,打动
16: 朋友,选择,时间,suv,试驾,当初,提车,选车,老婆,一眼,回家,家里,cx4,一段,身边,看中,轿车,大家,推荐,网上,同事,打算,差不多,纠结,相中,媳妇,看上,上班,好多,印象
17: 孩子,一家人,出行,自驾游,接送,小孩,出门,家人,周末,出去玩,老人,出游,游玩,全家,行李,旅行,大人,旅游,出去旅游,睡觉,安全座椅,物品,宝宝,排空,行李箱,休息,家里人,购物,排放,搬家
18: #NUMBER,公里,担心,不用,显示,抬头,开车,以内,时速,宝骏,体重,来回,双离合,手自一体,小时,实际,爱信,加油,保持,里程,数据,一千,全程,一万,车速,正常,死角,老家,一趟,自动挡
19: 系统,方向盘,斑马,手感,仪表盘,液晶,安全性,操作,保养,电子,新手,质量,刹车,保障,放心,材料,省心,清晰,行车,按键,仪表,费用,保证,后期,耐用,助力,品质,软质,碰撞,材质

(4)揭示不同作者写作主题分布的主题模型 — Author-Topic Model

ATM模型(author-topic model)也是“概率主题模型”家族的一员,是LDA主题模型(Latent Dirichlet Allocation )的拓展,它能对某个语料库中作者的写作主题进行分析,找出某个作家的写作主题倾向,以及找到具有同样写作倾向的作家,它是一种新颖的主题探索方式。

笔者之前分析过“人人都是产品经理”上作家的写作主题,分析某些牛X作家喜欢写哪方面的文章(比如“产品运营”、“数据分析”、“新媒体运营”等)写作了啥,主题相似度的作者有哪些。

首先,先从文本中“析出”若干主题,经过探索,10个主题的区分度正好。根据各个主题下的主题词特征,笔者将这10个主题归纳为 :“行业动态”、“电商运营”、“商业模式”、“产品运营”、“社交媒体”、“互金产品”、“数据运营”、“用户研究”、“产品设计”和“新媒体运营”。

<img src=“https://pic3.zhimg.com/50/v2-8213085ef8a061f83608bb96ae5a11a9_hd.jpg?source=1940ef5c” data-size=“normal” data-rawwidth=“814” data-rawheight=“585” data-default-watermark-src=“https://pic4.zhimg.com/50/v2-6ece5f22d2927fe74d654f6f470ff230_hd.jpg?source=1940ef5c” class=“origin_image zh-lightbox-thumb” width=“814” data-original=“https://pic2.zhimg.com/v2-8213085ef8a061f83608bb96ae5a11a9_r.jpg?source=1940ef5c”/>
所有作者涉及的主题

同时,在数据处理的过程中,模型建立了作者(author)、主题(topic)及文档(document)之间的映射关联关系,以dict的形式保存数据。

<img src=“https://pic4.zhimg.com/50/v2-f97caf91659d1eacc6de32eb03cd8fe7_hd.jpg?source=1940ef5c” data-size=“normal” data-rawwidth=“762” data-rawheight=“340” data-default-watermark-src=“https://picb.zhimg.com/50/v2-56118d0c0938f3319b9e3006b7def58e_hd.jpg?source=1940ef5c” class=“origin_image zh-lightbox-thumb” width=“762” data-original=“https://pic1.zhimg.com/v2-f97caf91659d1eacc6de32eb03cd8fe7_r.jpg?source=1940ef5c”/>
建立每个作者的文章隶属关系字典(每个数值ID代表一篇文章)
<img src=“https://pic2.zhimg.com/50/v2-eff26ea14b1848586d51b1d59b9cbb04_hd.jpg?source=1940ef5c” data-size=“normal” data-rawwidth=“577” data-rawheight=“254” data-default-watermark-src=“https://pic2.zhimg.com/50/v2-de2e9a7e683f9b6a843be1ae88d47b6b_hd.jpg?source=1940ef5c” class=“origin_image zh-lightbox-thumb” width=“577” data-original=“https://pic4.zhimg.com/v2-eff26ea14b1848586d51b1d59b9cbb04_r.jpg?source=1940ef5c”/>
鄙喵的写作主题分布
<img src=“https://pic3.zhimg.com/50/v2-d559927c22c2a7ab73daeb22ff8906e0_hd.jpg?source=1940ef5c” data-size=“normal” data-rawwidth=“658” data-rawheight=“233” data-default-watermark-src=“https://pic1.zhimg.com/50/v2-933d30f7186b17d00f8c1c9ac0047636_hd.jpg?source=1940ef5c” class=“origin_image zh-lightbox-thumb” width=“658” data-original=“https://pic4.zhimg.com/v2-d559927c22c2a7ab73daeb22ff8906e0_r.jpg?source=1940ef5c”/>
鄙喵写过的若干文章(局部)
<img src=“https://pic4.zhimg.com/50/v2-aa804de324ab7d26f742f10b9ed4a762_hd.jpg?source=1940ef5c” data-size=“normal” data-rawwidth=“880” data-rawheight=“293” data-default-watermark-src=“https://pic1.zhimg.com/50/v2-2339cb06ecc02c0159de7311538cc070_hd.jpg?source=1940ef5c” class=“origin_image zh-lightbox-thumb” width=“880” data-original=“https://pic3.zhimg.com/v2-aa804de324ab7d26f742f10b9ed4a762_r.jpg?source=1940ef5c”/>
运营大神张亮的写作主题分布
<img src=“https://pic3.zhimg.com/50/v2-3f4ebfb0076d6b3b258af24ed5801d44_hd.jpg?source=1940ef5c” data-size=“normal” data-rawwidth=“398” data-rawheight=“392” data-default-watermark-src=“https://pic3.zhimg.com/50/v2-9e621157f641e16f19d23e74a38525b1_hd.jpg?source=1940ef5c” class=“content_image” width=“398”/>
跟张亮大神写作主题类似的作家

(5)分析话题热点变迁的主题模型 — Dynamic Topic Models

蕴含时间因素的主题,尽管它包含的关键词会随着时间的变化而产生相应的变化,但它如构成要素不断更新换代的“忒修斯之船(The Ship of Theseus)”一般,即使同一主题下的开端和末尾中的主题词没有一个是相同的,但还是原先的主题,保留有相同的语境。(By having a time-base delement to topics, context is preserved while key-words may change.)

针对某个话题随时间的变迁情况(This implements topics that change over time)。鄙喵运用的模型是DTM模型 (Dynamic Topic Models ),它是“概率主题模型”家族的一员,用于对语料库中主题演变进行建模。

还是针对人人都是产品经理上的文章数据,先从“产品运营&数据分析”中“解析”出如下6个子话题,它们是“运营”、“商业模式”、“流量运营&数据分析”、“品牌营销&数据分析”、“电商运营”和“内容运营”,如下表所示:

<img src=“https://pic4.zhimg.com/50/v2-fe9cd464aa5930cdd8c2d170f7bc17ce_hd.jpg?source=1940ef5c” data-size=“normal” data-rawwidth=“952” data-rawheight=“481” data-default-watermark-src=“https://pic4.zhimg.com/50/v2-dc852a8741df9f7e597b896bc43d7c3a_hd.jpg?source=1940ef5c” class=“origin_image zh-lightbox-thumb” width=“952” data-original=“https://pic4.zhimg.com/v2-fe9cd464aa5930cdd8c2d170f7bc17ce_r.jpg?source=1940ef5c”/>
从人人都是产品经理文本数据中解析出的若干主题

针对Topic2,也就是“流量运营&数据分析”在2012.05~2017.07间的话题变迁情况感兴趣,于是将这6年间出现的主题词重新整合,制成下面的热力图:

<img src=“https://pic1.zhimg.com/50/v2-5765c9581d54f99e6115e566367fb8c6_hd.jpg?source=1940ef5c” data-size=“normal” data-rawwidth=“772” data-rawheight=“871” data-default-watermark-src=“https://pic1.zhimg.com/50/v2-60ce3512652d0677fe1ef3a790a66358_hd.jpg?source=1940ef5c” class=“origin_image zh-lightbox-thumb” width=“772” data-original=“https://pic4.zhimg.com/v2-5765c9581d54f99e6115e566367fb8c6_r.jpg?source=1940ef5c”/>
Topic2(“流量运营&amp;amp;amp;amp;amp;amp;amp;数据分析”)在2012.05~2017.07间的话题变迁情况

上图中纵轴是主题词,横轴是年份,颜色由浅入深代表数值的由小到大。从中可以明显的看出,“流量运营&数据分析”子话题下的“数据”、“数据分析”、“运营”和“业务”在该话题中始终处于“核心地位”,保持较高且稳定的word_prob值。而“渠道”、“游戏”、“互金”在近3年的word_prob值有了较大的提升,说明社区的作者在近期比较关注这3个主题词所代表的领域,间接表明它们在互联网中的话题热度呈现上升趋势。

(6)与词嵌入融合的主题模型 — Embedded Topic Model

主题模型的主要功能之一就在于分析大量文档以学习其中有意义的词汇模式和语义内涵。 但现有的主题模型都存在一个问题 — 在处理巨量且存在许多长尾词、低频词的情况下,现有的很多主题模型都无法学习到具有可解释性、便于人们理解的主题。 为此,嵌入式主题模型(ETM,Embedded Topic Model )应运而生,这是一种将传统主题模型与词嵌入(Word Embeddings)“嫁接”在一起的文档生成模型。 特别地,它使用分类分布(Categorical Distribution)对每个词汇进行建模,其自然参数是词嵌入及其嵌入的指定主题(Assigned Topic)之间的内积。

<img src=“https://pic2.zhimg.com/50/v2-526929e3608e89f638e665e3b899f082_hd.jpg?source=1940ef5c” data-size=“normal” data-rawwidth=“785” data-rawheight=“684” data-default-watermark-src=“https://pic3.zhimg.com/50/v2-982b8ad87069f5549ab9bedb75b37bbf_hd.jpg?source=1940ef5c” class=“origin_image zh-lightbox-thumb” width=“785” data-original=“https://pic2.zhimg.com/v2-526929e3608e89f638e665e3b899f082_r.jpg?source=1940ef5c”/>
“纽约时报”语料库的180万篇文章中来自不同文档模型的七个最常用主题的前五个单词,词汇量为212,237,K = 300(个主题)


由此,即使是在用于海量词汇表且存在稀有词、长尾词的情况下,ETM仍然能发现可解释的主题。 在相关作者的论文中,发明者还表示它在主题质量和预测性能方面优于现有的主题模型,例如LDA。

(7)理解自然语言的利器—LDA2VEC

lda2vec模型试图将word2vec和LDA中的最佳部分混合到一个框架中。 word2vec在捕捉词汇之间的词法关系方面能力很强,但是生成的向量在很大程度上无法解释,并且很难表征文档。 而另一方面,LDA可以被很好地被理解,但是不能像word2vec这样对本局部词汇关系进行建模。 此时LDA2VEC应运而生,该模型可以构建词汇和文档主题,使其可解释。

与LDA相比,lda2vec还包含更多的上下文语境和语义特征。 LDA表明词汇是由文档向量所生成的; 但是文本数据中可能会有各种影响主题的“边信息”。 例如,某个客户在某个特定时间、某个特定区域中写了关于某个特定item ID的评论。 在这种情况下,lda2vec会提供所有的item(例如,从衬衫中分离牛仔裤),时间(冬季与夏季),地区(沙漠与沿海)和客户(运动与职业装)的主题。

<img src=“https://pic1.zhimg.com/50/v2-2a2ffa93ae17fd1781c5395b9cd4c783_hd.jpg?source=1940ef5c” data-caption="" data-size=“normal” data-rawwidth=“899” data-rawheight=“920” data-default-watermark-src=“https://pic2.zhimg.com/50/v2-04a18e1a59626e5568a9ecc263e0c210_hd.jpg?source=1940ef5c” class=“origin_image zh-lightbox-thumb” width=“899” data-original=“https://pic1.zhimg.com/v2-2a2ffa93ae17fd1781c5395b9cd4c783_r.jpg?source=1940ef5c”/>

(8)Topically-Driven-Language-Model

本文作者Jey Han Lau, Timothy Baldwin and Trevor Cohn (2017))创造性的将LDA主题模型和语言模型融合在了一起,可以通过语言模型生成的语句来解释主题,将其中的语言模型换成时下流行且强大的GPT2,并结合PPLM(Plug and Play Language Models: a Simple Approach to Controlled Text Generation)绝对是大杀器,但是速度贼慢。。。。

感兴趣的可以去读原文《Topically Driven Neural Language Model》

下面是关于新冠肺炎疫情的若干新闻的模型分析结果片段:

Epoch =12001 TRAIN 77864/77864: tm ppl = 46573.947; lm ppl = 507.707; word/sec = 9449.5\nVALID 77864/77864: tm ppl = 40674.441; lm ppl = 350.481; word/sec = 16706.0\n Topics ====== Topic 0 [ 10.51 ] : [培训_机构, 上课, 课程, 家长, 培训行业, 授课, 高三, 寒暑假, 招生, 教育培训, 教培, 开课, 退费, 转线, 留学, 面试, 教师, 辅导机构, 课时费, 推迟_开学]

Topic 1 [ 8.38 ] :[婚礼, 婚庆, 摄影师, 摄影, 下岗, 物料, 新人, 工作室, 拍摄, 行业_从业者, 布置, 取消_婚礼, 摄像, 主持人, 婚礼_延期, 婚礼_取消, 婚纱, 婚期, 改期, 道具]

Topic 2 [ 7.81 ] : [gdp, 第三产业, 亿元, 一季度, 增速, 第二产业, 百分点, gdp_增速, 中国_gdp, 增长率, 万亿元, 同比, 第一产业, 经济_增速, 高于, gdp_增长, 一季度]

Topic 3 [ 10.70 ] :[超级传播者, 广东, 扩散, 超级, 预防, 传染性, 耽误, 传人, 症状, 发病, 病毒传播, 宿主, 证据, 不幸, 社交, 毒王, 已有, 院士, 传染给, 传播者, 轻微, 定义]

Topic 4 [ 10.75 ] : [世界卫生组织, 公共, 后果, who, 观察, 列为_疫区, 证明, 大国, 认定, 警惕, 事后, 列入, 人群_密集, 交通工具, 突发事件, 视为_疫区, 负面, 各国, 定性]

Topic 5 [ 6.87 ] : [草莓, 一斤, 农民, 大棚, 果农, 成熟, 夏天, 路边, 产地, 草莓_大棚, 请假, 丹东, 柿子, 草莓_价格, 辽宁, 能卖, 季节, 地里, 辛辛苦苦, 忙活, 大棚_草莓]

Topic 6 [ 10.56 ] : [票房, 春节_票房, 大年初一_票房, 影片, 收获, 撤档, 唐探, 电影票, 姜子牙, 暑期, 夺冠, 熊出没, 粉丝, 热门, 观众, 退出, 老实, 囧妈, 院线, 系列, 徐峥]

Topic 7 [ 10.26 ] : [战争, 香港, 恢复正常, 到来, 提醒, 病情, 蔓延, 教育局, 态势, 终止, 教育部, 预案, 各项, 社会秩序, 一律, 课外辅导, 认知, 中东, 机构_停课, 摧毁_房价]

Topic 8 [ 8.71 ] : [高考, 大学, 教育_行业, 注定, 分数线, 毕业, 高校, 就业, 春季, 考研, 考试, 春招, 毕业生, 合适, 延迟_开学, 应届, 秋招, 应届生, 考生, 复试, 申请, 难度]

Random Generated Sentences ========================== Temperature = 1.2

Topic 8 : 新冠肺疫情逐步好转,许多省份提出将优先安排初3高三返校

Topic 4 : WHO:无证据显示病毒会在夏季消失,欧洲疫情扩散

Topic 3 : 国际在线,外媒分析:病毒“超级传播者”对疫情影响为何如此重大?

Topic 6 : 多国家纷纷叫停电影,海外疫情影响不容乐观

Topic 7 :

PS:主题模型就是一把大杀器,用的好不好全看个人,跟它自身没啥关系~

我之前写的几篇文章,上面的部分示例出自这里:

苏格兰折耳喵:文本挖掘从小白到精通(三)—主题模型和文本数据转换zhuanlan.zhihu.com图标 苏格兰折耳喵:文本挖掘从小白到精通(四)—主题模型的主题数确定和可视化zhuanlan.zhihu.com图标 苏格兰折耳喵:文本挖掘从小白到精通(十)— 不需设定聚类数的Single-passzhuanlan.zhihu.com图标 苏格兰折耳喵:【Social listening实操】作为一个合格的“增长黑客”,你还得重视外部数据的分析!zhuanlan.zhihu.com图标

【CODE】LDA2vec : 当LDA遇上word2vec

以上。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/479567.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

完全解析:使用Faiss进行海量特征的相似度匹配

文 | Gemfield源 | 知乎Faiss为稠密向量提供高效相似度搜索和聚类&#xff0c;支持十亿级别向量的搜索&#xff0c;是目前最为成熟的近似近邻搜索库。本文从最基本的特征比对开始讲解&#xff0c;中间详细讲解Faiss的环境配置以及使用步骤&#xff0c;最后落脚到为什么我们需要…

LeetCode 173. 二叉搜索树迭代器(中序遍历)

文章目录1. 题目信息2. 二叉树中序遍历1. 题目信息 实现一个二叉搜索树迭代器。你将使用二叉搜索树的根节点初始化迭代器。 调用 next() 将返回二叉搜索树中的下一个最小的数。 示例&#xff1a; BSTIterator iterator new BSTIterator(root); iterator.next(); // 返…

论文浅尝 | 面向时序知识图谱推理的循环事件网络

论文笔记整理&#xff1a;谭亦鸣&#xff0c;东南大学博士生&#xff0c;研究方向为知识库问答。来源&#xff1a;arXiv (short version accepted at ICLR 2019Workshop on Representation Learning on Graphs and Manifolds)链接&#xff1a;https://arxiv.org/abs/1904.05530…

Android实现炫酷的星空变幻效果

二话不说&#xff0c;先上效果图&#xff1a; 这个图是什么意思呢&#xff0c;有没有看到一直在变颜色啊&#xff0c;有没有很像星云变幻呢&#xff0c;有没有很炫&#xff0c;快来看看怎么实现的吧&#xff01; 这是我们要被处理的原图&#xff0c;实现方式就是通过不断的改变…

美团配送数据治理实践

大数据时代的到来&#xff0c;让越来越多的企业看到了数据资产的价值。将数据视为企业的重要资产&#xff0c;已经成为业界的一种共识&#xff0c;企业也在快速探索应用场景和商业模式&#xff0c;并开始建设技术平台。 但这里要特别强调一下&#xff0c;如果在大数据“拼图”中…

这可能是你近 2 年发论文最好机会!

几年前如果熟练使用TensorFlow&#xff0c;同时掌握基本的AI算法就可以很容易找到一份高薪的工作&#xff0c;但现在不一样了&#xff0c;AI岗位的要求越来越高&#xff0c;对知识的深度也提出了更高的要求。如果现在一个面试官让你从零推导SVM的Dual、从零实现CRF、推导LDA、设…

LeetCode 671. 二叉树中第二小的节点

文章目录1. 题目信息2. 解题2.1 递归查找2.2 改循环1. 题目信息 给定一个非空特殊的二叉树&#xff0c;每个节点都是正数&#xff0c;并且每个节点的子节点数量只能为 2 或 0。如果一个节点有两个子节点的话&#xff0c;那么这个节点的值不大于它的子节点的值。 给出这样的一…

论文浅尝 | 多标签分类中的元学习

论文笔记整理&#xff1a;叶群&#xff0c;浙江大学计算机学院&#xff0c;知识图谱、NLP方向。会议&#xff1a;EMNLP 2019链接&#xff1a;https://arxiv.org/abs/1909.04176Abstract这篇论文首次在多标签分类问题中提出了 meta-learning 的方法&#xff0c;学习weight polic…

从源码角度分析Android系统的异常捕获机制是如何运行的

我们在开发的时候经常会遇到各种异常&#xff0c;当程序遇到异常&#xff0c;便会将异常信息抛到LogCat中&#xff0c;那这个过程是怎么实现的呢&#xff1f; 我们以一个例子开始&#xff1a; import android.app.Activity; import android.os.Bundle;public class MainActivit…

法律规则鬼畜图解||全面易懂的旅游投诉赔偿标准

法律规则鬼畜图解||全面易懂的旅游投诉赔偿标准https://zhuanlan.zhihu.com/p/82878902 执笔人&#xff1a;张宗保律师&#xff08;联系方式&#xff1a;知乎私信&#xff09;执业地域&#xff1a;深圳市执业方向&#xff1a;民商事诉讼一、赔偿标准的适用前提只有在旅游者和旅…

美团技术十年:让我们感动的那些人那些事

时光荏苒&#xff0c;美团十岁了&#xff0c;美团技术团队也走过了十个春秋。 2010年3月4日美团网上线的时候&#xff0c;整个公司总共十来人&#xff0c;在一套三居室的民房里起步。其中技术团队只有5个人&#xff0c;现在有4位还在美团。 今天&#xff0c;美团是中国市值第三…

LeetCode 113. 路径总和 II(回溯)

文章目录1. 题目信息2. 解题1. 题目信息 给定一个二叉树和一个目标和&#xff0c;找到所有从根节点到叶子节点路径总和等于给定目标和的路径。 说明: 叶子节点是指没有子节点的节点。 示例: 给定如下二叉树&#xff0c;以及目标和 sum 22&#xff0c;5/ \4 8/ / \11 1…

开放开源 | DeepKE:基于深度学习的开源中文关系抽取工具

本文转载自公众号&#xff1a;浙大 KG。作者&#xff1a;余海阳机构&#xff1a;浙江大学代码地址: https://github.com/zjunlp/deepkeOpenKG 发布地址: http://openkg.cn/tool/deepke一、系统简介关系抽取是知识图谱构建的基本子任务之一&#xff0c;它主要面向非结构化的文本…

微前端在美团外卖的实践

背景 微前端是一种利用微件拆分来达到工程拆分治理的方案&#xff0c;可以解决工程膨胀、开发维护困难等问题。随着前端业务场景越来越复杂&#xff0c;微前端这个概念最近被提起得越来越多&#xff0c;业界也有很多团队开始探索实践并在业务中进行了落地。可以看到&#xff0c…

论文浅尝 | Meta Relational Learning: 基于元关系学习的少样本知识图谱推理

本文转载自公众号&#xff1a;浙大KG。 笔记整理&#xff1a;陈名杨&#xff0c;浙江大学在读博士发表会议&#xff1a;EMNLP-2019论文链接&#xff1a;https://arxiv.org/abs/1909.01515开源代码&…

测试集没标签,可以拿来测模型吗?

文&#xff1a;维建编&#xff1a;白鹡鸰背景正常情况下&#xff0c;我们可以用一个带标签的数据集来测试分类器的表现&#xff08;称之为测试集&#xff09;。然而&#xff0c;现实中&#xff0c;因为种种因素的制约&#xff08;标注成本高、标注难度大等 Google&#xff1a;穷…

从0到1 | 手把手教你如何使用哈工大NLP工具——PyLTP!

原文链接&#xff1a;https://flashgene.com/archives/46041.html 本站内容均来自兴趣收集,如不慎侵害的您的相关权益,请留言告知,我们将尽快删除.谢谢. 作者 | 杨秀璋 来源 | CSDN 博客&#xff08;CSDN id&#xff1a;Eastmount&#xff09; 【导语】此文是作者基于 Python 构…

美团智能配送系统的运筹优化实战

深入各个产业已经成为互联网目前的主攻方向&#xff0c;线上和线下存在大量复杂的业务约束和多种多样的决策变量&#xff0c;为运筹优化技术提供了用武之地。作为美团智能配送系统最核心的技术之一&#xff0c;运筹优化是如何在美团各种业务场景中进行落地的呢&#xff1f;本文…

Android如何给无法更改继承关系的Activity更换ActionBar(setContentView方法实战)

前言&#xff1a; 通常我们有时候会直接使用ADT工具直接新建一个Activity页&#xff0c;而这个Activity我们又无法更改它的父类&#xff0c;那遇到这种情况该如何处理呢&#xff1f;其实很简单&#xff0c;好&#xff0c;看如何来解决这个问题&#xff1a; 先来看看这个问题出…

论文浅尝 | 基于属性embeddings的跨图谱实体对齐

论文笔记整理&#xff1a;谭亦鸣&#xff0c;东南大学博士生&#xff0c;研究方向为知识库问答。来源&#xff1a;AAAI 2019链接&#xff1a;https://aaai.org/ojs/index.php/AAAI/article/view/3798跨图谱实体对齐任务的目标是从两个不同知识图谱中找出同一 real-world 实体&a…