以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 Semantic Web(语义Web)/描述逻辑/本体 』  (http://bbs.xml.org.cn/list.asp?boardid=2)
----  用jena进行推理,是否每次推理后的模型都是一样的?  (http://bbs.xml.org.cn/dispbbs.asp?boardid=2&rootid=&id=70510)


--  作者:lh57
--  发布时间:12/15/2008 3:18:00 PM

--  用jena进行推理,是否每次推理后的模型都是一样的?
做语义检索,在检索的过程中实现推理。也就是说输入关键词,通过推理获得关键词的相关信息。

推理是用jena实现的,每次检索的关键词不一样,推理后获得的推理模型内容是否都是一样的?

因为我在写推理规则时,发现如果修改了推理规则,推理后模型的内容在每次检索时都是一样的,可以如果不修改推理规则,推理后的模型内容又不太一样。但是无论是否修改推理规则,获得的检索结果又都是一样的,不知道是为什么?

修改前的推理规则为:
(?x rdfs:domain ?y),(?y rdfs:subClassOf ?z) ->(?x rdfs:domain ?z)
按照上面的推理规则,每次推理后的内容都不一样。可是我觉得这个规则有问题,应该改为下面的
(?x rdfs:domain ?y),(?z rdfs:subClassOf ?y) ->(?x rdfs:domain ?z)
我觉得只有Z是Y的子类,才能得出X的定义域是Z。



--  作者:wanggou
--  发布时间:12/15/2008 3:29:00 PM

--  
owl:equivalentClass,似乎更好吧
除非你想说的不是那个意思
--  作者:lh57
--  发布时间:12/15/2008 3:54:00 PM

--  
不太明白。
我的意思是如果写好了推理规则,是否推理后的模型内容就应该是一样的。
好比我上面写的这个推理规则
(?x rdfs:domain ?y),(?y rdfs:subClassOf ?z) ->(?x rdfs:domain ?z)
本体是不变的,推理规则也是固定的,得出的推理模型中的内容是不是也应该是一样的?

--  作者:wanggou
--  发布时间:12/15/2008 4:09:00 PM

--  
是的,但是你这个规则导致了本体库不一致
所以你会得到一个意想不到的结果
--  作者:lh57
--  发布时间:12/15/2008 4:22:00 PM

--  
明白了,多谢!
也就是说,推理规则写得不对。

顺便再问个问题,怎样判断推理规则是否错误?目前简单的方法是不是就是看推理后的模型内容是否一致,一致就说明推理规格是正确的?


--  作者:wanggou
--  发布时间:12/15/2008 4:27:00 PM

--  
这个并不是你写的规则错误
本身规则就有可能会导致本体不一致
因为规则有可能会引入新的知识,这和DL推理是不同的
DL只是可以告诉你那些隐式的知识,而规则有可能引入新知识
--  作者:lh57
--  发布时间:12/15/2008 4:42:00 PM

--  
好强啊!
但是有些迷惑,本体不一致会对检索结果有什么影响呢?
如果规则没有问题,那么是不是认为推理后的结论都是正确的呢?
--  作者:wanggou
--  发布时间:12/15/2008 4:46:00 PM

--  
简单的说
不一致其实就意味着本体中存在矛盾
矛盾可以导出任意的结果
规则并不存在错和对的问题,就好比,你写
马(x) ->兔子(x)
这不能说规则是错,但是如果把这代入到本体中,成了指马为兔了,显然是不对的


--  作者:lh57
--  发布时间:12/15/2008 5:15:00 PM

--  
明白了,大大的多谢!
佩服!
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
58.594ms