这世界的“文”和“理”越来越你侬我侬了,数据统计分析就是背后的红娘。自从机器翻译、狗下围棋、AI作诗变得随处可见之后,理工男理工女们扛把小锄头,挖起文学的墙角来更便捷了。
说起锄头,python就是其中金光闪闪的一把,最大的好处就是可以套上许许多多现成的工具包,小如军刀,大如钻头,选到合适的,一下子钻出个油井来也不下话下。
几年来就有人用python的中文分词工具把红楼梦的文本解剖了一下,根据词频得出结论:前八十回和后四十回确非同一作者。这个论证逻辑其实颇可疑,因为词频尤其是实词的词频,和题材、情节的相关性很大,不太适合作为判定行文风格的工具。反而是一些虚词,比如连词叹词助词之类的,容易带上作者的个人习惯。另外,对于修辞手法的使用偏好,也是辨别作者文风的一个手段。这就好比一个人穿的鞋子,磨损程度大小取决于走过多少路,走的什么路,但是磨损的地方是在前或在后,在左或在右,这就和个人走路的习惯姿态息息相关了。
按这种想法,好事者如我,就拿城里某位名博的文章试了一下。从过百万字的锦言绣语中找到三类不同的题材:游记、饮食、动物,共有30+篇。用结巴中文分完词后,对不同修辞和虚词进行粗略统计,果然能看出明显的文风特点。
如果拿其他作者文章的统计结果做个对照,可能会更明显一些。
说到这,不由得想起《聊斋》里的一个故事:
偶与涉历殿阁,见一瞽僧坐廊下,设药卖医。宋讶曰:“此奇人也!最能知文,不可不一请教。”因命归寓取文。遇余杭生,遂与俱来。王呼师而参之。僧疑其问医者,便诘症候。王具白请教之意。僧笑曰:“是谁多口?无目何以论文?”王请以耳代目。僧曰:“三作两千余言,谁耐久听!不如焚之,我视以鼻可也。”王从之,每焚一作,僧嗅而颔之曰:“君初法大家,虽未逼真,亦近似矣。我适受之以脾。”问:“可中否?”曰:“亦中得。”馀杭生未深信,先以古大家文烧试之。僧再嗅曰:“妙哉!此文我心受之矣,非归、胡何解办此!”生大骇,始焚己作。僧曰:“适领一艺,未窥全豹,何忽另易一人来也?”生托言:“朋友之作,止此一首;此乃小生作也。”僧嗅其馀灰,咳逆数声,曰:“勿再投矣!格格而不能下,强受之以膈;再焚,则作恶矣。”生惭而退。
Python在文学辨别上的智能,也许某一天也能离这瞽僧的境界相去不远吧。