Electronic device and control method thereof
Through entity recognition model and artificial intelligence algorithms, the entities in the input statements are identified and corrected, and the problems of large data capacity and slow speed in the prior art are solved, and faster information acquisition is achieved.
Patent Information
- Application Number
- CN201980073089.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2018-11-05
- Filing Date
- 2019-10-29
- Publication Date
- 2025-08-26
- Estimated Expiration
- 2039-10-29
AI Technical Summary
The prior art requires a large amount of data capacity when providing location information and the information acquisition speed is slow, so it fails to effectively utilize context information.
The entity recognition model is used to learn through artificial intelligence algorithms, identify entities in the input statements and obtain search results corresponding to these entities, and reduce data demand based on context correction and information.
This improves the speed of information provision and reduces the required data capacity, and achieves more efficient information acquisition through the combination of entity recognition model and artificial intelligence algorithm.
Smart Images

Figure CN112970013B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to an electronic device and a control method thereof. For example, the present disclosure relates to an electronic device that provides information according to context and a control method thereof.
[0002] The present disclosure relates to an artificial intelligence (AI) system and its applications. The AI system uses machine learning algorithms to simulate the functions of the human brain, such as recognition and determination. Background Art
[0003] In recent years, artificial intelligence (AI) systems, which achieve human-level intelligence, have been used in various fields. AI systems are machines that learn, determine, and become intelligent. Unlike existing rule-based intelligent systems, AI systems improve their recognition rates and can more accurately understand user preferences with increasing use. Consequently, existing rule-based intelligent systems are gradually being replaced by AI systems based on deep learning.
[0004] AI technology may include machine learning (e.g., deep learning) and element technology that utilizes machine learning.
[0005] Machine learning, for example, can refer to algorithmic techniques that inherently classify / learn characteristics of input data. Elementary techniques, for example, can refer to techniques that utilize machine learning algorithms (including language understanding, visual understanding, reasoning / prediction, knowledge representation, motion control, etc.) to simulate functions such as recognition and determination in the human brain.
[0006] Examples of various fields in which AI technology can be applied are as follows. Language understanding, for example, may refer to technologies for recognizing, applying and / or processing human language or characters, and include natural language processing, machine translation, dialogue systems, question-answering, speech recognition or synthesis, etc. Visual understanding, for example, may refer to technologies for recognizing and processing objects as human vision, including object recognition, object tracking, image search, human recognition, scene understanding, spatial understanding, image enhancement, etc. Inference and prediction, for example, may refer to technologies for judging and logically inferring and predicting information, including knowledge-based and probability-based inference, optimization prediction, preference-based planning, recommendation, etc. Knowledge representation, for example, may refer to technologies for automating human experience information into knowledge data, including knowledge construction (data generation or classification), knowledge management (data utilization), etc. Motion control, for example, may refer to technologies for controlling the autonomous driving of vehicles and the movement of robots, including motion control (navigation, collision, driving), operational control (behavior control), etc.
[0007] In the prior art, extracting information from text requires a location information dictionary, a biographical dictionary, and an organizational name dictionary. This requires a large amount of capacity and takes a considerable amount of time to search the index. Furthermore, even if location information is extracted through extensive processes, the logic for providing users with information (maps, surrounding news, etc.) with a single click has not yet been commercialized.
[0008] Therefore, it is necessary to develop a method for providing useful information to users while reducing the required data capacity. Summary of the Invention
[0009] Technical issues
[0010] Embodiments of the present disclosure address the above disadvantages and other disadvantages not described above.
[0011] According to an exemplary aspect of the present disclosure, an electronic device and a control method thereof are provided, the electronic device being used to increase a speed of providing information according to a context and to reduce a required data capacity.
[0012] Solution to the problem
[0013] According to an exemplary embodiment, an electronic device includes a memory storing an entity recognition model, and a processor configured to control the electronic device to perform the following operations: identifying multiple entities included in an input sentence input based on the entity recognition model, obtaining search results corresponding to the multiple entities, and based on the multiple entities not corresponding to the search results, correcting and providing the input sentence based on the search results, wherein the entity recognition model can be obtained by learning through an artificial intelligence algorithm to extract multiple sample entities included in each of a plurality of sample conversations.
[0014] The processor may be configured to control the electronic device to identify an attribute of each of the plurality of entities, and identify whether the plurality of entities corresponds to the search result based on at least one of the plurality of identified attributes.
[0015] The processor may be configured to control the electronic device to provide a guide message indicating that the plurality of entities have errors based on the plurality of entities not corresponding to the search result.
[0016] The processor may be configured to control the electronic device to obtain search results corresponding to at least two entities having different attributes.
[0017] The processor may be configured to control the electronic device to obtain importance of each of the plurality of entities based on a context of the input sentence, and identify whether the remaining entities correspond to the search results based on an entity having the highest importance among the plurality of entities.
[0018] The processor may be configured to control the electronic device to recognize a plurality of words included in an input sentence, and recognize a plurality of entities in the plurality of words based on a context of the input sentence.
[0019] The processor may be configured to control the electronic device to identify a first word identified in the first sentence as one of the plurality of entities among the plurality of words based on that a second sentence following the first sentence in the input sentence is an affirmative sentence.
[0020] The processor may be configured to control the electronic device to not use a first word recognized in the first sentence among the plurality of words as the plurality of entities based on a second sentence following the first sentence in the input sentence being a negation sentence.
[0021] The processor may be configured to control the electronic device to correct and provide the input sentence based on the presence of an error in the input sentence.
[0022] The processor may be configured to control the electronic device to provide a plurality of entities for obtaining search results based on an input user command.
[0023] According to an exemplary embodiment, a method for controlling an electronic device includes: identifying multiple entities included in an input statement input based on an entity recognition model; obtaining search results corresponding to the multiple entities; and correcting and providing the input statement based on the search results based on the multiple entities not corresponding to the search results, wherein the entity recognition model can be obtained by learning through an artificial intelligence (AI) algorithm to include multiple sample entities in each of multiple sample conversations.
[0024] Providing may include identifying an attribute of each of the plurality of entities, and identifying whether the plurality of entities corresponds to the search result based on at least one of the plurality of identified attributes.
[0025] The providing may further include providing a guide message indicating that the plurality of entities have errors based on the plurality of entities not corresponding to the search results.
[0026] The obtaining may include obtaining search results corresponding to at least two entities having different attributes.
[0027] Providing may include obtaining importance of each entity of the plurality of entities based on a context of the input sentence, and identifying whether remaining entities correspond to the search result based on an entity having the highest importance among the plurality of entities.
[0028] The recognizing may include recognizing a plurality of words included in the input sentence, and recognizing a plurality of entities in the plurality of words based on a context of the input sentence.
[0029] The recognizing may include recognizing a first word recognized in the first sentence among the plurality of words as one of the plurality of entities based on a second sentence following the first sentence in the input sentence being an affirmative sentence.
[0030] The identifying may include not using a first word recognized in the first sentence among the plurality of words as one of the plurality of entities based on a second sentence following the first sentence in the input sentence being a negation sentence.
[0031] The providing may include correcting and providing the input statement based on an error in the input statement.
[0032] The method may further include providing a plurality of entities used for obtaining the search results based on the command being input.
[0033] Advantageous Effects of the Invention
[0034] According to various exemplary embodiments, the electronic device may increase the speed of providing information according to context and reduce required data capacity using an entity recognition model learned through an artificial intelligence algorithm. BRIEF DESCRIPTION OF THE DRAWINGS
[0035] The above and / or other aspects, features and advantages of certain embodiments of the present disclosure will become more apparent from the following detailed description taken in conjunction with the accompanying drawings, in which:
[0036] FIG1A is a block diagram illustrating an exemplary configuration of an electronic device according to an embodiment;
[0037] FIG1B is a block diagram showing an exemplary configuration of an electronic device according to an embodiment;
[0038] 2A , 2B, 2C, and 2D are diagrams illustrating an exemplary electronic device according to an embodiment;
[0039] 3A, 3B, 3C, and 3D are diagrams illustrating an exemplary error correction method according to an embodiment;
[0040] 4A and 4B are diagrams illustrating an exemplary error correction method according to another embodiment;
[0041] Figure 5 is a diagram illustrating an exemplary method for using context according to an embodiment;
[0042] Figure 6 is a diagram illustrating an exemplary method of using context according to another embodiment;
[0043] Figure 7 is a block diagram illustrating an exemplary configuration of another electronic device according to the embodiment;
[0044] Figure 8is a block diagram illustrating an exemplary learning unit according to an embodiment;
[0045] Figure 9 is a block diagram illustrating an exemplary response unit according to an embodiment;
[0046] Figure 10 is a diagram illustrating an example in which data is learned and determined by an electronic device and an external server in association with each other according to an embodiment; and
[0047] Figure 11 is a flowchart illustrating an exemplary method of controlling an electronic device according to an embodiment. DETAILED DESCRIPTION
[0048] Mode for the Invention
[0049] Various exemplary embodiments of the present disclosure may be modified differently. Therefore, specific exemplary embodiments are shown in the accompanying drawings and are described in more detail in the detailed description. However, it should be understood that the present disclosure is not limited to specific exemplary embodiments, but includes all modifications, equivalents and replacements without departing from the scope and spirit of the present disclosure. In addition, in the case where known functions or structures may confuse the present disclosure with unnecessary details, known functions or structures may not be described in detail.
[0050] Hereinafter, the present disclosure will be described in more detail with reference to the accompanying drawings.
[0051] The general terms currently in wide use are generally used as terms used in the embodiments of the present disclosure in the context of considering the functions in the present disclosure, but may be changed according to the intentions of those skilled in the art or the emergence of judicial precedents, new technologies, etc. In addition, in specific cases, arbitrarily selected terms may be used. In this case, the meanings of these terms may be mentioned in detail in the corresponding description sections of the present disclosure. Therefore, the terms used in the embodiments of the present disclosure should be defined based on the meanings of the terms and the content throughout the present disclosure rather than the simple names of the terms.
[0052] In the present disclosure, expressions such as “have”, “may have”, “include” or “may include” indicate the presence of corresponding features (for example, components such as numbers, functions, operations or parts) without excluding the presence of additional features.
[0053] The expression “at least one of A and / or B” should be understood to mean “A” or “B” or “any one of A and B”.
[0054] As used herein, the terms "first," "second," etc. may refer to various components regardless of order and / or importance, and may be used to distinguish one component from another, and do not limit the components.
[0055] Furthermore, in the present disclosure, the description that one element (e.g., a first element) is “(operably or communicatively) coupled” or “connected to” another element (e.g., a second element) should be interpreted as including the case where one element is directly coupled to another element and the case where one element is coupled to another element through yet another element (e.g., a third element).
[0056] Unless otherwise specified, singular expressions include plural expressions. It should be understood that terms such as "comprising" or "consisting of..." may be used herein to specify the presence of a feature, number, step, operation, element, component, or combination thereof, without excluding the possibility of the presence or addition of one or more other features, numbers, steps, operations, elements, components, or combinations thereof.
[0057] Terms such as "module," "unit," and "part" may be used to refer to an element that performs at least one function or operation, and such an element may be implemented as hardware or software, or a combination of hardware and software. In addition, except when it is necessary to implement each of multiple "modules," "units," and "parts" in a single piece of hardware, the components may be integrated into at least one module or chip and may be implemented in at least one processor (not shown).
[0058] In the present disclosure, the term "user" may refer to a person who uses an electronic device or an apparatus (eg, an AI electronic device) that uses an electronic device.
[0059] Hereinafter, various exemplary embodiments of the present disclosure will be described in more detail with reference to the accompanying drawings.
[0060] FIG. 1A is a block diagram illustrating an exemplary configuration of an exemplary electronic device 100 .
[0061] 1A , the electronic device 100 includes a memory 110 and a processor (eg, including a processing circuit) 120 .
[0062] The electronic device 100 according to various embodiments may include, for example, but not limited to, at least one of a smartphone, a tablet PC, a mobile phone, a video phone, an e-book reader, a desktop PC, a laptop PC, a netbook, a workstation, a server, a personal digital assistant (PDA), a portable multimedia player (PMP), an MP3 player, a medical device, a camera, a wearable device, etc. The wearable device may include, for example, but not limited to, at least one of an accessory type (e.g., a watch, a ring, a bracelet, a bracelet, a necklace, a pair of glasses, contact lenses, or a head-mounted device (HMD)); a fabric or clothing embedded type (e.g., electronic clothing); a body attached type (e.g., a skin pad or a tattoo); a bio-implantable circuit, etc. In some embodiments, the electronic device 100 may include, for example but not limited to, at least one of a television, a digital video disc (DVD) player, an audio, a refrigerator, a cleaner, an oven, a microwave, a washing machine, an air purifier, a set-top box, a home automation control panel, a security control panel, a media box (e.g., Samsung HomeSync™, Apple TV™, or Google TV™), a game console (e.g., Xbox™, PlayStation™), an electronic dictionary, an electronic key, a camera, an electronic frame, and the like.
[0063] In other embodiments, the electronic device 100 may include, for example but not limited to, at least one of various medical devices (e.g., various portable medical measuring devices (such as blood glucose meters, heart rate meters, blood pressure meters, or temperature measuring devices), magnetic resonance angiography (MRA), magnetic resonance imaging (MRI), computed tomography (CT), photographic equipment, or ultrasound equipment, etc.), navigation systems, global navigation satellite systems (GNSS), event data recorders (EDRs), flight data recorders (FDRs), automotive infotainment equipment, marine electronic devices (e.g., marine navigation equipment, gyroscopes, etc.), avionics devices, security equipment, head units, industrial or household robots, drones, automatic teller machines (ATMs) of financial institutions, store points of sale, Internet of Things (IoT) devices (e.g., light bulbs, sensors, sprinkler devices, fire alarms, thermostats, street lights, ovens, exercise equipment, hot water tanks, heaters, boilers, etc.), etc.
[0064] The electronic apparatus 100 may be any device capable of receiving a sentence and providing information related to the input sentence.
[0065] The memory 110 can store an entity recognition model. The entity recognition model can be a model obtained by learning through an artificial intelligence algorithm to extract multiple sample entities included in each of multiple sample conversations. For example, an entity can refer to a meaningful unit of information provided by the entity recognition model and is also called an entity name. For example, an entity can be in various forms, such as food, organization name, place name, country, name, name of an artwork, date, etc., and can include appropriate nouns. For example, in the conversations "A person infected with MERS went out" and "The person was found in Hospital A", the words "MERS", "Hospital A", etc. can be entity candidates. Among the entity candidates, "MERS" can be determined as an entity based on the context. For example, the processor 120 can use the entity recognition model to identify words included in the conversation and extract entities based on usage frequency, context, correlation between entity candidates, etc.
[0066] The entity recognition model can be a candidate "classification model," which can receive sentences and provide information related to the query through an artificial intelligence algorithm to extract the sample entities "MERS" and "hospital" included in the sample conversations of "MERS infected person" and "hospital." For each sample conversation, the sample entities can be in a preset state. As described above, the entity recognition model can be obtained by repeatedly learning multiple sample conversations and corresponding sample entities.
[0067] The memory 110 may be implemented as, for example but not limited to, a hard disk, a non-volatile memory, a volatile memory, etc., and may be any configuration that can store data.
[0068] The processor 120 may include various processing circuits and may control the overall operation of the electronic device 100 .
[0069] The processor 120 may include various processing circuits, including but not limited to, for example, a digital signal processor (DSP) for processing digital image signals, a microprocessor, a time controller (TCON), etc., but is not limited thereto. The processor 120 may include various processing circuits, such as but not limited to one or more of a central processing unit (CPU), a microcontroller unit (MCU), a microprocessing unit (MPU), a controller, an application processor (AP), a communication processor (CP), an advanced reduced instruction set computing (RISC) machine (ARM) processor, etc., or may be defined as corresponding terms. The processor 120 may be implemented in a system-on-chip (SoC) type or a large-scale integration (LSI) type in which a processing algorithm is built, or may be implemented in a field programmable gate array (FPGA) type. The processor 120 may perform various functions by executing computer-executable instructions stored in the memory 110.
[0070] The processor 120 may identify multiple entities included in a sentence input based on an entity recognition model. For example, the processor 120 may identify at least one word included in a sentence input as an entity based on an entity recognition model. The processor 120 may sequentially receive multiple sentences.
[0071] The processor 120 may recognize a plurality of words included in an input sentence, and recognize a plurality of entities among the plurality of words based on a context of the input sentence.
[0072] For example, when the second sentence after the first sentence in the input sentence is an affirmative sentence, the processor 120 may recognize the first word recognized in the first sentence among the multiple words as one of the multiple entities. For example, when the sentence is "Do you want to eat pizza today?", "Yes", the processor 120 recognizes words such as "today", "A pizza", "eat", and "yes"; and when the second sentence is an affirmative sentence, the processor 120 may recognize "A pizza" as one of the multiple entities. If another sentence is input, the processor 120 may exclude "A pizza" from the entity. If an additional sentence is input while the processor 120 recognizes multiple entities, at least some of the multiple entities may be excluded from the entity.
[0073] When the second sentence after the first sentence in the input sentence is a negative sentence, the processor 120 may not use the first word recognized in the first sentence among the multiple words as multiple entities. For example, if the sentence is, for example, "Do you want to eat A pizza today?", "No, I want to eat B pizza", in a state where "A pizza" is recognized as an entity, the second sentence is a negative sentence, and "A pizza" may not be used as an entity. In this example, the processor 120 may only recognize "B pizza" as an entity, or wait for additional sentence input. For example, the processor 120 may wait for additional sentences based on the meaning of the word on the left as an entity candidate, or determine the word on the left as an entity and perform subsequent operations.
[0074] The processor 120 may obtain search results corresponding to a plurality of entities. For example, if "Seocho-dong" or "A-chan pig's trotter" are identified as entities, the processor 120 may perform a search using the identified entities. For example, when the electronic device 100 is connected to a network, the processor 120 may obtain search results corresponding to "Seocho-dong" or "A-chan pig's trotter" through an Internet search engine or the like. The processor 120 may send the identified entity to an external server and receive search results corresponding to the entity from the external server.
[0075] The processor 120 may provide information related to the obtained search results. The information related to the search results may include search results corresponding to multiple entities. For example, the processor 120 may provide mapping information of A-Jiang Pig's Trotter located in Seocho-dong in the search results corresponding to "Seocho-dong" and "A-Jiang Pig's Trotter". The information related to the search results may include information for correcting the input sentence. For example, when multiple entities and search results correspond to each other, the processor 120 may provide information related to the search results. For example, the processor 120 may provide addresses, maps, sales, brand reputation, latest news, etc. of multiple entities as information related to the search results.
[0076] When multiple entities and search results are inconsistent with each other, the processor 120 can correct the input sentence based on the search results and provide the corrected sentence. For example, the processor 120 can provide a message indicating that A-sauce pig's trotter is the search result corresponding to "A-sauce pig's trotter" in "Seocho-dong" and "A-sauce pig's trotter". In this case, the processor 120 can consider the attributes of "Seocho-dong" in the search result corresponding to "sauce pig's trotter" to provide information related to the search result. The attribute of "Seocho-dong" can be a location attribute, which will be described in more detail below.
[0077] The processor 120 can identify the attributes of each of the multiple entities, and can identify whether the multiple entities and the search results correspond to each other based on at least one of the multiple attributes identified. When the multiple entities and the search results correspond to each other, the processor 120 can provide information related to the search results. For example, if "Seocho-dong" and "A-chan Pig's Trotter" are identified as entities, the processor 120 can identify that the attribute of "Seocho-dong" is a location attribute, and "A-chan Pig's Trotter" is an organizational attribute. In addition, the processor 120 can identify whether the address "A-chan Pig's Trotter" is within a predetermined distance from Seocho-dong based on the location attribute and the location attribute in the organizational attribute. When the address of "A-chan Pig's Trotter" is within a predetermined distance from Seocho-dong, the processor 120 can determine that the multiple entities and the search results correspond to each other, and provide information related to the search results.
[0078] When multiple entities do not correspond to the search results, the processor 120 may provide a message indicating that there is an error in the multiple entities. In the above example, if the address of "A-chan Pig's Trotter" is not within a predetermined distance from Seocho-dong, the processor 120 may provide a guidance message indicating that the address of "A-chan Pig's Trotter" is not Seocho-dong and map information indicating the address of "A-chan Pig's Trotter".
[0079] The processor 120 may identify an entity with high importance between the first entity and the second entity, and generate a query based on the attributes of the entity with low importance and the entity with high importance. For example, the processor 120 may generate the query using an entity recognition model. The processor 120 may correct the entity with low importance based on the search results based on the entity with high importance and the search results based on the query.
[0080] For example, the processor 120 may identify "Musée d'Orsay" and "the Mona Lisa" as entities from the sentence "Let's see the Mona Lisa while visiting the Musée d'Orsay." Furthermore, when determining that "Mona Lisa" is more important than "Musée d'Orsay" and "Mona Lisa," the processor 120 may generate a query sentence based on the organizational attributes of "Musée d'Orsay" and "Mona Lisa." For example, if the query shifts to "which $organization$," the processor 120 may generate a query sentence such as "Can you see the Mona Lisa?" The processor 120 may correct "Musée d'Orsay" to "Musée du Louvre" based on the search results based on "Mona Lisa" and the search results based on the query sentence. The processor 120 may obtain search results corresponding to at least two entities having different attributes. However, embodiments are not limited thereto, and the processor 120 may obtain search results corresponding to entities having the same attributes, and the search results may correspond to a first entity having the same attributes and a third entity having attributes different from the second entity.
[0081] The processor 120 may obtain importance of each of the plurality of entities based on the context of the input sentence, and identify whether the remaining entities correspond to the search result based on an entity having the highest importance among the plurality of entities.
[0082] For example, the processor 120 may obtain the importance for each of the multiple entities based on at least one of the usage frequency of each of the multiple entities, the context, and the correlation between the candidate entities. The processor 120 may obtain a first search result of a first entity having the highest importance among the multiple entities, and search for a second entity having the second highest importance in the first search result. If the second entity is not found in the first search result, the processor 120 may identify (e.g., determine) that the second entity does not correspond to the search result, and provide a guidance message indicating that the second entity has an error. The processor 120 may perform an additional search based on at least one of the attributes of the first entity and the attributes of the second entity. For example, if the second entity is a location attribute, the processor 120 may search for an entity of the location attribute from the first search result, and provide a message that the searched entity of the location attribute is related to the first entity.
[0083] The embodiment is not limited thereto, and the processor 120 may use various methods to determine whether an entity corresponds to a search result.
[0084] Processor 120 may correct the input sentence when an error exists in the input sentence and provide the corrected sentence. For example, when a first entity and a second entity are identified in a first sentence and an error exists in the search results corresponding to the first entity and the second entity, processor 120 may correct and provide at least one of the first entity and the second entity based on the search results. In this example, processor 120 may provide a guidance message indicating the error exists or a guidance message for correcting the error.
[0085] After acquiring information related to the search results, when the newly input sentence is an affirmative sentence, the processor 120 may provide information related to the search results. When multiple entities correspond to the search results, the processor 120 may provide information related to the search results.
[0086] When a first entity and a second entity are identified from a first sentence, search results corresponding to the first entity and the second entity are obtained, and a second sentence is input as an affirmative sentence, the processor 120 may provide information related to the search results. Whenever a sentence is input, the processor 120 may update the entity, perform a search using the updated entity, and provide information related to the search results based on the context.
[0087] The embodiment is not limited thereto, and the processor 120 may use any of a variety of methods to determine the time point for providing information related to the search results. For example, when a sentence is input and the search results are limited to less than or equal to a predetermined number, the processor 120 may provide information related to the search results. For example, the processor 120 may obtain 20 search results as search results for a first entity and a second entity, and then obtain one of the 20 search results for a third entity included in a subsequently input sentence. The processor 120 may provide information based on a single search result. The processor 120 may provide information by recognizing that even multiple search results are identical in content.
[0088] The processor 120 may provide information related to a predetermined category of search results from among the plurality of search results. For example, the processor 120 may obtain search results that are a result of a first entity and a second entity, and the search results may include various categories of information, such as time information, location information, photo information, etc. When the third entity subsequently input is a location attribute, the processor 120 may provide the location information in the search results.
[0089] When a user command is input, the processor 120 may provide multiple entities for obtaining search results. For example, the processor 120 may obtain search results corresponding to a first entity and a second entity and provide information related to the search results. When a user command is input, the processor 120 may provide the first entity and the second entity. The user may input a command to delete one of the first entity and the second entity to request search results corresponding to the first entity. The user may input a command to add a third entity to the first entity and the second entity to request search results corresponding to the first entity, the second entity, and the third entity.
[0090] FIG1B is a block diagram showing an exemplary configuration of an electronic device according to an embodiment. The electronic device 100 may include a memory 110 and a processor 120. Referring to FIG1B , the electronic device 100 may further include a communication interface (e.g., including a communication circuit) 130, a display 140, a user interface (e.g., including a user interface circuit) 150, an input and output interface (e.g., including an input / output circuit) 160, a speaker 170, and a microphone 180. Among the elements in FIG1B , a detailed description of the components that overlap with the elements in FIG1A may not be repeated here.
[0091] The memory 110 is electrically connected to the processor 120 and can store data necessary for various embodiments. The memory 110 can be implemented as an internal memory included in the processor 120, such as, but not limited to, a read-only memory (e.g., an electrically erasable programmable read-only memory (EEPROM)), a random access memory (RAM), etc., or a memory separate from the processor 120. In this example, depending on the purpose of data use, the memory 110 can be implemented as a memory embedded in the electronic device 100, or can be implemented as a detachable memory in the electronic device 100. For example, data for driving the electronic device 100 can be stored in a memory embedded in the electronic device 100, and data for extended functions of the electronic device 100 can be stored in a memory detachable from the electronic device 100. The memory embedded in the electronic device 100 may be a volatile memory, such as, but not limited to, a dynamic random access memory (DRAM), a static random access memory (SRAM), a synchronous dynamic random access memory (SDRAM), or a non-volatile memory (e.g., a one-time programmable ROM (OTPROM), a programmable ROM (PROM), an erasable and programmable ROM (EPROM), an electrically erasable programmable ROM (EEPROM), a JROM, a flash ROM, a flash memory (e.g., NAND flash or NOR flash), a hard disk drive, a solid-state drive (SSD), etc. In the case where the memory is detachably mounted to the electronic device 100, the memory may be implemented as, for example, but not limited to, a memory card (e.g., compact flash (CF), secure digital (SD), micro secure digital (micro-SD), mini secure digital (mini-SD), xD, multimedia card (MMC), etc.), an external memory connectable to a USB port (e.g., a USB memory), etc.
[0092] The memory 110 may store various data, such as an operating system (OS) software module driving the electronic device 100 , an entity recognition module, a search module, an information providing module, and the like.
[0093] The processor 120 may include various processing circuits and control the overall operation of the electronic device 100 using various programs stored in the memory 110 .
[0094] The processor 120 includes a RAM 121 , a ROM 122 , a main CPU 123 , a graphic processor 124 , first to nth interfaces 125 - 1 to 125 - n , and a bus 126 .
[0095] The RAM 121 , the ROM 122 , the main CPU 123 , the graphic processor 124 , the first to nth interfaces 125 - 1 to 125 - n , etc. may be interconnected through a bus 126 .
[0096] ROM 122 stores one or more instructions for booting the system, etc. When a power-on command is input and power is supplied, CPU 123 copies the OS stored in memory 110 to RAM 121 according to the one or more instructions stored in ROM 122, and executes the OS to boot the system. When booting is complete, CPU 123 copies various application programs stored in memory 110 to RAM 121, executes the application programs copied to RAM 121, and performs various operations.
[0097] The main CPU 123 accesses the memory 110 and performs booting using an operating system (OS) stored in the memory 110 , and performs various operations using various programs, content data, and the like stored in the memory 110 .
[0098] The first to nth interfaces 125-1 to 125-n are connected to the various elements described above. One of the interfaces may be a network interface connected to an external device through a network.
[0099] The processor 120 can use, for example, the graphics processor 124 to perform graphics processing functions (video processing functions). For example, the processor 120 can generate a screen including various objects such as icons, images, text, etc. A calculator (not shown) can calculate the attribute values to be displayed by each object, such as coordinate values, shape, size, and color, according to the layout of the screen based on the received control command. A renderer (not shown) can generate a display screen including various layouts of objects based on the attribute values calculated by the calculator (not shown). The processor 120 can perform various image processing on the video data, such as decoding, scaling, noise filtering, frame rate conversion, resolution conversion, etc.
[0100] The processor 120 may perform processing on the audio data. For example, the processor 120 may perform various image processing on the audio data, such as, but not limited to, decoding, amplification, noise filtering, etc.
[0101] The communication interface 130 may include various communication circuits and communicate with various types of other external devices. The communication interface 130 may include various modules, including various communication circuits, such as, but not limited to, a Wi-Fi module 131, a Bluetooth module 132, an infrared communication module 133, a wireless communication module 134, etc. Each communication module may include a communication circuit and may be implemented in at least one hardware chip format.
[0102] The processor 120 can communicate with various external devices using the communication interface 130. The external devices may include, for example, but not limited to, a display device such as a television, an image processing device such as a set-top box, an external server, a control device such as a remote controller, an audio output device such as a Bluetooth speaker, a lighting device, a smart cleaner, a home appliance such as a smart refrigerator, a server such as an Internet of Things (IoT) home manager, and the like.
[0103] The Wi-Fi module 131 and the Bluetooth module 132 perform communication using the Wi-Fi method and the Bluetooth method, respectively. When using the Wi-Fi module 131 or the Bluetooth module 132, various connection information such as a service set identifier (SSID) and a session key may be transmitted and received first, and communication information may be transmitted after the communication is connected.
[0104] The infrared communication module 133 performs communication according to an Infrared Data Association (IrDA) technology that wirelessly transmits data to a local area using infrared rays between visible light and millimeter waves.
[0105] The wireless communication module 134 may, for example, refer to a module that performs communication according to various communication standards in addition to the above-mentioned Wi-Fi module 131 and Bluetooth module 132, such as Zigbee, third generation (3G), third generation partnership project (3GPP), long term evolution (LTE), LTE advanced (LTE-A), fourth generation (4G), fifth generation (5G), etc.
[0106] The communication interface 130 may include at least one of a local area network (LAN) module, an Ethernet module, or a wired communication module that performs communication using an electric cable, a coaxial cable, an optical cable, or the like.
[0107] According to an embodiment, the communication interface 130 may communicate with external devices such as a remote controller and an external server using the same communication module (eg, a Wi-Fi module).
[0108] According to another example, the communication interface 130 can utilize different communication modules (e.g., Wi-Fi modules) to communicate with external devices such as remote controls and external servers. For example, the communication interface 130 can use at least one of an Ethernet module or a Wi-Fi module to communicate with an external server, and can use a Bluetooth (BT) module to communicate with an external device such as a remote control. However, this is merely an example, and when communicating with multiple external devices or external servers, the communication interface 130 can use at least one of the various communication modules.
[0109] According to an example, the electronic device 100 may further include a tuner and a demodulator.
[0110] The tuner (not shown) may receive a Radio Frequency (RF) broadcast signal by tuning a channel selected by a user or all pre-stored channels from among RF broadcast signals received through an antenna.
[0111] The demodulator (not shown) may receive and demodulate a digital intermediate frequency (DIF) signal converted by the tuner, and perform channel decoding and the like.
[0112] The display 140 may be implemented as various types of displays, such as, but not limited to, a liquid crystal display (LCD), an organic light emitting diode (OLED) display, a plasma display panel (PDP), etc. The display 140 may also include a driving circuit and a backlight unit, which may be implemented in the form of a-siTFT, low-temperature polycrystalline silicon (LTPS) TFT, or an organic TFT (OTFT). The display 160 may be implemented as a touch screen coupled to a touch sensor, a flexible display, a three-dimensional display (3D display), etc.
[0113] The display 140 according to an embodiment may include not only a display panel for outputting an image, but also a frame for accommodating the display panel. In particular, the front cover according to an embodiment may include a touch sensor (not shown) to sense user interaction.
[0114] The user interface 150 may include various user interface circuits and may be implemented as devices such as, but not limited to, buttons, a touch panel, a mouse, and a keyboard, or as a touch screen capable of performing the above-mentioned display function and operation input function. The buttons may be various types of buttons, such as mechanical buttons, a touch panel, a wheel, etc., formed in any area, such as the front surface portion, the side surface portion, and the rear surface portion of the main body of the electronic device 100.
[0115] The input and output interface 160 may include various input / output circuits and may be, for example, but not limited to, at least one of a High-Definition Multimedia Interface (HDMI), a Mobile High-Definition Link (MHL), a Universal Serial Bus (USB), a DisplayPort (DP), a Thunderbolt port, a Video Graphics Array (VGA) port, an RGB port, a D-Sub (D-SUB), a Digital Visual Interface (DVI), and the like.
[0116] The input and output interface 160 may input and output at least one of an audio signal and a video signal.
[0117] According to an embodiment, the input and output interface 160 may include a port for inputting and outputting only audio signals and a port for inputting and outputting only video signals as separate ports, or may be implemented as one port for inputting and outputting both audio and video signals.
[0118] The electronic apparatus 100 may be implemented as a device that does not include a display, and transmit a video signal to a separate display device.
[0119] The speaker 170 may include, for example, an element including a circuit for outputting various audio data processed by the input and output interface 160 , various alarm sounds, voice messages, and the like.
[0120] The microphone 180 may include, for example, an element including a circuit for receiving a user's voice or other sounds and converting the received voice or sound into audio data.
[0121] The microphone 180 can receive the user's voice in an active state. For example, the microphone 180 can be integrally formed as a whole unit on the upper side, front side, side direction, etc. of the electronic device 100. The microphone 180 can include various configurations, such as a microphone for collecting the user's voice in an analog format, an amplifier circuit for amplifying the collected user's voice, an audio-to-digital (A / D) conversion circuit for sampling the amplified user's voice to convert it into a digital signal, a filter circuit for removing noise elements from the converted digital signal, etc.
[0122] The electronic device 100 may receive a user voice signal from an external device including a microphone. In this example, the received user voice signal may be a digital audio signal, but in some embodiments, the signal may be an analog audio signal. For example, the electronic device 100 may receive the user voice signal via a wireless communication method such as Bluetooth or Wi-Fi. The external device may be implemented as a remote control device or a smartphone.
[0123] The electronic apparatus 100 may transmit a corresponding voice signal to an external server to perform voice recognition on the voice signal received from the external device.
[0124] The communication modules for communicating with external devices and external servers can be implemented separately. For example, communication with external devices can be performed through a Bluetooth module, and communication with external servers can be performed through an Ethernet modem or a Wi-Fi module.
[0125] The electronic device 100 may receive a voice and convert the voice into a sentence. For example, the electronic device 100 may directly apply a speech-to-text (STT) function to a digital audio signal received through the microphone 170 and convert the signal into text information.
[0126] The electronic device 100 may transmit the received digital audio signal to a speech recognition server. In this case, the speech recognition server may convert the digital audio signal into text information using speech-to-text (STT). The speech recognition server may transmit the text information to another server or electronic device to perform a search corresponding to the text information, and in some cases, perform a direct search.
[0127] 1A , the processor 120 can provide information matching the context of the input sentence. Specifically, the processor 120 can identify entities without dictionary information through a single entity using an entity recognition model.
[0128] Hereinafter, the operation of the electronic device 100 will be described in more detail.
[0129] 2A , 2B, 2C, and 2D are diagrams illustrating screens of an exemplary electronic device according to an embodiment.
[0130] The processor 120 may receive a sentence. The sentence may be input through one of various applications installed in the electronic device 100. For example, the processor 120 may receive the content of a conversation with another person through a messenger application. However, this embodiment is not limited thereto, and the processor 120 may receive the sentence from one of various applications, such as a chat application, an application that provides a web page, etc.
[0131] The processor 120 may receive a sentence made by the user. The processor 120 may receive a sentence from an external device through the communication interface 130. FIG2A is a diagram illustrating an example in which a second sentence is input from the user after a first sentence is received from an external device, and then a third sentence and a fourth sentence are received from the external device.
[0132] The processor 120 may recognize "Jiangnan (Gangnam)" included in the first sentence as one of the plurality of entities based on the entity recognition model. The processor 120 may recognize the attribute of "Jiangnan" as a location attribute.
[0133] When the second sentence is input, the processor 120 may update the multiple entities based on the entity recognition model. For example, the processor 120 may recognize "where" included in the second sentence as an entity and recognize the attributes of "where" as location attributes. The processor 120 may only maintain "Jiangnan" and "where" having the same attributes as the multiple entities among the entities recognized from the first sentence and the entities recognized from the second sentence.
[0134] Processor 120 may identify the current context based on "OK." After a second sentence is input, processor 120 may maintain "Jiangnan" and "where" that have the same attributes as multiple entities between the entities identified from the first sentence and the entities identified from the second sentence based on "OK." If a word such as "No" is included in the second sentence, processor 120 may delete all entities identified from the first sentence.
[0135] When the third sentence is input, processor 120 may recognize "Poi Crossroad" as a location attribute and "A Hamburger" as an organization attribute. Because "Poi Crossroad" is a location attribute, processor 120 may add it as an entity. Processor 120 may also add "Hamburger" as an organization attribute, which has a high correlation with the location attribute as an entity.
[0136] When there is no input from the user of the electronic device 100 within a predetermined time, a location attribute having a high correlation with the location attribute of the entity from the first sentence. Multiple processors 120 can perform a search using the identified entities. The processor 120 can perform a search using the entity identified from the first sentence after the first sentence is input, perform a search using the updated entity after the second sentence is input, and perform a search using the updated entity after the third sentence is input. In addition, when the user of the electronic device 100 does not input within a predetermined time, the processor 120 can provide information related to the search results. When a query requesting confirmation, such as the fourth sentence, is input, the processor 120 can perform a search or provide search results.
[0137] As shown in FIG2B , processor 120 may extract search results. FIG2B is a diagram illustrating an example of a webpage including multiple entities. This embodiment is not limited thereto, and processor 120 may retrieve multiple webpages and extract common information corresponding to the multiple entities from the multiple webpages. If an entity is updated when an additional statement is input, processor 120 may delete a portion of the multiple webpages based on the updated entity.
[0138] Processor 120 may obtain additional information from the search results. For example, if processor 120 searches for "Gangnam," "Poi Crossroads," or "A Burger" from a webpage, processor 120 may obtain additional information about at least one of "Gangnam," "Poi Crossroads," or "A Burger." For example, processor 120 may obtain the correct address, map, sales, brand reputation, latest news, etc. of "A Burger" as additional information about "A Burger."
[0139] The subject of obtaining additional information may be determined based on the attributes of the entity. For example, the processor 120 may determine that the organizational attribute "A hamburger" has higher importance than the location attributes "Gangnam" and "Poi intersection" and obtain additional information for "A hamburger".
[0140] When the location of "A Hamburger" is within a predetermined distance from the search results such as "Gangnam" and "Poi Intersection", the processor 120 may obtain additional information.
[0141] As shown in FIG2C , the processor 120 may display that "Gangnam" and "Poi Crossroads" are locations and "A Hamburger" is the name of a store, and as shown in FIG2D , the processor 120 may display map information about "A Hamburger." The processor 120 may display, for example, the first information shown in FIG2C and the second information shown in FIG3D . The processor 120 may display at least one of the first information or the second information.
[0142] Processor 120 may display only the first information and then display the second information based on user input. For example, when a user touches an area displaying the first information, processor 120 may display the first information and then the second information. Processor 120 may obtain multiple second information items of different categories and display each category together with the first information. For example, processor 120 may display icons such as a map or the latest news along with the first information, and if one of the icons is selected, processor 120 may provide the second information corresponding to the selected icon.
[0143] 2A, 2B, 2C, and 2D, the operation of the processor 120 has been described using location attributes, organizational attributes, etc., but is not limited thereto. For example, but not limited to, the processor 120 may use various attributes to identify an entity, such as a time attribute, an activity attribute, a positive attribute, a negative attribute, a graphic attribute, a hobby attribute, etc.
[0144] 3A , 3B, 3C, and 3D are diagrams illustrating exemplary error correction methods according to embodiments.
[0145] The processor 120 may receive the first and second sentences from the external device and recognize "Yangjae-dong" and "A Pizza" as entities. The processor 120 may obtain search results corresponding to "Yangjae-dong" and "A Pizza" because the third sentence of the positive context is input by the user.
[0146] Processor 120 can identify, based on the location attribute of "Yangjae-dong" and "Pizza A," that the distance difference between the two points is greater than or equal to a predetermined distance. Because the distance difference is greater than or equal to the predetermined distance, processor 120 can search for the location of "Pizza A" again and obtain a search result indicating that "Pizza A" is not located in "Yangjae-dong" but in "Nonhyun-dong." As shown in FIG3B , processor 120 can display a guidance message confirming whether "Pizza A" is located in "Nonhyun-dong."
[0147] When 'A Pizza' is not located in 'Yangjae-dong' but correct location information is not searched, the processor 120 may display a guidance message that 'A Pizza' is not located in 'Yangjae-dong'.
[0148] When the user touches the “Yes” icon in the guidance message of FIG. 3B , as shown in FIG. 3C , the processor 120 may provide additional information of “A Pizza” located in “Hyun-dong”, such as a map, contacts, and business hours.
[0149] 3D , the user can provide the other party with information that "A Pizza" is located in "Hyeon-dong." The processor 120 can correct "Yangjae-dong" in the pre-received second sentence to "Hyeon-dong."
[0150] 4A and 4B are diagrams illustrating an exemplary error correction method according to another embodiment.
[0151] The processor 120 may identify entities through a sentence and identify an error state based on search results corresponding to the identified entities. For example, as shown in FIG4A , the processor 120 may receive a first sentence and a second sentence and identify “Musée d'Orsay” and “Mona Lisa” in the second sentence as entities.
[0152] The processor 120 may perform a search using the "Musee d'Orsay" and the "Mona Lisa," and as a result of the search, the processor 120 may display a guide message that the "Mona Lisa" is in the "Louvre Museum." The processor 120 may display that the "Mona Lisa" is not in the "Musee d'Orsay."
[0153] FIG4A shows a guide message displayed after a user input sentence is sent, but the embodiment is not limited thereto. For example, as shown in FIG4B , processor 120 may identify entities in real time while a sentence is being input and perform a search using the identified entities. Processor 120 may display a guide message even before the user input sentence is sent, indicating that the "Mona Lisa" is also in the "Floating Museum" according to the search results.
[0154] Figure 5 is a diagram illustrating an exemplary method for using context according to an embodiment.
[0155] When the first sentence 510 is input, the processor 120 may recognize "Seongsu-dong" and "A pizza" as entities.
[0156] When the second sentence 520 is input, the second sentence 520 has an affirmative expression and "pizza" is included in the first and second sentences, and thus, the processor 120 may assign higher importance to "A pizza" than to "Jeong So-dong."
[0157] When the third sentence 530 is input, the processor 120 may add "Yangjae-dong" as a new entity. The processor 120 may reduce the importance of "Jung So-dong" because the expression of "Jung So-dong" is more negative than that of "Yangjae-dong".
[0158] When the fourth sentence 540 is input, the processor 120 may add "B pizza" as a new entity.
[0159] When the fifth sentence 550 is input, the fifth sentence 550 is an affirmative statement, and the processor 120 may assign relatively higher importance to "B pizza" than to "A pizza."
[0160] The processor 120 may perform a search using "Yangjae-dong" having the highest importance in the location attribute and "B Pizza" having the highest importance in the organization attribute. However, this embodiment is not limited thereto, and the processor 120 may further perform a search using not only "Yangjae-dong" and "B Pizza" but also "Jungsu-dong" and "B Pizza" having relatively low importance. In this case, the processor 120 may extract information related to the search results taking into account the importance of each entity.
[0161] Figure 6 is a diagram illustrating an exemplary method for using context according to another embodiment.
[0162] The processor 120 may recognize a plurality of entities included in an input sentence. When a sentence having a negation expression is input, the processor 120 may perform a search based on words having opposite meanings of the negation expression.
[0163] For example, Figure 6 As shown, the processor 120 can identify "A steak" as an entity and can receive a sentence with a negative expression of a bad atmosphere. In this example, the processor 120 can search for steak shops with a good atmosphere and provide the search results as a pop-up window 610.
[0164] Figure 77 is a block diagram illustrating an exemplary configuration of another electronic device 700 according to an embodiment of the present invention. The electronic device 700 may be a device that acquires an entity recognition model through an AI algorithm.
[0165] Reference Figure 7 , the electronic device 700 may include at least one of a learning unit (eg, including various processing circuits and / or executable program elements) 710 and a response unit (eg, including various processing circuits and / or executable program elements) 720 .
[0166] The learning unit 710 may include various processing circuits and / or executable program elements and generate or train an AI model for identifying entities using learning data. The learning unit 710 may generate a determination model with a determination standard using the collected learning data.
[0167] The response unit 720 may include various processing circuits and / or executable program elements, and obtain entities included in a predetermined conversation using predetermined data as input data of a trained AI model.
[0168] According to an exemplary embodiment, the learning unit 710 and the response unit 720 may be included in another electronic device 700, but this is merely an example, and these units may be embedded in the electronic device 100. For example, at least a portion of the learning unit 710 and at least a portion of the response unit 720 may be implemented as a software module and / or at least one hardware chip and installed in the electronic device 100. For example, at least one of the learning unit 710 and the response unit 720 may be manufactured in the form of a dedicated hardware chip for AI, or in the form of a conventional general-purpose processor (e.g., a CPU or application processor) or a graphics processor only (e.g., a GPU), and may be installed on the various electronic devices described above. The dedicated hardware chip for AI may, for example, but not limited to, include a dedicated processor for probability calculation, and it has higher parallel processing performance than existing general-purpose processors, so it can quickly process computing tasks in AI, such as machine learning. When the learning unit 710 and the response unit 720 are implemented as software modules (or program modules including instructions, executable program elements, etc.), the software modules may be stored in a computer-readable, non-transitory computer-readable medium. The software modules may be provided by an operating system (OS) or by a predetermined application. Some software modules may be provided by the OS, and some software modules may be provided by predetermined application programs.
[0169] The learning unit 710 and the response unit 720 may be installed in one electronic device or in separate electronic devices. For example, one of the learning unit 710 and the response unit 720 may be included in the electronic device 100, while the other may be included in another electronic device 700. In addition, the learning unit 710 and the response unit 720 may provide the model information constructed by the learning unit 710 to the response unit 720 through wired or wireless communication, and provide the data input to the response unit 720 as additional data to the learning unit 710.
[0170] Figure 8 is a block diagram illustrating an exemplary learning unit 710 according to an embodiment.
[0171] Reference Figure 8 According to some embodiments, the learning unit 710 may implement a learning data acquisition unit (e.g., including various processing circuits and / or executable program elements) 710-1 and a model learning unit (e.g., including various processing circuits and / or executable program elements) 710-4. The learning unit 710 may also selectively implement at least one of a learning data preprocessor (e.g., including various processing circuits and / or executable program elements) 710-2, a learning data selection unit (e.g., including various processing circuits and / or executable program elements) 710-3, and a model evaluation unit (e.g., including various processing circuits and / or executable program elements) 710-5.
[0172] The learning data acquisition unit 710-1 may include various processing circuits and / or executable program elements and obtain the learning data necessary for the artificial intelligence model used to correct image brightness values. The learning data acquisition unit 710-1 may obtain multiple sample images or information corresponding to each of the multiple sample images as learning data. The learning data may be data collected or tested by the learning unit 710 or the manufacturer of the learning unit 710.
[0173] The model learning unit 710-4 may include various processing circuits and / or executable program elements, and may use learning data to enable the artificial intelligence model to have a standard for correcting the brightness value of the image. For example, the model learning unit 710-4 may learn the artificial intelligence model through supervised learning of at least a portion of the learning data. The model learning unit 710-4 may, for example, learn by itself using learning data without specific guidance so that the artificial intelligence model learns through unsupervised learning that detects the standard for providing brightness value correction. The model learning unit 710-4 may learn the artificial intelligence model by using, for example, feedback on whether the result of providing a response based on learning is correct to reinforce learning. The model learning unit 710-4 may also use, for example, a learning algorithm including an error backpropagation method or gradient descent to perform artificial intelligence model learning.
[0174] Furthermore, the model learning unit 710 - 4 may learn selection criteria regarding which learning data should be used to identify entities using input data.
[0175] The model learning unit 710-4 can determine the artificial intelligence model with a large correlation between the input learning data and the basic learning data as the artificial intelligence model to be learned when there are multiple previously constructed artificial intelligence models. In this case, the basic learning data can be pre-classified according to the type of data, and an AI model can be pre-built for each type of data.
[0176] When learning the artificial intelligence model, the model learning unit 710-4 can store the learned artificial intelligence model. In this case, the model learning unit 710-4 can store the learned artificial intelligence model in the memory of another electronic device 700. The model learning unit 710-4 can store the learned artificial intelligence model in the memory of a server or an electronic device connected to the other electronic device 700 via a wired or wireless network.
[0177] The learning unit 710 may also implement a learning data preprocessor 710-2 and a learning data selection unit 710-3, each of which may include various processing circuits and / or executable program elements to improve the response results of the artificial intelligence model or save resources or time required to generate the artificial intelligence model.
[0178] The learning data preprocessor 710-2 may, for example, preprocess the acquired data so that the data obtained during learning can be used to identify entities from the conversation. In other words, the learning data preprocessor 710-2 may process the acquired data into a predetermined format. For example, the learning data preprocessor 710-2 may classify the sample conversation into multiple parts.
[0179] The learning data selection unit 710-3 can, for example, select data required for learning from the data acquired by the learning data acquisition unit 910-1 or the data preprocessed by the learning data preprocessor 710-2. The selected learning data can be provided to the model learning unit 710-4. The learning data selection unit 710-3 can select the learning data required for learning from the acquired or preprocessed data based on a predetermined selection criterion. The learning data selection unit 710-3 can also select learning data based on a predetermined selection criterion by learning with the model learning unit 710-4.
[0180] The learning unit 710 may further implement a model evaluation unit 710 - 5 , which may include various processing circuits and / or executable program elements to improve the response results of the artificial intelligence model.
[0181] The model evaluation unit 710-5 may input evaluation data to the artificial intelligence model, and if the response result output from the evaluation result does not meet the predetermined standard, the model evaluation unit may cause the model learning unit 710-4 to learn again. The evaluation data may be predetermined data for evaluating the artificial intelligence model.
[0182] When there are multiple learned artificial intelligence models, the model evaluation unit 710-5 can evaluate whether each learned artificial intelligence model meets the predetermined criteria and determine the model that meets the predetermined criteria as the final artificial intelligence model. When there are multiple models that meet the predetermined criteria, the model evaluation unit 710-5 can determine one or a predetermined number of models arranged in order of higher evaluation scores as the final artificial intelligence model.
[0183] Figure 9 is a block diagram illustrating an exemplary response unit 720 according to an embodiment.
[0184] Reference Figure 9 According to some embodiments, the response unit 720 may implement an input data acquisition unit (eg, including various processing circuits and / or executable program elements) 720-1 and a response result providing unit (eg, including various processing circuits and / or executable program elements) 720-4.
[0185] In addition, the response unit 720 can also selectively implement at least one of an input data preprocessor (e.g., including various processing circuits and / or executable program elements) 720-2, an input data selection unit (e.g., including various processing circuits and / or executable program elements) 720-3, and a model update unit (e.g., including various processing circuits and / or executable program elements) 720-5.
[0186] The input data acquisition unit 720-1 may include various processing circuits and / or executable program elements and obtain the data necessary to identify the entity. The response result providing unit 720-4 may include various processing circuits and / or executable program elements and apply the input data obtained from the input data acquisition unit 720-1 to the learned artificial intelligence model as an input value to identify the entity from the conversation. The response result providing unit 720-4 applies the data selected by the input data preprocessor 720-2 or the input data selection unit 720-3 to the AI model to obtain a response result. The input data preprocessor 720-2 or the input data selection unit 720-3 will be described in more detail below. The response result can be determined by the AI model.
[0187] According to an embodiment, the response result providing unit 720 - 4 may apply an artificial intelligence model for recognizing entities obtained from the input data acquiring unit 720 - 1 to recognize entities from the conversation.
[0188] The response unit 720 may further implement an input data preprocessor 720 - 2 and an input data selection unit 720 - 3 in order to improve the response result of the AI model or save resources or time to provide the response result.
[0189] The input data preprocessor 720-2 may include various processing circuits and / or executable program elements and preprocess the acquired data so that the acquired data can be used to correct the brightness value of the image. In other words, the input data preprocessor 720-2 may process the acquired data into a predefined format through the response result providing unit 720-4.
[0190] The input data selection unit 720-3 may include various processing circuits and / or executable program elements and select the data required to provide a response from the data acquired by the input data acquisition unit 720-1 or the data preprocessed by the input data preprocessor 720-2. The selected data may be provided to the response result providing unit 720-4. The input data selection unit 720-3 may select some or all of the acquired or preprocessed data based on predetermined selection criteria for providing a response. The input data selection unit 720-3 may also select data based on predetermined selection criteria by learning from the model learning unit 710-4.
[0191] The model updating unit 720-5 may include various processing circuits and / or executable program elements and control the updating of the artificial intelligence model based on the evaluation of the response result provided by the response result providing unit 720-4. For example, the model updating unit 720-5 may provide the response result provided by the response result providing unit 720-4 to the model learning unit 710-4, so that the model learning unit 710-4 may request further learning or updating of the AI model.
[0192] Figure 10 is a diagram illustrating an example of learning and determining data through interaction of the electronic device 100 (A) and an external server (S) according to an embodiment.
[0193] Reference Figure 10 , the external server (S) may learn a standard for identifying an entity from the conversation, and the electronic device 100 may identify the entity from the conversation based on the learning result of the server (S).
[0194] In this example, the model learning unit 710-4 of the server S may execute Figure 8 Functions of the learning unit 710 shown. For example, the model learning unit 710-4 of the server S can learn the criteria about which dialogue should be used to identify the entity and how to use the above information to identify the entity.
[0195] The response result providing unit 720-4 of the electronic device 100 applies the data selected by the input data selecting unit 720-3 to the artificial intelligence model generated by the server S to identify the entity from the conversation. The response result providing unit 720-4 of the electronic device 100 may receive the artificial intelligence model generated by the server S from the server S and identify the entity from the conversation using the received artificial intelligence model.
[0196] Figure 11 is a flowchart illustrating an exemplary method of controlling an electronic device according to an embodiment.
[0197] In operation S1110, multiple entities included in a sentence input based on an entity recognition model are identified to extract a sample entity or multiple sample entities included in each of a plurality of sample conversations. The entity recognition model is obtained by learning through an AI algorithm. In operation S1120, search results corresponding to the multiple entities are obtained. In operation S1130, if the multiple entities do not correspond to the search results, the sentence input based on the search results is corrected and provided.
[0198] The providing in operation S1130 may include identifying an attribute of each of the plurality of entities, and identifying whether the plurality of entities corresponds to the search result based on at least one of the identified plurality of attributes.
[0199] When the plurality of entities do not correspond to the search result, the providing in operation S1130 may further include providing a guide message to guide an operation in which an error exists in the plurality of entities.
[0200] The obtaining in operation S1120 may obtain search results corresponding to at least two entities having different attributes.
[0201] The providing in operation S1130 may include obtaining importance of each of the plurality of entities based on a context of the input sentence, and identifying whether the remaining entities correspond to the search result based on an entity having the highest importance among the plurality of entities.
[0202] The recognition in operation S1110 may recognize a plurality of words included in the input sentence, and recognize a plurality of entities among the plurality of words based on a context of the input sentence.
[0203] The recognition in operation S1110 may be: when a second sentence following a first sentence in the input sentence is an affirmative sentence, recognizing a first word recognized in the sentence as one of the plurality of entities.
[0204] The recognition in operation S1110 may be: when a second sentence following the first sentence in the input sentence is a negative sentence, not using a first word recognized in the sentence among the plurality of words as the plurality of entities.
[0205] When there is an error in the input sentence, the providing in operation S1130 may provide information related to the search result by correcting the input sentence.
[0206] When a command (eg, a user command) is input, a step of verifying a plurality of entities for obtaining the search result may be further included.
[0207] According to various exemplary embodiments, the electronic device may reduce required data capacity and increase the speed of providing information according to context by using an entity recognition model trained by an AI algorithm.
[0208] The methods according to the various embodiments described above may be implemented as an application format that can be installed in an electronic device.
[0209] The methods according to the various exemplary embodiments described above may be implemented through software upgrade and / or hardware upgrade of the electronic device.
[0210] The various exemplary embodiments described above may be performed by an embedded server provided in the electronic device or an external server of the electronic device.
[0211] According to the present disclosure, various exemplary embodiments described above can be implemented with software including instructions stored in a machine-readable storage medium that is readable by a machine (e.g., a computer). According to one or more embodiments, the device can call instructions from a storage medium and operate according to the called instructions, and can include an electronic device (e.g., electronic device A). When the processor executes the instructions, the processor can use other components to perform functions corresponding to the instructions directly or under the control of the processor. The instructions may include code generated by a compiler or code that can be executed by an interpreter. The machine-readable storage medium can be provided in the form of a non-transitory storage medium.
[0212] According to various exemplary embodiments of the present disclosure, the method may be provided in a computer program product. The computer program product may be exchanged as a commodity between a seller and a buyer. The computer program product may be distributed in the form of a machine-readable storage medium (e.g., a compact disc read-only memory (CD-ROM)) or through an application store (e.g., PlayStore). TM ) Online distribution. In the case of online distribution, at least part of the computer program product may be temporarily or at least temporarily stored in a storage medium, such as a manufacturer's server, an application store's server, or a memory of a relay server.
[0213] Each element (for example, module or program) according to various exemplary embodiments can include single entity or multiple entities, and some sub-elements of above-mentioned sub-elements can be omitted, which elements can be further included in various embodiments. Alternatively or additionally, some elements (for example, module or program) can be integrated into an entity to perform the same or similar function performed by each corresponding element before integration. According to various embodiments, the operation performed by module, program or other elements can be performed sequentially in a parallel, repetitive or tentative manner, or at least some operations can be performed in different orders.
[0214] Although various embodiments have been shown and described with reference to certain drawings, the present disclosure is not limited to the exemplary embodiments or drawings, and those skilled in the art will understand that various changes in form and details may be made therein without departing from the spirit and scope as defined, for example, by the appended claims and their equivalents.
Claims
1. An electronic device comprising: a memory configured to store an entity recognition model; as well as a processor configured to control the electronic device to: Identify a plurality of entities included in an input sentence based on the entity recognition model, identifying an attribute of each of the plurality of entities, Obtain search results corresponding to the multiple entities, identifying whether the plurality of entities corresponds to the search results based on at least one of the plurality of identified attributes, and displaying a message indicating that the plurality of entities in the input sentence include errors based on that the plurality of entities do not correspond to the search results, and correcting and providing the input sentence, Wherein, the processor is further configured to control the electronic device: Based on the fact that the multiple entities do not correspond to the search results, obtaining the importance of each of the multiple entities based on the context of the input sentence, generating a query sentence based on attributes of a first entity and a second entity having higher importance than the first entity among the plurality of entities; Correcting the first entity according to the search results based on the second entity and the search results based on the query sentence, The entity recognition model is obtained by learning through an artificial intelligence algorithm to extract multiple sample entities included in each of multiple sample conversations.
2. The electronic device according to claim 1, wherein The message is a guidance message for correcting the error.
3. The electronic device according to claim 1, wherein The processor is further configured to control the electronic device to obtain search results corresponding to at least two entities having different attributes.
4. The electronic device according to claim 1, wherein The processor is further configured to control the electronic device to: identifying a plurality of words included in the input sentence, and The plurality of entities are identified among the plurality of words based on a context of the input sentence.
5. The electronic device according to claim 4, wherein: The processor is further configured to control the electronic device to recognize a first word among the plurality of words that is recognized in the first sentence as one of the plurality of entities based on a second sentence following the first sentence in the input sentence being an affirmative sentence. The electronic device according to claim 4 , wherein: The processor is further configured to control the electronic device to not use a first word of the plurality of words recognized in the first sentence as the plurality of entities based on a second sentence following the first sentence in the input sentence being a negation sentence.
7. The electronic device according to claim 1, wherein The processor is further configured to control the electronic device to correct and provide the input sentence based on the presence of an error in the input sentence.
8. The electronic device according to claim 1, wherein The processor is further configured to control the electronic device to provide the plurality of entities used for obtaining the search results based on input of a command.
9. A method for controlling an electronic device, the method comprising: Identify multiple entities included in the input sentence based on the entity recognition model; identifying an attribute of each of the plurality of entities; Obtaining search results corresponding to the multiple entities; identifying whether the plurality of entities correspond to the search results based on at least one of the plurality of identified attributes; as well as displaying a message indicating that the plurality of entities in the input sentence include errors based on the plurality of entities not corresponding to the search results, and correcting and providing the input sentence based on the search results, Wherein, the providing includes: Based on the fact that the multiple entities do not correspond to the search results, obtaining the importance of each of the multiple entities based on the context of the input sentence, generating a query sentence based on attributes of a first entity and a second entity having higher importance than the first entity among the plurality of entities; Correcting the first entity according to the search results based on the second entity and the search results based on the query sentence, The entity recognition model is trained by learning through an artificial intelligence algorithm to extract multiple sample entities included in each of multiple sample conversations.
10. The method according to claim 9, wherein: The message is a guidance message for correcting the error.
11. The method according to claim 9, wherein The obtaining includes obtaining search results corresponding to at least two entities with different attributes.
Citation Information
Patent Citations
Ambiguous structured search queries on online social networks
CN105009117A
Typo revise automatic system and method for revising the same
KR101378162B1
Method and apparatus for automatic entity disambiguation
US20070067285A1