陈星豪
(广西电力职业技术学院,南宁530007)
近年来,人们的饮食日益多样化,餐桌上的菜品也是荤素搭配,但是有些食物是不能一起吃的,这些食物单独进食并没有任何问题,如果将两种或者两种以上的食物混合起来食用,则容易出现食物中毒或营养不被吸收等情况。不同食物由于组成的成分不同,有些食物混在一起食用会在体内产生化学反应,生成不能被人消化吸收的沉淀,严重的会引起疾病。因此食物不可以乱搭配,否则轻则流失营养,重则有生命危险。
目前国内外对于食品搭配安全的研究基本上是靠专家的经验判断,缺少系统化和智能化的查询方法或推理方法。本体理论和技术的发展与应用为食品搭配安全查询专项研究提供了一种新的途径。目前国内外对本体在食品领域安全的研究只局限于针对食品的分析和建模,较少对食品搭配对人们身体所造成的影响进行深入探讨,没有对食品搭配本体做相应的推理研究。
构建一个智能的食品搭配安全查询系统,挖掘食品搭配有可能对人身造成影响的信息,指导人们健康的饮食生活。
本体的目标是捕获相关领域的知识,提供对该领域知识的共同理解,确定该领域内共同认可的词汇,并从不同层次的形式化模式上给出这些词汇(术语)和词汇间相互关系的明确定义[1-2]。总的来说,构造本体可以实现某种程度的知识共享和重用,以及提高系统通讯、互操作、可靠性的能力。
本体推理机可用于推理和查询语义,属于语义web实现的主要途径之一,推理是指依据一定的规则从已有事实推出结论的过程。本体推理机主要是针对本体进行推理,构建一个完善的领域本体是推理的基础。Jena是面向语义Web的应用开发包,包含的内容比较全面,Jena中的推理引擎是针对具体本体语言的推理机,针对性强。OWL(Web Ontology Language)是W3C开发的一种网络本体语言,用于对本体进行语义描述。其中OWLDL(Description Logic,描述逻辑)将可判定推理能力和较强表达能力作为首要目标[3-5]。
本文采用OWL语言来描述并构建食品搭配安全领域本体,根据推理规则构建部分自定义规则,最后使用JEna推理机对食品搭配对人身所造成的影响进行推理。
查询模块要有友好简洁的查询界面,利于人们方便使用。同时,为了能实现严密的逻辑推理功能,必须要有领域本体库和推理规则的支撑。食品搭配安全查询模块框架如图1所示。
图1 食品搭配安全查询模块
具体工作流程为:查询界面接收用户的查询搭配信息,输送到推理机,推理机结合领域本体以及推理规则进行相关的逻辑推理,最后得出结果,显示到查询界面。
任何一个食品都包含有丰富的元素,比如,虾这种食品,含大量的维生素B12,同时富含锌、碘、硒、热量和较低的脂肪。同时,食品搭配进食后会造成相关的元素进行化学作用,从而产生新的元素。这些新的元素有的是人身体所需的,有益健康,有的则是对人身造成有害影响的。根据营养专家的建议,食品搭配安全领域的本体可以分为以下几类:
3.2.1 源食品本体。
源食品本体定义为进食之前食品的原本状态,以及所包含的元素。食品的种类繁多,每一种食品还包括有更细品种的食品,各个食品也包含有丰富的元素。这些结构和内容都是通过源食品本体来表现出来。比如,虾这类食品,虾属节肢动物甲壳类,种类很多,包括青虾、河虾、草虾、小龙虾、对虾(南美白对虾,南美蓝对虾)、明虾、基围虾、琵琶虾、龙虾等。其中虾还含有热量、碳水化合物、脂肪、蛋白质、纤维素、钙等元素。对于山楂这类食品,可以分为酸甜两种山楂。其中,酸山楂包含糖类、蛋白质、脂肪、维生素C、胡萝卜素、淀粉、苹果酸、鞣酸等元素。
3.2.2 终食品本体。
终食品定义为食品在进入人的身体后最终所存在的状态,包括进入人身体后所发生的化学反应后产生的最终元素。比如,虾和山楂同时进入人的身体之后,原先的钙和鞣酸两种元素会生成新的不溶性结合物,这种不溶性结合物就属于终食品本体的概念。
3.2.3 影响状况本体。
影响状况本体定义为终食品在人身体内对身体所造成的影响。包括有呕吐、头晕、恶心和腹痛腹泻等不良影响,也包括补肾壮阳,通乳抗毒、养血固精、化瘀解毒、益气滋阳、通络止痛、开胃化痰等功效。
根据食品搭配安全领域本体的分类,采用OWL描述语言构建领域本体相关类之间的关系。
食品搭配安全领域本体包括有源食品本体、终食品本体、影响状况本体,三个子本体相互之间存在着明显的关联性。各主要本体之间的关系主要包括有:
3.3.1 生成。主要用于描述源食品本体和终食品本体之间的关系,说明源两种或多种食品本体混合最终会生成什么样的终食品本体。例如,钙和鞣酸两种元素会生成新的不溶性结合物。
3.3.2 产生。主要用于终食品本体与影响状况本体之间的关系,说明终食品本体对人身体会造成什么样的影响状况本体。例如,不溶性结合物会对人体产生呕吐、头晕、恶心和腹痛腹泻等影响。
3.3.3 引发。主要用于说明影响状况本体相互之间的关系,说明两种或多种影响状况本体同时或接连发生会引发另外一种影响状况本体。例如,头晕和呼吸困难会引发暂时性休克影响。
Jena囊括了针对本体的推理规则,可以检查概念是否满足,保证不同种类关系以及不同种类的属性不相交[6],但是从实际运行情况来看,通用规则是不能满足推理要求以及信息检索的基本要求的。所以要从水利工程建筑安全隐患及各个隐患特点入手,拟定最适合使用的推理机制,在满足相关要求的基础下,对其进行完善。对自定义规则进行推理,从实例关系以及属性关系等角度入手,介绍详细的制定过程。
3.4.1 生成反继承规则
Rule1(a rdf:subClassofm)(b rdf:subClassof n)(a b dp#shengcheng c)-->(m n dp#shengcheng c)
若源食品本体a是源食品本体m的子类,源食品本体b是n的子类,而源食品a,b搭配会生成终食品本体c,则源食品m和n搭配也会生成终食品c。
3.4.2 产生的反继承规则
Rule2(a rdf:subClassof b)(a dp#chansheng c)-->(b dp#chansheng c)
若终食品本体a是终食品本体b的子类,而终食品a本体会产生影响状况本体c,则终食品本体b也会产生影响状况本体c。
3.4.3 引发反继承规则
Rule3(a rdf:subClassofm)(b rdf:subClassof n)(a b dp#yinfa c)-->(m n dp#yinfa c)
若影响状况本体a和b分别是m和n的子类,而a和b会引发另外一个影响状况本体c,则m和n也会引发c。
本次选用的推理实现平台为netbeans,而在开发语言方面则使用java来实现,通过加载jena2API库文件结合自定义程序的方式来实现推理。从ReasonerRegistry当中获取OWLReasoner。ReasonerRegistry.getOWLReasoner,并在其标准配置当中直接返回OWL reasoner,在返回OWL reasoner之后,将reasoner和其本体相互绑定,通过reasoner来实现返回,从本体模型当中创建InfModel。只要完成原始数据和owl的本体模型创建,便可以与其余的Model相同处理。创建和查询推理模型部分代码如下:
为了验证模型的查询功能,构建了一个小型的食品搭配安全领域本体,其中有小型的子本体包括源食品本体、终食品本体、影响状况本体。通过输入2个食品搭配信息来检验查询效果。
4.1查询食物搭配为:虾+柿子,结果显示如图3所示。
图3 “虾+柿子”搭配查询结果
4.2查询食物搭配为:河虾+韭菜,结果显示如图4所示。
图4 “河虾+韭菜”搭配查询结果
以上实验结果说明了本查询模型系统具有挖掘食品搭配对人体所造成的各种影响的功能,无论是积极的影响还是消极的影响,模型系统具有合理性、智能性、有效性的特点。
本文将本体理论应用于食品搭配领域,分析食品领域中的概念以及概念之间的关系,创建食品搭配领域本体模型,并采用Jena推理引擎和自定义的规则对其进行推理,构建基于本体推理的食品搭配安全查询模型,挖掘食品搭配对人身所造成的影响信息。经实验结果表明,本模型具有合理性、智能性、有效性等特点。模型不足之处在于,对食品搭配的量没有考虑,因为有些食物搭配产生的影响会根据量的多少而有所变化,这将是下一步研究的方向。
[1]付秀东.OWL+DL本体中概念相似度算法研究[D].西南交通大学,2009.
[2]李玉华,卢正鼎,廖振松.基于本体的通用知识网格架构研究[J].华中科技大学学报:自然科学版,2006,34(3):21-24.
[3]朱姬凤马宗民吕艳辉.OWL本体到关系数据库模式的映射[J].计算机科学,2008,35(8):165-169.
[4]田飞,刘鲁.基于语义推理的DSS模型研究与应用[J].计算机工程与应用,2009,45(17):11-15.
[5]李宏伟,蔡畅,李勤超.基于Jena和地理本体的空间查询与推理研究[J].测绘工程,2009,18(5):5-9.
[6]田宏,马朋云.基于Jena的城市交通领域本体推理和查询方法[J].计算机应用与软件,2011,28(8):57-59.