会员中心 |  会员注册  |  兼职信息发布    浏览手机版!    超值满减    人工翻译    英语IT服务 贫困儿童资助 | 留言板 | 设为首页 | 加入收藏  繁體中文
当前位置:首页 > 机翻技术 > 机器翻译 > 正文

程序语义学与问答系统

发布时间: 2023-06-28 09:29:07   作者:etogether.net   来源: 网络   浏览次数:
摘要: 程序语义学方法在解释逻辑连词和量词的时候更有趣,这两种词在关系数据库中很显然没有对应的结构。


基于程序的技术通常在数据库查询程序中使用。在这种应用中,逻辑形式语言和数据库语言的表达能力有很大的差别。知识库(即数据库)只包含肯定文字命题,通常不包含变量。在这种情况下,一般做法不是将逻辑形式语言转化成本节先前描述的扩展的一阶谓词演算,而是将逻辑形式当成用查询语言构造的表达式来处理。每个逻辑形式语言结构对应一个执行适当查询的特定过程。例如,查询“Does every flight to Chicago serve breakfast?”(是否每一趟飞往Chicago的航班都提供早餐?)的逻辑形式语言为:


(EVERY f1 : (& (FLIGHT f1) (DEST f1 (NAME c1 "Chicago"))) 

        (SERVE-BREAKFAST f1))


可以解释为如下过程:

1. 在数据库中找出所有目的地为CHI(数据库中表示Chicago的符号)的航班。

2. 对找到的每个航班,检查是否提供早餐。如果都提供,返回是;否则返回不是。


此文说明了如何将逻辑形式的表达式解释为过程的方法,这种方法常称为程序语义学 (procedural semantic)。


为了更清楚地了解这个过程,我们先分析图1所示的简单数据库查询系统。这个数据库由一组不含变量的肯定文字命题组成。时间用国际表示法来表示;比如1700HR表示下午5:00。关系(ATIME fct)表示航班f在时刻t到达机场c,而(DTIME fct)表示航班f在时刻t离开机场c。这个数据库系统提供一个基于文字命题的模式匹配的简单接口,其中,查询中可能包含变量。假定现在有两个数据库查询函数:


(Test


(Retrieve


例如,已知图1 的数据库,查询:


(Retrieve ?x (FLIGHT ?x) (ATIME ?x CHI 1000HR))


将返回列表(F2),因为F2是 ?x的惟一约束,使得这两个文字命题都在数据库中。


图1.png


图1 一个简单的航班时刻表数据库


用逻辑形式语言表示的所有表达式必须用一种特定的方法来解释,按照这种方法,这些表达式最终都简化为这个数据库的两种查询形式。简化的方法是通过将逻辑形式映射为对数据库执行适当查询的过程。因此,回答一个问题可以通过两个步骤来完成:将逻辑形式转换为一个程序,然后执行该程序,计算得到答案。




微信公众号

[1] [2] [3] [下一页] 【欢迎大家踊跃评论】
  • 上一篇:综合的知识表示方法
  • 下一篇:时态在机器翻译中的表示


  • 《译聚网》倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请30天内提供版权疑问、身份证明、版权证明、联系方式等发邮件至info@qiqee.net,我们将及时沟通与处理。


我来说两句
评论列表
已有 0 条评论(查看更多评论)