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 PDF

Info

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
Application number
KR1020170147399A
Other languages
Korean (ko)
Other versions
KR102051085B1 (en
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 KR1020170147399A priority Critical patent/KR102051085B1/en
Publication of KR20190051574A publication Critical patent/KR20190051574A/en
Application granted granted Critical
Publication of KR102051085B1 publication Critical patent/KR102051085B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, 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

The present invention relates to a device for providing nationality information of a name by using an artificial neural network, which is capable of improving learning and classification performance in a process of estimating and providing the nationality information, and a method thereof. According to one embodiment of the present invention, the device for providing nationality information based on an artificial neural network comprises: a memory storing a nationality information providing program; a data input/output module performing data input/output; and a processor. The nationality information providing program is executed by the processor to estimate the nationality of a person based on a name of the person inputted through the data input/output module. The nationality information providing program outputs the nationality with the highest probability to classify the inputted name of the person thereinto as an output value based on a recurrent neural network-long short term memory (RNN-LSTM)-based learning model. Moreover, the nationality information providing program performs a unigram embedding process of decomposing and vectorizing every character included in the name of the person in accordance with input order, a bigram embedding process of decomposing and vectorizing every two characters included in the name of a person in accordance with the input order, and a trigram embedding process of decomposing and vectorizing every three characters included in the name of the person in accordance with the input order, transfers a processing result to an LSTM memory of the RNN-LSTM, combines vector values outputted from each LSTM memory, and transfers the combined vector value to a hidden layer.

Description

인공 신경망을 이용하여 이름에 대한 국적 정보를 제공하는 장치 및 방법{DEVICE AND METHOD FOR PROVIDING NATIONALITY INFORMATION OF USER NAME USING NEURAL NETWORKS} TECHNICAL FIELD [0001] The present invention relates to a device and method for providing nationality information on a name using an artificial neural network,

본 발명은 뉴럴 네트워크 구조를 이용하여 사람의 이름으로부터 그 사람의 국적을 예측할 수 있는 국적 분류 방법 및 장치에 관한 것이다.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.

중국공개특허 제106600283호(Method and system for identifying the name nationalities as well as method and system for determining transaction risk)Chinese Patent Application No. 106600283 (Method and system for identifying the nationalities as well as method for determining transaction risk)

본 발명의 일 실시예는 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 순환 신경망에 기반하여 이름의 국적 정보를 예측하여 제공하는 과정에서 학습과 분류 성능을 향상할 수 있는 국적 정보 제공 장치 및 방법을 제공하고자 한다.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 apparatus 100 for providing nationality information shown in FIG. 1 includes a data input / output module 110, a memory 120, and a processor 130.

데이터 입출력모듈(110)은 통신 모듈을 통해 데이터를 수신 또는 송신하는 기능을 수행할 수 있다. 데이터 입출력 모듈(110)은 다른 네트워크 장치와 유무선 연결을 통해 제어 신호 또는 데이터 신호와 같은 신호를 송수신하기 위해 필요한 하드웨어 및 소프트웨어를 포함하는 장치일 수 있다.The data input / output module 110 may perform a function of receiving or transmitting data through a communication module. The data input / output module 110 may be a device including hardware and software necessary to transmit and receive signals such as a control signal or a data signal through a wired or wireless connection with other network devices.

메모리(120)에는 사용자의 이름 정보로부터 사용자의 국적을 예측하는 프로그램이 저장된다. 해당 프로그램은 사용자의 이름 정보를 수집하여 학습하고, 입력된 사용자 이름의 국적 정보를 예측하는 분류 처리를 수행하는 인공 신경망에 기반하여 구현된 것으로서, 프로세서(130)에 의하여 실행되어, 학습 기능과 분류 기능등을 수행한다. The memory 120 stores a program for predicting the nationality of the user from the name information of the user. The program is implemented based on an artificial neural network that collects and learns user name information and performs classification processing for predicting the nationality information of the inputted user name, and is executed by the processor 130, Function and so on.

이러한 메모리(120)는 전원이 공급되지 않아도 저장된 정보를 계속 유지하는 비휘발성 저장장치 또는 저장된 정보를 유지하기 위하여 전력이 필요한 휘발성 저장장치를 통칭하는 것이다. This memory 120 is collectively referred to as a non-volatile storage device that keeps stored information even when power is not supplied, or a volatile storage device that requires power to maintain stored information.

도 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]

Figure pat00001
Figure pat00001

여기서

Figure pat00002
는 해당 이름의 국적(또는 인종) 정보이며, D( )는 θ라는 학습 파라메터를 갖고 있는 분류 모델이며, g( )는 특징(feature)을 추출하기 위한 함수이다. 이때, 국적은 127개 정도의 경우의 수가 존재하지만 인종은 13 개 정도로 그 수가 현저히 줄어들기 때문에, 국적을 정확하게 분류하는 것이 더욱 어려운 문제에 해당한다. here
Figure pat00002
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) "

Figure pat00003
Figure pat00003

Figure pat00004
는 l 번째 레이어에서의 시간 구간 t 에서의 RNN의 히든 상태를 나타내는 것이다.
Figure pat00005
,
Figure pat00006
Figure pat00007
는 학습해야할 파라미터를 나타내고,
Figure pat00008
는 기본 시그모이드(sigmoid) 함수를 나타낸다. 또한, 각 국적
Figure pat00009
클래스에 대한 확은은 아래 수학식 3과 같이 정의될 수 있다.
Figure pat00004
Represents the hidden state of the RNN at the time interval t in the lth layer.
Figure pat00005
,
Figure pat00006
And
Figure pat00007
Indicates a parameter to be learned,
Figure pat00008
Represents a basic sigmoid function. In addition,
Figure pat00009
The magnitude of the class can be defined as shown in Equation 3 below.

[수학식 3]&Quot; (3) "

Figure pat00010
Figure pat00010

Figure pat00011
Figure pat00011

이때,

Figure pat00012
Figure pat00013
는 훈련가능한 파라미터들이다. 이러한 RNN 기반의 학습모델에 앞서 소개한 LSTM 모델을 병합하면 다음 수학식 4와 같이 구현될 수 있다.At this time,
Figure pat00012
Wow
Figure pat00013
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) "

Figure pat00014
Figure pat00014

Figure pat00015
Figure pat00016
는 훈련가능한 파라미터들이고,
Figure pat00017
는 행렬 요소별(element wise) 곱을 나타낸다. 또한, 장기 메모리(Long Term memory)는 입력 게이트(input gate) i 와 이전 셀
Figure pat00018
이 저장된
Figure pat00019
로부터 복원될 수 있고, 포겟 게이트 f 에 업데이트될 수 있다.
Figure pat00015
Wow
Figure pat00016
Are trainable parameters,
Figure pat00017
Represents an element wise product. In addition, a long term memory includes an input gate i,
Figure pat00018
This stored
Figure pat00019
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와 같은 크로스 엔트로피 손실 함수

Figure pat00020
를 통해 해당 확률이 최대화도록 한다.For example, the cross entropy loss function < RTI ID = 0.0 >
Figure pat00020
So that the probability is maximized.

Figure pat00021
Figure pat00021

도 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 / output module 110 of the national information providing apparatus 100 of FIG.

다음으로, 입력된 이름 데이터에 대하여 캐릭터 임베딩을 수행한다(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.
제 1 항에 있어서,
상기 프로세서는 상기 유니그램 임베딩 처리된 후 상기 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.
제 3 항에 있어서,
상기 산출된 확률값이 최대가 되도록 학습 동작을 수행하는 단계를 더 포함하는 국적 정보 제공 방법.
The method of claim 3,
And performing a learning operation such that the calculated probability value is maximized.
KR1020170147399A 2017-11-07 2017-11-07 Device and method for providing nationality information of user name using neural networks KR102051085B1 (en)

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)

* Cited by examiner, † Cited by third party
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

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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