数据分析告诉你,鲁迅的文章真的是匕首投枪

浏览: 1761

作者:挖数  腾讯数据产品经理 & 段子手

个人微信公号:washu66


我们读一篇文章时,很容易感受到作者的情绪,作者是悲伤的,笔下的文字可能字字泣血,作者是快乐的,笔下的文字也会跳舞。

小时候读鲁迅的《纪念刘和珍君》,只觉得作者的愤怒和绝望喷涌而出。

可是我实在无话可说。我只觉得所住的并非人间。四十多个青年的血,洋溢在我的周围,使我艰于呼吸视听,那里还能有什么言语?长歌当哭,是必须在痛定之后的。而此后几个所谓学者文人的阴险的论调,尤使我觉得悲哀。我已经出离愤怒了。我将深味这非人间的浓黑的悲凉;以我的最大哀痛显示于非人间,使它们快意于我的苦痛,就将这作为后死者的菲薄的祭品,奉献于逝者的灵前。

这种字里行间的激烈情感,来自文章里一些关键词语,这些关键词语可以是形容词,比如“阴险”,“悲哀”,“愤怒”,“悲凉”,“哀痛”;可以是名词,比如“血”,“苦痛”,“死者”,“祭品”;可以是动词,比如“哭”。

image.png

那有没有可能有一种情感分数,可以来量化一篇文章的情感?

文本分析有一种场景,是通过大量的语料训练一个情感词库,这个词库有每一个词语对应的情感分数,分数>0且越高,表示情感越积极,分数<0且越低,表示情感越消极。

在网上一番搜刮,真的找到这样一个词库,这个词库有11万多个词,每个词都有其对应的情感分数,比如 红红火火 这个词,它的情感分数高达 5.73,是一个非常正面积极的词语,而像 新加坡 ,黑猩猩 这种名词,他们是中性词,基本不含情感,他们的分数在0到1之间,一些比较消极的形容词,比如孤苦伶仃,它的分数是-2.58,或者一些消极的动词比如发飙,它的分数是-2.62。

把一篇文章进行分词,然后挨个匹配情感词库对应的分数,再求个均值,于是一篇文章的情感就量化粗来了!

image.png

挽起袖子,说肛就肛!用Python分词并匹配情感词库的分数

article=open('d:/python/xx.txt','r').read() 

words=pd.DataFrame(jieba.cut(article)) 

words=words.rename(columns={0:'word'})score=pd.read_table('d:/python/score.txt',encoding='utf8',sep=' ',names=['word','score']) 

finish=pd.merge(left=words, right=score, how='left', left_on='word', right_on='word') 

finish=finish[finish.score.isnull()==False] 

print finish.mean()

结果发现《纪念刘和珍君》虽然通篇有很多绝望,消极的词汇,但也有很多积极有力量的词汇,两者一中和,情感分数在中间的位置   (o゚ω゚o)

image.png

文章里边情感分数最消极的是:杀害-3.69,噩耗-3.41,血痕-3.39;

文章里边情感分数最积极的是:师友3.36,永存3.03,奉献2.83。

我给迅哥的几篇文章都输出了情感分数,有以下的分布:

image.png

看到《药》的负分,脑海中浮现出那个人血馒头,那种压抑,悲凉和血雾弥漫的画面感,55,不敢看,相对来说《从百草园到三味书屋》行文还是较为轻松的。

image.png

在那个时代,除了拿着匕首投枪,横眉冷对千夫指的鲁迅,也有骑着云中鹤,逛着窑子的徐志摩,我们来看看摩哥的行文,会不会跟迅哥有很大的不同呢?

image.png

以下是摩哥文章的情感分布:

image.png

果然,摩哥积极的娱乐精神也渗透在他的行文里。

image.png

有趣的地方来了,我们知道文章有时可以变为音乐,比如一些曼妙的诗词,配上旋律,那种画面感会更明显,像邓丽君的《清平调》,王菲的《明月几时有》,或者王海玲唱的那首《忘了我是谁》(李敖的诗),还有那首《只爱一点点》,也是李敖的诗。

image.png

那么,文章是不是也可以变成一幅画?

把文章的每个词作为一个色块,跟情感分数关联,情感越积极颜色越亮,情感越消极颜色越深暗,这样不就形成了一副图画?我把它称为文章的“情感地图”。

朱自清的《背影》分词后是794个词,把这794个词变成一个28*28的矩阵,矩阵的排列跟文章从左到右,从上到下的行文是一致的,再把这些矩阵的颜色跟每个词的情感分数关联,Python代码如下:

article=open('c:/python/hot/beiying.txt','r').read()words=pd.DataFrame(jieba.cut(article)) 

words=words.rename(columns={0:'word'})score=pd.read_table('c:/python/hot/score.txt',encoding='utf8',sep=' ',names=['word','score']) 

finish=pd.merge(left=words, right=score, how='left', left_on='word', right_on='word') 

finish=finish[finish.score.isnull()==False] finish=finish[0:784]finish=finish['score'].reshape(28,-1) 

plt.matshow(finish, cmap=plt.cm.hot, vmin=-0.5, vmax=4) 

plt.colorbar() 

plt.show()

生成的《背影》的“情感地图”

image.png

图中的黑色块,是情感分数在-0.5以下的词,颜色越亮黄的词,情感越积极,可以看到在文末,有1个情感很积极的词,看看是什么词

image.png

在晶莹的泪光中,又看见那肥胖的、青布棉袍、黑布马褂的背影。唉!我不知何时再能与他相见!

清哥,我们知道您爱您的父亲  Q_Q

image.png

这是徐志摩的《翡冷翠山居闲话》生成的31*32的“情感地图”

image.png

满眼都是欢快的黄色。

文学很美,鲁迅的文章读来让人警醒,徐志摩的诗歌读来让人心情愉悦,读他们的文章,你能感受到他们的精雕细琢和他们的脉脉情感,你能感受到那个年代的抱负,那种拳拳的赤子心。

反观现在,充斥着各种情感公众号,24小时霸占你的时间,有一些还有毒(说的就是你,咪蒙),这些文章左一个“小奶狗”,右一个“出轨”,无时不刻煽动你的情绪,给你喂毒,你还甘之若饴,我真想说一句呜呼哀哉!!

image.png

同意的请转发   (╬ ̄皿 ̄)凸

End


一套SVIP课程,15选8,每套课程均价112知识付费的时代,一次旅游的钱便能收获8大全方位、多体系的课程

更有全场六折优惠课程,为你加油助力!

扫描下方二维码点击上面文字的蓝色字即可学习

SVIP.jpg

推荐 0
本文由 人工智能爱好者社区 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册