WO2022191368A1 - 자연어 의도를 분류하는 뉴럴 네트워크 훈련을 위한 데이터 처리 방법 및 장치 - Google Patents

자연어 의도를 분류하는 뉴럴 네트워크 훈련을 위한 데이터 처리 방법 및 장치 Download PDF

Info

Publication number
WO2022191368A1
WO2022191368A1 PCT/KR2021/010484 KR2021010484W WO2022191368A1 WO 2022191368 A1 WO2022191368 A1 WO 2022191368A1 KR 2021010484 W KR2021010484 W KR 2021010484W WO 2022191368 A1 WO2022191368 A1 WO 2022191368A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
word
individual element
characteristic word
processing method
Prior art date
Application number
PCT/KR2021/010484
Other languages
English (en)
French (fr)
Inventor
정종일
김재우
Original Assignee
주식회사 마이데이터랩
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 마이데이터랩 filed Critical 주식회사 마이데이터랩
Publication of WO2022191368A1 publication Critical patent/WO2022191368A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/247Thesauruses; Synonyms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation

Definitions

  • the following embodiments relate to a data processing method and apparatus for training a neural network for classifying natural language intent.
  • natural language data labeled with each intention may be essentially required. Since the amount of natural language data subject to labeling is vast, a method to rationally reduce it is required.
  • a data processing method for a natural language used for training a neural network for classifying an intention of a natural language includes receiving first data that is a natural language used for learning a neural network for classifying an intention of a natural language; and performing preprocessing on the first data based on at least one of a first database in which a list of synonyms is stored and a second database in which a list of idioms irrelevant to natural language intent classification is stored.
  • the performing of the pre-processing may include: determining whether third data corresponding to a synonym predefined in the first database exists in the first data; and when the third data exists in the first data, substituting the third data with predetermined fourth data as a term representing the third data.
  • the substituting of the third data may include replacing the 3-1 data and the 3-2 data with the first data when the 3-1 data and 3-2 data corresponding to the synonym exist continuously. It may include removing from and adding the fourth data.
  • the performing of the pre-processing may include: determining whether fifth data corresponding to a term predefined in the second database exists in the first data; and when the fifth data exists in the first data, removing the fifth data from the first data.
  • the first database may be constructed based on a synonym determined by the degree of similarity between vectorized individual elements and a central keyword in which the number of times to generate a word by combining with the synonym is greater than or equal to a predetermined threshold.
  • a data processing method for generating a feature word used for training a neural network for classifying the intention of a natural language includes a first feature word list including a first feature word that is a labeling standard for learning data.
  • receiving extracting, for each of the first characteristic words, a first individual element constituting the first characteristic word based on the part-of-speech information; extracting a second individual element that is combined with the first individual element to form a word from the learning data;
  • the method may include generating a second characteristic word list through a second characteristic word generated based on a combination of the second individual element and the first individual element.
  • the step of extracting the second individual element may include: With respect to the 1-1 individual element corresponding to the synonym among the first individual elements, the first 1-1 individual element is a representative word predetermined to represent the 1-1 individual element. substituting individual elements; extracting a 2-1 individual element constituting a word by being combined with the representative word from the learning data; and extracting, from the learning data, 2-2 individual elements constituting a word by combining with 1-2 individual elements that do not correspond to synonyms among the first individual elements, wherein the second characteristic word list
  • the generating may include generating the second characteristic word list based on at least one of the first individual element, the 2-1 individual element, and the 2-2 individual element.
  • the data processing method further comprises the step of extracting as a third individual element included only in training data corresponding to a specific label from among the individual elements included in the training data, and generating the second characteristic word list
  • the second characteristic word list may be generated based on at least one of the first individual element to the third individual element.
  • a data processing method for updating a feature word used for training a neural network for classifying the intention of a natural language includes extracting an existing feature word composed of a plurality of individual elements; determining an individual element of any one of the plurality of individual elements as a current candidate characteristic word; comparing a first temporary labeling result performed based on the current candidate characteristic word and an existing labeling result performed based on the existing characteristic word; and updating the existing characteristic word based on the comparison result.
  • the updating step when the number of training data whose labels are changed in the first temporary labeling result exceeds a predetermined threshold, individual elements continuously existing with the current candidate characteristic word in the existing characteristic word are the updating the current candidate feature word by adding it to the current candidate feature word; and updating the existing characteristic word based on a second temporary labeling result based on the updated current candidate characteristic word and a comparison result of the existing labeling result.
  • an individual element corresponding to a label in which all characteristic words including the individual element among the plurality of individual elements correspond to the same label may be determined as the current candidate characteristic word.
  • a data processing method for processing a characteristic word used for training a neural network for classifying the intention of a natural language includes extracting a compound intention characteristic word corresponding to a plurality of labels; and excluding any one of the plurality of labels from the label corresponding to the compound intention characteristic word based on a predetermined condition.
  • a computing device for performing a data processing method includes: a communication unit; and a processor, wherein the processor receives first data corresponding to a natural language used for training a neural network for classifying intentions of natural language, and a first database in which a list of synonyms is stored or an idiomatic expression independent of natural language intent classification
  • the second data may be generated by performing pre-processing on the first data based on at least one of the second databases in which the list is stored.
  • 1A is a diagram schematically illustrating an operation of a natural language intention inference apparatus.
  • 1B is a diagram for explaining a learning method of a natural language intention inference apparatus.
  • FIG. 2 is a diagram schematically illustrating a data pre-processing method.
  • FIG. 3 is a flowchart illustrating a data preprocessing process.
  • FIG. 4 is a diagram for describing a pre-processing operation in more detail.
  • FIG. 5 is a flowchart illustrating a method of constructing a first database for storing the above-described synonym list.
  • FIG. 6 is a diagram illustrating an example in which a computing device calculates a degree of correlation.
  • FIG. 7 is a diagram illustrating an example in which a data processing method is implemented.
  • FIG. 8 is a flowchart illustrating a data processing method for generating a characteristic word.
  • FIG. 9 is a diagram illustrating an example in which a data processing method for generating a characteristic word is implemented.
  • FIG. 10 is a diagram for explaining a data processing method for processing a characteristic word.
  • 11A is a diagram for exemplarily explaining a processing process for complex intention learning data.
  • 11B is a diagram for exemplarily explaining a processing process for composite intention learning data.
  • FIG. 12 is a diagram for explaining a data processing method for updating a characteristic word.
  • FIG. 13 is a diagram illustrating an example in which a data processing method for updating a characteristic word is implemented.
  • FIG. 14 is a diagram illustrating an example in which a data processing method is implemented.
  • 15 is a diagram illustrating a configuration of a computing device according to the present invention.
  • first or second may be used to describe various elements, but these terms should be understood only for the purpose of distinguishing one element from another element.
  • a first component may be termed a second component, and similarly, a second component may also be termed a first component.
  • the embodiments may be implemented in various types of products, such as personal computers, laptop computers, tablet computers, smart phones, televisions, smart home appliances, intelligent cars, kiosks, wearable devices, and the like.
  • products such as personal computers, laptop computers, tablet computers, smart phones, televisions, smart home appliances, intelligent cars, kiosks, wearable devices, and the like.
  • 'learning' or 'learning' is a term referring to performing machine learning through computing according to a procedure, and a mental action such as human educational activity. It will be understood by those of ordinary skill in the art that this is not intended to be a reference.
  • 1A is a diagram schematically illustrating an operation of a natural language intention inference apparatus.
  • the natural language intention inference apparatus 110 may infer the intention of the input natural language 111 and output information about the inferred intention.
  • Intent may mean information about whether the natural language has any purpose.
  • the natural language intention inference device 110 is an input (for example, “Describe an experience in which you have achieved results despite unexpected changes”) for individual items in the self-introduction letter (eg, “determining problem-solving ability”). ”) can be printed.
  • the natural language intention inference apparatus 110 may be implemented to output an intention corresponding to an input natural language using a deep learning technique.
  • Deep learning is a machine learning technique for solving problems such as natural language recognition or speech recognition from big data sets. Deep learning can be understood as an optimization problem solving process that finds a point where energy is minimized while training a neural network using prepared training data. Through supervised or unsupervised learning of deep learning, a weight corresponding to the structure or model of a neural network can be obtained, and input data and output data can be mapped to each other through these weights. can
  • the natural language intention inference apparatus 110 may include a neural network 112 trained by deep learning technology to infer the intention of natural language.
  • the trained neural network 112 may be generated through iterative training (learning) for a given initial neural network. Generating the trained neural network 112 may mean determining neural network parameters.
  • the parameters may include, for example, various types of data input/output to the neural network, such as input/output activations, weights, and biases of the neural network.
  • the parameters of the neural network may be tuned to compute a more accurate output for a given input.
  • the natural language intention inference apparatus 110 corresponds to a computing device having various processing functions, such as a function of inferring an intention of a natural language based on the learned neural network 112 .
  • the natural language intention inference apparatus 110 may be implemented with various types of devices, such as a personal computer (PC), a server device, and a mobile device.
  • PC personal computer
  • server device a server device
  • mobile device a mobile device
  • 1B is a diagram for explaining a learning method of a natural language intention inference apparatus.
  • the learning step shown in FIG. 1B may be performed by a neural network learning apparatus (not shown), and the neural network learning apparatus trains (or learns) the neural network, or retrains the neural network ( It corresponds to a computing device having various processing functions such as retraining functions.
  • the neural network learning apparatus may be implemented with various types of devices, such as a personal computer (PC), a server device, and a mobile device.
  • the learned neural network 112 mounted on the natural language intention inference apparatus 110 generates the initial neural network 111 based on the training data 121 and the label 122 corresponding to the correct answer. It can be created by learning. More specifically, the initial neural network 111 may be trained to output an intention corresponding to a predetermined label 122 in response to the training data 121 from the training data 121 corresponding to the natural language.
  • the training data 121 has been exemplified as an item included in the self-introduction, but it will be understood by those skilled in the art that the training data is not limited thereto and may be extended to any natural language.
  • the neural network training apparatus may perform a preprocessing process (eg, noise removal and stopword removal, etc.) 130 on the training data 121 and then perform a feature word extraction process 140 .
  • the feature word may mean a term that is a classification criterion for learning data, that is, a labeling criterion.
  • the neural network learning apparatus may extend the terms of the training data to the synonyms included in the thesaurus in the training data expansion process 150 . Synonyms may refer to terms having similar meanings to each other. For example, if the learning data 121 includes “describe the experience of demonstrating teamwork”, the neural network learning device performs learning corresponding to “describe the experience of demonstrating cooperation” through the process 150 . You can add data. Based on the enlarged training data, the initial neural network 111 may be trained to infer an intention corresponding to the training data 121 .
  • the natural language intention inference apparatus 110 may infer an intention corresponding to the natural language input 171 through the learned neural network 112 .
  • the natural language intention inference apparatus 110 may infer a question intention corresponding to an input of “write about an experience in which results were obtained despite unexpected changes.”
  • the natural language intention inference device 110 infers the intention for the above input as “problem-solving ability”
  • the inference may be determined to be successful, but if the intention is inferred as “community living ability”, the inference may be determined to be unsuccessful. have.
  • the natural language input 171 may be added as new training data 172 , and additional learning may be performed based on the added training data 172 , so that inference accuracy of the neural network may be improved.
  • the natural language intention inference apparatus 110 may be applied to any area requiring understanding of natural language intention, such as a self-introduction writing mentoring engine.
  • training data labeled with correct answers may be required.
  • the amount of training data required for training of the neural network may be enormous.
  • learning data labeled with intentions on individual natural language data may be required, and since labeling is performed with human involvement, a very large amount of manpower may be required.
  • FIG. 2 is a diagram schematically illustrating a data pre-processing method.
  • the computing device 220 may provide a means for reducing the resources required for labeling by reducing the labeling target data through preprocessing of the original data to be used as training data. More specifically, the computing device 220 connects with the first database 231 for storing synonym information, the second database 232 for storing idiom information, and the third database 233 for storing stopword information to learn data. can be preprocessed to generate
  • the first database 231 may store information on a synonym including a synonymous synonym and a representative word representing each synonym. For example, “cause, motive, reason, and reason” may be matched as a synonym for yum and stored in the first database 231, and “reason” as a representative word representing eum synonym is determined in advance, and the first database ( 231) can be stored.
  • the second database 232 may store idiom (eg, description, description, writing) information irrelevant to intention determination.
  • idiom eg, description, description, writing
  • the third database 233 may store information about stopwords that do not have special meanings, such as special characters, repeated phrases, and surveys.
  • the computing device 220 may reduce the labeling target data by deleting or replacing individual elements included in the original data using at least one of the first database 231 to the third database 233 . A more detailed operation of the computing device 220 may be described in more detail with reference to the accompanying drawings below.
  • 3 is a flowchart for explaining a data processing process.
  • the computing device may receive original data for generating training data in step 311 .
  • the original data may be a natural language used for training a neural network that classifies the intention of the natural language.
  • the original data may include self-introduction item data, but is not limited thereto, and those skilled in the art will understand that it may include any natural language data.
  • the computing device may remove stopwords from the original data.
  • the computing device may remove it.
  • the computing device may unify proper nouns included in the original data into the same form. For example, if the original data contains “Co., Ltd. A,” “Co., Ltd. A,” “Co., Ltd. B” and “B”, the computing device changes “Co., Ltd.” to “Co., Ltd.” By modifying the elements “A” and “B” to “C”, which is a predetermined element corresponding to the company name, the form of the corporate name, which is a unique meditation, can be expressed as “C Co., Ltd.”. It will be understood by those skilled in the art that the process for correcting proper nouns in the same form is not limited to company names, and extends to modifying all proper nouns into one predetermined form for each type of proper noun.
  • the computing device may extract individual elements corresponding to parts of speech that may be feature words serving as labeling standards.
  • a part-of-speech that may be a characteristic word may include a noun, a verb, an adjective, an adverb, and the like
  • the extracted individual element may be a word corresponding to a noun, a verb, an adjective, an adverb, or the like.
  • the computing device may perform primary filtering by removing duplicate original data based on the extracted individual elements. For example, the computing device may determine whether each original data that has undergone the preceding steps is a duplicate based on the extracted individual elements, and if there is duplicate original data based on the determination result, the duplicated original data may be removed. have.
  • the computing device may perform preprocessing on the original data on which the first filtering is performed based on the first database in which the synonym list is stored or the second database in which the idiom list is stored. A more detailed manner in which step 316 is performed is described in greater detail below with reference to FIG. 4 appended thereto.
  • the computing device may remove blanks for each original data that has been pre-processed in step 317 , and perform secondary filtering through step 318 .
  • the secondary filtering may be an operation of deleting duplicate data from the preprocessing result from which blanks are removed.
  • the computing device may provide the original data on which primary filtering and secondary filtering have been performed in step 319 as labeling target data.
  • FIG. 4 is a diagram for describing a pre-processing operation in more detail.
  • the computing device may generate more simplified second data through pre-processing of first data that is a natural language used for learning of a neural network for classifying intentions of natural language.
  • first data may be original data on which the aforementioned primary filtering is performed
  • second data may mean original data on which pre-processing to be described below is performed.
  • the computing device may determine whether third data corresponding to a synonym exists in the first data. More specifically, the computing device may determine whether third data that is a synonym stored in the first database exists in the first data. If it is determined in step 411 that the third data exists in the first data, the computing device may determine whether the synonym is a continuous synonym in step 412 .
  • a continuous synonym may mean a term in which a plurality of synonyms having similar meanings are continuously combined. More specifically, in step 412 , when data 3-1 and data 3-2 having similar meanings continuously exist in the first data, the computing device may determine that a continuous synonym exists.
  • the computing device may determine that the consecutive consonant synonyms exist in the first data.
  • the computing device may replace the third data corresponding to the synonym with the fourth data predetermined as a representative word corresponding to the third data through step 413.
  • the computing device may perform step 412 when the term “motivation” in “Joint motivation” corresponds to the second data defined in the first database. ) as a representative word for “motive”, the third data can be substituted with “reason”, which is a predetermined fourth data.
  • step 412 the computing device removes 3-1 data and 3-2 data corresponding to the continuous synonym, and 3-1 data and 3-2 data As a representative word of , predetermined fourth data may be added to the first data.
  • the computing device substitutes “long-term” and “short-term” through “in the future” predetermined to represent “long-term” (data 3-1) and “short-term” (data 3-2), Data corresponding to “future perspective” can be generated.
  • the computing device may determine whether fifth data corresponding to a term defined in a second database storing an idiom list exists in the first data. If it is determined that the fifth data exists, the computing device may complete the pre-processing process by removing the fifth data in step 416 . For example, the computing device may complete the preprocessing process by removing an element corresponding to “Describe” corresponding to the fifth data from “Describe a vision from a future perspective”.
  • the idiom list stored in the second database may be determined based on an individual element previously determined to correspond to the idiom among individual elements included in the original data. In addition, in the case of an individual element determined as a characteristic word in combination with other individual elements, it may be excluded from the list of idioms.
  • Data that has been pre-processed through step 316 may be in the form of combining only individual elements as the preceding steps 312 to 315 are performed, or may be in the form of original data.
  • the original data is “Please describe your vision from a long-term and short-term perspective”
  • the data that has undergone step 416 may have the form of “future perspective vision” or “future perspective vision”, and detailed implementation The method can be easily selected by a person skilled in the art.
  • step 316 In the data that has been pre-processed through step 316 , blanks may be removed through step 317 , and duplicate data may be removed through step 318 .
  • the data provided through step 318 may be provided as labeling target data through step 319 .
  • the data to be labeled may be significantly reduced, and the training data generated through the above method may not significantly affect the neural network learning performance.
  • FIG. 5 is a flowchart illustrating a method of constructing a first database for storing the above-described synonym list.
  • the computing device may determine synonym candidate data for constructing the first database.
  • the computing device may determine the synonym candidate data based on the original data obtained through step 311 of FIG. 3 described above and the original data on which the first filtering is performed through step 315 . More specifically, when the original data includes more than a predetermined threshold number of individual elements (words), the original data including the individual elements may be determined as synonym candidate data. In addition, when the original data on which the first filtering has been performed includes individual elements greater than or equal to a predetermined threshold number, original data including the individual elements may be determined as synonym candidate data. In the process of determining the synonym candidate data, the computing device may check the entire individual element or may perform the check on only the individual element corresponding to the characteristic word.
  • the computing device may extract individual elements of the synonym candidate data. More specifically, the computing device may extract individual elements corresponding to nouns, verbs, adjectives, and adverbs from the synonym candidate data. For example, if the thesaurus candidate data is determined to be “write the field of hope and reason for application” and “write the field of hope and reason for application”, the computing device sets each individual element (hope, field, support, reason). and (hope, sector, support, opportunity).
  • the computing device may measure the similarity between individual elements.
  • the computing device may measure the similarity between the individual elements by vectorizing each individual element through the Word2Vec method and measuring the similarity between the vectors.
  • area and “sector” may be measured as words with high similarity
  • reason” and “cause” may be measured as words with high similarity.
  • the Word2Vec method is presented as an example for description, and it will be understood by those skilled in the art that the similarity between individual elements can be measured by vectorizing the individual elements through any embedding method.
  • the computing device may generate a first synonym list based on the previously measured similarity.
  • the computing device may determine individual elements whose similarity exceeds a predetermined threshold as synonyms, and may generate a first synonym list based on the determination result. For example, the computing device may match “field” and “sector” as synonyms, match “reason” and “cause” as synonyms, and determine the first synonym list based on the matching result.
  • the computing device may extract a central keyword based on the first synonym list.
  • the central keyword may mean an individual element in which the number of times to form a word by combining with individual elements that are mutually synonymous with each other is equal to or greater than a predetermined threshold. For example, “hope” in which the number of times to form a word by combining with “field” and “section” determined as synonyms is a predetermined threshold or more may be determined as a central keyword. In the same manner, “support” in which the number of times to form a word by combining with “cause” and “reason” respectively corresponding to a synonym relationship with each other is greater than or equal to a predetermined threshold may be determined as the central keyword.
  • the computing device may extract the central keyword based on the collocation and the first synonym list included in the synonym candidate data.
  • the salmon may refer to a form in which individual elements are sequentially combined, and may be discriminated as a salmon N1, a salmon N2, or the like, based on the number of combined individual elements. For example, if the original data is i) “Please state your field of interest and reason for application” and ii) “Please indicate your desired field and reason for application”, the individual elements are i) “Hope, field, application, reason” and ii) can be extracted as “hope, sector, support, opportunity”.
  • salmon N1 can be extracted as “hope”, “field”, “sector”, “support”, “reason”, “moment”, and salmon N2 can be “hope-field”, “hope-sector”, It can be extracted as “support-reason” and “support-moment”.
  • the computing device determines, as a central keyword, “hope” that the number of times constituting the word satisfies a predetermined condition by combining with the synonyms “field” and “support”, and the synonyms “reason” and “moment” and "Support”, in which the number of times to form a word by combining, satisfies a predetermined condition may be determined as the central keyword.
  • the computing device may generate a second synonym list based on the central keyword. More specifically, the computing device may measure a degree of correlation between each central keyword and other individual elements included in the synonym candidate data, and determine an individual element having a correlation with the central keyword equal to or greater than a predetermined threshold as a new synonym. Correlation is an index indicating the correlation between two individual elements, and can be determined as at least one of Mutual Information (MI), Pointwise Mutual Information (PMI), and Normalized Pointwise Mutual Information (NPMI).
  • MI Mutual Information
  • PMI Pointwise Mutual Information
  • NPMI Normalized Pointwise Mutual Information
  • support corresponding to the central keyword may be calculated as having a correlation greater than or equal to a predetermined threshold with “motive” and “reason” in addition to “reason” and “cause” determined as synonyms.
  • the computing device may generate a second synonym list by determining “motivation” and “reason” for which the correlation between “support” and a threshold value or more is calculated as synonyms for “reason” and “cause”.
  • the computing device may determine a representative word for each synonym included in the second synonym list. For example, an individual element of any one of “reason”, “cause”, “motive” and “reason” defined as a synonym on the second synonym list may be determined as a representative word for the synonym. According to an embodiment, an individual element appearing with the highest frequency among synonyms may be determined as the representative word, but the method of selecting the representative word is not limited thereto.
  • the computing device may build a first database based on the second synonym list and the representative word determined for each synonym.
  • FIG. 6 is a diagram illustrating an example in which a computing device calculates a degree of correlation.
  • the correlation may be calculated based on any one of the amount of mutual information, the amount of mutual information for each point, and the amount of mutual information for each normalized point.
  • the probability is calculated based on the number of items including each individual element (hope, occupation, etc.) on the synonym candidate data, and the amount of mutual information can be calculated based on the calculation result. have.
  • the computing device may additionally derive a synonym based on the calculated amount of mutual information, and through this, a synonym list may be determined.
  • FIG. 7 is a diagram illustrating an example in which a data processing method is implemented.
  • stopwords are removed based on the stopword dictionary corresponding to the third database described above (step 312 ), and proper nouns are unified (step 313 ). )), and a process of extracting the part-of-speech (step 314 ), the primary duplication removal process (step 315 ) corresponding to the primary filtering may be performed.
  • the original data on which the primary deduplication has been completed may go through a synonym substitution (step 413), successive synonym substitution (step 414), and idiom removal (step 416) processes (step 316).
  • secondary filtering may be performed through a process of removing blanks (step 317), and may be provided as training data that is labeling target data (step 319).
  • additional parts-of-speech extraction, synonym substitution, and idiom removal processes may be performed.
  • the first database corresponding to the thesaurus is a process of determining vectorization target data corresponding to the thesaurus candidate data based on words repeatedly appearing (step 510), part-of-speech extraction (step 520), similarity measurement, and new It may be constructed through the process (steps 530 to 580) of constructing a list of synonyms based on the synonyms.
  • the thesaurus may have a form in which “organization” corresponding to the representative word and “team”, “organization”, “group”, and “group” corresponding to the corresponding synonym are mapped.
  • the idiom dictionary may correspond to the second database.
  • the first database corresponding to the thesaurus may be used in the previous preprocessing process (step 316 ) and the subsequent model training process.
  • FIG. 8 is a flowchart illustrating a data processing method for generating a characteristic word.
  • the labeling may be performed based on the feature words existing in the original data. For example, in the original data “Describe your experience in solving community problems”, “solving community problems” may be a characteristic word associated with the “problem-solving ability” label corresponding to the intent of the original data. Accordingly, a label corresponding to “problem-solving ability” may be mapped to the above original data.
  • the computing device may provide a method for increasing the number of feature words by improving the labeling accuracy, thereby providing a means for increasing the inference accuracy of the neural network in the future.
  • the computing device may receive a first feature word list including a first feature word serving as a labeling criterion.
  • the first characteristic word list may include a first characteristic word predetermined by a system designer, for example, “solving a community task” corresponding to the first characteristic word and “problem-solving ability” corresponding to the label This may be a mapped form.
  • the first feature word list may correspond to candidate feature word data for generating a final feature word list.
  • the computing device may extract, for each of the first characteristic words, a first individual element constituting the first characteristic word based on the part-of-speech information (noun, adjective, adverb, verb). For example, the computing device may extract the first individual elements “community”, “task” and “solution” included in “solving community problem” corresponding to the first characteristic word.
  • the computing device may extract a second individual element combined with the first individual element from within the training data. For example, when the first individual element is a “task”, the computing device may extract all individual elements combined with the “task” in the training data as the second individual element.
  • the computing device may substitute the 1-1 individual element with a predetermined representative word to represent the 1-1 individual element with respect to the 1-1 individual element corresponding to the synonym among the first individual elements. have. For example, when the 1-1 individual element is “task”, the computing device may replace “task” with “problem”, which is a representative word corresponding thereto, based on the first database described above.
  • the computing device may extract the 2-1 th individual element combined with the representative word from the learning data. For example, when the representative word is “problem”, the computing device may extract all individual elements combined with “problem” in the training data as a second individual element.
  • the computing device may extract, from the learning data, the second-second individual element combined with the first-second individual element that does not correspond to a synonym among the first individual elements.
  • the computing device may generate a second characteristic word list through a second characteristic word generated based on a combination of the first individual element and the second individual element.
  • the computing device may generate the second characteristic word based on any combination of the first discrete element and each second discrete element. For example, when the computing device responds to the first individual element "problem”, the second individual element is "team”, “community”, “organization”, “immediate”, “facing", “solution” is derived , the second characteristic word can be generated as “problem solving”, “problem facing”, “problem facing”, “team problem”, “community problem”, etc.
  • a second characteristic word is generated by combining one second individual element with the first individual element, but the embodiment is not limited thereto, and the number of second individual elements combined with the first individual element and The order is not limited, and it will be understood by those skilled in the art that the second characteristic word may be generated based on any combination of the first discrete element and the second discrete element.
  • the computing device may extract a third individual element included only in the training data corresponding to a specific label from among the individual elements included in the training data, and generate a second characteristic word list based on the third individual element. For example, if an individual element called “task” included in the training data is included only in training data labeled with “problem-solving ability”, the computing device can extract “task” as a third individual element. and may generate a second characteristic word based on the third individual element. For example, the third individual element “task” itself may be determined as the second characteristic word. It will be understood by those skilled in the art that the third individual element is not limited to one word and may correspond to a combination of consecutive words. The computing device may derive the third individual element based on the individual element for which weight information given through the TF-IDF exceeds a predetermined threshold.
  • the second feature word list may be labeled based on review by the reviewer, and the neural network may be trained in a more accurate manner based on the second feature word list in which the number of feature words is expanded compared to the first feature word list. have.
  • FIG. 9 is a diagram illustrating an example in which a data processing method for generating a characteristic word is implemented.
  • the computing device receives the feature word candidate data corresponding to the first feature word list set by the system designer (step 810), and extracts the part-of-speech corresponding to the individual element (step 820), and A synonym substitution process can be performed on the extracted individual elements.
  • the synonym substitution process may be easily implemented by a person skilled in the art based on a method utilizing the synonym list stored in the first database described above.
  • the computing device may have a second discrete element (eg, “team”, “community”, “organization”, “immediate”, “facing”) combined with a first discrete element (eg, “problem”) in the learning data.
  • “solve” may be extracted (step 830), and a synonym substitution process for the extracted individual elements may be performed.
  • the computing device may generate the second characteristic word list based on the combination of individual elements (step 840) or may generate the second characteristic word list by adding individual elements included only in a specific label as new characteristic words.
  • a final characteristic word may be determined by reviewer's review and duplication removal.
  • FIG. 10 is a diagram for explaining a data processing method for processing a characteristic word.
  • the computing device may extract a list of composite intention learning data corresponding to a plurality of labels from among the training data for which the labeling is completed in step 1010 .
  • the composite intention learning data may include two or more characteristic words corresponding to different labels in the training data, or may be generated in a situation where the characteristic words correspond to a plurality of labels.
  • the computing device may modify the label for the composite intention learning data by determining only one of a plurality of labels corresponding to the composite intention learning data as a label corresponding to the composite intention learning data.
  • the computing device may extract the composite intention feature data from the composite intention learning data.
  • the computing device may extract a feature word included in both the first label and the second label that are different from each other as a compound intention feature word.
  • the computing device sets the second label to the compound intent characteristic It can be excluded from the label corresponding to the word. Through this, it may be determined that the composite intention characteristic word corresponds only to the first label, and the composite intention learning data may be determined to correspond only to the first label.
  • the computing device may provide the compound intention learning data list or the label modification result according to step 1020 to an external entity.
  • the reviewer may modify the label of the composite intention learning data by reviewing the composite intention learning data, or may modify the label corresponding to each composite intention feature word.
  • 11A is a diagram for exemplarily explaining a processing process for complex intention learning data.
  • regions 1130 and 1160 corresponding to compound intention features belonging to all different labels may be included.
  • the composite intention learning data including the composite intention feature words belonging to the regions 1130 and 1160 may correspond to both different labels.
  • the computing device corrects the compound intention characteristic words included in the region 1160 to correspond only to the third label 1140 . and the corresponding composite intention learning data may be modified to correspond only to the third label 1140 .
  • the computing device may determine the corresponding label by applying a classification algorithm (eg, BR-SVM) to the feature words that are not included in all of the labels 1110 , 1120 , 1140 , and 1150 . have.
  • a classification algorithm eg, BR-SVM
  • 11B is a diagram for exemplarily explaining a processing process for composite intention learning data.
  • the composite intention learning data list may be continuously updated through comparison and correction of reviewers (persons). It may also be automatically modified by the computing device as described above.
  • ambiguous feature words (composite intention feature words) included in the composite intention learning data list are corrected by the reviewer, so that the feature word data can be updated (step 1171) .
  • the reviewer may modify the compound intent characteristic to correspond to a single label.
  • the label of the compound intent characteristic word may be automatically modified by the computing device.
  • Reclassification of the training data may be performed based on the updated feature word (step 1172).
  • the label may be automatically corrected by the computing device, or the label may be corrected by a reviewer.
  • a composite intention learning data list may be regenerated. More specifically, the computing device may regenerate the composite intention learning data list by extracting training data corresponding to overlapping labels with each other. By excluding the existing composite intention learning data from the regenerated composite intention learning data list, a modified composite intention learning data list may be generated (step 1173). By repeating steps 1171 to 1173, the composite intention learning data list and the composite intention characteristic word may be continuously updated.
  • FIG. 12 is a diagram for explaining a data processing method for updating a characteristic word.
  • a third characteristic word composed of a plurality of individual elements may be extracted.
  • the third characteristic word may be a characteristic word composed of a plurality of individual elements (words), such as a characteristic word corresponding to “within a monetary compensation schedule” corresponding to the “social experience/student life” label.
  • the computing device may determine an individual element of any one of the plurality of individual elements as a current candidate feature word. More specifically, an individual element corresponding to a label in which all feature words including the individual element among the plurality of individual elements correspond to the same label may be determined as the current candidate feature word. For example, in the case of “reward” among the four individual elements included in “within the schedule for monetary compensation”, if all feature words including “reward” correspond to the same label, the computing device assigns “reward” to the current candidate feature can be decided by
  • the computing device may compare the temporary labeling result based on the current candidate characteristic word with the existing labeling result based on the third characteristic word. For example, the result of labeling the training data through the current candidate characteristic word corresponding to “reward” and the labeling of the training data through the third characteristic word corresponding to “within the monetary compensation schedule”. The results can be compared. The process of comparing the results may be performed based on whether there is a change in labeling for each training data.
  • the computing device may determine whether the comparison result satisfies a threshold condition.
  • the threshold condition may be whether the number of training data for which labeling is not changed exceeds a predetermined threshold.
  • the computing device When the number of training data whose labeling is not changed is less than a predetermined threshold, the computing device adds, to the current candidate characteristic word, an individual element continuously existing with the current candidate characteristic word in the third characteristic word to the current candidate characteristic word through step 1250 .
  • Candidate characteristic words can be updated. For example, the computing device may determine “remuneration schedule” or “money reward” as a new current candidate feature word by adding “schedule” or “money” to “reward” corresponding to the current candidate feature word in step 1250 . have.
  • the “reward schedule” or “money reward” corresponding to the current candidate characteristic word is “money reward schedule” , “within the maintenance schedule”, etc.
  • the computing device may repeat the operation of step 1250 of adding individual elements one by one until step 1260 is performed by satisfying a predetermined threshold condition in step 1240 .
  • the computing device may update the third characteristic word based on the current candidate characteristic word in operation 1260 .
  • the existing third characteristic word “within a monetary compensation schedule” may be modified to “reward”.
  • FIG. 13 is a diagram illustrating an example in which a data processing method for updating a characteristic word is implemented.
  • the computing device extracts a third characteristic word composed of a plurality of individual elements that may be referred to as feature collocations (operation 1210 ), and individual elements included in the third characteristic word. (words) can be extracted.
  • 1 gram in the drawing may mean that the current candidate characteristic word consists of one individual element, and 2 gram and 3 gram may mean that there are two and three individual elements, respectively.
  • the computing device may determine, among the extracted individual elements, an individual element corresponding to a label having the same feature words including the individual elements as the current candidate characteristic word (operation 1220 ).
  • the characteristic words related to “remuneration” referred to as 1gram word “money remuneration schedule”, “within monetary remuneration schedule”, “within remuneration schedule”, “money remuneration schedule”, “money remuneration schedule”, “remuneration Since both the “reward schedule” and “within the reward receiving schedule” correspond to the same label, the computing device may determine “reward” as a current candidate characteristic word.
  • labeling based on the current candidate feature word is performed on the training data, whereby a temporary labeling result may be generated.
  • Labeling may be performed on deduplication data (data on which the secondary filtering described above is completed) corresponding to the deduplication training data.
  • labeling may be performed on data in which synonyms for individual elements included in the deduplication data are substituted. More specifically, the computing device replaces synonyms (“reward” for “reward” for data containing a synonym of “reward”, which is a 1 gram word, such as “reward compensation schedule”, “reward compensation schedule”, etc. among deduplication data. ”), and labeling the synonym substitution results to generate a temporary labeling result.
  • the existing labeling result compared with the temporary labeling result may also be determined based on the same synonym substitution process.
  • the computing device may compare the temporary labeling result with the existing labeling result (step 1230 ).
  • the computing device may replace the third characteristic word with the current candidate characteristic word (operation 1260 ). That is, if the current candidate characteristic word is not included in the training data of a label other than the corresponding label, the current candidate characteristic word may replace the third characteristic word, but if not, the current candidate characteristic word is the third characteristic word cannot be substituted, and a larger number of individual elements may be updated with combined terms, allowing the comparison procedure to be repeated.
  • the computing device may update the current candidate characteristic word when the ratio of the training data whose labeling is not changed is less than a predetermined criterion (step 1250).
  • the method of updating the current candidate characteristic word is described in the preceding figure. It may be in the same manner as described in step 1250.
  • the current candidate characteristic word “reward” may be updated with “reward schedule”.
  • a series of processes for performing temporary labeling by updating the current candidate feature word may be repeated until the temporary labeling result satisfies the predetermined condition described above.
  • processing of the training data that is not additionally labeled may be performed. More specifically, when an individual element included in the unlabeled training data is an individual element not included in the existing characteristic word, it can be extracted as a new characteristic word, or when there is a classification error for the individual element, it can be corrected.
  • step 1310 a plurality of parallel candidate feature words (“complement”, “a little”) composed of one individual element are derived, and temporary labeling based on the plurality of candidate feature words may be performed, A feature word update procedure may be performed based on a comparison between the temporary labeling result and the existing labeling result.
  • each candidate feature In this case, in the case of the temporary labeling result related to the candidate feature word corresponding to “complement”, even if there is no difference from the existing labeling result, when the change in the temporary labeling result for the candidate feature word related to “a little” is large, each candidate feature The process of updating the candidate characteristic words (“money reward”, “remuneration schedule”, ..., “slight improvement”%) corresponding to 2 grams of the word and comparing the temporary labeling result with the existing labeling result may be additionally performed.
  • FIG. 14 is a diagram illustrating an example in which a data processing method is implemented.
  • the compound intention learning data among the learning data whose labeling is completed based on the characteristic word is a data processing process in which ambiguous features are corrected through the compound intention processing process (the process described above with reference to FIGS. 10 to 11B ) can proceed.
  • a new characteristic word may be extracted through the new characteristic word extraction process described above with reference to FIG. 9 .
  • the unlabeled learning data may be further classified based on a classification algorithm (eg, BR-SVM).
  • a classification algorithm eg, BR-SVM
  • the characteristic words determined through the above process may be updated through the data processing method described with reference to FIGS. 12 and 13, which is referred to as Ngram optimization.
  • 15 is a diagram illustrating a configuration of a computing device according to the present invention.
  • a computing device 1500 includes a processor 1520 .
  • the computing device 1500 may further include a memory 1510 and a communication interface 1530 .
  • the processor 1520 , the memory 1510 , and the communication interface 1530 may communicate with each other through a communication bus (not shown).
  • the processor 1520 may perform data processing on a natural language used for learning a neural network for classifying intentions of a natural language.
  • the processor 1520 receives first data, which is a natural language used for learning a neural network for classifying intentions of natural language, and at least one of a first database in which a list of synonyms is stored or a second database in which a list of idioms irrelevant to classification of natural language intentions is stored. Based on one, preprocessing may be performed on the first data.
  • first data which is a natural language used for learning a neural network for classifying intentions of natural language
  • preprocessing may be performed on the first data.
  • the processor 1520 may generate a feature word used for learning a neural network for classifying the intention of a natural language.
  • the processor 1520 receives a first feature word list including a first feature word that is a standard for labeling the training data, and configures the first feature word for each of the first feature words based on the part-of-speech information extracting a first discrete element to form a word from the training data, and extracting a second discrete element from the training data that is combined with the first discrete element, and a second feature generated based on the combination of the second discrete element and the first discrete element
  • the second characteristic word list may be generated through the word.
  • the processor 1520 may perform data processing for updating a feature word used for learning a neural network for classifying the intention of a natural language.
  • the processor 1520 extracts an existing feature word composed of a plurality of individual elements, determines an individual element of any one of the plurality of individual elements as a current candidate feature word, and performs a first temporary labeling result based on the current candidate feature word and Existing labeling results performed based on the existing characteristic words may be compared, and the existing characteristic words may be updated based on the comparison result.
  • the processor 1520 may perform a data processing method of processing a feature word used for learning a neural network for classifying the intention of a natural language.
  • the processor 1520 may extract a compound intention characteristic word corresponding to the plurality of labels, and exclude any one of the plurality of labels from the label corresponding to the compound intention characteristic word based on a predetermined condition.
  • the memory 1510 may be a volatile memory or a non-volatile memory.
  • the processor 1520 may execute a program and control the computing device 1500 .
  • the program code executed by the processor 1520 may be stored in the memory 1510 .
  • the computing device 1500 may be connected to an external device (eg, a personal computer or a network) through an input/output device (not shown) and exchange data.
  • the computing device 1500 may be mounted on a server.
  • the computing device 1500 may perform the data processing method described above with reference to FIGS. 1 to 14 through the processor 1520 .
  • the embodiments described above may be implemented by a hardware component, a software component, and/or a combination of a hardware component and a software component.
  • the apparatus, methods and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate (FPGA). array), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions, may be implemented using one or more general purpose or special purpose computers.
  • the processing device may execute an operating system (OS) and one or more software applications running on the operating system.
  • the processing device may also access, store, manipulate, process, and generate data in response to execution of the software.
  • OS operating system
  • the processing device may also access, store, manipulate, process, and generate data in response to execution of the software.
  • the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that may include For example, the processing device may include a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as parallel processors.
  • the software may comprise a computer program, code, instructions, or a combination of one or more thereof, which configures a processing device to operate as desired or is independently or collectively processed You can command the device.
  • the software and/or data may be any kind of machine, component, physical device, virtual equipment, computer storage medium or device, to be interpreted by or to provide instructions or data to the processing device. , or may be permanently or temporarily embody in a transmitted signal wave.
  • the software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored in one or more computer-readable recording media.
  • the method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium.
  • the computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination.
  • the program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and available to those skilled in the art of computer software.
  • Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks.
  • - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like.
  • Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Processing (AREA)

Abstract

컴퓨팅 장치에 의해 수행되는 데이터 처리 방법이 개시된다. 일 실시예에 따른 자연어의 의도를 분류하는 뉴럴 네트워크의 훈련에 이용되는 자연어에 대한 데이터 처리 방법은 자연어의 의도를 분류하는 뉴럴 네트워크의 학습에 사용되는 자연어인 제1 데이터를 수신하는 단계, 유의어 리스트가 저장된 제1 데이터베이스 또는 자연어 의도 분류와 무관한 관용어 리스트가 저장된 제2 데이터베이스 중 적어도 하나 기초하여, 상기 제1 데이터에 대한 전처리를 수행하는 단계를 포함할 수 있다.

Description

자연어 의도를 분류하는 뉴럴 네트워크 훈련을 위한 데이터 처리 방법 및 장치
아래 실시예들은 자연어 의도를 분류하는 뉴럴 네트워크 훈련을 위한 데이터 처리 방법 및 장치에 관한 것이다.
최근 딥 러닝 기술이 다양한 분야에 응용되고 있으며 특히 음성 인식, 자연어 처리 등의 비약적인 발전을 선도하는 핵심 기술로 자리 잡고 있다.
자연어의 의도를 분류하는 뉴럴 네트워크를 훈련시키기 위해서는, 각각의 의도가 레이블링된 자연어 데이터가 필수적으로 요구될 수 있다. 레이블링의 대상이 되는 자연어 데이터의 양은 방대하므로, 이를 합리적으로 축소할 수 있는 방안이 요구된다.
일 실시예에 따른 자연어의 의도를 분류하는 뉴럴 네트워크의 훈련에 이용되는 자연어에 대한 데이터 처리 방법은 자연어의 의도를 분류하는 뉴럴 네트워크의 학습에 사용되는 자연어인 제1 데이터를 수신하는 단계; 및 유의어 리스트가 저장된 제1 데이터베이스 또는 자연어 의도 분류와 무관한 관용어 리스트가 저장된 제2 데이터베이스 중 적어도 하나 기초하여, 상기 제1 데이터에 대한 전처리를 수행하는 단계를 포함할 수 있다.
상기 전처리를 수행하는 단계는, 상기 제1 데이터베이스에 미리 정의된 유의어에 해당하는 제3 데이터가 상기 제1 데이터 내에 존재하는 지 여부를 결정하는 단계; 및 상기 제3 데이터가 상기 제1 데이터 내에 존재하는 경우, 상기 제3 데이터를 대표하는 용어로 미리 결정된 제4 데이터로 상기 제3 데이터를 치환하는 단계를 포함할 수 있다.
상기 제3 데이터를 치환하는 단계는, 유의어에 해당하는 제3-1 데이터 및 제3-2 데이터가 연속적으로 존재하는 경우, 상기 제3-1 데이터 및 상기 제3-2 데이터를 상기 제1 데이터에서 제거하고 상기 제4 데이터를 추가하는 단계를 포함할 수 있다.
상기 전처리를 수행하는 단계는, 상기 제2 데이터베이스에 미리 정의된 용어에 해당하는 제5 데이터가 상기 제1 데이터 내에 존재하는 지 여부를 결정하는 단계; 및 상기 제5 데이터가 상기 제1 데이터 내에 존재하는 경우, 상기 제5 데이터를 상기 제1 데이터로부터 제거하는 단계를 포함할 수 있다.
상기 제1 데이터베이스는, 벡터화된 개별 요소들 사이의 유사도에 의해 결정되는 유의어 및 상기 유의어와 결합하여 단어를 생성하는 횟수가 소정의 임계치 이상인 중심 키워드에 기초하여 구축될 수 있다.
다른 실시예에 따른 자연어의 의도를 분류하는 뉴럴 네트워크에 대한 훈련에 사용되는 특징어를 생성하는 데이터 처리 방법은 학습 데이터에 대한 레이블링의 기준이 되는 제1 특징어를 포함하는 제1 특징어 리스트를 수신하는 단계; 상기 제1 특징어 각각에 대하여, 품사 정보에 기초하여 상기 제1 특징어를 구성하는 제1 개별 요소를 추출하는 단계; 상기 학습 데이터에서 상기 제1 개별 요소와 결합되어 단어를 구성하는 제2 개별 요소를 추출하는 단계; 상기 제2 개별 요소 및 상기 제1 개별 요소의 결합에 기초하여 생성되는 제2 특징어를 통해 제2 특징어 리스트를 생성하는 단계를 포함할 수 있다.
상기 제2 개별 요소를 추출하는 단계는, 상기 제1 개별 요소 중 유의어에 해당하는 제1-1 개별 요소에 대하여, 상기 제1-1 개별 요소를 대표하는 것으로 미리 결정된 대표어로 상기 제1-1 개별 요소를 치환하는 단계; 상기 학습 데이터에서 상기 대표어와 결합되어 단어를 구성하는 제2-1 개별 요소를 추출하는 단계; 및 상기 학습 데이터에서, 상기 제1 개별 요소 중 유의어에 해당하지 않는 제1-2 개별 요소와 결합되어 단어를 구성하는 제2-2 개별 요소를 추출하는 단계를 포함하고, 상기 제2 특징어 리스트를 생성하는 단계는, 상기 제1 개별 요소, 상기 제2-1 개별 요소 및 상기 제2-2 개별 요소 중 적어도 하나에 기초하여 상기 제2 특징어 리스트를 생성할 수 있다.
다른 실시예에 따른 데이터 처리 방법은 상기 학습 데이터에 포함된 개별 요소 중, 특정 레이블에 대응하는 학습 데이터에만 포함되는 제3 개별 요소로 추출하는 단계를 더 포함하고, 상기 제2 특징어 리스트를 생성하는 단계는, 상기 제1 개별 요소 내지 제3 개별 요소 중 적어도 하나에 기초하여 상기 제2 특징어 리스트를 생성할 수 있다.
또 다른 실시예에 따른 자연어의 의도를 분류하는 뉴럴 네트워크에 대한 훈련에 사용되는 특징어를 갱신하는 데이터 처리 방법은 복수의 개별 요소로 구성된 기존 특징어를 추출하는 단계; 상기 복수의 개별 요소 중 어느 하나의 개별 요소를 현재 후보 특징어로 결정하는 단계; 상기 현재 후보 특징어에 기초한 수행된 제1 임시 레이블링 결과와 상기 기존 특징어에 기초하여 수행된 기존 레이블링 결과를 비교하는 단계; 및 비교 결과에 기초하여 상기 기존 특징어를 갱신하는 단계를 포함할 수 있다.
상기 갱신하는 단계는, 상기 제1 임시 레이블링 결과에서 대응되는 레이블이 변경된 학습 데이터의 개수가 소정의 임계값을 초과하는 경우, 상기 기존 특징어에서 상기 현재 후보 특징어와 연속적으로 존재하는 개별 요소를 상기 현재 후보 특징어에 부가함으로써, 상기 현재 후보 특징어를 갱신하는 단계; 상기 갱신된 현재 후보 특징어에 기초한 제2 임시 레이블링 결과 및 상기 기존 레이블링 결과에 대한 비교 결과에 기초하여 상기 기존 특징어를 갱신하는 단계를 포함할 수 있다.
상기 현재 후보 특징어로 결정하는 단계는, 상기 복수의 개별 요소 중, 개별 요소를 포함하는 모든 특징어가 동일한 레이블에 대응되는 개별 요소를 현재 후보 특징어로 결정할 수 있다.
추가적인 실시예에 따른 자연어의 의도를 분류하는 뉴럴 네트워크에 대한 훈련에 사용되는 특징어를 처리하는 데이터 처리 방법은 복수의 레이블에 대응되는 복합의도 특징어를 추출하는 단계; 및 미리 결정된 조건에 기초하여 상기 복수의 레이블 중 어느 하나의 레이블을 상기 복합의도 특징어에 대응하는 레이블에서 배제하는 단계를 포함할 수 있다.
일 실시예에 따른 데이터 처리 방법을 수행하는 컴퓨팅 장치는 통신부; 및 프로세서를 포함하고, 상기 프로세서는, 자연어의 의도를 분류하는 뉴럴 네트워크의 훈련에 사용되는 자연어에 대응되는 제1 데이터를 수신하고, 유의어 리스트가 저장된 제1 데이터베이스 또는 자연어 의도 분류와 무관한 관용 표현 리스트가 저장된 제2 데이터베이스 중 적어도 하나 기초하여, 상기 제1 데이터에 대한 전처리를 수행함으로써, 제2 데이터를 생성할 수 있다.
도 1a는 자연어 의도 추론 장치의 동작을 개략적으로 설명하기 위한도면이다.
도 1b는 자연어 의도 추론 장치의 학습 방식을 설명하기 위한 도면이다.
도 2는 데이터 전처리 방식을 개략적으로 설명하기 위한 도면이다.
도 3은 데이터 전처리 프로세스를 설명하기 위한 흐름도이다.
도 4는 전처리 동작을 보다 상세하게 설명하기 위한 도면이다.
도 5는 앞서 설명된 유의어 리스트를 저장하는 제1 데이터베이스를 구축하는 방법을 설명하기 위한 흐름도이다.
도 6은 컴퓨팅 장치가 상관도를 산출하는 일례를 도시하는 도면이다.
도 7은 데이터 처리 방법이 구현된 일례를 도시한 도면이다.
도 8은 특징어를 생성하는 데이터 처리 방법을 설명하기 위한 흐름도이다.
도 9은 특징어를 생성하는 데이터 처리 방법이 구현된 일례를 도시하는 도면이다.
도 10은 특징어를 처리하는 데이터 처리 방법을 설명하는 도면이다.
도 11a는 복합 의도 학습 데이터에 대한 처리 과정을 예시적으로 설명하기 위한 도면이다.
도 11b는 복합 의도 학습 데이터에 대한 처리 과정을 예시적으로 설명하기 위한 도면이다.
도 12는 특징어를 갱신하는 데이터 처리 방법을 설명하기 위한 도면이다.
도 13은 특징어를 갱신하는 데이터 처리 방법이 구현된 일례를 도시하는 도면이다.
도 14는 데이터 처리 방법이 구현된 일례를 도시하는 도면이다.
도 15는 본원 발명에 따른 컴퓨팅 장치의 구성을 도시하는 도면이다.
본 명세서에서 개시되어 있는 특정한 구조적 또는 기능적 설명들은 단지 기술적 개념에 따른 실시예들을 설명하기 위한 목적으로 예시된 것으로서, 실시예들은 다양한 다른 형태로 실시될 수 있으며 본 명세서에 설명된 실시예들에 한정되지 않는다.
제1 또는 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 이해되어야 한다. 예를 들어 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 표현들, 예를 들어 "~간의에"와 "바로~간의에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설시 된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
실시예들은 퍼스널 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 스마트 폰, 텔레비전, 스마트 가전 기기, 지능형 자동차, 키오스크, 웨어러블 장치 등 다양한 형태의 제품으로 구현될 수 있다. 이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
그리고 본 발명의 상세한 설명 및 청구항들에 걸쳐 '학습' 혹은 '러닝'은 절차에 따른 컴퓨팅(computing)을 통하여 기계 학습(machine learning)을 수행함을 일컫는 용어인바, 인간의 교육 활동과 같은 정신적 작용을 지칭하도록 의도된 것이 아님을 통상의 기술자는 이해할 수 있을 것이다.
도 1a는 자연어 의도 추론 장치의 동작을 개략적으로 설명하기 위한 도면이다.
자연어 의도 추론 장치(110)는 입력된 자연어(111)의 의도를 추론하고, 추론된 의도에 대한 정보를 출력할 수 있다. 의도란 자연어가 어떤 취지를 가지고 있는 지 여부에 대한 정보를 의미할 수 있다. 예를 들어, 자연어 의도 추론 장치(110)는 자기 소개서 개별 문항에 대한 입력(예를 들어, “예상치 못한 변화에도 성과를 얻어낸 경험을 서술하시오”)의 의도(예를 들어, “문제 해결 능력 판단”)를 출력할 수 있다.
일 실시예에 따른 자연어 의도 추론 장치(110)는 딥 러닝 기술을 이용하여 입력 자연어에 상응하는 의도를 출력하도록 구현될 수 있다. 딥 러닝은 빅 데이터 세트로부터 자연어 인식 또는 음성 인식과 같은 문제를 해결하기 위한 기계 학습 기법이다. 딥 러닝은 준비된 학습 데이터를 이용하여 뉴럴 네트워크를 트레이닝하면서 에너지가 최소화되는 지점을 찾아가는 최적화 문제 풀이 과정으로 이해될 수 있다. 딥 러닝의 지도식(supervised) 또는 비지도식(unsupervised) 학습을 통해 뉴럴 네트워크의 구조, 혹은 모델에 대응하는 가중치(weight)가 구해질 수 있고, 이러한 가중치를 통해 입력 데이터 및 출력 데이터가 서로 매핑될 수 있다.
일 실시예에 따른 자연어 의도 추론 장치(110)는 자연어의 의도를 추론하도록 딥러닝 기술에 의해 훈련된 뉴럴 네트워크(112)를 포함할 수 있다. 훈련된 뉴럴 네트워크(112)는 주어진 초기 뉴럴 네트워크에 대한 반복적으로 훈련(학습)을 통해 생성될 수 있다. 훈련된 뉴럴 네트워크(112)를 생성하는 것은 뉴럴 네트워크 파라미터를 결정하는 것을 의미할 수 있다. 여기서, 파라미터들은 예를 들어 뉴럴 네트워크의 입/출력 액티베이션들, 웨이트들, 바이어스들 등 뉴럴 네트워크에 입/출력되는 다양한 종류의 데이터를 포함할 수 있다. 뉴럴 네트워크의 반복적인 훈련이 진행됨에 따라, 뉴럴 네트워크의 파라미터들은 주어진 입력에 대해 보다 정확한 출력을 연산하기 위해 조정될(tuned) 수 있다.
자연어 의도 추론 장치(110)는 학습된 뉴럴 네트워크(112)에 기초하여 자연어의 의도를 추론하는 기능과 같은 다양한 프로세싱 기능들을 갖는 컴퓨팅 디바이스에 해당된다. 예를 들어, 자연어 의도 추론 장치(110)는 PC(personal computer), 서버 디바이스, 모바일 디바이스 등의 다양한 종류의 디바이스들로 구현될 수 있다.
도 1b는 자연어 의도 추론 장치의 학습 방식을 설명하기 위한 도면이다.
도 1b에 도시된 학습 단계는 뉴럴 네트워크 학습 장치(미도시)에 의해 수행될 수 있으며, 뉴럴 네트워크 학습 장치는 뉴럴 네트워크를 훈련(train)(또는 학습(learn))하거나, 뉴럴 네트워크를 재훈련(retrain)하는 기능들과 같은 다양한 프로세싱 기능들을 갖는 컴퓨팅 디바이스에 해당된다. 예를 들어, 뉴럴 네트워크 학습 장치는 PC(personal computer), 서버 디바이스, 모바일 디바이스 등의 다양한 종류의 디바이스들로 구현될 수 있다.
학습 단계에 도시된 바와 같이, 자연어 의도 추론 장치(110)에 탑재되는 학습된 뉴럴 네트워크(112)는 학습 데이터(121) 및 정답에 대응되는 레이블(122)에 기초하여 초기 뉴럴 네트워크(111)를 학습시킴으로써 생성될 수 있다. 보다 구체적으로, 초기 뉴럴 네트워크(111)는 자연어에 해당하는 학습 데이터(121)로부터 학습 데이터(121)에 대응하여 미리 결정된 레이블(122)에 해당하는 의도를 출력하도록 학습될 수 있다. 학습 데이터(121)는 자기 소개서에 포함되는 항목으로 예시되었으나, 학습 데이터는 이에 한정되는 것이 아니고 임의의 자연어로 확장될 수 있음은 통상의 기술자가 이해할 것이다.
학습 단계에서, 뉴럴 네트워크 학습 장치는 학습 데이터(121)에 전처리 프로세스(예를 들어, 노이즈 제거 및 불용어 제거 등)(130)를 수행한 후, 특징어 추출 프로세스(140)를 수행할 수 있다. 특징어는 학습 데이터의 분류 기준 즉, 레이블링의 기준이 되는 용어를 의미할 수 있다. 뉴럴 네트워크 학습 장치는 학습 데이터 확대 프로세스(150)에서 유의어 사전에 포함된 유의어로 학습 데이터의 용어를 확장할 수 있다. 유의어는 상호간의 유사한 의미를 가지는 용어를 의미할 수 있다. 예를 들어, 학습 데이터(121)에 “팀워크를 발휘했던 경험을 서술하시오”가 포함된 경우, 뉴럴 네트워크 학습 장치는 프로세스(150)를 통해 “협력을 발휘했던 경험을 서술하시오”에 해당하는 학습 데이터를 추가할 수 있다. 확대된 학습 데이터에 기초하여 초기 뉴럴 네트워크(111)는 학습 데이터(121)에 대응되는 의도를 추론하도록 학습될 수 있다.
추론 단계에서, 자연어 의도 추론 장치(110)는 학습된 뉴럴 네트워크(112)를 통해 자연어 입력(171)에 대응하는 의도를 추론할 수 있다. 예를 들어, 자연어 의도 추론 장치(110)는 “예상치 못한 변화에도 불구하고 성과를 얻어낸 경험에 대해 작성하시오.”라는 입력에 대응하는 질문 의도를 추론할 수 있다. 자연어 의도 추론 장치(110)가 위 입력에 대한 의도를 “문제 해결 능력”으로 추론한 경우, 추론은 성공한 것으로 결정될 수 있으나, 의도를 “공동체 생활 능력”으로 추론한 경우, 추론은 실패한 것으로 결정될 수 있다. 추론에 실패한 경우, 자연어 입력(171)은 새로운 학습 데이터(172)로 추가될 수 있고, 추가된 학습 데이터(172)에 기초하여 추가 학습이 진행됨으로써, 뉴럴 네트워크의 추론 정확성이 향상될 수 있다.
구현 예에 도시된 바와 같이, 자연어 의도 추론 장치(110)는 자기 소개서 작성 멘토링 엔진 등 자연어 의도 파악이 필요한 임의의 영역에 적용될 수 있다.
뉴럴 네트워크를 지도 학습시키기 위해서는 정답이 레이블링된 학습 데이터가 요구될 수 있다. 또한, 뉴럴 네트워크의 학습을 위해 요구되는 학습 데이터의 양은 방대할 수 있다. 예를 들어, 자연어의 의도를 추론하는 뉴럴 네트워크 훈련을 위해서는 개별 자연어 데이터에 대한 의도가 레이블링된 학습 데이터가 요구될 수 있으며, 레이블링은 인간이 관여하여 진행되므로 매우 방대한 인력이 요구될 수 있다.
따라서, 학습 데이터를 생성하는 과정에서, 레이블링 대상 데이터를 합리적으로 축소함으로써, 레이블링에 소요되는 리소스를 절감하는 프로세스가 요구될 수 있다.
도 2는 데이터 전처리 방식을 개략적으로 설명하기 위한 도면이다.
일 실시예에 따른 컴퓨팅 장치(220)는 학습 데이터로 이용될 원본 데이터에 대한 전처리를 통해 레이블링 대상 데이터를 축소함으로써 레이블링에 소요되는 리소스를 절감하는 수단을 제공할 수 있다. 보다 구체적으로, 컴퓨팅 장치(220)는 유의어 정보를 저장하는 제1 데이터베이스(231), 관용어 정보를 저장하는 제2 데이터베이스(232) 및 불용어 정보를 저장하는 제3 데이터베이스(233)와 연계하여 학습 데이터를 생성하기 위한 전처리를 수행할 수 있다.
제1 데이터베이스(231)는 이음 동의어를 포함하는 유의어와, 각각의 유의어를 대표하는 대표어에 대한 정보를 저장할 수 있다. 예를 들어, “계기, 동기, 사유, 이유”는 이음 동의어로써 매칭되어 제1 데이터베이스(231)에 저장될 수 있고, 이음 동의어를 대표하는 대표어로써 “이유”가 미리 결정되어 제1 데이터베이스(231)에 저장될 수 있다.
제2 데이터베이스(232)는 의도 판단과 무관한 관용어(예를 들어, 기술, 서술, 작성) 정보를 저장할 수 있다.
제3 데이터베이스(233)는 특수문자, 반복어구, 조사 등 특별한 의미를 지니지 않는 불용어에 대한 정보를 저장할 수 있다.
컴퓨팅 장치(220)는 제1 데이터베이스(231) 내지 제3 데이터베이스(233) 중 적어도 하나를 이용하여, 원본 데이터에 포함된 개별 요소를 삭제하거나, 치환함으로써, 레이블링 대상 데이터를 축소할 수 있다. 컴퓨팅 장치(220)의 보다 상세한 동작은 이하 첨부되는 도면을 통해 보다 상세하게 설명될 수 있다.
도 3은 데이터 처리 프로세스를 설명하기 위한 흐름도이다.
도 3을 참조하면, 컴퓨팅 장치는 단계(311)에서 학습 데이터 생성을 위한 원본 데이터를 수신할 수 있다. 원본 데이터는 자연어의 의도를 분류하는 뉴럴 네트워크의 학습에 사용되는 자연어일 수 있다. 실시예에 따라서 원본 데이터는 자기소개서 항목 데이터를 포함할 수 있으나, 이에 한정되는 것은 아니고, 임의의 자연어 데이터를 포함할 수 있음은 통상의 기술자가 이해할 것이다.
단계(312)에서 컴퓨팅 장치는 원본 데이터에서 불용어를 제거할 수 있다. 컴퓨팅 장치는 앞서 설명된 제3 데이터베이스에 저장된 불용어가 원본 데이터에 포함된 경우, 이를 제거할 수 있다.
단계(313)에서 컴퓨팅 장치는 원본 데이터에 포함된 고유 명사를 동일한 형태로 통일시킬 수 있다. 예를 들어, 원본 데이터에 “주식회사 A”,“㈜ A”, “주식회사 B” 및 “㈜ B”가 포함되어 있는 경우, 컴퓨팅 장치는 “㈜”를 “주식회사”로 변경하고, 기업명에 해당하는 요소 “A” 및 “B”를 기업명에 대응하여 미리 결정된 요소인 “C”로 수정함으로써, 고유 명상인 기업 명의 형태를 “주식회사 C”로 표현할 수 있다. 고유 명사를 동일한 형태로 수정하는 프로세스는 기업 명에 한정되는 것이 아니고, 모든 고유 명사를 고유 명사의 종류별로 미리 결정된 하나의 형태로 수정하는 것으로 확장됨은 통상의 기술자가 이해할 것이다.
단계(314)에서 컴퓨팅 장치는 레이블링 기준이 되는 특징어가 될 수 있는 품사에 대응되는 개별 요소를 추출할 수 있다. 예를 들어, 특징어가 될 수 있는 품사는 명사, 동사, 형용사, 부사 등을 포함할 수 있으며, 추출되는 개별 요소는 명사, 동사, 형용사, 부사 등에 대응되는 단어일 수 있다.
단계(315)에서 컴퓨팅 장치는 추출된 개별 요소에 기초하여, 중복되는 원본 데이터를 제거함으로써, 1차 필터링을 수행할 수 있다. 예를 들어, 컴퓨팅 장치는 앞선 단계를 거친 각각의 원본 데이터를 추출된 개별 요소에 기초하여 중복 여부를 판단하고, 판단 결과에 기초하여 중복되는 원본 데이터가 있는 경우, 중복되는 원본 데이터를 제거할 수 있다.
단계(316)에서 컴퓨팅 장치는 유의어 리스트가 저장된 제1 데이터베이스 또는 관용어 리스트가 저장된 제2 데이터베이스에 기초하여 제1 필터링이 수행된 원본 데이터에 대한 전처리를 수행할 수 있다. 단계(316)이 수행되는 보다 상세한 방식을 이하 첨부되는 도 4를 통해 보다 상세히 설명된다.
컴퓨팅 장치는 단계(317)에서 전처리가 수행된 각각의 원본 데이터에 대하여 공백을 제거하고, 단계(318)를 통해 2차 필터링을 수행할 수 있다. 2차 필터링은 공백이 제거된 전처리 결과에서 중복되는 데이터를 삭제하는 동작일 수 있다.
컴퓨팅 장치는 단계(319)에서 1차 필터링 및 2차 필터링이 수행된 원본 데이터를 레이블링 대상 데이터로 제공할 수 있다.
도 4는 전처리 동작을 보다 상세하게 설명하기 위한 도면이다.
일 실시예에 따르면, 컴퓨팅 장치는 자연어의 의도를 분류하는 뉴럴 네트워크의 학습에 사용되는 자연어인 제1 데이터에 대한 전처리를 통해 보다 간소화된 제2 데이터를 생성할 수 있다. 예를 들어, 제1 데이터는 앞서 언급된 1차 필터링이 수행된 원본 데이터일 수 있으며, 제2 데이터는 이하 설명될 전처리가 수행된 원본 데이터를 의미할 수 있다.
도 4를 참조하면, 컴퓨팅 장치는 단계(411)에서 제1 데이터 내에 유의어에 해당하는 제3 데이터가 존재하는지 여부를 결정할 수 있다. 보다 구체적으로, 컴퓨팅 장치는 제1 데이터베이스에 저장된 유의어인 제3 데이터가 제1 데이터 내에 존재하는지 여부를 결정할 수 있다. 컴퓨팅 장치는 단계(411)에서 제3 데이터가 제1 데이터에 존재하는 것으로 결정된 경우, 단계(412)를 통해 유의어가 연속된 유의어인지 여부를 결정할 수 있다. 연속된 유의어는 유사한 의미를 지니는 복수의 유의어가 연속적으로 결합된 형태의 용어를 의미할 수 있다. 보다 구체적으로, 컴퓨팅 장치는 단계(412)에서 유사한 의미를 지니는 제3-1 데이터 및 제3-2 데이터가 제1 데이터 내에 연속적으로 존재하는 경우, 연속된 유의어가 존재하는 것으로 결정할 수 있다. 예를 들어, 제1 데이터가 “장기적 단기적 관점에서 비전을 기술하시오”인 경우, 미래를 지칭하는 유의어인 “장기적”(제3-1 데이터) 및 “단기적”(제3-2 데이터)이 제1 데이터 내에 연속적으로 존재하므로, 컴퓨팅 장치는 연속된 이음 유의어가 제1 데이터에 존재하는 것으로 결정할 수 있다.
컴퓨팅 장치는 단계(412)에서 연속된 유의어가 존재하지 않는 것으로 결정된 경우, 단계(413)를 통해 유의어에 해당하는 제3 데이터를 제3 데이터에 상응하여 대표어로 미리 결정된 제4 데이터로 치환할 수 있다. 예를 들어, 제1 데이터가 “입사 동기를 기술하시오”인 상황에서, 컴퓨팅 장치는 “입사 동기”에서 “동기”라는 용어가 제1 데이터베이스에 정의된 제2 데이터에 해당하는 경우, 단계(412)를 통해 “동기”에 대한 대표어로 미리 결정된 제4 데이터인 “이유”로 제3 데이터를 치환할 수 있다.
컴퓨팅 장치는 단계(412)에서 연속된 유의어가 존재하는 것으로 결정된 경우, 연속된 유의어에 해당하는 제3-1 데이터 및 제3-2 데이터를 제거하고, 제3-1 데이터 및 제3-2 데이터의 대표어로 미리 결정된 제4 데이터를 제1 데이터에 추가할 수 있다. 앞선 예시에서, 컴퓨팅 장치는 “장기적”(제3-1 데이터) 및 “단기적”(제3-2 데이터)를 대표하는 것으로 미리 결정된 “향후”를 통해 “장기적” 및 “단기적”이 치환함으로써, “향후 관점”에 대응되는 데이터를 생성할 수 있다.
컴퓨팅 장치는 단계(415)를 통해 관용어 리스트를 저장하는 제2 데이터베이스에 정의된 용어에 해당하는 제5 데이터가 제1 데이터 내에 존재하는 지 여부를 결정할 수 있다. 제5 데이터가 존재하는 것으로 결정된 경우, 컴퓨팅 장치는 단계(416)를 제5 데이터를 제거함으로써 전처리 프로세스를 완료할 수 있다. 예를 들어, 컴퓨팅 장치는 “향후 관점에서 비전을 서술하시오”에서 제5 데이터에 대응하는 “서술하시오”에 대응되는 요소를 제거함으로써, 전처리 프로세스를 완료할 수 있다.
제2 데이터베이스에 저장되는 관용어 리스트는, 원본 데이터에 포함된 개별 요소 중 관용어에 대응되는 것으로 미리 결정된 개별 요소에 기초하여 결정될 수 있다. 또한, 다른 개별 요소와 결합되어 특징어로 결정되는 개별 요소의 경우, 관용어 리스트에서 배제될 수 있다.
단계(316)을 통해 전처리가 수행된 데이터는 앞선 단계(312 내지 315)가 진행됨에 따라 개별 요소만이 결합된 형태이거나, 원본 데이터의 형태일 수 있다. 예를 들어, 원본 데이터가 “장기적 단기적 관점에서 비전을 기술하시오”인 경우, 단계(416)을 거친 데이터는 “향후 관점 비전”이거나 “향후 관점에서 비전을”의 형태를 가질 수 있으며, 상세 구현 방식은 통상의 기술자가 용이하게 선택할 수 있다.
단계(316)를 통해 전처리가 완료된 데이터는 단계(317)를 통해 공백이 제거될 수 있고, 단계(318)를 통해 중복된 데이터가 제거될 수 있다. 단계(318)을 통해 제공되는 데이터는 단계(319)를 통해 레이블링 대상 데이터로 제공될 수 있다. 앞선 동작을 통해 원본 데이터의 양이 축소되어, 레이블링 대상 데이터가 현저히 감소할 수 있으며, 위 방식을 통해 생성된 학습 데이터는 뉴럴 네트워크 학습 성능에 큰 영향을 미치지 않을 수 있다.
도 5는 앞서 설명된 유의어 리스트를 저장하는 제1 데이터베이스를 구축하는 방법을 설명하기 위한 흐름도이다.
도 5를 참조하면, 단계(510)를 통해 컴퓨팅 장치는 제1 데이터베이스 구축을 위한 유의어 후보 데이터를 결정할 수 있다. 컴퓨팅 장치는 앞서 설명된 도 3의 단계(311)를 통해 획득한 원본 데이터 및 단계(315)를 통해 제1 필터링이 수행된 원본 데이터에 기초하여 유의어 후보 데이터를 결정할 수 있다. 보다 구체적으로, 원본 데이터 내에 소정의 임계 개수 이상의 개별 요소(단어)가 포함된 경우, 해당 개별 요소를 포함하는 원본 데이터를 유의어 후보 데이터로 결정할 수 있다. 또한, 제1 필터링이 수행된 원본 데이터에 소정의 임계 개수 이상의 개별 요소가 포함된 경우, 해당 개별 요소를 포함하는 원본 데이터를 유의어 후보 데이터로 결정할 수 있다. 컴퓨팅 장치는 유의어 후보 데이터를 결정하는 과정에서, 개별 요소 전체를 확인하거나, 특징어에 대응하는 개별 요소만을 대상으로 확인을 진행할 수 있다.
단계(520)에서 컴퓨팅 장치는 유의어 후보 데이터의 개별 요소를 추출할 수 있다. 보다 구체적으로, 컴퓨팅 장치는 명사, 동사, 형용사, 부사에 대응되는 개별 요소를 유의어 후보 데이터로부터 추출할 수 있다. 예를 들어, 유의어 후보 데이터가 “희망 분야 및 지원 이유를 쓰시오” 및 “희망 부문 및 지원 계기를 쓰시오”로 결정된 경우, 컴퓨팅 장치는 각각의 개별 요소를 (희망, 분야, 지원, 이유) 및 (희망, 부문, 지원, 계기)로 추출할 수 있다.
단계(530)에서 컴퓨팅 장치는 개별 요소들 사이의 유사도를 측정할 수 있다. 예를 들어, 컴퓨팅 장치는 Word2Vec 방식을 통해 각각의 개별 요소를 벡터화하고, 벡터들 사이의 유사도를 측정함으로써 개별 요소들 사이의 유사도를 측정할 수 있다. 예를 들어, 앞선 예시에서 “분야”와 “부문”은 유사도가 높은 단어로 측정될 수 있으며, “이유” 및 “계기”는 유사도가 높은 단어로 측정될 수 있다. Word2Vec 방식은 설명을 위해 예시적으로 제시된 것으로, 임의의 임베딩 방식을 통해 개별 요소를 벡터화함으로써 개별 요소들 사이의 유사도가 측정될 수 있음은 통상의 기술자가 이해할 것이다.
단계(540)에서 컴퓨팅 장치는 앞서 측정된 유사도에 기초하여 제1 유의어 리스트를 생성할 수 있다. 컴퓨팅 장치는 유사도가 소정의 임계치를 초과하는 개별 요소들을 유의어로 결정할 수 있으며, 결정 결과에 기초하여 제1 유의어 리스트를 생성할 수 있다. 예를 들어, 컴퓨팅 장치는 “분야”와 “부문”을 유의어로 매칭하고, “이유”와 “계기”를 유의어로 매칭하고, 매칭 결과에 기초하여 제1 유의어 리스트를 결정할 수 있다.
단계(550)에서 컴퓨팅 장치는 제1 유의어 리스트에 기초하여 중심 키워드를 추출할 수 있다. 중심 키워드는 상호 유의어 관계인 개별 요소들과 각각 결합하여 단어를 구성하는 횟수가 소정의 임계치 이상인 개별 요소를 의미할 수 있다. 예를 들어, 유의어로 결정된 “분야” 및 “부문”과 각각 결합하여 단어를 구성하는 횟수가 소정 임계치 이상인 “희망”은 중심 키워드로 결정될 수 있다. 동일한 방식으로, 서로 유의어 관계에 해당하는 “계기” 및 “이유”와 각각 결합하여 단어를 구성하는 횟수가 소정 임계치 이상인 “지원”은 중심 키워드로 결정될 수 있다. 컴퓨팅 장치는 유의어 후보 데이터에 포함된 연어 및 제1 유의어 리스트에 기초하여 중심 키워드를 추출할 수 있다. 연어는 개별 요소를 순서대로 결합한 형태를 의미할 수 있으며, 결합된 개별 요소의 개수에 기초하여 연어 N1, 연어 N2 등으로 판별될 수 있다. 예를 들어, 원본 데이터가 i) “희망 분야 및 지원 이유를 쓰시오” 및 ii) “희망 부문 및 지원 계기를 쓰시오”인 경우, 개별 요소는 i) “희망, 분야, 지원, 이유” 및 ii) “희망, 부문, 지원, 계기”로 추출될 수 있다. 이 경우, 연어 N1은 “희망”, “분야”, “부문”, “지원”, “이유”, “계기”로 추출될 수 있고, 연어 N2는 “희망-분야”, “희망-부문”, “지원-이유”, “지원-계기”로 추출될 수 있다. 컴퓨팅 장치는 위 상황에서 유의어인 “분야” 및 “지원”과 결합하여 단어를 구성하는 횟수가 소정의 조건을 만족하는 “희망”을 중심 키워드로 결정하고, 유의어인 “이유” 및 “계기”와 결합하여 단어를 구성하는 횟수가 소정의 조건을 만족하는 “지원”을 중심 키워드로 결정할 수 있다.
단계(560)에서 컴퓨팅 장치는 중심 키워드에 기초하여 제2 유의어 리스트를 생성할 수 있다. 보다 구체적으로, 컴퓨팅 장치는 각각의 중심 키워드와 유의어 후보 데이터에 포함된 다른 개별 요소들 사이의 상관도를 측정하고, 중심 키워드와 상관도가 소정의 임계치 이상인 개별 요소를 새로운 유의어로 결정할 수 있다. 상관도는 두 개별 요소 사이의 연관성을 나타내는 지표로, 상호정보량(Mutual Information ; MI), 점별 상호정보량(Pointwise Mutual information ; PMI), 정규화 점별 상호 정보량(Normalized Pointwise Mutual Information ; NPMI) 중 적어도 하나로 결정될 수 있다. 상호 정보량을 산출하는 예시적인 방식은 이하 첨부되는 도 6을 통해 보다 상세히 설명된다.
앞선 예시에서, 중심 키워드에 해당하는 “지원”은 유의어로 결정된 “이유” 및 “계기” 이외에도, “동기” 및 “사유”와 미리 결정된 임계치 이상의 상관도를 가지는 것으로 산출될 수 있다. 컴퓨팅 장치는 “지원”과 임계치 이상의 상관도가 산출된 “동기” 및 “사유”를 “이유” 및 “계기”에 대한 유의어로 결정함으로써, 제2 유의어 리스트를 생성할 수 있다.
단계(570)에서 컴퓨팅 장치는 제2 유의어 리스트에 포함된 유의어 각각에 대한 대표어를 결정할 수 있다. 예를 들어, 제2 유의어 리스트 상에 유의어로 정의된 “이유”, “계기”, “동기” 및 “사유” 중 어느 하나의 개별 요소를 유의어에 대한 대표어로 결정할 수 있다. 실시예에 따라서는, 유의어 중 가장 많은 빈도로 등장하는 개별 요소를 대표어로 결정할 수 있으나, 대표어를 선정하는 방식은 이에 한정되는 것이 아니다.
단계(580)에서 컴퓨팅 장치는 제2 유의어 리스트 및 각각의 유의어에 대해 결정된 대표어에 기초하여 제1 데이터베이스를 구축할 수 있다.
도 6은 컴퓨팅 장치가 상관도를 산출하는 일례를 도시하는 도면이다.
도 6을 참조하면, 상관도는 수학식(610)에 기재된 바와 같이, 상호정보량, 점별 상호정보량, 정규화 점별 상호정보량 중 어느 하나에 기초하여 산출될 수 있다.
산출 방식(620)에 도시된 바와 같이, 유의어 후보 데이터 상에서 각각의 개별 요소(희망, 직종 등)이 포함된 항목의 개수에 기초하여 확률이 산출되고, 산출 결과에 기초하여 상호 정보량이 산출될 수 있다.
컴퓨팅 장치는 산출된 상호 정보량에 기초하여 유의어를 추가적으로 도출할 수 있으며, 이를 통해 유의어 리스트가 결정될 수 있다.
도 7은 데이터 처리 방법이 구현된 일례를 도시한 도면이다.
도 7을 참고하면, 학습 데이터로 이용될 자소서 항목 원본 데이터는 앞서 설명된 제3 데이터베이스에 대응되는 불용어 사전에 기초하여 불용어가 제거되고(단계 (312)), 고유 명사가 통일되고(단계(313)), 품사를 추출하는 과정(단계(314))을 거쳐서 1차 필터링에 대응되는 1차 중복 제거 프로세스(단계(315))가 진행될 수 있다. 1차 중복 제거가 완료된 원본 데이터는 유의어 치환(단계(413)), 연속된 유의어 치환(단계(414)) 및 관용어 제거(단계(416)) 프로세스(단계(316))를 거칠 수 있다. 추가적으로, 공백을 제거하는 프로세스(단계(317))을 거쳐 2차 필터링(단계(318))이 수행되어, 레이블링 대상 데이터인 학습 데이터로 제공(단계(319))될 수 있다. 2차 필터링에서는 추가적인 품사 추출, 유의어 치환, 관용어 제거 프로세스가 진행될 수 있다.
유의어 사전에 대응되는 제1 데이터베이스는 반복적으로 출현되는 단어에 기초하여 유의어 후보 데이터에 대응하는 벡터화 대상 데이터를 결정하는 프로세스(단계(510)), 품사 추출(단계(520)), 유사도 측정 및 신규 유의어에 기초하여 유의어 리스트를 구성하는 프로세스(단계(530) 내지 단계(580))를 통해 구축될 수 있다. 도면에 도시된 바와 같이, 유의어 사전은 대표어에 해당하는 “조직”과 대응되는 유의어에 해당하는 “팀”, “조직”, “단체”, “집단”이 매핑된 형태를 가질 수 있다.
또한, 관용어 사전은 앞선 제2 데이터베이스에 대응될 수 있다.
유의어 사전에 대응되는 제1 데이터베이스는 앞선 전처리 프로세스(단계(316)) 및 추후 모델 학습 과정에 사용될 수 있다.
도 8은 특징어를 생성하는 데이터 처리 방법을 설명하기 위한 흐름도이다.
레이블링은 원본 데이터 내에 존재하는 특징어에 기초하여 수행될 수 있다. 예를 들어, 원본 데이터가 “공동체 과제를 해결한 경험에 대해 서술하시오”에서, “공동체 과제를 해결”이 원본 데이터의 의도에 해당하는 “문제 해결 능력” 레이블과 관련된 특징어일 수 있다. 이에 따라, 위 원본 데이터는 “문제 해결 능력”에 대응되는 레이블이 매핑될 수 있다.
일 실시예에 따른 컴퓨팅 장치는 특징어 개수를 확대하는 방안을 제공함으로써, 레이블링의 정확도를 향상시켜 추후 뉴럴 네트워크의 추론 정확도를 높일 수 있는 수단을 제공할 수 있다.
단계(810)에서 컴퓨팅 장치는 레이블링 기준이 되는 제1 특징어를 포함하는 제1 특징어 리스트를 수신할 수 있다. 제1 특징어 리스트는 시스템 설계자에 의해 미리 결정된 제1 특징어를 포함할 수 있으며, 예를 들어, 제1 특징어에 해당하는 “공동체 과제를 해결”과 이에 대응되는 레이블인 “문제 해결 능력”이 매핑된 형태일 수 있다. 제1 특징어 리스트는 최종적인 특징어 리스트를 생성하기 위한 후보 특징어 데이터에 해당할 수 있다.
단계(820)에서 컴퓨팅 장치는 제1 특징어 각각에 대하여, 품사 정보(명사, 형용사, 부사, 동사)에 기초하여 제1 특징어를 구성하는 제1 개별 요소를 추출할 수 있다. 예를 들어, 컴퓨팅 장치는 제1 특징어에 해당하는 “공동체 과제를 해결”에 포함된 제1 개별 요소인 “공동체”, “과제” 및 “해결”를 추출할 수 있다.
단계(830)에서 컴퓨팅 장치는 학습 데이터 내에서 제1 개별 요소와 결합되는 제2 개별 요소를 추출할 수 있다. 예를 들어, 제1 개별 요소가 “과제”인 경우, 컴퓨팅 장치는 학습 데이터 내에서 “과제”와 결합된 모든 개별 요소를 제2 개별 요소로써 추출할 수 있다.
보다 구체적으로, 컴퓨팅 장치는 제1 개별 요소 중 유의어에 해당하는 제1-1 개별 요소에 대하여, 제1-1 개별 요소를 대표하는 것으로 미리 결정된 대표어로 상기 제1-1 개별 요소를 치환할 수 있다. 예를 들어, 제1-1 개별 요소가 “과제”인 경우, 앞서 설명된 제1 데이터베이스에 기초하여 컴퓨팅 장치는 “과제”를 이에 대응하는 대표어인 “문제”로 치환할 수 있다.
컴퓨팅 장치는 학습 데이터에서 대표어와 결합된 제2-1 개별 요소를 추출할 수 있다. 예를 들어, 대표어가 “문제”인 경우, 컴퓨팅 장치는 학습 데이터 내에서 “문제”와 결합된 모든 개별 요소를 제2 개별 요소로써 추출할 수 있다.
컴퓨팅 장치는 학습 데이터에서, 제1 개별 요소 중 유의어에 해당하지 않는 제1-2 개별 요소와 결합된 제2-2 개별 요소를 추출할 수 있다.
단계(840)에서 컴퓨팅 장치는 제1 개별 요소 및 제2 개별 요소의 결합에 기초하여 생성되는 제2 특징어를 통해 제2 특징어 리스트를 생성할 수 있다. 컴퓨팅 장치는 제1 개별 요소와 각각의 제2 개별 요소의 임의의 조합에 기초하여 제2 특징어를 생성할 수 있다. 예를 들어, 컴퓨팅 장치는 제1 개별 요소인 “문제”에 대응하여 제2 개별 요소가 “팀”, “공동체”, “조직”, “당면”, “직면”, “해결”이 도출된 경우, 제2 특징어는 “문제 해결”, “문제 직면”, “문제 당면” “팀 문제”, “공동체 문제” 등으로 생성될 수 있다. 앞선 예시에서는 제1 개별 요소에 하나의 제2 개별 요소가 결합되어 제2 특징어가 생성되는 것으로 제시되었으나, 실시예는 이에 한정되는 것이 아니고, 제1 개별 요소와 결합하는 제2 개별 요소의 개수 및 순서는 제한된 것이 아니며, 제1 개별 요소 및 제2 개별 요소의 임의의 조합에 기초하여 제2 특징어가 생성될 수 있음은 통상의 기술자가 이해할 것이다.
추가적으로, 컴퓨팅 장치는 학습 데이터에 포함된 개별 요소 중, 특정한 레이블에 대응하는 학습 데이터에만 포함되는 제3 개별 요소를 추출하고, 제3 개별 요소에 기초하여 제2 특징어 리스트를 생성할 수 있다. 예를 들어, 학습 데이터에 포함된 “과업”이라는 개별 요소가 “문제 해결 능력”에 해당하는 레이블이 부여된 학습 데이터에만 포함되는 경우, 컴퓨팅 장치는 “과업”을 제3 개별 요소로써 추출할 수 있으며, 제3 개별 요소에 기초하여 제2 특징어를 생성할 수 있다. 예를 들어, 제3 개별 요소인 “과업” 자체를 제2 특징어로 결정할 수 있다. 제3 개별 요소는 하나의 단어에 한정되지 않으며, 연속된 단어의 결합에 해당할 수 있음은 통상의 기술자가 이해할 것이다. 컴퓨팅 장치는 TF-IDF를 통해 부여된 가중치 정보가 소정의 임계치를 초과하는 개별 요소에 기초하여 제3 개별 요소를 도출할 수 있다.
제2 특징어 리스트는 검토자의 검토에 기초하여 레이블링이 이루어질 수 있으며, 제1 특징어 리스트에 비해 특징어의 수가 확장된 제2 특징어 리스트에 기초하여 뉴럴 네트워크는 보다 정확도 높은 방식으로 학습될 수 있다.
도 9은 특징어를 생성하는 데이터 처리 방법이 구현된 일례를 도시하는 도면이다.
도 9를 참조하면, 컴퓨팅 장치는 시스템 설계자에 의해 설정된 제1 특징어 리스트에 대응되는 특징어 후보 데이터를 수신(단계(810))하고, 개별 요소에 대응되는 품사 추출(단계(820)) 및 추출된 개별 요소에 대한 유의어 치환 프로세스를 수행할 수 있다. 유의어 치환 프로세스는 앞서 설명된 제1 데이터베이스에 저장된 유의어 리스트를 활용한 방식에 기초하여 통상의 기술자가 용이하게 구현할 수 있을 것이다.
컴퓨팅 장치는 학습 데이터에서 제1 개별 요소(예를 들어, “문제”)와 결합되는 제2 개별 요소(예를 들어, “팀”, “공동체”, “조직”, “당면”, “직면”, “해결”)을 추출(단계(830))하고, 추출된 개별 요소에 대한 유의어 치환 프로세스를 진행할 수 있다.
컴퓨팅 장치는 개별 요소의 조합에 기초하여 제2 특징어 리스트를 생성(단계(840))하거나 특정 레이블에만 포함되는 개별 요소를 신규 특징어로 추가함으로써 제2 특징어 리스트를 생성할 수 있다.
생성된 제2 특징어 리스트는 검토자의 검토 및 중복 제거에 의해 최종적인 특징어가 결정될 수 있다.
도 10은 특징어를 처리하는 데이터 처리 방법을 설명하는 도면이다.
컴퓨팅 장치는 단계(1010)에서 레이블링이 완료된 학습 데이터 중 복수의 레이블에 대응되는 복합 의도 학습 데이터 리스트를 추출할 수 있다. 복합 의도 학습 데이터는 학습 데이터 내에 각각 서로 다른 레이블에 대응되는 둘 이상의 특징어를 포함하고 있거나, 특징어가 복수의 레이블에 대응되는 상황에서 생성될 수 있다.
단계(1020)에서 컴퓨팅 장치는 복합 의도 학습 데이터에 대응하는 복수의 레이블 중 어느 하나의 레이블만을 복합 의도 학습 데이터에 대응되는 레이블로 결정함으로써, 복합 의도 학습 데이터에 대한 레이블을 수정할 수 있다.
보다 구체적으로, 컴퓨팅 장치는 복합 의도 학습 데이터에서 복합 의도 특징 데이터를 추출할 수 있다. 예를 들어, 컴퓨팅 장치는 서로 다른 제1 레이블 및 제2 레이블 모두에 포함되는 특징어를 복합 의도 특징어로 추출할 있다.
제1 레이블 및 제2 레이블 모두에 대응되는 복합 의도 특징어가 존재하는 상황에서, 제2 레이블은 복합 의도 특징어 이외의 다른 특징어가 대응되지 않는 레이블인 경우, 컴퓨팅 장치는 제2 레이블을 복합 의도 특징어에 대응되는 레이블에서 배제할 수 있다. 이를 통해 복합 의도 특징어는 제1 레이블에만 대응되는 것으로 결정되고, 복합 의도 학습 데이터는 제1 레이블에만 대응되는 것으로 결정될 수 있다.
단계(1030)에서 컴퓨팅 장치는 복합 의도 학습 데이터 리스트 또는 단계(1020)에 따른 레이블 수정 결과를 외부 엔티티에 제공할 수 있다. 검토자는 복합 의도 학습 데이터에 대한 검토를 통해 복합 의도 학습 데이터의 레이블을 수정하거나, 각각의 복합 의도 특징어에 대응하는 레이블을 수정할 수 있다.
도 11a는 복합 의도 학습 데이터에 대한 처리 과정을 예시적으로 설명하기 위한 도면이다.
도 11a의 (a) 및 (b)에는 서로 다른 레이블 모두에 속하는 복합 의도 특징어에 해당되는 영역(1130, 1160)을 포함할 수 있다. 영역(1130, 1160)에 속하는 복합 의도 특징어를 포함하는 복합 의도 학습 데이터는 서로 다른 두 레이블 모두에 대응될 수 있다.
(a)의 경우, 제2 레이블(1120)에는 복합 의도 특징어 외에도 추가적인 특징어를 포함하고 있기 때문에, 복합 의도 특징어에 대한 레이블 수정이 불가능할 수 있다.
하지만, (b)의 경우, 제4 레이블(1150)에는 추가적인 특징어가 포함되어 있지 않기 때문에, 컴퓨팅 장치는 영역(1160)에 포함되는 복합 의도 특징어를 제3 레이블(1140)에만 대응되는 것으로 수정하고, 대응되는 복합 의도 학습 데이터를 제3 레이블(1140)에만 대응되는 것으로 수정할 수 있다.
실시예에 따라서, 각각의 레이블(1110, 1120, 1140, 1150) 모두에 포함되지 않는 특징어들에 대해서 컴퓨팅 장치는 분류 알고리즘(예를 들어, BR-SVM)을 적용하여 대응되는 레이블을 결정할 수 있다.
도 11b는 복합 의도 학습 데이터에 대한 처리 과정을 예시적으로 설명하기 위한 도면이다.
도 11b를 참조하면, (a)에 도시된 바와 같이, 복합 의도 학습 데이터 리스트는 검토자(사람)의 비교, 수정을 통해 지속적으로 갱신될 수 있다. 또한, 앞서 설명된 바와 같이 컴퓨팅 장치에 의해 자동으로 수정될 수도 있다.
보다 구체적으로, (b)에 도시된 바와 같이, 복합 의도 학습 데이터 리스트에 포함된 모호한 특징어(복합 의도 특징어)는 검토자에 의해 수정됨으로써, 특징어 데이터가 업데이트될 수 있다(단계 1171). 예를 들어, 검토자에 의해 복합 의도 특징어가 단일 레이블에 대응되는 것으로 수정될 수 있다. 또한, 앞선 도 10 및 도 11 a에서 설명된 바와 같이 컴퓨팅 장치에 의해 자동으로 복합 의도 특징어의 레이블이 수정될 수도 있다.
업데이트된 특징어에 기초하여 학습 데이터에 대한 재분류가 진행될 수 있다(단계 1172). 앞선 도 10 및 도 11 a에서 설명된 바와 같이 컴퓨팅 장치에 의해 자동으로 레이블이 수정되거나, 검토자에 의해 레이블이 수정될 수 있다.
분류 결과에 기초하여, 복합 의도 학습 데이터 리스트가 재생성될 수 있다. 보다 구체적으로, 컴퓨팅 장치는 서로 다른 레이블에 중복하여 대응되는 학습 데이터를 추출함으로써, 복합 의도 학습 데이터 리스트를 재생성할 수 있다. 재생성된 복합 의도 학습 데이터 리스트 중 기존 복합 의도 학습 데이터를 제외함으로써, 수정된 복합 의도 학습 데이터 리스트가 생성될 수 있다(단계 1173). 단계 1171 내지 단계 1173이 반복됨으로써 복합 의도 학습 데이터 리스트 및 복합 의도 특징어는 지속적으로 갱신될 수 있다.
도 12는 특징어를 갱신하는 데이터 처리 방법을 설명하기 위한 도면이다.
도 12를 참조하면, 단계(1210)에서 복수의 개별 요소로 구성된 제3 특징어를 추출할 수 있다. 예를 들어, 제3 특징어는 “사회경험/학창생활” 레이블에 대응되는 “금전 보수 일정 이내”에 해당하는 특징어와 같이, 복수의 개별 요소(단어)로 구성된 특징어일 수 있다.
컴퓨팅 장치는 단계(1220)에서 복수의 개별 요소 중 어느 하나의 개별 요소를 현재 후보 특징어로 결정할 수 있다. 보다 구체적으로, 복수의 개별 요소 중, 개별 요소를 포함하는 모든 특징어가 동일한 레이블에 대응되는 개별 요소를 현재 후보 특징어로 결정할 수 있다. 예를 들어, “금전 보수 일정 이내”에 포함된 4개의 개별 요소 중 “보수”의 경우, “보수”를 포함하는 모든 특징어가 동일한 레이블에 대응되는 경우, 컴퓨팅 장치는 “보수”를 현재 후보 특징어로 결정할 수 있다.
단계(1230)에서 컴퓨팅 장치는 현재 후보 특징어에 기초한 임시 레이블링 결과와 제3 특징어에 기초한 기존 레이블링 결과를 비교할 수 있다. 예를 들어, “보수”에 해당하는 현재 후보 특징어를 통해 학습 데이터에 대해 레이블링을 수행한 결과와, “금전 보수 일정 이내”에 해당하는 제3 특징어를 통해 학습 데이터에 대해 레이블링을 수행한 결과를 비교할 수 있다. 결과를 비교하는 프로세스는, 각각의 학습 데이터에 대한 레이블링의 변동이 있는 지 여부에 기초하여 수행될 수 있다.
단계(1240)에서 컴퓨팅 장치는 비교 결과가 임계 조건을 충족시키는 지 여부를 결정할 수 있다. 예를 들어, 임계 조건은 레이블링이 변경되지 않은 학습 데이터의 개수가 소정의 임계치를 초과하는지 여부일 수 있다.
레이블링이 변경되지 않은 학습 데이터의 개수가 소정의 임계치를 미만인 경우, 단계(1250)를 통해 컴퓨팅 장치는 제3 특징어에서 현재 후보 특징어와 연속적으로 존재하는 개별 요소를 현재 후보 특징어에 부가함으로써 현재 후보 특징어를 갱신할 수 있다. 예를 들어, 컴퓨팅 장치는 단계(1250)에서 현재 후보 특징어에 해당하는 “보수”에 “일정” 또는 “금전”을 부가하여 “보수 일정” 또는 “금전 보수”를 새로운 현재 후보 특징어로 결정할 수 있다. 컴퓨팅 장치는 단계(1230) 및 단계(1240)을 추가로 수행함에 따라 다시 단계(1250)에 진입하는 경우, 현재 후보 특징어에 해당하는 “보수 일정” 또는 “금전 보수”를 “금전 보수 일정”, “보수 일정 이내” 등으로 갱신할 수 있다. 이처럼, 컴퓨팅 장치는 단계(1240)에서 소정의 임계 조건을 충족하여 단계(1260)를 수행하기 전까지는 개별 요소를 하나씩 추가시키는 단계(1250)의 동작을 반복할 수 있다.
레이블링이 변경되지 않은 학습 데이터의 개수가 소정의 임계치를 초과한 경우, 단계(1260)를 통해 컴퓨팅 장치는 현재 후보 특징어에 기초하여 제3 특징어를 갱신할 수 있다. 예를 들어, 기존의 제3 특징어인 “금전 보수 일정 이내”를 “보수”로 수정할 수 있다.
도 13은 특징어를 갱신하는 데이터 처리 방법이 구현된 일례를 도시하는 도면이다.
도 13을 참고하면, 단계(1310)에서 컴퓨팅 장치는 특징 연어로 지칭될 수 있는 복수의 개별 요소로 구성된 제3 특징어를 추출하고(단계(1210)), 제3 특징어에 포함된 개별 요소(단어)를 추출할 수 있다. 도면 상의 1 gram은 현재 후보 특징어가 1개의 개별 요소로 구성됨을 의미할 수 있으며, 2 gram 및 3 gram은 개별 요소가 각각 2개 및 3개임을 의미할 수 있다.
단계(1320)에서 컴퓨팅 장치는 추출된 개별 요소 중, 개별 요소를 포함하는 특징어가 모두 동일한 레이블에 해당하는 개별 요소를 현재 후보 특징어로 결정할 수 있다(단계(1220)). 예를 들어, 1gram 단어로 지칭된 “보수”와 관련된 특징어 “금전 보수 일정”, “금전 보수 일정 이내”, “보수 일정 이내”, “금전 보수 받 일정”, “금전 보수 받”, “보수 받 일정” 및 “보수 받 일정 이내” 모두가 동일한 레이블에 대응되므로, 컴퓨팅 장치는 “보수”를 현재 후보 특징어로 결정할 수 있다.
단계(1330)에서 현재 후보 특징어에 기초한 레이블링이 학습 데이터에 대해 수행됨으로써, 임시 레이블링 결과가 생성될 수 있다. 레이블링은 중복이 제거된 학습 데이터에 해당하는 중복제거 데이터(앞서 설명된 2차 필터링이 완료된 데이터)에 대해 수행될 수 있다. 이 경우, 결과의 정확도를 향상시키기 위하여, 중복제거 데이터에 포함된 개별 요소에 대한 유의어가 치환된 데이터에 대해 레이블링이 수행될 수 있다. 보다 구체적으로, 컴퓨팅 장치는 중복제거 데이터 중 “대가 보수 일정”, “대가 보수 일정 이내” 등과 같이 1 gram 단어인 “보수”의 유의어를 포함하는 데이터들에 대하여 유의어 치환(“대가”를 “보수”로 치환)을 수행하고, 유의어 치환 결과에 대한 레이블링을 수행함으로써, 임시 레이블링 결과를 생성할 수 있다. 임시 레이블링 결과와 비교되는 기존 레이블링 결과 역시도 동일한 유의어 치환 프로세스에 기초하여 결정될 수 있다.
단계(1340)에서, 컴퓨팅 장치는 임시 레이블링 결과 기존 레이블링 결과를 비교할 수 있다(단계(1230)). 단계(1350)에서 컴퓨팅 장치는 레이블링이 변경되지 않은 학습 데이터의 비율이 소정의 기준 이상인 경우, 현재 후보 특징어를 통해 제3 특징어를 대체할 수 있다(단계(1260)). 즉, 현재 후보 특징어가 대응되는 레이블 이외의 다른 레이블의 학습 데이터에 많이 포함되어 있지 않은 경우, 현재 후보 특징어는 제3 특징어를 대체할 수 있으나, 그렇지 않은 경우에는 현재 후보 특징어는 제3 특징어를 대체할 수 없고, 보다 많은 수의 개별 요소가 결합된 용어로 갱신되어 비교 절차가 반복될 수 있다. 단계(1350)에서 컴퓨팅 장치는 레이블링이 변경되지 않은 학습 데이터의 비율이 소정 기준 미만인 경우, 현재 후보 특징어를 갱신할 수 있다(단계(1250). 현재 후보 특징어를 갱신하는 방식은 앞선 도면에서 설명된 단계(1250)와 동일한 방식일 수 있다. 예를 들어, 현재 후보 특징어 “보수”는 “보수 일정”으로 갱신될 수 있다.
현재 후보 특징어를 갱신하여 임시 레이블링을 수행하는 일련의 프로세스는, 임시 레이블링 결과가 앞서 설명된 소정의 조건을 만족할 때까지 반복될 수 있다.
단계(1340)에서는 추가적으로 레이블링이 이루어지지 않은 학습 데이터에 대한 처리가 진행될 수 있다. 보다 구체적으로, 레이블링이 되지 않은 학습 데이터에 포함된 개별 요소가 기존 특징어에 포함되지 않은 개별 요소인 경우, 신규 특징어로 추출하거나, 개별 요소에 대한 분류 오기가 있는 경우, 이를 정정할 수 있다.
앞선 설명에서는 하나의 연어에 대하여 개별 요소를 증가시키며 현재 후보 특징어를 갱신하여 임시 레이블링을 수행하는 방식으로 설명되었으나, 본원 발명의 실시예는 이에 한정되는 것이 아니고, 복수의 데이터 세트 단위로 수행될 수 있음은 통상의 기술자가 이해할 것이다. 예를 들어, 단계(1310)에서는 1개의 개별 요소로 구성된 복수의 병렬적인 후보 특징어(“보수”, “조금”)가 도출되고, 복수의 후보 특징어에 기초한 임시 레이블링이 수행될 수 있으며, 임시 레이블링 결과와 기존 레이블링 결과의 비교에 기초하여 특징어 갱신 절차가 이루어 질 수 있다. 이 경우, “보수”에 해당하는 후보 특징어와 관련된 임시 레이블링 결과의 경우, 기존 레이블링 결과와 차이가 없더라도, “조금”과 관련된 후보 특징어에 대한 임시 레이블링 결과의 변화가 큰 경우, 각각의 후보 특징어에 대한 2 gram에 해당하는 후보 특징어(“금전 보수”, “보수 일정”, …, “조금 개선”…)로 갱신하고 임시 레이블링 결과와 기존 레이블링 결과를 비교하는 프로세스가 추가적으로 진행될 수 있다.
도 14는 데이터 처리 방법이 구현된 일례를 도시하는 도면이다.
도 14를 참고하면, 특징어에 기초하여 레이블링이 완료된 학습 데이터 중 복합 의도 학습 데이터는 복합의도 처리 프로세스(앞서 도 10 내지 도 11b를 통해 설명된 프로세스)를 통해 모호한 특징이 수정되는 데이터 처리 프로세스가 진행될 수 있다. 또한, 복합 의도가 없는 학습 데이터의 경우, 앞서 도 9를 통해 설명된 신규 특징어 추출 프로세스를 통해 신규 특징어가 추출될 수 있다.
레이블링이 되지 않은 학습 데이터는 분류 알고리즘(예를 들어, BR-SVM)에 기초하여 추가적인 분류가 진행될 수 있다.
앞선 프로세스를 통해 확정된 특징어들은 Ngram 최적화로 지칭된 앞선 도 12 및 도 13을 통해 설명된 데이터 처리 방법을 통해 특징어가 갱신될 수 있다.
도 15는 본원 발명에 따른 컴퓨팅 장치의 구성을 도시하는 도면이다.
도 15를 참조하면, 일 실시예에 따른 컴퓨팅 장치(1500)는 프로세서(1520)를 포함한다. 컴퓨팅 장치(1500)는 메모리(1510) 및 통신 인터페이스(1530)를 더 포함할 수 있다. 프로세서(1520), 메모리(1510) 및 통신 인터페이스(1530)는 통신 버스(미도시)를 통해 서로 통신할 수 있다.
일 실시예에 따르면, 프로세서(1520)는 자연어의 의도를 분류하는 뉴럴 네트워크의 학습에 이용되는 자연어에 대한 데이터 처리를 수행할 수 있다.
프로세서(1520)는 자연어의 의도를 분류하는 뉴럴 네트워크의 학습에 사용되는 자연어인 제1 데이터를 수신하고, 유의어 리스트가 저장된 제1 데이터베이스 또는 자연어 의도 분류와 무관한 관용어 리스트가 저장된 제2 데이터베이스 중 적어도 하나 기초하여, 상기 제1 데이터에 대한 전처리를 수행할 수 있다.
다른 실시예에 따르면, 프로세서(1520)는 자연어의 의도를 분류하는 뉴럴 네트워크에 대한 학습에 사용되는 특징어를 생성할 수 있다. 프로세서(1520)는 학습 데이터에 대한 레이블링의 기준이 되는 제1 특징어를 포함하는 제1 특징어 리스트를 수신하고, 제1 특징어 각각에 대하여, 품사 정보에 기초하여 상기 제1 특징어를 구성하는 제1 개별 요소를 추출하고, 학습 데이터에서 제1 개별 요소와 결합되어 단어를 구성하는 제2 개별 요소를 추출하고, 제2 개별 요소 및 제1 개별 요소의 결합에 기초하여 생성되는 제2 특징어를 통해 제2 특징어 리스트를 생성할 수 있다.
또 다른 실시예에 따르면, 프로세서(1520)는 자연어의 의도를 분류하는 뉴럴 네트워크에 대한 학습에 사용되는 특징어를 갱신하는 데이터 처리를 수행할 수 있다.
프로세서(1520)는 복수의 개별 요소로 구성된 기존 특징어를 추출하고, 복수의 개별 요소 중 어느 하나의 개별 요소를 현재 후보 특징어로 결정하고, 현재 후보 특징어에 기초한 수행된 제1 임시 레이블링 결과와 기존 특징어에 기초하여 수행된 기존 레이블링 결과를 비교하고, 비교 결과에 기초하여 기존 특징어를 갱신할 수 있다.
추가적인 실시예에 따르면, 프로세서(1520)는 자연어의 의도를 분류하는 뉴럴 네트워크에 대한 학습에 사용되는 특징어를 처리하는 데이터 처리 방법을 수행할 수 있다.
프로세서(1520)는 복수의 레이블에 대응되는 복합의도 특징어를 추출하고, 미리 결정된 조건에 기초하여 복수의 레이블 중 어느 하나의 레이블을 복합의도 특징어에 대응하는 레이블에서 배제할 수 있다.
메모리(1510)는 휘발성 메모리 또는 비 휘발성 메모리일 수 있다.
이 밖에도, 프로세서(1520)는 프로그램을 실행하고, 컴퓨팅 장치(1500)를 제어할 수 있다. 프로세서(1520)에 의하여 실행되는 프로그램 코드는 메모리(1510)에 저장될 수 있다. 컴퓨팅 장치(1500)는 입출력 장치(미도시)를 통하여 외부 장치(예를 들어, 퍼스널 컴퓨터 또는 네트워크)에 연결되고, 데이터를 교환할 수 있다. 컴퓨팅 장치(1500)는 서버에 탑재될 수 있다.
컴퓨팅 장치(1500)는 프로세서(1520)를 통해 앞선 도 1 내지 도 14를 통해 설명된 데이터 처리 방법을 수행할 수 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (14)

  1. 컴퓨팅 장치에 의해 수행되는, 자연어의 의도를 분류하는 뉴럴 네트워크의 훈련에 이용되는 자연어에 대한 데이터 처리 방법에 있어서,
    자연어의 의도를 분류하는 뉴럴 네트워크의 학습에 사용되는 자연어인 제1 데이터를 수신하는 단계; 및
    유의어 리스트가 저장된 제1 데이터베이스 또는 자연어 의도 분류와 무관한 관용어 리스트가 저장된 제2 데이터베이스 중 적어도 하나 기초하여, 상기 제1 데이터에 대한 전처리를 수행하는 단계
    를 포함하는, 데이터 처리 방법.
  2. 제1항에 있어서,
    상기 전처리를 수행하는 단계는,
    상기 제1 데이터베이스에 미리 정의된 유의어에 해당하는 제3 데이터가 상기 제1 데이터 내에 존재하는 지 여부를 결정하는 단계; 및
    상기 제3 데이터가 상기 제1 데이터 내에 존재하는 경우, 상기 제3 데이터를 대표하는 용어로 미리 결정된 제4 데이터로 상기 제3 데이터를 치환하는 단계
    를 포함하는, 데이터 처리 방법.
  3. 제2항에 있어서,
    상기 제3 데이터를 치환하는 단계는,
    유의어에 해당하는 제3-1 데이터 및 제3-2 데이터가 연속적으로 존재하는 경우, 상기 제3-1 데이터 및 상기 제3-2 데이터를 상기 제1 데이터에서 제거하고 상기 제4 데이터를 추가하는 단계
    를 포함하는, 데이터 처리 방법.
  4. 제1항에 있어서,
    상기 전처리를 수행하는 단계는,
    상기 제2 데이터베이스에 미리 정의된 용어에 해당하는 제5 데이터가 상기 제1 데이터 내에 존재하는 지 여부를 결정하는 단계; 및
    상기 제5 데이터가 상기 제1 데이터 내에 존재하는 경우, 상기 제5 데이터를 상기 제1 데이터로부터 제거하는 단계
    를 포함하는, 데이터 처리 방법.
  5. 제1항에 있어서,
    상기 제1 데이터베이스는,
    벡터화된 개별 요소들 사이의 유사도에 의해 결정되는 유의어 및 상기 유의어와 결합하여 단어를 생성하는 횟수가 소정의 임계치 이상인 중심 키워드에 기초하여 구축되는, 데이터 처리 방법.
  6. 컴퓨팅 장치에 의해 수행되는, 자연어의 의도를 분류하는 뉴럴 네트워크에 대한 훈련에 사용되는 특징어를 생성하는 데이터 처리 방법에 있어서,
    학습 데이터에 대한 레이블링의 기준이 되는 제1 특징어를 포함하는 제1 특징어 리스트를 수신하는 단계;
    상기 제1 특징어 각각에 대하여, 품사 정보에 기초하여 상기 제1 특징어를 구성하는 제1 개별 요소를 추출하는 단계;
    상기 학습 데이터에서 상기 제1 개별 요소와 결합되어 단어를 구성하는 제2 개별 요소를 추출하는 단계;
    상기 제2 개별 요소 및 상기 제1 개별 요소의 결합에 기초하여 생성되는 제2 특징어를 통해 제2 특징어 리스트를 생성하는 단계
    를 포함하는, 데이터 처리 방법.
  7. 제6항에 있어서,
    상기 제2 개별 요소를 추출하는 단계는,
    상기 제1 개별 요소 중 유의어에 해당하는 제1-1 개별 요소에 대하여, 상기 제1-1 개별 요소를 대표하는 것으로 미리 결정된 대표어로 상기 제1-1 개별 요소를 치환하는 단계;
    상기 학습 데이터에서 상기 대표어와 결합되어 단어를 구성하는 제2-1 개별 요소를 추출하는 단계; 및
    상기 학습 데이터에서, 상기 제1 개별 요소 중 유의어에 해당하지 않는 제1-2 개별 요소와 결합되어 단어를 구성하는 제2-2 개별 요소를 추출하는 단계
    를 포함하고,
    상기 제2 특징어 리스트를 생성하는 단계는,
    상기 제1 개별 요소, 상기 제2-1 개별 요소 및 상기 제2-2 개별 요소 중 적어도 하나에 기초하여 상기 제2 특징어 리스트를 생성하는, 데이터 처리 방법.
  8. 제6항에 있어서,
    상기 학습 데이터에 포함된 개별 요소 중, 특정 레이블에 대응하는 학습 데이터에만 포함되는 제3 개별 요소로 추출하는 단계
    를 더 포함하고,
    상기 제2 특징어 리스트를 생성하는 단계는,
    상기 제1 개별 요소 내지 제3 개별 요소 중 적어도 하나에 기초하여 상기 제2 특징어 리스트를 생성하는, 데이터 처리 방법.
  9. 자연어의 의도를 분류하는 뉴럴 네트워크에 대한 훈련에 사용되는 특징어를 갱신하는 데이터 처리 방법에 있어서,
    복수의 개별 요소로 구성된 기존 특징어를 추출하는 단계;
    상기 복수의 개별 요소 중 어느 하나의 개별 요소를 현재 후보 특징어로 결정하는 단계;
    상기 현재 후보 특징어에 기초한 수행된 제1 임시 레이블링 결과와 상기 기존 특징어에 기초하여 수행된 기존 레이블링 결과를 비교하는 단계; 및
    비교 결과에 기초하여 상기 기존 특징어를 갱신하는 단계
    를 포함하는, 데이터 처리 방법.
  10. 제9항에 있어서,
    상기 갱신하는 단계는,
    상기 제1 임시 레이블링 결과에서, 대응되는 레이블이 변경된 학습 데이터의 개수가 소정의 임계값을 초과하는 경우, 상기 기존 특징어에서 상기 현재 후보 특징어와 연속적으로 존재하는 개별 요소를 상기 현재 후보 특징어에 부가함으로써, 상기 현재 후보 특징어를 갱신하는 단계;
    상기 갱신된 현재 후보 특징어에 기초한 제2 임시 레이블링 결과 및 상기 기존 레이블링 결과에 대한 비교 결과에 기초하여 상기 기존 특징어를 갱신하는 단계
    를 포함하는, 데이터 처리 방법.
  11. 제9항에 있어서,
    상기 현재 후보 특징어로 결정하는 단계는,
    상기 복수의 개별 요소 중, 개별 요소를 포함하는 모든 특징어가 동일한 레이블에 대응되는 개별 요소를 현재 후보 특징어로 결정하는, 데이터 처리 방법.
  12. 자연어의 의도를 분류하는 뉴럴 네트워크에 대한 훈련에 사용되는 특징어를 처리하는 데이터 처리 방법에 있어서,
    복수의 레이블에 대응되는 복합의도 특징어를 추출하는 단계; 및
    미리 결정된 조건에 기초하여 상기 복수의 레이블 중 어느 하나의 레이블을 상기 복합의도 특징어에 대응하는 레이블에서 배제하는 단계
    를 포함하는, 데이터 처리 방법.
  13. 제12항에 있어서,
    상기 배제하는 단계는,
    상기 복수의 레이블 중 상기 복합의도 특징어 외에 다른 대응되는 특징어를 포함하지 않는 레이블을 결정하는 단계;
    상기 결정된 레이블을 상기 복합의도 특징어에 대응되는 레이블에서 배제하는 단계
    를 포함하는, 데이터 처리 방법.
  14. 제1항의 방법을 수행하기 위한 명령어들을 포함하는 하나 이상의 프로그램을 저장한 컴퓨터 판독 가능 저장매체.
PCT/KR2021/010484 2021-03-09 2021-08-09 자연어 의도를 분류하는 뉴럴 네트워크 훈련을 위한 데이터 처리 방법 및 장치 WO2022191368A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2021-0030838 2021-03-09
KR1020210030838A KR102487571B1 (ko) 2021-03-09 2021-03-09 자연어 의도를 분류하는 뉴럴 네트워크 훈련을 위한 데이터 처리 방법 및 장치

Publications (1)

Publication Number Publication Date
WO2022191368A1 true WO2022191368A1 (ko) 2022-09-15

Family

ID=83228229

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2021/010484 WO2022191368A1 (ko) 2021-03-09 2021-08-09 자연어 의도를 분류하는 뉴럴 네트워크 훈련을 위한 데이터 처리 방법 및 장치

Country Status (2)

Country Link
KR (2) KR102487571B1 (ko)
WO (1) WO2022191368A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102639873B1 (ko) * 2023-08-02 2024-02-23 (주)유알피 인공지능을 활용한 대표어 관리를 위한 유의어 치환장치
KR102639880B1 (ko) * 2023-08-02 2024-02-23 (주)유알피 문서 내의 유의어를 대표어로 관리하기 위한 인공지능기반 유의어 치환방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140049659A (ko) * 2012-10-18 2014-04-28 조선대학교산학협력단 문서의 자동 학습 장치와 이를 이용한 문서 자동 학습 방법, 문서의 자동 분류 장치와 이를 이용한 문서 자동 분류 방법
KR20140052328A (ko) * 2012-10-24 2014-05-07 에스케이텔레콤 주식회사 Rdf 기반의 문장 온톨로지 생성 장치 및 방법
KR101799681B1 (ko) * 2016-06-15 2017-11-20 울산대학교 산학협력단 어휘 의미망 및 단어 임베딩을 이용한 동형이의어 분별 장치 및 방법
KR101938212B1 (ko) * 2018-05-29 2019-01-15 전남대학교산학협력단 의미와 문맥을 고려한 주제기반 문서 자동 분류 시스템
KR20200135607A (ko) * 2019-05-22 2020-12-03 삼성전자주식회사 학습 네트워크 모델 기반의 언어 처리 방법 및 장치

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6173848B2 (ja) * 2013-09-11 2017-08-02 株式会社東芝 文書分類装置
KR101962113B1 (ko) * 2017-03-28 2019-07-19 (주)아크릴 자연어 문장을 확장하는 장치와 상기 자연어 문장을 확장하는 방법
KR101880628B1 (ko) * 2017-11-27 2018-08-16 한국인터넷진흥원 기계 학습 데이터셋에 대한 레이블링 방법 및 그 장치
KR102103273B1 (ko) * 2018-02-27 2020-04-22 주식회사 와이즈넛 계층적으로 사용자 표현을 이해하고 답변을 생성하는 대화형 상담 챗봇 장치 및 방법
KR102283283B1 (ko) * 2019-07-26 2021-07-28 주식회사 수아랩 데이터 레이블링 우선순위 결정방법
KR20210083706A (ko) * 2019-12-27 2021-07-07 삼성전자주식회사 데이터의 범주를 분류하는 컴퓨팅 장치 및 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140049659A (ko) * 2012-10-18 2014-04-28 조선대학교산학협력단 문서의 자동 학습 장치와 이를 이용한 문서 자동 학습 방법, 문서의 자동 분류 장치와 이를 이용한 문서 자동 분류 방법
KR20140052328A (ko) * 2012-10-24 2014-05-07 에스케이텔레콤 주식회사 Rdf 기반의 문장 온톨로지 생성 장치 및 방법
KR101799681B1 (ko) * 2016-06-15 2017-11-20 울산대학교 산학협력단 어휘 의미망 및 단어 임베딩을 이용한 동형이의어 분별 장치 및 방법
KR101938212B1 (ko) * 2018-05-29 2019-01-15 전남대학교산학협력단 의미와 문맥을 고려한 주제기반 문서 자동 분류 시스템
KR20200135607A (ko) * 2019-05-22 2020-12-03 삼성전자주식회사 학습 네트워크 모델 기반의 언어 처리 방법 및 장치

Also Published As

Publication number Publication date
KR20220126493A (ko) 2022-09-16
KR20220127786A (ko) 2022-09-20
KR102487571B1 (ko) 2023-01-12
KR102477782B1 (ko) 2022-12-16

Similar Documents

Publication Publication Date Title
WO2022191368A1 (ko) 자연어 의도를 분류하는 뉴럴 네트워크 훈련을 위한 데이터 처리 방법 및 장치
KR102404037B1 (ko) 자연 언어 문장을 데이터베이스 쿼리로 번역하기 위한 시스템 및 방법
US7295965B2 (en) Method and apparatus for determining a measure of similarity between natural language sentences
WO2021132927A1 (en) Computing device and method of classifying category of data
US7630981B2 (en) Method and system for learning ontological relations from documents
WO2018034426A1 (ko) 커널 rdr을 이용한 태깅 말뭉치 오류 자동수정방법
CN110209822A (zh) 基于深度学习的学术领域数据相关性预测方法、计算机
US20050131896A1 (en) Learning and using generalized string patterns for information extraction
WO2021071137A1 (ko) 외국어 문장 빈칸 추론 문제 자동 생성 방법 및 시스템
US20220245353A1 (en) System and method for entity labeling in a natural language understanding (nlu) framework
WO2019112117A1 (ko) 텍스트 콘텐츠 작성자의 메타정보를 추론하는 방법 및 컴퓨터 프로그램
JP7251623B2 (ja) パラメータ学習装置、パラメータ学習方法、及びプログラム
WO2021246812A1 (ko) 딥러닝 nlp 모델을 활용한 뉴스 긍정도 분석 솔루션 및 장치
WO2024080783A1 (ko) 인공지능 기술을 이용하여 pmhc에 대응되는 tcr 정보를 생성하기 위한 방법 및 장치
WO2023195769A1 (ko) 신경망 모델을 활용한 유사 특허 문헌 추출 방법 및 이를 제공하는 장치
WO2023149767A1 (en) Modeling attention to improve classification and provide inherent explainability
Barnett A vocal data management system
Anick Integrating natural language processing and information retrieval in a troubleshooting help desk
WO2017159906A1 (ko) 원문의 번역어순을 결정하는 데이터 구조, 상기 구조를 생성하는 프로그램 및 이를 저장하는 컴퓨터 판독가능 저장매체
WO2023013826A1 (ko) 기본 문형 단위 분해에 기반한 외국어 구문 학습 시스템
US20220229990A1 (en) System and method for lookup source segmentation scoring in a natural language understanding (nlu) framework
US20220229998A1 (en) Lookup source framework for a natural language understanding (nlu) framework
JP7147625B2 (ja) 同義語抽出装置、同義語抽出方法、および、同義語抽出プログラム
WO2024025039A1 (ko) 메타버스 내 사용자의 상태를 분석하는 시스템 및 방법
Chandiok et al. Cognitive functionality based question answering system

Legal Events

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

Ref document number: 21930468

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21930468

Country of ref document: EP

Kind code of ref document: A1