CN112230874A - 电子装置及其控制方法 - Google Patents
电子装置及其控制方法 Download PDFInfo
- Publication number
- CN112230874A CN112230874A CN202010597082.8A CN202010597082A CN112230874A CN 112230874 A CN112230874 A CN 112230874A CN 202010597082 A CN202010597082 A CN 202010597082A CN 112230874 A CN112230874 A CN 112230874A
- Authority
- CN
- China
- Prior art keywords
- application
- natural language
- language understanding
- information
- electronic device
- 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
- 238000000034 method Methods 0.000 title claims abstract description 33
- 230000015654 memory Effects 0.000 claims abstract description 74
- 238000004891 communication Methods 0.000 claims description 36
- 238000012544 monitoring process Methods 0.000 description 54
- 230000006870 function Effects 0.000 description 36
- 238000013473 artificial intelligence Methods 0.000 description 31
- 238000012790 confirmation Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 12
- 238000003860 storage Methods 0.000 description 10
- 238000012384 transportation and delivery Methods 0.000 description 9
- 238000013528 artificial neural network Methods 0.000 description 8
- 235000013305 food Nutrition 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000014509 gene expression Effects 0.000 description 5
- 235000012054 meals Nutrition 0.000 description 5
- 238000010200 validation analysis Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- JZRMMLYGOBWIGY-UHFFFAOYSA-N baumin Natural products O1C(CC(=O)OC)=CC(=O)C(C=2C(OC(C=CC=3C=C(O)C(O)=CC=3)=CC=2O)=O)C1C1=CC=C(O)C(O)=C1 JZRMMLYGOBWIGY-UHFFFAOYSA-N 0.000 description 1
- 238000009435 building construction Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- JZRMMLYGOBWIGY-HZFVGLMFSA-N methyl 2-[(2s,3r)-2-(3,4-dihydroxyphenyl)-3-[6-[(e)-2-(3,4-dihydroxyphenyl)ethenyl]-4-hydroxy-2-oxopyran-3-yl]-4-oxo-2,3-dihydropyran-6-yl]acetate Chemical compound C1([C@@H]2[C@H](C(=O)C=C(O2)CC(=O)OC)C=2C(OC(\C=C\C=3C=C(O)C(O)=CC=3)=CC=2O)=O)=CC=C(O)C(O)=C1 JZRMMLYGOBWIGY-HZFVGLMFSA-N 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- 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/16—Sound input; Sound output
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3013—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3419—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
- G06F11/3423—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time where the assessed time is active or idle time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3438—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
-
- 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/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
-
- 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
-
- 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/16—Speech classification or search using artificial neural networks
-
- 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
- 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/28—Constructional details of speech recognition systems
- G10L15/30—Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/20—Arrangements for monitoring or testing data switching networks the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/50—Service provisioning or reconfiguring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/86—Event-based monitoring
-
- 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/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
- G10L2015/223—Execution procedure of a spoken command
-
- 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/226—Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
- G10L2015/228—Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of application context
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Environmental & Geological Engineering (AREA)
- Machine Translation (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
提供了一种电子装置。该电子装置包括:存储器,被配置为存储至少一个指令;以及处理器,被配置为运行所述至少一个指令以:获得关于安装在电子装置中的应用的使用信息,基于使用信息获得在多个自然语言理解模型当中的、对应于应用的自然语言理解模型,基于对应于应用的自然语言理解模型来执行对与应用相关的用户语音输入的自然语言理解,以及基于执行的自然语言理解来执行所述应用的操作。
Description
相关申请的交叉引用
本申请基于并且根据35U.S.C.§119要求2019年12月31日向韩国知识产权局提交的韩国专利申请第10-2019-0179747号和2020年04月06日向韩国知识产权局提交的韩国专利申请第10-2020-0041470号的优先权,以及基于并且要求2019年06月26日向美国专利商标局提交的美国临时专利申请第62/866716号和2019年08月20日向美国专利商标局提交的美国临时专利申请第62/889229号的优先权,其公开内容通过引用整体合并于此。
技术领域
本公开涉及用于获取自然语言理解模型的电子装置及其控制方法。
背景技术
自然语言理解模型是分析用户语音并掌握用户语音中所包括的用户意图的模型。这种自然语言理解模型对于每一个不同的应用都可以单独存在。
然而,为了存储用于安装在诸如智能电话的电子装置上的所有应用的自然语言理解模型,可能需要增加电子装置的存储容量。
此外,当必要时从服务器接收自然语言理解模型并使用其时,接收自然语言理解模型必须经过一段时间。此外,在网络未连接的情况下,接收不到自然语言理解模型。
发明内容
本公开提供了一种用于获取对应于用户频繁使用的应用的操作的自然语言理解模型的电子装置及其控制方法。
另外的方面将部分地在随后的描述中阐述,并且部分地将从描述中明显,或者可以通过所呈现的实施例的实践来了解。
根据本公开的一个方面,一种电子装置包括:存储器,被配置为存储至少一个指令;以及处理器,被配置为执行所述至少一个指令以:获得关于安装在所述电子装置中的应用的使用信息,基于所述使用信息获得多个自然语言理解模型当中的、对应于所述应用的自然语言理解模型,基于对应于所述应用的自然语言理解模型,执行对与所述应用相关的用户语音输入的自然语言理解,以及基于执行的自然语言理解来执行所述应用的操作。
并且所述电子装置还包括:通信接口,并且其中所述处理器还被配置为运行所述至少一个指令以:获得包括所述应用的运行数量和所述应用的运行时间中的至少一个的使用信息,控制所述通信接口将获得的使用信息发送到外部服务器,经由所述通信接口从所述外部服务器接收对应于多个应用的所述多个自然语言理解模型当中的、对应于所述应用的自然语言理解模型,以及将所述自然语言理解模型存储在所述存储器中。
并且,其中,基于所述使用信息中包括的所述应用的运行数量大于或等于阈值数量,或者基于所述应用的运行时间大于或等于阈值时间,从所述外部服务器接收对应于所述应用的自然语言理解模型。
并且,其中,所述应用包括匹配关于预定语音话语的信息和对应于所述预定语音话语的操作信息的资源信息;和所述处理器还被配置为运行所述至少一个指令,以基于关于所述应用的所述使用信息满足预定条件,根据关于所述预定语音话语的信息和对应于所述预定语音话语的操作信息,生成对应于所述应用的自然语言理解模型。
并且所述处理器还被配置为运行所述至少一个指令,以请求与所述应用的操作相对应的第一用户语音输入,所述应用基于所述使用信息被确定为被执行大于或等于阈值次数或者执行大于或等于阈值时间。
并且所述处理器还被配置为运行所述至少一条指令以:基于所述第一用户语音输入根据所述请求被输入,确定所述第一用户语音输入是否与存储在所述存储器中的用户语音输入冲突;基于确定所述第一用户语音输入与存储的用户语音输入冲突,请求不同于所述第一用户语音输入的第二用户语音输入;和基于确定所述第一用户语音输入与存储的用户语音输入不冲突,在所述存储器中存储与所述应用的操作相对应的所述第一用户语音输入。
并且所述处理器还被配置为运行所述至少一个指令,以基于所述应用被安装在所述电子装置中,从外部服务器请求对应于所述应用的自然语言理解模型。
并且其中,所述自然语言理解模型包括基于使用所述电子装置的用户的语音话语生成的个人模型和基于公共用户的语音话语生成的公共模型中的至少一个;和处理器还被配置为运行所述至少一条指令以:在所述个人模型中执行对所述用户语音输入的自然语言理解,基于在所述个人模型中对所述用户语音输入的自然语言理解不成功,在所述公共模型中执行对所述用户语音输入的自然语言理解,以及基于在所述公共模型中对所述用户语音输入的自然语言理解不成功,将所述用户语音输入发送到外部服务器以执行对所述用户语音输入的自然语言理解。
并且所述处理器还被配置为运行所述至少一个指令,以基于所述用户语音输入没有被输入大于或等于阈值次数或者大于或等于阈值时间段,移除所获得的自然语言理解模型。
根据本公开的另一方面,一种电子装置的控制方法包括:获得关于安装在所述电子装置中的应用的使用信息;基于所述使用信息,获得多个自然语言理解模型当中的、对应于所述应用的自然语言理解模型;基于对应于所述应用的自然语言理解模型,执行对与所述应用相关的用户语音输入的自然语言理解;以及基于所执行的自然语言理解来执行所述应用的操作。
根据本公开的另一方面,一种非暂时性计算机可读记录介质上记录有由至少一个处理器可执行以执行电子装置的控制方法的指令,该控制方法包括:获得关于安装在所述电子装置中的应用的使用信息;基于所述使用信息,获得多个自然语言理解模型当中的、对应于所述应用的自然语言理解模型;基于对应于所述应用的自然语言理解模型,执行对与所述应用相关的用户语音输入的自然语言理解;以及基于所执行的自然语言理解来执行所述应用的操作。
附图说明
从下面结合附图的描述中,本公开的某些实施例的上述和其他方面、特征、和优点将变得更加明显,其中:
图1是用于描述根据实施例的电子系统的配置的图;
图2是示出根据实施例的获取自然语言理解模型以执行自然语言理解的过程的流程图的图;
图3A是根据实施例的从服务器接收自然语言理解模型的情况的框图;
图3B是用于描述根据实施例的从服务器接收自然语言理解模型的过程的图;
图4A是根据另一实施例的生成自然语言理解模型的情况的框图;
图4B是用于描述根据另一实施例的由电子装置生成自然语言理解模型的过程的图;
图5是示出根据实施例的电子装置和服务器的框图;
图6是用于描述根据实施例的自然语言理解模型操作的序列的视图;和
图7是用于描述根据实施例的、电子装置和服务器一起工作以根据用户的语音运行应用的功能的示例的序列图。
具体实施方式
在下文中,将参考附图详细描述本公开。
图1是用于描述根据实施例的电子系统1000的配置的图。
参考图1,根据实施例的电子系统1000包括电子装置100和服务器200。
电子装置100可以被实现或配置为使用人工智能模型(或神经网络模型、学习或训练网络模型等)来执行对用户语音的自然语言理解,并基于所执行的自然语言理解的结果来执行应用的功能。这里,自然语言理解指的是掌握或理解包括在自然语言中的用户意图,该自然语言是常规使用的,而不是仅遵循在其中设置措辞的规则,不像诸如编程语言的人工语言那样。执行这种自然语言理解的人工智能模型统称为自然语言理解模型。
根据实施例的与人工智能相关的功能通过处理器(例如,至少一个处理器)和存储器(例如,至少一个存储器)来操作。处理器可以被配置为一个或多个处理器。此时,一个或多个处理器可以是诸如中央处理单元(CPU)、应用处理器(AP)、数字信号处理器(DSP)的通用处理器,诸如图形处理单元(GPU)或视觉处理单元(VPU)的图形专用处理器,或者诸如神经处理单元(NPU)的人工智能专用处理器。一个或多个处理器执行控制以根据存储在存储器中的预定义操作规则或人工智能模型处理输入数据。替代地,当一个或多个处理器是人工智能专用处理器时,人工智能专用处理器可以被设计成专用于处理特定人工智能模型的硬件架构。
预定义的操作规则或人工智能模型的特征在于通过学习(或训练)来创建(或更新)。这里,通过学习来创建意味着通过学习算法(或训练算法)使用多个学习数据(或训练数据)来学习(或训练)基本人工智能模型,从而创建设置为执行期望的特性(或目的)的预定义的操作规则或人工智能模型。这种学习可以在其中执行根据实施例的人工智能的设备本身中执行,或者也可以通过单独的服务器和/或系统来执行。学习算法的示例包括监督学习、无监督学习、半监督学习、或强化学习,但是学习算法不限于上述示例。
人工智能模型可以包括多个神经网络层。多个神经网络层中的每一个都具有多个权重值,并且通过在前一层的操作结果和多个权重之间的操作来执行神经网络操作。多个神经网络层的多个权重值可以通过人工智能模型的学习结果来优化。例如,多个权重值可以被更新,使得在学习过程期间从人工智能模型获取的损失值或成本值被减少或最小化。人工神经网络可以包括深度神经网络(DNN)、卷积神经网络(CNN)、递归神经网络(RNN)、受限玻尔兹曼机(RBM)、深层信念网络(DBN)、双向递归深度神经网络(BRDNN)或深度Q网络,但不限于此。
根据实施例,假设人工智能模型是自然语言理解模型,电子装置100包括掌握用户意图的自然语言理解模型,并且还可以通过其提供虚拟秘书功能(或操作)。电子装置100可以以各种形式实现,诸如智能电话、平板个人计算机(PC)、移动电话、图像电话、电子书阅读器、台式个人计算机(PC)、膝上型个人计算机(PC)、上网本计算机、工作站、服务器、个人数字助理(PDA)、便携式多媒体播放器(PMP)、MP3播放器、医疗设备、照相机、可佩戴设备等。
这种自然语言理解模型可以根据应用单独存在,并且可以存在对应于一个应用的一个或多个自然语言理解模型。因为针对不同应用中的每一个执行的操作可能不同,所以为每个应用输入的用户语音话语的内容也可能不同。因此,自然语言理解模型可以是专用于对应应用的模型。此外,自然语言理解模型可以分为个人模型和公共模型。这里,个人模型是基于电子装置100的用户语音话语生成或学习的模型,并且可以是针对电子装置100的用户个性化的模型。此外,公共模型可以是基于多个用户(例如,多个公共用户)的语音话语生成或学习的模型。
服务器200是用于管理多个自然语言理解模型的装置,并且可以被实现为中央服务器或云服务器。
根据实施例,服务器200可以基于电子装置100的请求向电子装置100发送对应的自然语言理解模型。具体地,服务器200可以基于公共用户数据向电子装置100发送预先学习的公共模型,并且还可以向电子装置100发送个人模型。
根据另一实施例,可以基于安装在电子装置100上的应用中包括的资源信息,在电子装置100上生成自然语言理解模型。这里,资源信息可以包括关于预定语音话语的信息、对应于预定语音话语的操作信息、用于生成自然语言理解模型的条件信息、对应于预定语音话语的应用的功能信息等。
电子装置100可以基于从服务器200接收的资源信息来生成或学习自然语言理解模型。此外,电子装置100可以从服务器200接收操作列表和槽列表(slot list),并且学习公共模型作为个人模型。这将在下面参考附图详细描述。
根据各种实施例,当(或基于)在电子装置100上获取自然语言理解模型时,可以基于所获取的自然语言理解模型来执行对应于用户语音的操作。
此外,根据各种实施例,因为电子装置100获取(或获得)对应于用户频繁使用的应用的操作的自然语言理解模型,所以没有必要将所有自然语言理解模型存储在电子装置100中。因此,即使在具有小存储器容量的电子装置上,也可以高效地执行对用户语音的自然语言理解。
此外,因为自然语言理解模型是根据应用的使用频率在电子装置100中预先获取的,所以不需要从外部服务器实时下载自然语言理解模型,从而即使在没有网络连接时也可以高效地执行对用户语音的自然语言理解。
图2是示出根据实施例的获取自然语言理解模型以执行应用的功能(或操作)的过程的流程图的图。
参考图2,电子装置100可以获取关于安装在电子装置100上的应用的使用信息(操作S210)。这里,使用信息可以包括与应用相关的用户输入信息和根据用户输入的应用的使用信息中的至少一个。例如,使用信息可以包括关于用于运行应用的用户输入的数量的信息、关于在应用中运行的操作的信息、应用被运行的时间信息等中的至少一个。
根据实施例,用户输入可以包括通过笔或用户触摸的输入。例如,用户输入可以是对于应用图标或者执行应用中包括的功能的图标的用户触摸输入,以便运行应用或应用中包括的功能。
根据另一实施例,用户输入可以包括通过虚拟秘书输入的用户输入。作为示例,在运行虚拟秘书服务时,根据通过用户语音、用户触摸、笔的触摸等的用户输入,可以执行对应于用户输入的操作。
这里,虚拟秘书服务指的是用于使用人工智能模型对输入的用户语音执行语音辨识、掌握(或确定)用户意图并提供对应于用户语音的响应信息作为结果的服务。此外,虚拟秘书服务可以提供为与其他软件(SW)相区别的专用程序作,并且可以被实现为通过单独的AI专用处理器来运行AI模型。当虚拟秘书服务(或虚拟助理服务)使用多个人工智能模型时,一些人工智能模型可以被实现为通过AI专用处理器来运行。
作为另一示例,电子装置100可以获取关于根据用户输入运行的应用操作的信息。此时,关于应用操作的信息可以包括关于应用操作类型的信息、关于运行时间的信息、关于运行数量的信息等。
包括在电子装置100中的使用信息监视模块可以基于用户输入监视使用信息,并将获取的使用信息存储在存储器中。
电子装置100可以基于使用信息,获取多个自然语言理解模型当中的、对应于安装的应用的自然语言理解模型(操作S220)。具体地,如果应用的运行数量大于或等于阈值数量(例如,预设或预定阈值数量),和/或如果运行时间大于或等于阈值时间(例如,预设或预定阈值时间),则电子装置100可以获取对应于安装的应用的自然语言理解模型。换句话说,电子装置100可以获取用于用户频繁使用的应用的自然语言理解模型,并且可以高效地处理用户的语音输入。
根据实施例,电子装置100可以从服务器200接收并获取与基于使用信息识别的应用相对应的自然语言理解模型。这将参照图3B进行详细描述。
根据另一实施例,电子装置100还可以生成与基于关于电子装置100的使用信息识别的应用相对应的自然语言理解模型。这将参照图4B进行详细描述。
另外,电子装置100可以基于应用操作的运行次数或运行时间以及应用的运行次数或运行时间,来获取与应用操作相对应的资源信息,并且可以获取基于获取的资源信息来学习(或训练)的自然语言理解模型。具体地,如果应用操作的运行数量大于或等于阈值数量,和/或如果运行时间大于或等于阈值时间,则电子装置100可以获取与运行的应用操作相对应的资源信息,并获取基于获取的资源信息学习的自然语言理解模型。
当(或基于)与应用相关的用户语音被输入时,电子装置100可以基于对应于应用的自然语言理解模型来对于用户语音执行自然语言理解(操作S230)。这里,对应于应用的自然语言理解模型可以是在操作S220中获取的模型。
具体地,自然语言理解模块可以通过对用户的语音执行句法分析或语义分析来掌握用户的意图。因此,自然语言理解模型可以获得表示用户输入的意图所需的域、意图或参数(或槽(slot))。这里,域可以指根据用户语音的主题分类的类别或对应于用户语音的控制命令的类型,并且可以是例如用户语音所针对的应用的种类或类型。这样的域可以通过域分类器模型来识别。作为示例,如果输入了用户语音,则域分类器模型可以识别对应于用户语音的应用。例如,当经由用户语音输入“打开A相机应用的自拍拍摄模式”时,域分类器模型可以将用户语音输入的“A相机应用”识别为表示域的区域。也就是说,域分类器模型可以将对应的用户语音的域识别为“A相机应用”。作为另一示例,如果输入用户语音,则域分类器模型可以识别与用户意图相关的广泛类别。例如,域分类器模型可以识别与用户意图相关的类别是否与日程、消息或提醒相关。
此后,自然语言理解模型可以基于所识别的域来执行包括在用户语音中的自然语言理解。
电子装置100可以基于所执行的自然语言理解的结果来执行应用的功能(操作S240)。例如,当(或基于)自然语言理解模型的结果是运行相机应用“A”时,电子装置100可以运行A相机应用。
图3A是根据实施例的从服务器200接收自然语言理解模型的情况的框图。
电子装置100可以包括存储器110(例如,至少一个存储器)、通信接口120(例如,至少一个通信接口)和处理器130(例如,至少一个处理器)。
存储器110可以电连接到处理器130,并存储各种实施例中使用的数据(例如,由处理器130可执行的指令)。
根据实施例,存储器110可以存储使用信息监视模块(例如,指令)和语音冲突确认模块(例如,指令)。存储器110还可以存储由服务器200发送的自然语言理解模型。此外,存储器110还可以包括域分类器模型。
这里,使用信息监视模块可以是监视与应用相关的用户输入信息和根据用户输入的应用的使用信息的模块。此外,使用信息监视模块可以监视通过虚拟秘书服务的人工智能模型获取的与用户语音相关的意图信息和关于域的使用信息。
根据示例,使用信息监视模块可以监视关于应用的使用信息。具体地,使用信息监视模块可以监视执行对应操作的次数和通过用笔或用户的身体(例如,手指)触摸应用图标或执行应用中包括的功能的图标来运行应用的时间。
根据另一示例,使用信息监视模块可以监视关于虚拟秘书的使用信息。例如,如果输入用的语音,则虚拟秘书服务的人工智能模型中的语音辨识模型可以将用户的语音转换成文本。另外,如果用户语音被转换成文本,则可以通过虚拟秘书服务的人工智能模型中的自然语言理解模型中包括的域分类器模型来识别与用户语音相关的至少一个域。这里,域可以是与应用相关的信息。例如,域可以指应用本身或应用的类别。也就是说,与音乐相关的A应用的域可以是A应用本身或音乐类别。
使用信息监视模块可以监视通过虚拟秘书服务的人工智能模型识别特定域的次数,并且当(或基于)一个域被识别的次数大于或等于阈值数量时,可以将关于对应域的识别信息发送到服务器200。关于域的识别信息可以指可以将一个域与其他域区分开来的信息,并且可以包括域的名称(标题)、识别(ID)信息、标识符等中的至少一个。因此,电子装置100可以从服务器200接收对应于对应域的自然语言理解模型。替代地,服务器200可以请求电子装置100在预定时段发送关于域的识别数量的信息。在这种情况下,即使当域的识别数量小于阈值数量时,电子装置100也可以将关于域的识别数量的信息发送到服务器200,并且服务器200可以累积周期性接收的关于域的识别数量的信息,以确定域的识别数量是否为阈值数量或更多。当(此时,响应于或基于)确定特定域的识别数量是阈值数量或更多时,服务器200可以将对应于对应域的自然语言理解模型发送到电子装置100。
作为另一示例,在通过域分类器模型识别与用户语音相关的至少一个域之后,可以通过虚拟秘书服务的人工智能模型中的自然语言理解模型来执行对应于用户语音的文本的自然语言理解,以获取对应于用户语音的用户意图信息。
使用信息监视模块可以监视通过虚拟秘书服务的人工智能模型识别特定意图信息的次数,并且当一个意图信息被识别的次数大于或等于阈值数量时,可以向服务器200发送关于对应的意图信息的识别信息。关于意图信息的识别信息可以指可以识别一个意图信息以与其他意图信息区分开来的信息,并且可以包括意图信息的名称(标题)、识别(ID)信息、标识符等中的至少一个。因此,电子装置100可以从服务器200接收对应于对应意图的自然语言理解模型。替代地,服务器200可以请求电子装置100在预定时段或基于预定事件发送关于意图信息的使用信息。在这种情况下,即使当意图信息的识别次数小于阈值数量时,电子装置100也可以将关于意图信息的识别信息发送到服务器200,并且服务器200可以累积周期性接收的关于意图信息的识别信息,以确定意图信息的识别数量是否大于或等于阈值数量。当确定意图信息的识别数量大于或等于阈值数量时,服务器200可以向电子装置100发送对应于对应的意图信息的自然语言理解模型。
换句话说,即使在应用被运行之前,使用信息监视模块也可以获取在虚拟秘书服务中识别的关于域和意图信息的使用信息。随着关于域和意图信息的使用信息被发送到服务器200,可以从服务器200接收对应于域和意图信息的自然语言理解模型,而不管应用的运行。
作为另一示例,使用信息监视模块可以通过虚拟秘书监视应用的运行数量或者应用中包括的功能的运行数量。例如,虚拟秘书模型可以将基于用户输入的使用信息存储在存储器110中或连接到虚拟秘书的单独存储器中,并且使用信息监视模块可以获取存储的使用信息。
同时,在上述实施例中,使用信息监视模块已经被描述为基于域信息或意图信息进行监视,但是这仅仅是示例。作为另一示例,使用信息监视模块可以监视应用的操作信息。也就是说,使用信息监视模块可以监视对应于用户输入的应用的操作信息被识别的次数,并且当一个操作信息被识别的次数大于或等于阈值数量时,可以向服务器200发送关于对应的操作信息的识别信息和关于执行对应的操作信息的应用的识别信息。关于操作信息的识别信息可以指可以识别一个操作以区别于其他操作的信息,并且可以包括操作信息的名称(标题)、识别(ID)信息、操作中包括的槽(slot)信息等中的至少一个。因此,电子装置100可以从服务器200接收对应于对应的操作的资源信息和应用信息,并且可以基于从服务器200接收的资源信息和应用信息来学习或生成自然语言理解模型。替代地,服务器200可以基于从电子装置100接收的操作的识别信息和应用的识别信息来学习或生成自然语言理解模型,并将所学习或生成的自然语言理解模型发送给电子装置100。
替代地,服务器200可以请求电子装置100在预定时段或基于预定事件发送关于操作信息的使用信息。在这种情况下,即使当操作信息的识别数量小于阈值数量时,电子装置100也可以将关于操作信息的识别信息发送到服务器200,并且服务器200可以累积周期性接收的关于操作信息的识别信息,以确定操作信息的识别数量是否大于或等于阈值数量。当确定操作信息的识别数量大于或等于阈值数量时,服务器200可以向电子装置100发送对应于对应的操作信息的资源信息或自然语言理解模型。
同时,虽然使用信息监视模块在上面被描述为包括在电子装置100中,但是使用信息监视模块也可以包括在服务器200中。特别地,当在服务器200中执行对用户语音的自然语言理解时,服务器200还可以通过使用信息监视模块监视关于应用的使用信息。
具体地,当用户语音被输入到电子装置100时,电子装置100可以通过语音辨识模型获取对应于用户语音的文本。此时,可以通过电子装置100中存在的语音辨识模型来获取对应于用户语音的文本,但是这仅仅是示例,并且可以通过另一服务器的语音辨识模型来获取文本。
此外,电子装置100可以将针对自然语言理解而获取的文本发送到服务器200。服务器200可以使用获取的文本作为包括在自然语言理解模型中的域分类器模型的输入数据。服务器200可以获取与通过域分类器模型获取的文本相关的域或意图信息。然而,服务器200不限于此,并且可以从电子装置100接收用户语音,并且通过如上所述在服务器200中提供的语音辨识模型来获取对应于用户语音的文本。同时,电子装置100如下将用户语音或对应于用户语音的文本发送到服务器200。
作为示例,假设电子装置100的域分类器模型没有从对应于输入到电子装置100的用户语音的文本中识别出域。在这种情况下,电子装置100可以向服务器200发送用户语音或对应于用户语音的文本。当通过服务器200的域分类器模型识别出从电子装置100接收的用户语音或文本的域时,服务器200的使用信息监视模块可以监视每个域的识别数量,即针对每个域的关于域的使用信息。此外,当在域识别之后识别出关于用户语音或文本的意图信息时,服务器200的使用信息监视模块可以监视针对每个意图信息的识别数量,即,针对每个意图信息的关于意图信息的使用信息。
作为另一个示例,当通过电子装置100的域分类器模型从对应于输入到电子装置100的用户语音的文本中识别出域,但是没有识别出意图信息时,电子装置100可以将识别出的域信息和用户语音或文本发送到服务器200。服务器200可以基于接收到的域信息和用户语音或文本来识别关于用户语音的意图信息。此外,服务器200的使用信息监视模块可以监视针对每个意图信息的识别数量,即,针对每个意图信息的关于意图信息的使用信息。
如上所述,当在服务器200中识别出域或意图信息时,服务器200的使用信息监视模块可以获取关于域或意图信息的使用信息。在这种情况下,服务器200的使用信息监视模块可以汇总先前从电子装置100接收的使用信息和从服务器200获取的使用信息。因此,服务器200可以识别对应于汇总的使用信息的自然语言理解模型,并将识别的自然语言理解模型发送到电子装置100。
因为电子装置100中不包括与用户语音或对应于用户语音的文本相关的自然语言理解模型,所以如上所述,电子装置100可以请求服务器200识别与用户语音(或文本)相关的域或意图信息。此外,电子装置100可以包括从服务器200接收的对应于用户语音(文本)的自然语言理解模型。在这种情况下,当与从服务器200接收的自然语言理解模型相关的用户语音(或文本)被输入到电子装置100时,电子装置100可以识别与用户语音相关的域或意图信息,并且因此可以不向服务器200单独请求域或意图信息的识别。
换句话说,电子装置100可以通过电子装置100的域分类器模型来识别与用户语音或者对应于用户语音的文本相关的域,并且当域内的意图信息,即关于应用的特定功能的信息被识别时,电子装置100可以不从服务器200单独请求域或者意图信息的识别,并且可以在预定条件被满足时或者应服务器200的请求将获取的使用信息发送到服务器200。
语音冲突确认模块是当对应于应用的预定操作的用户语音或对应于用户语音的文本被新登记时,基于与先前登记的用户语音或对应于用户语音的文本的相似性来确认是否存在冲突的模块。换句话说,语音冲突确认模块是可以确认文本以及语音是否存在冲突的模块。这将在下面详细描述。
通信接口120包括电路,并且是能够与服务器200通信的组件。
通信接口120可以通过有线或无线通信向服务器200发送使用信息,并且从服务器200接收对应于基于使用信息所识别的应用的自然语言理解模型。在这种情况下,通信接口120可以在处理器130的控制下发送电子装置100的识别信息以及使用信息。这里,识别信息可以包括电子装置100的互联网协议(IP)地址、型号名称、设备名称和序列号中的至少一个。服务器200可以基于所发送的识别信息来确定用于发送自然语言理解模型的目标。
处理器130电连接到存储器110,并控制电子装置100的整体操作。处理器130通常使用存储在存储器110中的各种指令或程序来控制电子装置100的操作。特别地,根据实施例,主CPU可以根据存储在只读存储器(ROM)中的指令将程序复制到随机存取存储器(RAM),并访问RAM以运行程序。这里,程序可以包括自然语言理解模型等。
处理器130可以将存储在存储器110中的使用信息监视模块、自然语言理解模型、语音冲突确认模块和域分类器模型加载到处理器130中。例如,处理器130可以将存储在处理器130外部的存储器110中的使用信息监视模块、自然语言理解模型、语音冲突确认模块和域分类器模型加载到处理器130内部的存储器中。同时,下面参考图3B详细描述电子装置100基于关于应用的使用信息从服务器200接收自然语言理解模型的过程。
图3B是用于描述根据本公开的实施例的从服务器接收自然语言理解模型的过程的图。
应用可以安装在电子装置100中(操作S310)。应用可以是在制造电子装置100时安装的,诸如内置应用,或者可以通过用户选择来安装。
此后,使用信息监视模块可以监视关于安装的应用的使用信息(操作S320)。此外,使用信息监视模块可以监视关于与通过虚拟秘书服务的人工智能模型获取的用户语音相关的域和意图信息的使用信息。
使用信息监视模块可以监视与应用相关的用户输入信息和根据用户输入的应用的使用信息。例如,使用信息监视模块可以监视根据用户输入递送食物应用“B”被运行的次数。根据用户输入运行B递送食物应用的情况可以包括通过用户触摸或笔在显示器上选择和运行B递送食物应用的情况,以及通过用户语音运行B递送食物应用的情况。在这种情况下,域分类器模型可以识别包括在用户语音中的域是B应用的信息。例如,“B应用”可以直接包括在用户的语音中,或者可以不直接包括在用户的语音中,而是可以包括关于递送的词语(诸如“我想订购递送食物”或“请订购递送食物”)。在后一种情况下,域分类器模型可以基于包括在用户语音中的“递送”将用户语音的域识别为B应用。
另外,使用信息监视模块可以监视通过虚拟秘书服务的人工智能模型识别特定域的次数。例如,当通过虚拟秘书输入针对“B应用”的用户语音时,可以通过语音辨识模型将针对“B应用”的用户语音转换成文本。虚拟秘书服务的人工智能模型当中的域分类器模型可以使用转换后的文本作为输入数据将与用户语音相关的域识别为“B应用”。使用信息监视模块可以监视如上所述识别的域的次数,即,关于域的使用信息。
替代地,使用信息监视模块可以监视意图信息的识别数量。例如,用户的意图信息可以被识别为选择作为食品递送应用的“B应用”的中文菜单。使用信息监视模块可以监视如上所述识别的意图信息的次数,即,关于意图信息的使用信息。
替代地,使用信息监视模块可以监视操作信息的识别数量。例如,当用户的操作信息是A相机应用的照片拍摄操作时,使用信息监视模块可以将“拍摄照片”和作为关于运行操作的应用的信息的“A相机应用”识别为操作信息。另外,使用信息监视模块可以监视如上所述识别的操作信息的次数,即,关于操作信息的使用信息。
使用信息监视模块可以将获取的使用信息存储在存储器110中。使用信息监视模块可以每当使用信息有变化时,将变化的(或更新的)使用信息存储在存储器110中,或者周期性地将使用信息存储在存储器110中。
使用信息监视模块可以识别所监视的使用信息是否满足预定条件(操作S330)。
如果使用信息满足预定条件(操作S330中的是),则使用信息监视模块可以通过通信接口120向服务器200发送使用信息(操作S340)。例如,当B应用被运行三次或更多次时,或者当B应用被运行的累积时间是1小时或更多时,使用信息监视模块可以将关于B应用的使用信息发送到服务器200。这里,使用信息可以包括要运行的应用的信息、B应用的运行数量、B应用的运行时间等中的至少一个。例如,关于运行数量为5的运行数量的信息和所运行的应用是B的识别信息可以一起发送到服务器200。此外,使用信息监视模块还可以将电子装置100的识别信息发送到服务器200。这里,识别信息可以包括电子装置100的IP地址、型号名称、设备名称和序列号中的至少一个。服务器200可以基于所发送的识别信息来确定用于发送自然语言理解模型的目标。
作为另一个示例,当与B应用相关的域被识别三次或更多次时,或者当用于选择B应用中的特定功能的意图信息被识别三次或更多次时,使用信息监视模块可以将关于域或意图信息的识别信息发送到服务器200。
换句话说,预定条件可以是与虚拟秘书服务中的关于应用的使用信息或关于域和意图信息的使用信息相关的条件。然而,预定条件不限于此,并且可以是预定事件的发生或预定时间的到达。例如,使用信息监视模块可以每50小时向服务器200发送获取的使用信息。另外,服务器200累积并存储接收到的使用信息,并且当基于累积的使用信息,应用的运行数量、域的识别数量或意图信息的识别数量大于或等于阈值数量时,服务器200还可以向电子装置100发送与其对应的自然语言理解模型。
作为另一示例,当识别出C应用的操作被运行三次或更多次时,使用信息监视模块可以将操作信息和关于运行该操作的应用的信息发送到服务器200。
同时,如果使用信息不满足预定条件(在操作S330中为否),则使用信息监视模块可以继续监视虚拟秘书中的关于应用的使用信息或者关于域和意图信息的使用信息。
同时,使用信息监视模块周期性地确认使用信息是否满足预定条件,或者服务器200也可以向电子装置100发送确认使用信息是否满足预定条件的请求信号。
服务器200可以基于使用信息来识别在由服务器200管理的一个或多个应用之中是否包括在电子装置100上运行的应用。具体地,服务器200识别由电子装置100的域分类器模型识别的应用是否是由服务器200管理的应用。如果识别出在电子装置100上运行的应用由服务器200管理,则服务器200可以向电子装置100发送多个自然语言理解模型中的与对应应用相对应的自然语言理解模型。例如,如果在多个自然语言理解模型中识别出对应于B应用的自然语言理解模型,则服务器200可以将识别出的自然语言理解模型发送到电子装置100。
作为示例,在对应于对应应用的自然语言理解模型中,服务器200可以基于从电子装置100发送的使用信息,向电子装置100发送对应于特定功能操作(或功能)的自然语言理解模型。例如,当根据用户输入运行A相机应用,并且通过A相机应用频繁地捕获到自拍时,服务器200可以基于包括这样的使用历史的使用信息,将用于A相机应用的自拍操作的自然语言理解模型发送到电子装置100。
处理器130可以通过通信接口120接收从服务器200发送的自然语言理解模型(操作S350)。此时,所接收的自然语言理解模型可以是公共模型。所接收的自然语言公共理解模型可以包括关于预定语音话语的信息和对应于该语音话语的操作信息。例如,所接收的自然语言公共理解模型可以包括关于诸如“打开A应用”、“A应用”等的语音话语的信息,以及响应于此运行A应用的操作信息。此时,处理器130可以接收自然语言理解模型本身,但是也可以获取用于学习或生成自然语言理解模型的资源信息。
语音冲突确认模块可以确认在自然语言理解模型中包括的关于语音话语的信息和先前登记的用户语音信息之间是否存在冲突(或矛盾)(操作S360)。这里,关于语音话语的信息和先前登记的用户语音信息中的每一个都包括语音或对应于该语音的文本。
例如,当通过语音辨识模型获取对应于语音话语的文本和对应于先前登记的用户语音的文本时,语音冲突确认模块可以确认对应于语音话语的文本和对应于先前登记的用户语音的文本之间是否存在冲突。
例如,在先前登记的用户语音是类似于“A应用”的发音或者相同名称但不同应用A在电子装置100上存在的情况下,不同的操作可以对应于语音“A应用”或者对应于语音的文本。这样,如果语音冲突被确认(操作S360中的是),则语音冲突确认模块可以请求对应于“运行A应用的操作”的另一语音话语(操作S370)。因此,当新输入另一语音话语以运行A应用时,语音冲突确认模块可以重新确认新输入的语音或对应于该语音的文本,以确认输入的语音话语是否与先前登记的用户语音冲突。如果识别出不存在语音冲突,则语音冲突确认模块可以将关于新输入的用户语音或对应于该用户语音的文本的信息登记为映射到“运行A应用的操作”的语音或文本。此时,处理器130可以显示用于登记另一语音话语的用户界面(UI),并且可以登记关于通过UI输入的另一语音话语的信息。
根据另一示例,如果应用的运行数量大于或等于阈值数量,或者应用的运行时间大于或等于阈值时间,即,如果满足预定条件,则电子装置100可以请求对应于应用的特定操作的用户语音。当根据请求输入了用户语音时,语音冲突确认模块可以识别输入的用户语音是否与存储在存储器110中的先前登记的用户语音冲突,当输入的用户语音与先前登记的用户语音冲突时,请求不同于输入的用户语音的语音,并且当没有识别到与输入的用户语音冲突的先前登记的语音时,将输入的用户语音映射到应用的操作并将其存储在存储器110中。
同时,如果识别出关于包括在自然语言理解模型中的语音话语的信息与先前登记的用户语音信息不冲突(操作S360中的否),则语音冲突确认模块可以登记关于语音话语的信息(操作S380)。
然而,应当理解,一个或多个其他实施例不限于此。例如,根据从服务器200发送自然语言理解模型的另一实施例,预先在服务器200上确认是否存在语音冲突,并且也可以省略在电子装置100上单独确认语音冲突的操作。
处理器130可以将自然语言理解模型存储在存储器110中(操作S390)。此时,存储的自然语言理解模型可以是用户指定的个人模型。此后,如果输入了用户的语音,则处理器130可以将存储在存储器110中的自然语言理解模型加载到处理器130中,以基于自然语言理解模型来掌握包括在用户语音中的用户意图。
同时,根据另一实施例,如果应用安装在电子装置100上,则电子装置100可以从外部服务器请求对应于该应用的自然语言理解模型。换句话说,如果应用被安装在电子装置100上,不管关于应用的使用信息或者关于特定域或者特定意图信息的识别数量的信息,则电子装置100可以从外部服务器请求对应于所安装的应用的自然语言理解模型。此外,并且作为示例,如果关于应用的使用信息不满足预定条件(例如,安装后的预定时间段内的使用数量或用户语音输入数量),则可以从电子装置100中删除自然语言理解模型。
图4A是根据另一实施例的生成自然语言理解模型的情况的框图。
如果应用安装在电子装置100上,则该应用可以被存储在存储器110中。处理器130可以基于应用中包括的资源信息来生成自然语言理解模型。如图4A所示,资源信息可以包括语音话语信息、操作信息、关于预定条件的信息等中的至少一个。这里,语音话语信息可以是由开发者定义的代表性话语,并且语音话语信息可以包括槽(slot)信息。槽信息可以用作运行功能的参数。操作信息可以指要监视的事件。关于预定条件的信息可以指对应于应用的自然语言理解模块或者用于登记预定话语的条件。另外,资源信息可以进一步包括运行功能信息,并且运行功能信息可以存储关于要连接到相应话语的应用的功能的信息。
资源信息可以分别与关于预定语音话语的信息、对应于预定语音话语的操作信息、用于生成自然语言理解模型的条件信息、以及对应于预定语音话语的应用的功能信息相匹配,并且以模板形式存储。例如,如下表1所示,资源信息可以存储在存储器110中。
【表1】
当安装应用时,资源信息可以包括在应用数据中。此外,存储器110可以基于公共模型中定义的动作和槽(或实体)来存储操作列表和槽列表,以便扩展公共模型的覆盖范围。如下表2所示,可以通过匹配对应于操作的至少一个代表性话语来存储操作列表。
【表2】
此外,槽列表可以存储可以包括在一个槽中的至少一个通用名词,如下表3所示。
【表3】
建筑物 | 酒店A,酒店B,大厦C,高楼D,… |
汽车 | XXX,YYY,ZZZ,... |
同时,上述资源信息、操作列表和槽列表可以存储在服务器200中,并且电子装置100可以从服务器200接收和存储资源信息、操作列表和槽列表。在这种情况下,当安装应用时,电子装置100可以从服务器200接收和存储资源信息、操作列表和槽列表,以及当满足预定条件时,可以从服务器200接收和存储资源信息、操作列表和槽列表。此外,电子装置100可以通过分析应用数据来自动生成资源信息。具体地,当安装没有模板形式的资源信息的应用时,电子装置100可以通过分析应用数据来生成模板的字段值。更具体地,电子装置100可以通过从应用数据中提取操作描述信息来获取操作信息。此外,电子装置100可以基于从服务器200接收的操作列表来获取对应于操作信息的代表性话语。替代地,电子装置100可以基于存储在电子装置100中的自然语言生成模型,来获取对应于操作信息的代表性话语。此外,电子装置100可以基于不同模板形式的资源信息来获取关于预定条件的信息。如上所述,电子装置100可以基于所获取的代表性话语、操作信息和关于预定条件的信息来获取模板形式的资源信息。
具体地,处理器130可以将存储在存储器110中的资源信息、使用信息监视模块、自然语言理解模型、语音冲突确认模块和域分类器模型加载到处理器130中,并生成自然语言理解模型。下面参考图4B详细描述生成自然语言理解模型的过程。
图4B是用于描述根据另一实施例的由电子装置100生成自然语言理解模型的过程的图。
电子装置100可以在电子装置100中安装应用(操作S410)。应用可以是在制造电子装置100时安装的,诸如内置应用,或者可以通过用户选择来安装。在电子装置100中安装应用可以意味着关于应用的信息被存储在存储器110中,并且当输入应用运行命令时,关于应用的信息被加载到处理器130中,使得包括在应用中的各种功能可以被运行。这里,关于应用的信息可以包括资源信息。如上所述,资源信息可以包括关于预定语音发声的信息、对应于预定语音发声的操作信息、用于生成自然语言理解模型的条件信息、对应于预定语音发声的应用的功能信息等中的至少一个。
同时,使用信息监视模块可以监视关于安装的应用的使用信息(操作S420)。
此外,使用信息监视模块可以识别所获取的使用信息是否满足包括在资源信息中的预定条件(操作S430)。例如,如果包括在资源信息中的预定条件是用于运行应用三次或更多次的条件,并且使用信息满足这样的条件(操作S430中的是),则处理器130可以生成对应于对应应用的自然语言理解模型(操作S440)。此时,自然语言理解模型可以是基于应用的资源信息生成的公共模型。然而,包括在资源信息中的预定条件不限于此,并且可以是通过虚拟秘书服务的人工智能模型的特定域、特定意图信息或特定操作识别数量可以是预定数量或更多。
具体地,处理器130可以基于将包括在资源信息中的语音话语信息映射到对应的操作信息来生成(或学习)自然语言理解模型。例如,处理器130可以基于包括在资源信息中的“打开A相机”的语音话语信息和运行A相机应用的操作来生成或学习自然语言理解模型。因此,当语音话语“打开A相机”被辨识时,域分类器模型识别出用户语音中包括的域是“A相机应用”,并且可以生成对应于“A相机应用”的自然语言理解模型,以识别出用户语音中包括的意图是运行A相机应用的操作。
作为另一示例,处理器130可以通过分析应用的操作信息来生成操作计划信息,并且基于生成的操作计划信息来获取代表性话语。此外,处理器130可以基于操作信息和代表性话语生成自然语言理解模型。
具体地,处理器130可以预先通过分析应用的操作来生成操作计划列表。也就是说,处理器130可以通过在用户运行应用时记录应用的操作来生成操作计划列表。此外,处理器130可以将操作计划列表发送到服务器200,以获取对应于对应应用的自然语言理解模型的代表性话语。替代地,处理器130可以通过翻译模块分析操作计划列表的含义,并将分析的含义翻译成代表性话语。具体地,因为操作计划是多个命令,所以处理器130可以通过操作计划获取多个词语。例如,如果获取了作为动作计划的(1)[活动:执行][属性:Baemin],(2)[活动:搜索][属性:中餐],以及(3)[活动:显示][属性:搜索结果],则处理器130可以获取(1)在Baemin,(2)搜索中餐,以及(3)将搜索结果显示为多个单词。此外,处理器130可以通过自然语言生成模块将多个单词生成为单个自然语言句子。此时,处理器130可以通过为每个操作分配权重值来获取自然语言句子。具体而言,处理器130可以将高权重值分配给包括命名的实体的操作,并将低权重值分配给后续操作。例如,处理器130可以通过将上述多个词语输入到自然语言生成模块中来获得自然语言句子,诸如“搜索并显示在Baemin的中餐”或“在Baemin搜索中餐”。此时,可以基于槽列表来获取应用名称或操作中包括的命名的实体。此外,处理器130可以基于获取的操作计划和自然语言句子来生成或学习自然语言理解模型。
如果使用信息不满足用于生成自然语言理解模型的预定条件(S430中的否),则使用信息监视模块可以通过虚拟秘书服务的人工智能模型持续监视关于应用的使用信息或关于的特定域或特定意图信息的使用信息。
同时,语音冲突确认模块可以确认在资源信息中包括的关于语音话语的信息和先前登记的用户语音信息之间是否存在冲突(操作S450)。替代地,语音冲突确认模块可以确认在对应于语音话语的文本和对应于先前登记的用户语音的文本之间是否存在冲突。
具体地,语音冲突确认模块可以基于包括在资源信息中的语音话语信息(或与其对应的文本信息)和先前登记的用户语音(或与其对应的文本)之间的相似性来确认是否存在冲突。例如,假设在先前登记的用户的语音中存在“打开A相机”的语音输入,并且与其对应的操作包括运行A相机应用和通过后相机拍摄的操作。在这种情况下,因为不同的操作对应于相同的语音输入“打开A相机”,所以语音冲突确认模块可以识别出发生了语音冲突。
这样,如果语音冲突被确认(操作S450中的是),则语音冲突确认模块可以请求不同于包括在资源信息中的语音话语信息的语音话语(操作S460)。
例如,处理器130可以控制扬声器输出命令,“请提供不同于打开A相机的语音输入”,或者可以控制显示器显示包括“请提供不同于‘打开A相机’的语音输入”的UI窗口。
因此,当新输入另一语音话语以运行A相机应用时,语音冲突确认模块可以重新确认输入的语音话语是否与先前登记的用户语音冲突。如果识别出不存在语音冲突,则语音冲突确认模块可以在关于新输入的用户语音的信息被登记为映射到“运行A相机应用的操作”的语音的状态下,生成对应于A相机应用的自然语言理解模块。作为示例,可以输入诸如“请运行A相机”的不同于“打开A相机”的用户语音输入,并将其登记为对应于执行A相机应用的操作的语音(或语音输入)。因此,基于生成的自然语言理解模型,当输入“请运行A相机”时,运行A相机应用的操作被执行,并且当输入“打开A相机”时,通过运行A相机应用来通过后相机进行拍摄的操作被运行,它们可以彼此区分。
作为示例描述了包括在资源信息中的语音话语信息与先前登记的用户语音相同的情况,但是即使包括在资源信息中的语音话语信息与先前登记的用户语音相似并且自然语言理解模型有可能误解用户的意图,语音冲突确认模块也可以请求不同于包括在资源信息中的语音话语信息的语音话语。
同时,如果识别出关于包括在自然语言理解模型中的语音话语的信息与先前登记的用户语音信息不冲突(操作S450中的否),则语音冲突确认模块可以将关于语音话语的信息登记为对应于运行A相机应用的操作的语音。
处理器130可以在存储器110中存储其中登记用户的语音的自然语言理解模型,操作S470)。此时,存储的自然语言理解模型可以是个人模型。
此后,如果输入了用户语音,则处理器130可以将存储在存储器110中的自然语言理解模型加载到处理器130中,以基于自然语言理解模型来掌握(或确定)包括在用户语音中的用户意图。
同时,根据上述实施例,自然语言理解模型可以通过从服务器200接收的方法获取,或者基于使用信息在电子装置100上生成。此外,当满足预定条件时(例如,如果在预定时间段内对应于所获取的自然语言理解模型的用户输入没有被输入阈值数量或更多次),电子装置100可以从电子装置100移除(或删除)所获取的、生成的或存储的自然语言理解模型。如果用户输入未被输入阈值次数或更多次指示对应于自然语言理解模型的应用的使用频率低,则电子装置100可以从电子装置100移除具有低使用频率的自然语言理解模型。
图5是示出根据实施例的电子装置100和服务器200的框图。
参考图5,电子装置100包括存储器110(例如,至少一个存储器)、通信接口120(例如,至少一个通信接口)和处理器130(例如,至少一个处理器),并且服务器200包括存储器210(例如,至少一个存储器)、通信接口220(例如,至少一个通信接口)和处理器230(例如,至少一个处理器)。
存储器110可以电连接到处理器130,并存储在各种实施例中使用的数据。
取决于数据存储目的,存储器110可以以嵌入电子装置100中的存储器的形式实现,或者也可以以可附接到电子装置100和可从电子装置100拆卸的存储器的形式实现。例如,用于驱动电子装置100的数据可以存储在嵌入在电子装置100中的存储器中,并且用于电子装置100的扩展功能的数据可以存储在可附接到电子装置100和可从电子装置100拆卸的存储器中。同时,嵌入在电子装置100中的存储器可以被实现为易失性存储器(例如,动态随机存取存储器(DRAM)、静态RAM(SRAM)、同步动态RAM(SDRAM)等)或者非易失性存储器(例如,一次性可编程只读存储器(OTPROM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、掩模ROM、闪速ROM、闪速存储器(例如,与非闪速存储器、或非闪速存储器等)、硬盘驱动器、或固态驱动器(SSD))中的至少一种。可附接到电子装置100并可从电子装置100拆卸的存储器可以以诸如存储卡(例如,紧凑闪存(CF)、安全数字(SD)、微型安全数字(Micro-SD)、迷你安全数字(Mini-SD)、极限数字(xD)、多媒体卡(MMC)等)、可连接到USB端口的外部存储器(例如,USB存储器)等形式来实现。
根据实施例,存储器110可以存储使用信息监视模块、语音冲突确认模块、自然语言理解模型和域分类器模型。
通信接口120包括电路,并且是能够与服务器200通信的组件。
通信接口120可以包括Wi-Fi模块、蓝牙模块、红外(IR)模块、局域网(LAN)模块、以太网模块等。这里,每个通信模块可以以至少一个硬件芯片的形式实现。除了上述通信方法之外,无线通信模块可以包括根据各种无线通信协议(诸如Zigbee、通用串行总线(USB)、移动工业处理器接口相机串行接口(MIPI CSI)、第三代(3G)、第三代合作伙伴计划(3GPP)、长期演进(LTE)、高级LTE(LTE-A)、第四代(4G)、第五代(5G)等)来执行通信的至少一个通信芯片。然而,这仅仅是示例,并且通信接口120可以使用各种通信模块中的至少一个通信模块。此外,通信接口120可以通过有线通信与服务器通信。
在图5所示的配置中,包括在服务器200中的存储器210和通信接口220执行与包括在电子装置100中的存储器110和通信接口120类似的功能,并且下面省略其冗余描述。
同时,处理器130可以通过通信接口120向服务器200发送关于应用的使用信息。服务器200的处理器230可以通过通信接口220接收使用信息,并且基于接收到的使用信息来识别在电子装置100上运行的应用是否是存储在存储器210中的应用。如果识别出在电子装置100上执行的应用是存储在存储器210中的应用,则处理器230可以在存储器210上的多个自然语言理解模型中识别对应于对应应用的自然语言理解模型。此后,处理器230可以控制通信接口220将所识别的自然语言理解模型发送到电子装置100。处理器130可以将从服务器200发送的自然语言理解模型存储在存储器110中。
图6是用于描述根据实施例的自然语言理解模型操作的序列的视图。
参考图6,电子装置100可以接收用户语音(例如,用户语音输入)(操作S610)。如果用户语音被输入到电子装置100,则电子装置100可以通过语音辨识模型获取对应于用户语音的文本。然而,应当理解,一个或多个其他实施例不限于此,并且可以由外部装置、外部服务器等执行对用户语音的语音辨识,并且电子装置100还可以从外部接收对应于用户语音的文本数据。此外,包括在电子装置100中的域分类器模型可以识别对应于所获取的文本的域。电子装置100可以识别与所识别的域相关的自然语言理解模型。在这种情况下,电子装置100可以识别是否可能通过与所识别的域相关的自然语言理解模型中的个人模型来执行对用户语音的自然语言理解(操作S620)。
这里,个人模型是基于电子装置100的用户语音话语生成或学习的模型,并且可以是针对电子装置100的用户个性化的模型。例如,个人模型可以是基于从服务器200接收的自然语言理解模型的个性化模型,或者是基于通过使用信息监视模块获取的使用信息在电子装置100中生成的个性化模型。换句话说,与下面描述的公共模型相比,个人模型可以是与用户频繁使用的特定应用相关的自然语言理解模型。
如果在个人模型中识别出可以执行对用户语音的自然语言理解(操作S620中的是),则电子装置100可以通过对应的个人模型执行自然语言理解(操作S630),并且可以基于自然语言理解的结果执行应用的功能(操作S680)。
同时,如果不可能在个人模型中执行对用户语音的自然语言理解(操作S620中的否),则电子装置100可以识别是否可以在公共模型中执行对用户语音的自然语言理解。这里,公共模型是基于公共用户(例如,不同的用户或作为公共成员的用户)的语音话语而生成或学习的模型,并且可以是用于理解公共用户的一般语音中包括的自然语言的模型。例如,公共模型可以是与当制造电子装置100时基本上安装在电子装置100中的内置应用相关的自然语言理解模型,或者是基于应用的资源信息生成的自然语言理解模型。
如果在公共模型中识别出可以执行对用户语音的自然语言理解(操作S640中的是),则电子装置100可以通过对应的公共模型执行自然语言理解(操作S650),并且可以基于自然语言理解的结果执行应用的功能(操作S680)。
同时,如果不可能在公共模型中执行对用户语音的自然语言理解(操作S640中的否),则电子装置100可以向服务器200发送用户语音或对应于用户语音的文本(操作S660)。因为在电子装置100中没有提供能够执行对用户语音的自然语言理解的自然语言理解模型,所以电子装置100可以将用户语音或对应于用户语音的文本发送到包括多个自然语言理解模型的服务器200,以便执行对用户语音的自然语言理解。
此后,服务器200中包括的域分类器模型可以识别对应于接收到的用户语音或与用户语音对应的文本的域。服务器200可以识别与所识别的域相关的自然语言理解模型,并通过所识别的自然语言理解模型来执行对用户语音(或对应于用户语音的文本)的自然语言理解。
电子装置100可以从服务器200接收关于自然语言理解的结果的信息(操作S670)。此后,电子装置100可以基于自然语言理解的结果来执行应用的功能(操作S680)。
图7是根据实施例的用于描述电子装置100和服务器200一起工作以根据用户语音运行应用的功能的示例的序列图。
参考图7,电子装置100可以接收用户语音(例如,用户语音输入)(操作S710)。如果用户语音被输入到电子装置100,则电子装置100可以通过语音辨识模型获取对应于用户语音的文本。然而,应当理解,一个或多个其他实施例不限于此,并且可以由外部装置、外部服务器等执行对用户语音的语音辨识,并且电子装置100还可以从外部接收对应于用户语音的文本数据。
电子装置100可以对对应于用户语音的域进行分类(操作S720)。具体地,电子装置100可以使用包括在电子装置100中的域分类器模型来识别对应于所获取的文本的域。
电子装置100可以确定是否存在对应于分类的域的应用(操作S730)。也就是说,电子装置100可以确定电子装置100中是否存在与对应于分类的域的应用相对应的自然语言理解模型。如果没有对应于分类的域的应用(操作S730中的否),则电子装置100可以向服务器200发送关于用户语音的信息(操作S735)。
如果确定存在对应于分类的域的应用(操作S730中的是),则电子装置100可以确定是否映射对应于文本的操作信息(操作S740)。如果对应于文本的操作信息在电子装置100中没有被映射(操作S745中的否),则电子装置100可以向服务器200发送关于用户语音的信息和关于应用的信息(操作S745)。
如果对应于文本的操作信息在电子装置100中被映射(操作S745中的是),则电子装置100可以基于自然语言理解模型获取操作信息(操作S750)。此外,电子装置100可以根据获取的操作信息运行应用的功能(操作S770)。
替代地,服务器200可以基于从电子装置100接收的关于用户语音的信息(例如,文本信息)或关于应用的信息,使用存储在服务器200中的自然语言理解模型来获取操作信息(操作S760)。此外,服务器200可以将获取的操作信息发送到电子装置100(操作S765),并且电子装置100可以根据获取的操作信息运行应用的功能(操作S770)。
应当理解,根据上述公开的一个或多个实施例的方法可以以可安装在电子装置上的应用的形式来实现。
此外,根据上述公开的一个或多个实施例的方法可以通过仅升级相关技术电子装置的软件或硬件来实现。
此外,上述一个或多个实施例也可以通过电子装置中包括的嵌入式服务器或电子装置的至少一个外部服务器来执行。
同时,上文描述的一个或多个实施例可以通过包括存储在机器(例如,计算机)可读存储介质中的指令的软件来实现。该机器是从存储介质调用所存储的指令并且可根据所调用的指令进行操作的装置,并且可以包括根据所公开的实施例的电子装置。当指令由处理器运行时,处理器可以直接或使用在处理器的控制下的其他组件来执行对应于指令的功能。指令可以包括由编译器或解释器生成或运行的代码。机器可读存储介质可以以非暂时性存储介质的形式提供。这里,术语“非暂时”意味着存储介质不包括信号并且是有形的,但是不区分数据是半永久地还是暂时地存储在存储介质中。例如,“非暂时性存储介质”可以包括数据临时存储在其中的缓冲器。
此外,根据上述一个或多个实施例的方法可以被包括并提供在计算机程序产品中。计算机程序产品可以作为产品在卖方和买方之间进行交易。计算机程序产品可以以机器可读存储介质(例如,紧凑盘只读存储器(CD-ROM))的形式分发,或者通过应用商店(例如,PLAYSTORETM)在线分发。在在线分发的情况下,计算机程序产品的至少一部分可以至少暂时存储在诸如制造商的服务器、应用商店的服务器或中继服务器的存储器的存储介质中,或者可以临时生成。
此外,上述一个或多个实施例可以使用软件、硬件或其组合在计算机或类似的设备可读记录介质中实现。在一些情况下,实施例可以由处理器本身实现。根据软件实现,上述过程和功能可以被实现为单独的软件模块。每个软件模块可以执行上述一个或多个功能和操作。
同时,用于执行根据上述一个或多个实施例的设备的处理操作的计算机指令可以存储在非暂时性计算机可读介质中。存储在非暂时性计算机可读介质中的计算机指令当由特定设备的处理器运行时,允许特定设备执行根据上述一个或多个实施例的设备的处理操作。
非暂时性计算机可读介质不是诸如寄存器、高速缓存、存储器等的短期存储数据的介质,而是意指半永久存储数据的机器可读介质。非暂时性计算机可读介质的具体示例可以包括紧凑盘(CD)、数字多功能盘(DVD)、硬盘、蓝光光盘、通用串行总线(USB)、存储卡、只读存储器(ROM)等。
此外,根据上述实施例的每个组件(例如,模块或程序)可以包括单个实体或多个实体,并且可以省略上述子组件中的一些子组件,或者在各种实施例中可以进一步包括其他子组件。替代地或附加地,一些组件(例如,模块或程序)可以被集成到一个实体中,以执行由各个组件在集成之前执行的相同或相似的功能。根据各种实施例,由模块、程序或其他组件执行的操作可以以顺序、并行、迭代或启发式的方式执行,或者至少一些操作可以以不同的顺序执行或省略,或者可以添加其他操作。
尽管上文已经示出和描述了本公开的实施例,但是本公开不限于上述具体实施例,而是可以由本公开所属领域的技术人员进行各种修改,而不偏离至少如所附权利要求中公开的本公开的主旨。这些修改也应该被理解为落入本公开的范围和精神内。
同时,当前广泛使用的通用术语可以是考虑到本公开中的功能而在描述上述实施例中使用的术语,但是可以根据本领域技术人员的意图或司法先例、新技术的出现等而改变。此外,在特定情况下,可能存在由申请人任意选择的术语。在这种情况下,这些术语的含义可以在本公开的相应描述部分中详细提及。因此,本公开中使用的术语应该基于术语的含义和贯穿本公开的内容来定义,而不是术语的简单名称。
单数表达包括复数表达,除非上下文另有明确说明。还应当理解,在本申请中使用的术语“包括”或“构成”指定了说明书中提及的特征、数字、步骤、操作、组件、部件或其组合的存在,但不排除一个或多个其他特征、数字、步骤、操作、组件、部件或其组合的存在或添加。
诸如“A和/或B中的至少一个”的表达应该被理解为代表“A”或“B”或“A和B”。
在本公开中使用的表达“第一”、“第二”等可以指示各种组件,而不管组件的顺序和/或重要性,并且仅用于将一个组件与其他组件区分开来,并且不以其他方式限制对应的组件。
当提到任何组件(例如,第一组件)(操作地或通信地)与另一组件(例如,第二组件)耦合/耦合到另一组件(例如,第二组件)或连接到另一组件(例如,第二组件)时,应当理解,任何组件与另一组件直接耦合/直接耦合到另一组件,或者可以通过其他组件(例如,第三组件)与另一组件耦合/耦合到另一组件。
在本公开中,“模块”或“~器/~机”可以执行至少一个功能或操作,并且可以通过硬件或软件来实现,或者通过硬件和软件的组合来实现。此外,多个“模块”或多个“~器/~机”可以集成在至少一个模块中,并由至少一个处理器实现,除了需要由特定硬件实现的“模块”或“~器/~机”。在说明书中,术语用户可以指使用终端设备(或终端设备)的人或使用终端设备的装置(例如,人工智能电子装置)。
尽管上文已经示出和描述了本公开的实施例,但是本公开不限于上述具体实施例,而是可以由本公开所属领域的技术人员进行各种修改,而不偏离至少在所附权利要求中公开的本公开的主旨。这些修改也应该被理解为落入本公开的范围和精神内。
Claims (15)
1.一种电子装置,包括:
存储器,被配置为存储至少一个指令;和
处理器,被配置为运行所述至少一个条指令以:
获得关于安装在所述电子装置中的应用的使用信息,
基于所述使用信息,获得多个自然语言理解模型当中的、对应于所述应用的自然语言理解模型,
基于对应于所述应用的自然语言理解模型,执行对与所述应用相关的用户语音输入的自然语言理解,以及
基于执行的自然语言理解来执行所述应用的操作。
2.根据权利要求1所述的电子装置,还包括:
通信接口,
其中所述处理器还被配置为运行所述至少一个指令以:
获得包括所述应用的运行数量和所述应用的运行时间中的至少一个的使用信息,
控制所述通信接口将获得的使用信息发送到外部服务器,
经由所述通信接口从所述外部服务器接收对应于多个应用的所述多个自然语言理解模型当中的、对应于所述应用的自然语言理解模型,以及
将所述自然语言理解模型存储在所述存储器中。
3.根据权利要求2所述的电子装置,其中,基于所述使用信息中包括的所述应用的运行数量大于或等于阈值数量,或者基于所述应用的运行时间大于或等于阈值时间,从所述外部服务器接收对应于所述应用的自然语言理解模型。
4.根据权利要求1所述的电子装置,其中:
所述应用包括匹配关于预定语音话语的信息和对应于所述预定语音话语的操作信息的资源信息;和
所述处理器还被配置为运行所述至少一个指令,以基于关于所述应用的所述使用信息满足预定条件,根据关于所述预定语音话语的信息和对应于所述预定语音话语的操作信息,生成对应于所述应用的自然语言理解模型。
5.根据权利要求1所述的电子装置,其中,所述处理器还被配置为运行所述至少一个指令,以请求与所述应用的操作相对应的第一用户语音输入,所述应用基于所述使用信息被确定为被执行大于或等于阈值次数或者执行大于或等于阈值时间。
6.根据权利要求5所述的电子装置,其中所述处理器还被配置为运行所述至少一条指令以:
基于所述第一用户语音输入根据所述请求被输入,确定所述第一用户语音输入是否与存储在所述存储器中的用户语音输入冲突;
基于确定所述第一用户语音输入与存储的用户语音输入冲突,请求不同于所述第一用户语音输入的第二用户语音输入;和
基于确定所述第一用户语音输入与存储的用户语音输入不冲突,在所述存储器中存储与所述应用的操作相对应的所述第一用户语音输入。
7.根据权利要求1所述的电子装置,其中,所述处理器还被配置为运行所述至少一个指令,以基于所述应用被安装在所述电子装置中,从外部服务器请求对应于所述应用的自然语言理解模型。
8.根据权利要求1所述的电子装置,其中:
所述自然语言理解模型包括基于使用所述电子装置的用户的语音话语生成的个人模型和基于公共用户的语音话语生成的公共模型中的至少一个;和
处理器还被配置为运行所述至少一条指令以:
在所述个人模型中执行对所述用户语音输入的自然语言理解,
基于在所述个人模型中对所述用户语音输入的自然语言理解不成功,在所述公共模型中执行对所述用户语音输入的自然语言理解,以及
基于在所述公共模型中对所述用户语音输入的自然语言理解不成功,将所述用户语音输入发送到外部服务器以执行对所述用户语音输入的自然语言理解。
9.根据权利要求1所述的电子装置,其中,所述处理器还被配置为运行所述至少一个指令,以基于所述用户语音输入没有被输入大于或等于阈值次数或者大于或等于阈值时间段,移除所获得的自然语言理解模型。
10.一种电子装置的控制方法,所述控制方法包括:
获得关于安装在所述电子装置中的应用的使用信息;
基于所述使用信息,获得多个自然语言理解模型当中的、对应于所述应用的自然语言理解模型;
基于对应于所述应用的自然语言理解模型,执行对与所述应用相关的用户语音输入的自然语言理解;和
基于所执行的自然语言理解来执行所述应用的操作。
11.根据权利要求10所述的控制方法,其中:
所述使用信息包括所述应用的运行数量和所述应用的运行时间中的至少一个;和
其中,获得所述自然语言理解模型包括:
将获得的使用信息发送到外部服务器,
从所述外部服务器接收对应于多个应用的所述多个自然语言理解模型当中的、对应于所述应用的自然语言理解模型,以及
将所述自然语言理解模型存储在所述电子装置中。
12.根据权利要求11所述的控制方法,其中,基于所述使用信息中包括的所述应用的运行数量大于或等于阈值数量,或者基于所述应用的运行时间大于或等于阈值时间,从所述外部服务器接收对应于所述应用的自然语言理解模型。
13.根据权利要求10所述的控制方法,其中:
所述应用包括匹配关于预定语音话语的信息和对应于所述预定语音话语的操作信息的资源信息;和
获得所述自然语言理解模型包括基于关于所述应用的所述使用信息满足预定条件,根据关于所述预定语音话语的信息和对应于所述预定语音话语的操作信息,生成对应于所述应用的自然语言理解模型。
14.根据权利要求10所述的控制方法,还包括请求与所述应用的操作相对应的第一用户语音输入,所述应用基于所述使用信息被确定为被执行大于或等于阈值次数或者执行大于或等于阈值时间。
15.根据权利要求10所述的控制方法,还包括:
基于所述第一用户语音输入根据请求而被输入,确定第一用户语音输入是否与存储在所述电子装置中的用户语音输入冲突;
基于确定所述第一用户语音输入与存储的用户语音输入冲突,请求不同于所述第一用户语音输入的第二用户语音输入;和
基于确定所述第一用户语音输入与存储的用户语音输入不冲突,在所述电子装置中存储与所述应用的操作相对应的所述第一用户语音输入。
Applications Claiming Priority (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962866716P | 2019-06-26 | 2019-06-26 | |
US62/866,716 | 2019-06-26 | ||
US201962889229P | 2019-08-20 | 2019-08-20 | |
US62/889,229 | 2019-08-20 | ||
KR1020190179747A KR20210001864A (ko) | 2019-06-26 | 2019-12-31 | 전자 장치 및 그 제어 방법 |
KR10-2019-0179747 | 2019-12-31 | ||
KR10-2020-0041470 | 2020-04-06 | ||
KR1020200041470A KR20210001905A (ko) | 2019-06-26 | 2020-04-06 | 전자 장치 및 그 제어 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112230874A true CN112230874A (zh) | 2021-01-15 |
Family
ID=71120130
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010597082.8A Pending CN112230874A (zh) | 2019-06-26 | 2020-06-28 | 电子装置及其控制方法 |
Country Status (4)
Country | Link |
---|---|
US (2) | US11532305B2 (zh) |
EP (1) | EP3757991A1 (zh) |
CN (1) | CN112230874A (zh) |
WO (1) | WO2020262958A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8977255B2 (en) | 2007-04-03 | 2015-03-10 | Apple Inc. | Method and system for operating a multi-function portable electronic device using voice-activation |
KR102516577B1 (ko) | 2013-02-07 | 2023-04-03 | 애플 인크. | 디지털 어시스턴트를 위한 음성 트리거 |
DK179496B1 (en) | 2017-05-12 | 2019-01-15 | Apple Inc. | USER-SPECIFIC Acoustic Models |
US11978436B2 (en) * | 2022-06-03 | 2024-05-07 | Apple Inc. | Application vocabulary integration with a digital assistant |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150120287A1 (en) * | 2013-10-28 | 2015-04-30 | At&T Intellectual Property I, L.P. | System and method for managing models for embedded speech and language processing |
CN105122354A (zh) * | 2012-12-12 | 2015-12-02 | 亚马逊技术有限公司 | 分布式语音识别系统中的语音模型检索 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8433558B2 (en) | 2005-07-25 | 2013-04-30 | At&T Intellectual Property Ii, L.P. | Methods and systems for natural language understanding using human knowledge and collected data |
US20130254035A1 (en) | 2005-09-14 | 2013-09-26 | Jumptap, Inc. | Revenue models associated with syndication of a behavioral profile using a monetization platform |
US8065146B2 (en) | 2006-07-12 | 2011-11-22 | Microsoft Corporation | Detecting an answering machine using speech recognition |
US8682667B2 (en) * | 2010-02-25 | 2014-03-25 | Apple Inc. | User profiling for selecting user specific voice input processing information |
KR20130114852A (ko) | 2012-04-10 | 2013-10-21 | 삼성에스엔에스 주식회사 | 엠알씨피를 이용하여 음성처리 기능을 제공하는 장치 및 그 방법 |
US10417037B2 (en) | 2012-05-15 | 2019-09-17 | Apple Inc. | Systems and methods for integrating third party services with a digital assistant |
US20150170053A1 (en) | 2013-12-13 | 2015-06-18 | Microsoft Corporation | Personalized machine learning models |
US10482184B2 (en) * | 2015-03-08 | 2019-11-19 | Google Llc | Context-based natural language processing |
US10133613B2 (en) | 2015-05-14 | 2018-11-20 | Microsoft Technology Licensing, Llc | Digital assistant extensibility to third party applications |
US20170018268A1 (en) | 2015-07-14 | 2017-01-19 | Nuance Communications, Inc. | Systems and methods for updating a language model based on user input |
US9715498B2 (en) * | 2015-08-31 | 2017-07-25 | Microsoft Technology Licensing, Llc | Distributed server system for language understanding |
US10282218B2 (en) | 2016-06-07 | 2019-05-07 | Google Llc | Nondeterministic task initiation by a personal assistant module |
KR20180070970A (ko) * | 2016-12-19 | 2018-06-27 | 삼성전자주식회사 | 음성 인식 방법 및 장치 |
KR102426411B1 (ko) * | 2017-06-21 | 2022-07-29 | 삼성전자주식회사 | 사용자 발화을 처리하는 전자 장치 및 시스템 |
CN109102802B (zh) | 2017-06-21 | 2023-10-17 | 三星电子株式会社 | 用于处理用户话语的系统 |
RU2691855C1 (ru) | 2018-03-23 | 2019-06-18 | Общество с ограниченной ответственностью "Аби Продакшн" | Обучение классификаторов, используемых для извлечения информации из текстов на естественном языке |
-
2020
- 2020-06-22 EP EP20181461.3A patent/EP3757991A1/en active Pending
- 2020-06-24 WO PCT/KR2020/008229 patent/WO2020262958A1/en active Application Filing
- 2020-06-26 US US16/913,310 patent/US11532305B2/en active Active
- 2020-06-28 CN CN202010597082.8A patent/CN112230874A/zh active Pending
-
2022
- 2022-11-10 US US17/984,286 patent/US20230083230A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105122354A (zh) * | 2012-12-12 | 2015-12-02 | 亚马逊技术有限公司 | 分布式语音识别系统中的语音模型检索 |
US20150120287A1 (en) * | 2013-10-28 | 2015-04-30 | At&T Intellectual Property I, L.P. | System and method for managing models for embedded speech and language processing |
Also Published As
Publication number | Publication date |
---|---|
US20230083230A1 (en) | 2023-03-16 |
US11532305B2 (en) | 2022-12-20 |
WO2020262958A1 (en) | 2020-12-30 |
US20200411002A1 (en) | 2020-12-31 |
EP3757991A1 (en) | 2020-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112230874A (zh) | 电子装置及其控制方法 | |
WO2019101083A1 (zh) | 一种语音数据处理方法、语音交互设备及存储介质 | |
US11532181B2 (en) | Provision of targeted advertisements based on user intent, emotion and context | |
US11710481B2 (en) | Electronic device and method for providing conversational service | |
US9406023B2 (en) | System recommendations based on incident analysis | |
US11892925B2 (en) | Electronic device for reconstructing an artificial intelligence model and a control method thereof | |
US10936645B2 (en) | Method and apparatus for generating to-be-played multimedia content | |
JP7087851B2 (ja) | 情報処理装置、データ分類方法およびプログラム | |
US9645914B1 (en) | Apps store with integrated test support | |
KR102090940B1 (ko) | 특징 정보를 추출하기 위한 방법 및 시스템 | |
JP6728319B2 (ja) | 人工知能機器で複数のウェイクワードを利用したサービス提供方法およびそのシステム | |
CN110515944B (zh) | 基于分布式数据库的数据存储方法、存储介质和电子设备 | |
CN112424799A (zh) | 电子装置及其控制方法 | |
JP2017527013A (ja) | サービスとしての適応特徴化 | |
US20240129567A1 (en) | Hub device, multi-device system including the hub device and plurality of devices, and operating method of the hub device and multi-device system | |
KR102417029B1 (ko) | 자연어 표현 생성 방법 및 전자 장치 | |
US11488579B2 (en) | Evaluating language models using negative data | |
US20210166678A1 (en) | Electronic device and controlling the electronic device | |
US20210374361A1 (en) | Removing undesirable signals from language models using negative data | |
CN108628863B (zh) | 信息获取方法和装置 | |
JP2019144872A (ja) | 機械学習を行なう計算モデルを有するシステム、及び機械学習の方法 | |
KR20210001905A (ko) | 전자 장치 및 그 제어 방법 | |
KR102430989B1 (ko) | 인공지능 기반 콘텐츠 카테고리 예측 방법, 장치 및 시스템 | |
EP3401795A1 (en) | Classifying conversational services | |
RU2792288C1 (ru) | Электронное устройство и способ управления им |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |