Electronic device for extracting keyword information from conversations between people based on artificial intelligence and operation method thereof
Patent Information
- Application Number
- KR1020220078526
- Authority / Receiving Office
- KR · KR
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-06-27
- Publication Date
- 2026-09-04
- Estimated Expiration
- 2042-06-27
Smart Images

Figure 112022067173406-PAT00001_ABST
Abstract
Description
Technology Field
[0001] The present invention relates to an electronic device for extracting keyword information from a conversation between people based on artificial intelligence and a method of operation thereof, and more specifically, to an electronic device for extracting keyword information from a conversation between people converted into text and a method of operation thereof. Background Technology
[0002] With the recent development of technologies such as big data, artificial intelligence, and the Internet of Things, overall improvements are being made to services provided in daily life. In particular, technologies are being developed that provide convenience in daily life and enhance business environments by deep learning human behavior based on big data.
[0003] Recently, the latest technologies are also being applied to the real estate sector. For example, asset management technologies utilizing big data, real estate brokerage or direct transaction technologies using artificial intelligence, and real estate asset securitization technologies using blockchain are being introduced.
[0004] As an example of the technology forming the background of the present invention, Korean Registered Patent Publication No. 10-2300683 (September 9, 2021) discloses a method for easily and comprehensively managing building management, lease management, real estate-related finance, presale and brokerage agency, development and remodeling implementation, consulting, asset management, etc. The problem to be solved
[0005] For example, real estate agents receive inquiry calls from a large number of customers, but their work efficiency is significantly reduced because they usually record the conversations by hand.
[0006] The present invention has been devised to solve the aforementioned problems, and aims to automatically extract keywords from conversation content with customers using artificial intelligence and to organize and provide the extracted keywords according to the context. means of solving the problem
[0007] An electronic device for extracting keyword information from a conversation between people based on artificial intelligence according to various embodiments of the present invention controls the storage unit to store a text recording a conversation between people and a plurality of keywords defined according to a predetermined classification criterion, and based on the plurality of keywords defined, filters the plurality of keywords included in at least one sentence included in the text, and when a second keyword among the plurality of keywords is searched in one direction based on a first keyword among the filtered plurality of keywords, generates a first keyword set including the first keyword and the second keyword, terminates the keyword search for the one direction when a non-keyword is searched in the one direction, includes the third keyword in the first keyword set when a third keyword among the plurality of keywords is searched in the other direction based on the first keyword among the filtered plurality of keywords, terminates the keyword search for the other direction when a non-keyword is searched in the other direction, determines the category of the first keyword set based on the predetermined classification criterion, and the first keyword set and may include a processor that controls the storage unit to store by matching the determined category.
[0008] In addition, a method of operation of an electronic device for extracting keyword information from a conversation between people based on artificial intelligence according to various embodiments of the present invention comprises: storing a text recording a conversation between people and a plurality of keywords defined according to a predetermined classification criterion; filtering a plurality of keywords included in at least one sentence included in the text based on the predetermined plurality of keywords; generating a first keyword set including the first keyword and the second keyword when a second keyword among the plurality of keywords is searched in one direction based on a first keyword among the filtered plurality of keywords, and terminating the keyword search for the one direction when a non-keyword is searched in the one direction; including the third keyword in the first keyword set when a third keyword among the plurality of keywords is searched in another direction based on the first keyword among the filtered plurality of keywords, and terminating the keyword search for the other direction when a non-keyword is searched in the other direction; determining a category of the first keyword set based on the predetermined classification criterion, and matching and storing the first keyword set and the determined category. It may include the process. Effects of the invention
[0009] According to various embodiments of the present invention, the present invention can automatically extract keywords from conversation content with a customer using artificial intelligence and provide the extracted keywords organized according to the context. Brief explanation of the drawing
[0010] FIG. 1 is a drawing of a call content processing system according to one embodiment of the present invention. FIG. 2 is a block diagram of a server according to one embodiment of the present invention. FIG. 3 illustrates entity name tag information according to one embodiment of the present invention. FIG. 4 is a flowchart of a process for generating call content information according to one embodiment of the present invention. FIG. 5 illustrates call content information according to one embodiment of the present invention. FIG. 6 is a flowchart of a keyword set selection process according to one embodiment of the present invention. FIG. 7 illustrates a code according to one embodiment of the present invention. FIG. 8 illustrates the weight values of an entity name tag according to one embodiment of the present invention. FIG. 9 is a detailed block diagram of an electronic device according to one embodiment of the present invention. FIG. 10 is a flowchart of a method of operation of an electronic device according to one embodiment of the present invention. Specific details for implementing the invention
[0011] The operating principles of preferred embodiments of the present invention will be described in detail below with reference to the attached drawings. Furthermore, in describing embodiments of the invention, specific descriptions of related known functions or configurations will be omitted if it is determined that such detailed descriptions could obscure the essence of the present disclosure. Additionally, the terms used below are defined considering their functions in the present invention, and these may vary depending on the intentions or conventions of the user or operator. Therefore, the definitions of the terms used should be interpreted based on the content throughout this specification and the corresponding functions.
[0012] FIG. 1 is a drawing of a call content processing system according to one embodiment of the present invention.
[0013] Referring to FIG. 1, the call content processing system (10) may include a customer user terminal (100), a server (200), and a real estate agent user terminal (300).
[0014] The customer user terminal (100) can perform wired or wireless communication with the real estate agent user terminal (300) through a network. For example, the customer user terminal (100) can perform a voice call with the real estate agent user terminal (300). In this case, the customer user terminal (100) can run an app that performs a call recording function to record the content of the call and transmit the recorded file to the server (200). Alternatively, the customer user terminal (100) can run a speech-to-text (STT) engine to generate text for the recorded file and transmit the generated text file to the server (200).
[0015] Additionally, the real estate agent user terminal (300) may also run an app that performs a separate call recording function. In this case, the real estate agent user terminal (300) may perform a voice call with the customer user terminal (100) to generate a recording file. In this case, the real estate agent user terminal (300) may transmit the generated recording file to the server (200). Alternatively, the real estate agent user terminal (300) may run an STT engine to generate text for the recording file and transmit the generated text file to the server (200).
[0016] The server (200) can control the call content processing system (10) overall. For example, the server (200) can communicate with a customer user terminal (100) or a real estate agent user terminal (300) to receive a file containing recorded call content or a text file containing converted call content. When the server (200) receives a file containing recorded call content, it can operate the STT engine described above to convert the recorded file into text.
[0017] The operation of each of the above-described customer user terminal (100), real estate agent terminal (300), and server (200) can be performed at any of the customer user terminal (100), real estate agent terminal (300), and server (200).
[0018] Meanwhile, the server (200) can generate call content information by extracting keywords from the text and transmit it to either a customer user terminal (100) or a real estate agent user terminal (300). The call content information will be explained in detail with reference to FIG. 5, which will be described later.
[0019] In the following, various embodiments of the present invention are described using examples related to real estate transactions, but it is understood that the present invention can be applied to matters other than those related to real estate transactions.
[0020] Generally, the devices, systems, and methods disclosed herein may include a number of different devices and computer systems, such as, for example, general-purpose computing systems, server-client computing systems, consumer-merchant computing systems, mainframe computing systems, cloud computing infrastructure, telephone computing systems, laptop computers, desktop computers, smartphones, cellular phones, personal digital assistants (PDAs), tablet computers, and other mobile devices, and may be implemented within the number of different devices and computer systems. The devices and computing systems may include one or more databases and other storage devices, servers, and additional components, for example, processors, modems, terminals and displays, computer-readable media, algorithms, modules and applications, and other computer-related components. The devices and computer systems and / or computing infrastructure are configured, programmed, and adapted to perform the functions and processes of the systems and methods disclosed herein.
[0021] Furthermore, various embodiments of the present invention described below may be carried out by AI (Artificial Intelligence) technology. Artificial intelligence refers to the artificial implementation of human learning ability, reasoning ability, and perceptual ability by a computer. The intelligence capable of artificial learning in artificial intelligence can be implemented through machine learning.
[0022] Specifically, deep learning technology, a type of machine learning, can involve a process of learning by descending to deep levels in multiple stages based on data. Deep learning can represent a set of machine learning algorithms that extract key data from data by increasing the stages.
[0023] Deep learning structures may include artificial neural networks (ANN), and for example, deep learning structures may be composed of deep neural networks (DNN), such as convolutional neural networks (CNN), recurrent neural networks (RNN), and deep belief networks (DBN).
[0024] The deep learning structure according to various embodiments of the present invention may utilize various known structures. For example, the deep learning structure according to the present invention may include CNN, RNN, DBN, etc. RNN is widely used in natural language processing and is an effective structure for processing time-series data that changes over time; it can construct an artificial neural network structure by stacking layers at every moment. DBN may include a deep learning structure composed of multiple layers of RBM (restricted Boltzmann machine), a deep learning technique. By repeating RBM training, when a certain number of layers are reached, a DBN having that number of layers can be constructed.
[0025] CNNs can include models that mimic human brain functions, based on the assumption that when a person recognizes an object, basic features of the object are extracted, then undergo complex calculations within the brain to recognize the object based on the results.
[0026] Meanwhile, the training of artificial neural networks can be achieved by adjusting the weights of connections between nodes (and bias values if necessary) to produce a desired output for a given input. Furthermore, artificial neural networks can continuously update weight values through learning. Additionally, methods such as backpropagation can be used for the training of artificial neural networks.
[0027] FIG. 2 is a block diagram of a server according to one embodiment of the present invention.
[0028] Referring to FIG. 2, the server (200') may include a storage unit (210) and a processor (220).
[0029] The storage unit (210) may include a volatile or non-volatile recording medium.
[0030] The storage unit (210) is connected to one or more processors and can store codes that cause the processor (220) to control the server (200') when a specific process is executed by the processor (220).
[0031] Here, the storage unit (210) may include a magnetic storage medium or a flash storage medium, but the scope of the present invention is not limited thereto. The storage unit (210) may include internal memory and / or external memory, and may include volatile memory such as DRAM, SRAM, or SDRAM, non-volatile memory such as OTPROM (one time programmable ROM), PROM, EPROM, EEPROM, mask ROM, flash ROM, NAND flash memory, or NOR flash memory, flash drives such as SSD, CF (compact flash) card, SD card, Micro-SD card, Mini-SD card, or memory stick, or storage devices such as HDD.
[0032] The storage unit (210) can store various data or information. For example, the storage unit (210) can store a recording file of a conversation between people, text containing the recording file, and multiple keywords defined according to a predefined classification criterion. Here,
[0033] The processor (220) can control the server (200') overall. For example, the processor (220) can control the process of extracting keyword information from conversations between people.
[0034] Specifically, the processor (220) can control the storage unit (210) to store text recording conversations between people and multiple keywords defined according to predefined classification criteria. Here, the classification criteria for the multiple keywords defined may be defined as classification according to morphemes, classification according to predefined named entity tag information, and classification according to user dictionary definitions.
[0035] For example, classification based on morphemes can utilize Mecab, which classifies Korean morphemes. In this case, Korean morpheme part-of-speech tags can consist of 43 items.
[0036] Referring to FIG. 3, the predefined entity name tag information (301) can be defined as information that tags a person's name, personal relationship, position, etc., for at least one word or word. In this case, the predefined entity name tag information (301) may consist of 41 items. FIG. 3 includes tag information related to real estate, and various embodiments of the present invention may be utilized in fields other than real estate.
[0037] User dictionary definitions may be words or words individually defined by the user in addition to classifications based on morphemes and predefined named entity tag information.
[0038] The importance of the aforementioned predefined entity-named tag information and the importance of the classification according to the aforementioned user dictionary definition are at the same level, and the importance of the classification according to the aforementioned morpheme can be set to a lower importance than the importance of the aforementioned predefined entity-named tag information and the importance of the classification according to the aforementioned user dictionary definition.
[0039] Here, importance can be defined as the filtering classification to be applied preferentially when filtering morphemes or words.
[0040] Meanwhile, the processor (220) can filter multiple keywords included in at least one sentence included in the text based on the aforementioned predefined multiple keywords. Here, the processor (220) can select keywords by performing keyword search for each of the forward and backward directions of at least one sentence.
[0041] For example, the processor (220) may generate a first keyword set including the first keyword and the second keyword when the second keyword among the multiple keywords is searched in one direction for at least one sentence based on the first keyword among the multiple keywords. Or / also, the processor (220) may terminate the keyword search for the one direction when a non-keyword is searched in the one direction.
[0042] Additionally, the processor (220) may include the third keyword in the first keyword set when the third keyword among the multiple keywords is searched in the other direction for at least one sentence based on the first keyword among the multiple keywords. Or / Additionally, the processor (220) may terminate the keyword search for the other direction when a non-keyword is searched in the other direction.
[0043] In one embodiment of the present invention described above, the processor (220) can determine the category of the first keyword set based on a predetermined classification criterion and control the storage unit (210) to store the first keyword set and the determined category by matching them.
[0044] For example, the processor (220) can determine the category of the first set of keywords based on classification according to entity tag information included in the predefined classification criteria.
[0045] For example, if the processor (220) includes a keyword corresponding to at least one of DTY (year), DTM (month) and DTD (day) that correspond to entity name tag information in the first keyword set, the first keyword set can be classified (or determined) as schedule information (or move-in date information).
[0046] Alternatively, the processor (220) may classify (or determine) the first keyword set as address information (or address information) if the first keyword set contains a keyword corresponding to at least one of LCP (state, county name), LCT (city, county), and LCK (district) that corresponds to entity name tag information.
[0047] According to one embodiment of the present invention described above, since the present invention searches for previously classified keywords at the beginning and end of a sentence, the context of the sentence can be reflected when extracting a keyword group (or set). This allows for an increase in the semantic accuracy of the keyword group.
[0048] FIG. 4 is a flowchart of a process for generating call content information according to one embodiment of the present invention.
[0049] Referring to FIG. 4, the processor (220) can perform call recording by running an application that includes a call recording function (S410). For example, the application can provide a real estate information processing platform service available to a real estate agent.
[0050] The processor (220) can perform speech-to-text (STT) conversion on a call recording file and store the converted text in a storage unit (210) (S420). Here, since STT is a known technology, a detailed description is omitted here.
[0051] The processor (220) can obtain a set of keywords for the text (S430). The process of obtaining the set of keywords will be explained in detail with reference to FIGS. 6 to 9.
[0052] The processor (220) can generate call content information (S440). The call content information will be described in detail below with reference to FIG. 5.
[0053] FIG. 5 illustrates call content information according to one embodiment of the present invention.
[0054] Referring to FIG. 5, the call content information (501) may include inquiry type (or transaction type), address (or address information), move-in date (or schedule information), transaction amount and call content (or call summary).
[0055] According to one embodiment of the present invention, a processor (220) can distinguish whether an inquiry is a request for sale, a request for purchase, a request for lease from the landlord, a request for lease from the tenant, etc. using a text classifier engine. To this end, the processor (220) can optimize and train a basic natural language processing model KoELECTRA-Base-v3 to fit eight classification systems of real estate transactions. Here, the eight classification systems of real estate transactions may include sale, purchase, offering for Jeonse, seeking for Jeonse, offering for monthly rent, seeking for monthly rent, offering (property type unknown), and seeking (property type unknown).
[0056] In addition, according to one embodiment of the present invention, the processor (220) can derive an address (or address information), an occupancy date (or schedule information), and a transaction amount through keyword analysis considering the context according to various embodiments of the present invention, which will be described in detail later through FIGS. 6 to 9.
[0057] Additionally, according to one embodiment of the present invention, the processor (220) may output text in which the call content is converted as is (the call content portion of the call content information (401)) or output a summary of the call content.
[0058] Here, the processor (220) can summarize the content of a call using a text summary engine. Specifically, the processor (220) can generate a summarized sentence within a preset range for the speech-recognized text. The processor (220) can assign a TextRank using NLP-based graph vertex values and generate a summary sentence based on weights and similarity values based on a weighted graph between graph vertices (morphemes). In this case, the processor (220) can generate N summary sentences and then select a final summary sentence based on the weighted similarity rank between keywords extracted from the original sentence.
[0059] FIG. 6 is a flowchart of a keyword set selection process according to one embodiment of the present invention.
[0060] According to one embodiment of the present invention, the processor (220) can control the storage unit (210) to store text recording a conversation between people and a plurality of keywords defined according to predefined classification criteria. Here, the classification criteria for the plurality of keywords defined may be defined as morphological classification, classification according to predefined named entity tag information, and classification according to user dictionary definition.
[0061] The process of selecting a keyword set is described below. The process of selecting a keyword set may be based on the determination of whether something is a keyword. The determination of whether something is a keyword may include a process using a morphological filter, a process using predefined named entity tag information, a process using user dictionary definitions, and a process using keyword extraction rules.
[0062] First, the processor (220) can filter keywords from text using a morpheme filter (a predefined set of multiple keywords classified by morpheme unit) (S610). For example, the processor (220) can filter keywords from text using Mecab, a Korean morpheme extractor.
[0063] Additionally, the processor (220) can filter keywords according to predefined named entity tag information (S620). For example, the processor (220) can configure a named entity recognizer using a general language model, such as the KoELECTRA-Base-v3 model. Additionally, the processor (220) can perform fine-tuning on the named entity recognizer model based on a pre-trained model, with the purpose of real estate-related call content.
[0064] For example, the processor (220) can perform pre-training and fine-tuning using BERT (Bidirectional Encoder Representations from Transformers). In this case, the processor (220) can perform pre-training using raw data, where the raw data may be, for example, news comments and replies (comments on comments), or corpus data provided by the National Institute of Language (newspaper, spoken, written, messenger, web). Additionally, the processor (220) can perform fine-tuning using the pre-defined named entity tag information (301) of FIG. 3 and BERT (Bidirectional Encoder Representations from Transformers).
[0065] Here, BERT can create a pretrained model by feeding input layers containing tokens, segments, and locations into an encoder transformer layer and training on NSP and MLM. In BERT, it is possible to build a fine-tuned model—that is, a language model that can be used later by attaching various layers, such as sentiment analysis, summarization, and classification layers for video-to-text or text-to-video.
[0066] Additionally, the processor (230) can define the priority of tagged entity names by assigning tag weights for keyword extraction.
[0067] By performing the process described above, the processor (220) can generate an optimized named entity recognition model.
[0068] The aforementioned predefined entity name tag information may be defined as the predefined entity name tag information (301) of FIG. 3 or interpreted by an optimized entity name recognizer.
[0069] The processor (220) can perform filtering based on user dictionary definitions (S630). User dictionary definitions may be words or words individually defined by the user in addition to classifications based on morphemes and predefined named entity tag information. By using user dictionary definitions, words or words that are not filtered from classifications based on morphemes and predefined named entity tag information but should be classified as keywords can be filtered.
[0070] The importance of the aforementioned predefined named entity tag information and the importance of the classification according to the aforementioned user dictionary definition are at the same level, and the importance of the classification according to the aforementioned morpheme can be set to a lower importance than the importance of the aforementioned predefined named entity tag information and the importance of the classification according to the aforementioned user dictionary definition. Here, importance can be defined as the filtering classification to be applied preferentially during morpheme or word filtering.
[0071] The processor (220) can filter keywords according to keyword extraction rules (S640). For example, the processor (220) can filter keywords based on a keyword extraction rule definition file to which stop words (forbidden words, stop words) to be excluded from keywords, keyword criteria front and back reference settings, headword settings, keyword particle processing settings, adverb processing settings, and keyword search settings based on spacing criteria are applied.
[0072] Through the above-described keyword determination (keyword search) process, the processor (220) can extract at least one set of keywords (S650). Additionally, the processor (220) can select a final set of keywords by removing duplicate sets of keywords (S660).
[0073] Below, various embodiments for extracting keyword sets using specific text as an example are described in detail.
[0074] As an example of one embodiment of the present invention, the text recording a conversation between people, “Ah yes, I’m planning to move on May 5th. Yes, I’ll visit before then,” is used to explain the invention.
[0075] First, the processor (220) can filter multiple keywords included in at least one sentence in the text, “Ah yes, I’m planning to move on May 5. Yes, I’ll visit before then,” based on predefined keywords.
[0076] Referring to the code (701) of FIG. 7, the processor (220) can use a morphological filter to extract moving (NNG), before (NNG), and visit (NNG) as morphological keywords from the sentence “Ah yes, I’m planning to move on May 5. Yes, I’ll visit before then.” Here, NNG can be defined as a common noun and NNP as a proper noun.
[0077] Additionally, the processor (220) can extract May (DTM) and 5th (DTD) from the sentence “Ah yes, I’m planning to move on May 5th. Yes, I’ll visit before then.” based on the entity filter (or predefined entity tag information (301)). In this case, the processor (220) can additionally perform the process of excluding or selecting the extracted keywords based on the weight values of the entity tag (or the weight table of the entity tag) (801) of FIG. 8. For example, assuming that weight values less than 3 are set to be excluded from keywords, May (DTM) and 5th (DTD) can be selected as final keywords because their weights are greater than 3.
[0078] Additionally, if 'moving' and 'visiting' are set as keywords in the user dictionary, the processor (220) can extract 'moving' and 'visiting' as keywords based on classification according to the user dictionary. As such, classification based on the user dictionary may overlap with classification based on morphological classification and predefined named entity tag information.
[0079] Additionally, the processor (220) may generate a set of keywords by considering the preceding and succeeding context. For example, the processor (220) may generate a first set of keywords including the first keyword and the second keyword when the second keyword among the multiple keywords is searched in one direction based on the first keyword among the multiple keywords, and may terminate the keyword search for the one direction when a non-keyword is searched in one direction.
[0080] Additionally, the processor (220) may terminate keyword search for one direction when a non-keyword is searched in one direction based on the second keyword. Additionally, if a fourth keyword among multiple keywords is searched in another direction based on the second keyword, a second keyword set including the second keyword and the fourth keyword may be generated. Additionally, if a fifth keyword among multiple keywords is additionally searched in another direction based on the second keyword, the processor (220) may include the fifth keyword in the second keyword set, and if a non-keyword is searched in the other direction, keyword search for the other direction may be terminated.
[0081] For example, in the sentence “Ah yes, I plan to move on May 5th. Yes, I will visit before then.”, the processor (220) can perform keyword search in the forward direction (or forward direction, one direction) based on the keyword [May]. In this case, [Yes] is searched, and the processor (220) can terminate keyword search in the forward direction because [Yes] is not defined in multiple predefined keywords (keywords based on morphological classification, keywords based on classification based on predefined named entity tag information, and keywords defined by classification based on user dictionary definition).
[0082] Additionally, the processor (220) can extract the keyword [5th] by performing a keyword search in the backward direction (or backward direction, one direction) based on [May]. Additionally, the processor (220) can extract the keyword [moving] by performing an additional keyword search in the backward direction based on [May]. Additionally, the processor (220) can search for [yes] by performing an additional search in the backward direction based on [May]. In this case, the processor (220) can terminate the keyword search for the backward direction because [yes] is not defined in the multiple predefined keywords. In this case, the processor (220) can generate a first keyword set including the searched keywords [May], [5th], and [moving]. As an example, the first keyword set may be determined as [moving on May 5th] based on the order in which the searched keywords are included in the sentence. Here, the particle 'e' may be inserted by the keyword extraction rule described above.
[0083] The aforementioned search process can also be performed repeatedly based on each of the keywords [5 days], [moving], [before], and [visit].
[0084] To explain the process of performing a search based on the keyword [5 days], the processor (220) can extract [May] by performing a keyword search in the forward direction based on [5 days]. Additionally, the processor (220) can search for [four] by performing an additional search in the forward direction based on [May]. In this case, the processor (220) can terminate the keyword search in the forward direction because [four] is not defined in the multiple predefined keywords.
[0085] Additionally, the processor (220) can extract the keyword [moving] by performing a keyword search in the backward direction based on [5th]. Additionally, the processor (220) can search for [yes] by performing an additional search in the backward direction based on [5th]. In this case, the processor (220) can terminate the keyword search in the backward direction because [yes] is not defined in the multiple predefined keywords. In this case, the processor (220) can generate a second keyword set including the searched keywords [May], [5th], and [moving]. As an example, the second keyword set may be determined as [moving on May 5th] based on the order in which the searched keywords are included in the sentence. Here, the particle 'e' may be inserted by the keyword extraction rule described above.
[0086] To explain the process of performing a search based on the keyword [moving], the processor (220) can extract [5 days] by performing a keyword search in the forward direction based on [moving]. Additionally, the processor (220) can search for [May] by performing an additional search in the forward direction based on [moving]. Additionally, the processor (220) can search for [four] by performing an additional search in the forward direction based on [moving]. In this case, the processor (220) can terminate the keyword search in the forward direction because [four] is not defined in the multiple predefined keywords.
[0087] Additionally, the processor (220) can search for the keyword [yes] by performing a keyword search in the backward direction based on [moving]. In this case, the processor (220) can terminate the keyword search in the backward direction because [yes] is not defined in the multiple predefined keywords. In this case, the processor (220) can generate a third keyword set including the searched keywords [May], [5th], and [moving]. For example, the third keyword set may be determined as [moving on May 5th] based on the order in which the searched keywords are included in the sentence. Here, the particle 'e' may be inserted by the keyword extraction rule described above.
[0088] To explain the process of performing a search based on the keyword [previous], the processor (220) can search for [it] by performing a keyword search in the forward direction based on [previous]. In this case, the processor (220) can terminate the keyword search in the forward direction because [it] is not defined in a plurality of predefined keywords.
[0089] Additionally, the processor (220) can extract the keyword [visit] by performing a keyword search in the backward direction based on [previous]. Additionally, the processor (220) can determine that the sentence has ended by performing an additional search in the backward direction based on [previous]. In this case, the processor (220) can terminate the keyword search for the backward direction.
[0090] In this case, the processor (220) can generate a fourth keyword set including the searched keywords [previous] and [visit]. For example, the fourth keyword set may be determined as [previous visit] based on the order in which the searched keywords are included in the sentence. Here, the particle 'e' may be inserted by the keyword extraction rule described above.
[0091] To explain the process of performing a search based on the keyword [visit], the processor (220) can extract [previous] by performing a keyword search in the forward direction based on [visit]. Additionally, the processor (220) can search for [that] by performing an additional search in the forward direction based on [visit]. In this case, the processor (220) can terminate the keyword search for the forward direction because [that] is not defined in multiple predefined keywords.
[0092] Additionally, the processor (220) can determine that the sentence has ended by performing a keyword search in the backward direction based on [visit]. In this case, the processor (220) can terminate the keyword search for the backward direction.
[0093] In this case, the processor (220) can generate a fifth keyword set including the searched keywords [previous] and [visit]. For example, the fifth keyword set may be determined as [previous visit] based on the order in which the searched keywords are included in the sentence. Here, the particle 'e' may be inserted by the keyword extraction rule described above.
[0094] In various examples of the present invention described above, a first keyword set to a fifth keyword set is generated. A processor (220) can obtain a similarity between each of the first to fifth keyword sets. Here, the similarity can be determined through character and spacing comparison. If the similarity exceeds a predefined similarity, the processor (220) can select only one keyword set among the duplicate keyword sets.
[0095] For example, the processor (220) may determine that the first to third keyword sets exceed a predefined similarity and select only the first keyword set, [moving on May 5], as the final keyword set. Additionally, the processor (220) may determine that the fourth keyword set and the fifth keyword set exceed a predefined similarity and select only the fourth keyword set, [visited before], as the final keyword set.
[0096] In this case, the processor (220) can store the first keyword set and the fourth keyword set as the final keyword set.
[0097] The processor (220) can determine the category of the first keyword set based on the aforementioned predefined classification. For example, the processor (220) can determine May (DTM) and 5th (DTD) of the first keyword set as the category for the schedule (or move-in date of the call content information (501)). In this case, the processor (220) can store the first keyword set and the determined category by matching them. Additionally, the processor (220) can generate the call content information (501) based on the stored matching information and transmit it to the customer user terminal (100) and the real estate agent user terminal (200).
[0098] In the various examples of the present invention described above, the sentence “Ah yes, I plan to move on May 5th. Yes, I will visit before then,” which corresponds to a schedule or move-in date among the call content information (501), was explained, but is not limited thereto, and keyword set generation and category determination may also be performed for other categories included in the call content information (501), such as address (or address information) and transaction amount, depending on the content of each sentence.
[0099] According to one embodiment of the present invention described above, since the present invention searches for previously classified keywords at the beginning and end of a sentence, the context of the sentence can be reflected when extracting keyword groups (or sets). This improves the semantic accuracy of keyword groups and enables accurate category matching.
[0100] FIG. 9 is a detailed block diagram of an electronic device according to one embodiment of the present invention.
[0101] Referring to FIG. 9, the electronic device (900) includes a communication unit (910), a storage unit (920), and a processor (930).
[0102] The communication unit (910) performs communication. The communication unit (910) can communicate with external electronic devices through various communication methods such as BT (Bluetooth), WI-FI (Wireless Fidelity), ZigBee, IR (Infrared), NFC (Near Field Communication), etc.
[0103] The storage unit (920) can store an O / S (Operating System) software module for operating the electronic device (900), data for configuring various UI screens provided in the display area, etc.
[0104] In addition, the storage unit (920) is readable and writable.
[0105] The processor (930) controls the overall operation of the electronic device (900) using various programs stored in the storage unit (920).
[0106] Specifically, the processor (930) includes RAM (931), ROM (932), main CPU (933), graphics processing unit (934), first to n interfaces (935-1 to 935-n) and a bus (936).
[0107] Here, RAM (931), ROM (932), main CPU (933), graphics processing unit (934), first to n interfaces (935-1 to 935-n), etc. can be connected to each other via a bus (936).
[0108] The first to n interfaces (935-1 to 935-n) are connected to the various components described above. One of the interfaces may be a network interface connected to an external device through a network.
[0109] The ROM (932) stores a set of instructions for booting the system, etc. When a turn-on command is input and power is supplied, the main CPU (933) copies the O / S stored in the storage unit (920) to the RAM (931) according to the instructions stored in the ROM (932), and executes the O / S to boot the system.
[0110] When booting is complete, the main CPU (933) copies various stored application programs to RAM (931) and executes the application programs copied to RAM (931) to perform various operations.
[0111] The main CPU (933) accesses the storage unit (920) and performs booting using the O / S stored in the storage unit (920). Then, the main CPU (933) performs various operations using various programs, content, data, etc. stored in the storage unit (920).
[0112] The graphics processing unit (934) uses the calculation unit and the rendering unit to generate a screen containing various objects such as icons, images, and text.
[0113] FIG. 10 is a flowchart of a method of operation of an electronic device according to one embodiment of the present invention.
[0114] Referring to FIG. 10, a method of operation for an electronic device for extracting keyword information from a conversation between people comprises: a process of storing a text recording a conversation between people and a plurality of keywords defined according to a predetermined classification criterion (S1010); a process of filtering a plurality of keywords included in at least one sentence included in the text based on the predetermined plurality of keywords (S1020); a process of generating a first keyword set including the first keyword and the second keyword when a second keyword among the plurality of keywords is searched in one direction based on the first keyword among the filtered plurality of keywords, and terminating the keyword search for the one direction when a non-keyword is searched in the one direction (S1030); a process of including the third keyword in the first keyword set when a third keyword among the plurality of keywords is searched in the other direction based on the first keyword among the filtered plurality of keywords, and terminating the keyword search for the other direction when a non-keyword is searched in the other direction (S1040); and determining a category of the first keyword set based on a predetermined classification criterion. It may include a process (S1050) of matching and storing a first set of keywords and a determined category.
[0115] The method of operation of the electronic device described above may further include: a process of terminating keyword search for one direction when a non-keyword is searched in one direction based on the second keyword; a process of generating a second keyword set including the second keyword and the fourth keyword when a fourth keyword among a plurality of keywords is searched in another direction based on the second keyword; and a process of including the fifth keyword in the second keyword set when a fifth keyword among a plurality of keywords is additionally searched in another direction based on the second keyword, and terminating keyword search for the other direction when a non-keyword is searched in the other direction.
[0116] In addition, the method of operation of the electronic device described above may further include a process of selecting one of the first keyword set and the second keyword set as the final keyword set when the similarity between the first keyword set and the second keyword set is greater than or equal to a predetermined similarity.
[0117] In addition, the method of operation of the electronic device described above may further include a process of terminating keyword search for one direction or the other direction when a sentence ends in one direction or the other direction.
[0118] In the various embodiments of the present invention described above, the classification criteria for a plurality of predefined keywords may be defined as morphological classification, classification based on predefined named entity tag information, and classification based on user dictionary definition.
[0119] Meanwhile, the method of operation of an electronic device for extracting keyword information from conversation between people according to various embodiments of the present invention described above may be provided to each server or device to be executed by a processor while being implemented as computer-executable program code and stored on various non-transitory computer-readable media.
[0120] For example, a method of operation of an electronic device for extracting keyword information from a conversation between people comprises a process of storing a text recording a conversation between people and a plurality of keywords defined according to a predetermined classification criterion; a process of filtering a plurality of keywords included in at least one sentence included in the text based on the predetermined plurality of keywords; a process of generating a first keyword set including a first keyword and a second keyword when a second keyword among the plurality of keywords is searched in one direction based on a first keyword among the filtered plurality of keywords, and terminating the keyword search for one direction when a non-keyword is searched in one direction; a process of including a third keyword in the first keyword set when a third keyword among the plurality of keywords is searched in another direction based on a first keyword among the filtered plurality of keywords, and terminating the keyword search for another direction when a non-keyword is searched in the other direction; and a process of determining a category of the first keyword set based on a predetermined classification criterion and matching and storing the first keyword set and the determined category, wherein the method comprises storing a program on a non-transitory computer A readable medium) can be provided.
[0121] A non-transient readable medium refers to a medium that stores data semi-permanently and can be read by a device, rather than a medium that stores data for a short period of time, such as a register, cache, or memory. Specifically, the various applications or programs described above may be stored and provided on non-transient readable media such as CDs, DVDs, hard disks, Blu-ray discs, USBs, memory cards, and ROMs.
[0122] Although embodiments of the present invention have been illustrated and described above, those skilled in the art will understand that various modifications in form and detail may be made without departing from the spirit and scope of the embodiments as defined by the appended claims and equivalents. Explanation of the symbols
[0123] Customer User Terminal: 100 Real estate agent user terminal:300 Server: 200, 200' Electronic devices: 900 Storage: 210, 920 Processors: 220, 930 Communications Department: 910
Claims
Claim 1 In an electronic device that extracts keyword information from conversations between people based on artificial intelligence, a storage unit; Control the storage unit to store a plurality of keywords defined according to text recording a conversation between people, and a predefined classification criterion including classification based on predefined named entity tag information performed based on a predefined named entity recognition model configured by fine-tuning a pre-trained model; filter the plurality of keywords included in at least one sentence included in the text based on the predefined plurality of keywords; generate a first keyword set including the first keyword and the second keyword when a second keyword among the plurality of keywords is searched in one direction based on the first keyword among the filtered plurality of keywords; terminate the keyword search for the one direction when a non-keyword is searched in the one direction; include the third keyword in the first keyword set when a third keyword among the plurality of keywords is searched in the other direction based on the first keyword among the filtered plurality of keywords; terminate the keyword search for the other direction when a non-keyword is searched in the other direction; and the category of the first keyword set based on the predefined classification criterion An electronic device comprising: a processor that determines and controls the storage unit to match and store the first keyword set and the determined category, wherein the predetermined classification criteria further include at least one of classification by a morphological filter and classification according to a dictionary definition. Claim 2 An electronic device according to claim 1, wherein the processor terminates keyword search for the one direction when a non-keyword is searched in the one direction based on the second keyword, generates a second keyword set including the second keyword and the fourth keyword when a fourth keyword among the plurality of keywords is searched in the other direction based on the second keyword, includes the fifth keyword in the second keyword set when a fifth keyword among the plurality of keywords is additionally searched in the other direction based on the second keyword, and terminates keyword search for the other direction when a non-keyword is searched in the other direction. Claim 3 An electronic device according to paragraph 2, wherein the processor selects one of the first keyword set and the second keyword set as the final keyword set when the similarity between the first keyword set and the second keyword set is greater than or equal to a predetermined similarity. Claim 4 In paragraph 3, the processor is an electronic device that terminates keyword search for the one direction or the other direction when a sentence ends in the one direction or the other direction. Claim 5 delete Claim 6 A method of operation for an electronic device that extracts keyword information from conversations between people based on artificial intelligence, comprising: a process of storing a plurality of keywords defined according to text recording conversations between people, and a predefined classification criterion including classification based on predefined named entity tag information performed based on a named entity recognition model configured by fine-tuning a pre-trained model; a process of filtering a plurality of keywords included in at least one sentence included in the text based on the predefined plurality of keywords; a process of generating a first keyword set including the first keyword and the second keyword when a second keyword among the plurality of keywords is searched in one direction based on the first keyword among the filtered plurality of keywords, and terminating the keyword search for the one direction when a non-keyword is searched in the one direction; a process of including the third keyword in the first keyword set when a third keyword among the plurality of keywords is searched in the other direction based on the first keyword among the filtered plurality of keywords, and terminating the keyword search for the other direction when a non-keyword is searched in the other direction. A method of operation of an electronic device comprising: determining a category of the first keyword set based on the above-defined classification criteria, and storing the first keyword set and the determined category by matching; wherein the above-defined classification criteria further include at least one of classification by a morpheme filter and classification according to a prior definition. Claim 7 In claim 6, the method of operation of the electronic device further comprises: a process of terminating a keyword search for the one direction when a non-keyword is searched for in the one direction based on the second keyword; a process of generating a second keyword set including the second keyword and the fourth keyword when a fourth keyword among the plurality of keywords is searched for in the other direction based on the second keyword; and a process of including the fifth keyword in the second keyword set when a fifth keyword among the plurality of keywords is additionally searched for in the other direction based on the second keyword, and terminating a keyword search for the other direction when a non-keyword is searched for in the other direction. Claim 8 In claim 7, the method of operation of the electronic device further comprises the process of selecting one of the first keyword set and the second keyword set as the final keyword set when the similarity between the first keyword set and the second keyword set is greater than or equal to a predetermined similarity. Claim 9 In claim 8, the method of operation of the electronic device further comprises the process of terminating keyword search for the one direction or the other direction when a sentence ends in the one direction or the other direction. Claim 10 delete
Citation Information
Patent Citations
Method and device for dividing text, text dividing program and storage medium with t he program stored therein
JP2002342324A
Abbreviation generation device, abbreviation generation method and program
JP2014191490A
Word learning device, word learning method, and word learning program
JP2018147100A
Method and device for extracting topic, recording medium for performing the method
KR1020170141570A
Electronic apparatus and method for extracting at least one keyword from search terms and computer readable recording medium
KR1020190094738A