知识图谱核心概念:实体、关系、属性、三元组、图数据库基础

说实话,很多人一听到「知识图谱」就觉得高大上,觉得是谷歌、百度那种大公司才玩得转的东西。其实不然。我做了这么多年投资分析,越来越觉得知识图谱就是个工具——帮你把零散的信息串起来,看清背后的逻辑。

这一章,咱们就把知识图谱最核心的几个概念掰开揉碎了讲。你搞懂了这些,后面做投资分析时,思路会清晰很多。

实体:知识图谱里的「主角」

实体是什么?说白了,就是你要关注的那个「东西」。在投资领域,实体可以是公司、人物、产品、行业、事件……任何你关心的对象。

举个例子。我研究一家新能源车企,那「比亚迪」就是一个实体。「王传福」也是一个实体。「刀片电池」还是一个实体。你看,这些实体之间是有关系的——王传福是比亚迪的创始人,刀片电池是比亚迪的产品。

我个人习惯,在构建知识图谱时,先列出一张「实体清单」。把投资标的相关的重要对象都列出来。这样后面建关系时,不会漏掉关键节点。

投资实战要点: 实体是知识图谱的「节点」。你关注的实体越精准,图谱的价值越大。别贪多,先聚焦核心。

关系:实体之间的「桥梁」

光有实体不行,你得知道它们之间怎么关联。关系就是连接实体的那条线。

我遇到过不少新手,把实体列了一大堆,但关系没理清楚。结果图谱建出来,跟一盘散沙似的,看不出任何投资逻辑。

常见的投资关系有哪些?

  • 投资关系: A公司投资了B公司
  • 供应链关系: A公司是B公司的供应商
  • 竞争关系: A公司与B公司是竞争对手
  • 人事关系: 某人曾在A公司任职,后加入B公司
  • 股权关系: 某人持有A公司股份

你想想看,如果你能把这些关系都理清楚,是不是比看一份干巴巴的财报要直观得多?

属性:实体的「细节描述」

实体是主角,关系是桥梁,那属性就是给主角加「标签」和「备注」。

比如「比亚迪」这个实体,它的属性可以包括:

属性名 属性值
成立时间 1995年
上市代码 002594.SZ
主营业务 新能源汽车、电池、电子
市值(2024年) 约8000亿人民币

属性让实体变得更「丰满」。你在做投资分析时,可以通过属性快速筛选和对比。比如「找出所有市值超过5000亿的新能源车企」——这就是属性的威力。

我的经验: 属性别设太多,挑那些对投资决策有直接影响的。否则图谱会变得臃肿,反而不好用。

三元组:知识图谱的「最小单元」

实体、关系、属性这三个概念,组合起来就是知识图谱的「积木块」——三元组。

三元组的格式很简单:(头实体, 关系, 尾实体)

举个例子:

(比亚迪, 创始人, 王传福)
(比亚迪, 生产, 刀片电池)
(王传福, 持股, 比亚迪)

你看,每个三元组就是一个「事实」。知识图谱就是由成千上万个这样的事实组成的。

我刚开始做投资图谱时,就是一条一条地整理三元组。虽然有点笨,但效果出奇的好。因为你在整理的过程中,会不断发现新的投资线索。

避坑指南: 我曾经犯过一个错误——把三元组的方向搞反了。比如「比亚迪投资了宁德时代」和「宁德时代投资了比亚迪」,完全是两码事。方向错了,分析结果就全错了。

图数据库:知识图谱的「家」

有了实体、关系、属性、三元组,你得找个地方存起来。传统的关系型数据库(比如MySQL)存这些数据很别扭。为什么?因为关系型数据库擅长存表格,不擅长存「关系」。

图数据库就是专门干这个的。它用「节点」表示实体,用「边」表示关系。查询起来特别快。

市面上主流的图数据库有:

  • Neo4j: 最流行,社区版免费,适合入门
  • JanusGraph: 开源,适合大规模数据
  • ArangoDB: 多模型,支持图、文档、键值

我个人建议,刚开始学就用Neo4j。它有个很直观的浏览器界面,你可以在上面直接写查询语句,看到图谱的可视化效果。这对理解知识图谱非常有帮助。

下面我用一个简单的例子,展示一下图数据库里怎么存数据:

// 创建节点(实体)
CREATE (byd:Company {name: '比亚迪', founded: 1995})
CREATE (wcf:Person {name: '王传福', title: '创始人'})

// 创建关系
CREATE (wcf)-[:FOUNDED]->(byd)

这段代码创建了两个节点和一个关系。你运行之后,就能在Neo4j里看到一张小图谱——王传福指向比亚迪,关系是「创立」。

知识图谱的核心逻辑:一张图看懂

说了这么多,咱们用一张图把核心逻辑串起来。下面是我手绘的一个知识图谱核心结构图,你看一眼就明白了。

知识图谱核心结构 实体 (公司/人物) 关系 (投资/供应) 属性 (市值/成立时间) 三元组 = (头实体, 关系, 尾实体) 例:(比亚迪, 创始人, 王传福) 图数据库(Neo4j等)

这张图把核心逻辑讲得很清楚:实体、关系、属性是三大基石,它们组合成三元组,最后存到图数据库里。你搞懂这个流程,知识图谱就算入门了。

为什么投资分析需要图数据库?

你可能会问:我用Excel也能整理这些数据,为什么非要用图数据库?

嗯,这里有个关键区别。Excel适合查「静态数据」,但图数据库擅长查「关系路径」。

举个例子。你想知道「王传福通过哪些路径间接影响到宁德时代」。在Excel里,你得手动查好几张表,拼凑信息。但在图数据库里,一句查询就搞定:

MATCH (wcf:Person {name: '王传福'})-[*1..3]-(catl:Company {name: '宁德时代'})
RETURN wcf, catl

这段代码的意思是:找出王传福和宁德时代之间,长度不超过3步的所有路径。结果可能包括「王传福→比亚迪→投资→宁德时代」,或者「王传福→朋友→宁德时代高管」等等。

这种「关系路径」的查询,在投资分析中非常有用。比如做尽职调查时,查实控人的关联方;做产业链分析时,查上下游的依赖关系。

我的建议: 刚开始别急着上大数据。先用小规模的数据(比如50个实体、200个关系)把图谱建起来,跑通流程。等熟悉了,再慢慢扩展。

好了,这一章的核心概念就讲到这里。你记住四个关键词:实体、关系、属性、三元组。再加上图数据库这个「容器」,知识图谱的骨架就有了。下一章,咱们会动手搭建第一个投资知识图谱——用真实的上市公司数据来练手。


公众号:蓝海资料掘金营,微信deep3321