随着越来越多的数据被数字化,获取信息变得越来越困难。我们在本文中重点关注的一个示例是评估公司面临的不同风险领域。
为此,我们参考公司提交给证券交易委员会的年度报告,其中提供了公司财务业绩的全面摘要[1],包括公司历史,组织结构,高管薪酬,股权,子公司和经审计的财务报表等信息,以及其他信息。
文本挖掘:主题模型(LDA)及R语言实现分析游记数据
时长12:59
除了通常的信息(例如股票的波动性,季节性方面)之外,公司还会发布诸如
- “我们的前15名客户约占我们净销售额的80%”
- “已经对我们提起产品责任诉讼”
这些作为潜在投资者对公司状况的警告[3]。目的是对公司面临的风险进行分类,这可以作为对警告投资者和潜在投资者的充分建议。
其中大多数是标准的东西–例如,库存波动很大,有些企业是季节性的。我们寻找异常的信息,例如“我们的前15名客户约占我们净销售额的80%”或“对我们提起了许多产品责任诉讼” – 非处方药制造商。或考虑演唱会的发起人提出:“我们承担大量债务和租赁义务,这可能会限制我们的运营并损害我们的财务状况。”
根据David Blei的说法,主题模型是一种算法,用于发现大量,非结构化文档集合的主要主题。主题模型可以根据发现的主题来组织集合[2]
主题模型是探索或理解任何语料库集合的一种巧妙方法。首先,清理工作空间并加载所需的程序包,如下所示:
为了简便起见,我们下载了数据,并从中提取了公司的风险部分。
我们计算词频(term frequency,TF)和逆文档频率(IDF inverse document frequency)进行评估
词频(term frequency,TF)定义为词t在文档d中出现的次数[7],而 逆文档频率 估计整个文档集合中词的稀有性。(如果在集合的所有文档中都出现一个词,则其IDF为零。)
对于我们的分析,我们使用 tf-idf, 通过较小的权重来规范出现在所有文档中的关键词的影响。
我们将首先在语料库中建立唯一的词汇表,然后再映射到每个公司
我们记录与数据集相关的统计信息。
语料库中有 D = 85个文档 和 W = 6662个关键词标记。并且我们必须确定K个主题。
Topic模型为我们提供了两个主要输出:
一个是关键词概率的θ矩阵-告诉我们每个关键词属于每个主题的概率是多少。
二是ω文档矩阵-它是文档中主题比例的概率分布。
现在,我们建立了一个包含6个主题的主题模型。主题比例(α)和主题多项式的Dirichlet超参数的值分别为0.02和0.02。
我们已经计算了每个文档的数量以及整个语料库中关键词的出现频率。我们将它们连同θ,ω和vocab一起保存在列表中,作为数据对象 Risk,包含在LDAvis包中。
现在,我们准备调用 CreateJSON() 函数 LDAvis。此函数将返回一个字符串,该字符串表示用于填充可视化效果的JSON对象。createJSON()函数计算主题频率,主题间距离,并将主题投影到二维平面上以表示它们彼此之间的相似性。
serVis()函数可以采用json并以多种方式提供结果。我们评论了以下代码,因为这是一个交互式代码。
这是我们选择的6个主题的可视化
总体
主题一
主题二
主题三
主题四
主题五
主题六
我们可以看到 Topic-2 和 Topic-3 彼此重叠,这从它们中的关键词也可以看出。但是,如果我们仔细观察一下, 主题3 则更多地涉及 制造业 ,其中涉及供应管理,需求和供应等。 主题2 则更多地涉及软件产品,运营,收入和服务。
我们选择一个值K = 6
我们来看一下项概率矩阵θ,以总项概率的降序对这个矩阵进行排序:
另外,我们看到了与主题相关的文档关联概率的ω矩阵。
我们可以说文档1和文档3在主题4上的权重很大,而文档7在主题5上的权重很大。文档2是主题1和主题4的混合。
一些关键词具有高频,另一些具有低频。我们要确保词频不会过度影响主题权重。因此,我们使用称为“提升”的量度对关键词频率进行归一化。
关键词的提升是通过关键词的出现概率归一化的主题成员概率。如果某个主题的关键词提升很高,那么可以说,该关键词对于构建该主题很有用。
由于主题函数不会返回关键词的提升矩阵,因此我们可以编写一个简单的函数来计算每个关键词的提升。
我们为以下选择的六个主题生成一个词云
研究共现矩阵可视化图进一步了解
以下是根据我们选择的主题对公司进行的分类。
潜在主题1
主要讲与产品制造及其需求-供应链有关的风险 。
潜在主题2
主要讲在线和移动广告相关的主题 。
潜在主题3
该潜在主题讲以与股息和养老金相关成本相关的风险。此外,我们还可以看到与宽带和有线电视运营商相关的风险。
潜在主题4
该潜在主题讲与太阳能行业财务/合并相关的风险。
潜在主题5
该潜在主题是卫生部门,并讨论与实施政府法规有关的风险。
- [1] https://zh.wikipedia.org/wiki/Form_10-K
- [2] David M. Blei
- [3] http://machinelearning.wustl.edu/mlpapers/papers/icml2013_chuang13
- [4] http://www.kiplinger.com/article/investing/T052-C000-S002-our-10-k-cheat-sheet-how-to-speed-read-a-company-s.html#KAR6M3qFkMeVI1Zo .99
- [5] Steps for writing assignments - my.UQ - University of Queensland
- [6] A topic model for movie reviews
- [7] http://disi.unitn.it/~bernardi/Courses/DL/Slides_11_12/measures.pdf
- [8] http://leitang.net/presentation/LDA-Gibbs.pdf
版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/bcyy/41743.html