KR20190051574A - Device and method for providing nationality information of user name using neural networks - Google Patents
Device and method for providing nationality information of user name using neural networks Download PDFInfo
- Publication number
- KR20190051574A KR20190051574A KR1020170147399A KR20170147399A KR20190051574A KR 20190051574 A KR20190051574 A KR 20190051574A KR 1020170147399 A KR1020170147399 A KR 1020170147399A KR 20170147399 A KR20170147399 A KR 20170147399A KR 20190051574 A KR20190051574 A KR 20190051574A
- Authority
- KR
- South Korea
- Prior art keywords
- lstm
- nationality
- name
- memory
- decomposing
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Machine Translation (AREA)
Abstract
Description
본 발명은 뉴럴 네트워크 구조를 이용하여 사람의 이름으로부터 그 사람의 국적을 예측할 수 있는 국적 분류 방법 및 장치에 관한 것이다.The present invention relates to a national classification method and apparatus capable of predicting the nationality of a person from a person's name using a neural network structure.
최근 들어 다양한 종류의 인터넷 서비스가 웹 사이트나 스마트 단말의 어플등을 통해 제공되고 있고, 빅데이터 등을 통해 각 사용자별로 최적의 서비스를 제공하려는 기업의 노력이 활발하게 진행되고 있다. 특히, 사용자에게 추가 정보를 요청하지 않고, 그 이름만으로 사용자의 국적을 예측할 수 있다면 개별 사용자에게 보다 적합한 맞춤형 서비스를 제공할 수 있어 이에 대한 연구가 일부 진행되고 있다.Recently, various kinds of Internet services are provided through applications such as websites and smart terminals, and companies are actively trying to provide optimal services for each user through big data and the like. Particularly, if the user's nationality can be predicted only by the name without requesting additional information to the user, a customized service more suitable for individual users can be provided.
일반적으로 사람의 이름은 그 국적별로 자주 사용되는 패턴을 가지고 있기 때문에, 이름만으로도 대략적인 국적의 확인 또는 예측이 가능하다. 예를 들면, 러시아 인들의 경우 “-스키(sky)”, “-프(v)” 등의 접미사가 자주 등장하고, 독일인등의 경우”-만(mann)”, “-우르그(urg)” 등의 접미사가 자주 등장하므로, 이를 근거로 대략적인 국적의 예측이 가능하다. In general, the name of a person has a pattern that is frequently used for that country, so it is possible to identify or predict a rough nationality by name alone. For example, suffixes such as "- sky" and "- v (v)" frequently appear in the case of Russians, while "mann", "- urge" "And so on, the approximate nationality can be predicted based on this.
이와 같은 국적의 예측을 위한 주요 인자(factor)로서, 첫번째는 국가의 언어가 고려해야할 가장 중요한 인자라는 것, 두번째는 지리적 위치가 유용한 정보를 제공할 수 있다는 것, 세번째는 각 국가의 역사가 결정적인 역할을 할 수 있다는 것이다. As a major factor for predicting this nationality, the first is that the language of the country is the most important factor to consider, the second is that the geographical location can provide useful information, and the third is that the history of each country has a crucial role It is possible to do.
이와 같은, 여러 가지 고려 사항이 있어 그 이름만으로 국적을 예측하는데 어려움이 있으며, 본 발명에서는 순환 신경망(recurrent neural network)에 기반한 새로운 플랫폼을 통해 이러한 기술적 어려움을 해소하고자 한다.There are various considerations, and it is difficult to predict the nationality by its name alone. In the present invention, the technical difficulty is solved through a new platform based on a recurrent neural network.
본 발명의 일 실시예는 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 순환 신경망에 기반하여 이름의 국적 정보를 예측하여 제공하는 과정에서 학습과 분류 성능을 향상할 수 있는 국적 정보 제공 장치 및 방법을 제공하고자 한다.An embodiment of the present invention is to solve the problems of the prior art described above and it is an object of the present invention to provide a national information providing apparatus and method capable of improving learning and classification performance in the process of predicting and providing name nationality information based on a circular neural network .
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.It should be understood, however, that the technical scope of the present invention is not limited to the above-described technical problems, and other technical problems may exist.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일 측면에 따른 인공 신경망에 기반하여 국적 정보를 제공하는 장치는 국적 정보 제공 프로그램이 저장된 메모리, 데이터 입출력을 수행하는 데이터 입출력 모듈 및 프로세서를 포함한다. 이때, 국적 정보 제공 프로그램은 상기 프로세서에 의하여 구동되어, 상기 데이터 입출력 모듈을 통해 입력된 대상자의 이름에 기초하여 대상자의 국적을 예측하되, 상기 국적 정보 제공 프로그램은 RNN-LSTM(Recurrent Neural Network-Long Short Term Memory)에 기반한 학습 모델에 기초하여, 상기 입력된 대상자의 이름이 분류될 확률이 가장 높은 국적을 출력값으로 제공하는 것이고, 상기 대상자의 이름을 입력순서에 따라 한글자씩 분해하여 벡터화하는 유니그램 임베딩 처리(unigram embedding), 입력순서에 따라 두글자씩 분해하여 벡터화하는 바이그램 임베딩 처리(Bigram embedding) 및 입력순서에 따라 세글자씩 분해하여 벡터화하는 트라이그램 임베딩 처리(Trigram embedding)를 수행하여 상기 RNN-LSTM의 LSTM 메모리로 전달한 후, 각 LSTM 메모리에서 출력된 벡터값을 조합하여 히든 레이어로 전달하는 과정을 수행한다.According to an aspect of the present invention, there is provided an apparatus for providing nationality information based on an artificial neural network, including a memory storing a national information providing program, a data input / output module for performing data input / . At this time, the nationality information providing program is driven by the processor, and predicts the nationality of the subject based on the name of the subject inputted through the data input / output module. The national information providing program is a Recurrent Neural Network-Long (RNN-LSTM) A short-term memory), which provides the nationality having the highest probability of classification of the name of the input subject, as an output value, and a unit gram, which decomposes the name of the subject in one- (Unicam) embedding process, a bigram embedding process in which two characters are decomposed and vectorized according to an input sequence, and a trigram embedding process in which three characters are decomposed and vectorized according to an input sequence, -LSTM memory, and then combines the vector values output from each LSTM memory to generate And transmits them to all layers.
그리고, 본 발명의 다른 측면에 따른 인공 신경망에 기반하여 국적 정보를 제공하는 방법은 분류 대상인 이름 데이터를 수신하는 단계; 수신된 이름 데이터를 캐릭터 임베딩하는 단계; 상기 캐릭터 임베딩된 데이터를 RNN-LSTM(Recurrent Neural Network-Long Short Term Memory)의 LSTM 메모리로 전달하는 단계; 상기 LSTM 메모리에서 출력된 벡터값을 조합하여 히든 레이어로 전달하는 하는 단계; 및 상기 히든 레이어를 통해 산출된 확률값에 따라 상기 이름 데이터에 대한 국적 정보를 예측하는 단계를 포함한다. 이때, 상기 캐릭터 임베딩하는 단계는, 상기 대상자의 이름을 입력순서에 따라 한글자씩 분해하여 벡터화하는 유니그램 임베딩 처리(unigram embedding), 입력순서에 따라 두글자씩 분해하여 벡터화하는 바이그램 임베딩 처리(Bigram embedding) 및 입력순서에 따라 세글자씩 분해하여 벡터화하는 트라이그램 임베딩 처리(Trigram embedding) 를 수행하는 것이다.According to another aspect of the present invention, there is provided a method of providing nationality information based on an artificial neural network, comprising: receiving name data to be classified; Embedding the received name data into a character; Transferring the character-embedded data to an LSTM memory of a RNN-LSTM (Recurrent Neural Network-Long Short Term Memory); Combining vector values output from the LSTM memory and transmitting the vector values to a hidden layer; And predicting nationality information on the name data according to the probability value calculated through the hidden layer. At this time, the step of embedding the characters may include a unigram embedding process of decomposing and naming the names of the subjects by one character according to the input order, a biram embedding process of decomposing and vectorizing the two characters according to the input sequence ), And trigram embedding in which three characters are decomposed and vectorized according to the input order.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 사람의 이름으로부터 국적을 예측하는 인공 신경망의 성능을 보다 향상시킬 수 있다. 특히, 이름에 대하여 유니그램 임베딩, 바이그램 임베딩 및 트라이그램 임베딩등 캐릭터 임베딩을 수행하고 이를 RNN-LSTM 구조의 인경 신경망에 입력함에 따라 학습 및 분류 성능을 향상시킬 수 있다.According to any one of the above-mentioned objects of the present invention, the performance of an artificial neural network that predicts nationality from a person's name can be further improved. In particular, learning and classification performance can be improved by performing character embedding such as unigram embedding, bi-gram embedding, and trigram embedding on a name, and inputting the characters into the RNN-LSTM structured neural network.
도 1은 본 발명의 일 실시예에 따른 국적 정보 제공 장치의 구성도이다.
도 2는 본 발명의 일 실시예에 따른 인공 신경망 모델의 구성을 설명하기 위한 도면이다.
도 3은 본 발명의 일 실시예에 따른 이름에 기반한 국적 정보 제공 방법을 도시한 순서도이다.1 is a configuration diagram of a nationality information providing apparatus according to an embodiment of the present invention.
2 is a view for explaining a configuration of an artificial neural network model according to an embodiment of the present invention.
3 is a flowchart illustrating a method of providing nationality information based on a name according to an embodiment of the present invention.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 본 발명을 명확하게 설명하기 위해 도면에서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. 또한, 도면을 참고하여 설명하면서, 같은 명칭으로 나타낸 구성일지라도 도면에 따라 도면 번호가 달라질 수 있고, 도면 번호는 설명의 편의를 위해 기재된 것에 불과하고 해당 도면 번호에 의해 각 구성의 개념, 특징, 기능 또는 효과가 제한 해석되는 것은 아니다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings, which will be readily apparent to those skilled in the art. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. In order to clearly illustrate the present invention, parts not related to the description in the drawings are omitted, and like parts are denoted by similar reference numerals throughout the specification. In the following description with reference to the drawings, the same reference numerals will be used to designate the same names, and the reference numerals are merely for convenience of description, and the concepts, features, and functions Or the effect is not limited to interpretation.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미하며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Throughout the specification, when a part is referred to as being "connected" to another part, it includes not only "directly connected" but also "electrically connected" with another part in between . Also, when a component is referred to as " comprising ", it is understood that it may include other components as well as other components, But do not preclude the presence or addition of a feature, a number, a step, an operation, an element, a component, or a combination thereof.
본 명세서에 있어서 '부(部)' 또는 '모듈'이란, 하드웨어 또는 소프트웨어에 의해 실현되는 유닛(unit), 양방을 이용하여 실현되는 유닛을 포함하며, 하나의 유닛이 둘 이상의 하드웨어를 이용하여 실현되어도 되고, 둘 이상의 유닛이 하나의 하드웨어에 의해 실현되어도 된다.Herein, the term " part " or " module " means a unit realized by hardware or software, a unit realized by using both, and a unit realized by using two or more hardware Or two or more units may be realized by one hardware.
도 1은 본 발명의 일 실시예에 따른 국적 정보 제공 장치의 구성도이다.1 is a configuration diagram of a nationality information providing apparatus according to an embodiment of the present invention.
도 1에 도시된 국적 정보 제공 장치(100)는 데이터 입출력모듈(110), 메모리(120) 및 프로세서(130)를 포함한다. The
데이터 입출력모듈(110)은 통신 모듈을 통해 데이터를 수신 또는 송신하는 기능을 수행할 수 있다. 데이터 입출력 모듈(110)은 다른 네트워크 장치와 유무선 연결을 통해 제어 신호 또는 데이터 신호와 같은 신호를 송수신하기 위해 필요한 하드웨어 및 소프트웨어를 포함하는 장치일 수 있다.The data input /
메모리(120)에는 사용자의 이름 정보로부터 사용자의 국적을 예측하는 프로그램이 저장된다. 해당 프로그램은 사용자의 이름 정보를 수집하여 학습하고, 입력된 사용자 이름의 국적 정보를 예측하는 분류 처리를 수행하는 인공 신경망에 기반하여 구현된 것으로서, 프로세서(130)에 의하여 실행되어, 학습 기능과 분류 기능등을 수행한다. The
이러한 메모리(120)는 전원이 공급되지 않아도 저장된 정보를 계속 유지하는 비휘발성 저장장치 또는 저장된 정보를 유지하기 위하여 전력이 필요한 휘발성 저장장치를 통칭하는 것이다. This
도 2는 본 발명의 일 실시예에 따른 인공 신경망 모델의 구성을 설명하기 위한 도면이다.2 is a view for explaining a configuration of an artificial neural network model according to an embodiment of the present invention.
본 발명에서는 일반적으로 알려진 RNN-LSTM(Recurrent Neural Network-Long Short Term Memory)에 기반하여 국적 확인 서비스를 제공한다. RNN은 이전의 정보를 공유하여 활용할 수 있는 구조로서 시계열적으로 연속된 데이터를 학습하는데 적합한 신경망 구조로 알려져 있으나, 각 데이터들 사이에 시간적인 갭이 길어지면 이들을 작 기억하지 못하는 장기 의존성(Long Term Dependency) 문제가 있는것으로 알려졌으며, 이를 개량하기 위해 RNN-LSTM 기법이 개발되었다. RNN-LSTM은 기존 RNN 기법에서 그라디언트가 소실(vanishing) 또는 발산(exploding) 하는 문제를 해결하고, 역전파(backpropagation) 과정에서 오차의 값을 더 잘 전달하는 것으로 알려져 있다. LSTM은 길이가 긴 시계열적으로 연결된 데이터의 표현을 학습하기 위해 주로 사용되며, 입력 게이트(Input Gate), 출력 게이트(Output Gate), 포겟(Forget Gate)라는 세가지 게이트로 구성된 메모리 블록으로 대체한 구조를 갖는다. LSTM은 메모리 c와 상태 h 를 활용하여 기존의 RNN 보다 더 긴 데이터의 표현을 학습 할 수 있는 것으로 알려져 있다 .LSTM 블록의 상세한 구성과 그 동작에 대한 내용은 종래에 알려진 것과 동일하므로 이에 대한 상세한 설명은 생략하기로 한다. The present invention provides a nationality confirmation service based on a known RNN-LSTM (Recurrent Neural Network-Long Short Term Memory). RNN is known as a neural network structure that can be used to share previous information, and is suitable for learning time series data. However, if the time gap between each data becomes longer, The RNN-LSTM technique has been developed to improve this problem. The RNN-LSTM is known to solve the problem of vanishing or exploding a gradient in existing RNN techniques and to better convey the error value in the backpropagation process. LSTM is mainly used to learn the representation of long-lived, clock-chronologically connected data. It is replaced by a memory block consisting of three gates: Input Gate, Output Gate and Forget Gate. . The LSTM is known to be able to learn the representation of data longer than the existing RNN by utilizing memory c and state h. The details of the LSTM block and its operation are the same as those known in the prior art, Is omitted.
본 발명에서는 입력된 이름에 대하여 캐릭터 임베딩을 수행한 후 이를 각각의 LSTM 모듈에 입력하는 것에 기술적 특징이 있다.In the present invention, there is a technical feature that character embedding is performed with respect to the input name, and the character is input to each LSTM module.
즉, 입력된 이름을 입력순서에 따라 한글자씩 분해하여 전달하는 유니그램 임베딩 처리(unigram embedding, 202), 입력순서에 따라 두글자씩 분해하여 전달하는 바이그램 임베딩 처리(Bigram embedding, 204), 입력순서에 따라 세글자씩 분해하여 전달하는 트라이그램 임베딩 처리(Trigram embedding, 206)를 각각 수행한다.In other words, unigram embedding 202 for decomposing and delivering the input names one by one according to the input order, Bigram embedding 204 for decomposing and delivering two characters according to the input order, And trigram embedding 206 for decomposing and delivering three characters in accordance with the number of characters.
입력된 이름 X = [x_0, x_1, ... ,x_(n-1)] 이 주어졌다고 할 때 x_k 는 이름의 각 글자를 의미한다. 여기서 x_k 는 유니그램이거나, 바이그램 또는 트라이그램 일 수 있다. 예를 들어, 입력된 데이터가 "James"라고 할때, 유니그램 임베딩 처리에 따라 [J, a, m, e, s]로 X를 표현할 수도, 바이그램 임베딩 처리에 따라 [Ja, am, me, es]로 X를 표현할 수 있으며, 트라이그램 임베딩 처리에 따라 [Jam, ame, mes]로 X를 표현할 수 도 있다. 이와 같이, 유니그램, 바이그램 또는 트라이그램의 표현력을 높이기 위해 조금 더 차원이 낮은 벡터로 표현할 수 있으며, 이를 캐릭터 임베딩 (character embedding) 도는 분산 표현(distributed representation)이라고 한다. 본 발명에서는 입력된 이름 데이터를 각각 유니그램, 바이그램 및 트라이그램으로 분해하고, 이를 벡터로서 표현하는 유니그램 임베딩, 바이그램 임베딩 및 트라이그램 임베딩 처리를 수행한다. 이렇게 캐릭터 임베딩 처리되는 각각의 벡터들은 별도의 LSTM을 거쳐 3개의 상태(h)로 획득되며, 본 발명에서는 각각의 상태(h)를 하나의 긴 벡터로 연결(concatenate, 208) 시켜 히든 레이어와 소프트 맥스 레이어(softmax layer)를 거쳐, 입력 데이터가 특정 국가의 분류에 속할 확률값(수학식 1)을 산출하게 된다. Given an input name X = [x_0, x_1, ..., x_ (n-1)], x_k means each letter of the name. Where x_k may be a unigram, a biagram or a trigram. For example, when the input data is "James", X can be expressed as [J, a, m, e, s] according to the unigram embedding process, es], and X can be expressed as [Jam, ame, mes] according to the trigram embedding process. Thus, in order to enhance the expressiveness of a uniagram, a biagram or a trigram, it is possible to express the vector with a lower dimension, which is called character embedding or distributed representation. In the present invention, the input name data is decomposed into a unigram, a biagram, and a trigram, respectively, and unigram embedding, a biagram embedding, and a trigram embedding processing for expressing the data as a vector are performed. Each of the vectors embedded in the character is processed in three states (h) via a separate LSTM. In the present invention, each state h is concatenated (208) into one long vector, Through the maxma layer, a probability value (Equation 1) in which the input data belongs to the classification of a specific country is calculated.
한편, 국적에 따라 이름을 분류하는 분류모델은 아래 수식에 따른 조건부 확률을 최대화하도록 학습된다.On the other hand, classification models that classify names according to nationality are learned to maximize the conditional probability according to the following equation.
[수학식 1] [Equation 1]
여기서 는 해당 이름의 국적(또는 인종) 정보이며, D( )는 θ라는 학습 파라메터를 갖고 있는 분류 모델이며, g( )는 특징(feature)을 추출하기 위한 함수이다. 이때, 국적은 127개 정도의 경우의 수가 존재하지만 인종은 13 개 정도로 그 수가 현저히 줄어들기 때문에, 국적을 정확하게 분류하는 것이 더욱 어려운 문제에 해당한다. here Is a nationality (or race) information of the name, D () is a classification model with a learning parameter θ, and g () is a function for extracting features. At this time, the number of nationalities is about 127, but since the number of races is about 13, the number of nationalities is more difficult to classify correctly.
보다 구체적으로 살펴보면, RNN 기법에 따라 히든 상태(h)는 수학식 2와 같이 정의될 수 있다.More specifically, according to the RNN scheme, the hidden state (h) can be defined as Equation (2).
[수학식 2]&Quot; (2) "
는 l 번째 레이어에서의 시간 구간 t 에서의 RNN의 히든 상태를 나타내는 것이다. , 및 는 학습해야할 파라미터를 나타내고, 는 기본 시그모이드(sigmoid) 함수를 나타낸다. 또한, 각 국적 클래스에 대한 확은은 아래 수학식 3과 같이 정의될 수 있다. Represents the hidden state of the RNN at the time interval t in the lth layer. , And Indicates a parameter to be learned, Represents a basic sigmoid function. In addition, The magnitude of the class can be defined as shown in Equation 3 below.
[수학식 3]&Quot; (3) "
이때, 와 는 훈련가능한 파라미터들이다. 이러한 RNN 기반의 학습모델에 앞서 소개한 LSTM 모델을 병합하면 다음 수학식 4와 같이 구현될 수 있다.At this time, Wow Are trainable parameters. If the LSTM model introduced before the RNN-based learning model is merged, it can be implemented as the following Equation (4).
[수학식 4]&Quot; (4) "
와 는 훈련가능한 파라미터들이고, 는 행렬 요소별(element wise) 곱을 나타낸다. 또한, 장기 메모리(Long Term memory)는 입력 게이트(input gate) i 와 이전 셀 이 저장된 로부터 복원될 수 있고, 포겟 게이트 f 에 업데이트될 수 있다. Wow Are trainable parameters, Represents an element wise product. In addition, a long term memory includes an input gate i, This stored And can be updated to forget gate f.
위와 같은 과정을 통해 최종적으로 획득된 확률은 크로스 엔트로피(cross entropy)기법을 통해 음의 로그 우도(negative log likelihood (NLL))를 계산하는 데에 활용되며, 이 NLL을 최소화 하도록 분류 모델을 학습하면 해당 확률을 최대화하는 모델을 학습할 수 있다. Finally, the probability obtained through the above procedure is used to calculate the negative log likelihood (NLL) through the cross entropy technique. Learning the classification model to minimize this NLL It is possible to learn a model that maximizes the probability.
예를 들어, 아래 수학식 5와 같은 크로스 엔트로피 손실 함수 를 통해 해당 확률이 최대화도록 한다.For example, the cross entropy loss function < RTI ID = 0.0 > So that the probability is maximized.
도 3은 본 발명의 일 실시예에 따른 이름에 기반한 국적 정보 제공 방법을 도시한 순서도이다.3 is a flowchart illustrating a method of providing nationality information based on a name according to an embodiment of the present invention.
먼저, 국적 정보를 확인하고자 하는 이름 정보를 입력 데이터로서 수신한다(S310). 도 1의 국적 정보 제공 장치(100)의 데이터 입출력 모듈(110)을 통해 입력 데이터가 수신되어 저장된다.First, name information for confirming nationality information is received as input data (S310). The input data is received and stored through the data input /
다음으로, 입력된 이름 데이터에 대하여 캐릭터 임베딩을 수행한다(S320).Next, character embedding is performed on the input name data (S320).
본 발명에서는 입력순서에 따라 한글자씩 분해하여 벡터화하는 유니그램 임베딩 처리(unigram embedding), 입력순서에 따라 두글자씩 분해하여 벡터화하는 바이그램 임베딩 처리(Bigram embedding) 및 입력순서에 따라 세글자씩 분해하여 벡터화하는 트라이그램 임베딩 처리(Trigram embedding)를 수행한다.In the present invention, unigram embedding is performed by decomposing and vectorizing one character according to the input order, Bigram embedding processing for decomposing and vectorizing two characters according to the input order, and decomposing the three characters according to the input order And performs trigram embedding processing for vectorization.
다음으로, 이와 같이 캐릭터 임베딩된 데이터는 LSTM으로 각각 입력되고, LSTM에서 출력된 값을 연결하여 하나의 벡터를 생성한다(S330).Next, the character-embedded data is input to the LSTM, and the values output from the LSTM are concatenated to generate a single vector (S330).
생성된 백터는 히든 레이터로 전달되어, 이를 기반으로 어느 국가에 가장 적합한지를 나타내는 확률값이 산출된다(S340).The generated vector is transmitted to the hidden printer, and a probability value indicating which country is most suitable is calculated based on the generated vector (S340).
위와 같이, 캐릭터 임베딩을 여러 단계에 걸쳐 수행함으로써 RNN-LSTM학습 모델을 보다 정교하게 설계할 수 있으며, 이을 통해 사람의 이름만으로 국적을 추정하는 서비스의 정확성을 더욱 향상시킬 수 있다. As described above, character embedding is performed in several stages, so that the RNN-LSTM learning model can be designed more precisely, and the accuracy of the service for estimating the nationality by only the name of a person can be further improved.
이상에서 설명한 본 발명의 실시예에 따른 국적 정보 제공 장치 및 방법은, 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 이러한 기록 매체는 컴퓨터 판독 가능 매체를 포함하며, 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 포함하며, 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. The apparatus and method for providing nationality information according to the embodiments of the present invention described above can be implemented in the form of a recording medium including instructions executable by a computer such as a program module executed by a computer. Such a recording medium includes a computer-readable medium, which may be any available medium that can be accessed by a computer, and includes both volatile and non-volatile media, both removable and non-removable media. The computer-readable medium may also include computer storage media, which may be volatile and non-volatile, implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data , Both removable and non-removable media.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.It will be understood by those skilled in the art that the foregoing description of the present invention is for illustrative purposes only and that those of ordinary skill in the art can readily understand that various changes and modifications may be made without departing from the spirit or essential characteristics of the present invention. will be. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive. For example, each component described as a single entity may be distributed and implemented, and components described as being distributed may also be implemented in a combined form.
또한, 본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수도 있다.Furthermore, while the methods and systems of the present invention have been described in terms of specific embodiments, some or all of those elements or operations may be implemented using a computer system having a general purpose hardware architecture.
본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.It is intended that the present invention covers the modifications and variations of this invention provided they come within the scope of the appended claims and their equivalents. .
100: 국적 정보 제공 장치
110: 데이터 입출력 모듈
120: 메모리
30: 프로세서100: Nationality information providing apparatus 110: Data input / output module
120: memory 30: processor
Claims (4)
국적 정보 제공 프로그램이 저장된 메모리,
데이터 입출력을 수행하는 데이터 입출력 모듈 및
프로세서를 포함하되,
상기 국적 정보 제공 프로그램은 상기 프로세서에 의하여 구동되어, 상기 데이터 입출력 모듈을 통해 입력된 대상자의 이름에 기초하여 대상자의 국적을 예측하되, 상기 국적 정보 제공 프로그램은 RNN-LSTM(Recurrent Neural Network-Long Short Term Memory)에 기반한 학습 모델에 기초하여, 상기 입력된 대상자의 이름이 분류될 확률이 가장 높은 국적을 출력값으로 제공하는 것이고,
상기 대상자의 이름을 입력순서에 따라 한글자씩 분해하여 벡터화하는 유니그램 임베딩 처리(unigram embedding), 입력순서에 따라 두글자씩 분해하여 벡터화하는 바이그램 임베딩 처리(Bigram embedding) 및 입력순서에 따라 세글자씩 분해하여 벡터화하는 트라이그램 임베딩 처리(Trigram embedding)를 수행하여 상기 RNN-LSTM의 LSTM 메모리로 전달한 후, 각 LSTM 메모리에서 출력된 벡터값을 조합하여 히든 레이어로 전달하는 것인 국적 정보 제공 장치.An apparatus for providing nationality information based on an artificial neural network,
A memory in which the nationality information providing program is stored,
A data input / output module for performing data input / output and
≪ / RTI >
Wherein the nationality information providing program is driven by the processor and predicts the nationality of the subject based on the name of the subject inputted through the data input / output module, wherein the nationality information providing program is an RNN-LSTM (Recurrent Neural Network-Long Term memory is based on a learning model based on a term memory,
A unigram embedding process for decomposing and naming the names of the subjects one by one according to the input order, a bigram embedding process for decomposing and vectorizing the two characters according to the input sequence, and a three- Tristimulation embedding processing for decomposing and vectorizing the LSTM memories, and transferring the vector values output from the LSTM memories to the hidden layer after combining the vector values outputted from the LSTM memories.
상기 프로세서는 상기 유니그램 임베딩 처리된 후 상기 LSTM 메모리에서 출력된 값, 상기 바이그램 임베딩 처리된 후 상기 LSTM 메모리에서 출력된 값 및 상기 트라이그램 임베딩 처리된 후 상기 LSTM 메모리에서 출력된 값을 조합하여 생성된 벡터값을 상기 히든 레이어로 전달하고, 상기 히든 레이어에서는 국적에 따라 이름을 분류하는 분류모델에 기초하여 상기 벡터값이 소정의 국적으로 분류될 조건부 확률을 산출하며, 상기 산출된 조건부 확률이 최대가 되도록 학습 동작을 수행하는 것인 국적 정보 제공 장치.The method according to claim 1,
The processor combines the value output from the LSTM memory after the uniagram embedding process, the value output from the LSTM memory after the bi-gram embedding process, and the value output from the LSTM memory after the trigram embedding process And the hidden layer calculates a conditional probability that the vector value is classified into a predetermined nationality based on a classification model for classifying names according to nationality, and the calculated conditional probability is a maximum And the learning operation is performed so that the learning operation is performed.
분류 대상인 이름 데이터를 수신하는 단계;
수신된 이름 데이터를 캐릭터 임베딩하는 단계;
상기 캐릭터 임베딩된 데이터를 RNN-LSTM(Recurrent Neural Network-Long Short Term Memory)의 LSTM 메모리로 전달하는 단계;
상기 LSTM 메모리에서 출력된 벡터값을 조합하여 히든 레이어로 전달하는 하는 단계; 및
상기 히든 레이어를 통해 산출된 확률값에 따라 상기 이름 데이터에 대한 국적 정보를 예측하는 단계를 포함하되,
상기 캐릭터 임베딩하는 단계는,
상기 대상자의 이름을 입력순서에 따라 한글자씩 분해하여 벡터화하는 유니그램 임베딩 처리(unigram embedding), 입력순서에 따라 두글자씩 분해하여 벡터화하는 바이그램 임베딩 처리(Bigram embedding) 및 입력순서에 따라 세글자씩 분해하여 벡터화하는 트라이그램 임베딩 처리(Trigram embedding) 를 수행하는 것인 국적 정보 제공 방법.A method for providing nationality information based on an artificial neural network,
Receiving name data to be classified;
Embedding the received name data into a character;
Transferring the character-embedded data to an LSTM memory of a RNN-LSTM (Recurrent Neural Network-Long Short Term Memory);
Combining vector values output from the LSTM memory and transmitting the vector values to a hidden layer; And
And predicting nationality information on the name data according to a probability value calculated through the hidden layer,
Wherein the character embedding comprises:
A unigram embedding process for decomposing and naming the names of the subjects one by one according to the input order, a bigram embedding process for decomposing and vectorizing the two characters according to the input sequence, and a three- And performing trigram embedding processing for decomposing and vectorizing the localized information.
상기 산출된 확률값이 최대가 되도록 학습 동작을 수행하는 단계를 더 포함하는 국적 정보 제공 방법.The method of claim 3,
And performing a learning operation such that the calculated probability value is maximized.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170147399A KR102051085B1 (en) | 2017-11-07 | 2017-11-07 | Device and method for providing nationality information of user name using neural networks |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170147399A KR102051085B1 (en) | 2017-11-07 | 2017-11-07 | Device and method for providing nationality information of user name using neural networks |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190051574A true KR20190051574A (en) | 2019-05-15 |
KR102051085B1 KR102051085B1 (en) | 2019-12-02 |
Family
ID=66579488
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170147399A KR102051085B1 (en) | 2017-11-07 | 2017-11-07 | Device and method for providing nationality information of user name using neural networks |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102051085B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110135566A (en) * | 2019-05-21 | 2019-08-16 | 四川长虹电器股份有限公司 | Registration user name detection method based on bis- Classification Neural model of LSTM |
-
2017
- 2017-11-07 KR KR1020170147399A patent/KR102051085B1/en active IP Right Grant
Non-Patent Citations (5)
Title |
---|
Ambekar 외 5명. Name-ethnicity classification from open sources. 2009년 * |
Fiscella 외 2명. Use of geocoding and surname analysis to estimate race and ethnicity. 2006년 * |
J. Andrew Harris. What's in a Name? A Method for Extracting Information about Ethnicity from Names. 2015년 * |
Sean Robertson. Classifying Names with a Character-Level RNN. 2017.10.29. * |
중국공개특허 제106600283호(Method and system for identifying the name nationalities as well as method and system for determining transaction risk) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110135566A (en) * | 2019-05-21 | 2019-08-16 | 四川长虹电器股份有限公司 | Registration user name detection method based on bis- Classification Neural model of LSTM |
Also Published As
Publication number | Publication date |
---|---|
KR102051085B1 (en) | 2019-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20180349350A1 (en) | Artificial intelligence based method and apparatus for checking text | |
CN111523640B (en) | Training method and device for neural network model | |
CN111046027B (en) | Missing value filling method and device for time series data | |
WO2019232772A1 (en) | Systems and methods for content identification | |
CN110598070B (en) | Application type identification method and device, server and storage medium | |
CN110555469A (en) | Method and device for processing interactive sequence data | |
CN111950295A (en) | Method and system for training natural language processing model | |
CN115130711A (en) | Data processing method and device, computer and readable storage medium | |
CN113379045B (en) | Data enhancement method and device | |
CN116057542A (en) | Distributed machine learning model | |
CN117079299A (en) | Data processing method, device, electronic equipment and storage medium | |
CN113408507B (en) | Named entity identification method and device based on resume file and electronic equipment | |
CN113128526B (en) | Image recognition method and device, electronic equipment and computer-readable storage medium | |
CN113742590A (en) | Recommendation method and device, storage medium and electronic equipment | |
CN113158030A (en) | Method and device for recommending different-place interest points, electronic equipment and storage medium | |
KR20190051574A (en) | Device and method for providing nationality information of user name using neural networks | |
CN114792097B (en) | Method and device for determining prompt vector of pre-training model and electronic equipment | |
CN116401522A (en) | Financial service dynamic recommendation method and device | |
CN116910341A (en) | Label prediction method and device and electronic equipment | |
CN116956102A (en) | Classification model training method, device, equipment, storage medium and program product | |
US20220215287A1 (en) | Self-supervised pretraining through text alignment | |
CN114398482A (en) | Dictionary construction method and device, electronic equipment and storage medium | |
CN114547308A (en) | Text processing method and device, electronic equipment and storage medium | |
CN111831818A (en) | Text information identification method, text information identification device and storage medium | |
Hikmaturokhman et al. | Deep Learning Algorithm Models for Spam Identification on Cellular Short Message Service. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |