知识图谱工具Protégé的下载安装与使用

健康强国 1968 0

0.0 Protege相关介绍

Protégé软件是斯坦福大学医学院生物信息研究中心基于Java语言开发的本体编辑和知识获取软件,或者说是本体开发工具,也是基于知识的编辑器,属于开放源代码软件。

这个软件主要用于语义网中本体的构建,是语义网中本体构建的核心开发工具,目前最新版本是5.5.0(截止到2019-02-26)。

Protégé提供了本体概念类,关系,属性和实例的构建,并且屏蔽了具体的本体描述语言,用户只需在概念层次上进行领域本体模型的构建。

image.png

0.1 Protégé的特点

  • Protégé是一组自由开源的工具软件,用于构建域模型与基于知识的本体化应用程序。

  • Protégé提供了大量的知识模型架构与动作,用于创建、可视化、操纵各种表现形式的本体。

  • 可以通过用户定制实现域-友好(领域相关)的支持,用于创建知识模型并填充数据。

  • Protégé可以通过两种方式进行扩展:插件和基于java的API。

  • 相比与其他的本体构建工具而言,Protégé最大的好处在于支持中文,在插件上,用Graphviz可实现中文关系的显示。

0.2 Protégé的用途

protégé可用于:

  • 类模拟(Class modeling):protégé提供了一个图形化用户界面来模拟类(领域概念)和它们的属性及关系。

  • 实例编辑(Instance editing):从这些类中,protégé自动产生交互式的形式,全用户或领域专家进入的有效实例成为可能。

  • 模型处理(Model processing):protégé有一个插件库,可以定义语义、解答询问以及定义逻辑行为。

  • 模型交换(Model exchange):最终的模型(类和实例)能以各种各样的格式被装载和保存,包括XML、UML和资源描述框架RDF.

1 Protege的下载

1.1 准备工作:安装配置JAVA环境

由于Protege基于JAVA,所以要安装配置JAVA环境,至少需要一个JRE。 安装配置过程可以参考我的另外一篇文章:

《java安装:jdk1.7的安装》:https://blog.csdn.net/u012052268/article/details/44680389

1.2 官网下载

protege属于开放源代码软件,开源软件不需要破解,直接去官网上下载稳定本即可:Protege桌面版官网:
https://protege.stanford.edu/products.php#desktop-protege

打开后界面如下,点击右下角下载按钮;

弹出注册页面 不用理会。

等待下载好。注意,protege软件下载需要外网,且下载很慢,博主下载了一个小时才下载好,把他上传到了CSDN 有需要的自行下载:《Protege-5.5.0-beta-9 截止到2019-02-27的最新版本》https://download.csdn.net/download/u012052268/10978113


在这里插入图片描述


2 Protege的安装

2.1 直接解压缩

哈哈 不知道什么时候,Protege变成了绿色免安装版本,下载好了直接解压即可(网络上其他博客 还要点击NEXT安装,有点过时了):


在这里插入图片描述


2.2 双击运行

直接双击上图中的 Protege.exe 运行程序。打开之后界面如下图所示:这是一个新建本体的页面。


image


3 Protege的使用实例-创建类和实体

3.1 新建本体(一个体系)

2.2节所示的图片就是新建本体的页面。

也可以选择file -> new 来新建,点击之后,与上图一致。

或者open一个别人建立的本体。

3.2 创建类(Class)

  • 第一步:找到“Classes"选项

我们创建类(Class)需要用到“Classes"选项卡,

protege工具展现的面板还是比较多的,首先找到Classes面板吧,就像这样:

image


如果没有找到的话,在菜单中“Window->Tags->Classes”。

  • 第二步:创建类与子类

在classes页面,邮右键点击owl:Thing ,选择add subclasses;

在出现的对话框中 的name 输入类的名字,点击确定。


在这里插入图片描述


此外,还可以右键点击一个类(人物),创建它的子类(禅师),如下图:


在这里插入图片描述


同理可以创建出男人、女人、寺庙、学校等类别。

点击左侧的Thing,这个是所有类的最高级的父类,我们建立的所有类都是它的子孙,

这时候Thing上面的三个小图标中的第一个就会亮起,它是创建子类的快捷按钮,第二个是创建兄弟类,第三个是删除选中的类。

单击,输入类名就可以建立一个新的类了。这样我们新建一堆的类

3.3 构建类之间的关系

点击classes页面中的某一个类,在右面的describtion可以观察和修改 这个类的属性,比如它的父类是啥,他的互斥是啥。

我们可以利用这个功能设置类之间的关系。

比如:人物和地点 是完全不同的事物,他们之间具有排他性(owl:DishointWith),我们可以这样设置:

  1. 选中“人物”类,在右侧Describtion部分点击DishointWith 的加号。见下图左边

  2. 在弹出的窗口展开所以类(Thing)选则“地点”,确定;这样任务和地点就有互斥关系了。


在这里插入图片描述


3.4 (重点)创建“关系”properties

“关系”properties 是三元组中间的一环,没有“关系”,试题之间无法连接起来。所以目前最重要的是要创建“关系”properties 连接起不同的实体。

具体方法如下图:


在这里插入图片描述


有了“关系” 还要进一步设定 “关系”的约束。 比如对于关系“曾住”来说, 他的主体(domain)只能是一个人名! 而他的客体(对象)只能是一个地点! 具体设置方式如下图:


在这里插入图片描述


同理可以设置“父亲”、“前身”“开山之祖”、“相识”等关系。

其中设置“相识”的时候,可以点击symmetric(对称性)。 即A相识与B 那么B相识与A。 这一点特别重要,在推理的时候,免去我们人工很多设置。

3.5 (重点)设置实体的属性

实体不仅仅 有相互之间的关系相连接,还有属于自己的一些属性, 比如:对于禅师来说,会有法号,法号必须是string类型。

我们切换到"Data properties",我们在该界面创建类的属性,即,数据属性。其定义方法和对象属性类似,除了没有这么丰富的描述属性特性的词汇。其实不难理解,这些描述特性的词汇是传递、对称、反对称、自反等,表明其必定有指向其他资源或自身的边,而我们之前提到过,数据属性相当于树的叶子节点,只有入度,而没有出度。


在这里插入图片描述


同理,可以设置“别名”、“籍贯”、“生日”等实体属性

3.6 水到渠成,添加实体

前面分别定义了“类别”、“关系”、“实体的属性”以及他们的约束条件。下面只需要按照之前的约束填写一个个的实体即可。

  • 第一步创建实体


在这里插入图片描述


  • 第二一步创建实体之间的关系

同时在创建实体的过程中就可以顺便填写上试题之间的关系,即三元组。


在这里插入图片描述


(此处注意,关系名 和实体名都要手动填写,没有系统提示;如果有错别字,无法填写成功)


  • 第三步:填写实体的属性。


在这里插入图片描述


4 Protege本体保存、可视化、推理

4.1 Protege本体保存

  • 在菜单中选择File -> sava

  • 弹出的页面格式选择:“RDF/XML Syntax” 并点击确定

  • 在新出现的页面中输入保存本体的名字比如:“test苏轼”,保存文件类型选择“OWL File”并点击保存

同时,这个保存后的文件可以共别人打开,发开方式为:File -> Open

4.2 Protege图谱可视化

protege也支持以可视化的方式来展示本体结构。我们点击"Window"选项,在"Tabs"中选择"OntoGraf",然后"Entities"旁边就多了一个标签页。在右侧窗口中移动元素,可以很直观地观察本体之间的关系。

在菜单中选择 Windows -> Tabs -> OntoGraf


在这里插入图片描述


注意,默认的一些实体是隐藏的,在图中单击加号 即可显示出来。

4.3 Protege推理

Protege是具有强大推理插件的(hermiT),比如苏轼相识B,那么根据对称性,B应该自动相识苏轼。 这样推理就可以展现出强大人脉网络。

具体操作如下图:


在这里插入图片描述


点击之后,所有的推理规则会存储到本体中,比如下图,点击裘文德,会出现他是男人 这样一条新的三元组。


在这里插入图片描述



标签: #Protégé #人工智能 #知识图谱

声明:本站内容除标明“原创”、“独家整理”外,均来自于网络公开信息收集,仅供学习使用,本站少数附件需自愿赞助后才可下载,该费用并不是直接用于购买附件,而是作为公益赞助自愿支持本站服务器及网站运维,请您知晓。如涉嫌侵犯您的合法权益,请联系vip@health.net.cn告知我们,我们将在第一时间撤销文章并表达歉意,期待我们共同促进医学行业信息交流和发展,感谢您的支持。 立刻扫码加微信群