猫头鹰-protege无法正确推断?如何精确定义一类“素食主义者"? [英] owl - protege not inferring correctly? how to define precisely a class "vegetarian"?

查看:154
本文介绍了猫头鹰-protege无法正确推断?如何精确定义一类“素食主义者"?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经被困了两天,试图了解为什么以下情况不起作用:

I have been stuck for two days now trying to understand why the following scenario isn't working:

此处的屏幕截图: http://dl.dropbox.com/u/4677548/screenshots.html

我有素食类(Food的子类),相当于食物和(鸡蛋或MilkAndDerivates或VeganFood)",如屏幕快照1所示.

I have a VegetarianFood class (subclass of Food) that is equivalent to "Food and (Eggs or MilkAndDerivates or VeganFood)" as you can see in the screenshot number 1

而纯素食类则等同于其他类(NutsAndSeeds,谷物,水果等). 屏幕截图2

The VeganFood class, on turn, is equivalent to other classes (NutsAndSeeds, Cereals, Fruit, etc...) screenshot 2

如您所见,有两个人(切达干酪和腰果)被创建为MilkAndDerivates和NutsAndSeeds 屏幕截图3 并且可以正确地推断出他们是素食主义者和素食主义者成员

as you can see there are two individuals (cheddar cheese and cashew) created as MilkAndDerivates and NutsAndSeeds screenshot 3 and they are correctly inferred as VegetarianFood and VeganFood member

然后,我使用对象属性hasIngredient创建了两个人作为食谱,一个人仅使用腰果(PastaVega),另一个人同时使用切达干酪和腰果(PastaVege) 屏幕截图4和5

Then I created two individuals as recipes, one only with cashew (PastaVega) and one with both cheddar chese and cashew (PastaVege), using the object property hasIngredient screenshot 4 and 5

,并且它们被推断为Recipe ...,但是没有一个属于VegatarianRecipe和VeganRecipe类别,定义如下 屏幕截图6和7

and they have been inferred as Recipe...BUT none falls into the category of VegatarianRecipe and VeganRecipe, defined as follows screenshot 6 and 7

我没有任何线索,为什么不能将它们推断为素食食谱(或素食主义者)?我想念什么?

I have no clues, Why they are not inferred as VegetarianRecipe (or vegan)??What am I missing?

如果我将素食食谱(或素食主义者)从 食谱和(仅具有成分的纯素食)"

If I change VegetarianRecipe (or vegan) from "Recipe and (hasIngredient ONLY VegetarianFood)"

到 食谱和(具有某些素食食品成分)"

to "Recipe and (hasIngredient SOME VegetarianFood)"

屏幕截图8

显示了收据个人,但是当然这不是我要尝试的方式,因为这样它将包括混合肉类和素食的食谱. 那么,如何定义素食食谱和素食主义者类别,以使推理者在食谱为素食主义者或素食主义者时能够正确推断呢??

the recepies individuals are showed, but of course this is not what I am trying to do, as in this way it will include recipes with mixed meat and vegetarianFood. So how to define a vegetarianrecipe and veganrecipe class to allow the reasoner to infer correctly when a recipe is vegetarian or vegan????

推荐答案

您发现OWL推理使用开放世界假设这一事实的结果.

You have hit upon a consequence of the fact that OWL reasoning uses an open-world assumption.

不能将您的PastaVege配方推断为VegetarianRecipe的原因是,尽管您在配方中明确列出的成分确实是所有VegeratianFood实例,但很可能是某些当前未知的成分你的食谱不是素食.

The reason your PastaVege recipe is not inferred to be a VegetarianRecipe is that, although the ingredients that you explicitly list in the recipe are indeed all VegeratianFood instances, it could well be that some currently unknown ingredient of your recipe is not a vegetarian food.

由于您对VegetarianRecipe的限制是所有成分应为素食食品(而不仅仅是我们目前所知道的那些),因此(在开放的世界中)不能确切地得出结论,您的食谱是确实是VegetarianRecipe.

Since your constraint on VegetarianRecipe is that all ingredients should be VegetarianFoods (not just the ones we currently know about), it cannot be definitively concluded (in an open world) that your recipe is indeed a VegetarianRecipe.

有很多方法可以解决此问题,但是没有一种方法可以真正满足您的要求-您需要从稍微不同的角度进行处理.

There are a number of ways to deal with this, but none really do exactly what you want - you need to approach it from a slightly different angle.

无需详细说明建模细节:尽管根据您当前的模型很难推断出一种食谱是否是素食主义者,但是推断出一种食谱是否是素食主义者则相对简单;具有至少一种非素食成分的任何食谱都是非素食食谱.

Without going into the exact modeling details: although it is quite difficult to infer if a recipe is vegetarian given your current model, it is relatively simple to infer if a recipe is not vegetarian; any recipe that has at least one non-vegetarian ingredient is a non-vegetarian recipe.

另一种方法是创建一组封闭的(素食)成分(通过oneOf约束使用OWL枚举类),但这对您的模型进行了重大更改,当然,具有以这种方式列出所有可能的成分.

An alternative approach is that you create a closed set of (vegetarian) ingredients (using an OWL enumerated class via the oneOf constraint), but that is a significant change to your model, and of course it is tedious to have to list all possible ingredients in this fashion.

这篇关于猫头鹰-protege无法正确推断?如何精确定义一类“素食主义者"?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆