Connect public, paid and private patent data with Google Patents Public Datasets

检索方法、检索系统以及自然语言理解系统

Download PDF

Info

Publication number
CN103049567A
CN103049567A CN 201210593064 CN201210593064A CN103049567A CN 103049567 A CN103049567 A CN 103049567A CN 201210593064 CN201210593064 CN 201210593064 CN 201210593064 A CN201210593064 A CN 201210593064A CN 103049567 A CN103049567 A CN 103049567A
Authority
CN
Grant status
Application
Patent type
Prior art keywords
retrieval
bar
records
system
comprises
Prior art date
Application number
CN 201210593064
Other languages
English (en)
Inventor
张国峰
朱逸斐
Original Assignee
威盛电子股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/20Handling natural language data
    • G06F17/28Processing or translating of natural language
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/20Handling natural language data
    • G06F17/27Automatic analysis, e.g. parsing
    • G06F17/2705Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/20Handling natural language data
    • G06F17/27Automatic analysis, e.g. parsing
    • G06F17/2705Parsing
    • G06F17/271Syntactic parsing, e.g. based on context-free grammar [CFG], unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/20Handling natural language data
    • G06F17/27Automatic analysis, e.g. parsing
    • G06F17/2785Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/30Information retrieval; Database structures therefor ; File system structures therefor
    • G06F17/30286Information retrieval; Database structures therefor ; File system structures therefor in structured data stores
    • G06F17/30312Storage and indexing structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/30Information retrieval; Database structures therefor ; File system structures therefor
    • G06F17/30286Information retrieval; Database structures therefor ; File system structures therefor in structured data stores
    • G06F17/30386Retrieval requests
    • G06F17/30389Query formulation
    • G06F17/30401Natural language query formulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/30Information retrieval; Database structures therefor ; File system structures therefor
    • G06F17/30861Retrieval from the Internet, e.g. browsers
    • G06F17/30864Retrieval from the Internet, e.g. browsers by querying, e.g. search engines or meta-search engines, crawling techniques, push systems

Abstract

一种检索方法、检索系统以及自然语言理解系统,此检索系统包括:结构化数据库以及搜寻引擎。结构化数据库包含多个记录,其中每个记录包括标题栏以及内容栏,而标题栏内包括至少一分栏,每一分栏包括指引栏以及数值栏。前述记录的指引栏储存指引数据、数值栏储存数值数据、内容栏则储存内容细节数据。搜寻引擎针对用户请求信息所产生的关键字,对结构化数据库的记录进行全文检索,并将检索结果传送至一知识辅助理解模块以确定用户的意图,并在确认用户意图后将用户所要的信息回传给用户。

Description

检索方法、检索系统以及自然语言理解系统

技术领域

[0001] 本发明涉及一种检索技术,特别是涉及一种对结构化数据库进行全文检索的检索方法、检索系统以及自然语言理解系统。

背景技术

[0002] 在计算机的自然语言理解(Nature Language Understanding)中,通常会使用特定的语法来抓取用户的输入语句的意图或信息。因此,若数据库中储存有足够多的用户输入语句的数据,便能做到合理的判断。

[0003] 在现有的作法中,有一种是利用内置的固定词列表来抓取用户的输入语句,而固定词列表中包含了特定的意图或信息所使用的特定用语,而用户需依照此特定用语来表达其意图或信息,其意图或信息才能被系统正确识别。然而,迫使用户去记住固定词列表的每个特定用语是相当不人性化的作法。例如:现有技术使用固定词列表的实施方式,要求用户在询问天气的时候必须说:“上海(或北京)明天(或后天)天气如何? ”,而若用户使用其他比较自然的口语化表达也想询问天气状况时,比如是“上海明天怎么样啊?”,因为语句中未出现“天气”,所以现有技术就会理解成“上海有个叫明天的地方”,这样显然没有抓到用户的真正意图。另外,用户所使用的语句种类是十分复杂的,并且又时常有所变化,甚至有时用户可能会输入错误的语句,在此情况下必须要藉由模糊匹配的方式来抓取用户的输入语句。因此,仅提供僵化输入规则的固定词列表所能达到的效果就更差了。

[0004] 此外,当利用自然语言理解来处理多种类型的用户意图时,有些相异的意图的语法结构却是相同的,例如当用户的输入语句为"我要看三国演义",其用户意图有可能是想看三国演义的电影,或是想看三国演义的书,因此通常在此情况中,便会匹配到两种可能意图来让用户做选择。然而,在很多情况下,提供不必要的可能意图来让用户做选择是十分多余且没效率的。例如,当用户的输入语句为〃我想看超级星光大道〃时,将使用者的意图匹配为看超级星光大道的书或者画作是十分没必要的(因为超级星光大道是电视节目)。

[0005] 再者,一般而言,在全文检索中所获得的搜寻结果是非结构化的数据。非结构化数据内的信息是分散且不具关联的,例如,在google或百度等搜寻引擎输入关键字后,所获得的网页搜寻结果就是非结构化数据,因为搜寻结果必须通过人为的逐项阅读才能找到当中的有用信息,而这样的作法不仅浪费用户的时间,而且可能漏失想要的信息,所以在实用性上会受到很大的限制。

发明内容

[0006] 本发明提供一种检索方法以及检索系统,其对结构化数据库进行全文检索,而使全文检索所获得的搜寻结果是非常有意义的结构化的数据。

[0007] 本发明又提供一种自然语言理解系统,藉由对结构化数据库进行全文检索来辅助判断用户的请求信息所表示的意图。

[0008] 本发明提出一种检索系统,其包括结构化数据库以及搜寻引擎。结构化数据库储存多个记录。搜寻引擎对结构化数据库进行全文检索,其中结构化数据库每个记录内部的所包含的数值数据相互间具有关联性,且数值数据共同用以表达来自用户的请求信息对该记录的意图。该搜寻引擎用以对该结构化数据库进行一全文检索,其中在该数值数据被匹配时,对应于该数值数据的指引数据被输出以确认该请求信息的意图。

[0009] 本发明提出一种自然语言理解系统,其包括:自然语言处理器、知识辅助理解模块以及检索系统。自然语言处理器将用户的请求信息,分析成至少一可能意图语法数据,每一可能意图语法数据包括至少一关键字及意图数据。耦接至自然语言处理器的知识辅助理解模块用以求得至少一可能意图语法数据中的确定意图语法数据,以表达用户的请求信息的意图。前述检索系统包括结构化数据库以及搜寻引擎。结构化数据库储存多个记录。搜寻引擎对结构化数据库进行全文检索。知识辅助理解模块传送关键字给检索系统,藉由检索系统的回应,以辅助求得确定意图语法数据。

[0010] 本发明提出一种检索方法,此方法首先提供结构化数据库,此结构化数据库储存多个记录。而后,对结构化数据库进行全文检索。

[0011] 根据本发明的一实施例中,前述的每个记录包括了标题栏,此标题栏内包括至少一分栏,每一分栏包括指引栏以及数值栏,前述记录的指引栏储存指引数据,前述记录的数值栏储存数值数据。

[0012] 根据本发明的一实施例中,前述的每个记录还包括内容栏,前述记录的内容栏储存前述记录的内容细节数据。

[0013] 根据本发明的一实施例中,当前述记录的标题栏中储存有多个分栏的数据时,于各分栏的数据间储存第一特殊字符,用以分隔各分栏的数据,于指引栏与数值栏的数据间储存第二特殊字符,用以分隔指引栏与数值栏的数据。

[0014] 根据本发明的一实施例中,标题栏中的分栏具有固定位数。

[0015] 基于上述,本发明藉由将用户的请求信息所包括的关键字,来对结构化数据库中具有特定数据结构的记录进行全文检索,以辅助判断出用户在请求信息中所表示的意图。

[0016] 为使本发明的上述特征和优点能更明显易懂,下文特举实施例,并结合附图详细说明如下。

附图说明

[0017] 图1为根据本发明的一实施例的自然语言理解系统的方块图。

[0018] 图2为根据本发明的一实施例的自然语言处理器对用户的各种请求信息的分析结果的示意图。

[0019] 图3A是根据本发明的一实施例的结构化数据库所储存的具有特定数据结构的多个记录的示意图。

[0020] 图3B是根据本发明的另一实施例的结构化数据库所储存的具有特定数据结构的多个记录的示意图。

[0021] 图3C是根据本发明的另一实施例的指引数据储存表格所储存的指引数据的示意图。

[0022] 图4A为根据本发明的一实施例的检索方法的流程图。

[0023] 图4B为根据本发明的另一实施例的自然语言理解系统工作过程的流程图。[0024] 图5A是依照本发明一实施例所绘示的自然语言对话系统的方块图。

[0025] 图5B是依照本发明一实施例所绘示的自然语言理解模块的方块图。

[0026] 图5C是依照本发明另一实施例所绘示的自然语言对话系统的方块图。

[0027] 图6是依照本发明一实施例所绘示的修正语音应答的方法流程图。

[0028] 图7A是依照本发明一实施例所绘示的自然语言对话系统的方块图。

[0029] 图7B是依照本发明另一实施例所绘示的自然语言对话系统的方块图。

[0030] 图8是依照本发明一实施例所绘示的自然语言对话方法流程图。

[0031] 图9为依据本发明一实施例的移动终端装置的系统示意图。

[0032]图10为依据本发明一实施例的信息系统的系统示意图。

[0033] 图11为依据本发明一实施例的基于语音识别的选择方法的流程图。

[0034] 图12是依照本发明一实施例所绘示的语音操控系统的方块图。

[0035] 图13所示是语音操控系统的方块图。

[0036] 图14是依照本发明一实施例所绘示的语音操控方法的流程图。

[0037] 附图符号说明

[0038] 100 :自然语言理解系统

[0039] 102,505,705 :请求信息

[0040] 104 :分析结果

[0041] 106:可能意图语法数据

[0042] 108 :关键字

[0043] 110:回应结果

[0044] 112:意图数据

[0045] 114:确定意图语法数据

[0046] 116 :分析结果输出模块

[0047] 200 :检索系统

[0048] 220 :结构化数据库

[0049] 240 :搜寻引擎

[0050] 260:检索接口单元

[0051] 280:指引数据储存表格

[0052] 300 :自然语言处理器

[0053] 302 :记录

[0054] 304 :标题栏

[0055] 306:内容栏

[0056] 308 :分栏

[0057] 310:指引栏

[0058] 312 :数值栏

[0059] 314 :来源栏

[0060] 316 :热度栏

[0061] 400 :知识辅助理解模块

[0062] S41(TS450 :根据本发明一实施例的检索方法的步骤[0063] S51(TS570 :根据本发明一实施例的自然语言理解系统工作过程的步骤

[0064] 500、500’、700、700’ :自然语言对话系统

[0065] 501、701 :语首输入

[0066] 503,703 :解析结果

[0067] 507,707 :语音应答

[0068] 5O9JO9 :特征语义

[0069] 510、710 :语音取样模块

[0070] 511、711 :候选列表

[0071] 520、520’、720、720’ :自然语言理解模块

[0072] 522、722 :语音识别模块

[0073] 524、724 :自然语言处理模块

[0074] 526、726 :语音合成模块

[0075] S602、S604、S606、S608、S610、S612 :修正语音应答的方法各步骤

[0076] 702 :语音综合处理模块

[0077] 730 :特性数据库

[0078] 740:自然语言数据库

[0079] S802〜S890 :根据本发明一实施例的自然语言对话方法各步骤

[0080] 900、1010 :移动终端装置

[0081] 910、1011 :语音接收单元

[0082] 920、1013 :数据处理单元

[0083] 9:30、1015 :显示单元

[0084] 940 :存储单元

[0085] 1000 :信息系统

[0086] 1020 :伺服器

[0087] SPl :第一语音

[0088] SP2 :第二语音

[0089] S110(TS1190:依据本发明一实施例的基于语音识别的选择方法的流程图

[0090] 1200、1300 :语音操控系统

[0091] 1210:辅助启动装置

[0092] 1212、1222 :无线传输模块

[0093] 1214 :触发模块

[0094] 1216:无线充电电池

[0095] I2I62:电池单元

[0096] 12164:无线充电模块

[0097] 1220、1320 :移动终端装置

[0098] 1221 :语音系统

[0099] 1224 :语音取样模块

[0100] 1226 :语音合成模块

[0101] 1227:语音输出接口[0102] 1228 :通讯模块

[0103] 1230 :(云端)伺服器

[0104] 1232 :语音理解模块

[0105] 12322 :语音识别模块

[0106] 12324 :语音处理模块

具体实施方式

[0107] 由于现有运用固定词列表的实施方式只能提供僵化的输入规则,对于用户多变的输入语句的判断能力十分不足,所以常导致对用户的意图判断错误而找不到所需的信息、或是因为判断力不足而输出不必要的信息给用户等问题。此外,现有的搜寻引擎只能对用户提供分散、且相关不强的搜寻结果,于是用户还要花时间逐条检视才能过滤出所需信息,不仅浪费时间而且可能漏失所需信息。本发明即针对现有技术的前述问题提出一结构化数据的检索方法与系统,在结构化数据提供特定的栏位来储存不同类型的数据元素,俾提供用户使用自然语音输入信息进行检索时,能快速且正确地判断用户的意图,进而提供所需信息予用户、或提供更精确讯息供其选取。

[0108] 图1为根据本发明的一实施例的自然语言理解系统的方块图。如图1所示,自然语言理解系统100包括检索系统200、自然语言处理器300以及知识辅助理解模块400,知识辅助理解模块400耦接自然语言处理器300以及检索系统200,检索系统200还包括结构化数据库220、搜寻引擎240以及检索接口单元260,其中搜寻引擎240耦接结构化数据库220以及检索接口单元260。在本实施例中,检索系统200包括有检索接口单元260,但非以限定本发明,某些实施例中可能没有检索接口单元260,而以其他方式使搜寻弓I擎240对结构化数据库220进行全文检索。

[0109] 当用户对自然语言理解系统100发出请求信息102时,自然语言处理器300可分析请求信息102,并在将所分析的可能意图语法数据106送往知识辅助理解模块400,其中可能意图语法数据106包含关键字108与意图数据112。随后,知识辅助理解模块400取出可能意图语法数据106中的关键字108并送往检索系统200并将意图数据112储存在知识辅助理解模块400内部,而检索系统200中的搜寻引擎240将依据关键字108对结构化数据库220进行全文检索之后,再将全文检索的回应结果110回传至知识辅助理解模块400。接着,知识辅助理解模块400依据回应结果110对所储存的意图数据112进行比对,并将所求得的确定意图语法数据114送往分析结果输出模块106,而分析结果输出模块116再依据确定意图语法数据114,传送分析结果104至伺服器,随后在查询到用户所需的数据后将其送给用户。

[0110] 上述的分析结果输出模块116可视情况与其他模块相结合,例如在一实施例中可并入知识辅助理解模块400中、或是在另一实施例中分离于自然语言理解系统100而位于伺服器(包含自然语言理解系统100者)中,于是伺服器将直接接收意图语法数据114再进行处理。此外,知识辅助理解模块400可将意图数据112储存在模块内部的储存装置中、在自然语言理解系统100中、伺服器中(包含自然语言理解系统100者)、或是在任何可供知识辅助理解模块400可以撷取到的储存器中,本发明对此并不加以限定。再者,自然语言理解系统100包括检索系统200、自然语言处理器300以及知识辅助理解模块400可以用硬件、软件、固件、或是上述方式的各种结合方式来构筑,本发明亦未对此进行限制。

[0111] 前述自然语言理解系统100可以位于云端伺服器中,也可以位于区域网路中的伺服器,甚或是位于个人计算机、移动计算机装置(如笔记型计算机)或移动通讯装置(如手机)等。自然语言理解系统100或检索系统200中的各构件也不一定需设置在同一机器中,而可视实际需要分散在不同装置或系统通过各种不同的通讯协定来连结。例如,自然语言理解处理器300及知识辅助理解模块400可配置于同一智能型手机内,而检索系统200可配置在另一云端伺服器中;或者是,检索接口单元260、自然语言理解处理器300及知识辅助理解模块400可配置于同一笔记型计算机内,而搜寻引擎240及结构化数据库220可配置于区域网路中的另一伺服器中。此外,当自然语言理解系统100皆位于伺服器时(不论是云端伺服器或区域网路伺服器),可以将检索系统200、自然语言理解处理器300、以及知识辅助理解模块400配置不同的计算机主机中,并由伺服器主系统来统筹其相互间的讯息与数据的传送。当然,检索系统200、自然语言理解处理器300、以及知识辅助理解模块400亦可视实际需求而将其中两者或全部合并在一计算机主机中,本发明并不对这部分的配置进行限制。

[0112] 在本发明的实施例中,用户可以用各种方式来向自然语言处理器300发出请求信息,例如用说话的语音输入或是文字描述等方式来发出请求信息。举例来说,若自然语言理解系统100是位于云端或区域网路中的伺服器(未显示)内,则用户可先藉由移动装置(例如手机、PDA、平板计算机或类似系统)来输入请求信息102,接着再通过电信系统业者来将请求信息102传送至伺服器中的自然语言理解系统100,来让自然语言处理器300进行请求信息102的分析,最后伺服器于确认用户意图后,再通过分析结果输出模块116将对应的分析结果104通过伺服器的处理后,将用户所请求的信息传回用户的移动装置。举例来说,请求信息102可以是用户希望藉由自然语言理解系统100来求得答案的问题(例如"明天上海的天气怎么样啊〃),而自然语言理解系统100在分析出用户的意图是查询上海明天的天气时,将通过分析结果输出模块116将所查询的天气数据作为输出结果104送给用户。此夕卜,若用户对自然语言理解系统100所下的指令为〃我要看让子弹飞〃、〃我想听一起走过的日子〃时,因为“让子弹飞”或“一起走过的日子”可能包含不同的领域,所以自然语言处理器300会将用户的请求信息102分析成一个或一个以上的可能意图语法数据106,此可能意图语法数据106包括有关键字108及意图数据112,然后再经由对检索系统220中的结构化数据240进行全文检索后,进而确认用户的意图。

[0113] 进一步来说,当用户的请求信息102为〃明天上海怎么样啊?〃时,自然语言处理器300经过分析后,可产生一个可能意图语法数据106 :

[0114] "〈queryweather〉,〈city〉=上海,〈时间 >=明天"。

[0115] 在一实施例中,如果自然语言理解系统100认为用户的意图已相当明确,便可以直接将用户的意图(亦即查询明天上海的天气)通过分析结果输出模块116输出分析结果104至伺服器,而伺服器可在查询到用户所指定的天气候传送给用户。又例如,当用户的请求信息102为〃我要看三国演义〃时,自然语言处理器300经过分析后,可产生出三个可能意图语法数据106 :

[0116] 〃〈readbook>,〈bookname〉=三国演义”;

[0117] 〃〈watchTV>,〈TVname〉=三国演义〃;以及[0118] 〃〈watchfilm>,〈filmname〉=三国演义"。

[0119] 这是因为可能意图语法数据106中的关键字108(亦即“三国演义”)可能属于不同的领域,亦即书籍(〈readbook〉)、电视剧(〈watchTV〉)、以及电影(〈readfilm〉)三个领域,所以一个请求信息102可分析成多个可能意图语法数据106,因此需要通过知识辅助理解模块400做进一步分析,来确认用户的意图。再举另一个例子来说,若用户输入"我要看让子弹飞〃时,因其中的〃让子弹飞〃有可能是电影名称或是书名称,所以也可能出现至少以下两个可能意图语法数据106 :

[0120] 〃〈readbook>,〈bookname〉=让子弹飞〃;以及

[0121] 〃〈watchfilm>,〈filmname〉=让子弹飞”;

[0122] 其分别属于书籍与电影两个领域。上述的可能意图语法数据106随后需通过知识辅助理解模块400做进一步分析,并从中求得确定意图语法数据114,来表达用户的请求信息的明确意图。当知识辅助理解模块400分析可能意图语法数据106时,知识辅助理解模块400可通过检索接口 206传送关键字108 (例如上述的“三国演义”或“让子弹飞”)给检索系统200。检索系统200中的结构化数据库220储存了具有特定数据结构的多个记录,而搜寻引擎240能藉由检索接口单元260所接收的关键字108来对结构化数据库220进行全文检索,并将全文检索所获得的回应结果回传给知识辅助理解模块400,随后知识辅助理解模块400便能藉由此回应结果110来求得确定意图语法数据114。至于对结构化数据库220进行全文检索以确定意图语法数据114的细节,将在后面通过图3A、图3B与相关段落做更详细的描述。

[0123] 在本发明的概念中,自然语言理解系统100能先撷取用户的请求信息102中的关键字108,并藉由结构化数据库220的全文检索结果来判别关键字108的领域属性,例如上述输入“我要看三国演义”时,会产生分别属于书籍、电视剧、电影三个领域的可能意图语法数据106,随后再进一步分析并确认用户的明确意图。因此用户能够很轻松地以口语化方式来表达出其意图或信息,而不需要特别熟记特定用语,例如现有作法中关于固定词列表的特定用语。

[0124] 图2为根据本发明的一实施例的自然语言处理器300对用户的各种请求信息的分析结果的示意图。

[0125] 如图2所示,当用户的请求信息102为〃明天上海的天气怎么样啊〃时,自然语言处理器300经过分析后,可产生出可能意图语法数据106为:

[0126] "〈queryweather〉,〈city〉=上海,〈时间 >=明天”

[0127] 其中意图数据112为"〈queryweather〉"、而关键字108为〃上海〃与〃明天〃。由于经自然语言处理器300的分析后只取得一组意图语法数据106(查询天气〈queryweather〉),因此在一实施例中,知识辅助理解模块400可直接取出关键字108〃上海〃与〃明天〃作为分析结果104送往伺服器来查询天气的信息(例如查询明天上海天气概况、包含气象、气温…等信息),而不需要对结构化数据库220进行全文检索来判定用户意图。当然,在一实施例中,仍可对结构化数据库220进行全文检索做更精确的用户意图判定,本领域的技术人员可依据实际需求进行变更。

[0128] 此外,当用户的请求信息102为〃我要看让子弹飞〃时,因为可产生出两个可能意图语法数据106:[0129] 〃〈readbook>,〈bookname〉=让子弹飞〃;以及

[0130] 〃〈watchfilm>,〈filmname〉=让子弹飞";

[0131] 与两个对应的意图数据112〃〈readbook>〃与"〈watchf以及两个相同的关键字108〃让子弹飞〃,来表示其意图可能是看〃让子弹飞〃的书籍或是看〃让子弹飞〃的电影。为进一步确认用户的意图,将通过知识辅助理解模块400传送关键字108〃让子弹飞〃给检索接口单元260,接着搜寻引擎240便藉由此关键字108〃让子弹飞〃来对结构化数据库220进行全文检索,以确认"让子弹飞"应该是书名称或是电影名称,藉以确认用户的意图。

[0132] 再者,当用户的请求信息102为〃我想听一起走过的日子〃时,可产生出两个可能意图语法数据106 :

[0133] //<playmusic>, <singer>= 一起走过,<songname>=日子";

[0134] 〃〈playmusic>,〈songname〉= 一起走过的日子";

[0135] 两个对应的相同的意图数据112〃〈playmusic>〃、以及两组对应的关键字108〃 一起走过〃与〃日子〃及〃 一起走过的日子〃,来分别表示其意图可能是听歌手〃 一起走过〃所唱的歌曲〃日子〃、或是听歌曲〃 一起走过的日子〃,此时知识辅助理解模块400可传送第一组关键字108〃 一起走过〃与〃日子〃以及第二组关键字〃 一起走过的日子〃给检索接口单元260,来确认是否有〃一起走过〃这位歌手来唱的〃日子〃这首歌(第一组关键字所隐含的用户意图)、或是否有"一起走过的日子"这首歌(第二组关键字所隐含的用户意图),藉以确认用户的意图。然而,本发明并不限于在此所表示的各可能意图语法数据与意图数据所对应的格式与名称。

[0136] 图3A是根据本发明的一实施例的结构化数据库220所储存的具有特定数据结构的多个记录的示意图。

[0137] 一般而言,在一些现有的全文检索作法中,所获得的搜寻结果是非结构化的数据(例如通过google或百度所搜寻的结果),因其搜寻结果的各项信息是分散且不具关联的,所以用户必须再对各项信息逐一检视,因此造成实用性的限制。然而,在本发明的概念中,能藉由结构化数据库来有效增进检索的效率与正确性。因为本发明所揭示的结构化数据库中的每个记录内部所包含的数值数据相互间具有关联性,且这些数值数据共同用以表达来自用户的请求信息对该记录的意图。于是在搜寻引擎对结构化数据库进行一全文检索时,可在记录的数值数据被匹配时,输出对应于该数值数据的指引数据以确认该请求信息的意图。这部分的实施细节将通过下列实例作更进一步的描述。

[0138] 在本发明的实施例中,结构化数据库220所储存的每个记录302包括标题栏304及内容栏306,标题栏304内包括多个分栏308,各分栏包括指引栏310以及数值栏312,所述多个记录302的指引栏310用以储存指引数据,而所述多个记录302的数值栏用312以储存数值数据。在此以图3A所示的记录I来举例说明,记录I的标题栏304中的各分栏308分别储存了:

[0139] ^singerguid :刘德华 〃、^songnameguid :一起走过的日子〃;及 〃songtypeguid :港台,粤语,流行";

[0140] 各分栏308的指引栏310分别储存了指引数据〃singerguid〃、〃songnameguid〃及"songtypeguid〃、而其对应分栏308的数值栏312则分别储存了数值数据〃刘德华〃、〃 一起走过的日子〃及〃港台,粤语,流行〃。指引数据"singerguid"代表数值数据〃刘德华〃的领域种类为歌手名称(singer),指引数据"songnameguid"代表数值数据〃一起走过的日子〃的领域种类为歌曲名称(song),指引数据"songtypeguid"代表数值数据〃港台,粤语,流行"的领域种类为歌曲类型(song type)。在此的各指引数据实际上可分别用不同的特定一串数字或字符来表示,在本发明中不以此为限。记录I的内容栏306则是储存了 〃一起走过的日子〃这首歌的歌词内容或储存其他的数据(例如作曲/词者…等),然而各记录的内容栏306中的真实数据并非本发明所强调的重点,因此在图3A中仅示意性地来描述。

[0141] 前述的实施例中,每个记录包括标题栏304及内容栏306,且标题栏304内的分栏308包括指引栏310以及数值栏312,但非以限定本发明,某些实施例中也可以没有内容栏306,甚或是有些实施例中可以没有指引栏310。

[0142] 除此之外,在本发明的实施例中,于各分栏308的数据间储存有第一特殊字符来分隔各分栏308的数据,于指引栏310与该数值栏312的数据间储存有第二特殊字符来分隔指引栏与数值栏的数据。举例来说,如图3A所示,"singerguid〃与〃刘德华〃之间、"songnameguid"与〃 一起走过的日子〃之间、以及"songtypeguid"与〃港台,粤语,流行〃之间是利用第二特殊字符〃:"来做分隔,而记录I的各分栏308间是利用第一特殊字符〃 I "来做分隔,然而本发明并不限于以〃:"或〃 I "来做为用以分隔的特殊字符。

[0143] 另一方面,在本发明的实施例中,标题栏304中的各分栏308可具有固定位数,例如各分栏308的固定位数可以是32个字符,而其中的指引栏310的固定位数可以是7或8个位(最多用来指引128或256种不同的指引数据),此外,因第一特殊字符与第二特殊字符所需要的位数可以是固定的,所以分栏308的固定位数在扣除指引栏310、第一特殊字符、第二特殊字符所占去的位数后,剩下的位数便可悉数用来储存数值栏312的数值数据。再者,由于分栏308的位数固定,加上分栏308储存数据的内容可如图3A所示依序为指引栏310(指引数据的 指标)、第一特殊字符、数值栏312的数值数据、第二特殊字符,而且如前所述,这四个数据的位数量也是固定的,于是在实作上可跳过指引栏310的位(例如跳过前7或8个位)、以及第二特殊字符的位数(例如再跳过I个字符,亦即8个位)后,再扣掉第一特殊字符所占的位数(例如最后I个字符、8个位)之后,最后便可直接取得数值栏312的数值数据(例如在记录I的第一个分栏308中直接取出数值数据“刘德华”),接着再进行所需的领域种类判断即可。于是,在目前所取出的数值数据比对完毕后(不论是否比对成功与否),可以再依据上述取出数值数据的方式取出下一个分栏308的数值数据(例如在记录I的第二个分栏308中直接取出数值数据“一起走过的日子”),来进行比对领域种类的比对。上述取出数值数据的方式可以从记录I开始进行比对,并在比对完记录I所有的数值数据后,再取出记录2的标题栏308中第一个分栏308的数值数据(例如“冯小刚”)进行比对。上述比对程序将持续进行,直到所有记录的数值数据都被比对过为止。

[0144] 应注意的是,上述的分栏308的位数、以及指引栏310、第一特殊字符、第二特殊字符个使用的位数可依实际应用改变,本发明对此并未加以限制。前述利用比对来取出数值数据的方式只是一种实施例,但非用以限定本发明,另一实施例可以使用全文检索的方式来进行。此外,上述跳过指引栏310、第二特殊字符、第一特殊字符的实作方式,可以使用位平移(例如除法)来达成,此部分的实施可以用硬件、软件、或两者搭配的方式进行,本领域技术人员可依计实际需求而变更。在本发明的另一实施例中,标题栏304中的各分栏308可具有固定位数,分栏308中的指引栏310可具有另一固定位数,并且标题栏304中可不包括第一特殊字符以及第二特殊字符,由于各分栏308以及各指引栏310的位数为固定,所以可利用跳过特定位数的方式或是使用位平移(例如除法)的方式来直接取出各分栏308中的指引数据或数值数据。

[0145] 应注意的是,由于前面已提到分栏308具有一定的位数,所以可以在自然语言理解系统100中(或是包含自然语言理解系统100的伺服器中)使用计数器来记录目前所比对的是某一记录的某分栏308。此外,比对的记录亦可使用另一计数器来储存其顺序。举例来说,当分别使用一第一计数器记录来表示目前所比对的记录顺序、并使用一第二计数器来表示目前所比对的分栏顺序时,若目前比对的是图3A的记录2的第3个分栏308 (亦即比对“fiIenameguid:华谊兄”)时,第一计数器所储存的数值将是2 (表示目前比对的是记录2),第二计数器所储存的数值则为3 (表示目前比对的是第3个分栏308)。再者,上述仅以7或8个位储存指引栏310的指引数据的方式,系希望将分栏308的大多数位都用来储存数值数据,而实际的指引数据则可通过这7、8个位当作指标,再据以从检索系统220所储存的指引数据表格280中读取实际的指引数据。于是,在实际操作时,除了可直接取出数值数据进行比对之外,亦可在产生匹配结果时,直接依据上述两个计数器的数值,直接取出指引数据作为回应结果110送给知识辅助理解模块400。举例来说,当记录6的第2个分栏308 (亦即“songnameguid:背叛”)匹配成功时,将得知目前的第一计数器/第二计数器的数值分别为6与2,因此可以依据这两个数值前往储存图3C所示的指引数据储存表格280,由记录6的分栏2查询出指引数据为“songnameguid”。在一实施例中,可以将分栏308的位树固定后,再将分栏308的所有位都用来储存数值数据,于是可以完全除去指引栏、第一特殊字符、第二特殊字符,而搜寻引擎240只要知道每越过固定位数就是另一个分栏308,并在第二计数器中加一即可(当然,每换下一个记录进行检索时亦需将第一计数器的储存值加一),这样可以提供更多的位数来储存数值数据。

[0146] 再举一个实例来说明比对产生匹配结果时,回传匹配记录110至知识辅助理解模块400做进一步处理的过程。对应于上述记录302的数据结构,在本发明的实施例中,当用户的请求信息102为〃我要看让子弹飞〃时,可产生出两个可能意图语法数据106:

[0147] 〃〈readbook>,〈bookname〉=让子弹飞〃;与

[0148] 〃〈watchfilm>,〈filmname〉=让子弹飞";

[0149] 搜寻引擎240便藉由检索接口单元260所接收的关键字108〃让子弹飞〃来对图3A的结构化数据库220所储存的记录的标题栏304进行全文检索。全文检索中,在标题栏304中找到了储存有数值数据〃让子弹飞〃的记录5,因此产生了匹配结果。接下来,检索系统200将回传记录5标题栏304中,对应于关键字108“让子弹飞”的指引数据“filmnameguid”作为匹配记录Iio并回传至知识辅助理解模块400。由于在记录5的标题栏中,包含对应数值数据〃让子弹飞〃的指引数据"filmnameguid〃,所以知识辅助理解模块400藉由比对记录5的指引数据"filmnameguid"与上述可能意图语法数据106先前已储存的意图数据112〃〈watchfilm>〃或〃〈readbook>〃,便能判断出此次请求信息的确定意图语法数据114为〃〈watchfilm>,〈filmname〉=让子弹飞〃(因为都包含“film”在其中)。换句话说,此次用户的请求信息102中所描述数据"让子弹飞"是电影名称,而数据用户的请求信息102的意图为看电影〃让子弹飞〃,而非阅读书籍。[0150] 再举一个实例作更进一步的说明。当用户的请求信息102为〃我想听一起走过的日子〃时,可产生出两个可能意图语法数据106:

[0151] //<playmusic>, <singer>= 一起走过,<songname>=日子";与

[0152] 〃〈playmusic>,〈songname〉= 一起走过的日子";

[0153] 搜寻引擎240便藉由检索接口单元260所接收的两组关键字108:

[0154] 〃 一起走过〃与〃日子〃;以及

[0155] 〃一起走过的日子〃

[0156] 来对图3A的结构化数据库220所储存的记录的标题栏304进行全文检索。由于全文检索中,并未在所有记录的标题栏304中找到对应于第一组关键字108" —起走过〃与〃日子〃的匹配结果,而是找到了对应于第二组关键字108〃 一起走过的日子〃的记录1,于是检索系统200将记录I标题栏304中对应于第二组关键字108的指引数据"songnameguid",作为匹配记录110且回传至知识辅助理解模块400。接下来,知识辅助理解模块400在接收对应数值数据〃 一起走过的日子〃的指引数据"songnameguid"后,便与可能意图语法数据106 (亦即〃〈playmusic>,〈singer〉= 一起走过,〈songname〉=日子"与"〈playmusic〉,〈songname〉= 一起走过的日子〃)中的意图数据112 (亦即〈singer〉、〈songname〉等)进行比对,于是便发现此次用户的请求信息102中并未描述有歌手名称的数据,而是描述有歌曲名称为〃 一起走过的日子〃的数据(因为只有〈songname〉比对成功)。所以,知识辅助理解模块400可藉由上述比对而判断出此次请求信息102的确定意图语法数据114为〃〈playmusic>,〈songname〉= 一起走过的日子〃,而用户的请求信息102的意图为听歌曲〃 一起走过的日子"。

[0157] 在本发明的另一实施例中,检索而得的匹配记录110可以是与关键字108完全匹配的全匹配记录、或是与关键字108部分匹配的部分匹配记录。举例来说,如果用户的请求信息102为〃我想听萧敬腾的背叛〃,同样地,自然语言处理器300经过分析后,产生出两个可能意图语法数据106:

[0158] 〃〈playmusic>,〈singer〉=萧敬腾,〈songname〉=背叛〃;及

[0159] 〃〈playmusic>,〈songname〉=萧敬腾的背叛”;

[0160] 并传送两组关键字108:

[0161] 〃萧敬腾〃与〃背叛〃;以及

[0162] 〃萧敬腾的背叛〃;

[0163] 给检索接口单元260,搜寻引擎240接着藉由检索接口单元260所接收的关键字108来对图3A的结构化数据库220所储存的记录302的标题栏304进行全文检索。由于在全文检索中,对应第二组关键字108"萧敬腾的背叛〃并未匹配到任何记录,但是对应第一组关键字108〃萧敬腾〃与〃背叛〃找到了记录6与记录7的匹配结果。由于第二组关键字108"萧敬腾〃与〃背叛〃仅与记录6中的数值数据〃萧敬腾相匹配,而未匹配到其他数值数据〃杨宗纬〃及〃曹格〃,因此记录6为部分匹配记录(请注意上述对应请求信息102〃我要看让子弹飞〃的记录5以及对应请求信息〃我想听一起走过的日子〃的记录I皆为部分匹配记录),而关键字〃萧敬腾〃与〃背叛〃完全匹配了记录7的数值数据(因为第二组关键字108〃萧敬腾〃与〃背叛〃皆匹配成功),所以记录7为完全匹配记录。在本发明的实施例中,当该检索接口单元260输出多个匹配记录110至知识辅助理解模块400时,可依序输出全匹配记录(亦即全部的数值数据都被匹配)及部分匹配记录(亦即仅有部分的数值数据被匹配)的匹配记录110,其中全匹配记录的优先顺序大于部分匹配记录的优先顺序。因此,在检索接口单元260输出记录6与记录7的匹配记录110时,记录7的输出优先顺序会大于记录6的输出优先顺序,因为记录7全部的数值数据〃萧敬腾〃与〃背叛〃都产生匹配结果,但记录6还包含〃杨宗纬〃与〃曹格〃未产生匹结果。也就是说,结构化数据库220中所储存的记录对其请求信息102中的关键字108的匹配程度越高,越容易优先被输出,以便用户进行查阅或挑选对应的确定意图语法数据114。在另一实施例中,可直接输出优先顺序最高的记录所对应的匹配记录110,做为确定意图语法数据114之用。前述非以限定本发明,因为在另一实施例中可能采取只要搜寻到有匹配记录即输出的方式(例如,以〃我想听萧敬腾的背叛〃为请求信息102而言,当检索到记录6即产生匹配结果时,即输出记录6对应的指引数据做匹配记录110),而没有包含优先顺序的排序,以加快检索的速度。在另一实施例中,可对优先顺序最高的记录,直接执行其对应的处理方式并提供予用户。例如当优先顺序最高的为播放三国演义的电影时,可直接播放电影与用户。此外,若优先顺序最高的为萧敬腾演唱的背叛时,可直接将此歌曲播放与用户。应注意的是,本发明在此仅作说明,并非对此加以限定。

[0164] 在本发明的再一实施例中,如果用户的请求信息102为〃我要听刘德华的背叛",则其可能意图语法数据106的其中之一为:

[0165] 〃〈playmusic>,〈singer〉=刘德华,〈songname〉=背叛”;

[0166] 若检索接口单元260将关键字108"刘德华〃与〃背叛〃输入搜寻引擎240,并不会在图3的数据库中找到任何的匹配结果。在本发明的又一实施例中,检索接口单元260可分别将关键字108〃刘德华〃以及〃背叛〃输入搜寻引擎240,并且分别对应求得〃刘德华〃是歌手名称(指引数据singerguid)以及〃背叛〃是歌曲名称(指引数据songnameguid,且歌手可能是曹格或是萧敬腾、杨宗纬与曹格合唱)。此时,自然语言理解系统100可进一步提醒用户:“背叛这首歌曲是否为萧敬腾所唱(依据记录7的匹配结果)?”,或者,“是否为萧敬腾、杨宗纬与曹格所合唱(依据记录6的匹配结果)?”。

[0167] 在本发明的再一实施例中,结构化数据库220所储存记录可还包括有来源栏314及热度栏316。如图3B所示的数据库,其除了图3A的各项栏位之外,还包含来源栏314及热度栏316。各记录的来源栏314用以储存此记录是出自哪一个结构化数据库(在此图式中仅显示结构化数据库220,而实际上可存在更多不同的结构化数据库)、或是哪一个用户、伺服器所提供的来源值。并且,自然语言理解系统100可根据用户在之前的请求讯息102中所透漏的喜好,来检索特定来源的结构化数据库(例如以请求信息102中的关键字进行全文检索产生匹配时,便对该记录的热度值加一)。而各记录302的热度栏316用以储存此记录302的搜寻热度值或是热门程度值(例如该记录在特定时间里被单一用户、特定用户群组、所有用户的匹配次数或机率),以供知识辅助理解模块400判断用户意图时的参考。详细而论,当用户的请求信息102为〃我要看三国演义〃时,自然语言处理器300经过分析后,可产生出多个可能意图语法数据106 :

[0168] 〃〈readbook>,〈bookname〉=三国演义”;

[0169] 〃〈watchTV>,〈TVname〉=三国演义〃;以及

[0170] 〃〈watchfilm>,〈filmname〉=三国演义"。[0171] 若自然语言理解系统100在用户的请求信息102的历史记录中(例如利用通过热度栏316储存该笔记录302被某用户所点选的次数),统计出其大部份的请求为看电影,则自然语言理解系统100可针对储存电影记录的结构化数据库来做检索(此时来源栏314中的来源值,是记录储存电影记录的结构化数据库的代码),从而可优先判定〃〈watchfilm>,〈filmname〉=三国演义〃为确定意图语法数据114。举例来说,在一实施例中亦可在每个记录302被匹配一次,就可在后面的热度栏316加一,作为用户的历史记录。于是在依据关键字108 “三国演义”做全文检索时,可以从所有匹配结果中挑选热度栏316中数值最高的记录302,作为判断用户意图之用。在一实施例中,若自然语言理解系统100在关键字108〃三国演义〃的检索结果中,判定对应〃三国演义〃这出电视节目的记录的热度栏316所储存的搜寻热度值最高,则便可优先判定〃〈watchTV>,〈TVname〉=三国演义〃为确定意图语法数据114。此外,上述对热度栏316所储存数值的变更方式,可通过自然语言理解系统100所在的计算机系统进行变更,本发明对此并不加以限制。此外、热度栏316的数值亦可随时间递减,以表示用户对某项记录302的热度已逐渐降低,本发明对这部分亦不加以限制。

[0172] 再举另一个实例来说,在另一实施例中,由于用户可能在某段时间中特别喜欢看三国演义的电视剧,由于电视剧的长度可能很长而用户无法短时间看完,因此在短时间中可能重复点选(假设每匹配一次就将热度栏316内的数值加一的话),因此造成某个记录302被重复匹配,这部分都可通过分析热度栏316的数据而得知。再者,在另一实施例中,电信业者也可以利用热度栏316来表示某一来源所提供数据被取用的热度,而此数据供应者的编码可以用来源栏314进行储存。举例来说,若某位供应“三国演义电视剧”的供应者的被点选的机率最高,所以当某用户输入“我要看三国演义”的请求信息102时,虽然在对图3B的数据库进行全文检索时会找到阅读三国演义的书籍(记录8)、观看三国演义电视剧(记录9)、观看三国演义电影(记录10)三个匹配结果,但由于热度栏316中的数据显示观看三国演义电视剧是现在最热门的选项(亦即记录8、9、10的热度栏的数值分别为2、5、8),所以将先提供记录10的指引数据做匹配记录110输出至知识辅助理解系统400,作为判定用户意图的最优先选项。在一实施例中,可同时将来源栏314的数据显示给用户,让用户判断他所想要观看的电视剧是否为某位供应者所提供。应注意的是,上述对来源栏314所储存数据以及其变更方式,亦可通过自然语言理解系统100所在的计算机系统进行变更,本发明对此并不加以限制。

[0173] 明显的,本发明所揭示的结构化数据库中的每个记录内部所包含的数值数据相互间具有关联性(例如记录I中的数值数据“刘德华”、“一起走过的日子”、“港台,粤语,流行”都是用来描述记录I的特征),且这些数值数据共同用以表达来自用户的请求信息对该记录的意图(例如对“一起走过的日子”产生匹配结果时,表示用户的意图可能是对记录I的数据存取),于是在搜寻引擎对结构化数据库进行全文检索时,可在记录的数值数据被匹配时,输出对应于该数值数据的指引数据(例如输出“songnameguid”作为回应结果110),进而确认该请求信息的意图(例如在知识辅助理解模块中进行比对)。基于上述示范性实施例所揭示或教示的内容,图4A为根据本发明的一实施例的检索方法的流程图。请参阅图4,本发明的实施例的检索方法包括以下步骤:

[0174] 提供结构化数据库,且结构化数据库储存多个记录(步骤S410);[0175] 接收至少一关键字(步骤S420);

[0176] 藉由关键字来对多个记录的标题栏进行全文检索(步骤S430)。举例来说,将关键字108输入检索接口单元260来让搜寻引擎240对结构化数据库220所储存的多个记录302的标题栏304进行全文检索,至于检索方式可如对图3A或图3B所进行的检索方式、或是不变更其精神的方式来进行;

[0177] 判断全文检索是否有匹配结果(步骤S440)。举例来说,藉由搜寻引擎240来判断此关键字108所对应的全文检索是否有匹配结果;以及

[0178] 若有匹配结果,依序输出全匹配记录及部分匹配记录(步骤S450)。举例来说,若结构化数据库220中有记录匹配此关键字108,则检索接口单元260依序输出匹配此关键字108的全匹配记录及部分匹配记录中的指引数据(可通过对图3C的指引数据储存表格280而取得)作为匹配记录Iio送往知识辅助理解系统400,

[0179] 其中全匹配记录的优先顺序大于部分匹配记录的优先顺序。

[0180] 前述的流程步骤非以限定本发明,有些步骤是可以忽略或移除,例如,在本发明的另一实施例中,可藉由位于检索系统200外的匹配判断模块(未绘示于图中)来执行步骤S440 ;或是在本发明的另一实施例中,可忽略上述步骤S450,其依序输出全匹配记录及部分匹配记录的动作可以藉由位于检索系统200外的匹配结果输出模块(未绘示于图中),来执行步骤S450中依序输出全匹配记录及部分匹配记录的动作。

[0181] 基于上述示范性实施例所揭示或教示的内容,图4B为根据本发明的另一实施例的自然语言理解系统100工作过程的流程图。请参阅图4B,本发明的另一实施例的自然语言理解系统100工作过程包括以下步骤:

[0182] 接收请求信息(步骤S510)。举例来说,用户将具有语音内容或文字内容的请求信息102传送至自然语言理解系统100 ;

[0183] 提供结构化数据库,且结构化数据库储存多个记录(步骤S520);

[0184] 将请求信息语法化(步骤S530)。举例来说,自然语言处理器300分析用户的请求信息102后,进而转为对应的可能意图语法数据106 ;

[0185] 辨别关键字的可能属性(步骤S540)。举例来说,知识辅助理解模块400辨别出可能意图语法数据106中的至少一关键字108的可能属性,例如,关键字108〃三国演义〃可能是书、电影及电视节目;

[0186] 藉由关键字108来对多个记录的标题栏304进行全文检索(步骤S550)。举例来说,将关键字108输入检索接口单元260来让搜寻引擎240对结构化数据库220所储存的多个记录的标题栏304进行全文检索;

[0187] 判断全文检索是否有匹配结果(步骤S560)。举例来说,藉由搜寻引擎240来判断此关键字108所对应的全文检索是否有匹配结果;

[0188] 若有匹配结果,依序输出全匹配记录及部分匹配记录(步骤S570)所对应的指引数据为匹配记录110。举例来说,若结构化数据库220中有记录匹配此关键字108,则检索接口单元260依序输出匹配此关键字108的全匹配记录及部分匹配记录所对应的指引数据为匹配记录110,

[0189] 其中全匹配记录的优先顺序大于部分匹配记录的优先顺序;以及

[0190] 依序输出对应的确定意图语法数据(步骤S580)。举例来说,知识辅助理解模块400藉由依序输出的全匹配记录及部分匹配记录,藉以输出对应的确定意图语法数据114。

[0191] 前述的流程步骤非以限定本发明,有些步骤是可以忽略或移除。

[0192] 综上所述,本发明藉由取出用户的请求信息所包括的关键字,并且针对结构化数据库中的具有数据结构的记录的标题栏来进行全文检索,若产生匹配结果,便可判断出关键字所属的领域种类,藉以确定用户在请求信息所表示的意图。

[0193] 接下来针对以上结构化数据库在语音识别上的应用做更多的说明。首先针对在自然语言对话系统中,根据用户的语音输入来修正错误的语音应答,并进一步找出其他可能的答案来回报给用户的应用做说明。

[0194] 虽然现今的移动通讯装置已可提供自然语言对话功能,以让用户发出语音来和移动通讯装置沟通。然而在目前的语音对话系统,当用户的语音输入不明确时,由于同一句语音输入可能意指多个不同的意图或目的,故系统容易会输出不符合语音输入的语音应答。因此在很多对话情境中,用户难以得到符合其意图的语音应答。为此,本发明提出一种修正语音应答的方法以及自然语言对话系统,其中自然语言对话系统可根据用户的语音输入来修至错误的语音应答,并进一步找出其他可能的答案来回报给用户。为了使本发明的内容更为明了,以下特举实施例作为本发明确实能够据以实施的范例。

[0195] 图5A是依照本发明一实施例所绘示的自然语言对话系统的方块图。请参照图5A,自然语言对话系统500包括语音取样模块510、自然语言理解模块520、以及语音合成数据库530。在一实施例中,语音取样模块510用以接收语音输入501 (例如来自用户的语音),随后对其进行解析而产生解析结果503,而自然语言理解模块520会对解析结果503进行解析而取得其中的请求信息505,并在找到符合请求信息505的答案后,依据此答案通过对语音合成数据库130进行对应的语音查询,再输出所查询的语音作为对应于语音输入501的语音应答507予用户。其中,倘若自然语言理解模块520所作出的语音应答505不符合语音输入501中的请求信息505时(例如用户输入另一个语音输入指示此事),自然语言理解模块520会修正原本的答案,并输出另一个语音应答507予用户。

[0196] 前述自然语言对话系统500中的各构件可配置在同一机器中。举例而言,语音取样模块510与自然语言理解模块520例如是配置于同一电子装置。其中,电子装置可以是移动电话(Cell phone)、个人数位助理(Personal Digital Assistant, PDA)手机、智能型手机(Smart phone)等移动通讯装置、掌上型计算机(Pocket PC)、平板型计算机(TabletPC)、笔记型计算机、个人计算机、或是其他具备通讯功能或安装有通讯软件的电子装置,在此并不限制其范围。此外,上述电子装置可使用Android操作系统、Microsoft操作系统、Android操作系统、Linux操作系统等等,不限于此。当然,前述自然语言对话系统500中的各构件也不一定需设置在同一机器中,而可分散在不同装置或系统并通过各种不同的通讯协定来连结。举例而言,自然语言理解模块520可以位于云端伺服器中,也可以位于区域网路中的伺服器。此外,自然语言理解模块520中的各构件也可分散在不同的机器,例如自然语言理解模块520中的各构件可位于与语音取样模块510相同或不同的机器。

[0197] 在本实施例中,语音取样模块510用以接收语音输入,此语音取样模块510可以为麦克风(Microphone)等接收音讯的装置,而语音输入501可以是来自用户的语音。

[0198]自然语言理解模块520会接收从语音取样模块510传来的语音输入501,以对语音输入501进行解析而产生解析结果503。并且,自然语言理解模块120会根据解析结果503中的一个或多个特征语义505 (例如图1A中所提到的关键字108等)来产生至少一个包含至少一个候选答案的候选列表111,然后再从这些候选答案中找出较符合特征语义109的答案,进而输出语音应答107予用户。由于语音应答105输出与用户后,他/她可能认为目前所新的答案的不符合他的需求、或者需要再输入更多的选择(例如语音应答105输出的是多个选项要求用户驵进一步选择)…等,所以用户会再输入另一个语音。是以,如果用户输入另一个语音的话,自然语言理解模块520会接着依据用户所输入的另一个语音输入501判断先前所输出的语音应答507是否正确;若为否,则自然语言理解模块520还会从上述候选列表511中找出另一个候选答案,并据以产生新的语音应答507提供予用户。这部分的细节将通过图5B做更进一步的描述。

[0199] 此外,本实施例的自然语言理解模块520可由一个或数个逻辑门组合而成的硬件电路来实作。或者,在本发明另一实施例中,自然语言理解模块520可以通过计算机程序码来实作。举例来说,自然语言理解模块520例如是由程序语言所撰写的程序码片段来实作于应用程序、操作系统或驱动程序等,而这些程序码片段储存在储存单元中,并藉由处理单元来执行。为了使本领域的技术人员进一步了解本实施例的自然语言理解模块520,底下举实例来进行说明。然,本发明在此仅为举例说明,并不以此为限,例如运用硬件、软件、固件、或是此三种实施方式的混合搭配等方式,皆可运用来实施本发明。

[0200] 图5B是依照本发明一实施例所绘示的自然语言理解模块520的方块图。请参照图5B,本实施例的自然语言理解模块520可包括语音识别模块522、自然语言处理模块524以及语音合成模块526。其中,语音识别模块522会接收从语音取样模块510传来的对语音输入501进行解析的解析结果503,并转换成一个或多个特征语义509(例如图1A的关键字108或字句等)。自然语言处理 模块524则可再对这些特征语义509进行解析,而获得至少一个候选列表511 (例如通过图1A的检索系统200对结构化数据库220进行全文检索,并在取得回应110且对意图数据112比对后产生确定意图语法数据114,最后由分析结果输出模块116所送出的分析结果104),并且会从候选列表511中选出一个较符合语音输入501的答案以做为回报答案(例如挑选全匹配记录…等)。由于此回报答案是自然语言理解模块520在内部分析而得的答案,所以还必须将转换成语音输出才能输出予用户,于是语音合成模块526会依据回报答案来查询语音合成数据库530,而此语音合成数据库530例如是记录有文字以及其对应的语音信息,可使得语音合成模块526能够找出对应于回报答案的语音,藉以合成出第一语音应答507。之后,语音合成模块126可将合成的语音通过语音输出接口(未绘示),其中语音输出接口例如为喇叭、扬声器、或耳机等装置输出,藉以输出语音予用户。

[0201] 举例来说,若用户输入的是“我要看三国演义”的语音输入501话,语音识别模块522会接收从语音取样模块510传来的对语音输入501进行解析的解析结果503,然后转换成例如是包含关键字108 “三国演义”的特征语义509。自然语言处理模块524则可再对这个特征语义509 “三国演义”进行解析,例如通过图1A的检索系统200对结构化数据库220进行全文检索,并在取得回应110且对意图数据112比对后产生确定意图语法数据114,最后由分析结果输出模块116所送出的分析结果104,而产生包含“三国演义“的三个意图选项的候选答案,并将其整合成一候选列表511 (亦即包含“看书”、“看电视剧”、以及“看电影”三个选项),接着再从候选列表511的这三个意图选项中选出一个热度栏最高的答案(例如挑选图1A的记录10)做为回报答案。在一实施例中,可以直接执行热度栏最高者的所对应的方式,例如直接播放萧敬腾所演唱的“背叛”予用户,本发明并不对此加以限制。

[0202] 此外,自然语言处理模块524还可藉由解析后续所接收的另一个语音输入501 (因为与先前的语音输入501运用同样的方式馈入语音取样模块510),而判断前次的回报答案是否正确,此语音是用户针对先前提供予用户的语音应答507所做的回应,其包含用户认为先前的语音应答507正确与否的信息。倘若上述回报答案表示用户认为回报答案(亦即先前通过语音应答507传达给用户者)不正确,自然语言处理模块524还会选择上述候选列表511中的其他答案,并依据所选择的结果,通过语音合成模块526产生第二语音应答507 (因为也同样通过先前传送语音应答507的方式播放予用户)。接着,语音合成模块526可将合成的第二语音应答507亦通过语音输出接口输出予用户。

[0203] 延续先前用户输入“我要看三国演义”的例子来说,若用户想要看三国演义的电视剧,所以先前输出与用户的图1A记录10的选项(因为是看“三国演义”的电影)就不是用户想要的,所以用户可能输入“我要看三国演义电视剧”、或是“我不要看三国演义电影”…等作为第二语音输入501。于是第二语音输入501将在解析而取得其请求信息505 (或是特征语义509)后,输出“我现在为您播放三国演义电视剧”的第二语音应答507 (如果用户想观看三国演义电视剧)、或是输出“您想要的是哪个选项”(如果用户只否定目前选项)的第二语音应答507,并搭配候选列表511其他的选项供用户选取。此外,在一实施例中,先前的语音应答507所输出的是候选列表111的某个选项给用户供其判定是否其所想要的信息时,此时用户将输入此判定的“肯`定“或“否定”的请求信息505。例如“请播放电影”、“这不是我要的东西”…等讯息。于是第二语音输入501将在解析而取得其请求信息505后,输出“我现在为您播放三国演义电影”的第二语音应答507 (如果用户想观看三国演义电影)、或是输出“您想要的是哪个选项”(如果用户只否定目前选项)的第二语音应答507,并搭配输出候选列表511其他的选项供用户选取。再者,在另一实施例中,若是依照优先顺序(例如全匹配、部分匹配…)显示候选列表511与用户时,用户所输入的第二语音输入501可能包含“选择”的讯息。例如显示“观看三国演义书籍”、“观看三国演义电视剧”、以及“观看三国演义电影”三个选项给用户做选择时,用户可能输入“我要看电影”、或是“我要第三个选项”…等第二语音输入时,将在分析第二语音输入501的请求信息505并发现用户的意图后(例如选择观看电影),于是第二语音输入501将在解析而取得其请求信息505后,输出“我现在为您播放三国演义电影”的第二语音应答507 (如果用户想观看三国演义电影)然后直接播放电影予用户、或是输出“您想要的是阅读三国演义书籍”(如果所选择的是看书)的第二语音应答507,并搭配显示三国演义的电子书予用户的动作。

[0204] 在本实施例中,前述自然语言理解模块520中的语音识别模块522、自然语言处理模块524以及语音合成模块526可与语音取样模块510配置在同一机器中。在其他实施例中,语音识别模块522、自然语言处理模块524以及语音合成模块526亦可分散在不同的机器(例如计算机系统、伺服器或类似装置/系统)中。例如图5C所示的自然语言理解模块520’,语音合成模块526可与语音取样模块510配置在同一机器502,而语音识别模块522、自然语言处理模块524可配置在另一机器。

[0205] 以下即搭配上述搭配图5A的自然语言对话系统500来说明修正语音应答507的方法。图6是依照本发明一实施例所绘示的修正语音应答507的方法流程图。在本实施例中的修正语音应答507的方法中,当用户认为目前所播放的语音应答507不符合其先前所输入的请求信息505时,会再输入另一个语音输入501并馈入语音取样模块510,随后再由自然语言理解模块520分析而得知先前播放予用户的语音应答507并不符合用户的意图时,自然语言理解模块520可再次输出另一个语音应答507,藉以修正原本的语音应答507。为了方便说明,在此仅举图5A的自然语言对话系统500为例,但本实施例的修正语音应答507的方法亦可适用于上述图5C的自然语言对话系统500’。

[0206] 请同时参照图5A及图6,于步骤S602中,语音取样模块510会接收第一语音输入(亦同样通过语音输入501的方向馈入语音取样模块510)。其中,第一语音输入501例如是来自用户的语音,且第一语音输入501还可具有用户的请求信息105。具体而言,来自用户的第一语音输入501可以是询问句、命令句或其他请求信息505等,例如「我要看三国演义」、「我要听忘情水的音乐」或「今天温度几度」等等。

[0207] 于步骤S604中,自然语言理解模块520会解析第一语音输入501中所包括的至少一个特征语义509,而获得候选列表511,其中候选列表511具有一个或多个候选答案。详细而言,自然语言理解模块520会解析第一语音输入501,而获得第一语音输入501的一个或多个特征语义509。在此,特征语义509例如是自然语言理解模块520解析第一语音输入501后,所得到的关键字或请求信息等。举例来说,当用户的第一语音输入501为「我要看三国演义」时,自然语言理解模块520经过分析后所获得的特征语义509例如是「『三国演义』、『看』」。又例如,当用户的第一语音输入501为「我要听忘情水的歌」时,自然语言理解模块520经过分析后所获得的特征语 义509例如是「『忘情水』、『听』、『歌』」。

[0208] 接后,自然语言理解模块520可依据上述特征语义509自搜寻数据库(例如搜寻引擎等)进行查询,而获得至少一笔搜寻结果,据以做为候选列表511中的各个候选答案。至于选择候选答案的方式可如图1A所述,在此不予以赘述。由于一个特征语义509(例如图1A的关键字108)可能属于不同的知识领域或属性(例如电影类、书籍类、音乐类或游戏类等等),且同一知识领域或属性中亦可进一步分成多种类别(例如同一电影或书籍名称的不同作者、同一歌曲名称的不同演唱者、同一游戏名称的不同版本等等),故针对一个特征语义509而言,自然语言理解模块520可在搜寻数据库中查询到一笔或多笔相关于此特征语义509的搜寻结果,其中每一笔搜寻结果中可包括相关于此特征语义509的各类指引信息(例如以“萧敬腾”、“背叛”为关键字108在图3A、3B的结构化数据库220进行全文检索时,将得到两组匹配结果)。其中,指引信息例如是在搜寻结果中,除了特征语义509以外的其他关键字等等。因此从另一观点来看,当用户所输入的第一语音输入501具有多个特征语义509时(例如可解析出的关键字108越多),则表示用户的请求信息505较明确,使得自然语言理解模块520较能查询到与请求信息505接近的搜寻结果。

[0209] 举例来说,当特征语义509为「三国演义」时,自然语言理解模块520所查讯到的搜寻结果例如是关于「...『三国演义』...『电视剧』」的数据、「...『三国演义』...『小说』」的数据、「...『三国演义』...『罗贯中』...『小说』」的数据,其中『电视剧』、『罗贯中』及『小说』为所列举的指引信息。又例如,当特征语义509为「『忘情水』『音乐』」时,自然语言理解模块520所查讯到的搜寻结果例如关于「...『忘情水』...『音乐』...『刘德华』」的数据、「...『忘情水』...『音乐』...『李翊君』」的数据、「...『忘情水』...『音乐』...『歌词』」的数据,其中『刘德华』、『李翊君』及『歌词』为所列举的指引信息。换言之,每一笔搜寻结果可包括特征语义509以及相关于特征语义的指引信息,而自然语言理解模块520会依据所查询到的搜寻结果,将搜寻结果中所包括的数据转换成候选答案,并将候选答案记录于候选列表511中,以供后续步骤使用。

[0210] 于步骤S606中,自然语言理解模块520会自候选列表511中选择至少一候选答案中作为回报答案,并依据回报答案,输出对应的第一语音应答507。在本实施例中,自然语言理解模块520可按照优先顺序排列候选列表中的候选答案,并依据此优先顺序自候选列表中选出回报答案,据以输出第一语音应答507。

[0211] 举例来说,当特征语义509为「三国演义」时,假设自然语言理解模块520查询到很多笔关于「...『三国演义』...『书籍』」的数据,其次为「...『三国演义』...『音乐』」的数据,而关于「...『三国演义』...『电视剧』」的数据最少,则自然语言理解模块520会将「三国演义的书籍」做为第一优先候选答案,「三国演义的音乐」做为第二优先候选答案,「三国演义的电视剧」做为第三优先候选答案。其他细节前面已提过,在此不予赘述。

[0212] 接着,于步骤S608,语音取样模块510会接收第二语音输入501,而自然语言理解模块520会解析此第二语音输入501,并判断先前所选出的回报答案是否正确。在此,语音取样模块510会对第二语音输入501进行解析,以解析出第二语音输入501所包括的特征语义509 (因为将经由标号509的方向由语音取样模块522输出至自然语言处理模块524),其中此特征语义509例如是用户进一步提供的关键字(例如时间、意图、知识领域或属性等等)。并且,当第二语音输入501中的特征语义509不符合回报答案中所相关的指引信息时,自然语言理解模块520则会判断先前所选出的回报答案为不正确。至于判断第二语音输入501的请求信息505包含的是“正确”或“否定”第一语音应答507的方式前面已提过,在此不予赘述。

[0213] 进一步而言,自然语言理解模块520所解析的第二语音输入501可包括或不包括明确的特征语义509。举 例来说,语音取样模块510例如是接收到来自用户所说的「我不是指三国演义的书籍」(情况A)、「我不是指三国演义的书籍,我是指三国演义的电视剧」(情况B)、「我是指三国演义的电视剧」(情况C)等等。上述情况A中的特征语义509例如为「『不是』『三国演义』『书籍』」,情况B中的特征语义509例如为「『不是』『三国演义』『书籍』,『是』『三国演义』『电视剧』」,而情况C中的特征语义509例如为「『是』『三国演义』『电视剧』J。为了方便说明,上述仅列举情况A、B及C为例,但本实施例并不限于此。

[0214] 接着,自然语言理解模块520会依据上述第二语音输入501所包括的特征语义509,来判断回报答案中相关的指引信息是否正确。也就是说,倘若断回报答案为「三国演义的书籍」,而上述特征语义509为「『三国演义』『电视剧』」,则自然语言理解模块520会判断回报答案中相关的指引信息(即『书籍』)不符合来自用户第二语音输入501的特征语义509 (即『电视剧』),藉以判断回报答案不正确。类似地,倘若断回报答案为「三国演义的书籍」,而上述特征语义509为『不是』『三国演义』『书籍』」,则自然语言理解模块520亦会判断出回报答案不正确。

[0215] 当自然语言理解模块520解析第二语音输入501之后,判断之前输出的第一语音应答501为正确时,则如步骤S610所示,自然语言理解模块120会做出对应于第二语音输Λ 501的回应。举例来说,假设来自用户的第二语音输入501为「是的,是三国演义的书籍」,则自然语言理解模块520可以是输出「正在帮您开启三国演义的书籍」的第二语音应答507。或者,自然语言理解模块520可在播放第二语音应答507的同时,直接通过处理单元(未绘示)来载入三国演义的书籍内容。

[0216] 然而,当自然语言 理解模块520解析第二语音输入501之后,判断之前输出的第一语音应答507不正确时,则如步骤S612所示,自然语言理解模块520会自候选列表511中选择候选答案中的另一者,并依据所选择的结果输出第二语音应答507。在此,倘若用户所提供的第二语音输入501中不具有明确的特征语义509 (如上述情况A的第二语音输入501),则自然语言理解模块520可从候选列表511中选出另一个候选答案。或者,倘若用户所提供的第二语音输入501中具有明确的特征语义509 (如上述情况B及C的第二语音输入501),则自然语言理解模块520可直接依据用户所指引的特征语义509,在从候选列表511中选出另一个候选答案。

[0217] 另一方面,倘若用户所提供的第二语音输入501中具有明确的特征语义509(如上述情况B及C的第二语音输入),但自然语言理解模块520在候选列表511中查无符合此特征语义509的指引信息的候选答案,则自然语言理解模块520会输出第三语音应答507,例如「查无此书」或「我不知道」等。

[0218] 为了使本领域的技术人员进一步了解本实施例的修正语音应答的方法以及自然语言对话系统,以下再举一实施例进行详细的说明。

[0219] 首先,假设语音取样模块510接收的第一语音输入501为「我要看三国演义」(步骤S602),接着,自然语言理解模块520可解析出为「『看』『三国演义』」的特征语义509,并获得具有多个候选答案的候选列表511,其中每一个候选答案具有相关的指引信息(步骤S604),如表一所不。

[0220]表一

[0223] 接着,自然语言理解模块520会在候选列表511中选出回报答案。假设自然语言理解模块520依序选取候选列表中的候选答案a以做为回报答案,则自然语言理解模块520例如是输出「是否播放三国演义的书籍」,即第一语音应答507 (步骤S606)。

[0224] 此时,若语音取样模块510接收的第二语音输入501为「是的」(步骤S608),则自然语言理解模块520会判断出上述的回报答案为正确,且自然语言理解模块520会输出另一语音应答507「请稍候」,并通过处理单元来载入三国演义的书籍内容(步骤S610)。[0225] 然而,若语音取样模块510接收的第二语音输入501为「我不是指三国演义的书籍」(步骤S208),则自然语言理解模块520会判断出上述的回报答案为不正确,且自然语言理解模块520会再从候选列表511的候选答案b"e中,选出另一回报答案,其例如是候选答案b的「是否要播放三国演义的电视剧」。倘若用户继续回答「不是电视剧」,则自然语言理解模块520会选择候选答案c"e的其中之一来回报。此外,倘若候选列表511中的候选答案a〜e皆被自然语言理解模块520回报予用户过,且这些候选答案a'中没有符合用户的语音输入501时,则自然语言理解模块520输出「查无任何数据」的语音应答507 (步骤S612)。

[0226] 在一实施例中,于上述的步骤S608,若语音取样模块510接收用户的第二语音输Λ 501为「我不是指三国演义的电视剧」,则自然语言理解模块520会选择其他的候选答案,例如为候选答案c,并输出「是否要播放三国演义的电视剧」的语音应答507。相同地,自然语言理解模块520也会再次根据语音取样模块510所接收的语音输入501,来选取其他的候选答案来做为回报答案,直到候选答案a'中没有符合用户的语音输入501为止。

[0227] 在另一实施例中,于上述的步骤S608,若语音取样模块510接收用户的第二语音输入501为「我是指三国演义的漫画」,在此,由于候选列表511中并无关于漫画的候选答案,故自然语言理解模块520会直接输出「查无任何数据」的语音应答507。

[0228] 基于上述,自然语言理解模块520可依据来自用户的第一语音输入501而输出对应的语音应答507。其中,当自然语言理解模块520所输出的语音应答507不符合用户的第一语音输入501的请求信息505时,自然语言理解模块520可修正原本输出的语音应答507,并依据用户后续所提供的第二语音输入501,进一步输出较符合用户的请求信息505的语音应答507。如此一来,倘若用户不满意自然语言理解模块520所提供的答案时,自然语言理解模块520可自动地进行修正,并回报新的语音应答507予用户,藉以增进用户与自然语言对话系统500进行对话时的便利性。

[0229] 值得一提的是,在图6的步骤S606与步骤S612中,自然语言理解模块520还可依照不同评估优先顺序的方 法,来排序候选列表中的候选答案,据以按照此优先顺序自候选列表511中选出回报答案,再输出对应于回报答案的语音应答507。

[0230] 举例来说,自然语言理解模块520可依据众人使用习惯,来排序候选列表511中的候选答案的优先顺序,其中越是关于众人经常使用的答案则优先排列。例如,当特征语义509为「三国演义」时,假设自然语言理解模块520找到的候选答案例如为三国演义的电视剧、三国演义的书籍与三国演义的音乐。其中,若众人提到「三国演义」时通常是指「三国演义」的书籍,较少人会指「三国演义」的电视剧,而更少人会指「三国演义」的音乐(例如当图3C中的热度栏316所储存的数值是全部用户的匹配情形时,可以热度栏的数值进行判断),则自然语言理解模块520会按照优先顺序排序关于「书籍」、「电视剧」、「音乐」的候选答案。也就是说,自然语言理解模块520会优先选择「三国演义的书籍」来做为回报答案,并依据此回报答案输出语音应答507。

[0231] 此外,自然语言理解模块520可依据用户习惯,以决定候选答案的优先顺序。具体来说,自然语言理解模块520可将曾经接收到来自用户的语音输入501记录在用户对话数据库,其中用户对话数据库例如是储存在储存装置。用户对话数据库可记录自然语言理解模块520解析用户的语音输入501时,所获得的特征语义509以及自然语言理解模块520所产生的应答记录等应答信息。此外,亦可在图3C中的热度栏316所储存的数值是与用户的习惯(例如匹配次数)相关时,可用热度栏的数值判断用户的使用习惯或优先顺序。因此,自然语言理解模块520在选择回报答案时,可根据用户对话数据库中所记录的应答信息,按照优先排序较具有与应答信息符合的指引信息的候选答案为回报答案,藉以输出较符合用户的语音输入的语音应答507。

[0232] 举例来说,假设用户与自然语言理解模块520进行对话时,经常提起到「三国演义的书籍」,而较少提起「三国演义的电视剧」,且更少提到「三国演义的音乐」(例如用户对话数据库中纪录有20笔关于「三国演义的书籍」的记录,8笔关于「三国演义的电视剧」的记录,以及I笔关于「三国演义的音乐」的记录),则候选列表中的候选答案的优先顺序将会依序为「三国演义的书籍」、「三国演义的电视剧」以及「三国演义的音乐」。也就是说,当特征语义为「三国演义」时,自然语言理解模块520会选择「三国演义的书籍」来做为回报答案,并依据此回报答案输出语音应答507。

[0233] 值得一提的是,自然语言理解模块520还可依据用户喜好,以决定候选答案的优先顺序。具体来说,用户对话数据库还可记录有用户所表达过的关键字,例如:「喜欢」、「偶像」、「厌恶」或「讨厌」等等。因此,自然语言理解模块520可自候选列表511中,依据上述关键字被记录的次数来对候选答案进行排序。举例来说,假设候选答案中相关于「喜欢」的指引信息次数较多,则此候选答案会优先被选取。或者,假设选答案中相关于「厌恶」的指弓I信息次数较多,则较后被选取。

[0234] 举例来说,假设用户与自然语言理解模块520进行对话时,经常提到「我讨厌看三国演义的电视剧」,而较少提到「我讨厌听三国演义的音乐」,且更少提到「我讨厌听三国演义的书籍」(例如用户对话数据库中记录有20笔关于「我讨厌看三国演义的电视剧」的记录,8笔关于「我讨厌听三国演义的音乐」的记录,以及I笔关于「我讨厌听三国演义的书籍」),则候选列表511中的候选答案的优先顺序依序是「三国演义的书籍」、「三国演义的电视剧」以及「三国演义的音乐」。也就是说,当特征语义509为「三国演义」时,自然语言理解模块120会选择「三国演义」的书籍来做为回报答案,并依据此回报答案输出语音应答507。在一实施例中,可以在图3B的热度栏316外另外加一个“厌恶栏”(未显示),用以记录用户的“厌恶程度”。在另一个实施例中,可以在解析到用户对某一记录的“厌恶”信息时,直接在对应记录的热度栏上减一(或其他数值),这样可以在不增加栏位时记录用户的喜好。各种记录用户喜好的实施方式都可应用在本发明实施例中,本发明并不对此加以限制。

[0235] 另一方面,自然语言理解模块520还可依据用户更早输入的语音输入501,以决定至少一候选答案的优先顺序。也就是说,假设有语音输入501 (即第四语音输入)被与语音取样模块510所接收的时间提前于第一语音输入501时,则自然语言理解模块520亦可通过解析第四语音输入中的关键字108(或是特征语义509),并在候选列表511中,优先选取具有与此关键字108符合的指引信息的候选答案以做为回报答案,并依据此回报答案输出语音应答507。

[0236] 举例来说,假设自然语言理解模块520先接收到「我想看电视剧」的语音输入501,且隔了几秒之后,假设自然语言理解模块520又接收到「帮我放三国演义好了」的语音输入501。此时,自然语言理解模块520可在第一次的语音输入501中识别到「电视剧」的关键字108,因此,自然语言理解模块520会从候选列表511,选取候选答案所相关的指引信息是关于「电视剧」的候选答案,并以此候选答案做为回报答案而据以输出用语音应答507予用户。

[0237] 基于上述,自然语言理解模块520可依据来自用户的语音输入501,并参酌众人使用习惯、用户喜好、用户习惯或用户所说的前后对话等等信息,而输出较能符合语音输入的请求信息505的语音应答507予用户。其中,自然语言理解模块520可依据不同的排序方式,例如众人使用习惯、用户喜好、用户习惯或用户所说的前后对话等等方式,来优先排序候选列表511中的候选答案。藉此,若来自用户的语音输入较不明确时,自然语言理解模块520可参酌众人使用习惯、用户喜好、用户习惯或用户所说的前后对话,来判断出用户的语音输入501中所意指的意图(例如语音输入501中的特征语义509的属性、知识领域等等)。换言之,若候选答案与用户曾表达过/众人所指的意图接近时,自然语言理解模块520则会优先考虑此候选答案为回报答案。如此一来,自然语言对话系统500所输出的语音应答507,可较符合用户的请求信息。

[0238] 综上所述,在本实施例的修正语音应答的方法与自然语言对话系统中,自然语言对话系统可依据来自用户的第一语音输入501而输出对应的语音应答507。其中,当自然语言对话系统所输出的语音应答507不符合用户的第一语音输入501的请求信息507或特征语义509时,自然语言对话系统可修正原本输出的语音应答507,并依据用户后续所提供的第二语音输入501,进一步选出较符合用户的请求信息505的第二语音应答507。此外,自然语言对话系统还可依据众人使用习惯、用户喜好、用户习惯或用户所说的前后对话等等方式,来优先选出较适当的回报答案,据以输出语音应答507予用户。如此一来,倘若用户不满意自然语言对话系统所提供的答案时,自然语言对话系统可依照用户每一次所说出的请求信息505自动地进行修正,并回报新的语音应答507予用户,藉以增进用户与自然语言对话系统进行对话时的便利性。

[0239] 接着再以自然语言理解系统100与结构化数据库220等架构与构件,应用于依据与用户的对话场景及上下文、用户使用习惯、众人使用习惯及用户喜好来提供应答及候选答案的实例做的说明。

[0240] 图7A是依照本发明一实施例所绘示的自然语言对话系统的方块图。请参照图7A,自然语言对话系统100包括语音取样模块710、自然语言理解模块720、特性数据库730及自然语言数据库740。事实上,图7A中的语音取样模块710与图5A的语音取样模块510相同、而且自然语言理解模块520与自然语言理解模块720亦相同,所以其执行的功能是相同的。在本实施例中,语音取样模块710用以接收语音输入701 (亦即语音输入501,例如来自用户的语音),而自然语言理解模块720会解析语音输入中的请求信息705 (亦即请求信息505),并输出对应的语音应答707 (亦即语音应答507)。前述自然语言对话系统700中的各构件可配置在同一机器中,本发明对此并不加以限定。

[0241]自然语言理解模块720会接收从语音取样模块710传来的对语音输入进行解析后的解析结果703,以对语音输入701的内容进行解析。并且,自然语言理解模块120会根据语音输入中的一个或多个特征语义709 (例如关键字108等)来产生包含至少一个候选答案的候选列表711,再从这些候选答案中找出较符合特征语义709的答案,以输出语音应答707。此外,本实施例的自然语言理解模块720可由一个或数个逻辑门组合而成的硬件电路来实作,或以计算机程序码来实作,在此仅为举例说明,并不以此为限。[0242] 图7B是依照本发明另一实施例所绘示的自然语言对话系统700’的方块图。图7B的自然语言理解模块720’可包括语音识别模块722与自然语言处理模块724,而语音取样模块710可与语音合成模块726合并在一语音综合处理模块702中。其中,语音识别模块722会接收从语音取样模块710传来对语音输入701进行解析的解析结果703,并转换成一个或多个特征语义709 (例如关键字或字句等)。自然语言处理模块124则可再对这些特征语义709进行解析,而获得至少一个候选列表711,并且从候选列表711中选出一个较符合语音输入701的答案,以做为回报答案。由于此回报答案是自然语言理解模块720在内部分析而得的答案,所以还必须将转换成语音输出才能输出予用户,于是语音合成模块726会依据回报答案来查询语音合成数据库730,而此语音合成数据库730例如是记录有文字以及其对应的语音信息,可使得语音合成模块726能够找出对应于回报答案的语音,藉以合成出第一语音应答707。之后,语音合成模块726可将合成的语音通过语音输出接口(未绘示),其中语音输出接口例如为喇叭、扬声器、或耳机等装置)输出,藉以输出语音予用户。

[0243] 在本实施例中,前述自然语言理解模块720中的语音识别模块722、自然语言处理模块724以及语音合成模块726可与语音取样模块710配置在同一机器中。在其他实施例中,语音识别模块722、自然语言处理模块724以及语音合成模块726亦可分散在不同的机器中(例如计算机系统、伺服器或类似装置/系统)。例如图7C所示的自然语言理解模块720’,语音合成模块726可与语音取样模块710配置在同一机器702,而语音识别模块722、自然语言处理模块724可配置在另一机器。

[0244] 以下即搭配上述搭配图7A的自然语言对话系统700来说明自然语言对话方法。图8是依照本发明一实施例所绘示的自然语言对话方法的流程图。为了方便说明,在此仅举图7A的自然语言对话系统800为例,但本实施例的自然语言对话方法亦可适用于上述图7C的自然语言对话系统700’。与图5/6相较下,图5/6所处理的依据用户的语音输入而自动进行修正所输出的信息,但图7A/7B/8所处理的是依据特性数据库来记录用户的喜好特性,并据以从候选列表中选择候选答案予用户。事实上,图5/6与图7A/7B/8的实施方式可择一或并存,发明并不对此加以限制。

[0245] 请同时参照图7A及图8`,于步骤S810中,语音取样模块710会接收第一语音输入701。其中,第一语音输入701例如是来自用户的语音,且第一语音输入701还可具有用户的请求信息705。具体而言,来自用户的第一语音输入701可以是询问句、命令句或其他请求信息705等,例如「我要看三国演义」、「我要听忘情水的音乐」或「今天温度几度」等等。

[0246] 于步骤S820中,自然语言理解模块720会解析第一语音输入701中所包括的至少一个特征语义709,进而获得候选列表711,其中候选列表711具有一个或多个候选答案。详细而言,自然语言理解模块720会解析第一语音输入701,而获得第一语音输入701的一个或多个特征语义709。在此,特征语义709例如是自然语言理解模块720解析第一语音输入701后,所得到的关键字或请求信息等。举例来说,当用户的第一语音输入701为「我要看三国演义」时,自然语言理解模块720经过分析后所获得的特征语义709例如是「『三国演义』、『看』」。又例如,当用户的第一语音输入701为「我要听忘情水的歌」时,自然语言理解模块720经过分析后所获得的特征语义109例如是「『忘情水』、『听』、『歌』」。

[0247] 接后,自然语言理解模块720可依据上述特征语义709自搜寻数据库(例如搜寻引擎等)进行查询,而获得至少一笔搜寻结果,据以做为候选列表711中的各个候选答案。由于一个特征语义709可能属于不同的知识领域或属性(例如电影类、书籍类、音乐类或游戏类等等),且同一知识领域或属性中亦可进一步分成多种类别(例如同一电影或书籍名称的不同作者、同一歌曲名称的不同演唱者、同一游戏名称的不同版本等等),故针对一个特征语义709而言,自然语言理解模块720可在搜寻自然语言数据库740中,查询到一笔或多笔相关于此特征语义709的搜寻结果,其中每一笔搜寻结果中可包括相关于此特征语义709的各类指引信息。其中,指引信息例如是在搜寻结果中,除了特征语义709以外的其他关键字等等。因此从另一观点来看,当用户所输入的第一语音输入具有多个特征语义709时,则表示用户的请求信息705较明确,使得自然语言理解模块720较能查询到与请求信息705接近的搜寻结果。

[0248] 举例来说,当特征语义709为「三国演义」时,自然语言理解模块720所查讯到的搜寻结果例如是关于「...『三国演义』...『电视剧』」的数据、「...『三国演义』...『小说』」的数据、「...『三国演义』...『罗贯中』...『小说』」的数据,其中『电视剧』、『罗贯中』及『小说』为所列举的指引信息。又例如,当特征语义709为「『忘情水』『音乐』」时,自然语言理解模块720所查讯到的搜寻结果例如关于「...『忘情水』...『音乐』...『刘德华』」的数据、「...『忘情水』...『音乐』...『李翊君』」的数据、「...『忘情水』...『音乐』...『歌词』」的数据,其中『刘德华』、『李翊君』及『歌词』为所列举的指引信息。换言之,每一笔搜寻结果可包括特征语义709以及相关于特征语义709的指引信息,而自然语言理解模块720会依据所查询到的搜寻结果,将搜寻结果中所包括的数据转换成候选答案,并将候选答案记录于候选列表711中,以供后续步骤使用。

[0249] 于步骤S830中,自然语言理解模块720根据特性数据库730,自候选列表711中选择至少一候选答案中的其中之一为回报答案,并依据回报答案,输出第一语音应答707。在本实施例中,自然语言理解模块720可按照优先顺序排列候选列表711中的候选答案,并依据此优先顺序自候选列表711中选出回报答案。而在步骤S840中,依据回报答案,输出第一语音应答707。

[0250] 举例来说,当特征语义709为「三国演义」时,假设自然语言理解模块720查询到很多笔关于「...『三国演义』...『书籍』」的数据,其次为「...『三国演义』...『音乐』」的数据,而关于「...『三国演义』...『电视剧』」的数据最少,则自然语言理解模块720会将「三国演义的书籍」做为第一优先候选答案,「三国演义的音乐」做为第二优先候选答案,「三国演义的电视剧」做为第三优先候选答案。

[0251] 为了使本领域的技术人员进一步了解本实施例的自然语言对话方法以及自然语言对话系统,以下再举一实施例进行详细的说明。

[0252] 首先,假设语音取样模块710接收的第一语音输入701为「我要看三国演义」(步骤S810),接着,自然语言理解模块720可解析出为「『看』『三国演义』」的特征语义709,并获得具有多个候选答案的候选列表711,其中每一个候选答案具有相关的指引信息(步骤S820)亦如上述的表一所不。

[0253] 接着,自然语言理解模块720会在候选列表711中选出回报答案。假设自然语言理解模块720依序选取候选列表711中的候选答案a (请参考表一)以做为回报答案,则自然语言理解模块720例如是输出「是否播放三国演义的书籍」,即第一语音应答707 (步骤S830〜S840)。[0254] 值得一提的是,自然语言理解模块720还可依照不同评估优先顺序的方法,来排序候选列表711中的候选答案,据以按照此优先顺序自候选列表711中选出回报答案,再输出对应于回报答案的语音应答707。再者,自然语言理解模块720可依据与使用者的多个对话记录判断用户喜好,利用该用户喜好决定候选答案的优先顺序。在一实施例中,可以利用图3B的热度栏316来记录用户的喜好,至于热度栏316的记录方式前面已提过,在此不予赘述。当然,用户的喜好也可以使用特性数据库730,其实施方式将在下列段落进行详述。至于特性数据库730记录用户喜好的方式,可以用关键字(例如“三国演义”)为基础,搭配用户喜好(例如“喜欢”等正向用语以及“厌恶”等负面用语分成两栏),然后计算喜好的数量(例如统计正向用语与等负面用语的数量),于是在查询用户喜好时,可以直接查询喜好的相关栏位(例如查询正向用语与等负面用语各有多少数量),再据以判断用户的喜好。

[0255] 而在步骤S810接收第一语音输入之前,在步骤S802中接收多个语音输入,也就是先前的历史对话记录,根据先前的多个语音输入701,撷取用户喜好属性(步骤S804)。

[0256] 基于多个语音输入701的对话内容,假设用户与自然语言理解模块720进行对话时,经常提到「我讨厌看三国演义的电视剧」,而较少提到「我讨厌听三国演义的音乐」,且更少提到「我讨厌听三国演义的书籍」(例如特性数据库730中记录有20笔关于「我讨厌看三国演义的电视剧」的记录(亦即“三国演义”加“电视剧”的负面用语的数量就是20),8笔关于「我讨厌听三国演义的音乐」的记录(亦即“三国演义”加“音乐”的负面用语的数量是8),以及I笔关于「我讨厌听三国演义的书籍」)(亦即“三国演义”加“书籍”的负面用语的数量是I),则候选列表711中的候选答案的优先顺序依序是「三国演义的书籍」、「三国演义的音乐」、以及「三国演义的电视剧」。也就是说,当特征语义709为「三国演义」时,自然语言理解模块720会选择「三国演义」的书籍来做为回报答案,并依据此回报答案输出语音应答707。

[0257] 值得一提的是,自然语言理解模块720还可依据用户喜好,以决定候选答案的优先顺序。具体来说,特性数据库730还可记录有用户所表达过的关键字,例如:「喜欢」、「偶像」(以上为正面用语)、「厌恶」或「讨厌」(以上为负面用语)等等。因此,自然语言理解模块720可自候选列表711中,依据上述关键字被记录的次数来对候选答案进行排序(亦即比较正面用语或负面用语哪者的引用次数较多)。举例来说,假设候选答案中相关于「喜欢」的指引信息次数较多(亦即正面用语的引用次数较多),则此候选答案会优先被选取。或者,假设选答案中相关于「厌恶」的指引信息次数较多(亦即负面用语的引用次数较多),则较后被选取。

[0258] 此外,自然语言理解模块720可依据众人使用习惯,来排序候选列表711中的候选答案的优先顺序,其中越是关于众人经常使用的答案则优先排列(例如使用图3C的热度栏316做记录)。例如,当特征语义709为「三国演义」时,假设自然语言理解模块720找到的候选答案例如为三国演义的电视剧、三国演义的书籍与三国演义的音乐。其中,若众人提到「三国演义」时通常是指「三国演义」的书籍,较少人会指「三国演义」的电视剧,而更少人会指「三国演义」的音乐,则自然语言理解模块720会按照优先顺序排序关于「书籍」、「电视剧」、「音乐」的候选答案。也就是说,自然语言理解模块720会优先选择「三国演义的书籍」来做为回报答案,并依据此回报答案输出语音应答707。至于上述的“众人经常使用的答案优先排列”的方式,可以使用图3C的热度栏316做记录,而记录方式已在上述图3C的相关段落揭示,在此不予赘述。

[0259] 此外,自然语言理解模块720也可依据用户习惯,以决定候选答案的优先顺序。具体来说,自然语言理解模块720可将曾经接收到来自用户的语音输入701记录在特性数据库730,特性数据库730可记录自然语言理解模块720解析用户的语音输入701时,所获得的特征语义709以及自然语言理解模块720所产生的应答记录等应答信息。因此,自然语言理解模块720在选择回报答案时,可根据特性数据库730中所记录的应答信息,按照优先排序较具有与应答信息符合的指引信息的候选答案为回报答案,藉以输出较符合用户的语音输入的语音应答。至于上述“依据用户习惯决定候选答案的优先顺序”的方式,亦可使用图3C的热度栏316做记录,而记录方式已在上述图3C的相关段落揭示,在此不予赘述。

[0260] 举例来说,假设用户与自然语言理解模块720进行对话时,经常提起到「三国演义的书籍」,而较少提起「三国演义的电视剧」,且更少提到「三国演义的音乐」(例如特性数据库730中记录有20笔关于「三国演义的书籍」的记录,8笔关于「三国演义的电视剧」的记录,以及I笔关于「三国演义的音乐」的记录),则候选列表111中的候选答案的优先顺序将会依序为「三国演义的书籍」、「三国演义的电视剧」以及「三国演义的音乐」。也就是说,当特征语义709为「三国演义」时,自然语言理解模块720会选择「三国演义的书籍」来做为回报答案,并依据此回报答案输出语音应答707。

[0261] 综合上述,自然语言理解模块720将上述的用户喜好属性、用户习惯及众人使用习惯储存至特性数据库730中(步骤S806)。也就是说,在步骤S802、步骤S804及步骤S806中,从用户的先前的历史对话记录获知用户喜好属性,并将所搜集到的用户喜好属性加入特性数据库730中,此外,也将用户习惯与众人使用习惯储存至特性数据库730,让自然语言理解模块720能利用特性数据库730中丰富信息,提供用户更正确的应答。

[0262] 在步骤S806之后,在步骤S810接收第一语音输入,并在S820解析第一语音输入的特征语义709,获得候选列表711。接着,自然语言理解模块720依据将用户喜好属性、用户习惯或众人使用习惯,决定至少一候选答案的优先顺序(步骤S880)。接着,依据优先顺序自候选列表711中选择回报答案(步骤S890)。之后,依据回报答案,输出第一语音应答707 (步骤 S840)。

[0263] 另一方面,自然语言理解模块120还可依据用户更早输入的语音输入701,以决定至少一候选答案的优先顺序。也就是说,假设有语音输入701 (即第二语音输入)被与语音取样模块710所接收的时间提前于第一语音输入701时,则自然语言理解模块720亦可通过解析第二语音输入701中的关键字,并在候选列表711中,优先选取具有与此关键字符合的指引信息的候选答案以做为回报答案,并依据此回报答案输出语音应答707。

[0264] 举例来说,假设自然语言理解模块720先接收到「我想看电视剧」的语音输入701,且隔了几秒之后,假设自然语言理解模块720又接收到「帮我放三国演义好了」的语音输入701。此时,自然语言理解模块720可在第一次的语音输入701中识别到「电视剧」的关键字,因此,自然语言理解模块720会从候选列表711中,选取候选答案所相关的指引信息是关于「电视剧」的候选答案,并以此候选答案做为回报答案而据以输出用语音应答707予用户。

[0265] 基于上述,自然语言理解模块720可依据来自用户的语音输入,并参酌众人使用习惯、用户喜好、用户习惯或用户所说的前后对话等等信息,而输出较能符合语音输入701的请求信息705的语音应答707予用户。其中,自然语言理解模块720可依据不同的排序方式,例如众人使用习惯、用户喜好、用户习惯或用户所说的前后对话等等方式,来优先排序候选列表711中的候选答案。藉此,若来自用户的语音输入701较不明确时,自然语言理解模块720可参酌众人使用习惯、用户喜好、用户习惯或用户所说的前后对话,来判断出用户的语音输入701中所意指的意图(例如语音输入中的特征语义709的属性、知识领域等等)。换言之,若候选答案与用户曾表达过/众人所指的意图接近时,自然语言理解模块720则会优先考虑此候选答案为回报答案。如此一来,自然语言对话系统700所输出的语音应答707,可较符合用户的请求信息705。

[0266] 综上所述,本发明提供一种自然语言对话方法及其系统,自然语言对话系统可依据来自用户的第一语音输入而输出对应的语音应答。本发明的自然语言对话系统还可依据依据众人使用习惯、用户喜好、用户习惯或用户所说的前后对话等等方式,来优先选出较适当的回报答案,据以输出语音应答予用户,藉以增进用户与自然语言对话系统进行对话时的便利性。

[0267] 接着再以自然语言理解系统100与结构化数据库220等架构与构件,应用于依据用户语音输入的请求信息分析而得的候选答案的数量,决定直接依据数据类型进行操作、或是要求用户提供进一步指示,随后在候选答案只剩一者时,亦直接依据数据类型进行操作的实例做的说明。

[0268] 图9为依据本发明一实施例的移动终端装置的系统示意图。请参照图9,在本实施例中,移动终端装置900包括语音接收单元910、数据处理单元920、显示单元930及存储单元940。数据处理单元920稱接语音接收单元910、显示单元930及存储单元940。语音接收单元910用以接收第一输入语音SPl及第二输入语音SP2且传送至数据处理单元920。上述的第一语音输入SPl与第二语音输入SP2可以是语音输入501、701、或是包含请求信息的语音输入。显示单元930用以受控于数据处理单元920以显示数据列表。存储单元940用以储存多个数据,这些数据可如前述的结构化数据,在此不再赘述。此外,存储单元940可以是伺服器或计算机系 统内的任何类型的存储器,例如动态随机存储器(DRAM),静态随机存储器(SRAM)、快闪存储器(Flash memory)、只读存储器(ROM)…等,本发明对此并不加以限制,比领域技术人员可以依据实际需求进行选用。

[0269] 在本实施例中,数据处理单元920会对第一输入语音SPl进行语音识别以产生包含请求信息102、505、或705的第一字串(例如是可能意图语法数据106),再对第一字串进行自然语言处理以产生对应第一输入语音SPl的第一语意信息(例如是关键字108、特征语义507/509等),并且依据第一输入语音SPl对应的第一语意信息从存储单元940的数据(例如搜寻引擎240依据关键字108对结构化数据库220进行全文检索)中选择对应的部分(例如输出回应结果110或候选列表511/711)。当选择的数据的数量为I时,数据处理单元120会依据所选择的数据的类型进行对应的操作;当选择的数据的数量大于I时,数据处理单元920依据选择的数据控制显示单元940显示数据列表(例如显示候选列表511/711)。在显示数据列表供用户驵进一步选取的状况下,数据处理单元120会收到第二输入语音SP2,并对其进行语音识别以产生第二字串,再对第二字串进行自然语言处理以产生对应第二输入语音SP2的第二语意信息,并且依据第二输入语音SP2对应的第二语意信息从数据列表中的数据中选择对应的部分。其中,第一语意信息及第二语意信息可以由多个关键字108所构成。上述对第二语音输入SP2进行分析而产生第二字串与第二语意信息的方式,可以运用图5A与7A对第二语音输入进行分析的方式,因此不再赘述。

[0270] 类似地,当选择的数据的数量为I时,数据处理单元920会依据所选择的数据的类型进行对应的操作;当选择的数据的数量大于I时,数据处理单元920会再依据选择的数据控制显示单元940显示数据列表。接着,再依据下一个第二输入语音SP2选择对应的部分,再依据选择的数据的数量进行对应的操作,此可参照上述说明类推得知,在此则不再赘述。

[0271] 进一步来说,数据处理单元920会将各个数据的多个相关条目(例如将记录302标题栏304中的各分栏308的数值数据)与第一输入语音SPl对应的第一语意信息进行比对(例如与关键字108进行比对)。当各个数据的这些相关条目与第一输入语音SPl的第一语意信息为至少部分对应时(例如部分匹配),则将数据视为第一输入语音SPl所对应的数据(例如图3A/3B的产生匹配结果)。其中,若数据的类型为音乐档,则相关条目可包括歌曲名称、歌手、专辑名称、出版时间、播放次序、…等;若数据的类型为影像档,则相关条目可包括影片名称、出版时间、工作人员(包含演出人员)、…等;若数据的类型为网页档,则相关条目可包括网站名称、网页类型、对应的使用者帐户、…等;若数据的类型为图片档,则相关条目可包括图片名称、图片信息、…等;若数据的类型为名片档,则相关条目可包括连络人名称、连络人电话、连络人地址、…等。上述数据类型为举例以说明,且数据类型可依据实际应用而定,本发明实施例不以此为限。

[0272] 接着,数据处理单元920可判断第二输入语音SP2对应的第二语意信息是否包含指示顺序的一顺序词汇(例如 “我要第三个选项”或“我选第三个”)。当第二输入语音SP2对应的第二语意信息包含指示顺序的顺序词汇时,则数据处理单元920依据顺序词汇自数据列表中选择位于对应位置的数据。当第二输入语音SP2对应的第二语意信息未包含指示顺序的顺序词汇时,则数据处理单元920将数据列表中各个数据的这些相关条目与第二输入语音SP2对应的语意信息进行比对以决定这些数据与第二输入语音SP2的多个对应程度,并可依据这些对应程度决定数据列表中这些数据的是否对应第二输入语音SP2。在本发明的一实施例中,数据处理单元920可依据对应程度,决定数据列表中数据的其中之一对应第二输入语音SP2以简化选择的流程。其中,数据处理单元920可选择数据中对应程度为最高者为对应第二输入语音SP2。

[0273] 举例来说,若第一输入语音SPl为“今天天气怎样”,在进行语音识别及自然语言处理后,第一输入语音SPl对应的第一语意信息会包括“今天”及“天气”,因此数据处理单元920会读取对应今天天气的数据,并且通过显示单元930显示这些天气数据的数据列表。接着,若第二输入语音SP2为“我要看第3笔数据”或“我选择第3笔”,在进行语音识别及自然语言处理后,第二输入语音SP2对应的第二语意信息会包括“第3笔”,在此“第3笔”会被解读为指示顺序的顺序词汇,因此数据处理单元920会读取数据列表中第3笔数据,并且再通过显示单元930显示对应的天气信息。或者,若第二输入语音SP2为“我要看北京的天气”或“我选择北京的天气”,在进行语音识别及自然语言处理后,第二输入语音SP2对应的第二语意信息会包括“北京”及“天气”,因此数据处理单元920会读取位置数据列表中对应北京的数据。当所选择的数据数为I时通过显示单元930显示对应的天气信息;当所选择的数据数大于1,则再显示进一步的数据列表供使用者选择。

[0274] 若第一输入语音SPl为“我要打电话给老张”,在进行语音识别及自然语言处理后,第一输入语音SPl对应的第一语意信息会包括“电话”及“张”,因此数据处理单元920会读取对应姓“张”的连络人数据,并且通过显示单元930显示这些连络人数据的数据列表。接着,若第二输入语音SP2为“第3个老张”或“我选择第3个”,在进行语音识别及自然语言处理后,第二输入语音SP2对应的第二语意信息会包括“第3个”,在此“第3个”会被解读为指示顺序的顺序词汇,因此数据处理单元920会读取数据列表中第3笔数据,并且依据所选择的数据进行拨接。或者,若第二输入语音SP2为“我选139开头的”,在进行语音识别及自然语言处理后,第二输入语音SP2对应的第二语意信息会包括“139”及“开头”,在此“139”不会被解读为指示顺序的顺序词汇,因此数据处理单元920会读取数据列表中电话号码为139开头的连络人数据;若第二输入语音SP2为“我要北京的老张”,在进行语音识别及自然语言处理后,第二输入语音SP2对应的第二语意信息会包括“北京”及“张”,数据处理单元920会读取数据列表中地址为北京的连络人数据。当所选择的数据数为I时,则依据所选择的数据进行拨接;当所选择的数据数大于1,则再显示进一步的数据列表供使用者选择。

[0275] 若第一输入语音SPl为“我要找餐厅”,在进行语音识别及自然语言处理后,第一输入语音SPl的第一语意信息会包括“餐厅”,数据处理单元920会读取所有餐厅的数据,由于这样的指示并不是很明确,所以将通过显示单元930显示这些餐厅数据的数据列表予用户,并等用户进一步的指示。接着,若用户通过第二输入语音SP2输入“第3个餐厅”或“我选择第3个”时,在进行语音识别及自然语言处理后,第二输入语音SP2对应的第二语意信息会包括“第3个”,在此“第3个”会被解读为指示顺序的顺序词汇,因此数据处理单元920会读取数据列表中第3笔数据,并且依据所选择的数据进行显示。或者,若第二输入语音SP2为“我选最近的”,在进行语音识别及自然语言处理后,第二输入语音SP2对应的第二语意信息会包括“最近的”,因此数据处理单元920会读取数据列表中地址与使用者最近的餐厅数据;若第二输入语音SP2为“我要北京的餐厅”,在进行语音识别及自然语言处理后,第二输入语音SP2对应的第二语意信息会包括“北京”及“餐厅”,因此数据处理单元920会读取数据列表中地址为北京的餐厅数据。当所选择的数据数为I时,则依据所选择的数据进行显示;当所选择的数据数大于1,则再显示进一步的数据列表供使用者选择。

[0276] 依据上述,数据处理单元920依据所选择的数据的类型进行对应的操作。举例来说,当所选择的数据的类型为一音乐档,则数据处理单元920依据所选择的数据进行音乐播放;当所选择的数据的类型为一影像档,则数据处理920单元依据所选择的数据进行影像播放;当所选择的数据的类型为一网页档,则数据处理单元920依据所选择的数据进行显示;当所选择的数据的类型为一图片档,则数据处理单元920依据所选择的数据进行图片显示;当所选择的数据的类型为一名片档,则数据处理单元920依据所选择的数据进行拨接。

[0277] 图10为依据本发明一实施例的信息系统的系统示意图。请参照图9及图10,在本实施例中,信息系统1000包括移动终端装置1010及伺服器1020,其中伺服器1020可以是云端伺服器、区域网路伺服器、或其他类似装置,但本发明实施例不以此为限。移动终端装置1010包括语音接收单元1011、数据处理单元1013及显示单元1015。数据处理单元1013耦接语音接收单元1011、显示单元1015及伺服器1020。移动终端装置1010可以是移动电话(Cell phone)、个人数位助理(Personal Digital Assistant, PDA)手机、智能型手机(Smart phone)等移动通讯装置,本发明亦不对此加以限制。语音接收单元1011的功能相似于语音接收单元910,显示单元1015的功能相似于显示单元930。伺服器1020用以储存多个数据且具有语音识别功能。

[0278] 在本实施例中,数据处理单元1013会通过伺服器1020对第一输入语音SPl进行语音识别以产生第一字串,再对第一字串进行自然语言处理以产生对应第一输入语音SPi的第一语意信息,并且伺服器1020会依据第一输入语音SPl对应的第一语意信息从所储存的这些数据中选择对应的部分并传送至数据处理单元1013。当选择的数据的数量为I时,数据处理单元1013会依据所选择的数据类型进行对应的操作;当选择的数据的数量大于I时,数据处理单元1013依据选择的数据控制显示单元1015显示数据列表予用户,并等候用户进一步的指示。当用户又输入指示后,接着,数据处理单元1013会通过伺服器1020对第二输入语音PS2进行语音识别以产生第二字串,再对第二字串进行自然语言处理以产生对应第二输入语音SP2的第二语意信息,并且伺服器1020依据第二输入语音SP2对应的第二语意信息从数据列表中的这些数据中选择对应的部分并传送至数据处理单元1013。类似地,当选择的数据的数量为I时,数据处理单元920会依据所选择的数据的类型进行对应的操作;当选择的数据的数量大于I时,数据处理单元1013会再依据选择的数据控制显示单元1015显示数据列表。接着,伺服器1020会再依据后续第二输入语音SP2选择对应的部分,并且数据处理单元1013会再依据选择的数据的数量进行对应的操作,此可参照上述说明类推得知,在此则不再赘述。

[0279] 应注意的是,在一实施例中,若依据第一输入语音SPl对应的第一语意信息所选择的数据数量为I时,可以直接进行该数据对应的操作。此外,在另一实施例中,可以先输出一个提示予用户,以通知用户所选择的数据的对应操作将被执行。再者,在又一实施例中,亦可在依据第二输入语音SP2对应的第二语意信息所选择的数据数量为I时,直接进行该数据对应的操作。当然,在另一实施例中,亦可以先输出一个提示予用户,以通知用户所选择的数据的对应操作将被执行,本发明对此都不加以限制。

[0280] 进一步来说,伺服器1020会将各个数据的多个相关条目与第一输入语音SPl对应的第一语意信息进行比对。当各个数据的这些相关条目与第一输入语音SPl对应的第一语意信息为至少部分对应时,则将数据视为第一输入语音SPl所对应的数据。若依据第一输入语音SPl对应的第一语意信息所选择的数据数量为I时,用户可能再通过第二输入语音SP2输入指示。由于用户此时通过第二输入语音SP2所输入的指示可能包含顺序(用以指示选择显示信息中的第几项等顺序)、直接选定显示信息中的某一者(例如直接指示某项信息的内容)、或是依据指示判定用户的意图(例如选取最近的餐厅,就会用显示“最近”的餐厅给用户)。于是,伺服器1020接着将判断第二输入语音SP2对应的第二语意信息是否包含指示顺序的一顺序词汇。当第二输入语音SP2对应的第二语意信息包含指示顺序的顺序词汇时,则伺服器1020依据顺序词汇自数据列表中选择位于对应位置的数据。当第二输入语音SP2对应的第二语意信息未包含指示顺序的顺序词汇时,则伺服器1020将数据列表中各个数据的这些相关条目与第二输入语音SP2对应的第二语意信息进行比对以决定这些数据与第二输入语音SP2的对应程度,并可依据这些对应程度决定数据列表中这些数据的是否对应第二输入语音SP2。在本发明的一实施例中,伺服器1020可依据这些对应程度决定数据列表中这些数据的其中之一对应第二输入语音SP2,以简化选择的流程。其中,伺服器1020可选择这些数据中对应程度为最高者为对应第二输入语音SP2。[0281] 图11为依据本发明一实施例的基于语音识别的选择方法的流程图。请参照图11,在本实施例中,会接收第一输入语音(步骤S1100),并且对第一输入语音901进行语音识别以产生第一字串(步骤S1110),再对第一字串进行自然语言处理以产生对应第一输入语音的第一语意信息(步骤S1120)。接着,会依据第一语意信息从多个数据中选择对应的部分(步骤S1130),并且判断选择的数据的数量是否为I (步骤S1140)。当选择的数据的数量为I时,亦即步骤S1140的判断结果为“是”,则依据所选择的数据的类型进行对应的操作(步骤S1150)。当选择的数据的数量大于I时,亦即步骤S1140的判断结果为“否”,依据选择的数据显示数据列表且接收第二输入语音(步骤S1160),并且对第二输入语音进行语音识别以产生第二字串(步骤S1170),再对第二字串进行自然语言处理以产生对应第二输入语音的第二语意信息(步骤S1180)。接着,依据第二语意信息从数据列表中的这些数据中选择对应的部分,再回到步骤S1140判断判断选择的数据的数量是否为I。其中,上述步骤的顺序为用以说明,本发明实施例不以此为限。并且,上述步骤的细节可参照图9及图10实施例,在此则不再赘述。

[0282] 综上所述,本发明实施例的基于语音识别的选择方法及其移动终端装置及信息系统,其对第一输入语音及第二输入语音进行语音识别及自然语言处理以确认第一输入语音及第二输入语音对应的语意信息,再依据第一输入语音及第二输入语音对应的语意信息对数据进行选择。藉此,可提升使用者操作的便利性。

[0283] 接下来针对本发明所揭示的自然语言理解系统100与结构化数据库220等架构与构件,与辅助启动装置相搭配的操作实例做说明。

[0284] 图12是依照本发明一实施例所绘示的语音操控系统的方块图。请参照图12,语音操控系统1200包括辅助启动装置1210、移动终端装置1220以及伺服器1230。在本实施例中,辅助启动装置1210会通过无线传输信号,来启动移动终端装置1220的语音系统,使得移动终端装置1220根据语音信号与伺服器1230进行沟通。

[0285] 详细而言,辅助启动装置1210包括第一无线传输模块1212以及触发模块1214,其中触发模块1214耦接于第一无线传输模块1212。第一无线传输模块1212例如是支援无线相容认证(Wireless fidelity,W1-Fi)、全球互通微波存取(Worldwide Interoperabilityfor Microwave Access, WiMAX)、蓝芽(Bluetooth)、超宽频(ultra-wideband, UffB)或射频识别(Radio-frequency identification, RFID)等通讯协定的装置,其可发出无线传输信号,以和另一无线传输模块彼此对应而建立无线连结。触发模块1214例如为按钮、按键等。在本实施例中,当使用者按压此触发模块1214产生一触发信号后,第一无线传输模块1212接收此触发信号而启动,此时第一无线传输模块1212会发出无线传输信号,并通过第一无线传输模块1212传送此无线传输信号至移动终端装置1220。在一实施例中,上述的辅助启动装置1210可为一蓝牙耳机。

[0286] 值得注意的是,虽然目前有些免持的耳机/麦克风亦具有启动移动终端装置1220某些功能的设计,但本发明的另一实施例中,辅助启动装置1210可以不同于上述的耳机/麦克风。上述的耳机/麦克风藉由与移动终端装置的连线,以取代移动终端装置1220上的耳机/麦克风而进行听/通话,启动功能为附加设计,但本案的辅助启动装置1210 “仅”用于开启移动终端装置1220中的语音系统,并不具有听/通话的功能,故内部的电路设计可简化,成本也较低。换言之,相对于上述的免持耳机/麦克风而言,辅助启动装置1210是另外装置,即使用者可能同时具备免持的耳机/麦克风以及本案的辅助启动装置1210。

[0287] 此外,上述的辅助启动装置1210的形体可以是使用者随手可及的用品,例如戒指、手表、耳环、项链、眼镜等装饰品,即各种随身可携式物品,或者是安装构件,例如为配置于方向盘上的行车配件,不限于上述。也就是说,辅助启动装置1210为“生活化”的装置,通过内部系统的设置,让使用者能够轻易地触碰到触发模块1214,以开启语音系统。举例来说,当辅助启动装置1210的形体为戒指时,使用者可轻易地移动手指来按压戒指的触发模块1214使其被触发。另一方面,当辅助启动装置1210的形体为配置于行车配件的装置时,使用者亦能够在行车期间轻易地触发行车配件装置的触发模块1214。此外,相较于配戴耳机/麦克风进行听/通话的不舒适感,使用本案的辅助启动装置1210可以将移动终端装置1220中的语音系统开启,甚至进而开启扩音功能(后将详述),使得使用者在不需配戴耳机/麦克风,仍可直接通过移动终端装置1220进行听/通话。另外,对于使用者而言,这些“生活化”的辅助启动装置1210为原本就会配戴或使用的物品,故在使用上不会有不习惯或是不舒适感的问题,即不需要花时间适应。举例来说,当使用者在厨房做菜时,需要拨打放置于客厅的移动电话时,假设其配戴具有戒指、项链或手表形体的本发明的辅助启动装置1210,就可以轻触戒指、项链或手表以开启语音系统以询问友人食谱细节。虽然目前部份具有启动功能的耳机/麦克风亦可以达到上述的目的,但是在每次做菜的过程中,并非每次都需要拨打电话请教友人,故对于使用者来说,随时配戴耳机/麦克风做菜,以备随时操控移动终端装置可说是相当的不方便。

[0288] 在其他实施例中,辅助启动装置1210还可配置有无线充电电池1216,用以驱动第一无线传输模块1212。进一步而言,无线充电电池1216包括电池单元12162以及无线充电模块12164,其中无线充电模块12164耦接于电池单元12162。在此,无线充电模块12164可接收来自一无线供电装置(未绘示)所供应的能量,并将此能量转换为电力来对电池单元12162充电。如此一来,辅助启动装置1210的第一无线传输模块1212可便利地通过无线充电电池1216来进行充电。

[0289] 另一方面,移动终端装置1220例如为移动电话(Cell phone)、个人数位助理(Personal Digital Assistant,PDA)手机、智能型手机(Smart phone),或是安装有通讯软件的掌上型计算机(Pocket PC)、平板型计算机(Tablet PC)或笔记型计算机等等。移动终端装置1220可以是任何具备通讯功能的可携式(Portable)移动装置,在此并不限制其范围。此外,移动终端装置1220可使用Android操作系统、Microsoft操作系统、Android操作系统、Linux操作系统等等,不限于上述。

[0290] 移动终端装置1220包括第二无线传输模块1222,第二无线传输模块1222能与辅助启动装置1210的第一无线传输模块1212相匹配,并采用相对应的无线通讯协定(例如无线相容认证、全球互通微波存取、蓝芽、超宽频通讯协定或射频识别等通讯协定),藉以与第一无线传输模块1212建立无线连结。值得注意的是,在此所述的“第一”无线传输模块1212、“第二”无线传输模块1222用以说明无线传输模块配置于不同的装置,并非用以限定本发明。

[0291] 在其他实施例中,移动终端装置1220还包括语音系统1221,此语音系统1221耦接于第二无线传输模块1222,故使用者触发辅助启动装置1210的触发模块1214后,能通过第一无线传输模块1212与第二无线传输模块1222无线地启动语音系统1221。在一实施例中,此语音系统1221可包括语音取样模块1224、语音合成模块1226以及语音输出接口1227。语音取样模块1224用以接收来自使用者的语音信号,此语音取样模块1224例如为麦克风(Microphone)等接收音讯的装置。语音合成模块1226可查询一语音合成数据库,而此语音合成数据库例如是记录有文字以及其对应的语音的信息,使得语音合成模块1226能够找出对应于特定文字讯息的语音,以将文字讯息进行语音合成。之后,语音合成模块1226可将合成的语音通过语音输出接口 1227输出,藉以播放予使用者。上述的语音输出接口 1227例如为喇叭或耳机等。

[0292] 另外,移动终端装置1220还可配置有通讯模块128。通讯模块1228例如是能传递与接收无线讯号的元件,如射频收发器。进一步而言,通讯模块1228能够让使用者通过移动终端装置1220接听或拨打电话或使用电信业者所提供的其他服务。在本实施例中,通讯模块1228可通过网际网路接收来自伺服器1230的应答信息,并依据此应答信息建立移动终端装置1220与至少一电子装置之间的通话连线,其中所述电子装置例如为另一移动终端装置(未绘示)。

[0293] 伺服器1230例如为网路伺服器或云端伺服器等,其具有语音理解模块1232。在本实施例中,语音理解模块1232包括语音识别模块12322以及语音处理模块12324,其中语音处理模块12324耦接于语音识别模块12322。在此,语音识别模块12322会接收从语音取样模块1224传来的语音信号,以将语音信号转换成多个分段语义(例如关键字或字句等)。语音处理模块12324则可依据这些分段语义而解析出这些分段语义所代表的意指(例如意图、时间、地点等),进而判断出上述语音信号中所表示的意思。此外,语音处理模块12324还会根据所解析的结果产生对应的应答信息。在本实施例中,语音理解模块1232可由一个或数个逻辑门组合而成的硬件电路来实作,亦可以是以计算机程序码来实作。值得一提的是,在另一实施例中,语音理解模块1232可配置于移动终端装置1320中,如图13所示的语音操控系统1300。上述伺服器1230的语音理解模块1232的操作,可如图1A的自然语言理解系统100、图5A/7A/7B的自然语言对话系统500/700/700’。

[0294] 以下即搭配上述语音操控系统1200来说明语音操控的方法。图14是依照本发明一实施例所绘示的语音操控方法的流程图。请同时参照图12及图14,于步骤1402中,辅助启动装置1210发送无线传输信号至移动终端装置1220。详细的说明是,当辅助启动装置1210的第一无线传输模块1212因接收到一触发信号被触发时,此辅助启动装置1210会发送无线传输信号至移动终端装置1220。具体而言,当辅助启动装置1210中的触发模块1214被使用者按压时,此时触发模块1214会因触发信号被触发,而使第一无线传输模块1212发送无线传输信号至移动终端装置1220的第二无线传输模块1222,藉以使得第一无线传输模块1212通过无线通讯协定与第二无线传输模块1222连结。上述的辅助启动装置1210仅用于开启移动终端装置1220中的语音系统,并不具有听/通话的功能,故内部的电路设计可简化,成本也较低。换言之,相对于一般移动终端装置1220所附加的免持耳机/麦克风而言,辅助启动装置1210是另一装置,即使用者可能同时具备免持的耳机/麦克风以及本案的辅助启动装置1210。

[0295] 值得一提的是,上述的辅助启动装置1210的形体可以是使用者随手可及的用品,例如戒指、手表、耳环、项链、眼镜等各种随身可携式物品,或者是安装构件,例如为配置于方向盘上的行车配件,不限于上述。也就是说,辅助启动装置1210为“生活化”的装置,通过内部系统的设置,让使用者能够轻易地触碰到触发模块1214,以开启语音系统1221。因此,使用本案的辅助启动装置1210可以将移动终端装置1220中的语音系统1221开启,甚至进而开启扩音功能(后将详述),使得使用者在不需配戴耳机/麦克风,仍可直接通过移动终端装置1220进行听/通话。此外,对于使用者而言,这些“生活化”的辅助启动装置1210为原本就会配戴或使用的物品,故在使用上不会有不习惯或是不舒适感的问题。

[0296] 此外,第一无线传输模块1212与第二无线传输模块1222皆可处于睡眠模式或工作模式。其中,睡眠模式指的是无线传输模块为关闭状态,亦即无线传输模块不会接收/检测无线传输信号,而无法与其它无线传输模块连结。工作模式指的是无线传输模块为开启状态,亦即无线传输模块可不断地检测无线传输信号,或随时发送无线传输信号,而能够与其它无线传输模块连结。在此,当触发模块1214被触发时,倘若第一无线传输模块1212处于睡眠模式,则触发模块1214会唤醒第一无线传输模块1212,使第一无线传输模块1212进入工作模式,并使第一无线传输模块1212发送无线传输信号至第二无线传输模块1222,而让第一无线传输模块1212通过无线通讯协定与移动终端装置1220的第二无线传输模块1222连结。

[0297] 另一方面,为了避免第一无线传输模块1212持续维持在工作模式而消耗过多的电力,在第一无线传输模块1212进入工作模式后的预设时间(例如为5分钟)内,倘若触发模块1214未再被触发,则第一无线传输模块1212会自工作模式进入睡眠模式,并停止与移动终端装置1220的第二无线传输模块1220连结。

[0298] 之后,于步骤1404中,移动终端装置1220的第二无线传输模块1222会接收无线传输信号,以启动语音系统1221。接着,于步骤S1406,当第二无线传输模块1222检测到无线传输信号时,移动终端装置1220可启动语音系统1221,而语音系统的1221取样模块1224可开始接收语音信号,例如「今天温度几度?」、「打电话给老王。」、「请查询电话号码。」

坐坐寸寸ο

[0299] 于步骤S1408,语音取样模块1224会将上述语音信号传送至伺服器1230中的语音理解模块1232,以通过语音理解模块1232解析语音信号以及产生应答信息。进一步而言,语音理解模块1232中的语音识别模块12322会接收来自语音取样模块1224的语音信号,并将语音信号分割成多个分段语义,而语音处理模块12324则会对上述分段语义进行语音理解,以产生用以回应语音信号的应答信息。

[0300] 在本发明的另一实施例中,移动终端装置1220还可接收语音处理模块12324所产生的应答信息,据以通过语音输出接口 1227输出应答信息中的内容或执行应答信息所下达的操作。于步骤S1410,移动终端装置1220的语音合成模块1226会接收语音理解模块1232所产生的应答信息,并依据应答信息中的内容(例如词汇或字句等)进行语音合成,而产生语音应答。并且,于步骤S1412,语音输出接口 1227会接收并输出此语音应答。

[0301] 举例而言,当使用者按压辅助启动装置1210中的触发模块1214时,第一无线传输模块1212则会发送无线传输信号至第二无线传输模块1222,使得移动终端装置1220启动语音系统1221的语音取样模块1224。在此,假设来自使用者的语音信号为一询问句,例如「今天温度几度?」,则语音取样模块1224便会接收并将此语音信号传送至伺服器1230中的语音理解模块1232进行解析,且语音理解模块1232可将解析所产生的应答信息传送回移动终端装置1220。假设语音理解模块1232所产生的应答信息中的内容为「30°C」,则语音合成模块1226会将此「30°C」的讯息合成为语音应答,且语音输出接口 1227能将此语音应播报给使用者。

[0302] 在另一实施例中,假设来自使用者的语音信号为一命令句,例如「打电话给老王。」,则语音理解模块1232中可识别出此命令句为「拨电话给老王的请求」。此外,语音理解模块1232会再产生新的应答信息,例如「请确认是否拨给老王」,并将此新的应答信息传送至移动终端装置1220。在此,语音合成模块1226会将此新的应答信息合成为语音应答,并通过语音输出接口 1227播报于使用者。更进一步地说,当使用者的应答为「是」的类的肯定答案时,类似地,语音取样模块1224可接收并传送此语音信号至伺服器1230,以让语音理解模块1232进行解析。语音理解模块1232解析结束后,便会在应答信息记录有一拨号指令信息,并传送至移动终端装置1220。此时,通讯模块1228则会依据电话数据库所记录的联络人信息,查询出「老王」的电话号码,以建立移动终端装置1220与另一电子装置之间的通话连线,亦即拨号给「老王」。

[0303] 在其他实施例中,除上述的语音操控系统1200外,亦可利用语音操控系统1300或其他类似的系统,进行上述的操作方法,并不以上述的实施例为限。

[0304] 综上所述,在本实施例的语音操控系统与方法中,辅助启动装置能够无线地开启移动终端装置的语音功能。而且,此辅助启动装置的形体可以是使用者随手可及的“生活化”的用品,例如戒指、手表、耳环、项链、眼镜等装饰品,即各种随身可携式物品,或者是安装构件,例如为配置于方向盘上的行车配件,不限于上述。如此一来,相较于目前另外配戴免持耳机/麦克风的不舒适感,使用本案的辅助启动装置1210来开启移动终端装置1220中的语音系统将更为便利。

[0305] 值得注意的是,上述具有语音理解模块的伺服器1230可能为网路伺服器或云端伺服器,而云端伺服器可能会涉及到使用者的隐私权的问题。例如,使用者需上传完整的通讯录至云端伺服器,才能完成如拨打电话、发简讯等与通讯录相关的操作。即使云端伺服器采用加密连线,并且即用即传不保存,还是难以消除使用者的担优。据此,以下提供另一种语音操控的方法及其对应的语音交互系统,移动终端装置可在不上传完整通讯录的情况下,与云端伺服器来执行语音交互服务。为了使本发明的内容更为明了,以下特举实施例作为本发明确实能够据以实施的范例。

[0306] 虽然本发明已以实施例揭示如上,然其并非用以限定本发明,本领域的技术人员,在不脱离本发明的精神和范围的前提下,可作些许的更动与润饰,故本发明的保护范围是以本发明的权利要求为准。

Claims (30)

1. 一种检索系统,包括: 一结构化数据库,用以储存具有一数据结构的多个记录;以及 ー搜寻引擎,用以对该结构化数据库进行一全文检索, 其中该数据结构包括一标题栏,该标题栏内包括至少一分栏,每一分栏包括一指引栏以及ー数值栏,该些记录的该指引栏储存一指引数据,该些记录的该数值栏储存一数值数据。
2.如权利要求1所述的检索系统,其中该数据结构还包括一内容栏,该些记录的该内容栏储存各该些记录的内容细节数据。
3.如权利要求1所述的检索系统,其中当该些记录的该标题栏中储存有多个该分栏的数据时,于各该分栏的数据间储存ー第一特殊字符,用以分隔各该分栏的数据,于该指引栏与该数值栏的数据间储存ー第二特殊字符,用以分隔该指引栏与该数值栏的数据。
4.如权利要求1所述的检索系统,其中该标题栏中的该分栏具有固定位数。
5.如权利要求1所述的检索系统,还包括一检索接ロ単元,耦接该搜寻引擎,用以接收至少ー关键字来传送给该搜寻引擎,藉以让该搜寻引擎对该些记录的该标题栏进行该全文检索,以及反应该搜寻引擎的一匹配結果,输出该些记录中的至少ー检索匹配记录。
6.如权利要求5所述的检索系统,其中该检索匹配记录为与该至少一关键字完全匹配的一全匹配记录或与该至少一关键字部分匹配的一部分匹配记录。
7.如权利要求6所述的检索系统,其中当该检索接ロ单元输出多个检索匹配记录吋,其依序输出该全匹配记录及该部分匹配记录,其中该全匹配记录的优先顺序大于该部分匹配记录的优先顺序。
8. ー种自然语言理解系统,包括: 一自然语言处理器,用以将ー用户的一请求信息,分析成至少一可能意图语法数据,每一可能意图语法数据包括至少ー关键字及一意图数据; 一知识辅助理解模块,耦接该自然语言处理器,用以求得该至少一可能意图语法数据中的一确定意图语法数据,以表达该用户的该请求信息的意图;以及 一检索系统,包括: 一结构化数据库,用以储存具有一数据结构的多个记录;以及 ー搜寻引擎,用以对该结构化数据库进行一全文检索,该数据结构包括ー标题栏,该标题栏内包括至少一分栏,每一分栏包括一指引栏以及一数值栏,该些记录的该指引栏储存一指引数据,该些记录的该数值栏储存ー数值数据, 其中,该知识辅助理解模块传送该关键字给该检索系统,藉由该检索系统的回应,以辅助求得该确定意图语法数据。
9.如权利要求8所述的自然语言理解系统,其中该数据结构还包括一内容栏,该些记录的该内容栏储存各该些记录的内容细节数据。
10.如权利要求8所述的自然语言理解系统,其中当该些记录的该标题栏中储存有多个该分栏的数据时,于各该分栏的数据间储存ー第一特殊字符,用以分隔各该分栏的数据,于该指引栏与该数值栏的数据间储存ー第二特殊字符,用以分隔该指引栏与该数值栏的数据。
11.如权利要求8所述的自然语言理解系统,其中该标题栏中的该分栏具有固定位数。
12.如权利要求8所述的自然语言理解系统,其中该检索系统还包括一检索接ロ単元,耦接该搜寻引擎以及该知识辅助理解模块,用以接收该关键字来传送给该搜寻引擎,藉以让该搜寻引擎对该些记录的该标题栏进行该全文检索,以及反应该搜寻引擎的一匹配结果,输出该些记录中的至少ー检索匹配记录,该知识辅助理解模块藉由比对该至少ー检索匹配记录中该标题栏所储存的该指引数据与该至少一可能意图语法数据所包括的该意图数据,从而判断出该用户的该请求信息的意图。
13.如权利要求12所述的自然语言理解系统,其中该检索匹配记录为与该关键字完全匹配的一全匹配记录或与该关键字部分匹配的一部分匹配记录。
14.如权利要求13所述的自然语言理解系统,其中当该检索接ロ单元输出多个检索匹配记录时,其依序输出该全匹配记录及该部分匹配记录,其中该全匹配记录的优先顺序大于该部分匹配记录的优先顺序。
15. —种检索方法,包括: 提供一结构化数据库,该结构化数据库储存具有一数据结构的多个记录;以及 对该结构化数据库进行一全文检索, 其中该数据结构包括一标题栏,该标题栏内包括至少一分栏,每一分栏包括一指引栏以及ー数值栏,该些记录的该指引栏储存一指引数据,该些记录的该数值栏储存一数值数据。
16.如权利要求15所述的检索方法,其中该数据结构还包括一内容栏,该些记录的该内容栏储存各该些记录的内容细节数据。
17.如权利要求15所述的检索方法,其中当该些记录的该标题栏中储存有多个该分栏的数据时,于各该分栏的数据间储存ー第一特殊字符,用以分隔各该分栏的数据,于该指引栏与该数值栏的数据间储存ー第二特殊字符,用以分隔该指引栏与该数值栏的数据。
18.如权利要求15所述的检索方法,其中该标题栏中的该分栏具有固定位数。
19.如权利要求15所述的检索方法,其中对该结构化数据库进行全文检索的步骤,还包括: 接收至少一关键字; 藉由该关键字来对该些记录的该标题栏进行该全文检索;以及 若该全文检索有一匹配結果,输出该些记录中的至少ー检索匹配记录。
20.如权利要求19所述的检索方法,其中该检索匹配记录为与该关键字完全匹配的一全匹配记录或与该关键字部分匹配的一部分匹配记录。
21.如权利要求20所述的检索方法,其中输出该些记录中的该些检索匹配记录的步骤,还包括: 依序输出该全匹配记录及该部分匹配记录, 其中该全匹配记录的优先顺序大于该部分匹配记录的优先顺序。
22. —种检索系统,包括: 一结构化数据库,用以储存多个记录,其中每个记录内部的所包含的数值数据相互间具有关联性,且数值数据共同用以表达来自用户的请求信息对该记录的意图;以及 ー搜寻引擎,用以对该结构化数据库进行一全文检索,其中在该数值数据被匹配时,对应于该数值数据的指引数据被输出以确认该请求信息的意图。
23.如权利要求22所述的检索系统,其中该记录还包括一内容栏,且该内容栏储存对应的该记录的内容细节数据。
24.如权利要求22所述的检索系统,其中该记录包括一标题栏,该标题栏内包括至少一分栏,每一分栏包括一指引栏以及一数值栏,该些记录的该指引栏储存该指引数据,该些记录的该数值栏储存该数值数据。
25.如权利要求24所述的检索系统,其中当该记录的该标题栏中储存有多个该分栏的数据时,于各该分栏的数据间储存ー第一特殊字符,用以分隔各该分栏的数据,于该指引栏与该数值栏的数据间储存ー第二特殊字符,用以分隔该指引栏与该数值栏的数据。
26.如权利要求24所述的检索系统,其中该标题栏中的该分栏具有固定位数。
27.如权利要求22所述的检索系统,其中该搜寻引擎是依据ー关键字对该些记录的该标题栏进行该全文检索,以及反应该搜寻引擎的一匹配結果,输出该些记录中的至少ー检索匹配记录。
28.如权利要求27所述的检索系统,其中该检索匹配记录为与该至少一关键字完全匹配的一全匹配记录或与该至少一关键字部分匹配的一部分匹配记录。
29.如权利要求28所述的检索系统,其中当多个检索匹配记录被匹配时,依序输出该全匹配记录及该部分匹配记录,其中该全匹配记录的优先顺序大于该部分匹配记录的优先顺序。
30.如权利要求27所述的检索系统,还包含一检索接ロ単元,耦接该搜寻引擎,用以接收至少一关键字来传送给该搜寻引擎。
CN 201210593064 2012-12-31 2012-12-31 检索方法、检索系统以及自然语言理解系统 CN103049567A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201210593064 CN103049567A (zh) 2012-12-31 2012-12-31 检索方法、检索系统以及自然语言理解系统

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
CN 201210593064 CN103049567A (zh) 2012-12-31 2012-12-31 检索方法、检索系统以及自然语言理解系统
CN 201310184544 CN103218463A (zh) 2012-12-31 2013-05-17 检索方法、检索系统以及自然语言理解系统
CN 201310690513 CN103761242B (zh) 2012-12-31 2013-12-13 检索方法、检索系统以及自然语言理解系统
US14144557 US9646000B2 (en) 2012-12-31 2013-12-31 Search method, search system, and natural language comprehension system
US15462926 US9715524B1 (en) 2012-12-31 2017-03-20 Natural language comprehension system

Publications (1)

Publication Number Publication Date
CN103049567A true true CN103049567A (zh) 2013-04-17

Family

ID=48062207

Family Applications (3)

Application Number Title Priority Date Filing Date
CN 201210593064 CN103049567A (zh) 2012-12-31 2012-12-31 检索方法、检索系统以及自然语言理解系统
CN 201310184544 CN103218463A (zh) 2012-12-31 2013-05-17 检索方法、检索系统以及自然语言理解系统
CN 201310690513 CN103761242B (zh) 2012-12-31 2013-12-13 检索方法、检索系统以及自然语言理解系统

Family Applications After (2)

Application Number Title Priority Date Filing Date
CN 201310184544 CN103218463A (zh) 2012-12-31 2013-05-17 检索方法、检索系统以及自然语言理解系统
CN 201310690513 CN103761242B (zh) 2012-12-31 2013-12-13 检索方法、检索系统以及自然语言理解系统

Country Status (2)

Country Link
US (2) US9646000B2 (zh)
CN (3) CN103049567A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104601202A (zh) * 2014-12-23 2015-05-06 惠州Tcl移动通信有限公司 基于蓝牙技术实现文件搜索的方法、终端及蓝牙设备

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105279168A (zh) * 2014-06-24 2016-01-27 华为技术有限公司 支持自然语言的数据查询方法、开放平台及用户终端
US9619555B2 (en) * 2014-10-02 2017-04-11 Shahbaz Anwar System and process for natural language processing and reporting
US9871536B1 (en) * 2016-07-27 2018-01-16 Fujitsu Limited Encoding apparatus, encoding method and search method

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7725307B2 (en) * 1999-11-12 2010-05-25 Phoenix Solutions, Inc. Query engine for processing voice based queries including semantic decoding
US20050144162A1 (en) * 2003-12-29 2005-06-30 Ping Liang Advanced search, file system, and intelligent assistant agent
US7318068B2 (en) * 2004-07-22 2008-01-08 International Business Machines Corporation Synchronization of application documentation across database instances
CN1952928A (zh) * 2005-10-20 2007-04-25 梁威 建立自然语言知识库及其自动问答检索的计算机系统
US20080155426A1 (en) * 2006-12-21 2008-06-26 Microsoft Corporation Visualization and navigation of search results
US8234282B2 (en) * 2007-05-21 2012-07-31 Amazon Technologies, Inc. Managing status of search index generation
CN100433019C (zh) * 2007-07-26 2008-11-12 杭州华三通信技术有限公司 一种数据存储与检索的方法及系统
CN101645085B (zh) * 2009-09-03 2012-09-12 北京伟库电子商务科技有限公司 不规则字段存储方法和系统
US8634947B1 (en) * 2009-10-21 2014-01-21 Michael Merhej System and method for identifying digital files
US8650173B2 (en) * 2010-06-23 2014-02-11 Microsoft Corporation Placement of search results using user intent
US9355179B2 (en) * 2010-09-24 2016-05-31 Microsoft Technology Licensing, Llc Visual-cue refinement of user query results
US9241195B2 (en) * 2010-11-05 2016-01-19 Verizon Patent And Licensing Inc. Searching recorded or viewed content
US9129010B2 (en) * 2011-05-16 2015-09-08 Argo Data Resource Corporation System and method of partitioned lexicographic search
US20160217181A1 (en) * 2012-07-31 2016-07-28 Google Inc. Annotating Query Suggestions With Descriptions

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104601202A (zh) * 2014-12-23 2015-05-06 惠州Tcl移动通信有限公司 基于蓝牙技术实现文件搜索的方法、终端及蓝牙设备

Also Published As

Publication number Publication date Type
US9646000B2 (en) 2017-05-09 grant
CN103761242A (zh) 2014-04-30 application
US20140188835A1 (en) 2014-07-03 application
US20170193038A1 (en) 2017-07-06 application
US9715524B1 (en) 2017-07-25 grant
CN103761242B (zh) 2017-11-10 grant
CN103218463A (zh) 2013-07-24 application

Similar Documents

Publication Publication Date Title
US7957975B2 (en) Voice controlled wireless communication device system
US6907397B2 (en) System and method of media file access and retrieval using speech recognition
US8255224B2 (en) Voice recognition grammar selection based on context
US20110184730A1 (en) Multi-dimensional disambiguation of voice commands
US20100106497A1 (en) Internal and external speech recognition use with a mobile communication facility
US20100246784A1 (en) Conversation support
US20100205222A1 (en) Music profiling
US20090234655A1 (en) Mobile electronic device with active speech recognition
US20130080177A1 (en) Speech recognition repair using contextual information
US8886540B2 (en) Using speech recognition results based on an unstructured language model in a mobile communication facility application
US7818176B2 (en) System and method for selecting and presenting advertisements based on natural language processing of voice-based input
US20110289015A1 (en) Mobile device recommendations
US20090249198A1 (en) Techniques for input recogniton and completion
US20100241963A1 (en) System, method, and apparatus for generating, customizing, distributing, and presenting an interactive audio publication
US20090287626A1 (en) Multi-modal query generation
US8838457B2 (en) Using results of unstructured language model based speech recognition to control a system-level function of a mobile communications facility
US20070061067A1 (en) System and method for using speech recognition with a vehicle control system
US20110060587A1 (en) Command and control utilizing ancillary information in a mobile voice-to-speech application
US20110112827A1 (en) System and method for hybrid processing in a natural language voice services environment
US8880405B2 (en) Application text entry in a mobile environment using a speech processing facility
US20110054899A1 (en) Command and control utilizing content information in a mobile voice-to-speech application
US20090030688A1 (en) Tagging speech recognition results based on an unstructured language model for use in a mobile communication facility application
US20110054894A1 (en) Speech recognition through the collection of contact information in mobile dictation application
US20110055256A1 (en) Multiple web-based content category searching in mobile search application
US20100318366A1 (en) Touch Anywhere to Speak

Legal Events

Date Code Title Description
C06 Publication
C10 Entry into substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)