KR102132142B1 - Method and apparatus for recommending vocabulary from data dictionary based on natural language processing technique - Google Patents

Method and apparatus for recommending vocabulary from data dictionary based on natural language processing technique Download PDF

Info

Publication number
KR102132142B1
KR102132142B1 KR1020200035512A KR20200035512A KR102132142B1 KR 102132142 B1 KR102132142 B1 KR 102132142B1 KR 1020200035512 A KR1020200035512 A KR 1020200035512A KR 20200035512 A KR20200035512 A KR 20200035512A KR 102132142 B1 KR102132142 B1 KR 102132142B1
Authority
KR
South Korea
Prior art keywords
terms
data
term
dictionary
target word
Prior art date
Application number
KR1020200035512A
Other languages
Korean (ko)
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 주식회사 데이터스트림즈
Priority to KR1020200035512A priority Critical patent/KR102132142B1/en
Application granted granted Critical
Publication of KR102132142B1 publication Critical patent/KR102132142B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Abstract

Provided is a method for recommending a term from a data dictionary which performs pre-processing for a data dictionary including a plurality of terms as data items and determines at least one term related to a target word from the pre-processed data dictionary based on a natural language processing technique to provide the at least one term as a recommended term.

Description

자연어 처리 기법에 기반하여 데이터 사전으로부터의 용어를 추천하는 방법 및 장치{METHOD AND APPARATUS FOR RECOMMENDING VOCABULARY FROM DATA DICTIONARY BASED ON NATURAL LANGUAGE PROCESSING TECHNIQUE}METHOD AND APPARATUS FOR RECOMMENDING VOCABULARY FROM DATA DICTIONARY BASED ON NATURAL LANGUAGE PROCESSING TECHNIQUE}

아래의 설명은 자연어 처리 기법에 기반하여 데이터 사전으로부터의 용어를 추천하는 방법 및 장치에 관한 것으로, 특히, 통계적 방법 또는 머신러닝 기반의 방법에 따라 데이터 사전으로부터 타겟 단어와 유사한 용어들을 순위화하여 추천하는 기술에 관한 것이다. The following description relates to a method and apparatus for recommending terms from a data dictionary based on a natural language processing technique, in particular, ranking and recommending terms similar to target words from a data dictionary according to a statistical method or a machine learning based method It is about technology.

4차 산업이 활성화되고 이에 대한 관심이 높아짐에 따라, IT, 금융, 경제, 의료 등 여러 업종들 및 분야들에서 다양한 종류의 데이터가 대규모로 생성되고 있으며, 이러한 데이터를 관리하기 위해 많은 자원이 소비되고 있다.As the 4th industry is activated and interest in it is growing, various kinds of data are being generated in large scale in various industries and sectors such as IT, finance, economy, and healthcare, and a lot of resources are consumed to manage this data. Is becoming.

데이터를 관리하기 위해, 비즈니스/데이터 사전이 사용되고 있다. 이러한 비즈니스/데이터 사전은 기업이 현장에서 사용하는 비즈니스 용어를 유지하고 관리하기 위한 도구이다. To manage data, business/data dictionary is used. These business/data dictionaries are tools for maintaining and managing business terminology used by companies in the field.

그러나, 비즈니스/데이터 사전에서는 중복된 단어가 생성되고 유지되는 문제가 있으며, 이러한 용어의 정리, 제거 및 유지에 추가적인 비용이 소요되는 경우가 많다. 또한, 예컨대, 기업의 인수 합병이 있는 경우나, 계열사들이 사용하는 용어 중 중복되는 용어(단어)를 삭제하고, 단축된 약어들을 통합하고자 하는 경우에는 여러 데이터 사전들을 통합하는 통합 사전을 재설계하여 구축할 필요가 있다. However, in the business/data dictionary, there is a problem in that duplicate words are generated and maintained, and additional costs are often required to organize, remove, and maintain these terms. Also, for example, in the case of a merger or acquisition of a company, or when overlapping terms (words) among terms used by affiliates are to be deleted, and shortened abbreviations are to be integrated, an integrated dictionary that incorporates multiple data dictionaries is redesigned. Need to build.

이와 같이, 데이터 사전들을 통합하는 데이터 통합 및 데이터 사전 표준화를 수행하기 위해서는, 데이터 사전들에 포함되어 있는 용어(단어)들로부터 유사한 용어(단어)를 판정해 내는 것이 중요하다.As such, in order to perform data integration and data dictionary standardization incorporating data dictionaries, it is important to determine similar terms (words) from terms (words) included in the data dictionaries.

한편, 한국공개특허 제10-2014-0133383호(공개일 2014년 11월 19일)에는 데이터 관리 장치, 데이터 관리 방법 및 데이터 관리 시스템으로서, 클라우드 환경 하에서 외부 저장 공간에 데이터와 키워드를 암호화하여 저장하고, 키워드들에 대한 검색 가능한 암호문을 생성하여, 검색하려는 키워드에 대한 토큰을 이용해 암호화된 키워드들로부터 해당 키워드를 포함하는 데이터의 검색 등을 가능하게 하는 기술에 관해 개시하고 있다. On the other hand, Korean Patent Publication No. 10-2014-0133383 (published on November 19, 2014) is a data management device, data management method, and data management system that encrypts and stores data and keywords in an external storage space under a cloud environment. And, it discloses a technique for generating a searchable ciphertext for keywords and enabling retrieval of data including the corresponding keyword from keywords encrypted using a token for the keyword to be searched.

상기에서 설명된 정보는 단지 이해를 돕기 위한 것이며, 종래 기술의 일부를 형성하지 않는 내용을 포함할 수 있으며, 종래 기술이 통상의 기술자에게 제시할 수 있는 것을 포함하지 않을 수 있다.The information described above is for illustrative purposes only, may include content that does not form part of the prior art, and may not include what the prior art can present to those skilled in the art.

복수의 용어들을 데이터 항목들로서 포함하는 데이터 사전에 대해 전처리를 수행하고, 자연어 처리 기법에 기반하여, 전처리된 데이터 사전으로부터 타겟 단어와 관련되는 적어도 하나의 용어를 결정하여 추천 용어로서 제공하는, 데이터 사전으로부터의 용어를 추천하는 방법이 제공될 수 있다. A data dictionary that performs pre-processing on a data dictionary that includes a plurality of terms as data items and determines at least one term related to a target word from a pre-processed data dictionary based on a natural language processing technique and provides it as a recommended term A method of recommending terms from can be provided.

복수의 데이터 사전들로 구성된 다중 데이터 사전에 대해, 통계적 방법 또는 머신러닝 기반의 방법을 사용하여, 타겟 단어에 대한 유사도가 상위인 복수의 용어들을 순위화하여 추천 용어들로서 출력하는 방법이 제공될 수 있다. For multiple data dictionaries composed of a plurality of data dictionaries, a method of ranking a plurality of terms with high similarity to a target word and outputting them as recommended terms using a statistical method or a machine learning based method may be provided. have.

일 측면에 있어서, 컴퓨터 시스템에 의해 수행되는, 데이터 사전으로부터의 용어를 추천하는 방법에 있어서, 복수의 용어들을 데이터 항목들로서 포함하는 적어도 하나의 데이터 사전에 대해 전처리를 수행하는 단계, 자연어 처리 기법에 기반하여, 타겟 단어에 대해, 상기 전처리된 데이터 사전으로부터 상기 타겟 단어와 관련되는 적어도 하나의 용어를 결정하는 단계 및 상기 타겟 단어에 대한 추천 용어로서, 상기 결정된 용어를 출력하는 단계를 포함하는, 용어를 추천하는 방법이 제공된다. In one aspect, a method for recommending a term from a data dictionary, performed by a computer system, comprising: preprocessing at least one data dictionary comprising a plurality of terms as data items, a natural language processing technique. Based on the target word, determining at least one term related to the target word from the pre-processed data dictionary and outputting the determined term as a recommended term for the target word How to recommend is provided.

데이터 사전은 복수의 데이터 사전들로 구성된 다중 데이터 사전이고, 상기 데이터 사전들이 데이터 항목들로서 포함하는 복수의 용어들의 각각은 약어이고, 상기 전처리를 수행하는 단계는, 상기 데이터 사전들의 각 데이터 사전에 대해, 소정의 언어에 해당하는 용어들을 추출하는 단계 및 상기 추출된 용어들 중 중복된 용어를 제거함으로써, 상기 추출된 용어들 중 중복된 용어가 제거된 전처리 용어들을 획득하는 단계를 포함하고, 상기 용어를 결정하는 단계는, 상기 복수의 용어들 중에서, 상기 타겟 단어에 대한 유사도가 상위인 용어들을 결정하고, 상기 출력하는 단계는, 상기 결정된 용어들을 순위화하여 출력할 수 있다. The data dictionary is a multiple data dictionary composed of a plurality of data dictionaries, each of a plurality of terms that the data dictionaries include as data items is an abbreviation, and the step of performing the preprocessing is for each data dictionary of the data dictionaries , Extracting terms corresponding to a predetermined language and removing duplicate terms among the extracted terms to obtain pre-processed terms in which the duplicate terms are removed from the extracted terms. In the determining, among the plurality of terms, the terms having a similarity with respect to the target word are determined, and the outputting step may rank and output the determined terms.

상기 자연어 처리 기법은 통계적 방법이고, 상기 용어를 결정하는 단계는, 상기 타겟 단어의 단어 벡터를 결정하는 단계, 상기 전처리 용어들의 각각의 단어 벡터와 상기 타겟 단어의 단어 벡터 간의 코사인 유사도를 계산하는 단계 및 상기 계산된 코사인 유사도가 상위인 적어도 2개의 용어들을 상기 유사도가 상위인 복수의 용어들로서 결정하는 단계를 포함할 수 있다.The natural language processing technique is a statistical method, and determining the term includes: determining a word vector of the target word, calculating cosine similarity between each word vector of the pre-processed terms and the word vector of the target word. And determining at least two terms having a higher cosine similarity as the plurality of terms having a higher similarity.

상기 자연어 처리 기법은 머신러닝 기반의 방법이고, 상기 용어를 결정하는 단계는, 상기 전처리 용어들 중에서, 상기 타겟 단어에 대한 유사도가 상위인 복수의 용어들을 결정하도록 훈련된 머신러닝 기반의 모델을 사용하여, 상기 타겟 단어에 대한 유사도가 상위인 복수의 용어들을 결정하고, 상기 머신러닝 기반의 모델은 손실(loss)이 수렴되도록, 학습 속도(learning rate), 에포크의 수(number of epochs), 은닉 레이어(hidden layers), 은닉 유닛(hidden units) 및 활성화 함수(activation functions) 중 적어도 하나의 하이퍼 파라미터가 조정되어 훈련될 수 있다. The natural language processing technique is a machine learning-based method, and the step of determining the term uses a machine learning-based model trained to determine a plurality of terms having high similarity to the target word among the pre-processed terms. Thus, a plurality of terms having high similarity to the target word are determined, and the machine learning-based model is configured such that the learning rate, the number of epochs, and the concealment are performed so that the loss converges. At least one hyper parameter among hidden layers, hidden units, and activation functions may be adjusted and trained.

상기 머신러닝 기반의 모델은 Word2Vec 기반의 모델일 수 있다. The machine learning based model may be a Word2Vec based model.

상기 용어를 결정하는 단계는, 상기 타겟 단어의 문맥을 결정하기 위해 사용되는 윈도우 크기(window size)는 5 이하로 설정되고, 상기 소정의 언어는 상기 타겟 단어와 동일한 언어일 수 있다. In determining the term, a window size used to determine the context of the target word is set to 5 or less, and the predetermined language may be the same language as the target word.

상기 용어를 추천하는 방법은, 상기 타겟 단어가 상기 복수의 용어들에 포함되어 있지 않은 경우, 상기 타겟 단어의 상기 데이터 사전에 대한 등록이 필요함을 나타내는 통지를 출력하는 단계를 더 포함할 수 있다. The method of recommending the term may further include outputting a notification indicating that registration of the target word to the data dictionary is necessary when the target word is not included in the plurality of terms.

상기 각 데이터 사전은 하나의 기업 또는 업종과 관련된 데이터에 기반하여 구축된 표준 사전이고, 상기 복수의 데이터 사전들에 대응하는 표준 사전들은, 상기 데이터 사전들과 연관된 기업들 또는 업종들과 관련된 데이터에 대한 데이터 저장소 시스템들을 관리하는 통합 데이터 저장소 관리 시스템에 의해, 통합 딕셔너리로서 구축되고, 상기 통합 딕셔너리는, 상기 복수의 용어들의 각각을, 상기 표준 사전들 중 어느 하나와만 연관되는 개별 표준 용어, 상기 표준 사전들 중 적어도 2개와 연관되되 전부와는 연관되지 않는 부문 표준 용어, 또는 상기 표준 사전들 모두와 연관되는 전사 표준 용어로 분류할 수 있다.Each data dictionary is a standard dictionary constructed based on data related to one company or industry, and standard dictionaries corresponding to the plurality of data dictionaries are associated with data related to companies or industries associated with the data dictionaries. Built by an integrated data storage management system that manages data storage systems for, as an integrated dictionary, the integrated dictionary, each of the plurality of terms, individual standard terms associated only with any one of the standard dictionaries, the It can be classified as a divisional standard term associated with at least two of the standard dictionaries, but not all, or a transcription standard term associated with all of the standard dictionaries.

상기 통합 딕셔너리를 통해 상기 타겟 단어로서 특정 용어가 조회될 때, 상기 특정 용어에 대한 유사도가 상위인 복수의 용어들과 함께, 상기 특정 용어가 상기 개별 용어, 상기 부문 용어 또는 상기 전사 용어에 해당하는지가 함께 조회될 수 있다. When a specific term is searched as the target word through the integrated dictionary, whether the specific term corresponds to the individual term, the division term, or the transcription term, along with a plurality of terms having similarity to the specific term end Can be queried together.

상기 머신러닝 기반의 모델은 강화 학습(Reinforcement Learning)에 기반하여 훈련된 모델이고, 상기 머신러닝 기반의 모델은 상기 타겟 단어에 대한 유사도가 상위인 복수의 용어들에 대한 결정에 기반하여 업데이트될 수 있다. The machine learning-based model is a trained model based on reinforcement learning, and the machine learning-based model can be updated based on a determination of a plurality of terms with high similarity to the target word. have.

실시예들을 통해서는, 단일한 데이터 사전 뿐만아니라, 복수의 데이터 사전들로 구성된 다중 데이터 사전에 대해서도, 타겟 단어에 대한 유사도가 상위인 복수의 용어들을 추천 받을 수 있고, 이를 통해, 다중 데이터 사전을 표준화할 수 있다. Through the embodiments, not only a single data dictionary, but also multiple data dictionaries composed of a plurality of data dictionaries may be recommended a plurality of terms having high similarity to a target word, through which multiple data dictionaries Can be standardized.

자연어 처리 기법을 사용하여, 타겟 단어에 대한 추천 용어들을 제공하도록 함으로써, 영어 단어의 약어를 포함하는 데이터 사전에 대해서도, 타겟 단어에 대한 유사 용어들을 효과적으로 결정할 수 있다.By using natural language processing techniques to provide recommended terms for the target word, similar terms for the target word can be effectively determined even for a data dictionary containing abbreviations of English words.

여러 데이터 사전들을 통합하는 통합 사전에 대한 활용성과, 통합 사전을 통한 데이터 관리의 편의성을 극대화할 수 있다. It is possible to maximize the usability of the integrated dictionary that integrates multiple data dictionaries and the convenience of data management through the integrated dictionary.

도 1은 일 실시예에 따른, 데이터 사전으로부터의 용어를 추천하는 방법을 나타낸다.
도 2는 일 실시예에 따른, 데이터 사전으로부터의 용어를 추천하는 컴퓨터 시스템의 내부 구성의 일례를 설명하기 위한 블록도이다.
도 3은 일 실시예에 따른, 데이터 사전으로부터의 용어를 추천하는 방법을 나타내는 흐름도이다.
도 4는 일 예에 따른, 자연어 처리 기법으로서 통계적 방법을 사용하여, 타겟 단어에 대한 추천 용어들을 결정하는 방법을 나타낸다.
도 5는 일 예에 따른, 타겟 단어에 대한 추천 용어들을 결정하기 위해 사용되는 윈도우의 크기를 나타낸다.
도 6은 일 예에 따른, 자연어 처리 기법으로서 머신러닝 기반의 방법을 사용하는 경우에 있어서, 하이퍼 파라미터 튜닝에 따른 손실(loss)의 변화를 나타낸다.
도 7은 일 예에 따른, 타겟 단어에 대한 추천 용어들의 제공의 결과를 나타낸다.
도 8은 일 예에 따른, 단일한 데이터 사전으로부터의 타겟 단어에 대한 추천 용어들의 제공의 결과를 나타낸다.
도 9는 일 예에 따른, 복수의 데이터 사전들을 포함하는 다중 데이터 사전으로부터의 타겟 단어에 대한 추천 용어들의 제공의 결과를 나타낸다.
도 10은 일 예에 따른, 통합 데이터 저장소 관리 시스템을 구축하고, 구축된 통합 데이터 저장소 관리 시스템을 통해 데이터를 조회하는 방법을 나타낸다.
도 11은 일 예에 따른, 구축된 통합 데이터 저장소 관리 시스템을 사용하여 각 업종에 대한 데이터를 통합 및 연결하는 방법을 나타낸다.
도 12는 일 예에 따른, 구축된 통합 데이터 저장소 관리 시스템에서 정의되는 용어/도메인/표준의 분류 체계를 나타낸다.
도 13 및 도 14는 일 예에 따른, 구축된 통합 데이터 저장소 관리 시스템을 사용하여 개별/부문/전사 표준을 관리하는 방법을 나타낸다.
도 15는 일 예에 따른, 구축된 통합 데이터 저장소 관리 시스템을 사용하여 구현되는 통합 딕셔너리를 나타낸다.
1 illustrates a method for recommending terms from a data dictionary, according to one embodiment.
2 is a block diagram illustrating an example of an internal configuration of a computer system that recommends terms from a data dictionary, according to one embodiment.
3 is a flow diagram illustrating a method for recommending terms from a data dictionary, according to one embodiment.
4 illustrates a method of determining recommended terms for a target word using a statistical method as a natural language processing technique according to an example.
5 illustrates a size of a window used to determine recommended terms for a target word, according to an example.
6 shows a change in loss according to hyperparameter tuning in the case of using a machine learning-based method as a natural language processing technique according to an example.
7 shows a result of providing recommended terms for a target word according to an example.
8 shows the result of providing recommended terms for a target word from a single data dictionary, according to an example.
9 shows the result of providing recommended terms for a target word from a multiple data dictionary that includes a plurality of data dictionaries, according to an example.
10 illustrates a method of constructing an integrated data storage management system and querying data through the integrated integrated data storage management system, according to an example.
11 illustrates a method of integrating and linking data for each industry using an integrated data storage management system constructed according to an example.
12 illustrates a classification system of terms/domains/standards defined in an integrated integrated data storage management system according to an example.
13 and 14 illustrate a method for managing individual/sector/enterprise standards using an integrated integrated data storage management system, according to an example.
15 illustrates an integrated dictionary implemented using an integrated integrated data storage management system, according to an example.

이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 일 실시예에 따른, 데이터 사전으로부터의 용어를 추천하는 방법을 나타낸다. 1 illustrates a method for recommending terms from a data dictionary, according to one embodiment.

도시된 것처럼, 실시예에서는, 자연어 처리 기법에 기반하여, 데이터 사전(10)(예컨대, 데이터 사전 1 내지 데이터 사전 N 중 적어도 하나)으로부터, 타겟 단어(예컨대, PRDT)에 대한 추천 용어들(100)(예컨대, PDNO, FNNC, PPUL, NMCO 및 FLCU)을 제공할 수 있다. 자연어 처리 기법은 예컨대, 통계적 기반의 방법(통계적 방법) 또는 머신러닝 기반의 방법일 수 있다. As shown, in an embodiment, based on the natural language processing technique, from the data dictionary 10 (eg, at least one of data dictionary 1 to data dictionary N), recommended terms 100 for a target word (eg, PRDT) ) (Eg, PDNO, FNNC, PPUL, NMCO and FLCU). The natural language processing technique may be, for example, a statistical-based method (statistical method) or a machine learning-based method.

통계적 기반의 방법은 통계적인 분석을 통해, 데이터 사전(10)으로부터 타겟 단어에 대한 추천 용어들(100)을 결정하는 기법일 수 있다.The statistical-based method may be a technique for determining recommended terms 100 for a target word from the data dictionary 10 through statistical analysis.

머신러닝 기반의 방법은, 딥러닝 모델과 같은, 머신러닝 모델을 통해 데이터 사전(10)으로부터 타겟 단어에 대한 추천 용어들(100)을 결정하는 기법일 수 있다. 머신러닝 모델은, 예컨대, 데이터 사전(10)의 데이터 항목들로부터, 소정의 타겟 단어와 관련되는(예컨대, 유사도가 높은) 추천 용어들(100)을 결정(추론)하도록 훈련된 딥러닝 모델일 수 있다. 데이터 사전(10)과 타겟 단어에 대해 이러한 머신러닝 모델이 적용됨으로써, 데이터 사전(10)과 관련된 용어들이 추천 용어들(50)로서 제공되어 출력될 수 있다. The machine learning based method may be a technique of determining recommended terms 100 for a target word from the data dictionary 10 through a machine learning model, such as a deep learning model. The machine learning model is a deep learning model trained to determine (infer) recommendation terms 100 related to (eg, highly similar to) a given target word, eg, from data items in the data dictionary 10 Can. By applying this machine learning model to the data dictionary 10 and target words, terms related to the data dictionary 10 may be provided and output as recommended terms 50.

여기서, 데이터 사전(10)은 특정한 업종이나, 기업(기관) 또는 기업의 계열사에서 사용하는 용어나 단어를 데이터 항목으로서 포함하는 것일 수 있다. 한편, 하나의 용어는 복수의 단어들로 구성될 수 있다. 데이터 사전(10)의 데이터 항목은 메타데이터일 수 있다. Here, the data dictionary 10 may include a term or word used in a specific industry, a company (institution), or an affiliate of a company as a data item. Meanwhile, one term may be composed of a plurality of words. The data item of the data dictionary 10 may be metadata.

데이터 사전(10)에 포함되는 용어 또는 단어는 표준화된 것(즉, 표준화되어 등록된 것)으로서 표준 용어 또는 표준 단어일 수 있다. 이 때, 데이터 사전(10)은 표준 사전(즉, 표준 용어 사전)에 해당할 수 있다. The terms or words included in the data dictionary 10 are standardized (ie, standardized and registered) and may be standard terms or standard words. At this time, the data dictionary 10 may correspond to a standard dictionary (that is, a standard term dictionary).

본 개시에서의 데이터 사전(10)은 비즈니스 (용어) 사전일 수 있고, 또는, 표준 용어 사전일 수 있다. 따라서, 데이터 사전(10)에 포함되는 용어는 비즈니스 용어 또는 표준 용어가 될 수 있다.The data dictionary 10 in the present disclosure may be a business (term) dictionary, or may be a standard term dictionary. Accordingly, terms included in the data dictionary 10 may be business terms or standard terms.

'표준화'란 코드, 용어, 데이터 도메인 등의 표준을 수립하여 공공 데이터베이스(DB)에 일관되게 적용하는 일련의 활동을 의미할 수 있고, 표준 용어(단어)는 데이터를 사용하는 사용자 간의 명확한 의사소통을 지원하기 위해 각 기관에서 업무적으로 사용하고 있는 단어 및 단어의 조합으로 구성되는 용어의 표준을 정의한 것을 나타낼 수 있다. 표준 용어 사전은 이러한 표준 용어와 공통 표준 용어의 집합을 나타낼 수 있다. 각각의 기업(기관)과 기업의 계열사는 개별적인 표준 용어 사전을 가지고 있을 수 있다. 'Standardization' can mean a series of activities that establish standards such as codes, terms, and data domains and apply them consistently to a public database (DB), and standard terms (words) clearly communicate between users who use data. It can refer to the definition of a term consisting of a word and a combination of words that are used by each institution in order to support. The standard term dictionary can refer to a set of these standard terms and common standard terms. Each company (institution) and its affiliates may have separate standard term dictionaries.

실시예에서는, 자연어 처리 기법을 사용하여, 단일한 데이터 사전(10)에 대해서 뿐만아니라 복수의 데이터 사전들로 구성된 다중 데이터 사전(10)으로부터도, 소정의 타겟 단어와 관련된 추천 용어들(100)을 제공 받을 수 있다. In an embodiment, using natural language processing techniques, recommendations 100 related to a given target word, not only for a single data dictionary 10, but also from multiple data dictionaries 10 composed of multiple data dictionaries Can be provided.

이와 같이, 자연어 처리 기법을 사용하여, 데이터 사전(들)(10)로부터 추천 용어들(100)을 제공 받는 방법에 대해서는, 후술될 도 2 내지 도 15를 참조하여 더 자세하게 설명된다. As described above, a method of receiving the recommended terms 100 from the data dictionary(s) 10 using the natural language processing technique will be described in more detail with reference to FIGS. 2 to 15 to be described later.

도 2는 일 실시예에 따른, 데이터 사전으로부터의 용어를 추천하는 컴퓨터 시스템의 내부 구성의 일례를 설명하기 위한 블록도이다.2 is a block diagram illustrating an example of an internal configuration of a computer system that recommends terms from a data dictionary, according to one embodiment.

도 2에서 도시한 바와 같이, 컴퓨터 시스템(200)은 데이터 사전(들)(10)로부터 타겟 단어에 대한 추천 용어들(100)을 제공하기 위한 방법을 실행하기 위한 구성요소로서 프로세서(210), 메모리(220), 영구 저장 장치(230), 버스(240), 입출력 인터페이스(250) 및 네트워크 인터페이스(260)를 포함할 수 있다. 컴퓨터 시스템(200)은 도시된 것과는 달리 복수의 컴퓨터 시스템들로 구성될 수도 있다. 컴퓨터 시스템(200)은, 예컨대, 데이터 사전(10)(또는 이와 관련된 데이터)을 관리 및 활용하는 기업 또는 단체나 그 계열사 혹은 본사에서 사용하는 서버 또는 기타 컴퓨터일 수 있다. As shown in FIG. 2, the computer system 200 is a processor 210 as a component for executing a method for providing recommended terms 100 for a target word from the data dictionary(s) 10, It may include a memory 220, a permanent storage device 230, a bus 240, an input/output interface 250 and a network interface 260. The computer system 200 may be composed of a plurality of computer systems, unlike the one shown. The computer system 200 may be, for example, a server or other computer used by an enterprise or organization that manages and utilizes the data dictionary 10 (or data related thereto), its affiliates, or the head office.

프로세서(210)는 데이터 사전(들)(10)로부터 타겟 단어에 대한 추천 용어들(100)을 제공하기 위한 방법을 구현하기 위한 명령어들의 시퀀스를 처리할 수 있는 임의의 장치를 포함하거나 그의 일부일 수 있다. 프로세서(210)는 예를 들어 컴퓨터 프로세서, 이동 장치 또는 다른 전자 장치 내의 프로세서 및/또는 디지털 프로세서를 포함할 수 있다. 프로세서(210)는 예를 들어, 서버 컴퓨팅 디바이스, 서버 컴퓨터, 일련의 서버 컴퓨터들, 서버 팜, 클라우드 컴퓨터, 컨텐츠 플랫폼 등에 포함될 수 있다. 프로세서(210)는 버스(240)를 통해 메모리(220)에 접속될 수 있다.Processor 210 may include or be part of any device capable of processing a sequence of instructions to implement a method for providing recommended terms 100 for a target word from data dictionary(s) 10. have. The processor 210 may include, for example, a computer processor, a processor in a mobile device or other electronic device, and/or a digital processor. The processor 210 may be included in, for example, a server computing device, a server computer, a series of server computers, a server farm, a cloud computer, a content platform, and the like. The processor 210 may be connected to the memory 220 through the bus 240.

메모리(220)는 컴퓨터 시스템(200)에 의해 사용되거나 그에 의해 출력되는 정보를 저장하기 위한 휘발성 메모리, 영구, 가상 또는 기타 메모리를 포함할 수 있다. 메모리(220)는 예를 들어 랜덤 액세스 메모리(RAM: random access memory) 및/또는 다이내믹 RAM(DRAM: dynamic RAM)을 포함할 수 있다. 메모리(220)는 컴퓨터 시스템(200)의 상태 정보와 같은 임의의 정보를 저장하는 데 사용될 수 있다. 메모리(220)는 예를 들어, 데이터 사전(들)(10)로부터 타겟 단어에 대한 추천 용어들(100)을 제공하기 위한 방법의 수행을 위한 명령어들을 포함하는 컴퓨터 시스템(200)의 명령어들을 저장하는 데에도 사용될 수 있다. 컴퓨터 시스템(200)은 필요에 따라 또는 적절한 경우에 하나 이상의 프로세서(210)를 포함할 수 있다.The memory 220 may include volatile memory, permanent, virtual, or other memory for storing information used or output by the computer system 200. The memory 220 may include, for example, random access memory (RAM) and/or dynamic RAM (DRAM). The memory 220 can be used to store arbitrary information, such as status information of the computer system 200. The memory 220 stores instructions of the computer system 200, including, for example, instructions for performing a method to provide recommended terms 100 for a target word from the data dictionary(s) 10. Can also be used to Computer system 200 may include one or more processors 210 as needed or appropriate.

버스(240)는 컴퓨터 시스템(200)의 다양한 컴포넌트들 사이의 상호작용을 가능하게 하는 통신 기반 구조를 포함할 수 있다. 버스(240)는 예를 들어, 컴퓨터 시스템(200)의 컴포넌트들 사이에서, 예를 들어, 프로세서(210)와 메모리(220) 사이에서 데이터를 운반할 수 있다. 버스(240)는 컴퓨터 시스템(200)의 컴포넌트들 간의 무선 및/또는 유선 통신 매체를 포함할 수 있으며, 병렬, 직렬 또는 다른 토폴로지 배열들을 포함할 수 있다.The bus 240 may include a communication infrastructure that enables interaction between various components of the computer system 200. The bus 240 may carry data between components of the computer system 200, for example, between the processor 210 and the memory 220. The bus 240 may include wireless and/or wired communication media between components of the computer system 200, and may include parallel, serial or other topology arrangements.

영구 저장 장치(230)는 (예를 들어, 메모리(220)에 비해) 소정의 연장된 기간 동안 데이터를 저장하기 위해 컴퓨터 시스템(200)에 의해 사용되는 바와 같은 메모리 또는 다른 영구 저장 장치와 같은 컴포넌트들을 포함할 수 있다. 영구 저장 장치(230)는 컴퓨터 시스템(200) 내의 프로세서(210)에 의해 사용되는 바와 같은 비휘발성 메인 메모리를 포함할 수 있다. 영구 저장 장치(230)는 예를 들어, 플래시 메모리, 하드 디스크, 광 디스크 또는 다른 컴퓨터 판독 가능 매체를 포함할 수 있다.Persistent storage 230 is a component, such as memory or other permanent storage, as used by computer system 200 to store data for a predetermined extended period (eg, compared to memory 220). It may include. The permanent storage device 230 may include non-volatile main memory as used by the processor 210 in the computer system 200. The permanent storage device 230 may include, for example, a flash memory, hard disk, optical disk, or other computer readable medium.

전술된 머신러닝 기반의 방법에 따른 추천 용어들(100)의 제공을 위해 사용되는 머신러닝 모델은 메모리(220) 또는 영구 저장 장치(230) 내에서 구현되어 있을 수 있다. 또는, 이러한 머신러닝 모델은 컴퓨터 시스템(200)의 외부에 존재하는 다른 컴퓨터 시스템 상에서 구현되어 있을 수 있다. The machine learning model used to provide the recommended terms 100 according to the aforementioned machine learning based method may be implemented in the memory 220 or the permanent storage device 230. Alternatively, such a machine learning model may be implemented on another computer system existing outside the computer system 200.

입출력 인터페이스(250)는 키보드, 마우스, 음성 명령 입력, 디스플레이 또는 다른 입력 또는 출력 장치에 대한 인터페이스들을 포함할 수 있다.The input/output interface 250 may include interfaces to a keyboard, mouse, voice command input, display, or other input or output device.

네트워크 인터페이스(260)는 근거리 네트워크 또는 인터넷과 같은 네트워크들에 대한 하나 이상의 인터페이스를 포함할 수 있다. 네트워크 인터페이스(260)는 유선 또는 무선 접속들에 대한 인터페이스들을 포함할 수 있다. The network interface 260 can include one or more interfaces to networks such as a local area network or the Internet. The network interface 260 can include interfaces for wired or wireless connections.

또한, 다른 실시예들에서의 컴퓨터 시스템(200)은 도 2의 구성요소들보다 더 많은 구성요소들을 포함할 수도 있다. 그러나, 대부분의 종래기술적 구성요소들을 명확하게 도시할 필요는 없다. 예를 들어, 컴퓨터 시스템(200)은 상술한 입출력 인터페이스(250)와 연결되는 입출력 장치들 중 적어도 일부를 포함하도록 구현되거나 또는 트랜시버(transceiver), GPS(Global Positioning System) 모듈, 카메라, 각종 센서, 데이터베이스 등과 같은 다른 구성요소들을 더 포함할 수도 있다.Also, the computer system 200 in other embodiments may include more components than those in FIG. 2. However, it is not necessary to clearly show most prior art components. For example, the computer system 200 is implemented to include at least some of the input/output devices connected to the input/output interface 250 described above, or a transceiver, a global positioning system (GPS) module, a camera, various sensors, Other components, such as a database, may also be included.

이러한 컴퓨터 시스템(200)을 통해 구현되는 실시예들을 통해, 단일한 데이터 사전(10) 또는 복수의 데이터 사전들을 포함하는 다중 데이터 사전(10)으로부터 타겟 단어에 대한 추천 용어들(100)이 제공될 수 있다.Through embodiments implemented through such a computer system 200, recommended terms 100 for a target word may be provided from a single data dictionary 10 or multiple data dictionaries 10 including a plurality of data dictionaries. Can.

이상 도 1을 참조하여 전술된 기술적 특징들에 대한 설명은 도 2에 대해서도 그대로 적용될 수 있는 바, 중복되는 설명은 생략한다.The description of the above-described technical features with reference to FIG. 1 can be applied to FIG. 2 as it is, and duplicate description is omitted.

후술될 상세한 설명에서, 컴퓨터 시스템(200)의 구성(예컨대, 프로세서(210))에 의해 수행되는 동작은 설명의 편의상 컴퓨터 시스템(200)에 의해 수행되는 동작으로 설명될 수 있다. In the detailed description to be described later, an operation performed by a configuration (eg, processor 210) of the computer system 200 may be described as an operation performed by the computer system 200 for convenience of description.

또한, 본 개시에서 "사전"이라는 용어는 "딕셔너리"와 혼용하여 사용될 수 있고, 특별히 구분하고 있지 않은 한 양자는 서로 대체되어 사용될 수도 있다. Further, in the present disclosure, the term "dictionary" may be used interchangeably with "dictionary", and unless otherwise specified, both may be used interchangeably.

도 3은 일 실시예에 따른, 데이터 사전으로부터의 용어를 추천하는 방법을 나타내는 흐름도이다. 3 is a flow diagram illustrating a method for recommending terms from a data dictionary, according to one embodiment.

단계(310)에서, 컴퓨터 시스템(200)은 복수의 용어들을 데이터 항목들로서 포함하는 적어도 하나의 데이터 사전(10)에 대해 전처리를 수행할 수 있다. 이러한 전처리의 작업은 데이터 사전(10)을 후술될 자연어 처리 기법(예컨대, 통계적 방법 또는 머신러닝 기반의 방법)에의 적용에 적합하도록 가공하는 것일 수 있다.In step 310, the computer system 200 may perform preprocessing on at least one data dictionary 10 that includes a plurality of terms as data items. This pre-processing operation may be to process the data dictionary 10 to be suitable for application to natural language processing techniques (eg, statistical methods or machine learning-based methods) to be described later.

데이터 사전(10)은 특정한 업종이나, 기업(기관) 또는 기업의 계열사에서 사용하는 용어나 단어를 데이터 항목으로서 포함하는 것일 수 있다. 데이터 사전(10)의 데이터 항목은 메타데이터일 수 있다. 데이터 사전(10)에 포함되는 용어 또는 단어는 표준화된 것(즉, 표준화되어 등록된 것)으로서 표준 용어 또는 표준 단어일 수 있다. 이 때, 데이터 사전(10)은 표준 사전(즉, 표준 용어 사전)에 해당할 수 있다. The data dictionary 10 may include a term or word used in a specific industry, company (institution), or affiliate of the company as a data item. The data item of the data dictionary 10 may be metadata. The terms or words included in the data dictionary 10 are standardized (ie, standardized and registered) and may be standard terms or standard words. At this time, the data dictionary 10 may correspond to a standard dictionary (that is, a standard term dictionary).

데이터 사전(10)은 복수의 데이터 사전들로 구성된 다중 데이터 사전(10)일 수 있다. The data dictionary 10 may be a multiple data dictionary 10 composed of a plurality of data dictionaries.

또한, 각 데이터 사전(10)이 데이터 항목들로서 포함하는 복수의 용어들의 각각은 약어일 수 있다. 상기 약어는 예컨대, 영문 용어를 축약한 약어일 수 있다. 일례로, "코드"라는 단어(용어)는 CD, CDE, CE 또는 CODE의 약어로 표현될 수 있다. 추천 용어들(100)을 결정하는 대상이 되는 타겟 단어 역시 이러한 약어일 수 있다. 제공되는 추천 용어들(100)의 각각 역시 이러한 약어일 수 있다. Also, each of the plurality of terms included in each data dictionary 10 as data items may be an abbreviation. The abbreviation may be, for example, an abbreviation for English terms. In one example, the word "code" (term) can be expressed as an abbreviation for CD, CDE, CE, or CODE. The target word for determining the recommended terms 100 may also be an abbreviation. Each of the provided recommended terms 100 may also be such an abbreviation.

데이터 사전(10)은 복수의 데이터 사전들로 구성된 다중 데이터 사전(10)인 경우에 있어서, 단계(310)의 전처리 단계에서는, 컴퓨터 시스템(200)은 각 데이터 사전(10)에 대해 소정의 언어에 해당하는 용어들을 추출할 수 있다(단계(312)). 이 때, 소정의 언어는 한국어 또는 영어일 수 있다. 혹은, 소정의 언어는 기타의 언어일 수 있다. 이러한 소정의 언어는 타겟 단어와 동일한 언어일 수 있다. In the case where the data dictionary 10 is a multi-data dictionary 10 composed of a plurality of data dictionaries, in the pre-processing step of step 310, the computer system 200 determines a predetermined language for each data dictionary 10. Terms corresponding to can be extracted (step 312). At this time, the predetermined language may be Korean or English. Alternatively, the predetermined language may be other languages. The predetermined language may be the same language as the target word.

단계(312)에서, 용어가 한글인 경우, 띄어쓰기나 "_(underscore)"를 통해 구분된 단어들 각각이 용어로서 추출될 수 있다, 붙여서 쓰여진 용어에 대해서는, 형태소 분석에 기반하여 용어들의 각각이 추출될 수 있다. 용어가 영어인 경우나 영문 약어인 경우, 띄어쓰기나 "_"를 통해 구분된 단어들 각각이 용어로서 추출될 수 있다.In step 312, when the term is Hangul, each of the words separated through a space or "_(underscore)" may be extracted as a term. For the pasted term, each of the terms is based on a morpheme analysis. Can be extracted. When the term is English or an English abbreviation, each of the words separated by a space or "_" may be extracted as a term.

단계(314)에서, 컴퓨터 시스템(200)은 단계(312)에서 각 데이터 사전(10)으로부터 추출된 용어들 중 중복된 용어를 제거할 수 있다. 이러한 제거에 따라, 컴퓨터 시스템(200)은 추출된 용어들 중 중복된 용어가 제거된 전처리 용어들을 획득할 수 있다. 예컨대, 컴퓨터 시스템(200)은 데이터 사전들 중에서 중복되는 용어들(즉, 중복되는 약어들)을 제거할 수 있다. 컴퓨터 시스템(200)은 데이터 사전들로부터 추출된 용어들 중 약어가 동일하며 약어에 대응하는 원래의 용어가 동일한 것들을 제거할 수 있다. 컴퓨터 시스템(200)은 데이터 사전들로부터 추출된 용어들 중 약어나 약어에 대응하는 원래의 용어 중 어느 하나만이 동일한 것은 제거하지 않을 수 있다.In step 314, the computer system 200 may remove duplicate terms from the terms extracted from each data dictionary 10 in step 312. According to the removal, the computer system 200 may obtain pre-processed terms in which duplicate terms are removed among the extracted terms. For example, the computer system 200 may remove redundant terms (ie, redundant abbreviations) from among data dictionaries. The computer system 200 may remove the same abbreviations from the terms extracted from the data dictionaries and the original terms corresponding to the abbreviations. The computer system 200 may not remove any of the terms extracted from the data dictionaries, and only one of the original terms corresponding to the abbreviation or the abbreviation is the same.

단계(314)에 의해 단계(314)에서 추출된 용어들 중 중복이 발생하는 것을 방지할 수 있다. Duplication of the terms extracted in step 314 by step 314 may be prevented.

단계(320)에서, 컴퓨터 시스템(200)은 자연어 처리 기법에 기반하여, 타겟 단어에 대해, 단계(310)에 따라 전처리된 데이터 사전(10)으로부터 타겟 단어와 관련되는 적어도 하나의 용어를 결정할 수 있다. 타겟 단어는 사용자로부터 입력되거나 선택될 수 있다. 컴퓨터 시스템(200)은 데이터 사전(10)이 포함하는 복수의 용어들 중에서, 타겟 단어에 대한 유사도가 상위인 복수의 용어들을 결정할 수 있다. In step 320, the computer system 200 may determine, for the target word, at least one term associated with the target word from the pre-processed data dictionary 10 according to step 310, based on the natural language processing technique. have. The target word can be input or selected from the user. The computer system 200 may determine a plurality of terms having a similarity to a target word among a plurality of terms included in the data dictionary 10.

컴퓨터 시스템(200)은, 데이터 사전(10)이 복수의 데이터 사전들로 구성된 다중 데이터 사전(10)인 경우, 이러한 다중 데이터 사전(10)에 포함된 복수의 용어들(즉, 복수의 데이터 사전들에 포함된 복수의 용어들) 중에서 타겟 단어에 대한 유사도가 상위인 복수의 용어들을 결정할 수 있다.When the data dictionary 10 is a multiple data dictionary 10 composed of a plurality of data dictionaries, the computer system 200 includes a plurality of terms (ie, multiple data dictionaries) included in the multiple data dictionary 10. Among the plurality of terms included in the field) may determine a plurality of terms with similarity to the target word.

결정된 복수의 용어들은 전술된 추천 용어들(100)에 대응할 수 있다.The determined plurality of terms may correspond to the recommended terms 100 described above.

단계(330)에서, 컴퓨터 시스템(200)은 타겟 단어에 대한 추천 용어(들)(100)로서, 결정된 용어를 출력할 수 있다. In step 330, the computer system 200 may output the determined term as the recommended term(s) 100 for the target word.

예컨대, 컴퓨터 시스템(200)은 타겟 단어에 대한 유사도가 상위인 것으로 결정된 복수의 용어들을 순위화하여 출력될 수 있다. 출력되는 용어들은 전술된 추천 용어들(100)에 대응할 수 있다. 컴퓨터 시스템(200)의 화면에는 타겟 단어와 유사도가 가장 높은 추천 용어가 가장 상위에 노출될 수 있다. 또한, 컴퓨터 시스템(200)의 화면에는 각 추천 용어가 해당 추천 용어의 타겟 단어와의 유사도와 함께 노출될 수 있다. 이에 따라, 사용자는 타겟 단어와 가정 관련성이 높은 추천 용어를 식별할 수 있고, 각 추천 용어가 타겟 단어와 관련된 정도(유사도)를 확인할 수 있다.For example, the computer system 200 may rank and output a plurality of terms determined as having similarity to the target word. The outputted terms may correspond to the recommended terms 100 described above. On the screen of the computer system 200, the recommended term with the highest similarity to the target word may be exposed at the top. In addition, each recommended term may be exposed on the screen of the computer system 200 along with the similarity with the target word of the recommended term. Accordingly, the user can identify the recommended term having a high relevance to the target word and assumptions, and check the degree (similarity) of each recommended term related to the target word.

전술된 타겟 단어는 데이터 사전(10)이 포함하는 복수의 용어(단어)들에 포함되어 있는 것일 수 있다. 컴퓨터 시스템(200)은 타겟 단어가 데이터 사전(10)이 포함하는 복수의 용어들에 포함되어 있지 않은 경우, 해당 타겟 단어의 데이터 사전(10)에 대한 등록이 필요함을 나타내는 통지를 출력할 수 있다. 이에 따라, 사용자는 데이터 사전(10)에 타겟 단어를 먼저 등록할 수 있다. The target word described above may be included in a plurality of terms (words) included in the data dictionary 10. When the target word is not included in a plurality of terms included in the data dictionary 10, the computer system 200 may output a notification indicating that registration of the target word with the data dictionary 10 is required. . Accordingly, the user can first register the target word in the data dictionary 10.

말하자면, 타겟 단어에 대해 추천 용어들(100)을 결정하기 위해서는, 타겟 단어와 관련하여 표준화 작업이 선행되어야 할 수 있다. 타겟 단어가 데이터 사전(10)에 등록되어 있지 않은 경우에는 이와 유사한 용어를 검색할 수 없게될 수 있다. 타겟 단어의 등록이 완료된 후에는 이와 유사한 용어를 검색할 수 있다. In other words, in order to determine recommended terms 100 for a target word, a standardization operation may need to be performed in relation to the target word. If the target word is not registered in the data dictionary 10, similar terms may not be searched. After registration of the target word is completed, a similar term can be searched.

한편, 자연어 처리 기법을 사용하여, 타겟 단어와 관련되는 추천 용어들(100)을 결정하는 방법에 대해서는 후술될 도 4를 참조하여 더 자세하게 설명한다. Meanwhile, a method of determining the recommended terms 100 related to the target word using the natural language processing technique will be described in more detail with reference to FIG. 4 to be described later.

이상 도 1 및 도 2를 참조하여 전술된 기술적 특징들에 대한 설명은 도 3에 대해서도 그대로 적용될 수 있는 바, 중복되는 설명은 생략한다.The description of the technical features described above with reference to FIGS. 1 and 2 can be applied to FIG. 3 as it is, and a duplicate description is omitted.

도 4는 일 예에 따른, 자연어 처리 기법으로서 통계적 방법을 사용하여, 타겟 단어에 대한 추천 용어들을 결정하는 방법을 나타낸다. 4 illustrates a method of determining recommended terms for a target word using a statistical method as a natural language processing technique according to an example.

단계(410)에서, 컴퓨터 시스템(200)은, 타겟 단어의 단어 벡터를 결정할 수 있다. 전술된 것처럼, 타겟 단어는 데이터 사전(10)이 포함하는 복수의 용어(단어)들에 포함되어 있는 것일 수 있다. 컴퓨터 시스템(200)은 타겟 단어를 파싱하여 거기에 대응하는 단어 벡터를 결정할 수 있다. In step 410, the computer system 200 may determine a word vector of the target word. As described above, the target word may be included in a plurality of terms (words) included in the data dictionary 10. The computer system 200 may parse the target word and determine a word vector corresponding thereto.

단계(420)에서, 컴퓨터 시스템(200)은 (단계(314)에 따라 중복되는 용어가 제거된) 전처리 용어들의 각각의 단어 벡터와 타겟 단어의 단어 벡터 간의 코사인 유사도를 계산할 수 있다. 컴퓨터 시스템(200)은 전처리 용어들의 각각을 파싱하여 거기에 대응하는 단어 벡터를 결정할 수 있고, 이러한 전처리 용어의 단어 벡터와 를 타겟 단어의 단위 벡터 간의 코사인 유사도를 계산할 수 있다. In step 420, the computer system 200 may calculate the cosine similarity between each word vector of the pre-processed terms (with the redundant terms removed according to step 314) and the word vector of the target word. The computer system 200 may parse each of the preprocessing terms to determine a word vector corresponding thereto, and calculate cosine similarity between the word vector of the preprocessing term and the unit vector of the target word.

단계(430)에서, 컴퓨터 시스템(200)은 계산된 코사인 유사도가 상위인 적어도 2개의 용어들을 타겟 단어에 대해 유사도가 상위인 복수의 용어들로서 결정할 수 있다. 결정된 용어들은 전술된 추천 용어들(100)에 대응할 수 있다. In operation 430, the computer system 200 may determine at least two terms having a higher cosine similarity as the plurality of terms having a higher similarity with respect to the target word. The determined terms may correspond to the recommended terms 100 described above.

다른 예시로서, 컴퓨터 시스템(200)은 전처리 용어들의 각각의 단어 벡터와 타겟 단어의 단어 벡터 간의 유클리드 거리를 계산할 수 있고, 계산된 유클리드 거리에 기반하여 타겟 단어에 대해 유사도가 상위인 복수의 용어들로서 결정할 수도 있다. As another example, the computer system 200 may calculate the Euclidean distance between each word vector of the preprocessing terms and the word vector of the target word, and based on the calculated Euclidean distance, as a plurality of terms having higher similarity to the target word You can also decide.

벡터 간의 코사인 유사도를 계산하는 방법은 아래의 수학식 1과 같이 표현될 수 있다. x 및 y는 각각의 단어 벡터를 나타낼 수 있다. A method of calculating the cosine similarity between vectors may be expressed as Equation 1 below. x and y may represent each word vector.

[수학식 1][Equation 1]

Figure 112020030725957-pat00001
Figure 112020030725957-pat00001

전술된 단계들(410 내지 430)에 따라, 통계적 방법을 사용하여, 단일한 데이터 사전(10) 또는 복수의 데이터 사전들을 포함하는 다중 데이터 사전(10)으로부터 타겟 단어와 유사한 복수의 추천 용어들(100)이 결정되어 제공될 수 있다. According to the above-described steps 410 to 430, using a statistical method, a plurality of suggested terms similar to a target word from a single data dictionary 10 or multiple data dictionaries 10 including a plurality of data dictionaries ( 100) can be determined and provided.

전술된 통계적 방법은 경우 "단어의 의미가 주변 단어에 의해 형성된다"는 분포가설(distributional hypothesis)에 기반하는 것일 수 있다. 예컨대, 타겟 단어의 주변에 어떤 단어가 몇 번이나 등장하는지를 계산함으로써 동시발생 행렬(co-occurrence matrix)이 구성될 수 있고, 이러한 동시발생 행렬의 각 행으로부터 단어의 벡터가 구성될 수 있다. 타겟 단어의 주변의 사이즈는 후술될 윈도우 크기에 의해 제한될 수 있다. 이에 따라 타겟 단어와 연관된 단어 벡터(들) 및 타겟 단어의 의미가 파악될 수 있다. The statistical method described above may be based on a distributional hypothesis that "the meaning of a word is formed by surrounding words." For example, a co-occurrence matrix may be constructed by calculating how many times a word appears around the target word, and a vector of words may be constructed from each row of the co-occurrence matrix. The size of the surroundings of the target word may be limited by the window size to be described later. Accordingly, the word vector(s) associated with the target word and the meaning of the target word can be grasped.

아래에서는, 자연어 처리 기법으로서 머신러닝 기반의 방법을 사용하여, 타겟 단어에 대한 추천 용어들을 결정하는 방법을 나타낸다. The following shows a method of determining recommended terms for a target word using a machine learning-based method as a natural language processing technique.

컴퓨터 시스템(200)은 단계(314)에 따라 중복되는 용어가 제거된) 전처리 용어들 중에서, 타겟 단어에 대한 유사도가 상위인 복수의 용어들을 결정하도록 훈련된 머신러닝 기반의 모델을 사용하여, 타겟 단어에 대한 유사도가 상위인 복수의 용어들을 결정할 수 있다. The computer system 200 uses a machine learning-based model trained to determine a plurality of terms with high similarity to a target word among pre-processed terms, in which duplicate terms are removed according to step 314). It is possible to determine a plurality of terms with similarity to words.

머신러닝 기반의 모델은, 딥러닝 모델로서, 예컨대, CNN 기반의 모델, RNN 기반의 모델 또는 강화 학습(Reinforcement Learning) 기반의 모델일 수 있다. The machine learning based model may be a deep learning model, for example, a CNN based model, an RNN based model, or a reinforcement learning based model.

CNN 기반의 모델은, 합성곱 신경망(Convolutional Neural Network, CNN)을 사용하는 것으로서, 최소한의 전처리(preprocess)를 사용하도록 설계된 다계층 퍼셉트론(multilayer perceptrons)의 일종일 수 있다. CNN 기반의 모델은 하나 또는 복수의 합성곱 계층과 그 위에 올려진 일반적인 인공 신경망 계층들로 이루어질 수 있고, 가중치와 통합 계층(pooling layer)들을 추가로 더 활용할 수 있다. The CNN-based model, which uses a convolutional neural network (CNN), may be a kind of multilayer perceptrons designed to use minimal preprocessing. The CNN-based model may consist of one or more convolutional layers and general artificial neural network layers on top of it, and further utilize weights and pooling layers.

RNN 기반의 모델은, 순환 신경망을 이용하는 것으로서, 인공 신경망을 구성하는 유닛 사이의 연결이 directed cycle을 구성하는 신경망을 사용하는 모델일 수 있다. RNN 기반의 모델은 임의의 입력을 처리하기 위해 신경망 내부의 메모리를 활용할 수 있다.The RNN-based model uses a cyclic neural network, and a connection between units constituting an artificial neural network may be a model using a neural network constituting a directed cycle. The RNN-based model can utilize memory inside the neural network to process arbitrary input.

강화 학습 기반의 모델은, 에이전트(agent)가 환경(environment)로부터 액션(action)을 취하며, 이에 따라 에이전트에 보상(reward)과 State(상태)가 주어지게 되고, 보상이 가장 크게 되도록 에이전트를 훈련시키는 모델일 수 있다. 강화 학습 기반의 모델은, 에이전트가 사전 지식을 가지고 있는지 여부에 따라, 모델 베이스(model-based) 알고리즘을 사용하는 모델 또는 모델 프리(model-free) 알고리즘을 사용하는 모델로 구분될 수 있다.In the reinforcement learning-based model, the agent takes an action from the environment, and accordingly, the agent is given a reward and a state, and the agent is set to have the greatest reward. It can be a training model. Models based on reinforcement learning may be classified into models using a model-based algorithm or models using a model-free algorithm, depending on whether the agent has prior knowledge.

일례로, 실시예에서는, 머신러닝 기반의 모델로서 강화 학습 기반의 모델(즉, 강화 학습에 기반하여 훈련된 모델)이 사용될 수 있다. 강화 학습 기반의 모델은 사용자(즉, 관리자)의 개입 없이 학습에 따라 지속적으로(또는 주기적으로) 업데이트될 수 있다.For example, in an embodiment, a model based on reinforcement learning (ie, a model trained based on reinforcement learning) may be used as a model based on machine learning. The model based on reinforcement learning may be continuously (or periodically) updated according to learning without user (ie, administrator) intervention.

이에 따라, 컴퓨터 시스템(200)은 머신러닝 기반의 모델의 적용에 의한 추천 용어들(100)의 결정 후, 해당 결과에 기반하여, 머신러닝 기반의 모델을 업데이트할 수 있다. 예컨대, 컴퓨터 시스템(200)은 타겟 단어에 대해 결정된 추천 용어들(100)을 학습함으로써 업데이트될 수 있고, 추후의 추천 용어들(100)의 추론의 정확도를 보다 높이기 위해 업데이트될 수 있다. 말하자면, 머신러닝 기반의 모델은 타겟 단어에 대한 유사도가 상위인 복수의 용어들(즉, 추천 용어들(100))에 대한 결정에 기반하여 업데이트될 수 있다. Accordingly, the computer system 200 may update the machine learning based model based on the result after determining the recommended terms 100 by applying the machine learning based model. For example, the computer system 200 may be updated by learning the recommended terms 100 determined for the target word, and may be updated to further increase the accuracy of the reasoning of the later recommended terms 100. In other words, the model based on machine learning may be updated based on a determination of a plurality of terms (ie, recommended terms 100) having similarity to a target word.

실시예의 추천 용어들(100)의 결정(추론)을 위해 사용되는 머신러닝 기반의 모델은 손실(loss)이 수렴되도록, 학습 속도(learning rate), 배치의 크기, 에포크의 수(number of epochs), 은닉 레이어(hidden layers), 은닉 유닛(hidden units) 및 활성화 함수(activation functions) 중 적어도 하나의 하이퍼 파라미터가 조정되어 훈련/학습될 수 있다. 따라서, 머신러닝 기반의 모델은 하이퍼 파라미터가 조정되어 훈련된 후, 데이터 사전(10)으로부터 타겟 단어에 대한 추천 용어들을 결정할 수 있다.The machine learning based model used for the determination (inference) of the recommended terms 100 of the embodiment is such that the learning rate, the size of the batch, the number of epochs, so that the loss converges , Hyper layers of at least one of hidden layers, hidden units, and activation functions may be adjusted to train/learn. Accordingly, the machine learning based model may determine recommended terms for the target word from the data dictionary 10 after the hyper parameters are adjusted and trained.

하이퍼 파라미터를 어떻게 조정하는지에 따라 추론의 결과가 달라질 수 있다. 이러한 하이퍼 파라미터의 조정은 시험 또는 경험적인 방법을 통해 이루어질 수 있다. 예컨대, 학습 속도를 너무 크게 할 경우에는, 과적화(overfitting)가 너무 빨리 일어나게 되며, 결과가 local minimum에 걸쳐지게 될 수 있고, 학습 속도가 너무 작게 되는 경우 역시 바람직하지 않을 수 있다. 에포크의 수는 훈련용 데이터 셋을 몇 번 반복할 것인지를 나타내는 것일 수 있고, 예컨대, 50-300으로 설정될 수 있다. Depending on how you adjust the hyperparameters, the results of the inference can vary. Adjustment of these hyperparameters can be done through test or empirical methods. For example, if the learning rate is too large, overfitting occurs too quickly, and the result may span the local minimum, and it may also be undesirable when the learning rate is too small. The number of epochs may indicate how many times to repeat the training data set, and may be set to 50-300, for example.

관련하여, 도 6은 일 예에 따른, 자연어 처리 기법으로서 머신러닝 기반의 방법을 사용하는 경우에 있어서, 하이퍼 파라미터 튜닝에 따른 손실(loss)의 변화를 나타낸다. In relation to this, FIG. 6 shows a change in loss due to hyperparameter tuning in the case of using a machine learning-based method as a natural language processing technique according to an example.

도 6의 (a)는 하이퍼 파라미터를 튜닝하지 않은 상태에서의 손실을 나타내고, 도 6의 (b)는 하이퍼 파라미터를 튜닝한 후의 상태에서의 손실을 나타낼 수 있다. 도 6의 (a)에서는 손실이 수렴하지 않음을 확인할 수 있다. 도 6에서의 손실은 cross entropy error를 나타낼 수 있고, iteration은 에포크(epoch)를 배치의 크기(batchsize)로 나눈 것일 수 있다. 실시예에서는, 도 6의 (b)와 같은 결과를 얻기 위해, 하이퍼 파라미터로서, 배치의 크기 및 은닉 레이어의 크기가 조절될 수 있다.FIG. 6(a) shows the loss in a state in which the hyper parameters are not tuned, and FIG. 6(b) may represent the loss in a state after tuning the hyper parameters. It can be seen from FIG. 6(a) that the loss does not converge. The loss in FIG. 6 may indicate a cross entropy error, and iteration may be an epoch divided by a batch size. In an embodiment, as a hyper parameter, the size of the batch and the size of the concealment layer may be adjusted to obtain a result as shown in FIG. 6B.

하이퍼 파라미터는 전술한 것처럼 학습 속도(learning rate), 에포크의 수(number of epochs), 은닉 레이어(hidden layers), 은닉 유닛(hidden units) 및 활성화 함수(activation functions) 중 적어도 하나를 포함할 수 있다. 이들 하이퍼 파라미터가 조정됨으로써 손실이 결정될 수 있다. 손실에 따라 모델의 훈련/학습 및 추론의 결과가 상이하게 될 수 있다. 하이퍼 파라미터의 튜닝은 경험적이거나 실험적인 방법에 의해 수행될 수 있다. 하이퍼 파라미터의 튜닝은 손실을 로컬 미니멈(local minimum)이 아닌 앱솔루트(absolute minimum)에 도달하도록 조정될 수 있다.Hyperparameters may include at least one of a learning rate, number of epochs, hidden layers, hidden units, and activation functions, as described above. . Loss can be determined by adjusting these hyper parameters. Depending on the loss, the results of training/learning and reasoning of the model may be different. Tuning of the hyperparameters can be performed by empirical or experimental methods. The tuning of the hyperparameters can be adjusted so that the loss reaches the absolute minimum rather than the local minimum.

머신러닝 기반의 모델은, 예컨대, Word2Vec 기반의 모델일 수 있다. 일례로, 머신러닝 기반의 모델은 Word2Vec 기반의 모델로서 CBOW 모델일 수 있다.The machine learning based model may be, for example, a Word2Vec based model. As an example, the machine learning based model may be a CBOW model as a Word2Vec based model.

전술한 것과 같은 머신러닝 기반의 방법을 사용하여, 단일한 데이터 사전(10) 또는 복수의 데이터 사전들을 포함하는 다중 데이터 사전(10)으로부터 타겟 단어와 유사한 복수의 추천 용어들(100)이 결정되어 제공될 수 있다. Using a machine learning based method as described above, a plurality of recommended terms 100 similar to a target word are determined from a single data dictionary 10 or multiple data dictionaries 10 including a plurality of data dictionaries Can be provided.

이상 도 1 내지 도 3을 참조하여 전술된 기술적 특징들에 대한 설명은 도 4 및 도 6에 대해서도 그대로 적용될 수 있는 바, 중복되는 설명은 생략한다.The description of the technical features described above with reference to FIGS. 1 to 3 may be applied to FIGS. 4 and 6 as it is, and a duplicate description is omitted.

도 5는 일 예에 따른, 타겟 단어에 대한 추천 용어들을 결정하기 위해 사용되는 윈도우의 크기를 나타낸다.5 illustrates a size of a window used to determine recommended terms for a target word, according to an example.

실시예에서, 타겟 단어의 문맥을 결정하기 위해 사용되는 윈도우 크기(window size)는 5 이하로 설정될 수 있고, 또는, 이러한 윈도우 크기는 1로서 설정될 수 있다.In an embodiment, the window size used to determine the context of the target word can be set to 5 or less, or this window size can be set to 1.

도 5에서는 윈도우 크기가 1인 경우가 예시되었다. 도시된 것처럼, 실시예에서는, 타겟 단어의 문맥을 결정하기 위해서는 타겟 단어에 인접한 단어들만이 사용될 수 있다. 컴퓨터 시스템(20)은 사용자의 설정에 따라 윈도우의 크기를 변경할 수 있다. In FIG. 5, the case where the window size is 1 is illustrated. As shown, in an embodiment, only words adjacent to the target word may be used to determine the context of the target word. The computer system 20 may change the size of the window according to the user's setting.

이와 같이, 타겟 단어의 결정된 문맥(타겟 단어와 인접한 단어들이 나타내는 문맥)을 고려하여, 자연어 처리 기법을 사용하여, 타겟 단어와 유사한 용어들이 추천 용어들(100)로서 결정될 수 있다.As such, in consideration of the determined context (the context represented by words adjacent to the target word) of the target word, terms similar to the target word may be determined as recommended terms 100 using a natural language processing technique.

윈도우 크기는 사용자의 니즈에 따라 다양하게 설정될 수 있다. 윈도우 크기가 커지게 되면, 타겟 단어의 주변의 의미를 더 많이 포함하게 될 수 있으나, 주변 단어가 너무 많이 포함되게 되므로 단어 간의 context의 차별성이 덜 나타나게 될 수 있다. 따라서, 타겟 단어의 정확한 의미의 파악이 곤란하게 될 수 있다. 한편, 윈도우 크기가 너무 작게 되면 타겟 단어가 너무 지엽적인 의미만을 내포하는 것으로 판정될 수 있으므로, 해당 타겟 단어의 실질적인 의미가 파악되지 않고 지엽적인 의미만이 파악되게 될 수 있다. The window size can be variously set according to the needs of the user. When the window size is increased, it may include more meaning around the target word, but because the surrounding words are included too much, the difference in context between words may be less. Therefore, it may be difficult to grasp the exact meaning of the target word. On the other hand, if the window size is too small, it can be determined that the target word contains only the meanings that are too local, so that the actual meanings of the target words are not grasped, but only the local meanings can be grasped.

실시예에서는, 윈도우 크기가 1 또는 5로 설정되었으나, 이는 필요에 따라 다양하게 설정될 수 있다.In the embodiment, the window size is set to 1 or 5, but it can be set variously as needed.

이상 도 1 내지 도 4 및 도 6을 참조하여 전술된 기술적 특징들에 대한 설명은 도 5에 대해서도 그대로 적용될 수 있는 바, 중복되는 설명은 생략한다.The description of the technical features described above with reference to FIGS. 1 to 4 and 6 may be applied to FIG. 5 as it is, and a duplicate description is omitted.

아래에서는, 전술된 자연어 처리 기법(머신러닝 기반의 방법 또는 통계적 방법)을 사용하여 데이터 사전(10)으로부터 추천 용어(100)를 결정하여 제공하는 방법에 대해 보다 자세하게 설명한다. Hereinafter, a method of determining and providing the recommended term 100 from the data dictionary 10 using the above-described natural language processing technique (machine learning-based method or statistical method) will be described in more detail.

전술한 것처럼, 기관 및 기업들은 각 업종의 데이터 관리를 개선하기 위한 비즈니스/데이터 사전을 사용하고 있고, 이를 관리하기 위해 상당한 자원을 소비하고 있다. 한편, 데이터 사전이 구현된 데이터베이스는 각 열에서 제한된 바이트를 가지므로 데이터베이스에 저장될 때 (영어) 용어는 약칭될 수 있다. 이러한 용어는 기업이나 기관에 따라 다르게 약칭될 수 있고, 기업 내의 업종이나 계열사에 따라서도 다르게 약칭될 수 있다.As mentioned above, institutions and companies are using business/data dictionaries to improve data management in each industry, and are consuming significant resources to manage them. Meanwhile, the database in which the data dictionary is implemented has a limited number of bytes in each column, so when stored in the database, the term (English) can be abbreviated. These terms may be abbreviated differently depending on the company or institution, and may be abbreviated differently depending on the industry or affiliate within the company.

따라서, 이와 같은 데이터를 유지하고 표준화하기 위해서는 상당한 자원이 소요된다. 또한, 기업들/기관들 간에 데이터/비즈니스 사전이 결합되는 경우에는 통합 사전이 재설계될 필요가 있다. Therefore, it takes considerable resources to maintain and standardize such data. In addition, when data/business dictionaries are combined between companies/institutions, the integrated dictionaries need to be redesigned.

실시예를 통해서는, 기업들/기관들이 데이터를 표준화함에 있어서 소요하는 비용을 줄이고, 데이터 관리의 효율성을 높일 수 있다. 또한, 실시예에서는, 자연어 처리 기법을 적용함으로써, 용어의 약어를 포함하는 비즈니스/데이터 사전의 활용성을 높일 수 있다. Through embodiments, it is possible to reduce the cost of companies/organizations in standardizing data and increase the efficiency of data management. In addition, in an embodiment, by applying a natural language processing technique, it is possible to increase the usability of a business/data dictionary including abbreviations of terms.

[표준화된 데이터 사전][Standardized Data Dictionary]

표준 용어는 데이터베이스 사용자와 통신할 수 있는 비즈니스 용어일 수 있다. 이다. 이러한 용어는 공공기관/정부기관(또는 기업)에서 정의하는 표준화된 단어에 의해 만들어질 수 있다. 표준화된 용어 사전은 표준화된 용어와 일반적인 표준화 용어의 집합을 나타낼 수 있다. 표준화된 용어 사전의 개념은 표준이 될 수 있으므로, 여러 기업들 및 업종에서 이를 따를 수 있다. Standard terms may be business terms that can communicate with database users. to be. These terms can be coined by standardized words defined by public/governmental organizations (or corporations). The standardized term dictionary may represent a set of standardized terms and general standardized terms. The concept of a standardized term dictionary can be a standard, so it can be followed by different companies and industries.

[자연어 처리(NLP)][Natural Language Processing (NLP)]

자연어 처리(NLP)는 인간의 언어를 이해하기 위해 컴퓨터를 훈련시키는 분야일 수 있다. 예컨대, 자연어 처리 기법은 시소러스를 활용한 기법, 통계적 기법 및 추론 기반 기법을 포함할 수 있고, 각각 다른 방식으로 컴퓨터 시스템을 훈련시킬 수 있다. 통계적 방법은 말뭉치(corpus)를 사용하여 자연어 처리를 하는 방법일 수 있다. 이러한 방법은 말뭉치로부터 중요한 정보를 추출하기 위해, 먼저, 용어를 말뭉치로부터 분할 수 있다. 그 후에, 용어는 ID 목록으로 유지되고, 이러한 용어들은 그것을 분포적 표현으로 제시하기 위해 벡터화될 수 있다. Natural language processing (NLP) can be a discipline that trains computers to understand human language. For example, the natural language processing technique may include a thesaurus-based technique, a statistical technique, and an inference-based technique, and the computer system may be trained in different ways. The statistical method may be a method of processing natural language using a corpus. In order to extract important information from the corpus, the method may first divide the term from the corpus. Thereafter, the term is kept in a list of IDs, and these terms can be vectorized to present it in a distributed representation.

NLP의 분야에서, 분포 가설은 다음과 같이 정의될 수 있다. 용어의 문맥이 주변 용어에서 나온다는 점에서, 용어의 의미는 주변의 용어로부터 비롯될 수 있다.In the field of NLP, the distribution hypothesis can be defined as In the sense that the context of a term comes from the surrounding term, the meaning of the term may come from the surrounding term.

말뭉치로부터 주변 용어를 추적하기 위해, 동시 발생 행렬이 생성될 수 있고, 타겟 용어를 둘러싸는 용어의 수를 제한하기 위해 윈도우 크기가 정의될 수 있다. 예컨대, 윈도우 크기가 1인 경우, 문맥은 타겟 단어 바로 가까이에 있는 단어로 제한되어야 함을 의미할 수 있다. 윈도우의 크기는 다양할 수 있지만, 보통 비즈니스 용어의 경우, 단어는 5 단어 이하로 구성되어 있다는 점에서 결정될 수 있다. To track surrounding terms from the corpus, a co-occurrence matrix can be generated, and a window size can be defined to limit the number of terms surrounding the target term. For example, when the window size is 1, it may mean that the context should be limited to words immediately adjacent to the target word. The size of the window can vary, but in the case of ordinary business terms, it can be determined in that the word consists of 5 words or less.

벡터 유사도를 평가하기 위한 방법으로서는, 예컨대, 유클리드 거리 유사도 및 코사인 유사도를 사용하는 것과 같은 방법이 있을 수 있다.As a method for evaluating vector similarity, there may be a method such as using Euclidean distance similarity and cosine similarity, for example.

벡터 간의 코사인 유사도를 계산하는 방법은 아래의 수학식 2와 같이 표현될 수 있다. x 및 y는 각각의 단어 벡터를 나타낼 수 있다. The method of calculating the cosine similarity between vectors may be expressed as Equation 2 below. x and y may represent each word vector.

[수학식 2][Equation 2]

Figure 112020030725957-pat00002
Figure 112020030725957-pat00002

상호정보량(PMI: Pointwise Mutual Information)을 사용하여 통계적 접근 방식을 개선할 수 있다. 동시 발생 행렬을 사용할 경우, 단어의 빈도는 윈도우 크기와는 무관할 수 있다. 그러나 문장에 'a'와 같은 용어가 포함되어 있는 경우, 이러한 용어는 단어의 문맥을 찾는 데 다른 용어만큼 중요하지 않을 수 있다. PMI 지표는 문맥을 찾을 때 이러한 단어를 찾고, 이러한 구성 요소를 제거하는 데 도움이 될 수 있다.Statistical approaches can be improved using PMI (Pointwise Mutual Information). When using a co-occurrence matrix, the frequency of words can be independent of the window size. However, if the sentence contains a term such as'a', these terms may not be as important as other terms in finding the context of the word. PMI indicators can help you find these words when you find context, and eliminate these components.

한편, 머신러닝에 기반한 방법은 Word2Vec, GloVe와 같은 모델들을 사용하는 것일 수 있다. Word2Vec에 기반한 모델로는 CBOW(Continuous Bag of Words) 모델과 Skip-gram 모델이 있을 수 있다. CBOW 모델은 주변 단어를 사용하여 타겟 단어의 문맥을 예측하고, Skip-gram 모델은 타겟 단어를 사용하여 문맥 단어의 주변 윈도우를 예측할 수 있다. GloVe 모델은 통계 모델과 머신러닝 모델을 사용할 수 있다. Meanwhile, a method based on machine learning may be using models such as Word2Vec and GloVe. Models based on Word2Vec may include CBOW (Continuous Bag of Words) model and Skip-gram model. The CBOW model predicts the context of the target word using the surrounding words, and the Skip-gram model predicts the surrounding window of the context words using the target words. The GloVe model can use statistical and machine learning models.

[다중 데이터 표준 통합][Multiple data standard integration]

예컨대, 다국적 대기업이 사업을 확장하고자 할 때 개별 자회사들은 스스로 운영하며 정보와 데이터를 별도로 관리하고 로컬 표준을 만들 수 있다. 하지만 자회사에 대한 지배력을 행사하기 위해서는 글로벌 표준을 계속 추적하는 것이 중요하다. 인수합병(M&A)의 경우 모회사인 모기업은 모든 지역표준을 글로벌 스탠더드로 전환해 자회사를 장악하고 싶어할 수 있다. 기업간 글로벌 표준을 만드는 방법에는 일반적으로, 중앙 집중식 관리 및 분산식 관리가 있다.For example, when a large multinational company wants to expand its business, individual subsidiaries can operate on their own, manage information and data separately, and create local standards. However, it is important to keep track of global standards to exercise control over subsidiaries. In the case of mergers and acquisitions (M&A), the parent company, the parent company, may want to take over subsidiaries by converting all regional standards into global standards. There are generally methods to create global standards between enterprises, centralized management and decentralized management.

실시예에 이러한 서로 다른 표준에 자연어 처리를 적용함으로써, 표준을 통합하는 것과 관련된다. By applying natural language processing to these different standards in the examples, it relates to integrating the standards.

실시예에서는, 다중 데이터 사전을 표준화하기 위해 통계적인 방법과 머신러닝에 기반한 방법을 사용할 수 있다. 이러한 두 가지의 접근법을 사용함으로써, 서로 다른 사전의 유사한 용어를 나열할 수 있는 상위 5개 추천 시스템을 제안한다.In embodiments, statistical methods and machine learning-based methods may be used to standardize multiple data dictionaries. By using these two approaches, we propose a top five recommendation system that can list similar terms in different dictionaries.

데이터에 대해, 상기의 방법을 적용하기에 앞서, 데이터(즉, 데이터 사전(10)에 대해서는 상기 도 3을 참조하여 전술된 바와 같은 전처리가 수행되어야 한다. For data, prior to applying the above method, pre-processing as described above with reference to FIG. 3 should be performed for data (ie, data dictionary 10).

먼저, 상이한 데이터 사전들에서 (영어) 용어들이 추출될 수 있다. 영어 용어는 여러 용어들/단어들로 구성될 수 있다. 데이터베이스의 각 컬럼에 대해 저장되는 바이트 수에는 제한이 있기 때문에 이러한 사전은 축약어(약어)로 구성될 수 있다. 예를 들어, "코드"라는 단어는 CD, CDE, CE 또는 CODE로 약칭될 수 있다. 한국 정부 기관과 기업의 경우 영어 용어는 보충 자료가 되기 때문에, 용어는 "_" 로 나누어질 수 있고, 예를 들어, "Market English Name"이라는 비즈니스 용어는 "MRKT_ENG_NM"으로 약칭되어 사전에 저장될 수 있다. 컬럼에는 저장 용량이 제한되어 있기 때문에 일반적으로 이러한 약어가 사용될 수 있다. 이 때, 상이한 사업체들은 자신의 규칙에 따라 용어를 축약하는 경향이 있고, 같은 단어에 여러 개의 축약된 버전이 존재할 수 있다는 점에서, 이러한 유사 용어를 비즈니스 용어들로부터 추출하는 것은 매우 중요할 수 있다. 또한 다른 데이터베이스에서 동일한 약어가 발견될 수 있으므로, 중복된 용어를 삭제하는 작업 역시 필수적으로 요구될 수 있다. First, (English) terms can be extracted from different data dictionaries. An English term may consist of several terms/words. Because there is a limit to the number of bytes stored for each column in the database, these dictionaries can consist of abbreviations (abbreviations). For example, the word "code" can be abbreviated as CD, CDE, CE or CODE. For Korean government agencies and companies, the English term is supplementary, so the term can be divided into "_". For example, the business term "Market English Name" can be abbreviated as "MRKT_ENG_NM" and stored in the dictionary. Can be. These abbreviations can generally be used because the column has limited storage capacity. At this time, it may be very important to extract these similar terms from business terms in that different businesses tend to abbreviate terms according to their rules, and there may be multiple abbreviated versions of the same word. . In addition, since the same abbreviation can be found in other databases, it may be necessary to delete duplicate terms.

[데이터 사전에 자연어 처리 적용][Apply natural language processing to data dictionary]

데이터/비즈니스 사전은 영어(약어)로 구성되어 있으므로, 이러한 사전에 대해 자연어 처리 기법을 적용하여 용어들 간의 유사도가 결정될 수 있다. 따라서, 도 3 및 4를 참조하여 전술된 것처럼, 타겟 단어에 대한 유사 용어들로서 추천 용어들(100)이 결정되어 제공될 수 있다. Since the data/business dictionary is composed of English (abbreviation), similarity between terms can be determined by applying a natural language processing technique to such a dictionary. Therefore, as described above with reference to FIGS. 3 and 4, recommended terms 100 may be determined and provided as similar terms for the target word.

자연어 처리 기법으로는, 예컨대, 통계적 방법 및 머신러닝에 기반한 방법이 있고, 이를 통해, 상위 5개의 유사 용어를 추천 용어들로서 결정될 수 있다. Natural language processing techniques include, for example, statistical methods and machine learning-based methods, through which the top five similar terms can be determined as recommended terms.

데이터 셋으로는 예컨대, 3개 기업(X,Y,Z)의 사적 소유 데이터 셋이 사용되었다. 데이터 셋의 이질성을 배제하기 위해 은행, 카드사, 보험사 등의 금융 분야로 한정된 데이터 셋이 사용되었다. 이들 세 기업은 유사한 분야에 있으므로, 3개 기업(X,Y,Z)의 소유 데이터 셋들은 유사한 비즈니스 단어/용어를 가지고 있을 수 있다. As the data set, for example, privately owned data sets of three companies (X, Y, Z) were used. To exclude heterogeneity of the data set, a data set limited to financial sectors such as banks, credit card companies, and insurance companies was used. Since these three companies are in a similar field, the datasets owned by the three companies (X,Y,Z) may have similar business words/terms.

X사의 사전에는 28987개의 표준어가 수록되어 있으며, 3461개의 고유 단어가 수록되어 있고, Y사의 사전에는 2218개의 고유 단어와 14835개의 표준어가 수록되어 있고, Z사의 사전에는 4684개의 표준어와 2303개의 고유 단어가 수록되어 있다. The company's dictionary contains 28987 standard words, 3461 unique words are included, the company's dictionary contains 2218 unique words and 14835 standard words, and the company's dictionary contains 4684 standard words and 2303 unique words. Is included.

실시예에서는, 도 5를 참조하여 전술된 것처럼 윈도우 크기가 크기 1로 제한된다. 따라서, 타겟 단어 옆에 인접한 한 단어만이 문맥을 결정하기 위해 사용될 수 있다. 윈도우 크기는 사용자의 설정에 따라 변경될 수 있다. 상위 5개의 유사 용어를 제시하는 것 역시, 사용자에 의한 매개변수의 조정에 따라 변경될 수 있다.In an embodiment, the window size is limited to size 1 as described above with reference to FIG. 5. Therefore, only one word adjacent to the target word can be used to determine the context. The window size can be changed according to the user's settings. The suggestion of the top five similar terms can also be changed according to the adjustment of parameters by the user.

[통계적 방법][Statistics method]

통계적 방법에 따른 추천 용어들(100)의 제공은 다음에 따라 수행될 수 있다. 먼저, 컴퓨터 시스템(200)은, 전처리 장치에서 검색된 단어 목록(예컨대, 전술된 전처리 용어)에서 타겟 단어 벡터를 찾을 수 있다. 다음으로, 컴퓨터 시스템(200)은 모든 단어 벡터와 타겟 단어 벡터의 모든 코사인 유사도를 계산할 수 있다. 마지막으로, 컴퓨터 시스템(200)은, 코사인 유사도 계산 결과를 기반으로 상위 5개 항목을 추천 용어들(100)로서 출력할 수 있다. Provision of recommended terms 100 according to a statistical method may be performed according to the following. First, the computer system 200 may search for a target word vector in a word list (eg, the pre-processing terms described above) searched for in the pre-processing device. Next, the computer system 200 may calculate all cosine similarities of all word vectors and target word vectors. Finally, the computer system 200 may output the top five items as recommended terms 100 based on the cosine similarity calculation result.

코사인 유사도를 사용하는 통계적 방법으로는, 관련없는 단어의 중복과 특이값 분해를 감소시키는 상호 정보량 방법과, 모든 단어의 코사인 유사도를 계산할 때 벡터의 차원을 감소시키는 방법이 있을 수 있다. Statistical methods using cosine similarity may include a mutual information amount method for reducing unrelated word duplication and singular value decomposition, and a method for reducing a vector dimension when calculating cosine similarity for all words.

[머신러닝 기반의 방법][Machine learning-based method]

머신러닝 기반의 방법으로서는, Word2Vec에 기반한 모델을 사용할 수 있다.As a machine learning based method, a model based on Word2Vec can be used.

본 예시에서는, 세 가지 다른 모델, 즉, 기업 X의 데이터만 사용하는 Word2Vec, 기업 X와 Y 데이터를 사용하는 Word2Vec, 기업 X, Y, Z 데이터를 사용하는 Word2Vec을 훈련시켰다. 한편, 모델의 하이퍼 파라미터 튜닝을 수행하여 손실이 수렴되도록 할 수 있다. 손실이란 모델의 입력 및 출력 레이어에 대한 소프트맥스 레이어에 의한 스코어를 의미할 수 있고, 이러한 확률은 올바른 라벨과 함께 교차 엔트로피 오류에 적용될 수 있다. 모델의 임베딩 레이어는 밀도 높은 벡터 표현을 저장하여 메모리 사용량과 불필요한 계산을 줄일 수 있다. 또한 네거티브(negative) 샘플링은 훈련 시간을 줄이는 소프트맥스 레이어의 계산을 줄일 수 있다. 전술된 도 6에서는 하이퍼 파라미터에 대한 튜닝 전(a) 후(b)의 손실을 나타낸다. In this example, three different models were trained: Word2Vec using only corporate X data, Word2Vec using corporate X and Y data, and Word2Vec using corporate X, Y, and Z data. Meanwhile, the hyperparameter tuning of the model may be performed so that the loss converges. Loss can mean the score by the softmax layer for the input and output layers of the model, and this probability can be applied to the cross entropy error with the correct label. The model's embedding layer can store a dense vector representation, reducing memory usage and unnecessary computation. In addition, negative sampling can reduce the computation of the Softmax layer, which reduces training time. In FIG. 6 described above, the loss of before (a) and after (b) tuning for the hyperparameter is shown.

[결과][result]

전술한 예시에 따른 평가로서, 기업 X의 데이터를 사용한 통계적 방법(STAT1), 기업 X의 데이터로 훈련된 Word2Vec(INFER1) 모델, 기업 X 및 Y의 데이터를 사용한 통계적 방법(STAT2), 기업 X 및 Y의 데이터로 훈련된 Word2Vec 모델(INFER2)을 분석하였다.As an evaluation according to the above example, the statistical method using the data of the company X (STAT1), the Word2Vec (INFER1) model trained with the data of the company X, the statistical method using the data of the company X and Y (STAT2), the company X and The trained Word2Vec model (INFER2) with Y's data was analyzed.

그 결과는 도 7에서 도시되었다. 도 7은 일 예에 따른, 타겟 단어에 대한 추천 용어들의 제공의 결과를 나타낸다. The results are shown in FIG. 7. 7 shows a result of providing recommended terms for a target word according to an example.

도시된 예시에서, 타겟 단어는 YMD 가 사용되었고, 유사도가 상위인 5개의 용어들이 추천 용어들(100)로서 제공됨을 확인할 수 있다. 도시된 것처럼, 각 추천 용어와 거기에 연관된 유사도(확률)이 함께 출력될 수 있다. In the illustrated example, it can be confirmed that YMD was used as a target word, and that five terms with similarity are provided as recommended terms 100. As shown, each recommended term and the similarity (probability) associated therewith may be output together.

[단일 데이터 사전 분석][Single data dictionary analysis]

도 8은 일 예에 따른, 단일한 데이터 사전으로부터의 타겟 단어에 대한 추천 용어들의 제공의 결과를 나타낸다. 8 shows the result of providing recommended terms for a target word from a single data dictionary, according to an example.

전술한 기업 X의 데이터 셋은 28987개의 표준화된 비즈니스 용어와 3461개의 고유 단어/용어가 수록되어 있다. 이 중 임의의 용어 10%를 선정하여, 타겟 단어에 대해 추천 용어들(100)을 결정한 결과가 도 8과 같이 도시되었다. The corporate X dataset described above contains 28987 standardized business terms and 3461 unique words/terms. The result of determining the recommended terms 100 for the target word by selecting 10% of the terms is shown in FIG. 8.

도시된 것처럼, 머신러닝 기반의 방법을 적용하는 경우에 있어서, 단일한 데이터 사전에서 SELL/SNS와 NEW/NW와 같은 동일한 단어를 나타냄에도 상이한 약어를 갖는 용어들이 추천 용어로서 제공될 수 있다. As illustrated, in the case of applying a machine learning-based method, terms having different abbreviations may be provided as recommended terms although the same words such as SELL/SNS and NEW/NW are represented in a single data dictionary.

또한, 통계적 방법을 적용하는 경우에 있어서, 타겟 단어 YM과 유사한 단어로서 YMD이 추천 용어로 제공될 수 있다. In addition, in the case of applying a statistical method, YMD may be provided as a recommended term as a word similar to the target word YM.

[다중 데이터 사전 분석][Multiple data dictionary analysis]

도 9는 일 예에 따른, 복수의 데이터 사전들을 포함하는 다중 데이터 사전으로부터의 타겟 단어에 대한 추천 용어들의 제공의 결과를 나타낸다.9 shows the result of providing recommended terms for a target word from a multiple data dictionary that includes a plurality of data dictionaries, according to an example.

다중 데이터 사전으로부터의 타겟 단어에 대한 추천 용어들(100)을 제공하기 위해서는, 다중 데이터 사전에 대해 도 3을 참조하여 전술된 전처리가 수행되어야 할 수 있다.In order to provide recommended terms 100 for a target word from a multi-data dictionary, the pre-processing described above with reference to FIG. 3 may need to be performed on the multi-data dictionary.

도 9에서 도시된 예시에서, X사의 데이터는 28987개의 비즈니스 용어를 가지고 있고, 3461개의 고유 단어를 가지고 있고, Y사의 데이터는 14835개의 비즈니스 용어를 가지고 있고, 2218개의 고유 단어를 가지고 있을 수 있다. 총 고유 단어는 5679개로 산출될 수 있고, 이들 중 동일하게 사용하는 단어는 518개 였다. 중복되는 단어를 제거한 표준화된 단어들 중, 결과를 얻기 위해, 인의의 용어 10%를 선정하여 추천 용어의 결정을 수행하였다.In the example shown in FIG. 9, data of company X has 28987 business terms, 3461 unique words, data of company Y has 14835 business terms, and may have 2218 unique words. A total of 5679 unique words can be calculated, and among them, 518 words were used equally. Among the standardized words from which duplicate words were removed, 10% of personal terms were selected to determine results.

도 9는 통합 데이터 사전에 대해 서로 다른 시나리오가 존재함을 나타낼 수 있다. 도 9에서 볼 수 있는 것처럼, 동일한 사전에서 SELL/SNS가 식별될 수 있다. 또한, 다른 데이터 사전을 통해, 동일한 단어 "transfer"가 TRSF/TRSFL의 두 가지 다른 방식으로 약칭됨을 확인할 수 있다. 9 may indicate that different scenarios exist for the integrated data dictionary. As can be seen in Figure 9, SELL/SNS can be identified in the same dictionary. In addition, it can be seen that through different data dictionaries, the same word "transfer" is abbreviated in two different ways of TRSF/TRSFL.

한편, X사 데이터의 데이터 사전에서 PRDT는 제품(product)로 정의되어 있고, Y사 데이터의 데이터 사전에서 PRNO는 제품 번호(product number)로 정의되어 있다. 이는, 약어는 다르게 축약되거나 더 작은 약어로 세분될 수 있으므로, PRNO 대신에 PRDTNO와 같은 제품 번호의 다른 약어가 존재할 높은 가능성이 있다는 것을 의미할 수 있다. 실시예의 컴퓨터 시스템(200)은 이러한 가능성이 높음을 판정할 수 있다. Meanwhile, in the data dictionary of company X data, PRDT is defined as a product, and in the data dictionary of company Y data, PRNO is defined as a product number. This may mean that the abbreviations may be abbreviated differently or subdivided into smaller abbreviations, so that there is a high probability that other abbreviations of product numbers such as PRDTNO may exist instead of PRNO. The computer system 200 of the embodiment can determine that this possibility is high.

또한, 코스닥(Korean Securities Dealer Automated Quotation)을 의미하는 KOSDAQ 에 대해서는, stock을 축약한 STCK와 domestic을 축약한 DMST가 유사 용어로 추천됨을 확인할 수 있다. In addition, for KOSDAQ, which stands for KOSDAQ (Korean Securities Dealer Automated Quotation), it can be seen that STCK for abbreviating stock and DMST for domestic abbreviation are recommended in similar terms.

이상 도 1 내지 도 4를 참조하여 전술된 기술적 특징들에 대한 설명은 도 5 내지 도 9 에 대해서도 그대로 적용될 수 있는 바, 중복되는 설명은 생략한다.The description of the technical features described above with reference to FIGS. 1 to 4 may be applied to FIGS. 5 to 9 as it is, and redundant description will be omitted.

도 10은 일 예에 따른, 통합 데이터 저장소 관리 시스템을 구축하고, 구축된 통합 데이터 저장소 관리 시스템을 통해 데이터를 조회하는 방법을 나타낸다.10 illustrates a method of constructing an integrated data storage management system and querying data through the integrated integrated data storage management system, according to an example.

전술된 복수의 데이터 사전들의 각각은 도 10에서 도시된 각 시스템(즉, A 내지 C 시스템들의 각 시스템)에서 관리될 수 있다.Each of the plurality of data dictionaries described above can be managed in each system shown in FIG. 10 (ie, each system of A to C systems).

각 시스템은 각 데이터 사전의 데이터에 대한 데이터 저장소 시스템에 대응할 수 있다. 데이터 사전의 데이터는 메타데이터일 수 있고, 데이터 저장소 시스템은 통합 메타데이터 저장소(Meta Data Repository; MDR)일 수 있다. Each system may correspond to a data storage system for data in each data dictionary. The data in the data dictionary may be metadata, and the data storage system may be an integrated metadata repository (MDR).

통합 데이터 저장소 관리 시스템은 복수의 시스템들의 각각에 대한 데이터를 통합적으로 관리하는 시스템일 수 있다. 통합 데이터 저장소 관리 시스템은 복수의 시스템들의 데이터(즉, 복수의 데이터 사전)들의 데이터에 대해 MRM(Multi Repository Management)을 가능하게 할 수 있다. The integrated data storage management system may be a system that integrally manages data for each of a plurality of systems. The integrated data storage management system may enable multi-repository management (MRM) for data of multiple systems (ie, multiple data dictionaries).

말하자면, 도시된 A 시스템, B 시스템 및 C 시스템의 각각은 데이터 저장소 시스템으로서, 데이터 사전을 포함할 수 있다. That is, each of the illustrated A system, B system, and C system is a data storage system, and may include a data dictionary.

(각각의) 데이터 사전은 하나의 기업 또는 업종과 관련된 데이터에 기반하여 구축된 표준 사전일 수 있고, 이러한 데이터 사전은 상기 기업 또는 업종과 관련된 데이터를 저장 및 관리하는 시스템(도시된 A 시스템, B 시스템 또는 C 시스템)에 포함되거나, 그것과 연관될 수 있다.The (each) data dictionary may be a standard dictionary built on the basis of data related to one company or industry, and such data dictionary is a system for storing and managing data related to the company or industry (A system, B shown) System or C system).

복수의 데이터 사전들에 대응하는 표준 사전들은, 상기 데이터 사전들과 연관된 기업들 또는 업종들과 관련된 데이터에 대한 데이터 저장소 시스템들을 관리하는 통합 데이터 저장소 관리 시스템에 의해, 통합 딕셔너리로서 구축될 수 있다. 통합 딕셔너리는 도 10에서 도시된 통합 표준 사전에 대응할 수 있다.Standard dictionaries corresponding to a plurality of data dictionaries can be built as an integrated dictionary by an integrated data storage management system that manages data storage systems for data related to companies or industries associated with the data dictionaries. The integrated dictionary may correspond to the integrated standard dictionary shown in FIG. 10.

통합 딕셔너리는, (표준 사전들에 포함된) 용어들의 각각을, 표준 사전들 중 어느 하나와만 연관되는 개별 표준 용어, 표준 사전들 중 적어도 2개와 연관되되 전부와는 연관되지 않는 부문 표준 용어, 또는 표준 사전들 모두와 연관되는 전사 표준 용어로 분류할 수 있다.An integrated dictionary, each of the terms (included in the standard dictionaries), individual standard terms associated with only one of the standard dictionaries, sector standard terms associated with at least two of the standard dictionaries, but not all Or it can be classified as a transcription standard term that relates to all of the standard dictionaries.

도시된 예시를 참조하여 설명하면, A 시스템, B 시스템 및 C 시스템의 각각의 데이터의 데이터 항목들은 각각의 표준 사전에 매핑될 수 있다. 예컨대, 각 시스템의 데이터에 포함된 용어, 단어 및 도메인 중 적어도 하나는 표준 사전에 매핑되어 있을 수 있다. Referring to the illustrated example, data items of respective data of the A system, the B system, and the C system may be mapped to respective standard dictionaries. For example, at least one of terms, words, and domains included in data of each system may be mapped to a standard dictionary.

또한, 각 시스템과 연관된 표준 사전은 통합 표준 사전에 대해 매핑될 수 있다. 통합 표준 사전은 A 시스템, B 시스템 및 C 시스템을 관리하는 기업들/계열사들을 통합 관리하는 그룹의 표준 사전일 수 있다. 각 시스템과 연관된 표준 사전은, 해당 표준 사전에 포함된 용어, 단어 또는 도메인이 개별/부문/전사 표준(또는 용어)에 해당하는지가 결정됨으로써, 통합 표준 사전에 매핑될 수 있다.In addition, the standard dictionary associated with each system can be mapped to the integrated standard dictionary. The integrated standard dictionary may be a standard dictionary of a group that manages companies/affiliates that manage the A system, the B system, and the C system. Standard dictionaries associated with each system may be mapped to an integrated standard dictionary by determining whether terms, words, or domains included in the standard dictionary correspond to individual/department/company standards (or terms).

통합 표준 사전의 사용자는 통합 표준 사전을 조회함으로써 각 시스템과 연관된 표준 사전에 포함된 데이터를 조회할 수 있다.Users of the integrated standard dictionary can query the data included in the standard dictionary associated with each system by querying the integrated standard dictionary.

예컨대, 통합 표준 사전(통합 딕셔너리)을 통해 타겟 단어로서 특정 용어가 조회될 때, 특정 용어에 대한 유사도가 상위인 용어들(즉, 추천 용어들(100))과 함께, 특정 용어가 개별 용어, 부문 용어 또는 전사 용어에 해당하는지가 함께 조회될 수 있다. 또한, 추천 용어들(100)의 각각에 대해서도 각 추천 용어가 개별 용어, 부문 용어 또는 전사 용어에 해당하는지가 함께 조회될 수 있다. 이러한 조회의 결과는 컴퓨터 시스템(200)의 화면에서 출력될 수 있다. For example, when a specific term is searched as a target word through an integrated standard dictionary (integrated dictionary), a specific term is an individual term, along with terms with high similarity to a specific term (ie, recommended terms 100). Whether it corresponds to a divisional term or a company term Can be queried together. Also, for each of the recommended terms 100, does each recommended term correspond to an individual term, a section term, or a transcription term? Can be queried together. The result of the inquiry may be displayed on the screen of the computer system 200.

이상 도 1 내지 도 9를 참조하여 전술된 기술적 특징들에 대한 설명은 도 10에 대해서도 그대로 적용될 수 있는 바, 중복되는 설명은 생략한다.The description of the technical features described above with reference to FIGS. 1 to 9 may be applied to FIG. 10 as it is, and a duplicate description is omitted.

아래에서는 도 11 내지 도 15를 참조하여, 통합 데이터 저장소 관리 시스템과, 이러한 통합 데이터 저장소 관리 시스템을 사용하여 복수의 데이터 저장소 시스템들(MDR)의 데이터에 대한 MRM을 수행하는 방법에 대해 더 자세하게 설명된다. Hereinafter, with reference to FIGS. 11 to 15, an integrated data storage management system and a method of performing MRM on data of a plurality of data storage systems (MDR) using the integrated data storage management system will be described in more detail. do.

(복수의 업종들을 갖는) 기업은, 사업부문의 확장 또는 개별 법인의 신설 등이 있는 경우, 독립적인 사업 운영을 전제로 하는 바, 이에 따라 정보화 역시 개별적으로 추진되는 경우가 일반적이다.Firms (having multiple industries) are premised on independent business operations in the case of expansion of business divisions or the establishment of individual corporations, so it is common that informatization is also promoted individually.

또한, 조직 내에 다양한 업종들을 보유하고 있거나, 물리적으로 분리된 상태로 존재하는 데이터 저장소 시스템들 또는 그룹사와 계열사 간의 표준의 공유 및 데이터 공동 활용을 위해서는 각각의 분산된 메타 데이터 공유 대상에 대한 통합적인 관리가 필요하다. 또한, 업무의 특성상 발생하는 다중 표준과, 그룹사 및 계열사들 간의 표준 공유를 위하여 각 조직 별(또는 업종 별) 표준을 기준으로 분산되어 있는 메타데이터 관리 시스템 간의 데이터 호환성을 확보해야 할 필요가 있다.In addition, integrated management of each distributed metadata sharing target for data sharing systems that have various industries in the organization or exist in a physically separated state or for standard sharing and data sharing between group companies and affiliates Is needed. In addition, it is necessary to secure data compatibility between the distributed metadata management system based on the standards of each organization (or by industry) in order to share standards between multiple standards that occur due to the nature of the business and groups and affiliates.

관련하여, MRM(Multi Repository Management)은 그룹 산하의 개별 계열사들(또는 업종들) 간의 다중 표준을 토대로, 그룹사와 계열사간 데이터 공유를 위한 그룹사의 표준을 정의하고 그룹 표준(Global Standard)을 기준으로 각 개별 표준(Local Standard) 간의 매핑 또는 포함 관계를 관리하는 것을 의미할 수 있다. 다시 말해, MRM은 업종이 다른 업무의 특성에 따라 관리되는 기업 별 메타데이터를 하나의 통합 저장소로서 관리하고, 개별적인 메타 데이터 별 개별 표준을 작성하고 그룹 표준과 개별 표준간 구조적 관계를 지속적으로 관리하는 것을 의미할 수 있다. In relation to this, MRM (Multi Repository Management) defines the standards of group companies for data sharing between group companies and affiliates based on multiple standards between individual affiliates (or industries) under the group, and based on the group standards (Global Standard). It may mean managing a mapping or inclusion relationship between each local standard. In other words, MRM manages enterprise-specific metadata managed according to the characteristics of different industries as one unified storage, creates individual standards for individual metadata, and continuously manages the structural relationship between group standards and individual standards. Can mean

이를 해결하기 위해서는 통합 메타데이터 저장소(MDR: Meta Data Repository)를 기반으로, 각각의 메타데이터에 존재하는 표준 간에 상호 관계를 정하고, MRM을 통해, 표준이 서로 다른 시스템 간의 데이터 공유에 있어서, 상호 운용성을 확보해야 할 수 있다. To solve this, based on the integrated metadata repository (MDR: Meta Data Repository), mutual relations between standards existing in each metadata are defined, and through MRM, interoperability in data sharing between systems with different standards May need to be secured.

MRM을 제공하는 통합 데이터 저장소 관리 시스템의 주요 기능은 다중 메타 데이터를 하나의 통합 저장소에서 수집할 수 있도록 하는 기능과; 각 데이터 저장소 시스템 별 표준 사전 정의 및 개별 매핑 기능과; 개별 메타데이터 별 표준 사전(단어, 용어, 도메인)을 정의, 적재시키는 기능과; 다중 표준간 구조 및 관계 관리(전사/부문/개별 표준의 정의 및 관계 설정) 기능을 포함할 수 있다. The main functions of the integrated data storage management system that provides MRM include the ability to collect multiple metadata in one integrated storage; Standard predefined and individual mapping functions for each data storage system; The ability to define and load standard dictionaries (words, terms, domains) for each metadata; It can include structure and relationship management between multiple standards (definition and relationship establishment of company/sector/individual standards).

[MRM의 개념][Concept of MRM]

산업계는 업종별로 특성을 가질 수 있다. 예컨대, 제조업은 생산 라인별로, 금융은 지주사를 중심으로, 행정기관인 경우는 본청을 중심으로 지방청과 산하기관이 존재할 수 있다. 이들 각각에 대해서는 별개의 IT시스템이 적용될 수 있고, 이와 관련된 데이터(메타 데이터)는 각각 별개로 관리되는 경우가 많다. Industry can have characteristics by industry. For example, the manufacturing industry may exist for each production line, the finance centers on the holding company, and in the case of an administrative agency, the regional offices and affiliated organizations may be centered around the main office. A separate IT system can be applied to each of these, and data related to it (meta data) is often managed separately.

MRM은 이러한 업종별 메타데이터를 통합적으로 관리하는 것일 수 있다. MRM may be integrated management of metadata for each industry.

또한, MRM은, MDR에 대해, MDR들 간의 표준, 기준 정보 및 기타 메타데이터의 동기화를 수행할 수 있도록 하는 것일 수 있다.Further, the MRM may be to enable synchronization of standards, reference information, and other metadata between MDRs with respect to the MDR.

도 11은 일 예에 따른, 구축된 통합 데이터 저장소 관리 시스템을 사용하여 각 업종에 대한 데이터를 통합 및 연결하는 방법을 나타낸다. 11 illustrates a method of integrating and linking data for each industry using an integrated data storage management system constructed according to an example.

도 11에서는, 통합 데이터 저장소 관리 시스템(1100)이 도시되었고, MDR1 내지 3의 각각은 전술된 데이터 저장소 시스템에 대응할 수 있다. In FIG. 11, an integrated data storage management system 1100 is shown, and each of MDR1 to 3 may correspond to the data storage system described above.

도시된 것처럼 데이터 저장소 시스템(즉, MDR1 내지 3)에 포함된 단어, 용어 및/또는 도메인(예컨대, 전술된 컴퓨터 시스템(200)에 의해 추천된 도메인)은, 통합 데이터 저장소 관리 시스템(1100)의 통합 MDR에서 전사 표준, 부분 표준 또는 개별 표준에 할당될 수 있다. 이에 따라, 통합 데이터 저장소 관리 시스템(1100)을 통해, MDR1 내지 3의 데이터에 대한 통합적인 조회 및 접근과, 표준 관리가 가능하게 될 수 있다. The words, terms, and/or domains (eg, domains recommended by computer system 200 described above) included in the data storage systems (ie, MDRs 1 to 3) as shown, are of the integrated data storage management system 1100. In the integrated MDR, it can be assigned to a transcription standard, a partial standard, or an individual standard. Accordingly, through the integrated data storage management system 1100, integrated inquiry and access to data of MDR1 to 3 and standard management may be possible.

도 12는 일 예에 따른, 구축된 통합 데이터 저장소 관리 시스템에서 정의되는 용어/도메인/표준의 분류 체계를 나타낸다. 도시된 A사 내지 C사 메타데이터 시스템은 전술된 데이터 저장소 시스템에 대응할 수 있다. 12 illustrates a classification system of terms/domains/standards defined in an integrated integrated data storage management system according to an example. The illustrated companies A to C metadata systems may correspond to the data storage systems described above.

도 13 및 도 14는 일 예에 따른, 구축된 통합 데이터 저장소 관리 시스템을 사용하여 개별/부문/전사 표준을 관리하는 방법을 나타낸다. 13 and 14 illustrate a method for managing individual/sector/enterprise standards using an integrated integrated data storage management system, according to an example.

도시된 것처럼, 각 데이터 저장소 시스템에서 정의되어 있는 표준 용어와 표준 도메인은 통합 데이터 저장소 관리 시스템에 의해 전사 표준(용어), 부문 표준(용어) 또는 개별 표준(용어)에 할당될 수 있다. As illustrated, standard terms and standard domains defined in each data storage system may be assigned to an enterprise standard (term), a sector standard (term), or an individual standard (term) by an integrated data storage management system.

도 14에서 도시된 것처럼, MDR 1 내지 4의 표준 (한글) 단어 각각은 전사 표준(용어), 부문 표준(용어), 또는 개별 표준(용어)에 해당하는 것으로서 식별될 수 있다. 또한, 수집된 메타데이터 중 용어 기준으로 분할된 단어와 용어에 해당하는 도메인(타입, 자릿수) 역시 전사 표준, 부문 표준, 또는 개별 표준에 해당하는 것으로서 식별될 수 있다.As illustrated in FIG. 14, each of the standard (Korean) words of MDR 1 to 4 may be identified as corresponding to a transcription standard (term), a division standard (term), or an individual standard (term). In addition, domains (type, number of digits) corresponding to words and terms divided based on terminology among the collected metadata may also be identified as corresponding to a transcription standard, a division standard, or an individual standard.

도 15는 일 예에 따른, 구축된 통합 데이터 저장소 관리 시스템을 사용하여 구현되는 통합 딕셔너리를 나타낸다. 15 illustrates an integrated dictionary implemented using an integrated integrated data storage management system, according to an example.

도시된 것처럼, 구축된 통합 데이터 저장소 관리 시스템에는 통합 딕셔너리(1500)가 구축될 수 있다. 통합 딕셔너리에는, 개별적인 데이터 저장소 시스템에서 구현된 데이터 사전 또는 표준 사전이 매핑되어 있을 수 있다.As illustrated, the integrated dictionary 1500 may be built in the integrated data storage management system. In the integrated dictionary, data dictionaries or standard dictionaries implemented in individual data storage systems may be mapped.

통합 딕셔너리(1500)에는 용어, 단어 및 도메인이 정의되어 있을 수 있다. 또한, 각 용어에 대해 해당 용어가 전사 용어에 해당하는지, 부문 용어에 해당하는지, 개별 용어에 해당하는지가 정의되어 있을 수 있다. 또한, 통합 딕셔너리(1500)에는 (개별적인 데이터 저장소 시스템들과 연관된) 표준들 간의 구조 체계가 정의되어 있을 수 있다. 또한, 통합 딕셔너리(1500)에는 용어에 대한 체계 역시 정의되어 있을 수 있다. Terms, words, and domains may be defined in the integrated dictionary 1500. In addition, for each term, it may be defined whether the term corresponds to a transcription term, a section term, or an individual term. In addition, a structured structure between standards (associated with individual data storage systems) may be defined in the integrated dictionary 1500. Also, a system for terms may be defined in the integrated dictionary 1500.

통합 데이터 저장소 관리 시스템은 각 기관(각 데이터 저장소 시스템)에서 수집한 데이터에 기반한 데이터 딕서너리와 각 기관의 표준 사전정보를 수집할 수 있다. 또한, 통합 데이터 저장소 관리 시스템은 상기 표준 사전과 메타 정보를 연결한 매핑 정보를 수집할 수 있다. 통합 데이터 저장소 관리 시스템은, 표준 사전이 존재하지 않는 경우 없는, 표준 사전을 신규로 작성하여 매핑을 수행할 수 있다. 이에 따라, 통합 데이터 저장소 관리 시스템은 통합 딕셔너리(1500)를 구축할 수 있다. The integrated data storage management system can collect data dictionary based on data collected from each institution (each data storage system) and standard dictionary information of each institution. In addition, the integrated data storage management system may collect mapping information linking the standard dictionary and meta information. The integrated data storage management system can perform mapping by creating a new standard dictionary without a standard dictionary. Accordingly, the integrated data storage management system can build the integrated dictionary 1500.

통합 딕셔너리(1500)를 구성함에 있어서, 각 용어에 대하여 전사/부문/개별 표준(용어) 여부를 판정하여, 해당 용어에 적시해 둘 수 있다. In constructing the integrated dictionary 1500, it is possible to determine whether or not a transcription/sector/individual standard (term) is applied to each term and timely indicate the term.

이상 도 1 내지 도 10을 참조하여 전술된 기술적 특징들에 대한 설명은 도 11 내지 도 15에 대해서도 그대로 적용될 수 있는 바, 중복되는 설명은 생략한다.The description of the technical features described above with reference to FIGS. 1 to 10 may be applied to FIGS. 11 to 15 as it is, and overlapping descriptions are omitted.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The device described above may be implemented with hardware components, software components, and/or combinations of hardware components and software components. For example, the devices and components described in the embodiments may include a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor (micro signal processor), a microcomputer, a field programmable gate array (FPGA), and a programmable programmable logic array (PLU). It may be implemented using one or more general purpose computers or special purpose computers, such as a logic unit, microprocessor, or any other device capable of executing and responding to instructions. The processing device may perform an operating system (OS) and one or more software applications running on the operating system. In addition, the processing device may access, store, manipulate, process, and generate data in response to the execution of the software. For convenience of understanding, a processing device may be described as one being used, but a person having ordinary skill in the art, the processing device may include 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 a processor and a controller. In addition, other processing configurations, such as parallel processors, are possible.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instruction, or a combination of one or more of these, and configure the processing device to operate as desired, or process independently or collectively You can command the device. Software and/or data may be embodied in any type of machine, component, physical device, computer storage medium, or device in order to be interpreted by the processing device or to provide instructions or data to the processing device. have. 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.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 이때, 매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수 개의 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 어플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.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 on a computer-readable medium. In this case, the medium may continuously store a program executable on a computer or may be temporarily stored for execution or download. In addition, the medium may be various recording means or storage means in a form of a single or several hardware combinations, and is not limited to a medium directly connected to a computer system, but may be distributed on a network. Examples of the medium include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical recording media such as CD-ROMs and DVDs, and magneto-optical media such as floptical disks, And program instructions including ROM, RAM, flash memory, and the like. In addition, examples of other media may include an application store for distributing applications or a recording medium or storage medium managed by a site, server, or the like that supplies or distributes various software.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described by a limited embodiment and drawings, those skilled in the art can make various modifications and variations from the above description. For example, the described techniques are performed in a different order than the described method, and/or the components of the described system, structure, device, circuit, etc. are combined or combined in a different form from the described method, or other components Alternatively, even if replaced or substituted by equivalents, appropriate results can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

Claims (10)

컴퓨터 시스템에 의해 수행되는, 데이터 사전으로부터의 용어를 추천하는 방법에 있어서,
복수의 용어들을 데이터 항목들로서 포함하는 적어도 하나의 데이터 사전에 대해 전처리를 수행하는 단계;
자연어 처리 기법에 기반하여, 타겟 단어에 대해, 상기 전처리된 데이터 사전으로부터 상기 타겟 단어와 관련되는 적어도 하나의 용어를 결정하는 단계; 및
상기 타겟 단어에 대한 추천 용어로서, 상기 결정된 용어를 출력하는 단계
를 포함하고,
데이터 사전은 복수의 데이터 사전들로 구성된 다중 데이터 사전이고,
상기 데이터 사전들이 데이터 항목들로서 포함하는 복수의 용어들의 각각은 약어이고,
상기 전처리를 수행하는 단계는,
상기 데이터 사전들의 각 데이터 사전에 대해, 소정의 언어에 해당하는 용어들을 추출하는 단계; 및
상기 추출된 용어들 중 중복된 용어를 제거함으로써, 상기 추출된 용어들 중 중복된 용어가 제거된 전처리 용어들을 획득하는 단계
를 포함하고,
상기 용어를 결정하는 단계는,
상기 복수의 용어들 중에서, 상기 타겟 단어에 대한 유사도가 상위인 용어들을 결정하고,
상기 출력하는 단계는,
상기 결정된 용어들을 순위화하여 출력하고,
상기 각 데이터 사전은 하나의 기업 또는 업종과 관련된 데이터에 기반하여 구축된 표준 사전이고,
상기 복수의 데이터 사전들에 대응하는 표준 사전들은, 상기 데이터 사전들과 연관된 기업들 또는 업종들과 관련된 데이터에 대한 데이터 저장소 시스템들을 관리하는 통합 데이터 저장소 관리 시스템에 의해, 통합 딕셔너리로서 구축되고,
상기 통합 딕셔너리는,
상기 복수의 용어들의 각각을, 상기 표준 사전들 중 어느 하나와만 연관되는 개별 표준 용어, 상기 표준 사전들 중 적어도 2개와 연관되되 전부와는 연관되지 않는 부문 표준 용어, 또는 상기 표준 사전들 모두와 연관되는 전사 표준 용어로 분류하고,
상기 통합 딕셔너리를 통해 상기 타겟 단어로서 특정 용어가 조회될 때, 상기 특정 용어에 대한 유사도가 상위인 복수의 용어들과 함께, 상기 특정 용어가 상기 개별 표준 용어, 상기 부문 표준 용어 또는 상기 전사 표준 용어에 해당하는지가 함께 조회되는, 용어를 추천하는 방법.
A method for recommending terms from a data dictionary, performed by a computer system, comprising:
Pre-processing at least one data dictionary including a plurality of terms as data items;
Based on a natural language processing technique, for a target word, determining at least one term associated with the target word from the preprocessed data dictionary; And
Outputting the determined term as a recommended term for the target word
Including,
A data dictionary is a multiple data dictionary composed of a plurality of data dictionaries,
Each of the plurality of terms that the data dictionaries include as data items is an abbreviation,
The step of performing the pre-treatment,
For each data dictionary of the data dictionaries, extracting terms corresponding to a predetermined language; And
Obtaining pre-processed terms in which duplicate terms are removed from the extracted terms by removing duplicate terms from the extracted terms
Including,
Determining the term,
Among the plurality of terms, the terms having similarity to the target word are determined,
The step of outputting,
Rank and output the determined terms,
Each data dictionary is a standard dictionary built based on data related to one company or industry,
Standard dictionaries corresponding to the plurality of data dictionaries are built as an integrated dictionary by an integrated data storage management system that manages data storage systems for data related to companies or industries associated with the data dictionaries,
The integrated dictionary,
Each of the plurality of terms, with an individual standard term associated with only one of the standard dictionaries, a sector standard term associated with at least two but not all of the standard dictionaries, or all of the standard dictionaries Classified by the relevant transcription standard terminology,
When a specific term is searched as the target word through the integrated dictionary, the specific term is the individual standard term, the sector standard term, or the transcription standard term, along with a plurality of terms having similarity to the specific term. Does it correspond to How to recommend terms that are queried together.
삭제delete 제1항에 있어서,
상기 자연어 처리 기법은 통계적 방법이고,
상기 용어를 결정하는 단계는,
상기 타겟 단어의 단어 벡터를 결정하는 단계;
상기 전처리 용어들의 각각의 단어 벡터와 상기 타겟 단어의 단어 벡터 간의 코사인 유사도를 계산하는 단계; 및
상기 계산된 코사인 유사도가 상위인 적어도 2개의 용어들을 상기 유사도가 상위인 복수의 용어들로서 결정하는 단계
를 포함하는, 용어를 추천하는 방법.
According to claim 1,
The natural language processing technique is a statistical method,
Determining the term,
Determining a word vector of the target word;
Calculating a cosine similarity between each word vector of the preprocessing terms and the word vector of the target word; And
Determining at least two terms having a higher cosine similarity as the plurality of terms having a higher similarity.
How to recommend a term, including.
제1항에 있어서,
상기 자연어 처리 기법은 머신러닝 기반의 방법이고,
상기 용어를 결정하는 단계는,
상기 전처리 용어들 중에서, 상기 타겟 단어에 대한 유사도가 상위인 복수의 용어들을 결정하도록 훈련된 머신러닝 기반의 모델을 사용하여, 상기 타겟 단어에 대한 유사도가 상위인 복수의 용어들을 결정하고,
상기 머신러닝 기반의 모델은 손실(loss)이 수렴되도록, 학습 속도(learning rate), 에포크의 수(number of epochs), 은닉 레이어(hidden layers), 은닉 유닛(hidden units) 및 활성화 함수(activation functions) 중 적어도 하나의 하이퍼 파라미터가 조정되어 훈련되는, 용어를 추천하는 방법.
According to claim 1,
The natural language processing technique is a machine learning-based method,
Determining the term,
Among the pre-processed terms, a plurality of terms having high similarity to the target word are determined using a machine learning based model trained to determine a plurality of terms having high similarity to the target word,
The machine-learning-based model includes learning rate, number of epochs, hidden layers, hidden units, and activation functions so that the loss converges. ), wherein at least one hyper parameter is adjusted and trained.
제4항에 있어서,
상기 머신러닝 기반의 모델은 Word2Vec 기반의 모델인, 용어를 추천하는 방법.
According to claim 4,
The machine learning-based model is a Word2Vec-based model, a method for recommending terms.
제1항에 있어서,
상기 용어를 결정하는 단계는,
상기 타겟 단어의 문맥을 결정하기 위해 사용되는 윈도우 크기(window size)는 5 이하로 설정되고,
상기 소정의 언어는 상기 타겟 단어와 동일한 언어인, 용어를 추천하는 방법.
According to claim 1,
Determining the term,
The window size used to determine the context of the target word is set to 5 or less,
A method of recommending a term, wherein the predetermined language is the same language as the target word.
제1항에 있어서,
상기 타겟 단어가 상기 복수의 용어들에 포함되어 있지 않은 경우, 상기 타겟 단어의 상기 데이터 사전에 대한 등록이 필요함을 나타내는 통지를 출력하는 단계
를 더 포함하는, 용어를 추천하는 방법.
According to claim 1,
If the target word is not included in the plurality of terms, outputting a notification indicating that the target word needs to be registered in the data dictionary
A method of recommending a term, further comprising a.
삭제delete 삭제delete 제4항에 있어서,
상기 머신러닝 기반의 모델은 강화 학습(Reinforcement Learning)에 기반하여 훈련된 모델이고,
상기 머신러닝 기반의 모델은 상기 타겟 단어에 대한 유사도가 상위인 복수의 용어들에 대한 결정에 기반하여 업데이트되는, 용어를 추천하는 방법.
According to claim 4,
The machine learning based model is a model trained based on reinforcement learning,
The machine learning based model is a method for recommending a term, which is updated based on a determination of a plurality of terms with similarity to the target word.
KR1020200035512A 2020-03-24 2020-03-24 Method and apparatus for recommending vocabulary from data dictionary based on natural language processing technique KR102132142B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200035512A KR102132142B1 (en) 2020-03-24 2020-03-24 Method and apparatus for recommending vocabulary from data dictionary based on natural language processing technique

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200035512A KR102132142B1 (en) 2020-03-24 2020-03-24 Method and apparatus for recommending vocabulary from data dictionary based on natural language processing technique

Publications (1)

Publication Number Publication Date
KR102132142B1 true KR102132142B1 (en) 2020-07-09

Family

ID=71602327

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200035512A KR102132142B1 (en) 2020-03-24 2020-03-24 Method and apparatus for recommending vocabulary from data dictionary based on natural language processing technique

Country Status (1)

Country Link
KR (1) KR102132142B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113705221A (en) * 2021-08-27 2021-11-26 北京百度网讯科技有限公司 Word pushing method and device, electronic equipment and storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101797365B1 (en) * 2016-06-15 2017-11-15 울산대학교 산학협력단 Apparatus and method for semantic word embedding using wordmap
KR102046640B1 (en) * 2019-07-22 2019-12-02 (주)위세아이텍 Automatic terminology recommendation device and method for big data standardization

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101797365B1 (en) * 2016-06-15 2017-11-15 울산대학교 산학협력단 Apparatus and method for semantic word embedding using wordmap
KR102046640B1 (en) * 2019-07-22 2019-12-02 (주)위세아이텍 Automatic terminology recommendation device and method for big data standardization

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
J. Chung et al., Empirical Evaluation of Gated Recurrent Neural Networks on Sequence Modeling, www.arxiv.org (2014.12.11.) *
Paul C. Hershey, "Data analytics implications" IEEE Potentials, (2018.08) *
Philip W. Shin et al., Data Governance on Business/Data Dictionary using Machine Learning and Statistics, ICAIIC2020 (2020.2.19) *
T. Mikolov et al., Efficient estimation of word representations in vector space, arXiv:1301.3781, (2013) *
김도우, Doc2Vec을 활용한 CNN 기반 한국어 신문 기사 분류에 관한 연구, 서강대학교 석사학위 논문 (2017.01.05.) *
김현주 외, 문장부호를 고려한 특수어절 분석 알고리즘, 한국정보처리학회 2015년도 추계학술발표대회 (2015.10.28), pp.1122-1125 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113705221A (en) * 2021-08-27 2021-11-26 北京百度网讯科技有限公司 Word pushing method and device, electronic equipment and storage medium
CN113705221B (en) * 2021-08-27 2023-11-10 北京百度网讯科技有限公司 Word pushing method and device, electronic equipment and storage medium

Similar Documents

Publication Publication Date Title
Cerda et al. Similarity encoding for learning with dirty categorical variables
Liu et al. Shifu2: A network representation learning based model for advisor-advisee relationship mining
US10438133B2 (en) Spend data enrichment and classification
CN112037920A (en) Medical knowledge map construction method, device, equipment and storage medium
Rios et al. Neural transfer learning for assigning diagnosis codes to EMRs
US20210374525A1 (en) Method and system for processing data records
Zhu et al. A novel multiple layers name disambiguation framework for digital libraries using dynamic clustering
Mirończuk The BigGrams: the semi-supervised information extraction system from HTML: an improvement in the wrapper induction
US20220300831A1 (en) Context-aware entity linking for knowledge graphs
Soylu et al. Enhancing public procurement in the European Union through constructing and exploiting an integrated knowledge graph
Hong et al. Event2vec: Learning representations of events on temporal sequences
US11847415B2 (en) Automated detection of safety signals for pharmacovigilance
KR102132142B1 (en) Method and apparatus for recommending vocabulary from data dictionary based on natural language processing technique
KR102153259B1 (en) Data domain recommendation method and method for constructing integrated data repository management system using recommended domain
Azzam et al. A question routing technique using deep neural network for communities of question answering
Talburt et al. A practical guide to entity resolution with OYSTER
Bagirov et al. An algorithm for minimizing clustering functions
WO2021186287A1 (en) Vector embedding models for relational tables with null or equivalent values
Sakib et al. A novel approach on machine learning based data warehousing for intelligent healthcare services
Shin et al. Data governance on business/data dictionary using machine learning and statistics
Pietranik et al. A method for ontology alignment based on semantics of attributes
Hu et al. Deduplication Method for Ukrainian Last Names, Medicinal Names, and Toponyms Based on Metaphone Phonetic Algorithm
Chowdhury et al. A new method for extractive text summarization using neural networks
Ashish et al. GEM: the GAAIN entity mapper
Chen et al. Hybrid data mining approaches for prevention of drug dispensing errors

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant