KR102051085B1 - 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
KR102051085B1
KR102051085B1 KR1020170147399A KR20170147399A KR102051085B1 KR 102051085 B1 KR102051085 B1 KR 102051085B1 KR 1020170147399 A KR1020170147399 A KR 1020170147399A KR 20170147399 A KR20170147399 A KR 20170147399A KR 102051085 B1 KR102051085 B1 KR 102051085B1
Authority
KR
South Korea
Prior art keywords
nationality
nationality information
lstm
embedding
name
Prior art date
Application number
KR1020170147399A
Other languages
Korean (ko)
Other versions
KR20190051574A (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)
  • Machine Translation (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명의 일 측면에 따른 인공 신경망에 기반하여 국적 정보를 제공하는 장치는 국적 정보 제공 프로그램이 저장된 메모리, 데이터 입출력을 수행하는 데이터 입출력 모듈 및 프로세서를 포함한다. 이때, 국적 정보 제공 프로그램은 상기 프로세서에 의하여 구동되어, 상기 데이터 입출력 모듈을 통해 입력된 대상자의 이름에 기초하여 대상자의 국적을 예측하되, 상기 국적 정보 제공 프로그램은 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 according to an aspect of the present invention includes a memory in which a nationality information providing program is stored, a data input / output module for performing data input / output, and a processor. At this time, a nationality information providing program is driven by the processor to predict the nationality of the subject based on the subject's name input through the data input / output module, but the nationality information providing program is RNN-LSTM (Recurrent Neural Network-Long). Based on a learning model based on Short Term Memory, a unigram that provides a nationality having the highest probability that the inputted subject's name is classified as an output value, and decomposes the subject's name in alphabetical order according to the input order. The RNN is performed by unigram embedding, bigram embedding to decompose and vectorize two letters according to an input order, and trigram embedding to decompose and vectorize three letters according to an input order. -After transferring to LSTM memory of LSTM, combine the vector value output from each LSTM memory. Perform the process of transferring to all layers.

Description

인공 신경망을 이용하여 이름에 대한 국적 정보를 제공하는 장치 및 방법{DEVICE AND METHOD FOR PROVIDING NATIONALITY INFORMATION OF USER NAME USING NEURAL NETWORKS} DEVICE AND METHOD FOR PROVIDING NATIONALITY INFORMATION OF USER NAME USING NEURAL NETWORKS}

본 발명은 뉴럴 네트워크 구조를 이용하여 사람의 이름으로부터 그 사람의 국적을 예측할 수 있는 국적 분류 방법 및 장치에 관한 것이다.The present invention relates to a nationality 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 have been provided through web sites or applications of smart terminals, and companies are actively making efforts to provide optimal services for each user through big data. Particularly, if a user's nationality can be predicted only by the name without requesting additional information from the user, a study for this can be provided since it is possible to provide a customized service more suitable to an individual user.

일반적으로 사람의 이름은 그 국적별로 자주 사용되는 패턴을 가지고 있기 때문에, 이름만으로도 대략적인 국적의 확인 또는 예측이 가능하다. 예를 들면, 러시아 인들의 경우 “-스키(sky)”, “-프(v)” 등의 접미사가 자주 등장하고, 독일인등의 경우”-만(mann)”, “-우르그(urg)” 등의 접미사가 자주 등장하므로, 이를 근거로 대략적인 국적의 예측이 가능하다. In general, since a person's name has a pattern frequently used for each nationality, the name alone can roughly identify or predict a nationality. For example, suffixes such as “-sky” and “-v” appear frequently in Russians, and in Germans “-mann” and “-urg”. Suffixes often appear, so approximation of nationality is possible.

이와 같은 국적의 예측을 위한 주요 인자(factor)로서, 첫번째는 국가의 언어가 고려해야할 가장 중요한 인자라는 것, 두번째는 지리적 위치가 유용한 정보를 제공할 수 있다는 것, 세번째는 각 국가의 역사가 결정적인 역할을 할 수 있다는 것이다. As a major factor for the prediction of nationality, the first is that the language of the country is the most important factor to consider, the second is that geographic location can provide useful information, and the third is the decisive role of each country's history. Is that you can.

이와 같은, 여러 가지 고려 사항이 있어 그 이름만으로 국적을 예측하는데 어려움이 있으며, 본 발명에서는 순환 신경망(recurrent neural network)에 기반한 새로운 플랫폼을 통해 이러한 기술적 어려움을 해소하고자 한다.As described above, there are various considerations, so that it is difficult to predict nationality only by its name, and in the present invention, this 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 name nationalities as well as method and system for determining transaction risk)

본 발명의 일 실시예는 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 순환 신경망에 기반하여 이름의 국적 정보를 예측하여 제공하는 과정에서 학습과 분류 성능을 향상할 수 있는 국적 정보 제공 장치 및 방법을 제공하고자 한다.An embodiment of the present invention is to solve the problems of the prior art, a nationality information providing apparatus and method that can improve the learning and classification performance in the process of predicting and providing nationality information of the name based on the cyclic neural network To provide.

다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.However, the technical problem to be achieved by the present embodiment is not limited to the technical problem as described above, 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 메모리에서 출력된 벡터값을 조합하여 히든 레이어로 전달하는 과정을 수행한다.As a technical means for achieving the above-described technical problem, an apparatus for providing nationality information based on an artificial neural network according to an aspect of the present invention includes a memory, a data input / output module and a processor for performing data input / output and a nationality information providing program Include. At this time, a nationality information providing program is driven by the processor to predict the nationality of the subject based on the subject's name input through the data input / output module, but the nationality information providing program is RNN-LSTM (Recurrent Neural Network-Long). Based on a learning model based on Short Term Memory, a unigram that provides a nationality having the highest probability of classifying the inputted subject's name as an output value, and decomposes the subject's name in alphabetical order according to the input order. The RNN is performed by unigram embedding, bigram embedding to decompose and vectorize two letters according to an input order, and trigram embedding to decompose and vectorize three letters according to an input order. -After transferring to LSTM memory of LSTM, combine the vector value output from each LSTM memory. Perform the process of transferring to all layers.

그리고, 본 발명의 다른 측면에 따른 인공 신경망에 기반하여 국적 정보를 제공하는 방법은 분류 대상인 이름 데이터를 수신하는 단계; 수신된 이름 데이터를 캐릭터 임베딩하는 단계; 상기 캐릭터 임베딩된 데이터를 RNN-LSTM(Recurrent Neural Network-Long Short Term Memory)의 LSTM 메모리로 전달하는 단계; 상기 LSTM 메모리에서 출력된 벡터값을 조합하여 히든 레이어로 전달하는 하는 단계; 및 상기 히든 레이어를 통해 산출된 확률값에 따라 상기 이름 데이터에 대한 국적 정보를 예측하는 단계를 포함한다. 이때, 상기 캐릭터 임베딩하는 단계는, 상기 대상자의 이름을 입력순서에 따라 한글자씩 분해하여 벡터화하는 유니그램 임베딩 처리(unigram embedding), 입력순서에 따라 두글자씩 분해하여 벡터화하는 바이그램 임베딩 처리(Bigram embedding) 및 입력순서에 따라 세글자씩 분해하여 벡터화하는 트라이그램 임베딩 처리(Trigram embedding) 를 수행하는 것이다.In addition, the method for providing nationality information based on an artificial neural network according to another aspect of the present invention includes the steps of: receiving name data that is a classification target; Character embedding the received name data; Transferring the character embedded data to a LSTM memory of RNN-LSTM (Recurrent Neural Network-Long Short Term Memory); Combining the vector values output from the LSTM memory and transferring the combined vector values to a hidden layer; And predicting nationality information on the name data according to a probability value calculated through the hidden layer. In this case, the character embedding may include a unigram embedding process of decomposing the subject's name into alphabetical characters according to an input order, and vectorizing the bigram embedding process to decompose and vectorize each character according to the input order. ) And trigram embedding to vectorize and decompose three characters according to the input order.

전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 사람의 이름으로부터 국적을 예측하는 인공 신경망의 성능을 보다 향상시킬 수 있다. 특히, 이름에 대하여 유니그램 임베딩, 바이그램 임베딩 및 트라이그램 임베딩등 캐릭터 임베딩을 수행하고 이를 RNN-LSTM 구조의 인경 신경망에 입력함에 따라 학습 및 분류 성능을 향상시킬 수 있다.According to any one of the problem solving means of the present invention described above, it is possible to further improve the performance of the artificial neural network predicting the nationality from the name of the person. In particular, by performing character embedding such as unigram embedding, bigram embedding, and trigram embedding on the names and inputting them into the ANN neural network of the RNN-LSTM structure, the learning and classification performance can be improved.

도 1은 본 발명의 일 실시예에 따른 국적 정보 제공 장치의 구성도이다.
도 2는 본 발명의 일 실시예에 따른 인공 신경망 모델의 구성을 설명하기 위한 도면이다.
도 3은 본 발명의 일 실시예에 따른 이름에 기반한 국적 정보 제공 방법을 도시한 순서도이다.
1 is a block diagram of a nationality information providing apparatus according to an embodiment of the present invention.
2 is a view for explaining the configuration of an artificial neural network model according to an embodiment of the present invention.
3 is a flowchart illustrating a method for providing nationality information based on a name according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 본 발명을 명확하게 설명하기 위해 도면에서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. 또한, 도면을 참고하여 설명하면서, 같은 명칭으로 나타낸 구성일지라도 도면에 따라 도면 번호가 달라질 수 있고, 도면 번호는 설명의 편의를 위해 기재된 것에 불과하고 해당 도면 번호에 의해 각 구성의 개념, 특징, 기능 또는 효과가 제한 해석되는 것은 아니다.DETAILED DESCRIPTION Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art may easily implement the present invention. As those skilled in the art would realize, the described embodiments may be modified in various different ways, all without departing from the spirit or scope of the present invention. In the drawings, parts irrelevant to the description are omitted in the drawings, and like reference numerals designate like parts throughout the specification. In addition, while describing with reference to the drawings, even if the configuration shown by the same name may be different according to the drawing number, the drawing number is just described for convenience of description and the concept, features, functions of each configuration by the corresponding reference number Or the effects are not to be construed as limiting.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미하며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Throughout the specification, when a part is "connected" to another part, this includes not only "directly connected" but also "electrically connected" with another element in between. . In addition, when a part is said to "include" a certain component, which means that it may further include other components, except to exclude other components unless specifically stated otherwise, one or more other It is to be understood that the present invention does not exclude the possibility of the presence or the addition of features, numbers, steps, operations, components, parts, or combinations thereof.

본 명세서에 있어서 '부(部)' 또는 '모듈'이란, 하드웨어 또는 소프트웨어에 의해 실현되는 유닛(unit), 양방을 이용하여 실현되는 유닛을 포함하며, 하나의 유닛이 둘 이상의 하드웨어를 이용하여 실현되어도 되고, 둘 이상의 유닛이 하나의 하드웨어에 의해 실현되어도 된다.In the present specification, the term 'part' or 'module' includes a unit realized by hardware or software, and a unit realized using both, and one unit is realized by using two or more pieces of hardware. Two or more units may be implemented by one hardware.

도 1은 본 발명의 일 실시예에 따른 국적 정보 제공 장치의 구성도이다.1 is a block diagram of a nationality information providing apparatus according to an embodiment of the present invention.

도 1에 도시된 국적 정보 제공 장치(100)는 데이터 입출력모듈(110), 메모리(120) 및 프로세서(130)를 포함한다. The nationality information providing apparatus 100 illustrated 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 for transmitting and receiving a signal such as a control signal or a data signal through a wired or wireless connection with another network device.

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

이러한 메모리(120)는 전원이 공급되지 않아도 저장된 정보를 계속 유지하는 비휘발성 저장장치 또는 저장된 정보를 유지하기 위하여 전력이 필요한 휘발성 저장장치를 통칭하는 것이다. The memory 120 may be referred to as a nonvolatile storage device that maintains 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 the 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 블록의 상세한 구성과 그 동작에 대한 내용은 종래에 알려진 것과 동일하므로 이에 대한 상세한 설명은 생략하기로 한다. In the present invention, a nationality verification service is provided based on generally known Recurrent Neural Network-Long Short Term Memory (RNN-LSTM). RNN is a structure that can be used to share previous information and is known as a neural network structure that is suitable for learning continuous data in time series.However, if the temporal gap between each data becomes long, it can not be remembered. Dependency problem has been known, and the RNN-LSTM technique has been developed to improve it. RNN-LSTM is known to solve the problem of gradient vanishing or exploding in the existing RNN technique, and to better convey the error value during backpropagation. LSTM is mainly used to learn the representation of long time series connected data, and is replaced by a memory block consisting of three gates: an input gate, an output gate, and a forge gate. Has The LSTM is known to be able to learn the representation of data longer than the conventional RNN by utilizing the memory c and the state h. The detailed structure and operation of the LSTM block are the same as those known in the art, and thus the detailed description thereof Will be omitted.

본 발명에서는 입력된 이름에 대하여 캐릭터 임베딩을 수행한 후 이를 각각의 LSTM 모듈에 입력하는 것에 기술적 특징이 있다.According to the present invention, there is a technical feature in that character embedding is performed on an input name and then inputted to each LSTM module.

즉, 입력된 이름을 입력순서에 따라 한글자씩 분해하여 전달하는 유니그램 임베딩 처리(unigram embedding, 202), 입력순서에 따라 두글자씩 분해하여 전달하는 바이그램 임베딩 처리(Bigram embedding, 204), 입력순서에 따라 세글자씩 분해하여 전달하는 트라이그램 임베딩 처리(Trigram embedding, 206)를 각각 수행한다.That is, unigram embedding processing (202) for decomposing and inputting the input name by alphabetical characters according to the input order (Bigram embedding, 204), input sequence for decomposing and transmitting two letters according to the input order. According to the trigram embedding process (Trigram embedding, 206) to be decomposed by three letters each to perform.

입력된 이름 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 the input name X = [x_0, x_1, ..., x_ (n-1)], x_k means each letter of the name. Here, x_k may be unigram, bigram, or trigram. For example, when the input data is "James", X may be represented by [J, a, m, e, s] according to the unigram embedding process, or [Ja, am, me, es] can be expressed as X, or [Jam, ame, mes] can be expressed by the trigram embedding process. As such, in order to increase the expressive power of a unigram, a biggram, or a trigram, it may be expressed as a vector having a lower dimension, which is called a character embedding or a distributed representation. In the present invention, the input name data is decomposed into unigrams, bigrams, and trigrams, respectively, and unigram embedding, bigram embedding, and trigram embedding processing for expressing the data as vectors are performed. Each of the vectors embedded in the character embedding process is obtained as three states (h) through a separate LSTM, and in the present invention, each state (h) is concatenated into one long vector (concatenate, 208) so that the hidden layer and the soft layer are soft. Through the maxmax layer, the probability value (Equation 1) in which the input data belongs to the classification of a specific country is calculated.

한편, 국적에 따라 이름을 분류하는 분류모델은 아래 수식에 따른 조건부 확률을 최대화하도록 학습된다.On the other hand, the classification model that classifies names according to nationality is learned to maximize the conditional probability according to the following equation.

[수학식 1] [Equation 1]

Figure 112017110387574-pat00001
Figure 112017110387574-pat00001

여기서

Figure 112017110387574-pat00002
는 해당 이름의 국적(또는 인종) 정보이며, D( )는 θ라는 학습 파라메터를 갖고 있는 분류 모델이며, g( )는 특징(feature)을 추출하기 위한 함수이다. 이때, 국적은 127개 정도의 경우의 수가 존재하지만 인종은 13 개 정도로 그 수가 현저히 줄어들기 때문에, 국적을 정확하게 분류하는 것이 더욱 어려운 문제에 해당한다. here
Figure 112017110387574-pat00002
Is the nationality (or race) information of the name, D () is a classification model with a learning parameter of θ, and g () is a function for extracting features. At this time, since the number of nationalities is about 127, but the number of races is considerably reduced to about 13, it is more difficult to classify nationalities accurately.

보다 구체적으로 살펴보면, RNN 기법에 따라 히든 상태(h)는 수학식 2와 같이 정의될 수 있다.In more detail, according to the RNN technique, the hidden state h may be defined as in Equation 2.

[수학식 2][Equation 2]

Figure 112017110387574-pat00003
Figure 112017110387574-pat00003

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

[수학식 3][Equation 3]

Figure 112017110387574-pat00010
Figure 112017110387574-pat00010

Figure 112017110387574-pat00011
Figure 112017110387574-pat00011

이때,

Figure 112017110387574-pat00012
Figure 112017110387574-pat00013
는 훈련가능한 파라미터들이다. 이러한 RNN 기반의 학습모델에 앞서 소개한 LSTM 모델을 병합하면 다음 수학식 4와 같이 구현될 수 있다.At this time,
Figure 112017110387574-pat00012
Wow
Figure 112017110387574-pat00013
Are trainable parameters. Merging the aforementioned LSTM model to the RNN-based learning model can be implemented as shown in Equation 4 below.

[수학식 4][Equation 4]

Figure 112017110387574-pat00014
Figure 112017110387574-pat00014

Figure 112017110387574-pat00015
Figure 112017110387574-pat00016
는 훈련가능한 파라미터들이고,
Figure 112017110387574-pat00017
는 행렬 요소별(element wise) 곱을 나타낸다. 또한, 장기 메모리(Long Term memory)는 입력 게이트(input gate) i 와 이전 셀
Figure 112017110387574-pat00018
이 저장된
Figure 112017110387574-pat00019
로부터 복원될 수 있고, 포겟 게이트 f 에 업데이트될 수 있다.
Figure 112017110387574-pat00015
Wow
Figure 112017110387574-pat00016
Are the trainable parameters,
Figure 112017110387574-pat00017
Denotes a matrix element wise product. Long Term memory also includes input gate i and the previous cell.
Figure 112017110387574-pat00018
This stored
Figure 112017110387574-pat00019
Can be recovered from, and updated to the forge gate f.

위와 같은 과정을 통해 최종적으로 획득된 확률은 크로스 엔트로피(cross entropy)기법을 통해 음의 로그 우도(negative log likelihood (NLL))를 계산하는 데에 활용되며, 이 NLL을 최소화 하도록 분류 모델을 학습하면 해당 확률을 최대화하는 모델을 학습할 수 있다. The probabilities finally obtained through the above process are used to calculate the negative log likelihood (NLL) through the cross entropy technique. You can learn a model that maximizes that probability.

예를 들어, 아래 수학식 5와 같은 크로스 엔트로피 손실 함수

Figure 112017110387574-pat00020
를 통해 해당 확률이 최대화도록 한다.For example, cross-entropy loss function as shown in Equation 5 below.
Figure 112017110387574-pat00020
To maximize the probability.

Figure 112017110387574-pat00021
Figure 112017110387574-pat00021

도 3은 본 발명의 일 실시예에 따른 이름에 기반한 국적 정보 제공 방법을 도시한 순서도이다.3 is a flowchart illustrating a method for 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). Input data is received and stored through the data input / output module 110 of the nationality information providing device 100 of FIG. 1.

다음으로, 입력된 이름 데이터에 대하여 캐릭터 임베딩을 수행한다(S320).Next, character embedding is performed on the input name data (S320).

본 발명에서는 입력순서에 따라 한글자씩 분해하여 벡터화하는 유니그램 임베딩 처리(unigram embedding), 입력순서에 따라 두글자씩 분해하여 벡터화하는 바이그램 임베딩 처리(Bigram embedding) 및 입력순서에 따라 세글자씩 분해하여 벡터화하는 트라이그램 임베딩 처리(Trigram embedding)를 수행한다.In the present invention, a unigram embedding process for decomposing and vectorizing characters by an alphabetical order according to an input order, a bigram embedding process for decomposing and vectorizing two characters according to an input order, and decomposing three characters according to an input order. Trigram embedding to vectorize is performed.

다음으로, 이와 같이 캐릭터 임베딩된 데이터는 LSTM으로 각각 입력되고, LSTM에서 출력된 값을 연결하여 하나의 벡터를 생성한다(S330).Next, the character-embedded data is input to each LSTM, and a single vector is generated by connecting values output from the LSTM (S330).

생성된 백터는 히든 레이터로 전달되어, 이를 기반으로 어느 국가에 가장 적합한지를 나타내는 확률값이 산출된다(S340).The generated vector is transmitted to the hidden generator, and based on this, a probability value indicating which country is most suitable is calculated (S340).

위와 같이, 캐릭터 임베딩을 여러 단계에 걸쳐 수행함으로써 RNN-LSTM학습 모델을 보다 정교하게 설계할 수 있으며, 이을 통해 사람의 이름만으로 국적을 추정하는 서비스의 정확성을 더욱 향상시킬 수 있다. As described above, character embedding can be carried out in several stages to design the RNN-LSTM learning model more precisely, thereby further improving the accuracy of the service of estimating nationality based only on the name of a person.

이상에서 설명한 본 발명의 실시예에 따른 국적 정보 제공 장치 및 방법은, 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 이러한 기록 매체는 컴퓨터 판독 가능 매체를 포함하며, 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 포함하며, 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. The apparatus and method for providing nationality information according to the embodiment of the present invention described above may 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 recording media includes computer readable media, and computer readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. In addition, computer readable media includes computer storage media, which are volatile and nonvolatile 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.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The foregoing description of the present invention is intended for illustration, and it will be understood by those skilled in the art that the present invention may be easily modified in other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, it should be understood that the embodiments described above are exemplary in all respects and not restrictive. For example, each component described as a single type may be implemented in a distributed manner, and similarly, components described as distributed may be implemented in a combined form.

또한, 본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수도 있다.In addition, while the methods and systems of the present invention have been described in connection with specific embodiments, some or all of their components or operations may be implemented using a computer system having a general purpose hardware architecture.

본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is shown by the following claims rather than the detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalents should be construed as being included in the scope of the present invention. .

100: 국적 정보 제공 장치 110: 데이터 입출력 모듈
120: 메모리 30: 프로세서
100: nationality information providing device 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 메모리에서 출력된 벡터값을 조합하여 히든 레이어로 전달하는 것인 국적 정보 제공 장치.
In the device for providing nationality information based on artificial neural network,
Memory where the nationality information providing program is stored;
A data input / output module for performing data input / output, and
Include processors,
The nationality information providing program is driven by the processor to predict the nationality of the subject based on the subject's name input through the data input / output module, but the nationality information providing program is RNN-LSTM (Recurrent Neural Network-Long Short). Based on a learning model based on Term Memory, the output of a nationality having the highest probability that the inputted subject's name is classified.
Unigram embedding processing to decompose the subject's name into alphabetical characters according to the input order and vectorization, Bigram embedding processing to decompose and vectorize two characters according to the input order The apparatus for providing nationality information comprising performing trigram embedding processing to decompose and vectorizing and transferring the result to the LSTM memory of the RNN-LSTM, and then combining the vector values output from each LSTM memory to the hidden layer.
제 1 항에 있어서,
상기 프로세서는 상기 유니그램 임베딩 처리된 후 상기 LSTM 메모리에서 출력된 값, 상기 바이그램 임베딩 처리된 후 상기 LSTM 메모리에서 출력된 값 및 상기 트라이그램 임베딩 처리된 후 상기 LSTM 메모리에서 출력된 값을 조합하여 생성된 벡터값을 상기 히든 레이어로 전달하고, 상기 히든 레이어에서는 국적에 따라 이름을 분류하는 분류모델에 기초하여 상기 벡터값이 소정의 국적으로 분류될 조건부 확률을 산출하며, 상기 산출된 조건부 확률이 최대가 되도록 학습 동작을 수행하는 것인 국적 정보 제공 장치.
The method of claim 1,
The processor generates a combination of a value output from the LSTM memory after the unigram embedding process, a value output from the LSTM memory after the bigram embedding process, and a value output from the LSTM memory after the trigram embedding process. The calculated vector value is transmitted to the hidden layer, and the hidden layer calculates a conditional probability that the vector value is classified as a predetermined nationality based on a classification model classifying names according to nationality, and the calculated conditional probability is maximum. Nationality information providing apparatus to perform a learning operation to be.
인공 신경망에 기반하여 국적 정보를 제공하는 국적 정보 제공 장치를 이용한 국적 정보 제공 방법에 있어서,
상기 국적 정보 제공 장치가 분류 대상인 대상자의 이름 데이터를 수신하는 단계;
상기 국적 정보 제공 장치가 수신된 대상자의 이름 데이터를 캐릭터 임베딩하는 단계;
상기 국적 정보 제공 장치가 상기 캐릭터 임베딩된 데이터를 RNN-LSTM(Recurrent Neural Network-Long Short Term Memory)의 LSTM 메모리로 전달하는 단계;
상기 국적 정보 제공 장치가 상기 LSTM 메모리에서 출력된 벡터값을 조합하여 히든 레이어로 전달하는 단계; 및
상기 국적 정보 제공 장치가 상기 히든 레이어를 통해 산출된 확률값에 따라 상기 이름 데이터에 대한 국적 정보를 예측하는 단계를 포함하되,
상기 캐릭터 임베딩하는 단계는,
상기 대상자의 이름 데이터를 입력순서에 따라 한글자씩 분해하여 벡터화하는 유니그램 임베딩 처리(unigram embedding), 입력순서에 따라 두글자씩 분해하여 벡터화하는 바이그램 임베딩 처리(Bigram embedding) 및 입력순서에 따라 세글자씩 분해하여 벡터화하는 트라이그램 임베딩 처리(Trigram embedding) 를 수행하는 것인 국적 정보 제공 방법.
In the nationality information providing method using a nationality information providing device for providing nationality information based on an artificial neural network,
Receiving, by the nationality information providing apparatus, name data of a subject to be classified;
Character embedding, by the nationality information providing apparatus, the name data of the received subject;
Transmitting, by the nationality information providing device, the character embedded data to an LSTM memory of a Recurrent Neural Network-Long Short Term Memory (RNN-LSTM);
Transmitting, by the nationality information providing apparatus, a vector value output from the LSTM memory to a hidden layer; And
And predicting, by the apparatus for providing nationality information, nationality information on the name data according to a probability value calculated through the hidden layer.
Embedding the character,
Unigram embedding processing to decompose the subject's name data into alphabetical characters according to the input order and vectorize, Bigram embedding processing to decompose and vectorize two characters according to the input order A method of providing nationality information, wherein trigram embedding is performed by decomposing and vectorizing each other.
제 3 항에 있어서,
상기 산출된 확률값이 최대가 되도록 학습 동작을 수행하는 단계를 더 포함하는 국적 정보 제공 방법.
The method of claim 3, wherein
And performing a learning operation to maximize the calculated probability value.
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 KR20190051574A (en) 2019-05-15
KR102051085B1 true 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)

Families Citing this family (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 (4)

* 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.

Also Published As

Publication number Publication date
KR20190051574A (en) 2019-05-15

Similar Documents

Publication Publication Date Title
CN110598206B (en) Text semantic recognition method and device, computer equipment and storage medium
US11770571B2 (en) Matrix completion and recommendation provision with deep learning
KR102504498B1 (en) Method and apparatus for verifying medical fact
KR102172925B1 (en) Operating method of deep learning based climate change prediction system
CN110750965B (en) English text sequence labeling method, english text sequence labeling system and computer equipment
EP3893163A1 (en) End-to-end graph convolution network
WO2018005433A1 (en) Dynamically managing artificial neural networks
Duong et al. Provenance-based rumor detection
Karasoy et al. Spam SMS detection for Turkish language with deep text analysis and deep learning methods
US20190228297A1 (en) Artificial Intelligence Modelling Engine
US20180357564A1 (en) Cognitive flow prediction
US20210232855A1 (en) Movement state recognition model training device, movement state recognition device, methods and programs therefor
WO2023287910A1 (en) Intelligent task completion detection at a computing device
CN115130711A (en) Data processing method and device, computer and readable storage medium
CN113961666B (en) Keyword recognition method, apparatus, device, medium, and computer program product
John et al. Stock market prediction based on deep hybrid RNN model and sentiment analysis
KR102051085B1 (en) Device and method for providing nationality information of user name using neural networks
CN110929517B (en) Geographical position positioning method, system, computer equipment and storage medium
CN115936801A (en) Neural network-based product recommendation method, device, equipment and storage medium
CN114398482A (en) Dictionary construction method and device, electronic equipment and storage medium
Jasim et al. Analyzing Social Media Sentiment: Twitter as a Case Study
CN112818084B (en) Information interaction method, related device, equipment and computer readable medium
CN113657092A (en) Method, apparatus, device and medium for identifying label
CN112199954A (en) Disease entity matching method and device based on voice semantics and computer equipment
CN110888539A (en) Name recommendation method, device, equipment and storage medium in input method

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