未来索引
开启左侧

程序猿用人工智能技术拆解俞敏洪内心世界,发现……

[复制链接]
方芝维 发表于 2017-11-28 10:54:43 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
老俞的演讲:一个中年男人的成长,火了。后知后觉的我,开始好奇老俞究竟说了些啥?又说过些啥?俞敏洪,他的内心是怎么样的?
为了解答这些问题,作为一个郁郁不得志的程序猿,我用Python抓取了“老俞闲话”这个公众号里老俞今年写过的文章,总共192篇;做了一些数据分析和基于AI的自然语言处理工作,目的就是满足一下我的好奇心,也给同样好奇的群众们一个有理有据、有趣有料的答案。
1.首先是抓取问题:
通过搜狗搜索引擎搜“老俞闲话”的微信公众号,并获得文章列表。随后通过模仿用户行为对cookie进行处理。接下来会遇到验证码的问题,通过自己写的验证码识别程序就可以识别验证码,如果嫌麻烦,也可以通过打码平台识别验证码。
2.抓取后就是数据的入库、清洗、分析:
抓取下来的文字中有一些无意义的文字、符号,比如:“的”、“了”等,还有一些在微信公众号语境中无意义的词比如“阅读原文”等。所以,为了分析出准确、可用的结果,要先建立一个停用词库。鲸媒体之前有基于新闻、公众号这个场景的停用词库,所以我就直接调用了。
3.于是结果出来了:
我们把教育品牌词拿出来,排了个序,发现除了新东方自己之外,俞老师最常挂在嘴边的是这些公司、机构:新东方、苹果公司、北大、洪泰;看来除了俞老师创办的新东方和洪泰基金,毕业的母校北大,以及苹果公司都在俞老师心中占据了很重要的位置。
俞老师最常挂在嘴边的名词是:人生、中国、能力、阅读、老师。
然后我们看看在俞老师的语言中,与这些高频词相关性最高的词是哪些,结果如下:
这里面用的方法是,通过词向量的方式,将与之相关性最高的词找出来。仔细看看结果,还是蛮有意思的。可能过段时间,与这些高频词相关性最高的词又变了,变化的原因大可以深究。
4.光看词频并不过瘾,我还想知道俞老师当时的心情。
于是我把老俞闲话中的文章按月分成11段。我想看看通过老俞闲话中的语言表达,来分析俞老师发文时的情绪是怎么样的。首先将11个月的语料,分好文件;其次需要一个基于中文文本的情绪识别系统;我所就职的公司——鲸媒体,正好有一个现成的,所以直接用上了。我使用的语言是Python(版本3.6),深度学习的框架是TensoRFlow(版本是1.3,基于GPU计算版本),情绪识别的深度网络是我们前期经过大量语料(几十万条)训练形成的。
导入文本,深度网络开始情绪识别工作:
结果出来了,今年1月到11月的文章情绪识别情况统计下如图,今年10月份老俞并没有发文章。
{正面、中性、负面情绪折线图}
好奇心驱使,我把新东方每月平均股价的走势图拿出来做了个对比(股价的每月平均值=按照交易日的收盘价/本月交易日数):
这样一对比,似乎可以看出一些东西?
简单地看并没有相关性,我又不想再做复杂的、颗粒度更细的对比了;所以,从取巧的角度得出这样的结论:新东方的股价并不是俞老师的唯一,公司发展和生活方式让俞老师是否快乐更重要。
5.识别完情绪,我还不过瘾。我想能不能提取“老俞闲话”语言表达特征,让机器模拟这些特征,以老俞的口吻写一段文字出来。
机器写作的思路是这样的:历史数据 —— 喂给机器,让机器提取特征 —— 训练、循环 ——通过定义种子词和灵感程度生成结果。
机器写作的过程大致如下:
解释一些截图中的内容:
这一年的老俞闲话:一共有429455个字,使用了1432个汉字。
种子:可以理解成机器写作中一定要出现的词,相当于我们上小学时候的用词造句——这次测试的种子是由机器随机抽取生成的。
灵感数:可以理解为表达的不确定性或随机性。
我复制了第一个循环和第29个循环的训练结果如下:
机器写出来的结果,看起来和俞老师写的结果还是相差不少的,但这至少是个有趣的尝试,通过AI来识别、提取俞老师文章的特征,然后完成中文机器写作。
当然,正常是要跑100个循环,才会出现真正好的效果。我就不费力和老俞竞争了,哈哈。

哎...今天够累的,签到来了1...
高级模式
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

发布主题
阅读排行 更多
广告位
!jz_fbzt! !jz_sgzt! !jz_xgzt! 快速回复 !jz_sctz! !jz_fhlb! 搜索

智能技术共享平台 - 未来论

关注服务号

进入小程序

全国服务中心:

运维中心:天津

未来之家:天津 青岛 济南 郑州 石家庄

                商务邮箱:xy@mywll.com

Copyright © 2012-2021 未来派 未来论 (津ICP备16000236号-5)