KR20170108693A - 입출력 회로를 가지는 계층적 신경망 구조의 언어모델 장치 - Google Patents

입출력 회로를 가지는 계층적 신경망 구조의 언어모델 장치 Download PDF

Info

Publication number
KR20170108693A
KR20170108693A KR1020160032985A KR20160032985A KR20170108693A KR 20170108693 A KR20170108693 A KR 20170108693A KR 1020160032985 A KR1020160032985 A KR 1020160032985A KR 20160032985 A KR20160032985 A KR 20160032985A KR 20170108693 A KR20170108693 A KR 20170108693A
Authority
KR
South Korea
Prior art keywords
word
language model
input
output
wlm
Prior art date
Application number
KR1020160032985A
Other languages
English (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 KR1020160032985A priority Critical patent/KR20170108693A/ko
Publication of KR20170108693A publication Critical patent/KR20170108693A/ko

Links

Images

Classifications

    • G06F17/27
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Pure & Applied Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Computation (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Algebra (AREA)
  • Probability & Statistics with Applications (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Operations Research (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Machine Translation (AREA)

Abstract

본 발명은 내부적으로 글자수준의 언어모델(Character-level Language Model)과 단어 수준의 언어모델(Word-level Language Model)을 결합하여 더 나은 성능을 보이도록 만든 언어모델로, 입출력은 글자수준의 언어모델과 동일하며, 단어의 가장자리(시작 또는 끝)를 나타내는 신호 외에는 단어 정보를 외부에서 넣어주지 않는 구조. 입출력이 글자 수준의 언어모델과 거의 동일하기 때문에 단어 수준 언어모델에 비하여 입출력 회로가 매우 간단해 진다.

Description

입출력 회로를 가지는 계층적 신경망 구조의 언어모델 장치{LANGUAGE MODEL APPARATUS USING HIERARCHICAL NEURAL NETWORKS FOR LOW COMPLEXITY INPUT AND OUTPUT}
본 발명은 신경망 구조의 언어모델에 관한 기술이다.
언어모델 (language model)은 번역, 텍스트 생성, 질문 이해와 답, 음성인식 등 많은 응용을 가지고 있다. 언어 모델은 현재까지 들어온 단어 또는 글자를 바탕으로 다음에 나올 단어 또는 글자의 확률을 알려준다. 글자 (character) 또는 단어 (word) 단위의 언어 모델이 많이 사용되고 있다. 글자 단위의 언어모델 (character level language model, 이하 CLM)의 경우, 예를 들면, 지금까지 입력된 단어가 'shee'라면, 다음번에 나올 높은 확률의 글자로 'p', 't', 'r'을 예측하게 된다. 각각 sheep, sheet, sheer에 해당한다. 앞뒤에서 예측하는 양방향 모델을 쓸 경우는 가운데 빠진 글자를 예측하는데 유용하다. 이러한 CLM을 이용하면 많은 응용이 있지만, 한가지 예로 잘못 입력된 글자를 고칠 수 있다.
단어 단위의 언어모델 (word level language model, 이하 WLM)은 현재까지 입력된 단어를 기반으로 다음에 나올 단어의 확률을 예측한다. 이 WLM도 양방향 예측이 가능하도록 구현할 수 있으며, 이 경우 문장 가운데 빠진 단어를 예측할 수 있다. CLM과 WLM은 현재 음성인식에서도 매우 중요한 역할을 한다. 매우 단어 수가 많은 음성인식기의 경우 사람의 발음만으로 정확한 인식을 수행하기는 어렵다. 언어모델은 다음에 나올 가능성이 큰 글자 또는 단어의 개수 또는 perplexity (혼동도)를 줄임으로써 단어 수가 많아져도 높은 인식률을 유지할 수 있게 하여준다. CLM은 특히 사전에 없는(out of vocabulary, OOV) 단어가 나오는 경우에도 발음에 따른 받아쓰기를 가능하게 할 수 있다.
CLM과 WLM을 비교할 때 WLM은 단어 단위로 어떤 시퀀스를 학습하기 때문에 글자 단위의 경우보다 더 긴 문장을 학습할 수 있으며, 음성인식 등에서 더 나은 성능을 제공한다. 문장 단위의 언어모델 (sentence level language model)은 어떤 문장 또는 문단의 포괄적 뜻 또는 상황(context)을 알도록 한다. 예로, 어떤 동음이의어가 들어왔을 때 상황을 알면 정확한 단어를 지정할 수 있다. 보통 CLM, WLM, SLM이 다 필요한 이유는 글자모델 보다는 단어모델이, 단어모델 보다는 문장모델이 동일한 신경망을 사용한다면 더 원거리(long distance) 예측을 제공하기 때문이다.
언어모델을 구현하기 위하여 종래에는 메모리를 이용한 방식을 많이 사용하였다. CLM의 경우는 각 단어의 나타나는 빈도가 기록된 단어사전을 이용하면 만들 수 있다. 단어단위 언어모델(즉 WLM)의 경우는 현재까지 나온 몇 개의 단어를 이용하여 다음의 단어를 예측하는데, 이때 이미 나온 단어가 조합하여 가르치는 주소의 메모리를 참조하면 다음에 나올 단어들의 확률분포를 알 수 있다. 가장 간단한 이중자 (bigram) 언어 모델은 매 단어마다 다음에 나올 단어들의 확률분포를 메모리에 저장하고 있으며, 삼중자 (trigram)의 경우는 최근 나온 두 개의 단어를 이용하여 다음에 나올 단어의 확률분포가 저장된 메모리의 위치를 가리키게 한다. 그런데 이중자 (bigram)에서 삼중자 (trigram), 그리고 더 많은 단어를 이용하여 예측을 할수록 정확도는 올라가지만, 필요한 메모리의 크기는 지수적(exponential)으로 증가하게 된다.
1. Ghosh, Shalini, et al. "Contextual LSTM (CLSTM) models for Large scale NLP tasks." arXiv preprint arXiv:1602.06291 (2016). 2. Bojanowski, Piotr, Armand Joulin, and Tomas Mikolov. "Alternative structures for character-level RNNs." arXiv preprint arXiv:1511.06303 (2015).
본 발명이 해결하고자 하는 과제는 신경망 회로를 이용하여 간단한 입출력 회로를 가지는 계층적 신경망 구조의 언어모델 장치를 제공하는 것이다.
본 발명에 따른 입출력 회로를 가지는 계층적 신경망 구조의 언어모델 장치는 내부적으로 글자수준의 언어모델(Character-level Language Model)과 단어 수준의 언어모델(Word-level Language Model)을 결합하여 더 나은 성능을 보이도록 만든 언어모델로, 입출력은 글자수준의 언어모델과 동일하며, 단어의 가장자리(시작 또는 끝)를 나타내는 신호 외에는 단어 정보를 외부에서 넣어주지 않는 구조.
또한, 내부적으로 글자수준의 언어모델(Character-level Language Model)과 단어 수준의 언어모델(Word-level Language Model), 그리고 문장 또는 문단 수준의 언어모델(sentence-level language model)을 결합하여 더 나은 성능을 보이도록 만든 언어모델로, 입출력은 글자수준의 언어모델과 동일하며, 단어의 가장자리(시작 또는 끝)와 문장 또는 문단의 가장자리를 나타내는 신호 말고는 단어 또는 문장 정보를 외부에서 넣어주지 않는 구조. 입출력이 글자 수준의 언어모델과 거의 동일하기 때문에 입출력 회로가 매우 간단해 진다.
본 발명은 입출력이 글자 수준의 언어모델과 거의 동일하기 때문에 단어 수준 언어모델에 비하여 입출력 회로가 매우 간단해 진다.
도 1은 CLM을 현재 많이 사용되는 회귀형 신경망인 LSTM RNN을 이용하여 구현한 예를 보인다.
도 2는 LSTM RNN의 셀의 구조 일례를 나타내는 도면이다.
도 3은 본 발명의 일 실시예에 따른 간단한 입출력 회로를 가지는 계층적 신경망 구조의 언어모델 장치를 나타내는 도면이다.
도 4는 Character-level Language Model과 Word-level Language Model, Sentence-level Language Model을 결합한 계층구조의 제안되는 Language Model의 일례를 나타내는 도면이다.
도 5는 독립된 RNN을 Word embedding에 사용하는 도 3의 구현 일례를 나타내는 도면이다.
도 6은 다중 구조의 RNN을 Word embedding과 Character-level Language Model로 사용하는 도면 3의 구현 일례를 나타내는 도면이다.
본 출원은 발명 일자를 확보하면서 이에 기초하여 향후 진행될 정규 출원을 위한 가출원이다.  본 명세서에 기재된 내용은 기술적 사상이 구현된 실시예에 해당한다. 향후 정규 출원은 본 가출원에 개시된 실시예에서 도출되는 기술적 사상을 포괄하도록 해석될 것이다. 본 명세서는 향후 정규 출원의 권리 범위를 제한하는 근거가 되지 않아야 한다.
이하, 본 발명의 실시예를 첨부된 도면들을 참조하여 상세하게 설명한다. 본 명세서에서 사용되는 용어 및 단어들은 실시예에서의 기능을 고려하여 선택된 용어들로서, 그 용어의 의미는 발명의 의도 또는 관례 등에 따라 달라질 수 있다. 따라서 후술하는 실시예에서 사용된 용어는, 본 명세서에 구체적으로 정의된 경우에는 그 정의에 따르며, 구체적인 정의가 없는 경우는 당업자들이 일반적으로 인식하는 의미로 해석되어야 할 것이다.
도 1은 CLM을 현재 많이 사용되는 회귀형 신경망인 LSTM RNN을 이용하여 구현한 예를 보인다.
도 2는 LSTM RNN의 셀의 구조 일례를 나타내는 도면이다.
LSTM RNN을 이용한 CLM을 도면 1에 보인다. 도면 1에서, RNN의 입력으로는 글자(character 또는 알파벳)가 입력이 되는데, 영어의 경우 알파벳과 스페이스, 몇 개의 특수 기호를 포함하기 때문에 총 30개 정도의 입력이 필요하다. 인식률을 높이기 위해서 글자 대신에 몇 개의 글자모음 (grapheme, 예를 들면 'ch' 'ee' 등)을 추가하기도 한다. 보통 하나의 글자당 한 개의 선만이 1 (one)로 표현되고 나머지는 0으로 표현되는 one hot encoding 이 많이 사용된다. CLM의 출력은 다음에 나올 글자의 확률을 나타낸다. 이때 전체 확률의 값을 100%로 만들기 위해서 보통 소프트맥스 (softmax) 층을 사용한다. CLM은 다른 종류의 언어모델에 비하여 매우 간단한 입출력 회로를 필요로 한다. 그 까닭은 사용되는 알파벳 또는 글자의 숫자가 보통 작기 때문이다. 즉 영어의 경우 사용되는 알파벳은 특수 문자나 마침표(.) 쉼표(,) 등을 포함하여도 30개를 크게 넘지 않지만, 단어는 수십만 개 이상이 사용된다.
따라서 one hot encoding을 사용할 경우 CLM은 수십 개의 입력 선이 필요하지만, WLM은 수십만 개 이상의 입력선이 필요하다. 출력의 경우는 매 글자 또는 단어마다 예측되는 확률 값을 내 보내야 하기 때문에 더 복잡해지며, WLM 구현의 가장 큰 문제점으로 대두되고 있다. 이렇게 CLM은 입출력이 매우 간단하다는 장점이 있으나, 다음번에 나올 단어의 확률을 예측하는 능력에 있어서는 WLM에 비하여 불리하다. 즉, 단어 단위 언어모델의 경우는, 예를 들어 3 단어 앞이, 이를 글자 단위로 환산하면 10글자가 넘게 앞에 있기 때문이다.
도면 1은 CLM을 현재 많이 사용되는 회귀형 신경망인 LSTM RNN을 이용하여 구현한 예를 보인다. LSTM RNN의 경우 더 높은 성능을 얻기 위해서 보통 여러 개의 LSTM 층을 사용한다. 그리고 맨 마지막 층에는 각 글자 출력의 확률값을 계산하기 위해서 보통 소프트맥스(softmax) 층을 두고 있다. LSTM 회귀층의 개수를 늘려서 더 높은 성능을 얻을 수 있는 것은 WLM, SLM의 경우에도 마찬가지이다. 매 LSTM 회귀층의 구현은 도면 2에 보이는 것과 같은 입력 게이트, 출력 게이트, 잊기 게이트(forget gate)를 포함하는 셀을 이용하는데, 매 층당 사용하는 LSTM 셀의 수에 따라 성능이 크게 달라진다. LSTM 셀의 개수가 적은 경우 전체 복잡도가 줄지만 성능이 떨어진다. 그렇지만, 이 셀의 수를 매우 늘리면 주어진 트레이닝 데이터에서 성능 포화현상을 보인다. 따라서 트레이닝 데이터의 수와 구현의 복잡도를 구현하여 적절한 셀의 수와 LSTM 층의 개수를 정한다.
LSTM RNN을 이용한 WLM도 도면 1과 비슷하게 구현을 한다. 단지, 입출력이 글자(character)에서 단어로 바뀌고, WLM은 새로운 단어가 들어올 때마다 동작을 한다. 그런데 글자의 개수가 영어 알파벳의 경우 수십 개 정도에 불과하지만, 단어의 개수는 수십만 개 이상이 된다. 따라서, 위의 글자단위 언어모델과 비슷하게 RNN을 이용하여 구현할 경우 입출력의 개수가 매우 많고 이것이 매우 높은 복잡도 문제를 일으킨다. 일례로 10만 단어를 수용하는 WLM을 구현하자면 입력에 10만 개의 (one hot encoding 된) 입력이 필요하며, 출력은 각 단어의 확률을 8비트로 나타낼 경우 80만 개의 필요하다. 보통 소프트맥스 (softmax)층을 출력에 사용하는데, 이 층의 계산량이 크게 증가하게 된다. 따라서, WLM이 CLM에 비하여 원거리 예측에는 유리하지만, RNN을 이용하여 구현할 경우는 입출력의 복잡도 문제가 매우 심각하다. 이러한 문제를 해결하기 위하여 출력을 단어 클래스(class) 등으로 나누는 방법도 이용하지만 성능 저하가 수반이 된다.
이러한 문제를 해결하기 위하여 본 발명에서는 CLM, WLM, (추가로 필요하다면) SLM을 동시에 사용하면서, CLM을 이용하여 WLM의 입력에 필요한 단어 임베딩(word embedding)을 구현하고, (추가로 필요하면) WLM을 이용하여 SLM의 입력을 제공한다. 그리고 WLM의 출력을 이용하여 CLM에 예측단어의 확률(word context)을 전달하여 더 정확한 CLM을 구현한다. SLM을 이용할 경우는 SLM의 출력을 WLM에 가한다.
도 3은 본 발명의 일 실시예에 따른 간단한 입출력 회로를 가지는 계층적 신경망 구조의 언어모델 장치를 나타내는 도면이다.
도 3을 참조하면, 도면 3은 본 발명의 아이디어를 가장 간단히 제시하는 CLM과 WLM의 계층적 결합도이며, Character-level Language Model과 Word-level Language Model을 결합한 계층구조의 제안되는 Language Model을 포함한다.
본 발명에 따른 간단한 입출력 회로를 가지는 계층적 신경망 구조의 언어모델 장치는 높은 성능을 가지는 언어 모델에 적용된다. 높은 성능을 가지는 언어모델은 신경망 회로를 이용하는 방법이 메모리를 참조하는 방법보다 훨씬 효율적이다.
언어모델을 회귀형 신경망 (recurrent neural network, RNN)을 이용하여 많이 구현한다. 특히 장기 기억 능력이 뛰어난 LSTM (Long Short Term Memory) RNN 을 이용한 언어모델이 많이 연구되었다. CLM, WLM, SLM 모두 LSTM RNN을 이용하여 구현할 수 있다.
도면 3은 두개의 RNN으로 구성이 되어 있는데, 왼쪽은 글자(character) 단위의 클럭으로 동작하며 CLM의 역할을 하며, 오른쪽은 단어(word) 단위의 클럭으로 동작하며 WLM의 역할을 한다. 왼쪽 CLM의 입력을 통해서 현재의 글자가 가해지며, 다음에 나올 글자를 예측한다. 보통 입력으로는 one hot encoding을 사용하며, 이 경우 각 알파벳을 표시하는 수십개의 신호선만 있으면 되기 때문에 입력의 회로는 복잡하지 않다. 이 CLM의 내부층에서 Word embedding 된 정보를 매 글자가 끝날 때 마다 얻는다. 일 예로, 'l', 'o', 'v', 'e', '<space>' 가 입력이 되면, CLM 내부의 메모리 셀에는 'love'라는 정보를 가지고 있게 된다.
그리고 이 정보는 one hot encoding 상태가 아니고, RNN 내부 유닛들의 상태 값으로 저장되어 있다. 따라서, 단어가 one hot encoding된 경우에 비해서 매우 압축된 형태로 나타내진다. 일 예로 LSTM 셀의 개수가 500개이고, 각 셀의 출력 값이 16비트로 표현이 되어있다면, 총 8000 비트의 정보가 LSTM 레이어에 저장이 되고 있다. 이를 'Word embedding'이라 하며 CLM의 내부 레이어(layer)에서 WLM의 입력으로 전달이 된다. 그러면 오른쪽의 WLM은 CLM에서 받은 Word embedding 된 정보를 이용하여 다음 단어를 예측한다. 즉 오른쪽 WLM의 입력이 one hot encoding 된 단어가 아니고, CLM에서 받은 Word embedding 된 정보이다. 따라서 WLM 입력의 복잡도가 매우 준다. WLM도 CLM과 마찬가지로 RNN 구조를 이용하여 다음 단어의 확률을 예측한다.
이 경우, 예를 들면, 다음에 나올 확률이 높은 단어는 'you', 'cats' 등이 된다. 이 다음에 나올 단어와 그 것들의 확률 값은 WLM의 내부 셀의 저장이 되어 있으며, 이를 'Word context'로 부른다. 이 'Word context' 또한 WLM의 소프트맥스 (softmax) 출력에 비하면 매우 압축된 형태로 표현이 된다. 즉 WLM 한 층의 개수가 500개이고, 각 셀이 16비트로 표현이 된다면, 이 Word context 또한 8000비트로 표현이 된다. 이 'Word context' 정보가 WLM에서 CLM으로 전달이 된다. 이 Word context 정보는 이 경우 'you', 'cat'을 높은 확률의 단어로 기억하고 있다. CLM에서는 새로운 글자를 입력받으며 다음글자를 예측하는데, WLM에서 제공되는 Word context를 이용한다. 일 예로, 이번 글자가 'y' 라고 들어오고 Word context를 이용한다면 좀 더 쉽게 다음 글자가 'o'라고 예측할 수 있다. Type of word boundary에는 <space> (단어와 단어 사이), <s> (문장과 문장 사이), <p> (문단과 문단 사이) 등이 있다.
본 발명에서 제시하는 RNN 언어 모델은, 내부적으로는 단어나 문장 단위의 클럭으로 동작하는 부분이 있지만, 전체적인 구조의 입력과 출력은 모두 글자 단위로 동작한다. 따라서, 단어나 문장 단위의 내부 구조가 없는 도면 1과 같은 일반적인 CLM과 입력과 출력이 거의 같다고 볼 수 있다. 그러므로 학습 과정에서 도 1의 일반적인 CLM에 적용할 수 있는 대부분의 방법을 그대로 사용할 수 있다. 예를 들면, 입력에 현재 글자를 입력시키고, 출력 소프트맥스 (softmax) 층에서 다음 글자를 내보내도록 학습시키는데, cross entropy loss를 사용한 backpropagation through time 방식을 사용할 수 있다. CLM은 WLM의 클럭에서(즉 word boundary 에서), WLM은 SLM의 클럭에서 내부 상태 값이 초기화가 되도록 하면, CLM은 단어와 단어 사이의 관계가 아닌 현재 단어 자체를, WLM은 문장과 문장 관계가 아닌 현재 문장에 집중하여 작업을 분담 처리할 수 있도록 학습이 된다. 이러한 방식으로 본 발명에서 제시하는 구조의 성능을 향상시킬 수 있다.
본 발명과 문헌 2 그림 1의 구조와의 차이점은 입력에 단어수준의 별도로 제공되지 않는다는 것이다. 문헌 2의 구조에서는 출력은 글자 단위로 얻어지지만, 입력으로 글자 단위와 함께 단어 단위의 정보가 필요하다. 이러한 관계로 입력 회로의 복잡도가 증가한다.
도 4는 Character-level Language Model과 Word-level Language Model, Sentence-level Language Model을 결합한 계층구조의 제안되는 Language Model의 일례를 나타내는 도면이다.
도 4의 구조는 문장단위의 언어모델 (sentence level language model, SLM)을 추가하여 더 높은 성능을 얻도록 한 것이다. SLM은 지금까지 들어온 단어를 이용하여 앞의 문장의 내용정보를 함축하여 담고 있다. 이 내용정보를 이용한 언어모델은 문헌 1에 설명이 되어 있다. 그런데 기존 구현의 경우 입출력의 복잡도가 높다. 도면 4는 본 제안된 구조를 확장하여 간단한 입출력을 가지며, SLM 단위의 높은 예측능력을 가지는 CLM, WLM, SLM의 혼합 모델 (hybrid model)을 보인다. 본 SLM은 문장 또는 문단 단위의 클럭으로 동작한다. Type of sentence boundary는 <s> (문장과 문장 사이)와 <p> (문단과 문단 사이) 등이 있다.
도 5는 독립된 RNN을 Word embedding에 사용하는 도 3의 구현 일례를 나타내는 도면이다.
도 5는 도 3에서 보이는 CLM과 WLM을 결합한 언어모델을 LSTM RNN을 이용하여 좀 더 구체적으로 구현한 한 예이다. CLM 내의 글자모델 LSTM1을 이용하여 단어 임베딩(Word embedding) 벡터를 생성하고, 그것을 이용하여 WLM을 동작시킨다. 본 도면의 WLM에는 one hot encoding된 입력 단어가 들어가지 않고, 글자모델 LSTM1을 이용하여 압축된 Word embedding 벡터가 대신 들어간다. 그리고 WLM은 매 새로운 단어마다 동작한다. 그리고 WLM의 출력 또는 내부 메모리 셀의 정보(context1)를 LSTM2에 가하여, 더 원거리 예측이 되는 CLM을 만든다. 즉, 본 CLM내의 LSTM RNN 두 개 (1과 2)는 모두 새로운 글자가 들어올 때 한번씩 업데이트가 되며, WLM은 새로운 단어가 들어올 때 한번씩 업데이트된다.
본 도면에서 type of word boundary는 단어가 끝났음을 알려주는 빈 글자 (space) 또는 문장 끝 (end of sentence) 기호 등을 표기한다. 즉 WLM은 단어가 바뀔 때만 동작이 되기 때문에 CLM에 비해서 느린 속도로 동작이 된다. 본 도면 5의 입력은 알파벳 등의 글자이기 때문에 영어의 경우 30개 내외의 선만 필요하며, 출력의 경우도 역시 각 글자의 확률값이기 때문에 간단하다. 본 도면에 표시된 LSTM RNN은 더 높은 성능을 보이기 위해서 다층구조를 가질 수 있다.
도 6은 다중 구조의 RNN을 Word embedding과 Character-level Language Model로 사용하는 도면 3의 구현 일례를 나타내는 도면이다.
도 6은 도 5의 CLM에 두개의 RNN을 사용하던 것을 하나의 다층구조 RNN으로 대치한 것이다. LSTM RNN으로 구현한 예를 보이나, 다른 구조의 RNN도 마찬가지로 적용 가능하다. 현재 대부분의 언어모델 RNN은 더 나은 성능을 위하여 다층구조를 이용하고 있다. 이 경우 CLM의 아래의 RNN층 (LSTM1)에서 단어 임베딩된 결과가 출력이 되어 WLM으로 공급이 되며, WLM에서 얻어진 context 정보가 CLM의 윗 레벨 (LSTM2)로 공급이 된다. 이 경우도 CLM은 새로운 글자마다 동작이 되며, WLM은 새로운 단어마다 동작이 된다. 이 도면에서 위 층의 LSTM RNN은 굳이 회귀 구조를 갖는 RNN을 쓰지 않고 다른 종류의 신경망 또는 논리회로를 이용할 수도 있다.
본 도면의 설명에서는 시퀀스 학습에 LSTM RNN을 사용하는 것을 가정하여 설명하였다. 다른 종류의 RNN도 마찬가지 방법으로 적용할 수 있으며, 이에 따라 입력과 출력의 복잡도를 대폭 감소시킬 수 있다. 현재 LSTM RNN보다 간단한 구현으로 GRU (Gated Recurrent Unit) 또는 Elman 신경망회로 등이 있다.
도 3에 보이는 것과 같이 내부적으로 글자수준의 언어모델(Character-level Language Model)과 단어 수준의 언어모델(Word-level Language Model)을 결합하여 더 나은 성능을 보이도록 만든 언어모델로, 입출력은 글자수준의 언어모델과 동일하며, 단어의 가장자리(시작 또는 끝)를 나타내는 신호 외에는 단어 정보를 외부에서 넣어주지 않는 구조. 입출력이 글자 수준의 언어모델과 거의 동일하기 때문에 단어 수준 언어모델에 비하여 입출력 회로가 매우 간단해 진다.
도 4에 보이는 것과 같이 내부적으로 글자수준의 언어모델(Character-level Language Model)과 단어 수준의 언어모델(Word-level Language Model), 그리고 문장 또는 문단 수준의 언어모델(sentence-level language model)을 결합하여 더 나은 성능을 보이도록 만든 언어모델로, 입출력은 글자수준의 언어모델과 동일하며, 단어의 가장자리(시작 또는 끝)와 문장 또는 문단의 가장자리를 나타내는 신호 말고는 단어 또는 문장 정보를 외부에서 넣어주지 않는 구조. 입출력이 글자 수준의 언어모델과 거의 동일하기 때문에 입출력 회로가 매우 간단해 진다.
이상 바람직한 실시예를 들어 본 발명을 상세하게 설명하였으나, 본 발명은 전술한 실시예에 한정되지 않고, 본 발명의 기술적 사상의 범위 내에서 당분야에서 통상의 지식을 가진자에 의하여 여러 가지 변형이 가능하다.

Claims (1)

  1. 내부적으로 글자수준의 언어모델(Character-level Language Model)과 단어 수준의 언어모델(Word-level Language Model)을 결합하여 더 나은 성능을 보이도록 만든 언어모델로, 입출력은 글자수준의 언어모델과 동일하며, 단어의 가장자리(시작 또는 끝)를 나타내는 신호 외에는 단어 정보를 외부에서 넣어주지 않는 구조를 가지는 입출력 회로를 가지는 계층적 신경망 구조의 언어모델 장치.
KR1020160032985A 2016-03-18 2016-03-18 입출력 회로를 가지는 계층적 신경망 구조의 언어모델 장치 KR20170108693A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160032985A KR20170108693A (ko) 2016-03-18 2016-03-18 입출력 회로를 가지는 계층적 신경망 구조의 언어모델 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160032985A KR20170108693A (ko) 2016-03-18 2016-03-18 입출력 회로를 가지는 계층적 신경망 구조의 언어모델 장치

Publications (1)

Publication Number Publication Date
KR20170108693A true KR20170108693A (ko) 2017-09-27

Family

ID=60036253

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160032985A KR20170108693A (ko) 2016-03-18 2016-03-18 입출력 회로를 가지는 계층적 신경망 구조의 언어모델 장치

Country Status (1)

Country Link
KR (1) KR20170108693A (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110399835A (zh) * 2019-07-26 2019-11-01 北京文安智能技术股份有限公司 一种人员停留时间的分析方法、装置及系统
US10672388B2 (en) 2017-12-15 2020-06-02 Mitsubishi Electric Research Laboratories, Inc. Method and apparatus for open-vocabulary end-to-end speech recognition
CN111738226A (zh) * 2020-07-31 2020-10-02 中国人民解放军国防科技大学 一种基于cnn和rcnn模型的文本识别方法及装置
KR20200137936A (ko) 2019-05-29 2020-12-09 경희대학교 산학협력단 한국어 기반 신경망 언어 모델을 위한 어휘 목록 생성 방법 및 장치

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10672388B2 (en) 2017-12-15 2020-06-02 Mitsubishi Electric Research Laboratories, Inc. Method and apparatus for open-vocabulary end-to-end speech recognition
KR20200137936A (ko) 2019-05-29 2020-12-09 경희대학교 산학협력단 한국어 기반 신경망 언어 모델을 위한 어휘 목록 생성 방법 및 장치
CN110399835A (zh) * 2019-07-26 2019-11-01 北京文安智能技术股份有限公司 一种人员停留时间的分析方法、装置及系统
CN110399835B (zh) * 2019-07-26 2024-04-02 北京文安智能技术股份有限公司 一种人员停留时间的分析方法、装置及系统
CN111738226A (zh) * 2020-07-31 2020-10-02 中国人民解放军国防科技大学 一种基于cnn和rcnn模型的文本识别方法及装置
CN111738226B (zh) * 2020-07-31 2020-11-20 中国人民解放军国防科技大学 一种基于cnn和rcnn模型的文本识别方法及装置

Similar Documents

Publication Publication Date Title
Yao et al. An improved LSTM structure for natural language processing
CN108647214B (zh) 基于深层神经网络翻译模型的解码方法
EP3469579B1 (en) Systems and methods for predicting pronunciations with word stress
CN107729313B (zh) 基于深度神经网络的多音字读音的判别方法和装置
Chen et al. A new statistical approach to Chinese Pinyin input
KR20180001889A (ko) 언어 처리 방법 및 장치
KR101715118B1 (ko) 문서 감정 분류용 딥러닝 인코딩 장치 및 방법.
Hori et al. Dialog state tracking with attention-based sequence-to-sequence learning
JP6461308B2 (ja) 音声認識装置およびリスコアリング装置
CN111563144A (zh) 基于语句前后关系预测的用户意图识别方法及装置
Jyothi et al. Acquiring speech transcriptions using mismatched crowdsourcing
KR20170108693A (ko) 입출력 회로를 가지는 계층적 신경망 구조의 언어모델 장치
CN110162789A (zh) 一种基于汉语拼音的词表征方法及装置
Kong et al. Dragnn: A transition-based framework for dynamically connected neural networks
CN110428823A (zh) 口语理解装置和使用该装置的口语理解方法
US20220139386A1 (en) System and method for chinese punctuation restoration using sub-character information
Gale et al. Experiments in Character-Level Neural Network Models for Punctuation.
Li et al. Multi-level gated recurrent neural network for dialog act classification
Hung Vietnamese diacritics restoration using deep learning approach
Diao et al. Heterographic pun recognition via pronunciation and spelling understanding gated attention network
Jyothi et al. Low-resource grapheme-to-phoneme conversion using recurrent neural networks
CN110852063B (zh) 基于双向lstm神经网络的词向量生成方法及装置
Castro et al. New directions in connectionist language modeling
Heymann et al. Improving CTC using stimulated learning for sequence modeling
US20160078013A1 (en) Fault-tolerant input method editor