WO2022102893A1 - 전자 장치, 시스템 및 그 제어 방법 - Google Patents

전자 장치, 시스템 및 그 제어 방법 Download PDF

Info

Publication number
WO2022102893A1
WO2022102893A1 PCT/KR2021/006973 KR2021006973W WO2022102893A1 WO 2022102893 A1 WO2022102893 A1 WO 2022102893A1 KR 2021006973 W KR2021006973 W KR 2021006973W WO 2022102893 A1 WO2022102893 A1 WO 2022102893A1
Authority
WO
WIPO (PCT)
Prior art keywords
utterance
information
electronic device
domain
input
Prior art date
Application number
PCT/KR2021/006973
Other languages
English (en)
French (fr)
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
Priority claimed from KR1020210014058A external-priority patent/KR20220064273A/ko
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to CN202180053194.XA priority Critical patent/CN116097348A/zh
Priority to EP21892063.5A priority patent/EP4141864A4/en
Priority to US17/436,442 priority patent/US11915697B2/en
Publication of WO2022102893A1 publication Critical patent/WO2022102893A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1815Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1822Parsing for meaning understanding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/228Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of application context

Definitions

  • the present disclosure relates to an electronic device, a system, and a control method thereof, and for example, an electronic device, a system, and a control method thereof that recognize and respond to a user's voice regardless of a user's location.
  • a conventional electronic device may also recognize a user's voice and perform an action or response.
  • various electronic devices may be disposed in each room, living room, kitchen, etc. in the home, and each electronic device may recognize a user's voice and perform an action or response.
  • the electronic device that has received voice data corresponding to the user's utterance may perform an operation or respond according to the user's utterance.
  • a problem may occur. For example, the user may make a first utterance on a TV located in the living room, and may move to the kitchen and utter a second utterance on a refrigerator located in the kitchen. In this case, the refrigerator may not understand the user's second utterance, or may not perform an appropriate operation or response corresponding to the user's utterance even if it does.
  • An object of the present disclosure is to provide an electronic device, a system, and a control method for accurately recognizing and responding to a user's utterance through cooperation between a plurality of electronic devices even when consecutive utterances of a user are input from different electronic devices.
  • a method of controlling an electronic device includes receiving voice data corresponding to a utterance, analyzing the input utterance to determine whether domain information and intention information can be extracted, the determination result, and domain information and when at least one of the intention information is not extracted, broadcasting a signal requesting information related to previous utterance to at least one or more external devices connected to the same network as the electronic device. receiving utterance-related information of and outputting it.
  • An electronic device includes a microphone for receiving voice data corresponding to utterance, a communication interface including a communication circuit for communicating with an external device, a speaker, and a processor, wherein the processor is configured to receive the inputted voice data. It is determined whether domain information and intention information can be extracted by analyzing the utterance. As a result of the determination, if at least one of the domain information and the intention information is not extracted, a signal requesting information related to the previous utterance is transmitted to the same network as the electronic device.
  • Broadcasting to at least one connected external device controlling the communication interface to receive the previous utterance-related information from the at least one external device, and based on the received previous utterance-related information and the input utterance
  • the speaker is controlled to extract domain information and intention information, and to obtain and output a response result based on the extracted domain information and intention information.
  • the system receives voice data corresponding to a utterance, analyzes the input utterance to determine whether domain information and intent information can be extracted, and at least one of domain information and intention information If not extracted, a first electronic device that broadcasts a signal requesting previous utterance information to at least one or more external devices connected to the same network as the electronic device, and the previous utterance information from the first electronic device and a second electronic device that receives a request signal and transmits information related to the previous utterance to the first electronic device, wherein the first electronic device is transmitted from at least one external device including the second electronic device Receive the previous utterance-related information, extract domain information and intention information based on the received previous utterance-related information and the input utterance, and obtain a response result based on the extracted domain information and intention information to output
  • FIG. 1 is a view for explaining an operation of a system according to various embodiments of the present disclosure
  • FIG. 2 is a block diagram illustrating a configuration of an electronic device according to various embodiments of the present disclosure
  • FIG. 3 is a diagram for describing a configuration of a processor according to various embodiments of the present disclosure
  • FIG. 4 is a flowchart illustrating an operation of an electronic device according to various embodiments of the present disclosure
  • FIG. 5 is a view for explaining a process of determining a target device according to various embodiments of the present disclosure
  • FIG. 6 is a view for explaining a process of transmitting a utterance to a target device according to various embodiments of the present disclosure
  • FIG. 7A is a diagram illustrating a process in which an electronic device interprets an utterance according to various embodiments of the present disclosure
  • 7B is a diagram illustrating various embodiments of analyzing an utterance.
  • FIG. 8 is a view for explaining a process of determining information included in a utterance according to various embodiments of the present disclosure
  • 9A is a view for explaining a process of determining whether a utterance can be processed by another electronic device according to various embodiments of the present disclosure.
  • 9B is a diagram illustrating various embodiments of determining whether a utterance can be processed by another device.
  • FIG. 10 is a view for explaining a process of determining a type of utterance according to various embodiments of the present disclosure
  • FIG. 11 is a flowchart illustrating a method of controlling an electronic device according to various embodiments of the present disclosure.
  • a “module” or “unit” for a component performs at least one function or operation.
  • a “module” or “unit” may perform a function or operation by hardware, software, or a combination of hardware and software.
  • a plurality of “modules” or a plurality of “units” other than a “module” or “unit” to be performed in specific hardware or to be executed in at least one processor may be integrated into at least one module.
  • the singular expression includes the plural expression unless the context clearly dictates otherwise.
  • FIG. 1 is a view for explaining an operation of a system according to various embodiments of the present disclosure
  • the system 1000 may include a plurality of electronic devices including the first electronic device 100 - 1 and the second electronic device 100 - 2 .
  • the electronic device may include, but is not limited to, an AI speaker, a TV, a refrigerator, a washing machine, a microwave oven, an oven, an air conditioner, a smart phone, a tablet PC, a laptop computer, a desktop computer, and the like.
  • the AI speaker, TV, and air conditioner may be located in the living room, and the refrigerator, microwave, and oven may be located in the kitchen.
  • the desktop computer may be located in the room and the washing machine may be located in the utility room.
  • Each of the plurality of electronic devices may store information of the electronic device itself.
  • each of the plurality of electronic devices may store information of an external electronic device located nearby.
  • the refrigerator may store information on the refrigerator, information on the TV, and information on the AI speaker.
  • the TV may store information on the TV, information on the refrigerator, and information on the AI speaker
  • the AI speaker may store information on the AI speaker, information on the refrigerator, and information on the TV.
  • the information of the electronic device may include information such as a device type, a device location, and a domain, but is not limited thereto.
  • the domain may include an utterance processing element capable of processing a user's utterance.
  • the domain may be classified according to a service, such as a weather domain, a local information domain, a music domain, an image domain, and the like, but is not limited thereto.
  • a domain may be classified according to an application such as application a, application b, application c, and the like, but is not limited thereto.
  • a domain may be classified according to a device, such as a TV domain, a refrigerator domain, a speaker domain, and the like.
  • a domain may also be referred to as a capsule, service category, or the like.
  • the refrigerator may store, as its own information, information such as a refrigerator as a device type, a kitchen as a device location, and a refrigerator domain or a food-related application domain as the domain.
  • the refrigerator stores information such as a device type as a speaker, a device location as a living room, a domain as a speaker domain, a search domain, a music domain, etc.
  • the device type is TV
  • the device location is The living room and domain may store information such as a TV domain and an image domain.
  • the information stored in the various devices is not limited to the examples listed above, and may include various other information or less information.
  • the first electronic device 100 - 1 may receive the first utterance of the user 1 .
  • the first electronic device 100 - 1 may receive an input such as “tell me the weather in Seoul”.
  • the user's utterance may include a root utterance and/or a continuation utterance.
  • the root utterance may mean a first utterance for starting a task.
  • the root utterance may include utterances commanding “tell me the weather in Seoul today”, “run a program a”, and the like.
  • a continuous utterance may mean an utterance that is related to a previous utterance.
  • the continuous utterance may include a meta command utterance, a prompt utterance, a sequence utterance, and the like.
  • meta-command utterance refers to utterance that performs a basic function regardless of the type of electronic device.
  • the meta-command utterance may include utterances commanding “first thing”, “second thing”, “cancel”, “execution”, and the like.
  • the prompt utterance refers to a user's utterance in response to additional information requested by the device to perform a task.
  • the electronic device may request additional information “Where are you?” In this case, the user 1 may respond with “Seoul”, and the response utterance “Seoul” is a prompt utterance.
  • the sequence utterance refers to an utterance requesting an additional task associated with one completed task after one task is completed.
  • the electronic device in response to a request of the user 1 “Tell me the weather in Seoul today”, the electronic device may output information about today's weather in Seoul by voice. The user 1 may utter “tomorrow?” to the electronic device.
  • the meaning of the user's utterance “tomorrow?” is an utterance related to today's weather in Seoul that was previously requested, and is a request for tomorrow's weather in Seoul.
  • the request utterance “tomorrow?” is a sequence utterance.
  • the first electronic device 100 - 1 may search for today's weather in Seoul for the first utterance of the input “Tell me the weather in Seoul” and output weather information.
  • the user 1 may move to another place (eg, a kitchen) after making a first utterance requesting weather information from the first electronic device 100 - 1 .
  • the user may hear today's weather information of Seoul from the first electronic device 100 - 1 , and make a second utterance to the second electronic device 100 - 2 .
  • the second utterance of the user 1 may be a root utterance or a continuous utterance. If, as shown in FIG. 1 , the user 1 hears a response to the first utterance, and may make a second utterance related to the first utterance to the second electronic device 100 - 2 .
  • the user 1 may utter “tomorrow?” to the second electronic device 100 - 2 .
  • the second electronic device 100 - 2 may receive the second utterance of the user 1 .
  • the second electronic device 100 - 2 may receive the user's utterance.
  • the first and second electronic devices 100 - 1 and 100 - 2 may store information of nearby electronic devices.
  • each of the first and second electronic devices 100 - 1 and 100 - 2 may store utterance related information (eg, conversation state information) input to them.
  • the utterance-related information includes a timestamp indicating the processing time of the last last user's utterance, information related to the utterance task (eg, idle, prompt, task completion, etc.), utterance history, domain information related to user utterance, user utterance and It may include related intention information, and the like, but is not limited thereto.
  • the second electronic device 100 - 2 receiving the second utterance of the user 1 may identify whether information on the target device is included from the second utterance. For example, information on the target device is not included in the user 1's second utterance of “tomorrow?”. When the user 1's second utterance does not include information on the target device, the second electronic device 100 - 2 provides, for example, stored utterance-related information, domain information included in the utterance, and the utterance. It may be identified whether the second utterance can be interpreted based on the obtained intention information. For example, the user 1's second utterance of “tomorrow?” does not include information on domains and intentions.
  • the second electronic device 100 - 2 may broadcast a signal requesting utterance-related information to a plurality of electronic devices. Each of the plurality of electronic devices that have received the signal for requesting utterance-related information may transmit the stored utterance-related information to the second electronic device 100 - 2 .
  • the electronic device in which the utterance-related information does not exist may ignore the request of the second electronic device 100 - 2 .
  • the second electronic device 100 - 2 may receive utterance related information from at least one external device among a plurality of electronic devices.
  • the second electronic device 100 - 2 may identify one piece of utterance-related information and the electronic device related to the second utterance according to a predetermined criterion among the received utterance-related information.
  • the second electronic device 100 - 2 may identify utterance-related information having the most recent timestamp among the received utterance-related information as utterance-related information related to the second utterance.
  • the utterance related information of the first electronic device 100 - 1 may include a most recent timestamp.
  • the utterance-related information transmitted by the first electronic device 100 - 1 may be identified as the utterance-related information related to the second utterance.
  • the second electronic device 100 - 2 may identify utterance-related information in consideration of the location information of the electronic device.
  • the first electronic device 100 - 1 that has transmitted the identified utterance related information may be identified as the target device.
  • the second electronic device 100 - 2 may identify whether the input second utterance is a root utterance or a continuous utterance based on the identified utterance related information. In addition, when the input second utterance is a continuous utterance and the identified utterance related information is a task completion state, the second electronic device 100 - 2 may identify the input second utterance as a sequence utterance. Then, the second electronic device 100 - 2 may identify the first electronic device 100 - 1 to transmit the identified sequence utterance. For example, the information related to the speech task of the speech related information received from the first electronic device 100 - 1 may be in a task completion state. The task completion status may mean that a previous task existed and that the previous task was a completed task.
  • the second electronic device 100 - 2 may identify the second utterance as a continuous utterance. For example, since the previous task is a completed task, the second electronic device 100 - 2 may recognize the second utterance as a continuous utterance. It can be identified as a middle sequence utterance. Also, the second electronic device 100 - 2 identifies the first electronic device 100 - 1 as a target device to transmit the identified sequence utterance because the identified utterance related information is received from the first electronic device 100 - 1 . can do.
  • the second electronic device 100 - 2 may transmit the identified sequence utterance to the first electronic device 100 - 1 .
  • the first electronic device 100 - 1 may process the second utterance because it stores the received utterance state information related to the second utterance. For example, the first utterance of the user 1 is “Tell me the weather in Seoul today”, and the second utterance is “tomorrow?”. Accordingly, the first electronic device 100 - 1 may identify the meaning of the second utterance as the utterance requesting information about tomorrow's weather in Seoul based on the stored utterance-related information. The first electronic device 100-1 may search for the weather in Seoul tomorrow.
  • the first electronic device 100 - 1 may transmit a response signal for tomorrow's weather in Seoul to the second electronic device 100 - 2 .
  • the second electronic device 100 - 2 may receive a response signal processed by the sequence utterance by the first electronic device 100 - 1 and output it as a voice.
  • the second electronic device 100 - 2 may extract domain information and intention information of the second utterance based on the identified utterance-related information and the input second utterance. And, when the extracted domain information is a domain that can be processed by the second electronic device 100-2, the second electronic device 100-2 obtains a response result based on the extracted domain information and intention information, , it is possible to output the obtained response result as a voice.
  • FIG. 2 is a block diagram illustrating a configuration of an electronic device according to various embodiments of the present disclosure
  • the electronic device 100 includes a microphone 110 , a communication interface (eg, including a communication circuit) 120 , a speaker 130 , and a processor (eg, including a processing circuit) ( 140) may be included.
  • a communication interface eg, including a communication circuit
  • a speaker 130 e.g., a speaker
  • a processor e.g, including a processing circuit
  • the microphone 110 may receive a user's utterance.
  • the communication interface 120 may include various communication circuits and may communicate with an external device.
  • the communication interface 120 may transmit and receive information from an external device using a wired/wireless communication method.
  • the communication interface 120 may include a module capable of performing communication in a manner such as 3G, Long Term Evolution (LTE), 5G, Wi-Fi, Bluetooth, or Local Area Network (LAN).
  • the communication interface 120 may include a Global Positioning System (GPS) module.
  • GPS Global Positioning System
  • the communication interface 120 that communicates with an external device may be referred to as a communication unit, a communication module, a transceiver, or the like.
  • the communication interface 120 may broadcast a signal requesting information related to previous utterance to all external devices connected to the same network as the electronic device. In addition, it is possible to receive previous utterance related information or a response result related to user utterance from the external device.
  • the utterance-related information includes a timestamp indicating the processing time of the last last user's utterance, information related to the utterance task (eg, idle, prompt, task completion, etc.), utterance history, and domain related to user utterance. information, intention information related to user utterance, and the like.
  • the communication interface 120 may transmit the user's utterance input to the specified target device (target device).
  • the speaker 130 outputs an audio signal on which audio processing is performed. That is, the speaker 130 may output a response result obtained based on the inputted utterance or may perform an operation related to the inputted utterance and output a result of the performed operation.
  • the processor 140 may include various processing circuits and may control each configuration of the electronic device 100 .
  • the processor 140 may control the communication interface 120 to transmit and receive various pieces of information (or data).
  • the processor 140 may control the microphone 110 to receive the user's utterance, and may control the speaker 130 to output a result related to the utterance.
  • the processor 140 may analyze the input utterance to determine whether domain information and intention information can be extracted. When at least one of domain information and intention information is not extracted, the processor 140 broadcasts a signal requesting previous utterance information to a nearby electronic device, and receives previous utterance related information from the nearby electronic device to control the communication interface. Then, the processor 140 extracts domain information and intention information based on the received previous utterance related information and the input utterance, and obtains and outputs a response result based on the extracted domain information and intention information. ) can be controlled.
  • the processor 140 may identify the most recent utterance-related information based on a timestamp included in the previous utterance-related information received from the external device.
  • the processor 140 may extract domain information and intention information based on the identified most recent utterance-related information.
  • the processor 140 may identify whether the input utterance is a root utterance or a continuous utterance based on the identified most recent utterance related information.
  • the continuous utterance may include a meta command utterance, a prompt utterance, or a sequence utterance.
  • the processor 140 may control the speaker 130 to perform a corresponding operation based on the input utterance and output a response result to the operation.
  • the processor 140 may control the speaker 130 to obtain and output a response result based on the extracted domain information, intention information, and the input utterance.
  • the processor 140 may perform an operation corresponding to the specific information. For example, when the input utterance includes name information of the target device, the processor 140 may control the communication interface 120 to transmit the input utterance to the target device. When the input utterance includes information on the location of the target device and information on the domain, the processor 140 detects the utterance input to one target device including the domain from among target devices disposed at the location included in the utterance. The communication interface 120 may be controlled to transmit. Also, when the extracted domain information is domain information that the electronic device 100 itself cannot perform, the processor 140 transmits the input utterance to the target device that has transmitted the identified most recent utterance-related information. 120 can be controlled.
  • the electronic device 100 may include a memory (not shown).
  • the memory may store data for performing a function of the electronic device 100 , and may store programs and commands driven by the electronic device 100 .
  • the memory may store information about itself and surrounding electronic devices, utterance related information related to a user's utterance input to the electronic device 100 , and the like.
  • the memory may store a module that identifies and processes the user's utterance.
  • a module stored in the memory may include a device/domain dispatcher, a device classifier, a domain classifier, an intent classifier, and a history discovery module. ), a target device selector, a domain, and the like.
  • Each module stored in the memory can be loaded into the processor to identify and process the user's utterances.
  • the memory may be implemented as a type of ROM, RAM, HDD, SSD, memory card, or the like.
  • FIG. 3 is a diagram for describing a configuration of a processor according to various embodiments of the present disclosure
  • the processor 140 includes a device/domain dispatcher (eg, a processing circuit and/or an executable program element) 141 , a device classification module (eg, a processing circuit and/or an executable program) element) 142 , domain classification module (eg, processing circuitry and/or executable program element) 143 , intent classification module (eg processing circuitry and/or executable program element) 144 , History retrieval module (eg, processing circuitry and/or executable program element) 145 , target device selection module (eg, processing circuitry and/or executable program element) 146 , domain 147 - 1 , 147-n) and the like.
  • a device/domain dispatcher eg, a processing circuit and/or an executable program element
  • a device classification module eg, a processing circuit and/or an executable program element
  • domain classification module eg, processing circuitry and/or executable program element
  • intent classification module eg processing circuitry and/or executable program element
  • the device/domain dispatcher 141 may include various processing circuits and/or executable program elements, and may analyze an inputted user's utterance. For example, the device/domain dispatcher 141 may identify an electronic device type, location information of the electronic device, domain information, and the like from an input user's utterance.
  • the device classification module 142 includes various processing circuitry and/or executable program elements, and may include a root classifier 142-1 and a continuation classifier 142-2. there is.
  • the device classification module 142 may identify whether the input utterance is a root utterance or a continuous utterance based on the identified utterance related information.
  • the device classification module 142 may identify an electronic device capable of interpreting the input utterance. For example, when the input utterance is a continuous utterance and the identified utterance related information is a task completion state, the device classification module 142 may identify the input utterance as a sequence utterance.
  • the task completion status may mean that a previous task existed and that the previous task was a completed task. Accordingly, the device classification module 142 may identify the input utterance as a sequence utterance among continuous utterances. Also, the device classification module 142 may identify an external device that has transmitted the identified utterance-related information.
  • the domain classification module 143 may identify whether the input utterance can be interpreted based on the stored utterance-related information and domain information included in the utterance. .
  • the domain classification module 143 includes various processing circuits and/or executable program elements, and may include a root classification module 143-1 and a continuous classification module 143-2. Accordingly, the domain classification module 143 may also identify whether the input utterance is a root utterance or a continuous utterance based on the stored utterance-related information. For example, when the input utterance is a continuous utterance and the stored utterance related information is in a task completion state, the domain classification module 143 may identify the input utterance as a sequence utterance. The electronic device 100 may identify whether the input utterance can be interpreted using the intention classification module 144 together with the domain classification module 143 .
  • the intent classification module 144 may include various processing circuits and/or executable program elements, and may identify whether the input utterance can be interpreted based on intent information included in the input utterance. That is, the electronic device 100 may identify whether the input utterance can be interpreted using the domain classification module 143 and the intention classification module 144 .
  • the electronic device 100 may broadcast a signal requesting information related to the previous utterance to a plurality of electronic devices.
  • the history search module 145 may include various processing circuits and/or executable program elements, and may identify one piece of utterance-related information related to an inputted utterance according to a predetermined criterion among the received utterance-related information.
  • the electronic device 100 may identify utterance-related information having the most recent timestamp among the received utterance-related information as utterance-related information related to the input utterance.
  • the utterance related information of the first electronic device may include the most recent timestamp. Accordingly, the electronic device may identify the utterance-related information transmitted by the first electronic device as the utterance-related information that is inputted. Alternatively, the electronic device may identify utterance-related information in consideration of its own location information.
  • the target device selection module 146 may identify the first electronic device that includes various processing circuits and/or executable program elements, and has transmitted the identified utterance-related information, as the target device. Accordingly, when it is necessary to transmit the input utterance, the electronic device 100 may transmit the input utterance to the first electronic device identified as the target device.
  • the electronic device 100 may process an input utterance by itself.
  • the electronic device 100 may include a plurality of domains 147 - 1 and 147 -n.
  • an intent and an entity are obtained from the input utterance based on the domain 147 - 1 that processes the input utterance.
  • the domain 147 - 1 may be an utterance processing element capable of processing a user's utterance.
  • the domain 147 - 1 may be classified according to a service, such as a weather domain, a local information domain, a music domain, an image domain, and the like.
  • the domain 147 - 1 may be classified according to applications, such as application a, application b, application c, and the like.
  • the domain 147 - 1 may be classified according to devices, such as a TV domain, a refrigerator domain, a speaker domain, and the like.
  • a domain may be referred to as a capsule, a service category, or the like.
  • Domain 147 - 1 may include an intent identifier 1481 , an entity extractor 1482 , and an executor 1483 .
  • the intent identifier 1481 includes various processing circuitry and/or executable program elements, and identifies a service requested by the user (the user's intent), and the entity extractor 1482 includes various processing circuitry and/or executable program elements. Including, it is possible to identify the detailed information (entity) of the service requested by the user. As an embodiment, when the user utters “Tell me the weather in Seoul today”, the weather domain may respond by processing the utterance. The electronic device 100 may obtain the word “weather” from the user's utterance. Intent identifier 1481 may identify that the user is requesting weather information.
  • the electronic device 100 may obtain the words “today” and “Seoul” from the user's utterance.
  • the entity extractor 1482 may identify that the user is requesting information about today in time, and Seoul in place.
  • the above-described intent may be referred to as a goal, and the entity may be referred to as a slot.
  • a response may be output through the executor 1483 .
  • the electronic device 100 may respond to the user's utterance, “Tell me the weather in Seoul”, saying, “It is clear, it is 22 degrees Celsius.”
  • FIG. 4 is a flowchart illustrating an operation of an electronic device according to various embodiments of the present disclosure
  • FIG. 5 is a diagram illustrating a process of determining a target device according to various embodiments of the present disclosure
  • FIG. 6 is a flowchart of the present disclosure It is a view for explaining a process of transmitting a utterance to a target device according to various embodiments of the present disclosure
  • FIGS. 7A and 7B are diagrams for explaining a process of interpreting the utterance by an electronic device according to various embodiments of the present disclosure
  • FIG. 8 is It is a view for explaining a process of determining information included in a utterance according to various embodiments of the present disclosure
  • FIGS. 9A and 9B are a process of determining whether a utterance can be processed by another electronic device according to various embodiments of the present disclosure is a diagram for explaining It will be described with reference to FIGS. 4 to 9B.
  • the electronic device may receive the user's utterance ( S105 ).
  • the electronic device may determine the target device based on the user's utterance (S110).
  • the electronic device may receive a user's utterance, “Search for the latest movie using the AAA service on the living room TV”.
  • the device/domain dispatcher 141 of the electronic device may analyze the input of the user's utterance.
  • the electronic device may store information of each device and domain information provided by each device in the memory 150 .
  • the device/domain dispatcher 141 of the electronic device determines the type of the electronic device from the inputted user's utterance based on the stored information and the inputted utterance, the electronic device type is TV, the electronic device location is the living room, the service is the AAA service, and the user's utterance is It can be analyzed as the latest movie search. That is, the electronic device may determine the TV located in the living room as the target device.
  • the electronic device can determine the target device (S110-Y), it can select the target device (S115). Then, the electronic device may transmit the input utterance to the selected target device (S120). As shown in FIG. 6 , the electronic device may search for a target device based on the location based on the analyzed information ( S210 ). If a plurality of target devices exist in the same space, the electronic device may select one target device according to the user's selection (S220). Alternatively, when the target device does not exist in the analyzed location, the electronic device may re-search the target device by including another space. When the target device is found, the electronic device may transmit the user's utterance (or utterance-related information) to the target device through the communication interface 120 .
  • the electronic device may determine whether the utterance can be interpreted by the input electronic device (lister) (S125). As shown in FIG. 7A , the electronic device may determine whether to interpret the input utterance by using the domain classification module 143 and the intention classification module 144 . As illustrated in FIG. 7B , when the electronic device determines that the domain of the input utterance is rejected and determines that the information related to the utterance task is idle and task completion based on the stored utterance-related information, the input utterance can be judged as an uninterpretable utterance (reject).
  • the electronic device may interpret the input utterance when determining that the intent is rejected and determining information related to the utterance task as idle or task completion. It can be judged as an impossible utterance (reject).
  • the electronic device When the electronic device can interpret the input utterance (S125-Y), it may be determined whether all information is included in the input utterance (S130). As shown in FIG. 8 , the electronic device may determine using a slot extraction module (or entity extraction module) 1491 and a role labeler 1492 .
  • the slot extraction module 1491 may include various processing circuitry and/or executable program elements, and may perform the same role as the entity extractor.
  • the role labeler 1492 may include various processing circuits and/or executable program elements, and may determine the structure and meaning of the input utterance. For example, the role labeler 1492 may identify an object, a tool, a location, a time, a method, a cause, and the like, from the input utterance.
  • the electronic device may determine whether all information capable of processing the input utterance is included based on the stored utterance-related information (or information related to the utterance task).
  • the electronic device may interpret the inputted utterance and obtain and output a response result (S135).
  • the electronic device may re-asking the user (S140).
  • the electronic device may determine that information on which channel to change to is insufficient. In this case, the electronic device may inquire of the user for additional information through a Natural Language Generation (NLG) (eg, including various processing circuits and/or executable program elements) 1493 that expresses the operation result in a natural language.
  • NLG Natural Language Generation
  • the electronic device may determine whether another device can process it (S145). As illustrated in FIG. 9A , the electronic device may determine whether another device can process it using the device classification module 142 . That is, the electronic device may receive previous utterance related information from the external electronic device. In addition, the electronic device may identify the most recent utterance-related information among the received previous utterance-related information. As in the embodiment shown in FIG. 9B , the electronic device may determine whether another device can process it based on the device classification module 142 and the identified utterance related information.
  • the electronic device may transmit the inputted utterance to the other device (S150). That is, the electronic device may select a target device (target device) using the target device selection module 146 . In addition, the electronic device may transmit the utterance input through the communication interface 120 (or the input utterance related information) to the target device. The target device receiving the utterance input from the electronic device may process the input utterance to obtain a response result and output the result as voice. Alternatively, the target device may transmit the obtained response result to the electronic device and output the response result received by the electronic device as a voice. When the input utterance cannot be processed by another device (S145-N), the electronic device may reject a response to the input utterance (S155).
  • FIG. 10 is a view for explaining a process of determining a type of utterance according to various embodiments of the present disclosure
  • the device classification module receives utterances.
  • the device classification module may be learned using various methods such as a pattern-based classifier and an artificial neural network technique. Then, the device classification module may compare the predicted score of the target device with a threshold value (S310). The device classification module may determine that the prediction score is greater than or equal to the threshold value (S310-Y) as continuous utterance (same as the previous domain) (S320). The device classification module may determine the input utterance as a continuous utterance and output a candidate target device. Alternatively, the device classification module may determine that the prediction score is smaller than the threshold value (S310-N) as a root utterance (S330). The device classification module may predict a domain or determine whether to reject it, and may output a result.
  • FIG. 11 is a flowchart illustrating a method of controlling an electronic device according to various embodiments of the present disclosure.
  • the electronic device receives the user's utterance (S410), analyzes the inputted utterance, and determines whether to extract domain information and intention information (S420). When at least one of domain information and intention information is not extracted, the electronic device broadcasts a signal requesting information related to previous utterances to at least one external device connected to the same network as the electronic device (S430). When the input utterance includes name information of the target device, the electronic device may transmit the input utterance to the target device. Alternatively, when the input utterance includes information on the location of the target device and information on the domain, the electronic device may transmit the input utterance to one target device including the domain among target devices disposed at the location.
  • the electronic device receives previous utterance-related information from at least one external device (S440), and extracts domain information and intention information based on the received previous utterance-related information and the inputted utterance (S450).
  • the electronic device may identify the most recent utterance-related information based on a timestamp included in previous utterance-related information received from at least one external device.
  • the electronic device may extract domain information and the intention information based on the identified most recent utterance-related information.
  • the electronic device may identify whether the input utterance is a root utterance or a continuous utterance based on the identified most recent utterance related information.
  • the continuous utterance may include a meta-command utterance, a prompt utterance, or a sequence utterance.
  • the electronic device may transmit the input utterance to the target device that has transmitted the identified most recent utterance-related information.
  • the electronic device obtains and outputs a response result based on the extracted domain information and intention information (S460). For example, when the input utterance is a meta command utterance or a prompt utterance, the electronic device may perform a corresponding operation based on the input utterance and output a response result to the operation. Alternatively, when the input utterance is a sequence utterance, the electronic device may obtain and output a response result based on the extracted domain information, intention information, and the input utterance.
  • the method for controlling an electronic device may be provided as a computer program product.
  • the computer program product may include the S/W program itself or a non-transitory computer readable medium in which the S/W program is stored.
  • the non-transitory readable medium refers to a medium that stores data semi-permanently and can be read by a device.
  • a non-transitory readable medium such as a CD, DVD, hard disk, Blu-ray disk, USB, memory card, ROM, and the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Machine Translation (AREA)

Abstract

전자 장치, 시스템 및 그 제어 방법이 개시된다. 음성 인식을 수행하는 전자 장치는 발화를 입력받는 단계, 입력된 발화를 분석하여 도메인 정보 및 의도 정보가 추출 가능한지 판단하는 단계, 도메인 정보 및 의도 정보 중 적어도 하나가 추출되지 않은 경우, 이전의 발화 관련 정보를 요청하는 신호를 전자 장치와 동일 네트워크에 연결된 적어도 하나 이상의 외부 장치로 브로드캐스팅하는 단계, 적어도 하나의 외부 장치로부터 이전의 발화 관련 정보를 수신하는 단계, 수신된 이전의 발화 관련 정보와 입력된 발화를 기반으로 도메인 정보 및 의도 정보를 추출하는 단계 및 추출된 도메인 정보 및 의도 정보를 기반으로 응답 결과를 획득하여 출력한다.

Description

전자 장치, 시스템 및 그 제어 방법
본 개시는 전자 장치, 시스템 및 그 제어 방법에 관한 것으로, 예를 들어, 사용자의 위치와 상관없이 사용자의 음성을 인식하여 응답하는 전자 장치, 시스템 및 그 제어 방법에 관한 것이다.
전자 기술의 발전에 따라 기존의 전통적인 전자 장치도 사용자의 음성을 인식하여 동작 또는 응답을 수행할 수 있다. 예를 들어, 가정에는 각 방, 거실, 주방 등에 다양한 전자 장치가 배치될 수 있고, 각 전자 장치는 사용자의 음성을 인식하여 동작 또는 응답을 수행할 수 있다.
사용자가 고정된 위치에서 하나의 전자 장치에 발화를 하는 경우, 사용자의 발화에 대응되는 음성 데이터를 입력받은 전자 장치는 사용자의 발화에 따라 동작을 수행하거나 응답을 할 수 있다. 그러나, 사용자가 첫번째 발화 후 이동을 하여 두번째 발화를 하는 경우 문제가 발생할 수 있다. 예를 들어, 사용자는 거실에 위치한 TV에 첫번째 발화를 하고, 주방으로 이동하여 주방에 위치한 냉장고에 두번째 발화를 할 수 있다. 이 경우, 냉장고는 사용자의 두번째 발화를 이해하지 못하거나, 이해를 하더라도 사용자의 발화에 대응되는 적절한 동작이나 응답을 할 수 없다.
따라서, 사용자의 발화가 서로 다른 전자 장치에서 입력되더라도 끊김없이 사용자의 발화에 대응되는 적절한 동작이나 응답을 수행할 수 있는 기술에 대한 필요성이 존재한다.
본 개시는 사용자의 연속된 발화가 서로 다른 전자 장치에서 입력되더라도 복수 전자 장치 간의 협력을 통해 사용자의 발화를 정확히 인식하여 응답하는 전자 장치, 시스템 및 그 제어 방법을 제공함에 있다.
본 개시의 일 실시 예에 따른 전자 장치의 제어 방법은 발화에 대응되는 음성 데이터를 입력받는 단계, 상기 입력된 발화를 분석하여 도메인 정보 및 의도 정보가 추출 가능한지 판단하는 단계, 상기 판단 결과, 도메인 정보 및 의도 정보 중 적어도 하나가 추출되지 않은 경우, 이전의 발화 관련 정보를 요청하는 신호를 상기 전자 장치와 동일 네트워크에 연결된 적어도 하나 이상의 외부 장치로 브로드캐스팅하는 단계, 상기 적어도 하나의 외부 장치로부터 상기 이전의 발화 관련 정보를 수신하는 단계, 상기 수신된 이전의 발화 관련 정보와 상기 입력된 발화를 기반으로 도메인 정보 및 의도 정보를 추출하는 단계 및 상기 추출된 도메인 정보 및 의도 정보를 기반으로 응답 결과를 획득하여 출력하는 단계를 포함한다.
본 개시의 일 실시 예에 따른 전자 장치는 발화에 대응되는 음성 데이터를 입력받는 마이크, 외부 장치와 통신을 수행하는 통신 회로를 포함하는 통신 인터페이스, 스피커 및 프로세서를 포함하고, 상기 프로세서는 상기 입력된 발화를 분석하여 도메인 정보 및 의도 정보가 추출 가능한지 판단하고, 상기 판단 결과, 도메인 정보 및 의도 정보 중 적어도 하나가 추출되지 않은 경우, 이전의 발화 관련 정보를 요청하는 신호를 상기 전자 장치와 동일 네트워크에 연결된 적어도 하나 이상의 외부 장치로 브로드캐스팅하고, 상기 적어도 하나의 외부 장치로부터 상기 이전의 발화 관련 정보를 수신하도록 상기 통신 인터페이스를 제어하며, 상기 수신된 이전의 발화 관련 정보와 상기 입력된 발화를 기반으로 도메인 정보 및 의도 정보를 추출하고, 상기 추출된 도메인 정보 및 의도 정보를 기반으로 응답 결과를 획득하여 출력하도록 상기 스피커를 제어한다.
본 개시의 일 실시 예에 따른 시스템은 발화에 대응되는 음성 데이터를 입력받고, 상기 입력된 발화를 분석하여 도메인 정보 및 의도(intent) 정보가 추출 가능한지 판단하며, 도메인 정보 및 의도 정보 중 적어도 하나가 추출되지 않은 경우, 이전의 발화 관련 정보를 요청하는 신호를 상기 전자 장치와 동일 네트워크에 연결된 적어도 하나 이상의 외부 장치로 브로드캐스팅하는 제1 전자 장치 및 상기 제1 전자 장치로부터 상기 이전의 발화 관련 정보를 요청하는 신호를 수신하고, 상기 이전의 발화 관련 정보를 상기 제1 전자 장치로 전송하는 제2 전자 장치를 포함하고, 상기 제1 전자 장치는 상기 제2 전자 장치를 포함하는 적어도 하나의 외부 장치로부터 상기 이전의 발화 관련 정보를 수신하고, 상기 수신된 이전의 발화 관련 정보와 상기 입력된 발화를 기반으로 도메인 정보 및 의도 정보를 추출하며, 상기 추출된 도메인 정보 및 의도 정보를 기반으로 응답 결과를 획득하여 출력한다.
도 1은 본 개시의 다양한 실시 예에 따른 시스템의 동작을 설명하는 도면이다.
도 2는 본 개시의 다양한 실시 예에 따른 전자 장치의 구성을 설명하는 블록도이다.
도 3은 본 개시의 다양한 실시 예에 따른 프로세서의 구성을 설명하는 도면이다.
도 4는 본 개시의 다양한 실시 예에 따른 전자 장치의 동작을 설명하는 흐름도이다.
도 5는 본 개시의 다양한 실시 예에 따른 대상 장치를 판단하는 과정을 설명하는 도면이다.
도 6은 본 개시의 다양한 실시 예에 따른 대상 장치로 발화를 전달하는 과정을 설명하는 도면이다.
도 7a는 본 개시의 다양한 실시 예에 따른 전자 장치가 발화를 해석하는 과정을 설명하는 도면이다.
도 7b는 발화를 해석하는 다양한 실시 예를 나타내는 도면이다.
도 8은 본 개시의 다양한 실시 예에 따른 발화에 포함된 정보를 판단하는 과정을 설명하는 도면이다.
도 9a는 본 개시의 다양한 실시 예에 따른 타 전자 장치에서 처리할 수 있는 발화인지 판단하는 과정을 설명하는 도면이다.
도 9b는 타 장치에서 처리할 수 있는 발화인지 판단하는 다양한 실시 예를 나타내는 도면이다.
도 10은 본 개시의 다양한 실시 예에 따른 발화의 종류를 판단하는 과정을 설명하는 도면이다.
도 11은 본 개시의 다양한 실시 예에 따른 전자 장치의 제어 방법을 설명하는 흐름도이다.
이하에서는 첨부된 도면을 참조하여 다양한 실시 예를 보다 상세하게 설명한다. 본 명세서에 기재된 실시 예는 다양하게 변형될 수 있다. 특정한 실시 예가 도면에서 묘사되고 상세한 설명에서 자세하게 설명될 수 있다. 그러나, 첨부된 도면에 개시된 특정한 실시 예는 다양한 실시 예를 쉽게 이해하도록 하기 위한 것일 뿐이다. 따라서, 첨부된 도면에 개시된 특정 실시 예에 의해 기술적 사상이 제한되는 것은 아니며, 개시의 사상 및 기술 범위에 포함되는 모든 균등물 또는 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이러한 구성요소들은 상술한 용어에 의해 한정되지는 않는다. 상술한 용어는 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 명세서에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. 어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
한편, 본 명세서에서 사용되는 구성요소에 대한 "모듈" 또는 "부"는 적어도 하나의 기능 또는 동작을 수행한다. 그리고, "모듈" 또는 "부"는 하드웨어, 소프트웨어 또는 하드웨어와 소프트웨어의 조합에 의해 기능 또는 동작을 수행할 수 있다. 또한, 특정 하드웨어에서 수행되어야 하거나 적어도 하나의 프로세서에서 수행되는 "모듈" 또는 "부"를 제외한 복수의 "모듈들" 또는 복수의 "부들"은 적어도 하나의 모듈로 통합될 수도 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 개시의 설명에 있어서 각 단계의 순서는 선행 단계가 논리적 및 시간적으로 반드시 후행 단계에 앞서서 수행되어야 하는 경우가 아니라면 각 단계의 순서는 비제한적으로 이해되어야 한다. 즉, 위와 같은 예외적인 경우를 제외하고는 후행 단계로 설명된 과정이 선행단계로 설명된 과정보다 앞서서 수행되더라도 개시의 본질에는 영향이 없으며 권리범위 역시 단계의 순서에 관계없이 정의되어야 한다. 그리고 본 명세서에서 "A 또는 B"라고 기재한 것은 A와 B 중 어느 하나를 선택적으로 가리키는 것뿐만 아니라 A와 B 모두를 포함하는 것도 의미하는 것으로 정의된다. 또한, 본 명세서에서 "포함"이라는 용어는 포함하는 것으로 나열된 요소 이외에 추가로 다른 구성요소를 더 포함하는 것도 포괄하는 의미를 가진다.
본 명세서에서는 본 개시의 설명에 필요한 필수적인 구성요소만을 설명하며, 본 개시의 본질과 관계가 없는 구성요소는 언급하지 아니한다. 그리고 언급되는 구성요소만을 포함하는 배타적인 의미로 해석되어서는 아니되며 다른 구성요소도 포함할 수 있는 비배타적인 의미로 해석되어야 한다.
그 밖에도, 본 개시를 설명함에 있어서, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 개시의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우, 그에 대한 상세한 설명은 축약하거나 생략한다. 한편, 각 실시 예는 독립적으로 구현되거나 동작될 수도 있지만, 각 실시 예는 조합되어 구현되거나 동작될 수도 있다.
도 1은 본 개시의 다양한 실시 예에 따른 시스템의 동작을 설명하는 도면이다.
시스템(1000)은 제1 전자 장치(100-1) 및 제2 전자 장치(100-2)를 포함하는 복수의 전자 장치를 포함할 수 있다. 예를 들어, 전자 장치는 AI 스피커, TV, 냉장고, 세탁기, 전자레인지, 오븐, 에어컨, 스마트폰, 태블릿 PC, 랩탑 컴퓨터, 데스크탑 컴퓨터 등을 포함할 수 있으며, 여기에 한정되는 것은 아니다. 그리고, AI 스피커, TV 및 에어컨은 거실에 위치할 수 있고, 냉장고, 전자레인지, 오븐은 주방에 위치할 수 있다. 데스크탑 컴퓨터는 방에 위치할 수 있고, 세탁기는 다용도실에 위치할 수 있다. 복수의 전자 장치 각각은 전자 장치 자신의 정보를 저장할 수 있다. 또한, 복수의 전자 장치 각각은 주변에 위치하는 외부 전자 장치의 정보를 저장할 수 있다. 예를 들어, 집 안에 냉장고, TV, AI 스피커가 위치하는 경우, 냉장고는 냉장고의 정보, TV의 정보 및 AI 스피커의 정보를 저장할 수 있다. 또한, TV는 TV의 정보, 냉장고의 정보 및 AI 스피커의 정보를 저장할 수 있고, AI 스피커는 AI 스피커의 정보, 냉장고의 정보 및 TV의 정보를 저장할 수 있다. 전자 장치의 정보는 장치 타입, 장치 위치, 도메인 등의 정보를 포함할 수 있으며, 여기에 한정되는 것은 아니다. 도메인은 사용자의 발화를 처리할 수 있는 발화 처리 요소를 포함할 수 있다. 일 실시 예로서, 도메인은 기상 도메인, 지역 정보 도메인, 음악 도메인, 영상 도메인 등과 같이 서비스에 따라 분류될 수 있으며, 여기에 한정되는 것은 아니다. 또는, 도메인은 a 어플리케이션, b 어플리케이션, c 어플리케이션 등과 같이 어플리케이션에 따라 분류될 수 있으며, 여기에 한정되는 것은 아니다. 또는, 예를 들어, 도메인은 TV 도메인, 냉장고 도메인, 스피커 도메인 등과 같이 디바이스에 따라 분류될 수 있다. 도메인은 캡슐, 서비스 카테고리 등으로 지칭될 수도 있다.
일 실시 예로서, 냉장고는 자신의 정보로서 장치 타입은 냉장고, 장치 위치는 주방, 도메인은 냉장고 도메인 또는 음식 관련 어플리케이션 도메인 등의 정보를 저장할 수 있다. 또한, 냉장고는 AI 스피커의 장치 정보로서 장치 타입은 스피커, 장치 위치는 거실, 도메인은 스피커 도메인, 검색 도메인, 음악 도메인 등의 정보를 저장하고, TV의 장치 정보로서 장치 타입은 TV, 장치 위치는 거실, 도메인은 TV 도메인, 영상 도메인 등의 정보를 저장할 수 있다. 그러나, 다양한 장치에 저장되는 정보는 위에 열거된 예에 한정되지 않으며, 다양한 다른 정보 또는 더 적은 정보를 포함할 수 있다.
제1 전자 장치(100-1)는 사용자(1)의 제1 발화를 입력받을 수 있다. 예를 들어, 제1 전자 장치(100-1)는 “서울 날씨 알려줘”와 같은 발화를 입력받을 수 있다. 사용자의 발화는 루트(root) 발화 및/또는 연속(continuation) 발화를 포함할 수 있다. 예를 들어, 루트 발화는 태스크(task)를 시작하기 위한 첫번째 발화를 의미할 수 있다. 일 실시 예로서, 루트 발화는 “오늘 서울 날씨 알려줘”, “a 프로그램 실행시켜 줘” 등을 명령하는 발화를 포함할 수 있다.
예를 들어, 연속 발화는 이전 발화와 연관성을 가지는 발화를 의미할 수 있다. 연속 발화는 메타 커맨드(meta command) 발화, 프롬프트(prompt) 발화, 시퀀스(sequence) 발화 등을 포함할 수 있다. 예를 들어, 메타 커맨드 발화는 전자 장치의 종류에 상관없이 기본적인 기능을 수행하는 발화를 의미한다. 일 실시 예로서, 메타 커맨드 발화는 “첫번째 것”, “두번째 것”, “취소”, “실행” 등을 명령하는 발화를 포함할 수 있다. 예를 들어, 프롬프트 발화는 태스크를 수행하기 위해 디바이스가 요청한 추가 정보에 대한 사용자의 응답 발화를 의미한다. 일 실시 예로서, 사용자(1)가 최초 “날씨 알려줘”라고 발화했을 때, 전자 장치는 “지역이 어디신가요?”라는 추가 정보를 요청할 수 있다. 이때, 사용자(1)는 “서울”이라고 응답할 수 있고, “서울”이라는 응답 발화가 프롬프트 발화이다. 시퀀스 발화는 하나의 태스크가 완료된 후, 완료된 하나의 태스크와 연관된 추가 태스크를 요청하는 발화를 의미한다. 일 실시 예로서, 사용자(1)의 “오늘 서울 날씨 알려줘”라는 요청에 대해 전자 장치는 오늘 서울 날씨에 대한 정보를 음성으로 출력할 수 있다. 사용자(1)는 전자 장치에게“내일은?”이라는 발화를 할 수 있다. 사용자의 “내일은?”이라는 발화의 의미는 이전에 요청했던 오늘 서울 날씨와 연관된 발화로서 내일 서울 날씨에 대한 요청 발화이다. 이때, “내일은?”이라는 요청 발화가 시퀀스 발화이다.
상술한 바와 같이, 제1 전자 장치(100-1)는 입력된 “서울 날씨 알려줘”의 제1 발화에 대해 오늘 서울 날씨를 검색하고, 날씨 정보를 출력할 수 있다. 사용자(1)는 제1 전자 장치(100-1)에 날씨 정보를 요청하는 제1 발화를 한 후 다른 장소(예, 주방)로 이동할 수 있다. 사용자는 제1 전자 장치(100-1)로부터 오늘 서울의 날씨 정보를 듣고, 제2 전자 장치(100-2)에게 제2 발화를 할 수 있다. 사용자(1)의 제2 발화는 루트 발화일 수 있고, 연속 발화일 수 있다. 만일, 도 1에 도시된 바와 같이, 사용자(1)가 제1 발화에 대한 응답을 듣고, 제2 전자 장치(100-2)에게 제1 발화와 관련된 제2 발화를 할 수 있다.
예를 들어, 사용자(1)는 제2 전자 장치(100-2)에게 “내일은?”이라는 발화를 할 수 있다. 제2 전자 장치(100-2)는 사용자(1)의 제2 발화를 입력받을 수 있다. 예를 들어, 제2 전자 장치(100-2)는 사용자의 발화를 입력받을 수 있다. 제1 및 제2 전자 장치(100-1, 100-2)는 주변 전자 장치의 정보를 저장할 수 있다. 그리고, 제1 및 제2 전자 장치(100-1, 100-2) 각각은 자신에게 입력된 발화 관련 정보(예, 대화 상태 정보)를 저장할 수 있다. 발화 관련 정보는 이전 마지막 사용자의 발화를 처리 시간을 나타내는 타임스탬프, 발화 태스크와 관련된 정보(예, 아이들(idle), 프롬프트, 태스크 완료 등), 발화 히스토리, 사용자 발화와 관련된 도메인 정보, 사용자 발화와 관련된 의도 정보 등을 포함할 수 있으며, 여기에 한정되는 것은 아니다.
사용자(1)의 제2 발화를 입력받은 제2 전자 장치(100-2)는 제2 발화로부터 대상 장치에 대한 정보가 포함되어 있는지 식별할 수 있다. 예를 들어, “내일은?”이라는 사용자(1)의 제2 발화에는 대상 장치에 대한 정보가 포함되지 않았다. 사용자(1)의 제2 발화에 대상 장치에 대한 정보가 포함되지 않은 경우, 제2 전자 장치(100-2)는, 예를 들어, 저장된 발화 관련 정보, 발화에 포함된 도메인 정보 및 발화에 포함된 의도 정보에 기초하여 제2 발화를 해석할 수 있는지 여부를 식별할 수 있다. 예를 들어, “내일은?”이라는 사용자(1)의 제2 발화에는 도메인 및 의도에 대한 정보가 포함되지 않았다. 사용자(1)의 제2 발화가 해석 불가로 식별되는 경우, 제2 전자 장치(100-2)는 발화 관련 정보를 요청하는 신호를 복수의 전자 장치로 브로드캐스팅할 수 있다. 발화 관련 정보를 요청하는 신호를 수신한 복수의 전자 장치 각각은 저장된 발화 관련 정보를 제2 전자 장치(100-2)로 전송할 수 있다. 발화 관련 정보가 존재하지 않는 전자 장치는 제2 전자 장치(100-2)의 요청을 무시할 수 있다.
제2 전자 장치(100-2)는 복수의 전자 장치 중 적어도 하나의 외부 장치로부터 발화 관련 정보를 수신할 수 있다. 제2 전자 장치(100-2)는 수신된 발화 관련 정보 중 일정한 기준에 따라 제2 발화와 관련된 하나의 발화 관련 정보 및 전자 장치를 식별할 수 있다. 예를 들어, 제2 전자 장치(100-2)는 수신된 발화 관련 정보 중 타임스탬프가 가장 최근인 발화 관련 정보를 제2 발화와 관련된 발화 관련 정보로 식별할 수 있다. 예를 들어, 제1 전자 장치(100-1)의 발화 관련 정보에는 가장 최근의 타임스탬프가 포함될 수 있다. 따라서, 제1 전자 장치(100-1)가 전송한 발화 관련 정보를 제2 발화와 관련된 발화 관련 정보로 식별할 수 있다. 제2 전자 장치(100-2)는 전자 장치의 위치 정보를 함께 고려하여 발화 관련 정보를 식별할 수 있다. 그리고, 식별된 발화 관련 정보를 전송한 제1 전자 장치(100-1)를 대상 장치로 식별할 수 있다.
또한, 제2 전자 장치(100-2)는 식별된 발화 관련 정보에 기초하여 입력된 제2 발화가 루트 발화인지 또는 연속 발화인지 식별할 수 있다. 그리고, 제2 전자 장치(100-2)는 입력된 제2 발화가 연속 발화이고 식별된 발화 관련 정보가 태스크 완료 상태인 경우, 입력된 제2 발화를 시퀀스 발화로 식별할 수 있다. 그리고, 제2 전자 장치(100-2)는 식별된 시퀀스 발화를 전송할 제1 전자 장치(100-1)를 식별할 수 있다. 예를 들어, 제1 전자 장치(100-1)로부터 수신된 발화 관련 정보의 발화 태스크와 관련된 정보는 태스크 완료 상태일 수 있다. 태스크 완료 상태는 이전 태스크가 존재하였고, 이전 태스크가 완료된 태스크라는 것을 의미할 수 있다. 따라서, 제2 전자 장치(100-2)는 제2 발화를 연속 발화로 식별할 수 있다.예를 들어, 이전 태스크가 완료된 태스크이므로 제2 전자 장치(100-2)는 제2 발화를 연속 발화 중 시퀀스 발화로 식별할 수 있다. 또한, 제2 전자 장치(100-2)는 식별된 발화 관련 정보가 제1 전자 장치(100-1)로부터 수신되었으므로 제1 전자 장치(100-1)를 식별된 시퀀스 발화를 전송할 대상 장치로 식별할 수 있다.
제2 전자 장치(100-2)는 식별된 시퀀스 발화를 제1 전자 장치(100-1)로 전송할 수 있다. 제1 전자 장치(100-1)는 수신된 제2 발화와 관련된 발화 상태 정보를 저장하고 있으므로 제2 발화를 처리할 수 있다. 예를 들어, 사용자(1)의 제1 발화는 “오늘 서울 날씨 알려줘”이고, 제2 발화는 “내일은?”이다. 따라서, 제1 전자 장치(100-1)는 저장된 발화 관련 정보에 기초하여 제2 발화의 의미가 내일 서울 날씨에 대한 정보를 요청하는 발화로 식별할 수 있다. 제1 전자 장치(100-1)는 내일 서울 날씨를 검색할 수 있다. 그리고, 제1 전자 장치(100-1)는 내일 서울 날씨에 대한 응답 신호를 제2 전자 장치(100-2)로 전송할 수 있다. 제2 전자 장치(100-2)는 제1 전자 장치(100-1)에서 시퀀스 발화를 처리한 응답 신호를 수신하고, 음성으로 출력할 수 있다.
예를 들어, 제2 전자 장치(100-2)는 식별된 발화 관련 정보 및 입력된 제2 발화에 기초하여 제2 발화의 도메인 정보 및 의도 정보를 추출할 수 있다. 그리고, 추출된 도메인 정보가 제2 전자 장치(100-2)에서 처리할 수 있는 도메인인 경우, 제2 전자 장치(100-2)는 추출된 도메인 정보 및 의도 정보에 기초하여 응답 결과를 획득하고, 획득된 응답 결과를 음성으로 출력할 수 있다.
도 2는 본 개시의 다양한 실시 예에 따른 전자 장치의 구성을 설명하는 블록도이다.
도 2를 참조하면, 전자 장치(100)는 마이크(110), 통신 인터페이스(예를 들어, 통신 회로를 포함)(120), 스피커(130) 및 프로세서(예를 들어, 프로세싱 회로를 포함)(140)를 포함할 수 있다.
마이크(110)는 사용자의 발화를 입력받을 수 있다. 그리고, 통신 인터페이스(120)는 다양한 통신 회로를 포함하고, 외부 장치와 통신을 수행할 수 있다. 통신 인터페이스(120)는 외부 장치로부터 유무선 통신 방식을 이용하여 정보를 송수신 할 수 있다. 예를 들어, 통신 인터페이스(120)는 3G, LTE(Long Term Evolution), 5G, 와이파이, 블루투스, LAN(Local Area Network) 등의 방식으로 통신을 수행할 수 있는 모듈을 포함할 수 있다. 또한, 통신 인터페이스(120)는 GPS(Global Positioning System) 모듈을 포함할 수 있다. 외부 장치와 통신을 수행하는 통신 인터페이스(120)는 통신부, 통신 모듈, 송수신부 등으로 불릴 수도 있다. 통신 인터페이스(120)는 이전의 발화 관련 정보를 요청하는 신호를 전자 장치와 동일 네트워크에 연결된 모든 외부 장치로 브로드캐스팅할 수 있다. 그리고, 외부 장치로부터 이전의 발화 관련 정보 또는 사용자 발화와 관련된 응답 결과를 수신할 수 있다. 일 실시 예로서, 발화 관련 정보는 이전 마지막 사용자의 발화를 처리 시간을 나타내는 타임스탬프, 발화 태스크와 관련된 정보(예, 아이들(idle), 프롬프트, 태스크 완료 등), 발화 히스토리, 사용자 발화와 관련된 도메인 정보, 사용자 발화와 관련된 의도 정보 등을 포함할 수 있다. 또한, 통신 인터페이스(120)는 특정된 대상 장치(타겟 장치)로 입력된 사용자의 발화를 전송할 수 있다.
스피커(130)는 음성 처리가 수행된 음성 신호를 출력한다. 즉, 스피커(130)는 입력된 발화를 기반으로 획득된 응답 결과를 출력하거나 입력된 발화와 관련된 동작을 수행하고 수행된 동작에 대한 결과를 출력할 수 있다.
프로세서(140)는 다양한 프로세싱 회로를 포함하고, 전자 장치(100)의 각 구성을 제어할 수 있다. 예를 들어, 프로세서(140)는 다양한 정보(또는, 데이터)를 송수신하도록 통신 인터페이스(120)를 제어할 수 있다. 그리고, 프로세서(140)는 사용자의 발화를 입력받도록 마이크(110)를 제어하고, 발화와 관련된 결과를 출력하도록 스피커(130)를 제어할 수 있다.
프로세서(140)는 입력된 발화를 분석하여 도메인 정보 및 의도 정보가 추출 가능한지 판단할 수 있다. 프로세서(140)는 도메인 정보 및 의도 정보 중 적어도 하나가 추출되지 않은 경우, 이전의 발화 관련 정보를 요청하는 신호를 주변의 전자 장치로 브로드캐스팅하고, 주변의 전자 장치로부터 이전의 발화 관련 정보를 수신하도록 상기 통신 인터페이스를 제어할 수 있다. 그리고, 프로세서(140)는 수신된 이전의 발화 관련 정보와 입력된 발화를 기반으로 도메인 정보 및 의도 정보를 추출하고, 추출된 도메인 정보 및 의도 정보를 기반으로 응답 결과를 획득하여 출력하도록 스피커(130)를 제어할 수 있다.
프로세서(140)는 외부 장치로부터 수신된 이전의 발화 관련 정보에 포함된 타임스탬프에 기초하여 가장 최근의 발화 관련 정보를 식별할 수 있다. 프로세서(140)는 식별된 가장 최근의 발화 관련 정보에 기초하여 도메인 정보 및 의도 정보를 추출할 수 있다. 또한, 프로세서(140)는 식별된 가장 최근의 발화 관련 정보에 기초하여 입력된 발화가 루트 발화인지 연속 발화인지 식별할 수 있다. 예를 들어, 연속 발화는 메타 커맨드 발화, 프롬프트 발화 또는 시퀀스 발화 등을 포함할 수 있다. 입력된 발화가 메타 커맨드 발화 또는 프롬프트 발화인 경우, 프로세서(140)는 입력된 발화에 기초하여 대응되는 동작을 수행하고 동작에 대한 응답 결과를 출력하도록 상기 스피커(130)를 제어할 수 있다. 입력된 발화가 시퀀스 발화인 경우, 프로세서(140)는 추출된 도메인 정보, 의도 정보 및 입력된 발화를 기반으로 응답 결과를 획득하여 출력하도록 스피커(130)를 제어할 수 있다.
프로세서(140)는 입력된 발화에 특정 정보가 포함된 경우, 특정 정보에 대응되는 동작을 수행할 수 있다. 예를 들어, 입력된 발화에 대상 장치의 이름 정보가 포함된 경우, 프로세서(140)는 입력된 발화를 대상 장치로 전송하도록 통신 인터페이스(120)를 제어할 수 있다. 입력된 발화에 대상 장치의 위치에 대한 정보 및 도메인에 대한 정보가 포함된 경우, 프로세서(140)는 발화에 포함된 위치에 배치된 대상 장치 중 도메인을 포함하는 하나의 대상 장치로 입력된 발화를 전송하도록 통신 인터페이스(120)를 제어할 수 있다. 또한, 프로세서(140)는 추출된 도메인 정보가 전자 장치(100) 자신이 수행할 수 없는 도메인 정보인 경우, 식별된 가장 최근의 발화 관련 정보를 전송한 대상 장치로 입력된 발화를 전송하도록 통신 인터페이스(120)를 제어할 수 있다.
도 2에는 도시되지 않았으나, 전자 장치(100)는 메모리(미도시)를 포함할 수 있다. 메모리는 전자 장치(100)의 기능을 수행하는 데이터 등을 저장하고, 전자 장치(100)에서 구동되는 프로그램, 명령어 등을 저장할 수 있다. 그리고, 메모리는 자신 및 주변의 전자 장치에 대한 정보, 전자 장치(100)로 입력된 사용자의 발화와 관련된 발화 관련 정보 등을 저장할 수 있다. 또한, 메모리는 사용자의 발화를 식별하고 처리하는 모듈을 저장할 수 있다. 예를 들어, 메모리에 저장된 모듈은 디바이스/도메인 디스패처(device/domain dispatcher), 디바이스 분류 모듈(device classifier), 도메인 분류 모듈(domain classifier), 의도 분류 모듈(intent classifier), 히스토리 검색 모듈(history discovery), 타겟 장치 선택 모듈(target device selector), 도메인(domain) 등을 포함할 수 있다. 메모리에 저장된 각 모듈은 프로세서로 로딩되어 사용자의 발화를 식별하고 처리할 수 있다. 일 실시 예로서, 메모리는 롬, 램, HDD, SSD, 메모리 카드 등의 타입으로 구현될 수 있다.
도 3은 본 개시의 다양한 실시 예에 따른 프로세서의 구성을 설명하는 도면이다.
도 3을 참조하면, 프로세서(140)는 디바이스/도메인 디스패처(예를 들어, 프로세싱 회로 및/또는 실행 가능한 프로그램 요소)(141), 디바이스 분류 모듈(예를 들어, 프로세싱 회로 및/또는 실행 가능한 프로그램 요소)(142), 도메인 분류 모듈(예를 들어, 프로세싱 회로 및/또는 실행 가능한 프로그램 요소)(143), 의도 분류 모듈(예를 들어, 프로세싱 회로 및/또는 실행 가능한 프로그램 요소)(144), 히스토리 검색 모듈(예를 들어, 프로세싱 회로 및/또는 실행 가능한 프로그램 요소)(145), 타겟 장치 선택 모듈(예를 들어, 프로세싱 회로 및/또는 실행 가능한 프로그램 요소)(146), 도메인(147-1, 147-n) 등을 포함할 수 있다.
디바이스/도메인 디스패처(141)는 다양한 프로세싱 회로 및/또는 실행 가능한 프로그램 요소를 포함하고, 입력된 사용자의 발화를 분석할 수 있다. 예를 들어, 디바이스/도메인 디스패처(141)는 입력된 사용자의 발화로부터 전자 장치 타입, 전자 장치의 위치 정보, 도메인 정보 등을 식별할 수 있다.
디바이스 분류 모듈(142)은 다양한 프로세싱 회로 및/또는 실행 가능한 프로그램 요소를 포함하고, 루트 분류 모듈(root classifier)(142-1) 및 연속 분류 모듈(continuation classifier)(142-2)을 포함할 수 있다. 디바이스 분류 모듈(142)은 식별된 발화 관련 정보에 기초하여 입력된 발화가 루트 발화인지 또는 연속 발화인지 식별할 수 있다. 또한, 디바이스 분류 모듈(142)은 입력된 발화를 해석할 수 있는 전자 장치를 식별할 수 있다. 예를 들어, 디바이스 분류 모듈(142)은 입력된 발화가 연속 발화이고 식별된 발화 관련 정보가 태스크 완료 상태인 경우, 입력된 발화를 시퀀스 발화로 식별할 수 있다. 태스크 완료 상태는 이전 태스크가 존재하였고, 이전 태스크가 완료된 태스크라는 것을 의미할 수 있다. 따라서, 디바이스 분류 모듈(142)은 입력된 발화를 연속 발화 중 시퀀스 발화로 식별할 수 있다. 또한, 디바이스 분류 모듈(142)은 식별된 발화 관련 정보를 전송한 외부 장치를 식별할 수 있다.
입력된 발화에 대상 장치에 대한 정보가 포함되지 않은 경우, 도메인 분류 모듈(143)은 저장된 발화 관련 정보 및 발화에 포함된 도메인 정보에 기초하여 입력된 발화를 해석할 수 있는지 여부를 식별할 수 있다. 도메인 분류 모듈(143)은 다양한 프로세싱 회로 및/또는 실행 가능한 프로그램 요소를 포함하고, 루트 분류 모듈(143-1) 및 연속 분류 모듈(143-2)를 포함할 수 있다. 따라서, 도메인 분류 모듈(143)도 저장된 발화 관련 정보에 기초하여 입력된 발화가 루트 발화인지 또는 연속 발화인지 식별할 수 있다. 예를 들어, 도메인 분류 모듈(143)은 입력된 발화가 연속 발화이고 저장된 발화 관련 정보가 태스크 완료 상태인 경우, 입력된 발화를 시퀀스 발화로 식별할 수 있다. 전자 장치(100)는 도메인 분류 모듈(143)과 함께 의도 분류 모듈(144)을 이용하여 입력된 발화를 해석할 수 있는지 여부를 식별할 수 있다
의도 분류 모듈(144)은 다양한 프로세싱 회로 및/또는 실행 가능한 프로그램 요소를 포함하고, 입력된 발화에 포함된 의도 정보에 기초하여 입력된 발화를 해석할 수 있는지 여부를 식별할 수 있다. 즉, 전자 장치(100)는 도메인 분류 모듈(143) 및 의도 분류 모듈(144)를 이용하여 입력된 발화를 해석할 수 있는지 여부를 식별할 수 있다.
예를 들어, “내일은?”이라는 사용자의 발화에는 도메인 및 의도에 대한 정보가 포함되지 않았다. 입력된 발화가 해석 불가로 식별되는 경우, 전자 장치(100)는 이전의 발화 관련 정보를 요청하는 신호를 복수의 전자 장치로 브로드캐스팅할 수 있다.
히스토리 검색 모듈(145)은 다양한 프로세싱 회로 및/또는 실행 가능한 프로그램 요소를 포함하고, 수신된 발화 관련 정보 중 일정한 기준에 따라 입력된 발화와 관련된 하나의 발화 관련 정보를 식별할 수 있다. 예를 들어, 전자 장치(100)는 수신된 발화 관련 정보 중 타임스탬프가 가장 최근인 발화 관련 정보를 입력된 발화와 관련된 발화 관련 정보로 식별할 수 있다. 예를 들어, 제1 전자 장치의 발화 관련 정보에는 가장 최근의 타임스탬프가 포함될 수 있다. 따라서, 전자 장치는 제1 전자 장치가 전송한 발화 관련 정보를 입력된 발화와 관련된 발화 관련 정보로 식별할 수 있다. 또는, 전자 장치는 자신의 위치 정보를 함께 고려하여 발화 관련 정보를 식별할 수 있다.
타겟 장치 선택 모듈(146)은 다양한 프로세싱 회로 및/또는 실행 가능한 프로그램 요소를 포함하고, 식별된 발화 관련 정보를 전송한 제1 전자 장치를 대상 장치로 식별할 수 있다. 따라서, 전자 장치(100)는 입력된 발화를 전송할 필요가 있는 경우, 대상 장치로 식별된 제1 전자 장치로 입력된 발화를 전송할 수 있다.
전자 장치(100)는 스스로 입력된 발화를 처리할 수 있다. 전자 장치(100)는 복수의 도메인(147-1, 147-n)을 포함할 수 있다. 전자 장치(100)가 입력된 발화를 처리하는 도메인(147-1)을 포함하는 경우, 입력된 발화를 처리하는 도메인(147-1)에 기초하여 입력된 발화로부터 의도(intent) 및 엔티티(entity)를 식별하고, 입력된 발화에 대응되는 응답을 출력할 수 있다. 도메인(147-1)은 사용자의 발화를 처리할 수 있는 발화 처리 요소일 수 있다. 일 실시 예로서, 도메인(147-1)은 기상 도메인, 지역 정보 도메인, 음악 도메인, 영상 도메인 등과 같이 서비스에 따라 분류될 수 있다. 또는, 도메인(147-1)은 a 어플리케이션, b 어플리케이션, c 어플리케이션 등과 같이 어플리케이션에 따라 분류될 수 있다. 또는, 도메인(147-1)은 TV 도메인, 냉장고 도메인, 스피커 도메인 등과 같이 디바이스에 따라 분류될 수 있다. 예를 들어, 도메인은 캡슐, 서비스 카테고리 등으로 지칭될 수도 있다.
도메인(147-1)은 의도 식별기(1481), 엔티티 추출기(1482) 및 실행기(1483)를 포함할 수 있다. 의도 식별기(1481)는 다양한 프로세싱 회로 및/또는 실행 가능한 프로그램 요소를 포함하고, 사용자가 요청하는 서비스(사용자의 의도)를 식별하고, 엔티티 추출기(1482)는 다양한 프로세싱 회로 및/또는 실행 가능한 프로그램 요소를 포함하고, 사용자가 요청하는 서비스의 세부 정보(엔티티)를 식별할 수 있다. 일 실시 예로서, 사용자가 “오늘 서울 날씨 알려줘”라고 발화한 경우, 기상 도메인이 발화를 처리하여 응답할 수 있다. 전자 장치(100)는 사용자의 발화로부터 “날씨”라는 단어를 획득할 수 있다. 의도 식별기(1481)는 사용자가 날씨 정보를 요청한다는 것을 식별할 수 있다. 또한, 전자 장치(100)는 사용자의 발화로부터 “오늘”, “서울”이라는 단어를 획득할 수 있다. 엔티티 추출기(1482)는 사용자가 시간적으로 오늘, 장소적으로 서울에 관한 정보를 요청한다는 것을 식별할 수 있다. 상술한 의도(intent)는 목적(goal), 엔티티(entity)는 슬롯(slot) 등으로 지칭될 수 있다. 입력된 발화를 처리할 수 있는 도메인을 포함하는 전자 장치 의도 식별기(1481)에서 서비스를 식별하고 엔티티 추출기(1482)에서 세부 정보를 식별한 후, 실행기(1483)를 통해 응답을 출력할 수 있다. 일 실시 예로서, 전자 장치(100)는 “서울 날씨 알려줘”라는 사용자의 발화에 대응하여 “맑고, 섭씨 22도 입니다.”라고 응답할 수 있다.
지금까지 전자 장치의 구성의 예를 설명하였다. 아래에서는 전자 장치의 동작 과정의 예를 구체적으로 설명한다.
도 4는 본 개시의 다양한 실시 예에 따른 전자 장치의 동작을 설명하는 흐름도이고, 도 5는 본 개시의 다양한 실시 예에 따른 대상 장치를 판단하는 과정을 설명하는 도면이며, 도 6은 본 개시의 다양한 실시 예에 따른 대상 장치로 발화를 전달하는 과정을 설명하는 도면이고, 도 7a 및 도 7b는 본 개시의 다양한 실시 예에 따른 전자 장치가 발화를 해석하는 과정을 설명하는 도면이며, 도 8은 본 개시의 다양한 실시 예에 따른 발화에 포함된 정보를 판단하는 과정을 설명하는 도면이고, 도 9a 및 도 9b는 본 개시의 다양한 실시 예에 따른 타 전자 장치에서 처리할 수 있는 발화인지 판단하는 과정을 설명하는 도면이다. 도 4 내지 도 9b를 참조하여 설명한다.
도 4를 참조하면, 전자 장치는 사용자의 발화를 입력받을 수 있다(S105). 전자 장치는 사용자의 발화에 기초하여 대상 장치를 판단할 수 있다(S110). 도 5에 도시된 일 실시 예와 같이, 전자 장치는 “거실 TV에서 AAA 서비스로 최신 영화 검색해 줘”라는 사용자의 발화를 입력받을 수 있다. 전자 장치의 디바이스/도메인 디스패처(141)는 입력된 사용자의 발화를 분석할 수 있다. 전자 장치는 각 장치의 정보 및 각 장치에서 제공되는 도메인 정보를 메모리(150)에 저장할 수 있다. 그리고, 전자 장치의 디바이스/도메인 디스패처(141)는 저장된 정보 및 입력된 발화에 기초하여 입력된 사용자의 발화로부터 전자 장치의 타입은 TV, 전자 장치의 위치는 거실, 서비스는 AAA 서비스, 사용자 발화는 최신 영화 검색이라고 분석할 수 있다. 즉, 전자 장치는 거실에 위치한 TV를 대상 장치로 판단할 수 있다.
전자 장치가 대상 장치를 판단할 수 있는 경우(S110-Y), 대상 장치를 선택할 수 있다(S115). 그리고, 전자 장치는 선택된 대상 장치로 입력된 발화를 전달할 수 있다(S120). 도 6에 도시된 바와 같이, 전자 장치는 분석된 정보에 기초하여 위치를 기반으로 대상 장치를 검색할 수 있다(S210). 만일, 동일 공간에 다수의 대상 장치가 존재하는 경우, 전자 장치는 사용자의 선택에 따라 하나의 대상 장치를 선택할 수 있다(S220). 또는, 분석된 위치에 대상 장치가 존재하지 않는 경우, 전자 장치는 다른 공간을 포함해서 대상 장치를 재검색 할 수도 있다. 대상 장치가 검색되면, 전자 장치는 통신 인터페이스(120)를 통해 사용자의 발화(또는, 발화 관련 정보)를 대상 장치로 전송할 수 있다.
만일, 전자 장치가 대상 장치를 판단할 수 없는 경우(S110-N), 발화가 입력된 전자 장치(listener)에서 해석할 수 있는지 판단할 수 있다(S125). 도 7a에 도시된 바와 같이, 전자 장치는 도메인 분류 모듈(143) 및 의도 분류 모듈(144)을 이용하여 입력된 발화의 해석 가부를 판단할 수 있다. 도 7b에 도시된 바와 같이, 전자 장치는 입력된 발화의 도메인을 불가(reject)로 판단하고, 저장된 발화 관련 정보에 기초하여 발화 태스크와 관련된 정보를 아이들, 태스크 완료로 판단하는 경우, 입력된 발화를 해석할 수 없는 발화로 판단할 수 있다(reject). 또는, 전자 장치는 입력된 발화의 도메인을 가능(accept)로 판단하더라도, 인텐트를 불가(reject)로 판단하고 발화 태스크와 관련된 정보를 아이들, 태스크 완료로 판단하는 경우, 입력된 발화를 해석할 수 없는 발화로 판단할 수 있다(reject).
전자 장치가 입력된 발화를 해석할 수 있는 경우(S125-Y), 입력된 발화에 모든 정보를 포함하는지 판단할 수 있다(S130). 도 8에 도시된 바와 같이, 전자 장치는 슬롯 추출 모듈(또는, 엔티티 추출 모듈)(1491) 및 역할 라벨러(role labeler)(1492)를 이용하여 판단할 수 있다. 슬롯 추출 모듈(1491)은 다양한 프로세싱 회로 및/또는 실행 가능한 프로그램 요소를 포함하고, 엔티티 추출기와 동일한 역할을 수행할 수 있다. 역할 라벨러(1492)는 다양한 프로세싱 회로 및/또는 실행 가능한 프로그램 요소를 포함하고, 입력된 발화의 구조 및 의미를 판단할 수 있다. 예를 들어, 역할 라벨러(1492)는 입력된 발화로부터 대상, 도구, 위치, 시간, 방법, 원인 등을 식별할 수 있다. 전자 장치는 저장된 발화 관련 정보(또는, 발화 태스크와 관련된 정보)에 기초하여 입력된 발화를 처리할 수 있는 모든 정보가 포함되어 있는지 판단할 수 있다.
입력된 발화에 모든 정보가 포함된 경우(S130-Y), 전자 장치는 입력된 발화를 해석하고 응답 결과를 획득하여 출력할 수 있다(S135). 또는, 입력된 발화에 모든 정보가 포함되지 않은 경우(S130-N), 전자 장치는 사용자에게 재질의(re-asking)를 할 수 있다(S140). 도 8에 도시된 바와 같이, 입력된 발화가 “채널 변경해 줘”일 때, 전자 장치는 어느 채널로 변경할지에 대한 정보가 부족하다고 판단할 수 있다. 이 경우, 전자 장치는 연산 결과를 자연어로 표현하는 NLG(Natural Language Generation)(예를 들어, 다양한 프로세싱 회로 및/또는 실행 가능한 프로그램 요소를 포함)(1493)를 통해 사용자에게 추가 정보를 문의할 수 있다.
전자 장치가 입력된 발화를 해석할 수 없는 경우(S125-N), 타 장치에서 처리할 수 있는지 판단할 수 있다(S145). 도 9a에 도시된 바와 같이, 전자 장치는 디바이스 분류 모듈(142)을 이용하여 타 장치에서 처리할 수 있는지 판단할 수 있다. 즉, 전자 장치는 외부 전자 장치로부터 이전의 발화 관련 정보를 수신할 수 있다. 그리고, 전자 장치는 수신된 이전의 발화 관련 정보 중 가장 최근의 발화 관련 정보를 식별할 수 있다. 도 9b에 도시된 일 실시 예와 같이, 전자 장치는 디바이스 분류 모듈(142) 및 식별된 발화 관련 정보에 기초하여 타 장치에서 처리할 수 있는지 판단할 수 있다.
입력된 발화가 타 장치에서 처리될 수 있는 경우(S145-Y), 전자 장치는 입력된 발화를 타 장치로 전송할 수 있다(S150). 즉, 전자 장치는 타겟 장치 선택 모듈(146)을 이용하여 대상 장치(타겟 장치)를 선택할 수 있다. 그리고, 전자 장치는 통신 인터페이스(120)를 통해 입력된 발화(또는, 입력된 발화 관련 정보)를 대상 장치로 전송할 수 있다. 전자 장치로부터 입력된 발화를 수신한 대상 장치는 입력된 발화를 처리하여 응답 결과를 획득하고, 음성으로 출력할 수 있다. 또는, 대상 장치는 획득된 응답 결과를 전자 장치로 전송하고, 전자 장치가 수신한 응답 결과를 음성으로 출력할 수도 있다. 입력된 발화가 타 장치에서도 처리될 수 없는 경우(S145-N), 전자 장치는 입력된 발화에 대한 응답을 거절할 수 있다(S155).
도 10은 본 개시의 다양한 실시 예에 따른 발화의 종류를 판단하는 과정을 설명하는 도면이다.
도 10을 참조하면, 디바이스 분류 모듈은 발화를 입력받는다. 디바이스 분류 모듈은 패턴 기반 분류기, 인공 신경망 기법 등 다양한 방식을 이용하여 학습될 수 있다. 그리고, 디바이스 분류 모듈은 대상 장치의 예측 점수가 임계 값과 비교할 수 있다(S310). 디바이스 분류 모듈은 예측 점수가 임계 값보다 크거나 같은 경우(S310-Y) 연속 발화(이전 도메인과 동일)로 판단할 수 있다(S320). 디바이스 분류 모듈은 입력된 발화를 연속 발화로 판단하고, 후보 대상 장치를 출력할 수 있다. 또는, 디바이스 분류 모듈은 예측 점수가 임계 값보다 작은 경우(S310-N) 루트 발화로 판단할 수 있다(S330). 디바이스 분류 모듈은 도메인을 예측하거나 거절 여부를 판단하고, 결과를 출력할 수 있다.
지금까지 전자 장치의 구성 및 동작 과정의 다양한 실시 예를 설명하였다. 아래에서는 전자 장치의 제어 방법을 설명한다.
도 11은 본 개시의 다양한 실시 예에 따른 전자 장치의 제어 방법을 설명하는 흐름도이다.
도 11을 참조하면, 전자 장치는 사용자의 발화를 입력받고(S410), 입력된 발화를 분석하여 도메인 정보 및 의도 정보의 추출 가부를 판단한다(S420). 전자 장치는 도메인 정보 및 의도 정보 중 적어도 하나가 추출되지 않은 경우, 이전의 발화 관련 정보를 요청하는 신호를 전자 장치와 동일 네트워크에 연결된 적어도 하나 이상의 외부 장치로 브로드캐스팅한다(S430). 입력된 발화에 대상 장치의 이름 정보가 포함된 경우, 전자 장치는 입력된 발화를 대상 장치로 전송할 수 있다. 또는, 입력된 발화에 대상 장치의 위치에 대한 정보 및 도메인에 대한 정보가 포함된 경우, 전자 장치는 위치에 배치된 대상 장치 중 도메인을 포함하는 하나의 대상 장치로 입력된 발화를 전송할 수도 있다.
전자 장치는 적어도 하나의 외부 장치로부터 이전의 발화 관련 정보를 수신하고(S440), 수신된 이전의 발화 관련 정보와 입력된 발화를 기반으로 도메인 정보 및 의도 정보를 추출한다(S450). 전자 장치는 적어도 하나의 외부 장치로부터 수신된 이전의 발화 관련 정보에 포함된 타임스탬프에 기초하여 가장 최근의 발화 관련 정보를 식별할 수 있다. 그리고, 전자 장치는 식별된 가장 최근의 발화 관련 정보에 기초하여 도메인 정보 및 상기 의도 정보를 추출할 수 있다. 전자 장치는 식별된 가장 최근의 발화 관련 정보에 기초하여 입력된 발화가 루트 발화인지 연속 발화인지 식별할 수 있다. 일 실시 예로서, 연속 발화는 메타 커맨드 발화, 프롬프트 발화 또는 시퀀스 발화를 포함할 수 있다.
전자 장치는 추출된 도메인 정보가 전자 장치에서 수행되는 도메인 정보가 아닌 경우, 식별된 가장 최근의 발화 관련 정보를 전송한 대상 장치로 입력된 발화를 전송할 수 있다.
전자 장치는 추출된 도메인 정보 및 의도 정보를 기반으로 응답 결과를 획득하여 출력한다(S460). 예를 들어, 전자 장치는 입력된 발화가 메타 커맨드 발화 또는 프롬프트 발화인 경우, 입력된 발화에 기초하여 대응되는 동작을 수행하고 동작에 대한 응답 결과를 출력할 수 있다. 또는, 전자 장치는 입력된 발화가 시퀀스 발화인 경우, 추출된 도메인 정보, 의도 정보 및 입력된 발화를 기반으로 응답 결과를 획득하여 출력할 수 있다.
상술한 다양한 실시 예에 따른 전자 장치의 제어 방법은 컴퓨터 프로그램 제품으로 제공될 수도 있다. 컴퓨터 프로그램 제품은 S/W 프로그램 자체 또는 S/W 프로그램이 저장된 비일시적 판독 가능 매체(non-transitory computer readable medium)를 포함할 수 있다.
비일시적 판독 가능 매체란 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 예를 들어, 상술한 다양한 어플리케이션 또는 프로그램들은 CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등과 같은 비일시적 판독 가능 매체에 저장되어 제공될 수 있다.
또한, 이상에서는 본 개시의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 개시는 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 개시의 요지를 벗어남이 없이 당해 개시가 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 개시의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안될 것이다.

Claims (15)

  1. 전자 장치의 제어 방법에 있어서,
    발화를 입력받는 단계;
    상기 입력된 발화를 분석하여 도메인 정보 및 의도(intent) 정보가 추출 가능한지 판단하는 단계;
    상기 판단 결과, 도메인 정보 및 의도 정보 중 적어도 하나가 추출되지 않은 경우, 이전의 발화 관련 정보를 요청하는 신호를 상기 전자 장치와 동일 네트워크에 연결된 적어도 하나 이상의 외부 장치로 브로드캐스팅하는 단계;
    상기 적어도 하나의 외부 장치로부터 상기 이전의 발화 관련 정보를 수신하는 단계;
    상기 수신된 이전의 발화 관련 정보와 상기 입력된 발화를 기반으로 도메인 정보 및 의도 정보를 추출하는 단계; 및
    상기 추출된 도메인 정보 및 의도 정보를 기반으로 응답 결과를 획득하여 출력하는 단계;를 포함하는 전자 장치의 제어 방법.
  2. 제1항에 있어서,
    상기 입력된 발화에 대상 장치의 이름 정보가 포함된 경우, 상기 입력된 발화를 상기 대상 장치로 전송하는 단계;를 더 포함하는 전자 장치의 제어 방법.
  3. 제1항에 있어서,
    상기 입력된 발화에 대상 장치의 위치에 대한 정보 및 도메인에 대한 정보가 포함된 경우, 상기 위치에 배치된 대상 장치 중 상기 도메인을 포함하는 하나의 대상 장치로 상기 입력된 발화를 전송하는 단계;를 더 포함하는 전자 장치의 제어 방법.
  4. 제1항에 있어서,
    상기 도메인 정보 및 의도 정보를 추출하는 단계는,
    상기 적어도 하나의 외부 장치로부터 수신된 상기 이전의 발화 관련 정보에 포함된 타임스탬프에 기초하여 가장 최근의 발화 관련 정보를 식별하고, 식별된 가장 최근의 발화 관련 정보에 기초하여 상기 도메인 정보 및 상기 의도 정보를 추출하는, 전자 장치의 제어 방법.
  5. 제4항에 있어서,
    상기 식별된 가장 최근의 발화 관련 정보에 기초하여 상기 입력된 발화가 루트(root) 발화인지 연속(continuation) 발화인지 식별하는 단계;를 더 포함하는 전자 장치의 제어 방법.
  6. 제5항에 있어서,
    상기 연속 발화는,
    메타 커맨드(meta command) 발화, 프롬프트(prompt) 발화 또는 시퀀스(sequence) 발화 중 적어도 하나를 포함하는, 전자 장치의 제어 방법.
  7. 제5항에 있어서,
    상기 출력하는 단계는,
    상기 입력된 발화가 메타 커맨드 발화 또는 프롬프트 발화인 경우, 상기 입력된 발화에 기초하여 대응되는 동작을 수행하고 상기 동작에 대한 응답 결과를 출력하는, 전자 장치의 제어 방법.
  8. 제5항에 있어서,
    상기 출력하는 단계는,
    상기 입력된 발화가 시퀀스 발화인 경우, 상기 추출된 도메인 정보, 의도 정보 및 입력된 발화를 기반으로 응답 결과를 획득하여 출력하는, 전자 장치의 제어 방법.
  9. 제4항에 있어서,
    상기 추출된 도메인 정보가 상기 전자 장치에서 수행되는 도메인 정보가 아닌 경우, 상기 식별된 가장 최근의 발화 관련 정보를 전송한 대상 장치로 상기 입력된 발화를 전송하는 단계;를 더 포함하는 전자 장치의 제어 방법.
  10. 전자 장치에 있어서,
    발화를 입력받는 마이크;
    외부 장치와 통신을 수행하는 통신 회로를 포함하는 통신 인터페이스;
    스피커; 및
    프로세서;를 포함하고,
    상기 프로세서는,
    상기 입력된 발화를 분석하여 도메인 정보 및 의도(intent) 정보가 추출 가능한지 판단하고,
    상기 판단 결과, 도메인 정보 및 의도 정보 중 적어도 하나가 추출되지 않은 경우, 이전의 발화 관련 정보를 요청하는 신호를 상기 전자 장치와 동일 네트워크에 연결된 적어도 하나 이상의 외부 장치로 브로드캐스팅하고, 상기 적어도 하나의 외부 장치로부터 상기 이전의 발화 관련 정보를 수신하도록 상기 통신 인터페이스를 제어하며,
    상기 수신된 이전의 발화 관련 정보와 상기 입력된 발화를 기반으로 도메인 정보 및 의도 정보를 추출하고,
    상기 추출된 도메인 정보 및 의도 정보를 기반으로 응답 결과를 획득하여 출력하도록 상기 스피커를 제어하는, 전자 장치.
  11. 제10항에 있어서,
    상기 프로세서는,
    상기 입력된 발화에 대상 장치의 이름 정보가 포함된 경우, 상기 입력된 발화를 상기 대상 장치로 전송하도록 상기 통신 인터페이스를 제어하는, 전자 장치.
  12. 제10항에 있어서,
    상기 프로세서는,
    상기 입력된 발화에 대상 장치의 위치에 대한 정보 및 도메인에 대한 정보가 포함된 경우, 상기 위치에 배치된 대상 장치 중 상기 도메인을 포함하는 하나의 대상 장치로 상기 입력된 발화를 전송하도록 상기 통신 인터페이스를 제어하는, 전자 장치.
  13. 제10항에 있어서,
    상기 프로세서는,
    상기 적어도 하나의 외부 장치로부터 수신된 상기 이전의 발화 관련 정보에 포함된 타임스탬프에 기초하여 가장 최근의 발화 관련 정보를 식별하고, 식별된 가장 최근의 발화 관련 정보에 기초하여 상기 도메인 정보 및 상기 의도 정보를 추출하는, 전자 장치.
  14. 제13항에 있어서,
    상기 프로세서는,
    상기 식별된 가장 최근의 발화 관련 정보에 기초하여 상기 입력된 발화가 루트 발화인지 연속 발화인지 식별하는, 전자 장치.
  15. 발화를 입력받고, 상기 입력된 발화를 분석하여 도메인 정보 및 의도(intent) 정보가 추출 가능한지 판단하며, 도메인 정보 및 의도 정보 중 적어도 하나가 추출되지 않은 경우, 이전의 발화 관련 정보를 요청하는 신호를 동일 네트워크에 연결된 적어도 하나 이상의 외부 장치로 브로드캐스팅하는 제1 전자 장치; 및
    상기 제1 전자 장치로부터 상기 이전의 발화 관련 정보를 요청하는 신호를 수신하고, 상기 이전의 발화 관련 정보를 상기 제1 전자 장치로 전송하는 제2 전자 장치;를 포함하고,
    상기 제1 전자 장치는,
    상기 제2 전자 장치를 포함하는 적어도 하나의 외부 장치로부터 상기 이전의 발화 관련 정보를 수신하고, 상기 수신된 이전의 발화 관련 정보와 상기 입력된 발화를 기반으로 도메인 정보 및 의도 정보를 추출하며, 상기 추출된 도메인 정보 및 의도 정보를 기반으로 응답 결과를 획득하여 출력하는, 시스템.
PCT/KR2021/006973 2020-11-11 2021-06-03 전자 장치, 시스템 및 그 제어 방법 WO2022102893A1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202180053194.XA CN116097348A (zh) 2020-11-11 2021-06-03 电子装置、系统及其控制方法
EP21892063.5A EP4141864A4 (en) 2020-11-11 2021-06-03 ELECTRONIC DEVICE, ASSOCIATED CONTROL SYSTEM AND METHOD
US17/436,442 US11915697B2 (en) 2020-11-11 2021-06-03 Electronic device, system and control method thereof

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2020-0150340 2020-11-11
KR20200150340 2020-11-11
KR10-2021-0014058 2021-02-01
KR1020210014058A KR20220064273A (ko) 2020-11-11 2021-02-01 전자 장치, 시스템 및 그 제어 방법

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US17/436,442 Continuation US11915697B2 (en) 2020-11-11 2021-06-03 Electronic device, system and control method thereof

Publications (1)

Publication Number Publication Date
WO2022102893A1 true WO2022102893A1 (ko) 2022-05-19

Family

ID=81601417

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2021/006973 WO2022102893A1 (ko) 2020-11-11 2021-06-03 전자 장치, 시스템 및 그 제어 방법

Country Status (4)

Country Link
US (2) US11915697B2 (ko)
EP (1) EP4141864A4 (ko)
CN (1) CN116097348A (ko)
WO (1) WO2022102893A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12118997B1 (en) * 2023-05-16 2024-10-15 Roku, Inc. Use of relative time of receipt of voice command as basis to control response to voice command

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060088512A (ko) * 2005-02-01 2006-08-04 삼성전자주식회사 음성인식용 문법망 생성장치 및 방법과 이를 이용한 대화체음성인식장치 및 방법
KR20160132748A (ko) * 2015-05-11 2016-11-21 삼성전자주식회사 전자 장치 및 그 제어 방법
KR20190014569A (ko) * 2017-05-16 2019-02-12 애플 인크. 디지털 어시스턴트 서비스의 원거리 확장
KR20190118995A (ko) * 2019-10-01 2019-10-21 엘지전자 주식회사 음성 처리 방법 및 음성 처리 장치
KR20200109954A (ko) * 2019-03-15 2020-09-23 삼성전자주식회사 IoT 기기의 위치 추론 방법, 이를 지원하는 서버 및 전자 장치

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9812128B2 (en) * 2014-10-09 2017-11-07 Google Inc. Device leadership negotiation among voice interface devices
US9953648B2 (en) 2015-05-11 2018-04-24 Samsung Electronics Co., Ltd. Electronic device and method for controlling the same
CN106469040B (zh) 2015-08-19 2019-06-21 华为终端有限公司 通信方法、服务器及设备
US10026399B2 (en) * 2015-09-11 2018-07-17 Amazon Technologies, Inc. Arbitration between voice-enabled devices
KR102502220B1 (ko) 2016-12-20 2023-02-22 삼성전자주식회사 전자 장치, 그의 사용자 발화 의도 판단 방법 및 비일시적 컴퓨터 판독가능 기록매체
WO2018147687A1 (en) 2017-02-10 2018-08-16 Samsung Electronics Co., Ltd. Method and apparatus for managing voice-based interaction in internet of things network system
US10546583B2 (en) * 2017-08-30 2020-01-28 Amazon Technologies, Inc. Context-based device arbitration
KR101972545B1 (ko) 2018-02-12 2019-04-26 주식회사 럭스로보 음성 명령을 통한 위치 기반 음성 인식 시스템
US11145303B2 (en) 2018-03-29 2021-10-12 Samsung Electronics Co., Ltd. Electronic device for speech recognition and control method thereof
GB2577879B (en) 2018-10-08 2022-08-24 B & W Group Ltd Content playback system
US11508378B2 (en) 2018-10-23 2022-11-22 Samsung Electronics Co., Ltd. Electronic device and method for controlling the same
KR20200052804A (ko) 2018-10-23 2020-05-15 삼성전자주식회사 전자 장치 및 전자 장치의 제어 방법
KR20200047311A (ko) 2018-10-24 2020-05-07 삼성전자주식회사 복수의 장치들이 있는 환경에서의 음성 인식 방법 및 장치
WO2020085769A1 (en) 2018-10-24 2020-04-30 Samsung Electronics Co., Ltd. Speech recognition method and apparatus in environment including plurality of apparatuses
US20200349940A1 (en) 2019-05-02 2020-11-05 Samsung Electronics Co., Ltd. Server for determining target device based on speech input of user and controlling target device, and operation method of the server

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060088512A (ko) * 2005-02-01 2006-08-04 삼성전자주식회사 음성인식용 문법망 생성장치 및 방법과 이를 이용한 대화체음성인식장치 및 방법
KR20160132748A (ko) * 2015-05-11 2016-11-21 삼성전자주식회사 전자 장치 및 그 제어 방법
KR20190014569A (ko) * 2017-05-16 2019-02-12 애플 인크. 디지털 어시스턴트 서비스의 원거리 확장
KR20200109954A (ko) * 2019-03-15 2020-09-23 삼성전자주식회사 IoT 기기의 위치 추론 방법, 이를 지원하는 서버 및 전자 장치
KR20190118995A (ko) * 2019-10-01 2019-10-21 엘지전자 주식회사 음성 처리 방법 및 음성 처리 장치

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP4141864A4 *

Also Published As

Publication number Publication date
EP4141864A4 (en) 2023-11-22
US20240153503A1 (en) 2024-05-09
US11915697B2 (en) 2024-02-27
EP4141864A1 (en) 2023-03-01
CN116097348A (zh) 2023-05-09
US20220351723A1 (en) 2022-11-03

Similar Documents

Publication Publication Date Title
EP3379534B1 (en) Execution of voice commands in a multi-device system
WO2014069798A1 (en) Voice recognition apparatus and voice recognition method thereof
US10950230B2 (en) Information processing device and information processing method
WO2014051207A1 (en) Electronic device, server and control method thereof
WO2012036424A2 (en) Method and apparatus for performing microphone beamforming
WO2020145678A1 (en) System and method for multi-spoken language detection
WO2014073820A1 (en) Method and apparatus for voice recognition
WO2014106986A1 (en) Electronic apparatus controlled by a user's voice and control method thereof
WO2020078300A1 (zh) 一种终端投屏的控制方法和终端
CN109473095A (zh) 一种智能家居控制系统及控制方法
CN112492442A (zh) 一种蓝牙耳机的连接切换方法、装置、设备及存储介质
WO2022102893A1 (ko) 전자 장치, 시스템 및 그 제어 방법
WO2016129740A1 (ko) 사용자 패턴에 기반한 오류 db모듈을 적용한 임베디드 음성인식 처리방법 및 시스템
WO2021054671A1 (en) Electronic apparatus and method for controlling voice recognition thereof
WO2019103347A1 (ko) 전자장치 및 그 제어방법
CN106792048A (zh) 一种识别智能电视用户语音命令的方法和装置
WO2018117660A1 (en) Security enhanced speech recognition method and device
WO2023063718A1 (en) Method and system for device feature analysis to improve user experience
CN111538811A (zh) 一种用于自然语言内容标题消歧的方法、设备和系统
KR20220064273A (ko) 전자 장치, 시스템 및 그 제어 방법
WO2021091063A1 (ko) 전자장치 및 그 제어방법
US20180006869A1 (en) Control method and system, and electronic apparatus thereof
CN109473096A (zh) 一种智能语音设备及其控制方法
WO2020111398A1 (en) Electronic apparatus and controlling method thereof
WO2024005383A1 (en) Online speaker diarization using local and global clustering

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21892063

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021892063

Country of ref document: EP

Effective date: 20221123

NENP Non-entry into the national phase

Ref country code: DE