CN116643646A - 自然语言处理装置及自然语言处理方法 - Google Patents
自然语言处理装置及自然语言处理方法 Download PDFInfo
- Publication number
- CN116643646A CN116643646A CN202211615232.9A CN202211615232A CN116643646A CN 116643646 A CN116643646 A CN 116643646A CN 202211615232 A CN202211615232 A CN 202211615232A CN 116643646 A CN116643646 A CN 116643646A
- Authority
- CN
- China
- Prior art keywords
- natural language
- voice command
- sentence
- language processing
- voice
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
- 238000003058 natural language processing Methods 0.000 title claims abstract description 82
- 238000000034 method Methods 0.000 title claims abstract description 51
- 230000006870 function Effects 0.000 claims abstract description 63
- 150000001875 compounds Chemical class 0.000 claims abstract description 49
- 239000000284 extract Substances 0.000 claims description 20
- 230000009471 action Effects 0.000 claims description 18
- 238000012545 processing Methods 0.000 claims description 16
- 239000002131 composite material Substances 0.000 claims description 7
- 238000004891 communication Methods 0.000 description 21
- 230000004044 response Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 14
- 230000008569 process Effects 0.000 description 11
- 239000000470 constituent Substances 0.000 description 10
- 230000015654 memory Effects 0.000 description 9
- 206010041349 Somnolence Diseases 0.000 description 8
- 238000004458 analytical method Methods 0.000 description 8
- 238000000605 extraction Methods 0.000 description 8
- 239000013598 vector Substances 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000013136 deep learning model Methods 0.000 description 4
- 230000000877 morphologic effect Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000010438 heat treatment Methods 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 238000004378 air conditioning Methods 0.000 description 2
- 238000013145 classification model Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000010705 motor oil Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000007787 long-term memory Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000003921 oil Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/1815—Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/1822—Parsing for meaning understanding
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/223—Execution procedure of a spoken command
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S715/00—Data processing: presentation processing of document, operator interface processing, and screen saver display processing
- Y10S715/978—Audio interaction as part of an operator interface
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Machine Translation (AREA)
Abstract
本发明提供了一种自然语言处理装置和自然语言处理方法,其可以基于自然语言理解模块的输出来确定用户的语音命令是否是复合句或复杂句,并且当用户的语音命令是复合句或复杂句时,递归地调用自然语言理解模块,从而执行表示为单句的全部多个功能。
Description
技术领域
本发明涉及自然语言处理装置和自然语言处理方法,其可以处理作为复合句(compound sentence)或复杂句(complex sentence)的用户语音。
背景技术
自然语言处理装置是能够通过与用户的对话来识别用户意图的装置。这种自然语言处理装置连接到日常生活中使用的各种电子设备,例如车辆、移动设备、家用电器,以允许执行对应于用户语音命令的各种功能。
为了从用户的语音命令中识别用户的意图,需要自然语言处理装置处理自然语言形式的用户的语音命令。自然语言是指人们日常生活中用于交流的任何语言,与诸如计算机编程语言的人工语言或结构化语言形成对比。
自然语言处理装置可根据预定原理或通过机器学习来识别用户意图。在任一情况下,现有的自然语言处理装置从输入的单句中提取单个意图。因此,当用户输入多个功能的语音命令作为单句时,有可能无法执行所有期望的功能。
发明内容
本发明的一方面提供了自然语言处理装置和自然语言处理方法,其可基于自然语言理解模块的输出来确定用户的语音命令是否是复合句或复杂句,并且当用户的语音命令是复合句或复杂句时,递归地调用自然语言理解模块,从而执行表示为单句的全部多个功能。
本发明的另外的方面部分地在以下描述中说明,并且部分地从描述中理解,或者可以通过实施本发明而获知。
根据本发明的实施例,提供了一种自然语言处理装置。所述自然语言处理装置包括:语音识别模块,配置为将用户的语音命令转换为文本;自然语言理解模块,配置为基于文本对与语音命令相对应的意图(intent)进行分类并且提取包括在语音命令中的槽位(slot);以及控制模块,配置为基于由自然语言理解模块分类的意图来确定语音命令是否包括复合句或复杂句,并且当语音命令包括复合句或复杂句时,再次向自然语言理解模块输入与语音命令相对应的文本。
自然语言理解模块配置为针对多个预定义意图中的每一个来计算语音命令的匹配概率,以对与语音命令相对应的意图进行分类。
在以上段落中,控制模块配置为当所计算的匹配概率中的最高匹配概率小于第一参考值并且两个或更多个匹配概率大于第二参考值时,确定语音命令包括复合句或复杂句。
在以上段落中,控制模块配置为基于所计算的匹配概率,当前M个意图具有相同的动作和不同的槽位(M是大于或等于2的整数)时,确定语音命令包括复合句。控制模块还配置为,当前M个意图中的两个或更多个意图具有不同的动作时,确定语音命令包括复杂句。
在上述段落中,当语音命令包括复杂句时,控制模块配置为将从语音命令转换的文本划分为多个句子,并再次向自然语言理解模块输入所划分的多个句子。
在以上段落中,自然语言理解模块配置为,基于所计算的匹配概率,基于与前M个意图相关的信息,确定再次输入文本的最终意图和最终槽位。
在以上段落中,控制模块配置为确定最终意图和最终槽位之间的一致性。
在以上段落中,控制模块配置为生成结果处理信号,用于执行对应于与最终槽位的一致性得到确认的最终意图的功能。
根据本发明的实施例,提供了一种自然语言处理装置。所述自然语言处理装置包括:语音识别模块,配置为将用户的语音命令转换为文本;自然语言理解模块,配置为基于文本对与语音命令相对应的意图进行分类并且提取包括在语音命令中的槽位;以及控制模块,配置为当由自然语言理解模块分类的意图是个人命令的注册时,再次向自然语言理解模块输入指示与个人命令匹配的待注册功能的功能语音。
在以上段落中,自然语言理解模块配置为对与再次输入的功能语音相对应的意图进行分类并提取包括在再次输入的功能语音中的槽位。
在以上段落中,控制模块配置为存储由对应于功能语音的意图和包括在功能语音中的槽位定义的功能,作为对应于个人命令的功能。
在上面的段落中,控制模块配置为当在注册个人命令之后输入的用户的语音命令包括注册的个人命令时,生成用于执行对应于个人命令的功能的控制信号。
根据本发明的实施例,提供了一种自然语言处理方法。所述自然语言处理方法包括:由语音识别模块将用户的语音命令转换为文本;由自然语言理解模块基于所述文本对与所述语音命令相对应的意图进行分类并提取包括在所述语音命令中的槽位;由控制模块基于所分类的意图确定所述语音命令是否包括复合句或复杂句;当语音命令包括复合句或复杂句时,由控制模块再次向自然语言理解模块输入与语音命令相对应的文本。
在上述段落中,确定语音命令是否包括复合句或复杂句包括针对多个预定义意图中的每一个计算语音命令的匹配概率,以分类与语音命令相对应的意图。
在以上段落中,确定语音命令是否包括复合句或复杂句包括:当所计算的匹配概率中的最高匹配概率小于第一参考值并且两个或更多个匹配概率大于第二参考值时,确定语音命令包括复合句或复杂句。
在上述段落中,确定语音命令是否包括复合句或复杂句包括:基于所计算的匹配概率,当前M个意图具有相同的动作和不同的槽位时(M是大于或等于2的整数),确定语音命令包括复合句;以及当前M个意图中的两个或更多个意图具有不同的动作时,确定语音命令包括复杂句。
在上述段落中,再次向所述自然语言理解模块输入与所述语音命令相对应的文本包括:当语音命令包括复杂句时,将从语音命令转换的文本划分为多个句子,并再次向所述自然语言理解模块输入所划分的多个句子。
在以上段落中,自然语言处理方法还包括基于所计算的匹配概率,基于关于前M个意图的信息来确定再次输入的文本的最终意图和最终槽位。
在以上段落中,自然语言处理方法还包括确定最终意图和最终槽位之间的一致性。
在以上段落中,自然语言处理方法还包括生成结果处理信号,用于执行对应于与最终槽位的一致性得到确认的最终意图的功能。
附图说明
从以下结合附图对实施例的描述中,本发明的这些和/或其他方面将变得清楚明朗并且更容易理解,在附图中:
图1是示出根据实施例的自然语言处理装置的框图;
图2是示出根据实施例的车辆的框图;
图3是示意性地示出根据实施例的车辆和自然语言处理装置之间的关系的示图;
图4是示出根据实施例的自然语言处理装置的每个模块中执行的操作的框图;
图5是示意性地示出根据实施例的应用于自然语言处理装置的自然语言理解模块的分类模型的结构的示图;
图6是示出根据实施例的自然语言处理方法的操作的流程图;
图7-9是示出根据实施例的自然语言处理方法中用于不同语音命令的每个处理的示图;
图10是示出在根据实施例的自然语言处理方法中由用户注册个人命令的操作的流程图;以及
图11是示出在根据实施例的自然语言处理方法中由用户注册个人命令的处理的示例的示图。
具体实施方式
在此说明的并且在本发明的配置中示出的实施例仅仅是示例性实施例,因此应当理解,在实施本发明时可以用各种等同形式和修改形式来替代。
在整个说明书中,相同的附图标记表示相同的元件。
本文使用的术语仅用于描述特定实施例的目的,而不旨在限制本发明。应当理解,单数形式也旨在包括复数形式,除非上下文另有明确说明。还应当理解,当在本说明书中使用时,术语“包括”、“包含”和/或“具有”指定所述特征、整数、步骤、操作、元件和/或组件的存在,但不排除一个或多个其他特征、整数、步骤、操作、元件、组件和/或其组合的存在或添加。
应当理解,尽管术语第一,第二等在本文中可用于描述各种元件,但这些元件不应受到这些术语的限制。例如,在不脱离本发明的技术精神或必要特征的情况下,第一元件可以被称为第二元件,并且第二元件也可以被称为第一元件。当通过使用连接术语“~和/或~”等来描述项目时,描述应理解为包括一个或多个相关联的所列项目的任何和所有组合。
此外,诸如“部件”、“设备”、“块”、“构件”、“模块”等术语可以指用于处理至少一个功能或动作的单元。举例来说,所述术语可指由至少一个硬件(例如现场可编程门阵列(FPGA)/专用集成电路(ASIC))或存储在存储器或处理器中的软件处理的至少一个过程。
用于方法步骤的附图标记仅仅是为了便于说明,而不是为了限制步骤的顺序。因此,除非上下文另外明确指出,否则可以以其他方式实施所写顺序。
这里使用的术语“至少一个”包括相关列出项的任何和所有组合。例如,应当理解,术语“a、b或c中的至少一个”可以包括仅a、仅b、仅c、a和b两者、a和c两者、b和c两者、或a、b和c的全部。
实施例可以以存储计算机可执行指令的记录介质的形式来存储。所述指令可以程序代码的形式存储,并且当由处理器执行时,所述指令可以执行所公开的实施例的操作。记录介质可以实现为计算机可读记录介质。
计算机可读记录介质包括其中存储有可由计算机解码的指令的所有类型的记录介质,例如只读存储器(ROM)、随机存取存储器(RAM)、磁带、磁盘、闪存、光记录介质等。
以下,参考附图详细描述自然语言处理装置和自然语言处理方法的实施例。
图1是示出根据实施例的自然语言处理装置的框图。
根据实施例的自然语言处理装置100包括:语音处理模块10,其提取执行用户想要的控制所需的信息;以及控制模块130,其生成用于执行用户想要的控制的控制信号。
语音处理模块10可以包括用于将用户的语音转换为文本的语音识别模块110和用于确定对应于该文本的用户意图的自然语言理解模块120。
语音识别模块110可以用语音到文本(STT)引擎来实现,并且通过对用户的语音应用语音识别算法来执行到文本的转换。
例如,语音识别模块110可以通过应用诸如倒频谱、线性预测系数(LPC)、Mel频率倒谱系数(MFCC)、滤波器组能量等的特征向量提取方法来从用户的语音中提取特征向量。
此外,可以通过比较提取的特征向量和训练的参考模式来获得识别结果。为此,可以使用用于对语音的信号特征进行建模和比较的声学模型或者用于对诸如单词或音节的识别词汇的语言顺序进行建模的语言模型。
此外,语音识别模块110可以基于学习将用户的语音转换为文本,其中应用深度学习或机器学习。在所公开的实施例中,语音识别模块110将用户的语音转换为文本的方式不限于此,并且可以应用各种语音识别技术来将用户的语音转换为文本。
自然语言理解模块120可应用自然语言理解(NLU)技术来确定包括在文本中的用户意图。因此,自然语言理解模块120可包括通过将NLU技术应用于输入句子来确定用户意图的NLU引擎。语音识别模块110输出的文本可以是输入到自然语言理解模块120的句子。
例如,自然语言理解模块120可以从输入句子中识别实体名称。实体名称可以是诸如个人、地点、组织、时间、日、货币等的名称的专有名词。命名实体识别(NER)用于识别句子中的实体名称并对所识别的实体的类型进行分类。可以通过命名实体识别从句子中提取关键词以理解句子的含义。
此外,自然语言理解模块120可从输入句子确定域。该域可以用于识别用户语音的主题。例如,可以基于输入句子来确定表示诸如车辆控制、时间表、关于天气或交通状况的信息、文本传输、导航等各种主题的域。
另外,自然语言理解模块120可以分析输入句子的语音动作。语音动作分析用于分析语音的意图,诸如用户是否提出问题,提出请求,响应或简单地表达用户的情绪。
此外,自然语言理解模块120可对与输入句子相对应的意图进行分类,并提取执行该意图所需的实体。
例如,当输入句子是“打开空调”时,域可以是[车辆控制],并且意图可以是[打开,空调]。在该示例中,意图被定义为[action_target]([动作_目标])。在该示例中,[打开]可以是动作,[空调]可以是目标,并且执行对应于这种意图的控制所需的实体可以是[温度,空气量]。
然而,用于每个自然语言处理装置的术语及其定义可以变化。因此,即使使用与“动作”、“目标”等不同的术语,只要其在自然语言理解模块中的含义或作用相同或相似,该术语也可包含在本发明的范围内。
如上所述,自然语言理解模块120从输入句子中提取诸如意图、域、实体等所需信息的操作可基于规则或基于机器学习或深度学习来执行,这将在下面描述。
控制模块130可对语音识别和自然语言理解的结果执行处理,并将结果处理信号输出到用户终端或外部服务器,以提供与用户意图相应的服务。例如,控制模块130可以生成并输出控制信号,用于执行与从用户语音中提取的意图相对应的控制。
用户终端可以用作用户和自然语言处理装置100之间的网关。用户终端可以是配备有诸如麦克风、扬声器、显示器等输入/输出接口的移动设备,或者是车辆本身。当用户终端是移动设备时,车辆和移动设备可以通过诸如蓝牙的无线通信或通过电缆连接而彼此连接。
例如,当对应于用户意图的服务是车辆相关控制时,控制模块130可生成用于执行相应控制的控制信号并将该控制信号发送到用户终端。
替代地,当对应于用户意图的服务是提供特定信息时,控制模块130可搜索该特定信息并将检索到的信息发送到用户终端。当需要时,可以由外部服务器执行信息检索。
替代地,当对应于用户意图的服务是提供特定内容时,控制模块130可向提供相应内容的外部服务器请求。
替代地,当对应于用户意图的服务只是继续对话时,控制模块130可生成对用户语音的响应并通过语音输出该响应。
上述自然语言处理装置100可以用存储执行上述操作的程序的至少一个存储器和实现所存储的程序的至少一个处理器来实现。
图1所示的自然语言处理装置100的构成部件基于其操作或功能被划分,并且所有或部分构成部件可共享存储器或处理器。换言之,语音识别模块110、自然语言理解模块120和控制模块130不一定在物理上彼此分离。
图2是示出根据实施例的车辆的框图。图3是示意性地示出根据实施例的车辆和自然语言处理装置之间的关系的示图。
参见图2,车辆2包括:麦克风210,用户的语音被输入到麦克风210;扬声器220,输出提供用户期望的服务所需的声音;显示器230,显示提供用户期望的服务所需的图像;通信模块240,执行与外部设备的通信;以及控制器250,控制车辆2的上述构成部件和其他构成部件。
麦克风210可以设置在车辆2内部以接收用户的语音。将用户的语音输入到车辆2的麦克风210的用户可以是驾驶员。麦克风210可以设置在方向盘、中央仪表板、车顶内衬或后视镜等上,以接收来自驾驶员的语音。
除了用户的语音之外,可以将麦克风210周围产生的各种音频输入到麦克风210。麦克风210可以输出与输入到麦克风210的音频相对应的音频信号。输出音频信号可由控制器250处理或通过通信模块240发送到外部服务器中提供的自然语言处理装置100。
除了麦克风210之外,车辆2还可以包括用于手动接收用户命令的输入器260。输入器260可以包括在中央仪表板上提供音频、视频、导航(AVN)显示的区域中、在提供变速箱的区域中、或在方向盘上设置为飞梭或按钮的输入器。
此外,为了接收与乘客座椅相关的控制命令,输入器260可以包括设置在车辆2的每个车门上的输入器,以及设置在前扶手或后扶手上的输入器。
此外,输入器260可以包括触摸板,诸如与显示器230一体提供的触摸屏。
显示器230可以包括设置在车辆2的中央仪表板上的AVN显示器、仪表盘显示器或平视显示器(HUD)。替代地,显示器230可以包括设置在前部座椅的头枕的背部的后部座椅显示器,使得后部乘员可以看到后部座椅显示器。当车辆2是多座车辆时,显示器230可以包括安装在车辆2的车顶内衬上的显示器。
显示器230可以设置在任何地方,只要车辆2内的用户可以看到显示器230。显示器230的位置或数量不受限制。
通信模块240可以通过使用诸如蓝牙、4G、5G、Wi-Fi等的各种无线通信方法中的至少一种来与其他设备发送和接收信号。替代地,通信模块240可以通过连接到USB终端、AUX终端等的电缆与其他设备发送和接收信息。
此外,通信模块240可以具有支持不同通信方法的两个或更多个通信接口,以与两个或更多个其他设备发送和接收信号和信息。
例如,通信模块240可以通过蓝牙通信与位于车辆2内部的移动设备通信,从而接收由移动设备获得的或存储在移动设备中的信息(用户图像、用户语音、联系号码、时间表等)。此外,通信模块240可以通过4G或5G通信方法与服务器1通信,从而发送用户的语音并接收提供用户期望的服务所需的信号。此外,通信模块240可以通过连接到车辆2的移动设备与服务器1发送和接收信号。
此外,车辆2可以包括用于路线引导的导航设备,用于调节室内温度的空调设备,用于打开/关闭车窗的车窗调节设备,用于加热座椅的座椅加热设备,用于调节座椅的位置、高度、角度的座椅调节设备以及用于调节室内照度等级的照明设备等。
上述构成部件用于提供与车辆2相关的便利功能,并且可以根据型号或选项省略一部分构成部件。此外,除了上述构成部件之外,车辆2中还可以包括其他构成部件。与车辆2的驱动相关的构造是公知的,因此在此省略其描述。
控制器250可以打开或关闭麦克风210,处理并存储输入到麦克风210的语音,并通过通信模块240发送到另一设备。
此外,控制器250可控制显示器230显示图像,并控制扬声器220输出声音。
另外,控制器250可以执行与车辆2相关的各种控制。例如,控制器250可以根据通过输入器260或麦克风210输入的用户命令来控制导航设备、空调设备、车窗调节设备、座椅加热设备、座椅调节设备或照明设备中的至少一个。
控制器250可以包括至少一个存储器和至少一个处理器,存储器存储执行上述操作或将在下面描述的操作的程序,处理器实施所存储的程序。
参考图3,自然语言处理装置100可设置在服务器1中。因此,输入到车辆2的用户的语音命令可以被发送到服务器1的通信模块140,并且当由设置在服务器1中的自然语言处理装置100处理语音信号时,通信模块140可以再次将处理结果发送到车辆2。
通信模块140可以通过使用诸如蓝牙、4G、5G、Wi-Fi等的各种无线通信方法中的至少一种来与其他设备发送和接收信号。
自然语言处理装置100的构成部件的全部或一部分可设置在车辆2中。例如,语音识别模块110可以设置在车辆2中,自然语言理解模块120和控制模块130可以设置在服务器1中。
作为另一示例,语音识别模块110和控制模块130可以设置在车辆2中,并且自然语言理解模块120可以设置在服务器1中,或者,语音识别模块110和自然语言理解模块120可以设置在服务器1中,并且控制模块130可以设置在车辆2中。
作为又一示例,自然语言处理装置100可设置在车辆2中。
虽然自然语言处理装置100的构成部件的全部或一部分可以如上所述设置在车辆2中,但是在以下描述的实施例中描述了自然语言处理装置100如图3所示设置在服务器1中的示例。
图4是示出根据实施例的自然语言处理装置的每个模块中执行的操作的框图。图5是示意性地示出根据实施例的应用于自然语言处理装置的自然语言理解模块的分类模型的结构的示图。
参考图4,当语音命令被输入到语音识别模块110时,语音识别模块110执行诸如从输入的语音命令中提取语音,去除噪声等的预处理,然后将预处理的语音信号转换为文本。
文本被输入到自然语言理解模块120,并且自然语言理解模块120对输入的文本执行词法分析(morphological analysis)、意图分类、槽位提取等,从而获得识别用户意图所需的信息,诸如意图、槽位等。
同时参考图4和图5,自然语言理解模块120可以将输入句子划分为用于自然语言分析的更小的单元,即令牌(token)。例如,可以执行词素分析(morpheme analysis)以将输入的句子划分为以词素为单元的令牌。
根据词素分析,输入句子可被分成词素,词素是含义的最小单位。词素表示含义可分析的最小单位。词素可以是指示语法或关系含义的词(word)或词的一部分,并且可以包括简单的词的词根、词尾、助词、前缀、后缀等。
例如,当输入句子是“enjin oil eun eonje gyoche hae( )”时,其意味着“让我知道何时更换发动机油”,可以获得如图5所示的词素分析的结果,并且可以对每个词素执行词性标记(part-of-speech tagging)。
作为示例,自然语言理解模块120可通过深度学习模型对与用户的语音命令相对应的意图进行分类并提取槽位。
输入到深度学习模型的输入序列可以由令牌组成,并且通过对输入序列执行词嵌入(word embedding)而生成的词嵌入向量可以被输入到编码层。此外,可以一起执行序列嵌入、位置嵌入等,以提高性能。
编码层可以对表示为向量的输入序列的令牌进行编码。编码层可以包括多个隐藏层,并且使用诸如递归神经网络(RNN)、双向选通递归单元等的算法。
深度学习模型可以基于编码层的输出对意图进行分类。例如,对应于输入句子的意图可以通过将预定义意图的向量与编码的输入序列进行比较来分类。在这种情况下,输入句子可通过使用softmax函数与意图匹配,softmax函数是分类处理中使用的激活函数之一。
在该示例中,[Ask_when replace]([问_何时更换])可被分类为具有输入句子的最高匹配概率的意图。
此外,深度学习模型可以通过使用条件随机场(CRF)层来提取槽位。编码层的每个隐藏状态可以被输入到CRF层。替代地,长短期记忆模型(LSTM)可用于槽位提取。
槽位表示与包括在语音中的意图有关的有意义的信息。可以通过指示值所属的分类系统的类型、句子中的角色和值来定义槽位。槽位可以由上文描述的实体来填充。
槽位的角色可取决于意图。例如,在句子“从首尔站去釜山站()”中,“首尔站”和“釜山站”对应于相同类型的槽位。然而,在句子中,它们的角色是不同的,因为“首尔站”是起始点,而“釜山站”是目的地。此外,在“让我知道首尔站的地址()”的句子中的“首尔站”和在“从首尔站去釜山站”的句子中的“首尔站”具有相同的类型,但是不同的角色,因为前者中的“首尔站”的角色是搜索对象。
槽位的类型可以取决于意图。例如,在句子“让我知道去杨花大桥的路线()”中,“杨花大桥”的类型可以对应于兴趣点(POI),但是在句子“为我播放歌曲,杨花大桥(/>)”中,“杨花大桥”的类型可以被分类为歌曲名。
在图5的示例中,槽位的类型“发动机油(engine oil)”可以作为“消耗品(consumable’)”提取。
再次参考图4,当从自然语言理解模块120输出与语音命令相对应的诸如意图、槽位等的信息时,控制模块130可以基于诸如输出意图、槽位等的信息来生成用于执行与语音命令相对应的功能的结果处理信号。结果处理信号可以包括系统响应信号和控制信号,系统响应信号包括关于要执行的功能的指导消息,控制信号是执行实际功能所需的。
图6是示出根据实施例的自然语言处理方法的操作的流程图。根据实施例的自然语言处理方法可由自然语言处理装置100执行。因此,自然语言处理装置100的上述描述可应用于自然语言处理方法的实施例,即使下面没有具体描述。相反,关于自然语言处理方法的描述可应用于自然语言处理装置100的实施例,即使未具体描述。
参考图6,当从车辆2的用户终端等输入语音命令时,语音识别模块110对语音命令执行语音识别,并将输入的语音命令转换为文本(1100)。
基于该文本,自然语言理解模块120对与语音命令相对应的意图进行分类(1200),并提取包括在语音命令中的槽位(1300)。
控制模块130基于自然语言理解模块120的输出来确定语音命令是包括复合句/复杂句还是包括单句(1400)。
在实施例中,包括多个意图的单句被定义为复合句或复杂句,并且包括单个意图的单句被定义为单句。
如上所述,自然语言理解模块120确定输入句子是否与多个预定义意图中的每一个相匹配。自然语言理解模块120可以为多个预定义意图中的每一个计算并输出输入句子的匹配概率。
当最前一个(top one)意图的匹配概率不占优势并且前两个或更多个(top twoor more)意图的匹配概率高于阈值概率时,控制模块130可以确定语音命令是否是复合句或复杂句。
具体地,当最高匹配概率小于第一参考值并且前两个或更多个意图的匹配概率大于第二参考值时,控制模块130可以确定语音命令是复合句或复杂句。然而,当具有大于第二参考值的匹配概率的意图的数量超过N(N是大于或等于2的整数)时,仅使用前N个意图。换句话说,基于匹配概率,前M个意图(具有小于第一参考值和大于第二参考值的匹配概率的2个以上和N个以下的意图)可用作对应于语音命令的意图。
此外,当确定语音命令包括复合句和复杂句时,控制模块130可基于与语音命令相对应的多个意图来区分复合句和复杂句。
如上所述,意图可被定义为[action_target]。当多个意图中的两个或更多个意图具有不同的动作时,控制模块130可将语音命令确定为复杂句,而当多个意图具有相同的动作和不同的槽位时,控制模块130可将语音命令确定为复合句。例如,可以确定“降下车窗并关闭天窗”的语音命令包括复杂句,而“打开车窗和天窗”的语音命令包括复合句。
当确定语音命令包括复合句或复杂句时(操作1500中的“是”),控制模块130可再次调用自然语言理解模块120以再次执行意图分类(1600)和槽位提取(1700)。
当语音命令包括复合句时,对应于语音命令的文本可被再次输入到自然语言理解模块120。在这种情况下,用于在自然语言理解模块120中对意图进行分类并提取输入文本上的槽位的流水线(pipeline)可以不同于先前用于执行意图分类(1200)和槽位提取(1300)的流水线。
被调用的自然语言理解模块120已经具有语音命令是复合句的信息。因此,基于所计算的匹配概率,自然语言理解模块120可将前M个意图确定为对应于语音命令的最终意图,并根据所确定的意图来确定句子中的角色以及最终槽位的类型。
当语音命令包括复杂句(类似于复合句)时,对应于语音命令的文本可以原样再次输入到自然语言理解模块120,或者通过基于连词将文本分成多个句子来输入到自然语言理解模块120。
当完成意图分类和槽位提取时,控制模块130可以确定意图和槽位之间的一致性(1800)。
具体地,当所确定的最终意图是关于所提取的最终槽位可执行的功能时,可确认最终意图和最终槽位之间的一致性。当所确定的最终意图是不可执行的功能时,不确认最终意图和最终槽位之间的一致性。例如,可以基于预先存储的一致性表来确定一致性。
当一致性的确定完成时,控制模块130可生成结果处理信号(1900)。
当多个最终意图的一致性都被确认时,可以生成用于执行与多个最终意图中的每一个相对应的功能的控制信号和用于引导的系统响应。
当多个最终意图的一部分的一致性未被确认时,可以生成用于执行与其一致性被确认的最终意图相对应的功能的控制信号和用于引导的系统响应。
当所有多个最终意图的一致性都未被确认时,可以生成用于通知相应功能不可执行的系统响应。
作为确定语音命令是包括复合句/复杂句还是包括单句的结果,当语音命令不包括复合句/复杂句时,即,当语音命令包括单句时(操作1500中的“否”),控制模块130可基于自然语言理解模块120的输出来确定意图和槽位之间的一致性(1800),并生成结果处理信号(1900)。
在以上描述中,每个操作(即,诸如操作1200、操作1300等的每个步骤)用于指代每个操作的过程,并且这些操作不一定需要顺序地执行。即使当顺序地执行时,每个操作的顺序也不受附图标记的限制。可以同时执行一部分操作,并且可以与流程图不同地执行一部分操作。
图7-9是示出根据实施例的自然语言处理方法中用于不同语音命令的每个处理的示图。
在图7中,描述了用户输入“打开天窗和车窗”的语音命令的示例。
一起参考图6和7,在操作1100中,语音识别模块110可以识别输入的语音命令并执行到文本“打开天窗和车窗”的转换。转换后的文本由自然语言理解模块120处理,因此下面描述的语音命令是指转换为文本的语音命令。
在操作1200中,自然语言理解模块120针对每个预定义意图计算语音命令的匹配概率。作为计算结果,具有前三匹配概率的意图是[open_sunroof]([打开_天窗])、[open_window]([打开_车窗])和[open_all window]([打开_所有窗])。
在操作1300中,自然语言理解模块120可从语音命令中提取槽位。可以从“打开天窗和车窗”中提取槽位{天窗}和{车窗},并且可以将天窗和车窗中的每一个的类型确定为打开和关闭设备。
在操作1400中,控制模块130可以确定语音命令是包括复合句/复杂句还是包括单句。在该示例中,假设第一参考值为0.6,第二参考值为0.2。在具有前三匹配概率的意图中,最高匹配概率是0.46,其小于第一参考值,并且[open_sunroof]和[open_window]的匹配概率分别是0.46和0.26,其大于第二参考值。因此,控制模块130可以确定语音命令是复合句/复杂句。
此外,控制模块130可以区分语音命令是复合句还是复杂句。匹配概率大于第二参考值的前两个意图[open_sunroof]和[open_window]具有相同的动作[open]([打开])和不同的槽位{天窗}({sunroof})和{车窗}({window})。因此,语音命令可以被确定为复合句。
对应于语音命令的文本被再次输入到自然语言理解模块120。在操作1600中,自然语言理解模块120可将[open_sunroof]和[open_window]确定为最终意图。因为已经确定了意图,所以可以确定在操作1700中提取的最终槽位的角色。如图7所示,{天窗}和{车窗}的角色可被确定为目标。
在操作1800中,控制模块130确定最终意图和最终槽位的一致性。打开天窗的功能和打开车窗的功能两者在车辆2中是可执行的,并且因此控制模块130可以确定两个意图的一致性被确认。
在操作1900中,控制模块130可生成类似“我将打开天窗并打开车窗”的系统响应,并生成用于实际打开天窗和车窗的控制信号。
系统响应和控制信号可以被传输到车辆2。系统响应可以通过扬声器220可听地输出或通过显示器230可视地输出。
在图8中,描述了用户输入“打开天窗和音乐”的语音命令的示例。
一起参考图6和图8,在操作1100中,语音识别模块110可以识别输入的语音命令并执行到文本“打开天窗和音乐”的转换。
在操作1200中,自然语言理解模块120针对每个预定义意图计算语音命令的匹配概率。作为计算结果,具有前三匹配概率的意图是[open_sunroof],[play_music]和[close_sunroof]。
在操作1300中,自然语言理解模块120可从语音命令中提取槽位。槽位{天窗}和{音乐}可以从“打开天窗和音乐”中提取,并且天窗和音乐的类型可以分别被确定为打开和关闭设备和内容。
在操作1400中,控制模块130可以确定语音命令是包括复合句/复杂句还是包括单句。在该示例中,假设第一参考值为0.6,第二参考值为0.2。在具有前三匹配概率的意图中,最高匹配概率是0.5,其小于第一参考值,并且[play_music]和[close_sunroof]的匹配概率分别是0.12和0.01,其小于第二参考值。因此,控制模块130可以确定语音命令是单句,并且对应于语音命令的意图是[open_sunroof]。
在操作1800中,控制模块130确定意图和槽位的一致性。打开天窗的功能可在车辆2中执行,因此控制模块130可确定一致性被确认。
在操作1900中,控制模块130可生成类似“我将打开天窗”的系统响应,并生成用于实际打开天窗的控制信号。
系统响应和控制信号可以被传输到车辆2。系统响应可以通过扬声器220可听地输出或通过显示器230可视地输出。
在图9中,描述了用户输入“关闭天窗和车窗并播放音乐”的语音命令的例子。
一起参考图6和图9,在操作1100中,语音识别模块110可以识别输入的语音命令并执行到文本“关闭天窗和车窗并播放音乐”的转换。
在操作1200中,自然语言理解模块120针对每个预定义意图计算语音命令的匹配概率。作为计算结果,具有前三匹配概率的意图是[play_music]、[close_window]和[close_sunroof]。
在操作1300中,自然语言理解模块120可从语音命令中提取槽位。可以从“关闭天窗和车窗并播放音乐”中提取槽位{天窗},{车窗}和{音乐},可以将天窗和车窗的类型确定为打开和关闭设备,并且可以将音乐的类型确定为内容。
在操作1400中,控制模块130可以确定语音命令是包括复合句/复杂句还是包括单句。在该示例中,假设第一参考值为0.6,第二参考值为0.2。在具有前三匹配概率的意图中,最高匹配概率是0.42,其小于第一参考值,并且[close_window]和[close_sunroof]的匹配概率分别是0.24和0.21,其大于第二参考值。因此,控制模块130可以确定语音命令包括复合句/复杂句。
此外,控制模块130可以区分语音命令是复合句还是复杂句。匹配概率大于第二参考值的前三意图[play_music]、[close_window]和[close_sunroof]具有不同的动作[play]和[close]。因此,语音命令可以被确定为复杂句。
对应于语音命令的文本被再次输入到自然语言理解模块120。在这种情况下,控制模块130可基于连词将语音命令分成多个句子,并将多个句子输入到自然语言理解模块120。例如,可以分别输入“关闭天窗和车窗”和“播放音乐”。替代地,类似于复合句的情况,从语音命令转换的文本可以原样再次输入。
在操作1600中,自然语言理解模块120可将[close_sunroof]和[close_window]确定为对应于“关闭天窗和车窗并”的最终意图,并将[play_music]确定为对应于“播放音乐”的最终意图。
因为已经确定了意图,所以可以确定在操作1700中提取的槽位的角色。如图9所示,{天窗},{车窗}和{音乐}的角色可被确定为目标。
在操作1800中,控制模块130确定意图和槽位的一致性。打开天窗的功能,打开车窗的功能和播放音乐的功能都可在车辆2中执行,因此控制模块130可确定三种意图的一致性都被确认。
在操作1900中,控制模块130可生成类似“我将关闭天窗和车窗并播放音乐”的系统响应,并生成用于实际关闭天窗和车窗的控制信号和用于实际播放音乐的控制信号。
系统响应和控制信号可以被传输到车辆2。系统响应可以通过扬声器220可听地输出或通过显示器230可视地输出。
根据上述实施例,在自然语言理解处理中不确认具有最高匹配概率的单个意图作为对应于语音命令的意图,基于自然语言理解的结果来确定语音命令是否包括复合句/复杂句。作为确定的结果,当语音命令包括复合句/复杂句时,通过再次调用自然语言理解模块120,可以确认两个或更多个意图,并且可以最终确定与其对应的槽位的类型和角色。
因此,当用户将用于多个功能的语音命令说成单句时,尽管没有预先定义能够覆盖所有多个功能的单个意图,但是可以执行相应的功能。
图10是示出在根据实施例的自然语言处理方法中由用户注册个人命令的操作的流程图。图11是示出在根据实施例的自然语言处理方法中由用户注册个人命令的处理的示例的示图。
一起参考图10和图11,当从车辆2的用户终端等输入语音命令时,语音识别模块110对语音命令执行语音识别以执行到文本的转换(2100)。
例如,为了注册个人命令,当用户输入“当我说我困倦时,打开天窗和车窗并播放音乐”的语音命令时,语音识别模块110将该语音命令转换为文本并输出。
自然语言理解模块120可对意图进行分类(2200)并提取槽位(2300)。尽管在图10的流程图中示出语音命令是单句,但是控制模块130可以基于自然语言理解模块120的输出来确定语音命令是否是复合句/复杂句。与上述示例类似,当输入句子具有“当我说A,进行B”的语音模板结构时,因为前一意图[register_personal command]的匹配概率绝对地高,所以语音命令可被确定为具有相应意图的单句。
当语音命令具有诸如“当我说A,进行B”的句子结构时,“当我说A”的部分是表示要注册的命令(A)的条件语音部分,而“进行B”的部分是通过与命令匹配表示要注册的功能(B)的功能语音部分。{我困倦}和{打开天窗和车窗并播放音乐}可被提取为槽位,{我困倦}的角色可被确定为命令,{打开天窗和车窗并播放音乐}的角色可被确定为功能语音。
当意图是个人命令的注册时(操作2400中的“是”),控制模块130再次调用自然语言理解模块120。在这种情况下,输入到自然语言理解模块120的句子是对应于功能语音而不是整个语音命令的句子。在该示例中,“打开天窗和车窗并播放音乐”可以再次输入到自然语言理解模块120。
当再次调用自然语言理解模块120时,可以执行参考图6描述的操作。
可以对功能语音执行意图分类(1200)和槽位提取(1300)。在该示例中,基于匹配概率的前三意图是[open_sunroof]、[open_window]和[play_music],并且可以提取“天窗”和“车窗”,它们是其类型是打开和关闭设备的槽位,以及“音乐”,它是其类型是内容的槽位。
控制模块130可以确定功能语音是复合句/复杂句还是单句(1400)。其确定标准与图6中描述的相同。
在该示例中,假设第一参考值为0.6并且第二参考值为0.2。在具有前三匹配概率的意图中,最高匹配概率是0.46,其小于第一参考值,并且[open_sunroof]、[open_window]和[play_music]的匹配概率分别是0.46、0.22和0.21,其大于第二参考值。因此,可以确定语音命令是复合句/复杂句。
此外,控制模块130可以区分语音命令是复合句还是复杂句。匹配概率大于第二参考值的前三意图[open_sunroof]、[open_window]和[play_music]具有不同的动作[open]和[play]。因此,语音命令可以被确定为复杂句。
功能语音被再次输入到自然语言理解模块120。在这种情况下,控制模块130可基于连词将功能语音分成多个句子,并将多个句子输入到自然语言理解模块120。例如,可以分别输入“打开天窗和车窗并”以及“播放音乐”。
自然语言理解模块120可通过意图分类将[open_sunroof]和[open_window]确定为对应于“打开天窗和车窗并”的最终意图,并将[play_music]确定为对应于“播放音乐”的最终意图(1600)。
此外,自然语言理解模块120可从每个句子中提取槽位,并通过槽位提取来确定槽位的类型和角色(1700)。
在该示例中,因为“打开天窗和车窗并”的意图是[open_sunroof]和[open_window],所以槽位的角色,即{天窗}和{车窗}的角色可分别被确定为目标。此外,“播放音乐”的意图是[play_music],因此槽位的角色,即{音乐}的角色也可被确定为目标。
控制模块130确定意图和槽位的一致性(1800)。打开天窗,打开车窗和播放音乐都是可执行的,因此这三种意图的一致性都被确认。
控制模块130生成结果处理信号(1900)。所生成的结果处理信号是用于使得当输入“我困倦”的语音命令时能够执行与意图[open_sunroof]、[open_window]和[play_music]中的每一个相对应的功能的信号。换句话说,控制模块130可以将“我困倦”的命令映射到打开天窗、打开车窗和播放音乐的功能。
在注册个人命令之后,当文本“我困倦”被输入到自然语言理解模块120时,意图可以是执行个性化功能,即映射到注册的个人命令的功能。例如,[do_personalizedfunction]可以被分类为对应的意图,{我困倦:命令}可被提取为槽位。然而,以上仅是示例,用于执行个性化功能的意图的名称不受限制。
控制模块130可以存储其中映射分配给每个注册的个人命令的功能的表。控制模块130可以将“我困倦”的命令映射并存储到打开天窗、打开车窗和播放音乐的功能。当自然语言理解模块120将[do_personalized function]分类为对应的意图并且将{我困倦}提取为其角色是命令的槽位时,可以执行映射并存储到命令的功能。尽管在该示例中描述了映射到个人命令的功能是多功能,但是也可以映射单功能。
用户可以通过使用上述个人命令注册的单个话语来使用各种功能。例如,根据上述操作,当输入语音命令“当我说‘今天怎么样’时,播放今天的头条新闻和天气”时,“今天怎么样”可以被注册为个人命令,并且播放今天的头条新闻和播放今天的天气可以被映射为分配给个人命令的功能。
因此,在注册个人命令之后,当输入语音命令“今天怎么样”时,可以根据上述操作执行映射到“今天怎么样”的个人命令的功能,即播放今天的头条新闻和播放今天的天气。
作为另一示例,根据上述操作,当输入“当我说‘安静’时,关闭虚拟发动机声音并降低音量”的语音命令时,“安静”可被注册为个人命令,并且关闭虚拟发动机声音并降低音量可被映射为分配给个人命令的功能。
因此,在注册个人命令之后,当输入“安静”的语音命令时,可以根据上述操作执行映射到“安静”的个人命令的功能,即关闭虚拟发动机声音并降低音量。
从上文可以明显看出,根据本发明的实施例,自然语言处理装置和自然语言处理方法可以基于自然语言理解模块的输出来确定用户的语音命令是否是复合句或复杂句,并且当用户的语音命令是复合句或复杂句时,递归地调用自然语言理解模块,从而执行表示为单句的全部多个功能。
因此,实施例可以以存储可由处理器执行的计算机可执行指令的记录介质的形式来实现。所述指令可以程序代码的形式存储,并且当由处理器执行时,所述指令可以生成程序模块以执行所公开的实施例的操作。该记录介质可以非暂时性地实现为计算机可读记录介质。
计算机可读代码可以记录在介质上或通过因特网传输。该介质可以包括只读存储器(ROM)、随机存取存储器(RAM)、磁带、磁盘、闪存和光学记录介质。
虽然已经出于说明的目的描述了实施例,但是本领域普通技术人员将理解,在不脱离本发明的范围和精神的情况下,各种修改、添加和替换是可能的。因此,实施例并非以限制的目的进行描述。
Claims (20)
1.一种自然语言处理装置,包括:
语音识别模块,配置为将用户的语音命令转换为文本;
自然语言理解模块,配置为基于所述文本对与所述语音命令相对应的意图进行分类并且提取包括在所述语音命令中的槽位;以及
控制模块,配置为基于由所述自然语言理解模块分类的意图来确定所述语音命令是否包括复合句或复杂句,并且当所述语音命令包括复合句或复杂句时,再次向所述自然语言理解模块输入与所述语音命令相对应的文本。
2.根据权利要求1所述的自然语言处理装置,其中,所述自然语言理解模块配置为针对多个预定义意图中的每一个计算所述语音命令的匹配概率,以对与所述语音命令相对应的意图进行分类。
3.根据权利要求2所述的自然语言处理装置,其中,所述控制模块配置为,当所计算的匹配概率中的最高匹配概率小于第一参考值且两个或更多个匹配概率大于第二参考值时,确定所述语音命令包括复合句或复杂句。
4.根据权利要求3所述的自然语言处理装置,其中,所述控制模块配置为:基于所计算的匹配概率,当前若干个意图具有相同的动作和不同的槽位时,确定所述语音命令包括复合句,并且
当所述前若干个意图中的两个或更多个意图具有不同的动作时,确定所述语音命令包括复杂句,
其中,所述前若干个意图是大于或等于2的整数个意图。
5.根据权利要求1所述的自然语言处理装置,其中,当所述语音命令包括复杂句时,所述控制模块配置为将从所述语音命令转换的文本划分为多个句子,并再次向所述自然语言理解模块输入所划分的多个句子。
6.根据权利要求3所述的自然语言处理装置,其中,所述自然语言理解模块配置为,基于所计算的匹配概率,基于与前若干个意图相关的信息,确定再次输入的文本的最终意图和最终槽位。
7.根据权利要求6所述的自然语言处理装置,其中,所述控制模块配置为确定最终意图与最终槽位之间的一致性。
8.根据权利要求7所述的自然语言处理装置,其中,所述控制模块配置为生成结果处理信号,用于执行对应于与最终槽位的一致性得到确认的最终意图的功能。
9.一种自然语言处理装置,包括:
语音识别模块,配置为将用户的语音命令转换为文本;
自然语言理解模块,配置为基于所述文本对与所述语音命令相对应的意图进行分类并且提取包括在所述语音命令中的槽位;以及
控制模块,配置为当由所述自然语言理解模块分类的意图是个人命令的注册时,再次向所述自然语言理解模块输入指示与所述个人命令匹配的待注册功能的功能语音。
10.根据权利要求9所述的自然语言处理装置,其中,所述自然语言理解模块配置为对与再次输入的功能语音相对应的意图进行分类并提取包括在再次输入的功能语音中的槽位。
11.根据权利要求10所述的自然语言处理装置,其中,所述控制模块配置为存储由与所述功能语音相对应的意图和包括在所述功能语音中的槽位定义的功能,作为与所述个人命令相对应的功能。
12.根据权利要求11所述的自然语言处理装置,其中,所述控制模块配置为,当在注册所述个人命令之后输入的用户的语音命令包括注册的个人命令时,生成用于执行与所述个人命令相对应的功能的控制信号。
13.一种自然语言处理方法,包括:
由语音识别模块将用户的语音命令转换为文本;
由自然语言理解模块基于所述文本对与所述语音命令相对应的意图进行分类并且提取包括在所述语音命令中的槽位;
由控制模块基于所分类的意图确定所述语音命令是否包括复合句或复杂句;以及
当所述语音命令包括复合句或复杂句时,由控制模块再次向所述自然语言理解模块输入与所述语音命令相对应的文本。
14.根据权利要求13所述的自然语言处理方法,其中,确定所述语音命令是否包括复合句或复杂句包括:针对多个预定义意图中的每一个计算所述语音命令的匹配概率,以对与所述语音命令相对应的意图进行分类。
15.根据权利要求14所述的自然语言处理方法,其中,确定所述语音命令是否包括复合句或复杂句包括:当所计算的匹配概率中的最高匹配概率小于第一参考值且两个或更多个匹配概率大于第二参考值时,确定所述语音命令包括复合句或复杂句。
16.根据权利要求15所述的自然语言处理方法,其中,确定所述语音命令是否包括复合句或复杂句包括:基于所计算的匹配概率,当前若干个意图具有相同的动作和不同的槽位时,确定所述语音命令包括复合句;并且
当所述前若干个意图中的两个或更多个意图具有不同的动作时,确定所述语音命令包括复杂句,
其中,所述前若干个意图是大于或等于2的整数个意图。
17.根据权利要求13所述的自然语言处理方法,其中,再次向所述自然语言理解模块输入与所述语音命令相对应的文本包括:当所述语音命令包括复杂句时,将从所述语音命令转换的文本划分为多个句子,并再次向所述自然语言理解模块输入所划分的多个句子。
18.根据权利要求15所述的自然语言处理方法,还包括:
基于所计算的匹配概率,基于与前若干个意图相关的信息,确定再次输入的文本的最终意图和最终槽位。
19.根据权利要求18所述的自然语言处理方法,还包括:
确定最终意图和最终槽位之间的一致性。
20.根据权利要求19所述的自然语言处理方法,还包括:
生成结果处理信号,用于执行对应于与最终槽位的一致性得到确认的最终意图的功能。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220023903A KR20230126571A (ko) | 2022-02-23 | 2022-02-23 | 자연어 처리 장치 및 자연어 처리 방법 |
KR10-2022-0023903 | 2022-02-23 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116643646A true CN116643646A (zh) | 2023-08-25 |
Family
ID=87518649
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211615232.9A Pending CN116643646A (zh) | 2022-02-23 | 2022-12-15 | 自然语言处理装置及自然语言处理方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230267923A1 (zh) |
KR (1) | KR20230126571A (zh) |
CN (1) | CN116643646A (zh) |
DE (1) | DE102022133571A1 (zh) |
-
2022
- 2022-02-23 KR KR1020220023903A patent/KR20230126571A/ko unknown
- 2022-12-15 CN CN202211615232.9A patent/CN116643646A/zh active Pending
- 2022-12-16 US US18/083,119 patent/US20230267923A1/en active Pending
- 2022-12-16 DE DE102022133571.2A patent/DE102022133571A1/de active Pending
Also Published As
Publication number | Publication date |
---|---|
US20230267923A1 (en) | 2023-08-24 |
KR20230126571A (ko) | 2023-08-30 |
DE102022133571A1 (de) | 2023-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210358496A1 (en) | A voice assistant system for a vehicle cockpit system | |
US11295735B1 (en) | Customizing voice-control for developer devices | |
US20080177541A1 (en) | Voice recognition device, voice recognition method, and voice recognition program | |
CN108242236A (zh) | 对话处理装置及其车辆和对话处理方法 | |
CN109920410B (zh) | 用于基于车辆的环境确定推荐的可靠性的装置和方法 | |
WO2009140884A1 (zh) | 一种车载语音交互系统 | |
CN110097870A (zh) | 语音处理方法、装置、设备和存储介质 | |
US11676572B2 (en) | Instantaneous learning in text-to-speech during dialog | |
CN111554281B (zh) | 自动识别语种的车载人机交互方法、车载终端及存储介质 | |
US11996099B2 (en) | Dialogue system, vehicle, and method of controlling dialogue system | |
Loh et al. | Speech recognition interactive system for vehicle | |
US20230267923A1 (en) | Natural language processing apparatus and natural language processing method | |
CN115171660A (zh) | 一种声纹信息处理方法、装置、电子设备及存储介质 | |
US11542744B2 (en) | Agent device, agent device control method, and storage medium | |
CN115113739A (zh) | 用于生成表情符号的装置、车辆和用于生成表情符号的方法 | |
KR20210012265A (ko) | 음성 제공 방법, 음성 제공을 위한 학습 방법 및 그 장치들 | |
JP2021033929A (ja) | 制御システム、及び制御方法 | |
US20240214332A1 (en) | Chatbot service providing method and chatbot service providing system | |
US11955123B2 (en) | Speech recognition system and method of controlling the same | |
US20230298581A1 (en) | Dialogue management method, user terminal and computer-readable recording medium | |
US20230335120A1 (en) | Method for processing dialogue and dialogue system | |
US20230386455A1 (en) | Dialogue System and Method for Controlling the Same | |
US20230238020A1 (en) | Speech recognition system and a method for providing a speech recognition service | |
US20230178071A1 (en) | Method for determining a vehicle domain and a speech recognition system for a vehicle | |
CN116564297A (zh) | 语音控制的方法、装置、计算机设备以及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |