宜家撰写了关于其知识图谱系统和知识图谱层(KG)的文章。三层方法侧重于
- 概念:代表公司所做的业务概念。
- 类别:表示业务中使用的受控词汇或术语。
- 数据:代表企业的产品或独特的销售单位。
例如,在宜家,概念是产品,类别是书柜,一个数据点是BILLY 白色 80x28x202 厘米书柜。
从技术上讲,一个KG由两层组成:事物的种类和个别事物,这类似于面向对象编程中的类class和实例,或者类似于柏拉图思想理论中的思想和现实世界。
在这个三层的金字塔中,中间一层,即类别,在技术上是个体事物,但表达的信息与事物的种类非常接近,这就是为什么将它们区分为自己的一层是有意义的。
这个理论依据来自:this video by Dave McComb explaining the gist ontology.
1、概念
在宜家,顶层“概念”代表了公司的核心业务概念。
通常,这些概念有数百个,正如Dave McComb在他的《以数据为中心的革命》一书中所说明的,它们是人们可以在周末带回家并用心学习的东西。如果一个人使用W3C堆栈来定义KG,那么这部分就是本体,所以是类型class和属性的定义。如果使用像Neo4J这样的LPG来构建KG,概念将是节点标签和关系类型。
2、类别Categories
类别代表了宜家使用的受控词汇或术语,它们的数量有几千种。宜家的不同专家决定什么是术语。有人负责定义我们对产品的所有分类方式:书柜、沙发、咖啡桌等。一般来说,分类在每个公司都是不同的,这取决于他们的用例:有些术语在概念层面上体现,有些在类别层面上体现,有些甚至在两个层面上都体现。例如,在音乐行业,乐器是一个概念,然后各个乐器,如小提琴、钢琴、大提琴等,就是类别。现在,一个特定的音乐作品将按照演奏它所需要的关键乐器来分类,例如,钢琴三重奏或小提琴协奏曲。
(类型与类别的区别:类型属于顶层概念,数量有限,可以被集中定义管理,这个类似网站SEO中关键词)
3、数据
第三层是数据层。在宜家,这些是我们提供给顾客的所有产品,由它们的瑞典标志性名称、颜色和尺寸信息定义。我们的KG是面向顾客的,它增强了宜家的数字体验。如果我们将我们的KG用于物流,数据层将区分每一个实体产品,所以在世界各地的商店里销售的80x28x202厘米的白色BILLY书柜中的每一个。
我们用这三层之间的区别来组织我们的工作,以建立一个KG。由于概念层很小,并且创建了一个公司的总体术语,所以用强大的治理政策手动定义它是有意义的。从定义上看,类别需要领域的专业知识和协议,所以它是一个包括许多主题专家的内部合作。最后,数据层是如此之大,它需要自动化,并以测试驱动的方式开发。
我在语义网社区的朋友和同事胡安-塞奎达(Juan Sequeda)指出,当公司形成数据战略时,有一个主题似乎在不断重复,那就是集中化和去中心化。受此启发,我根据自己在构建企业知识图谱方面的应用经验,大胆地研究了三层金字塔是如何在企业中撰写、拥有和存储的。
授权、所有权和存储
知识图谱的层次 - 概念的授权是集中的,类别的授权是分散的,数据图谱是自动生成的,概念和类别是集中存储的,数据图谱是分散存储的。
- 概念是由商业概念拥有团队集中撰写的,在实践中,这是一个本体论者团队,他们将人类的概念翻译成机器可读的格式。这些概念需要形成一个逻辑上连贯的结构,因为它们被用来在数据层上创建强大的查询,并用于推理。由于它们的数量数以百计,所以手动集中定义它们是有意义的。
- 类别最好以分散的方式编写,因为企业的主题专家是决定应该使用哪些术语的人,而且他们分散在公司的各个角落。他们的数量数以千计,因此在专家团队之间进行分工有助于管理工作量。
- 数据层是一个或多个数据源的组合,对分类层有参考价值,因此它的所有权应该保留在数据源上,这也是数据网的想法,即数据是一种产品。
在宜家,我们将概念和类别存储在一个git仓库中。这样,我们可以对发布的内容进行标记,使用版本管理,逐行审查,并通过git操作自动触发质量保证测试。
根据性能和使用的需要,数据层的内容可以用以下两种方式存储:它可以被持久化在数据库中,或者通过存储如何访问原始数据源的指令而被虚拟化。虚拟化数据层意味着它可以以分散的方式存储,并在其原点进行访问。坚持数据层可能会导致优化的性能,然而,如果数据所有权不明确和强制执行,这将导致同一数据的多个延迟副本的问题,这将导致数据的不一致性,这是目前大多数组织的数据问题。我们选择了持久化我们的数据层,并保持它与上游的更新。
总结
将我们的KG设想在三个层面上,不仅有助于组织我们的工作,也有助于将其内容传达给非技术性的利益相关者。虽然他们可能不会掌握这些层的所有技术含义,但这有助于他们关注他们需要提供什么样的内容来使KG成功。它还可以管理他们的期望,让他们了解幼儿园可以为他们提供什么回报。