前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >技术分析 | 谁是终极大Boss?一张图看懂《长安十二时辰 》人物关系

技术分析 | 谁是终极大Boss?一张图看懂《长安十二时辰 》人物关系

作者头像
逸迅科技
修改2019-08-13 14:28:54
3.6K0
修改2019-08-13 14:28:54
举报
文章被收录于专栏:逸迅科技

编者按:

豆瓣评分高达8.6的国产剧《长安十二时辰》,终于在今晚迎来大结局——幕后BOSS究竟是谁?张小敬和李必命运如何,都一一揭开谜底。该剧改编自以“脑洞大”著称的作家马伯庸同名小说,悬疑反转的快节奏剧情,美轮美奂的长安城场景,唐朝韵味的妆法服装,刻画细致的人物角色,情节、灯光、道具、演技均比肩电影制作。

本文作者扎根数据挖掘、算法模型应用等领域多年,将从技术角度分析一下剧中的人物关系,用一张人物图谱呈现他们之间的关联,一起来猜猜谁才是终极大Boss?

图:《长安十二时辰》豆瓣评分高达8.6分
图:《长安十二时辰》豆瓣评分高达8.6分

时下大热的《长安十二时辰》剧中"大案牍术"、"靖安司"频频出现,数据行业就有不少同学把大案牍术和当下最火热的“大数据”、“数据智能”联系起来,把 “靖安司”与“数据中台”相对比,笔者认为有点牵强附会。本文尝试结合自然语言处理(NLP)与图谱(Graph) 相关技术分析小说原文的人物图谱关系。

一、模型思路和流程

利用知识图谱构建人物关系,主要包括两点:节点信息和边界信息。

节点信息就是人物及权重,应用实体识别提取人物信息,权重结合TFIDF 等算法计算权重。边界信息的提取,可以结合行业处理经验:大部分是以小说章节或者段落为基本分析单元,将出现在同一分析单元的人物视为发生一次关联。

这种处理方法有其合理性,但也存在一定不足。结合《结合长安十二时辰》小说特征,将出现在同一段落的人物视为发生一次关联,以此为数据样本进行人物关系知识图谱的构建。

主要处理流程包括以下主要部分:

  • 文本预处理及分词
  • 人物提取及权重计算
  • 关系的构建及人物图谱展现

二、文本处理和分词

利用python jieba分词进行文本分词处理,jieba分词算法使用了基于前缀词典实现高效的词图扫描,生成句子中汉字所有可能生成词情况所构成的有向无环图(DAG), 再采用了动态规划查找最大概率路径,找出基于词频的最大切分组合,对于未登录词,采用了基于汉字成词能力的HMM模型,使用了Viterbi算法。

1.停用词与自定义词库,处理函数的定义

其中尝试词性标注(POS,Part-of-Speech Tagging)的方式只提取名词有关,发现POS 效果不好。

【Python 代码】

2.分词

【Python 代码】

分词结果

3.IFIDF 权重计算及提取

  • 将语料转换为词袋向量
    • 声明一个向量化工具vectorizer
    • 根据语料集统计词袋(fit)
    • 打印语料集的词袋信息
    • 将语料集转化为词袋向量(transform)
    • 还可以查看每个词在词袋中的索引
  • 根据词袋向量统计TF-IDF
    • 声明一个TF-IDF转化器(TfidfTransformer)
    • 根据语料集的词袋向量计算TF-IDF(fit)
    • 打印TF-IDF信息:比如结合词袋信息,可以查看每个词的TF-IDF值
    • 将语料集的词袋向量表示转换为TF-IDF向量表示
  • 根据TFIDF值排序取Top 50

【Python 代码】

由于前50有部分地名,手工删除得到完整人物列表;定义同义词列表,需要后期合并。

【Python 代码】

4.人物关系构建及剪枝

【Python 代码】

将DataFrame 对象转换为List 对象

将DataFrame 对象转换为List 对象

5.人物图谱展现

Out [36] :

那么问题来了,谁才是终极大Boss?

根据媒体报道,日前优酷站内发起“终极Boss大猜想”投票结果,权力最大但神秘莫测的“圣人”,演技精湛、义子何孚又提前暴露的“何监”以及身怀大数据分析绝技和复活buff的“徐宾”最为大家所怀疑,分列幕后Boss票选前三甲。其中,徐宾因刻意接近李必,利用职能捞出张小敬还屡次“复活”,是近期排名上升最快的“嫌疑人”。

根据人物图谱分析,可以看出徐宾的人物关系复杂,而且作为大唐第一AI徐宾死得莫名其妙死,而且整个尸体都烧焦了。笔者认为,按照影视剧的逻辑,这种死法不是本人的几率很高。

图:徐宾与其他人物关系图谱
图:徐宾与其他人物关系图谱

备注:以上是《长安十二时辰》人物图谱构建的基本流程和代码,中间还有许多不足和优化的空间。关于《大案牍术》,纯属YY,没有算法理论、数据基础和处理算力支撑,属无本之木。还望各位大神轻拍。

今晚《长安十二时辰》即将大结局,快来留言写下你心中的终极大Boss吧!

【关于作者】

王新义,逸迅科技产品研发总监,近十年大数据和人工智能研发经验,具有丰富数据、算法模型、场景应用技术积累和实施经验,喜欢钻研以Hadoop和数据挖掘、机器学习为核心的数据应用经验、流程及知识。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
灰盒安全测试
腾讯知识图谱(Tencent Knowledge Graph,TKG)是一个集成图数据库、图计算引擎和图可视化分析的一站式平台。支持抽取和融合异构数据,支持千亿级节点关系的存储和计算,支持规则匹配、机器学习、图嵌入等图数据挖掘算法,拥有丰富的图数据渲染和展现的可视化方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档