KR20240018229A - 시내퍼 모델을 이용한 자연어 처리 시스템 및 방법 - Google Patents
시내퍼 모델을 이용한 자연어 처리 시스템 및 방법 Download PDFInfo
- Publication number
- KR20240018229A KR20240018229A KR1020220096224A KR20220096224A KR20240018229A KR 20240018229 A KR20240018229 A KR 20240018229A KR 1020220096224 A KR1020220096224 A KR 1020220096224A KR 20220096224 A KR20220096224 A KR 20220096224A KR 20240018229 A KR20240018229 A KR 20240018229A
- Authority
- KR
- South Korea
- Prior art keywords
- natural language
- language processing
- model
- neural
- data
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000003058 natural language processing Methods 0.000 title claims abstract description 55
- 210000000225 synapse Anatomy 0.000 claims abstract description 59
- 230000001537 neural effect Effects 0.000 claims description 58
- 238000012545 processing Methods 0.000 claims description 51
- 238000006243 chemical reaction Methods 0.000 claims description 19
- 230000008569 process Effects 0.000 claims description 17
- 238000007781 pre-processing Methods 0.000 claims description 6
- 238000004458 analytical method Methods 0.000 description 12
- 238000013519 translation Methods 0.000 description 12
- 230000014616 translation Effects 0.000 description 12
- 241000282412 Homo Species 0.000 description 7
- 210000004556 brain Anatomy 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000010801 machine learning Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 239000003607 modifier Substances 0.000 description 4
- 238000007664 blowing Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000946 synaptic effect Effects 0.000 description 2
- 241000590419 Polygonia interrogationis Species 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000021615 conjugation Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 108090000623 proteins and genes Proteins 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/58—Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/151—Transformation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Machine Translation (AREA)
- Devices For Executing Special Programs (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
Abstract
본 발명은 자연어 처리 시스템 및 방법에 관한 것으로, 보다 구체적으로 시내퍼 모델을 이용한 자연어 처리 시스템 및 방법을 제안한다.
Description
본 발명은 자연어 처리 시스템 및 방법에 관한 것으로, 보다 구체적으로 시내퍼 모델을 이용한 자연어 처리 시스템 및 방법에 관한 것이다.
자연어 처리(Natural Language Processing)는 요소 기술로 자연어 분석, 이해, 생성 등이 있으며, 정보 검색, 기계 번역, 질의응답 등 다양한 분야에 응용된다.
종래의 자연어 처리 방법을 통해 기계 번역 등을 수행하는 경우 부정확하거나 이해할 수 없는 문장을 생성할 가능성이 있었다.
보다 정확한 자연어 처리를 위해, 다양한 자연어 처리 과정이 수행될 수 있으며, 자연어 처리에는 자연어 분석, 자연어 이해, 자연어 생성 등의 기술이 사용될 수 있다.
자연어 분석은 자연어의 의미 등을 분석하는 것이고, 자연어 이해는 컴퓨터가 자연어로 주어진 입력에 따라 동작하게 하는 기술이며, 자연어 생성은 동영상이나 표의 내용 등을 사람이 이해할 수 있는 자연어로 변환하는 기술이다.
최근에는 이러한 자연어 처리에 있어서 신경망 모델(Neural Network model)이 이용되고 있다.
이러한 신경망 모델은 자연어 처리에 있어서 의미 분석에서 향상된 성능을 제공하고 있으나, 소스 데이터가 적으면 높은 정확도를 제공하지 못하고 일관성 없는 동작으로 구동되는 문제점이 있었다. 또한 매우 빠른 컴퓨터 성능과 방대한 전력소모를 필요로 하기 때문에 실용적으로 여러 어려움이 존재했다.
본 발명의 목적은 시내퍼 모델을 이용하여 자연어를 처리하는 경우 빅데이터 없이도 매우 빠른 속도로 자연어 처리가 가능하며, 높은 정확도와 일관성 있는 자연어 처리를 수행할 수 있는 시내퍼 모델을 이용한 자연어 처리 시스템 및 방법을 제공하는 것을 목적으로 한다.
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
본 발명에 따른 시내퍼 모델을 이용한 자연어 처리 방법은, 자연어로 쓰이거나 발음된 텍스트를 입력 받아 단어로 구성된 문장으로 변환하는 전처리 단계; 상기 전처리 단계를 통해 단어로 구성된 문장 내의 각 단어를 제1 코드 변환기(WNC)를 통해 신경개념코드로 변환하는 제1 변환 단계; 상기 제1 변환 단계를 통해 변환된 신경개념코드를 언어처리장치의 시내퍼 모델에 입력하는 단계; 상기 언어처리장치의 시내퍼 모델을 통해 인식된 신경개념코드를 해석하고 해석된 데이터를 출력하는 해석 및 출력 단계; 상기 언어처리장치에서 해석되어 출력된 데이터의 신경개념코드를 제2 코드 변환기(NWC)를 통해 단어로 변환하는 제2 변환 단계; 및 상기 제2 변환 단계를 통해 변환된 데이터를 해석된 데이터로 출력하는 해석 데이터 출력 단계를 포함할 수 있다.
바람직하게는, 시내퍼 모델을 이용한 자연어 처리 방법에서 상기 제1 변환 단계는, 입력된 단어를 십진수로 코드로 변환할 수 있다.
또한 바람직하게는, 시내퍼 모델을 이용한 자연어 처리 방법은 상기 제1 변환 단계에서, 입력된 단어를 십진수 코드로 변환 시 앞의 두자리는 품사를 나타낼 수 있다.
또한 바람직하게는, 시내퍼 모델을 이용한 자연어 처리 방법에서 상기 해석 및 출력 단계는, 레지스터 세트에서 각 신경개념코드(NCC)의 품사를 분석하여 문장에 대한 올바른 해석이 무엇인지 결정할 수 있다.
또한 바람직하게는, 시내퍼 모델을 이용한 자연어 처리 방법에서 상기 해석 및 출력 단계는, 제1 변환기 단계를 통해 문장의 모든 단어가 신경개념코드(NCC)로 변환되면 상기 시내퍼 모델에서 문장의 구문 구조가 결정되고 해석되어 신경개념코드(NCC)로 출력할 수 있다.
또한 바람직하게는, 시내퍼 모델을 이용한 자연어 처리 방법은 상기 해석 및 출력 단계에서, 캐시 메모리는, 시내퍼 모델을 통해 해석된 데이터를 출력을 생성하기 위해 임시로 저장할 수 있다.
또한 바람직하게는, 시내퍼 모델을 이용한 자연어 처리 방법은 상기 해석 및 출력 단계에서, 텍스트 랜덤 액세스 메모리(TRAM)는, 상기 캐시 메모리에서 처리하기 어려운 다량의 문장에 액세스할 수 있도록 시내퍼 모델 데이터를 저장할 수 있다.
또한 바람직하게는, 시내퍼 모델을 이용한 자연어 처리 방법은 상기 해석 및 출력 단계에서, 플래시 메모리 등 저장장치는, 중요한 정보가 포함된 문장을 나중에 액세스해야 할 수 있도록 저장할 수 있다.
또한 바람직하게는, 시내퍼 모델을 이용한 자연어 처리 방법은 상기 해석 및 출력 단계에서, 상기 시내퍼 모델은, 자연어에서 다른 방식으로 표현된 단어로 구성된 문장으로 분리하고, 문장 내 각 단어의 품사 및 인접 단어의 품사에 기초하여 단어 중 어느 것이 가지이고, 어느 것이 노드인지를 결정할 수 있다.
또한 바람직하게는, 시내퍼 모델을 이용한 자연어 처리 방법은 상기 해석 및 출력 단계에서, 상기 시내퍼 모델은, 노드와 가지를 결정한 후 노드들을 제1 방향으로 서로 연결하고, 가지들은 제1 방향 이외의 다른 방향으로 대응하는 노드들에 연결되도록 할 수 있다.
또한, 본 발명에 따른 시내퍼 모델을 이용한 자연어 처리 시스템은, 자연어를 입력하는 입력장치; 상기 입력장치에 입력된 아날로그 데이터를 디지털 데이터로 변환하는 아날로그-디지털 변환기(ADC); 상기 디지털 신호로 변환된 데이터를 신경개념코드로 변환하는 제1 코드 변환기(WNC); 상기 제1 코드 변환기(WNC)를 통해 입력되는 신경개념코드를 시내퍼 모델을 통해 해석하고 출력하는 언어처리장치; 상기 언어처리장치에서 출력된 신경개념코드를 해석된 단어 데이터로 변환하는 제2 코드 변환기(NWC); 상기 제2 코드 변환기(NWC)를 통해 변환된 디지털 데이터를 아날로그 데이터로 변환하는 디지털-아날로그 변환기(DAC); 및 상기 디지털-아날로그 변환기(DAC)를 통해 변환된 데이터를 해석된 자연어로 출력하는 출력장치를 포함할 수 있다.
본 발명에 따르면, 시내퍼 모델을 이용하여 자연어를 처리하는 경우 빅데이터 없이도 매우 빠른 속도로 자연어 처리가 가능하며, 높은 정확도와 일관성 있는 자연어 처리를 수행할 수 있는 효과를 가진다.
도 1은 자연어의 어순의 통합 상태를 나타내는 도면이다.
도 2 및 도 3는 본 발명의 실시예에 따른 시내퍼 모델(synapper model)의 개념을 나타내는 도면이다.
도 4는 본 발명의 일 실시예에 따른 시내퍼 모델을 이용한 자연어 처리 시스템을 나타내는 도면이다.
도 5는 본 발명의 다른 실시예에 따른 시내퍼 모델을 이용한 자연어 처리 시스템을 나타내는 도면이다.
도 6은 본 발명의 일 실시예에 따른 시내퍼 모델을 이용한 자연어 처리 방법의 흐름을 나타내는 순서도이다.
도 2 및 도 3는 본 발명의 실시예에 따른 시내퍼 모델(synapper model)의 개념을 나타내는 도면이다.
도 4는 본 발명의 일 실시예에 따른 시내퍼 모델을 이용한 자연어 처리 시스템을 나타내는 도면이다.
도 5는 본 발명의 다른 실시예에 따른 시내퍼 모델을 이용한 자연어 처리 시스템을 나타내는 도면이다.
도 6은 본 발명의 일 실시예에 따른 시내퍼 모델을 이용한 자연어 처리 방법의 흐름을 나타내는 순서도이다.
이하 첨부된 도면을 참조하면서 본 발명에 따른 바람직한 실시 예를 상세히 설명하기로 한다.
본 발명의 이점 및 특징, 그리고 그것을 달성하는 방법은 첨부된 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다.
그러나 본 발명은 이하에 개시되는 실시예들에 의해 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
또한, 본 발명을 설명함에 있어 관련된 공지 기술 등이 본 발명의 요지를 흐리게 할 수 있다고 판단되는 경우, 그에 관한 자세한 설명은 생략하기로 한다.
세상에는 여러 언어들이 존재한다. 이 언어들은 다양한 어순(word order)으로 문장을 생성하기 때문에 번역이나 문장 처리에 있어 많은 어려움이 존재한다. 이러한 언어들의 각각 다른 문장구조를 여러 차원(dimension)을 이용하여 하나의 통일된 구조로 통합시킬 수 있다.
본 명세서에서 소스 데이터는 자연어 처리에 있어서 이용되는 텍스트 데이터를 포함한 데이터를 의미할 수 있다.
도 1에 도시된 바와 같이, 언어에 따라 단어들은 다른 순서로 나열되어 문장을 형성한다. 그리하여 언어들의 문법은 각각 다른 것으로 간주되어왔다. 예를 들어, 한국어와 영어 같은 언어들은 문법적으로 공통성이 거의 존재하지 않는 것으로 나타난다. 기본적으로 어순부터가 다르기 때문이다. 주어(subject), 목적어(object), 동사(verb)를 어떤 순서로 나열하느냐에 따라 각 언어의 어순이 달라진다.
즉, SOV, SVO, OVS, VOS, VSO, OSV 총 6가지의 어순 중에 한국어는 SOV(주어-목적어-동사)를 기본으로 사용하며 영어나 다른 서유럽 언어들은 대부분 SVO(주어-동사-목적어)를 기본으로 사용하고 있다. 그러나 주어, 목적어, 동사 이 세 토큰(token)을 원(circular) 형태로 연결할 경우 조합 방식이 6개에서 2개로 축소된다.
도 1(a)에서는 시계방향으로 이동하여, SOV, OVS, VSO 어순들을 나타낸다. 반대로 도 1(b)에서는 시계반대방향으로 움직여 SVO, VOS, OSV 어순들을 나타낸다. 토큰이 이동하는 방향을 제외할 경우 두 원은 하나의 동일한 형태를 보인다. 이 하나의 구조에서 자연언어들의 모든 어순이 존재하는 것을 알 수가 있다.
이때 각 언어마다 단어가 나열되는 순서가 다르더라도 문장의 의미는 달라지지 않는다.
단어를 여러 차원(dimension)으로 연결시키면 시내퍼 모델(synapper model)이 완성된다.
도 2 내지 도 6을 참조하여, 본 발명에 따른 시내퍼 모델을 이용한 자연어 처리 시스템 및 방법에 관하여 살펴본다.
도 2의 문장을 보면 주어 `Jane`으로 시작하여 시계방향으로 이동할 경우 영어 문장이 완성된다.
반면 주어에서 시계반대방향으로 단어를 읽으면 한국어나 일본어 어순에 맞는 문장이 출력될 수 있다.
즉, 영어: Jane has a very fast brown horse.
한국어: Jane (a) very fast brown horse has.
→ 제인은 매우 빠른 갈색 말을 가졌다.
일본어: Jane (a) very fast brown horse has.
관사는 한국어나 일본어에서는 생략되므로 단어 `a`는 제거하면 된다. 몇몇 언어에서는 수식어가 피수식어 뒤에 들어가는 경우가 있는데 그럴 경우 처리하는 순서를 바꾸어 해당되는 수식어를 피수식어 다음에 처리하면 된다. 이런 방식으로 일반적인 서술형 문장을 시내퍼 모델에 적용할 경우 문장 구조를 알아낼 수 있게 된다.
이 구조에서 어순에 맞게 단어를 나열하면 언어와 상관없이 정확한 문장을 찾아낼 수 있다. 즉 n차원 문장구조를 통해 일반적으로 사용되는 1차원적 문장 추출이 가능해진다.
즉, 생각을 글로 표현하는 것의 문제는 단어가 많아질수록 분석을 위한 문장이 점점 복잡해진다는 점이다. 모든 단어가 같은 방향이나 차원으로 쓰여지기 때문이다. 시내퍼 모델(SMU)을 통해 문장의 구문 구조는 두 개 이상의 방향 또는 차원을 사용하여 훨씬 더 직관적이게 된다.
여기에서 사용된 시내퍼 모델은 전통적으로 작성된 문장(1차원 또는 선형)을 다차원 문장 구조로 변환하는 데 사용되는 모델 기반 방법이다.
언어. 즉, 시내퍼 모델은 문장의 다차원 표현을 실현하기 위해 처리에 의존한다.
시내퍼 모델은 문장(생각)이 인간 두뇌에 의해 구조화되는 방식, 즉 인간 두뇌가 문장을 형성하는 방식에 대한 추정을 기반으로 문장을 처리하고 제시한다. 문장(즉, 문장 이면의 아이디어 또는 개념)이 처리되어 시내퍼 형식이나 모델로 제시되면, 번역 및 해석을 위한 거의 모든 대상 언어의 문장으로 쉽게 재창조되거나 렌더링된다.
첫째, 문장에 시내퍼 모델의 구조가 주어진다. 즉, 시내퍼 모델은 본 발명의 학습데이터(동사 데이터베이스, 형용사 데이터베이스, ISP를 통해 제공되는 데이터 소스 등)를 통해 각 단어의 품사를 파악하기 위해 텍스트를 처리한다.
다음으로, 시내퍼 모델은 처리 중인 문장의 각 단어가 앞과 뒤에 오는 단어의 품사를 분석하여 가지(branch)인지 노드(node)인지를 판별한다.
여기서 노드(node)는 메인 루프에 속하는 단어를 의미한다.
또한, 여기서 가지(branch)는 하나의 특정 노드(node)와 관련된 보완 단어를 의미한다.
그런 다음, 본 발명의 시내퍼 모델은 모든 노드(node)를 한 방향으로 부착하고 가지(branch) 단어를 다른 방향(들)의 노드(node)에 부착한다.
이후에 시내퍼 모델을 기반으로 문장의 유형을 결정한다.
즉, 시내퍼 모델에서 문장을 처리하여 모든 가지(branch) 단어를 제거할 수 있다.
문장의 남은 부분(단순한 노드)은 시내퍼 모델을 기반으로 핵심 문장으로 간주된다. 이것은 소스 데이터 언어의 원래 문장을 노드의 품사로 추가로 제거하기 위해 독창적인 원리에 따라 추가로 처리될 수 있다.
그런 다음 시내퍼 모델은 이 정보를 사용하여 문장이 질문인지, 문장인지 또는 다른 것(즉, 다른 유형의 문장 구조)인지 파악할 수 있다.
시내퍼 모델 처리에 기반한 문장은 문장 또는 명령으로 간주될 수 있다. 그런 다음, 즉석 문장 모델은 주어, 동사구 및 문장의 나머지 부분을 식별하는 것과 같은 내용에 대해 추가로 분석될 수 있다.
또한, 모든 노드(node)가 한 차원에 있는 반면 가지(branch) 단어는 반드시 한 차원으로 제한될 필요는 없다. 인간의 두뇌가 가지(branch) 단어에 대해 여러 차원을 사용할 가능성이 있다는 이해를 전제로 한다.
예를 들어, 단어는 문장의 다른 단어와의 관계에 따라 노드(node) 또는 가지(branch)로 시내퍼 모델에 따라 결정된다.
예를 들어 형용사 뒤에 다른 형용사나 명사가 오면 가지(branch)가 된다(예: fast car).
또한, 형용사 뒤에 다른 형용사나 명사가 오지 않으면 노드(node)가 된다(예: car is fast).
앞에서 살펴본 바와 같이, 시내퍼 모델을 통한 자연어 처리 방법에서, 모든 언어에 대한 단어 순서 선택은 여섯(6)개뿐이다.
SOV, SVO, OSV, OVS, VSO 및 VOS. 그 중 3개는 한 방향(시계 방향)으로 이동하고 나머지 3개는 반대 방향(시계 반대 방향)으로 이동한다.
따라서 올바른 구조를 가지고 있다면 적어도 이론상으로는 문장을 모든 자연어로 번역할 수 있다.
시내퍼 모델은 문장에 올바른 구조를 제공한다. 또한 문장 안의 각 단어들을 특정한 숫자 코드(즉, 신경개념코드)로 변환하여 특정 언어에 의존하지 않고도 시내퍼 모델로 처리가 가능하다.
이는 특정 언어(예: 출발어)의 각 단어를 다른 언어(즉, 목표 언어)의 단어로 번역하는 일반적인 관행과 구별된다.
많은 단어가 여러 의미를 갖고 있고 오역이 발생할 수 있기 때문이다.
도 4 내지 도 5에서는 본 발명에 따른 시내퍼 모델을 이용한 자연어 처리 시스템을 나타내고 있다.
도 4 내지 도 5를 참조하면, CPU(100)에 입력된 자연어에서 단어를 추출하고 제1 코드 변환기(160, WNC: Word-to-NCC Converter)를 통해 단어를 신경개념코드로 변환한다.
이어서, 신경개념코드로 변환된 값을 언어처리장치(200, LPU: Language Processing Unit)에 입력하여 자연어를 처리한 후 제2 코드 변환기(170, NWC: NCC-to-Word Converter)로 출력한다.
제2 코드 변환기(170)에서는 언어처리장치(200)에서 자연어 처리된 출력값인 신경개념코드를 단어로 변환할 수 있다.
제2 코드 변환기(170)에서 변환된 값을 CPU(100)에 전달하여, 입력된 자연어를 자연어 처리(번역)하여 출력할 수 있는 것을 특징으로 한다.
여기서 신경개념코드(neuroconcept code)는 신경 개념을 나타내는 32비트(bit) 이진 코드(binary code)를 의미할 수 있다.
또한, 이진 코드(binary code)를 십진수(decimal)로 표현할 수 있으며, 십진수의 처음 두자리는 품사를 나타내는데 사용될 수 있다.
다음 8자리는 특정 신경 개념을 나타내는데 사용될 수 있다.
NCC는 다음과 같이 2진수로 32개, 십진수로 4,294,967,295개로 표현될 수 있다.
1111 1111 1111 1111 1111 1111 1111 1111(바이너리)
4294967295(십진수)
십진수의 처음 두 자리는 품사를 나타내는 데 사용된다. 다음 8자리는 특정 신경 개념을 나타내는 데 사용될 수 있다.
예를 들어 0001001732(십진수)는 '택시 기사'를 의미하는 NCC이고 0500008055(십진수)는 '약속하다'을 의미한다.
첫 번째 NCC의 처음 두 자리인 00은 신경 개념이 명사임을 나타낸다. 두 번째 NCC의 처음 두 자리인 05은 신경 개념이 동사임을 나타낸다.
품사를 나타내기 위해 두 자리 숫자를 사용하는 한 가지 스키마(schema)가 있다.
00 = 명사, 05 = 동사, 10 = 형용사, 15 = 부사, 20 = 전치사, 22 = 접속사, 30 = 감탄사로 나타낼 수 있다.
그러나 접속사 및 감탄사와 같은 품사에는 수백 개의 신경 개념이 필요하다. 모든 언어에서 가장 많은 신경 개념을 요구하는 품사는 명사이다. 거의 1억 개의 명사 신경개념(정확히 94,967,295개)을 나타낼 가능성이 있으면 모든 실용적인 목적에 충분해야 한다.
NCC는 인간이 이해하는 것(단어)과 기계가 이해하는 것(2진수) 사이의 중간 지점에 있다. 사람과 컴퓨터가 서로 이해할 수 있도록 C와 같은 프로그래밍 언어를 사용하는 것과 비슷하다. 이것이 신경개념코드(NCC)가 십진수로 표시되는 이유이다. 그렇지 않으면, 인간은 코드에서 의미를 찾을 수 없다. 그러나 컴퓨터는 이진수만 처리할 수 있다. 따라서 십진수로 된 신경개념코드(NCC)의 처음 두 자리를 이진수로 분석하는 추가 단계가 있어야 한다. 예를 들어, 2200007710은 따라서 신경개념코드(NCC)를 의미한다. 처음 두 자리 22는 접속사임을 나타낸다. 인간은 품사가 무엇인지 알기 쉽다. 그러나 컴퓨터는 이 정보를 이진법으로 분석해야 한다. 따라서 처음 두 자리 숫자를 얻으려면 6비트가 필요하다.
신경개념코드(NCC) 안에서 품사를 나타내는 숫자는 00에서 42 사이이다. 예를 들어 22진수는 010110이다. 논리 게이트는 이러한 종류의 정보를 분석하여 문장을 처리하는 데 사용된다. 신경개념코드(NCC)의 나머지 부분은 대부분 처리와 관련이 없으므로 무시해야 한다.
문장의 모든 단어가 신경개념코드(NCC)로 변환되면 문장의 구문 구조가 결정되고 시내퍼(synapper) 모델(230)로 전환될 수 있다. 신경개념코드(NCC)에서 문장의 시내퍼(synapper) 모델은 기계의 청사진을 갖는 것과 같다. 문장 분석을 위한 충분한 정보를 담고 있어 기계 학습 기술을 사용하지 않고도 번역, 독해, 회화 등의 응용이 가능하다.
이를 통해 언어처리장치(200, LPU)가 처리할 수 있다. 빅데이터 없이도 매우 빠른 속도와 전력 효율로 언어를 처리할 수 있다. 이것은 ALU(Arithmetic Logic Unit)가 아주 적은 전력으로 매우 빠른 속도로 수학적 계산을 출력할 수 있는 것과 유사하다.
또한 이 단계의 결과는 현재 사용 가능한 자연어 처리(NLP)용 기계 학습 알고리즘보다 더 정확할 수 있다. 이것은 인간의 두뇌와 유사한 방법으로 언어를 처리하는 것으로 추정되는 시내퍼 모델 유닛(SMU: Synapper Model Unit) 때문이다.
반면 기계 학습 알고리즘은 본질적으로 확률적 예측을 계산함으로 항상 정확한 결과를 생성할 수 없다.
언어처리장치(200, LPU)는 제어장치(210)와 레지스터(220), 시내퍼 모델 유닛(230, SMU) 및 캐시 메모리(240)를 포함할 수 있다.
제어장치(210)는 레지스터(220)와 시내퍼 모델 유닛(230)과 캐시 메모리(240)에서 수행되는 것을 제어할 수 있다.
레지스터(220)는 CPU(100)에서 받은 문장은 레지스터(220)에 넣어야 한다. 처음에는 쉼표, 마침표 및 물음표와 같은 구두점을 무시하고 차례로 조합된 변환된 신경개념코드(NCC) 문자이다.
이 간단한 레지스터 세트에서 각 신경개념코드(NCC)의 품사를 분석하여 문장에 대한 올바른 시내퍼(synapper) 모델이 무엇인지 결정한다.
예를 들면, `The Three Musketeers is a very good book(삼총사는 아주 좋은 책입니다)`에서
처음 세 단어(The Three Musketeers)는 세 개의 개별 단어로 간주될 수 있다. 그러나 그것들은 같은 이름의 책인 하나의 신경개념만을 나타낸다.
따라서 삼총사는 단 하나의 신경개념코드(NCC)로 축소될 수 있다.
00-------- 05-------- 11-------- 15-------- 10-------- 00--------
이 NCC 문자열은 문장의 품사가 명사(00) + 동사(05) + 한정사(11) + 부사(15) + 형용사(10) + 명사(00)이다(나머지 8자리는 관련 없음). 이 정보가 레지스터에 입력되면 논리 게이트를 사용하여 단어 사이의 구문 관계를 형성한다. 예를 들어, 부사 + 형용사 + 명사의 조합('very good book')은 하나의 노드로 함께 그룹화되어야 함을 나타낸다. AND 게이트를 사용하여 문자열 NCC는 다음과 같이 변할 수 있다.
00-------- ― 05-------- ― 11-------- , 15-------- + 10-------- | 00--------
T.T.M. ― is ― a , very + good | book
즉 도 3에 도시된 바와 같이,
― (대시) = 노드를 수평으로 연결한다(예: "is ― book").
| (막대) = 노드와 지점을 연결한다(예: "a | book").
, (쉼표) = 다음 토큰도 분기이지만 동일한 차원이 아님을 나타낸다(예: "a , good").
+ (더하기) = 같은 차원에 속하는 여러 가지를 연결한다(예: "매우 + 좋음").
즉, 15 AND 10은 "15 + 10"이 되고 10 AND 00은 "10 | 00.” (이것은 고정되어 있다. "10 AND 00"의 모든 인스턴스에 대해 결과는 항상 동일해야 한다.) 따라서 세 가지 모두 함께 "15 + 10 | 00" 또는 "매우 + 좋음 | 책." 이것은 논리 게이트를 사용하는 것과 유사하다.
더하기 및 빼기와 같은 기호를 사용하여 산술을 수행한다.
문장을 시내퍼(synapper) 모델로 저장하려면 7개의 레지스터 세트가 필요하다.
PNP + PVP + SP + CE 1 + CE 2 + CE 3 + CE 4
일반적인 문장은 기본 명사구(PNP), 기본 동사구(PVP) 및 하위 술어(SP)로 나뉜다. 하나의 보완 요소(CE)가 맨 처음과 맨 앞에 배치될 수 있다.
아주 끝 각각. 다른 두 개의 보완 요소는 PNP, PVP 및 SP 사이에 배치될 수 있다. SVO에서는 다음과 같이 표시된다.
CE 1 + PNP + CE 2 + PVP + CE 3 + SP + CE 4
다음은 7개 부분이 모두 포함된 예시 문장이다.
Once upon a time, a dragon, female, flew, while blowing fire, over the mountain, supposedly.(옛날 옛적에 암컷 용이 아마도 불을 불며 산을 넘어 날아갔습니다.)
핵심 문장(PNP + PVP + SP)은 간단히 "용이 산을 넘어 날아갔습니다"이다.
선택적인 문구나 절(CE)은 시작("Once a time"), PNP와 PVP 사이("female"), PVP와 SP 사이("while blowing fire"), 끝("supposedly")에 추가될 수 있다. 각 범주에 NCC를 저장할 수 있는 충분한 공간을 확보하기 위해 다음을 제안한다.
PNP: 25 x (32비트 NCC + 2비트 S + 1비트 P) + 1비트 V = 876비트
PVP: 15 x (32비트 NCC + 2비트 S + 1비트 P) + 1비트 V = 526비트
SP: 40 x (32비트 NCC + 2비트 S + 1비트 P) + 1비트 V = 1,401비트
CE: 20 x(32비트 NCC + 2비트 S + 1비트 P) + 1비트 V = 701비트(총 2,804비트)
모든 비트를 합하면 총 5,607비트가 된다. 그러나 신경개념코드(NCC)가 특정 방식으로 함께 링크될 수 있도록 각 신경개념코드(NCC) 사이에 3비트 부호 레지스터도 필요하다.
그 결과 PNP, PVP, SP 및 4개의 CE에 대해 각각 72비트, 42비트, 117비트 및 228비트가 추가된다. 따라서 하나의 시내퍼 모델을 저장하기 위해 총 6,066비트의 레지스터가 필요하다.
명사의 성(예: female) 또는 동사의 시제(예: 과거형)와 같은 정보를 저장하려면 2비트 보충 레지스터(S)가 필요하다. 형용사가 비교급인지 최상급인지 또는 둘 다 아닌지를 나타내는 데에도 사용할 수 있다.
복수의 명사(예: 과일 대 과일들)를 알기 위해서는 1비트 레지스터(P)가 필요하다. 동사의 활용 또는 굴절 조건을 나타내는 데에도 사용할 수 있다(예: go/goes). 오버플로(overflow)를 표시하려면 1비트 레지스터(V)가 필요하다.
옵션 레지스터는 다음과 같이 각 문장에 대해 더 많이 알기 위해 사용할 수 있다.
문장 유형(2비트): 선언적, 의문문 등
콘텐츠 유형(6비트): 일반, 대화, 캐주얼, 공식, 법률, 물리학 등
언어 유형(9비트): en, en-uk, en-us, fr-fr, fr-ca 등
단어 순서(3비트): SVO, SOV 등
주어(32비트): 대명사가 가리키는 명사(예: he -> John)
목적어(32비트): 대명사가 가리키는 명사(예: it -> bird)
동사(32비트): 보조 동사가 참조하는 동사(예: did -> walked)
이 특수 레지스터(총 116비트)는 문장이 변경될 때만 조건을 변경한다.
캐시 메모리(240)는 처리된 문장은 출력을 생성하기 위해 임시로 저장해야 한다. 언어처리장치(200, LPU)의 캐시 메모리(240)는 한두 단락에 속하는 문장을 저장할 수 있을 만큼 커야 한다.
때로는 책의 모든 문장에 액세스해야 할 수도 있다. 즉, 시내퍼 모델 데이터를 저장하기 위해 특별히 설계된 텍스트 랜덤 액세스 메모리(TRAM, 310)에 수만 문장을 임시로 저장해야 한다.
언어처리장치(200)용 TRAM(310)은 GPU용 VRAM과 동일한 개념으로 볼 수 있다.
즉, 언어처리장치(200)의 캐시 메모리(240)는 한두 단락에 속하는 문장을 저장할 수 있고, 여러 문장을 저장하기 위해서는 TRAN(310)을 사용하는 것을 의미한다.
또한, 플래시 메모리(320)는, 중요한 정보가 포함된 문장은 나중에 액세스해야 할 수도 있다. 이런 식으로 언어처리장치(200, LPU)는 언어를 처리할 뿐만 아니라 질문에 대답할 수도 있다.
인간이 수집할 수 있는 인간의 뇌에는 언어 처리 장치("언어 능력")와 기억력이 있기 때문이다. 중요하다고 생각되는 문장의 시내퍼 모델을 플래시 메모리(320)에 저장함으로써 언어처리장치(200, LPU)는 인간의 두뇌처럼 행동할 수 있다.
또한, 본 발명에 따른, 시내퍼 모델을 이용한 자연어 처리 시스템은 도 5에 도시된 바와 같이, 카메라(Camera)/마이크(Microphone)과 같이 자연어를 입력하는 자연어 입력장치(110)와 입력장치(110)에 입력된 아날로그 데이터를 디지털 데이터로 변환하는 아날로그-디지털 변환기(120, ADC)와, 디지털 데이터로 변환된 데이터를 신경개념코드로 변환하는 제1 코드 변환기(160, WNC)와, 제1 코드 변환기(160, WNC)를 통해 입력되는 신경개념코드를 시내퍼 모델(SMU)을 통해 해석하고 출력하는 언어처리장치(200)와, 언어처리장치(200)에서 출력된 신경개념코드를 해석된 단어 데이터로 변환하는 제2 코드 변환기(170, NWC)와, 제2 코드 변환기(170, NWC)를 통해 변환된 디지털 데이터를 아날로그 데이터로 변환하는 디지털-아날로그 변환기(180, DAC) 및 디지털-아날로그 변환기(170, DAC)를 통해 변환된 데이터를 해석된 자연어로 출력하는 디스플레이(Display) 장치/스피커(Speaker)와 같은 출력장치(190)를 포함할 수 있다.
도 6에 도시된 바와 같이, 본 발명에 따른 시내퍼 모델을 이용한 자연어 처리 방법은, 자연어로 쓰이거나 발음된 텍스트 즉, 소스데이터를 입력 받아 단어로 구성된 문장으로 변환하는 전처리 단계(S110)와, 전처리 단계(S110)를 통해 단어로 구성된 문장 내의 각 단어를 제1 코드 변환기(WNC)를 통해 신경개념코드로 변환하는 제1 변환 단계(S120)와, 제1 변환 단계(S120)를 통해 변환된 신경개념코드를 언어처리장치의 시내퍼 모델에 입력하는 단계(S130)와, 언어처리장치(200, LPU)의 시내퍼 모델(SMU)을 통해 인식된 신경개념코드를 해석하고 해석된 데이터를 출력하는 해석 및 출력 단계(S140)와, 언어처리장치(LPU)에서 해석되어 출력된 데이터의 신경개념코드를 제2 코드 변환기(NWC)를 통해 단어로 변환하는 제2 변환 단계(S150) 및 제2 변환 단계(S150)를 통해 변환된 데이터를 해석된 데이터로 출력하는 해석 데이터 출력 단계(S160)를 포함할 수 있다.
또한, 시내퍼 모델을 이용한 자연어 처리 방법에서 제1 변환 단계(S120)는, 입력된 단어를 십진수(decimal)로 코드로 변환할 수 있다.
또한, 입력된 단어를 십진수(decimal) 코드로 변환 시 앞의 두자리는 품사를 나타낼 수 있다.
또한, 해석 및 출력 단계(S140)는, 레지스터(Registers) 세트에서 각 신경개념코드(NCC)의 품사를 분석하여 문장에 대한 올바른 해석이 무엇인지 결정할 수 있다.
또한, 해석 및 출력 단계(S140)는, 제1 변환기 단계(S120)를 통해 문장의 모든 단어가 신경개념코드(NCC)로 변환되면 시내퍼 모델(SMU)에서 문장의 구문 구조가 결정되고 해석되어 신경개념코드(NCC)로 출력할 수 있다.
또한, 해석 및 출력 단계(S140)에서, 사용되는 캐시 메모리(240)는, 시내퍼 모델을 통해 해석된 데이터를 출력을 생성하기 위해 임시로 저장할 수 있다.
또한, 해석 및 출력 단계(S140)에서, 텍스트 랜덤 액세스 메모리(310, TRAM)가 사용되는 경우는, 캐시 메모리(240)에서 처리하기 어려운 다량의 문장에 액세스할 수 있도록 시내퍼 모델 데이터를 저장할 수 있다.
또한, 해석 및 출력 단계(S140)에서, 플래시 메모리(320)가 사용되는 경우는, 중요한 정보가 포함된 문장을 나중에 액세스해야 할 수 있도록 저장할 수 있다.
또한, 해석 및 출력 단계(S140)에서, 시내퍼 모델은, 자연어에서 다른 방식으로 표현된 단어로 구성된 문장으로 분리하고, 문장 내 각 단어의 품사 및 인접 단어의 품사에 기초하여 단어 중 어느 것이 가지(branch)이고, 어느 것이 노드(node)인지를 결정할 수 있다.
또한, 해석 및 출력 단계(S140)에서, 시내퍼 모델은, 노드(node)와 가지(branch)를 결정한 후 노드(node)들을 제1 방향으로 서로 연결하고, 가지(branch)들은 제1 방향 이외의 다른 방향으로 대응하는 노드(node)들에 연결되도록 할 수 있다.
보다 구체적으로 시내퍼 모델(SMU)을 이용한 자연어 처리 방법에서 처리 과정을 살펴보면, 예를 들어, `영희가 철수 집에 갔다`라는 문장이 있는 경우, 이 데이터를 CPU나 다른 소스로부터 텍스트로 수신할 수 있다.
수신된 데이터가 텍스트가 아닐 경우 텍스트로 변환해준다.
이문장은 일반적인 단어들로 구성되어 있기 때문에 제1 변환 단계(S120)에서 제1 코드 변환기(160, WNC)를 통해 단어들을 신경개념코드(NCC)로 변환해준다.
이때, 조사들은 전부 제거될 수 있다.
영희(가) 철수 집에 갔다
→ 영희 철수 집에 갔다
→ 0012334534 0035475344 0084023453 2048554671 0587335288
이 신경개념코드는 사람이 이해하기 쉽게 십진수로 표기하고 처리는 이진수로 할 수 있다. 따라서, 해당 데이터가 언어처리장치(LPU)로 전달되어 제어 장치(210, Control Unit)를 통해 레지스터(220)로 전달된다.
PNP: 0012334534
PVP: 0587335288
SP: 0035475344 0084023453 2048554671
이제 시내퍼 모델(SMU)에서 해당 데이터를 가지고 해석 데이터를 생성한다.
예로 `명사 뒤에 명사가 들어가면 가지(branch)로 처리(if Word03 and Word04 == "noun" then ...) 규칙을 통해 각 NCC가 어떻게 연결되는지를 결정한다. 그리고 그 순서에 맞게 다시 문장으로 나열한다. 만약 영어로 번역이 목적이라면 다음과 같다.
(CE 1) + PNP + (CE 2) + PVP + (CE 3) + SP + (CE 4)
0012334534 + 0587335288 + 2048554671 + 0035475344 + 0084023453
0012334534 ― 0587335288 ― 2048554671 ― 0035475344 | 0084023453
그리고 이 시내퍼 모델을 캐시 메모리로 이동시킨다. 또한, 필요에 따라서 TRAM에 저장할 수도 있다.
해당 실시예에서는 task가 끝났기 때문에 언어처리장치(LPU)에서 제2 코드 변환기(170, NWC)로 해당 데이터를 보낸다.
제2 코드 변환기(170, NWC)는 신경개념코드(NCC)를 영어 단어로 변환해준다.
0012334534 ― 0587335288 ― 2048554671 ― 0035475344 | 0084023453
younghee ― went ― to ― cheolsoo | house
CPU(100)에서 이 출력값을 받아 일반적인 linear 문장 구조로 변환시킨다. 특정 언어에만 해당하는 규칙들은 CPU에서 기존에 있는 여러 방법들로 각 언어의 문법에 맞게 수정해준다.
younghee went to cheolsoo house
→ Younghee went to Cheolsoo's house.
따라서 본 발명에 따르면, 머신러닝 기술을 바탕으로 하는 현재 neural machine translation(NMT)과는 다르게 번역시 원본문을 훼손하지 않는다.
시내퍼 모델에서 원본문의 구문 구조(syntactic structure)를 알아내면 그 구조 안에서 모든 언어의 번역문이 나올 수 있다.
사람이 만든 문장을 그대로 유지하면서 번역문이 추출되므로 번역이 자연스럽고 정확하게 된다.
또한, 본 발명은 빅데이터가 필요 없기 때문에 학습(training)하는 과정도 필요 없다.
머신러닝 기반 SMT나 NMT 알고리즘은 특정 언어들마다 따로 학습을 시켜줘야 한다. 예로 네이버 Papago는 학습된 데이터가 많은 영어->한국어, 한국어->영어 번역은 잘 하지만 우즈벡어->베트남어 등과 같은 다른 언어 조합은 번역 성능이 떨어질 수 있다. 그러나 본 발명에 따른 시내퍼 모델을 이용한 자연어 처리 방법은 기본적으로 모든 언어에 동일하게 적용할 수 있어 번역 성능이 떨어질 수 있는 문제점을 해결할 수 있다.
또한, 추가적으로 시내퍼 모델(SMU)은 각 문장의 정확한 구조를 알아낼 수 있어 각 문장이 가지고 있는 의미에 대한 정보도 가질 수 있다. 유전자 구조를 알면 여러 일들이 가능해지는 것처럼 문장의 구조를 알면 기존에 불가능했거나 어려웠던 일들이 가능해진다. 즉, 문장 구조를 분석하면 이 문장이 긍정적인 표현인지 부정적인 표현인지를 알아낼 수가 있다.
따라서, 현재 머신러닝 기반 알고리즘이 필요로하는 전력소비나 연산력(computing power)이 요구되지 않아서 간단한 작업(task)일 경우 일반 스마트폰 기기로도 충분한 처리가 가능할 수 있다. 그렇기 때문에 인터넷 접속 없이도 본인이 소유한 기기에서 자연어 처리가 가능해진다. 방대한 양의 문장을 빨리 처리해야 되는 경우 위 프로세스를 하드웨어 칩으로 설계하면 더욱 더 빠른 성능을 기대할 수 있다.
결론적으로 본 발명에 따르면, 시내퍼 모델을 이용하여 자연어를 처리하는 경우 빅데이터 없이도 매우 빠른 속도로 자연어 처리가 가능하며, 높은 정확도와 일관성 있는 자연어 처리를 수행할 수 있는 효과를 가진다.
이상에서 설명된 시스템은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어 처리 시스템은 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 시스템은 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 시스템이 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 시스템은 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 시스템을 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 시스템을 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 시스템에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히
설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
지금까지 본 발명에 따른 시내퍼 모델을 이용한 자연어 처리 시스템 및 방법에 관한 구체적인 실시예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서는 여러가지 실시 변형이 가능함은 자명하다. 그러므로 본 발명의 범위에는 설명된 실시예에 국한되어 전해져서는 안되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
즉, 전술된 실시예는 모든 면에서 예시적인 것이며, 한정적인 것이 아닌 것으로 이해되어야 하며, 본 발명의 범위는 상세한 설명보다는 후술 될 특허청구범위에 의하여 나타내어지며, 그 특허청구범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100: CPU(Central Processing Unit)
110: 입력장치
120: 아날로그-디지털 변환기(ADC)
160: 제1 코드 변환기(WNC: Word-to-NCC Converter)
170: 제2 코드 변환기(NWC: NCC-to-Word Converter)
180: 디지털- 아날로그 변환기(DAC)
190: 출력장치
200: 언어처리장치(LPU: Language Processing Unit)
210: 제어장치(Control Unit)
220: 레지스터(Registers)
230: 시내퍼 모델 유닛(SMU: Synapper Model Unit)
240: 캐시 메모리(Cache Memory)
310: 텍스트 랜덤 액세스 메모리(TRAM)
320: 플래시 메모리(Flash Memory)
110: 입력장치
120: 아날로그-디지털 변환기(ADC)
160: 제1 코드 변환기(WNC: Word-to-NCC Converter)
170: 제2 코드 변환기(NWC: NCC-to-Word Converter)
180: 디지털- 아날로그 변환기(DAC)
190: 출력장치
200: 언어처리장치(LPU: Language Processing Unit)
210: 제어장치(Control Unit)
220: 레지스터(Registers)
230: 시내퍼 모델 유닛(SMU: Synapper Model Unit)
240: 캐시 메모리(Cache Memory)
310: 텍스트 랜덤 액세스 메모리(TRAM)
320: 플래시 메모리(Flash Memory)
Claims (11)
- 자연어로 쓰이거나 발음된 텍스트를 입력 받아 단어로 구성된 문장으로 변환하는 전처리 단계;
상기 전처리 단계를 통해 단어로 구성된 문장 내의 각 단어를 제1 코드 변환기(WNC)를 통해 신경개념코드(NCC)로 변환하는 제1 변환 단계;
상기 제1 변환 단계를 통해 변환된 신경개념코드를 언어처리장치의 시내퍼 모델에 입력하는 단계;
상기 언어처리장치의 시내퍼 모델을 통해 인식된 신경개념코드를 해석하고 해석된 데이터를 출력하는 해석 및 출력 단계;
상기 언어처리장치에서 해석되어 출력된 데이터의 신경개념코드를 제2 코드 변환기(NWC)를 통해 단어로 변환하는 제2 변환 단계; 및
상기 제2 변환 단계를 통해 변환된 데이터를 해석된 데이터로 출력하는 해석 데이터 출력 단계를 포함하는, 시내퍼 모델을 이용한 자연어 처리 방법.
- 청구항 1에 있어서,
상기 제1 변환 단계는,
입력된 단어를 이진수/십진수 코드로 변환하는, 시내퍼 모델을 이용한 자연어 처리 방법.
- 청구항 2에 있어서,
상기 제1 변환 단계에서,
입력된 단어를 신경개념코드(NCC)로 변환 시 십진수 앞의 두자리는 품사를 나타내는, 시내퍼 모델을 이용한 자연어 처리 방법.
- 청구항 1에 있어서,
상기 해석 및 출력 단계는,
레지스터 세트에서 각 신경개념코드(NCC)의 품사를 분석하여 문장에 대한 올바른 해석이 무엇인지 결정하는, 시내퍼 모델을 이용한 자연어 처리 방법.
- 청구항 1에 있어서,
상기 해석 및 출력 단계는,
제1 변환기 단계를 통해 문장의 모든 단어가 신경개념코드(NCC)로 변환되면 상기 시내퍼 모델에서 문장의 구문 구조가 결정되고 해석되어 신경개념코드(NCC)로 출력하는, 시내퍼 모델을 이용한 자연어 처리 방법.
- 청구항 1에 있어서,
상기 해석 및 출력 단계에서,
캐시 메모리는, 시내퍼 모델을 통해 해석된 데이터를 출력을 생성하기 위해 임시로 저장하는, 시내퍼 모델을 이용한 자연어 처리 방법.
- 청구항 6에 있어서,
상기 해석 및 출력 단계에서,
텍스트 랜덤 액세스 메모리(TRAM)는, 상기 캐시 메모리에서 처리하기 어려운 다량의 문장에 액세스할 수 있도록 시내퍼 모델 데이터를 저장하는, 시내퍼 모델을 이용한 자연어 처리 방법.
- 청구항 7에 있어서,
상기 해석 및 출력 단계에서,
플래시 메모리는, 중요한 정보가 포함된 문장을 나중에 액세스해야 할 수 있도록 저장하는, 시내퍼 모델을 이용한 자연어 처리 방법.
- 청구항 1에 있어서,
상기 해석 및 출력 단계에서,
상기 시내퍼 모델은, 자연어에서 다른 방식으로 표현된 단어로 구성된 문장으로 분리하고,
문장 내 각 단어의 품사 및 인접 단어의 품사에 기초하여 단어 중 어느 것이 가지이고, 어느 것이 노드인지를 결정하는, 시내퍼 모델을 이용한 자연어 처리 방법.
- 청구항 9에 있어서,
상기 해석 및 출력 단계에서,
상기 시내퍼 모델은, 노드와 가지를 결정한 후 노드들을 제1 방향으로 서로 연결하고, 가지들은 제1 방향 이외의 다른 방향으로 대응하는 노드들에 연결되도록 하는, 시내퍼 모델을 이용한 자연어 처리 방법.
- 자연어를 입력하는 입력장치;
상기 입력장치에 입력된 아날로그 데이터를 디지털 데이터로 변환하는 아날로그-디지털 변환기(ADC);
상기 디지털 신호로 변환된 데이터를 신경개념코드로 변환하는 제1 코드 변환기(WNC);
상기 제1 코드 변환기(WNC)를 통해 입력되는 신경개념코드를 시내퍼 모델을 통해 해석하고 출력하는 언어처리장치;
상기 언어처리장치에서 출력된 신경개념코드를 해석된 단어 데이터로 변환하는 제2 코드 변환기(NWC);
상기 제2 코드 변환기(NWC)를 통해 변환된 디지털 데이터를 아날로그 데이터로 변환하는 디지털-아날로그 변환기(DAC); 및
상기 디지털-아날로그 변환기(DAC)를 통해 변환된 데이터를 해석된 자연어로 출력하는 출력장치를 포함하는, 시내퍼 모델을 이용한 자연어 처리 시스템.
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220096224A KR20240018229A (ko) | 2022-08-02 | 2022-08-02 | 시내퍼 모델을 이용한 자연어 처리 시스템 및 방법 |
TW111137024A TWI822370B (zh) | 2022-08-02 | 2022-09-29 | 使用信艾普模型單元之自然語言處理系統以及方法 |
JP2022157480A JP7511614B2 (ja) | 2022-08-02 | 2022-09-30 | Synapperモデルユニットを用いた自然語処理システム及び方法 |
EP22199147.4A EP4318300A1 (en) | 2022-08-02 | 2022-09-30 | Natural language processing system and method using synapper model unit |
US17/984,711 US11636275B1 (en) | 2022-08-02 | 2022-11-10 | Natural language processing system and method using a synapper model unit |
CA3197945A CA3197945A1 (en) | 2022-08-02 | 2023-04-26 | Natural language processing system and method using a synapper model unit |
CN202310573593.XA CN117494696A (zh) | 2022-08-02 | 2023-05-19 | 自然语言处理系统以及方法 |
KR1020230151022A KR20240018401A (ko) | 2022-08-02 | 2023-11-03 | 시내퍼 모델을 이용한 자연어 처리 시스템 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220096224A KR20240018229A (ko) | 2022-08-02 | 2022-08-02 | 시내퍼 모델을 이용한 자연어 처리 시스템 및 방법 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020230151022A Division KR20240018401A (ko) | 2022-08-02 | 2023-11-03 | 시내퍼 모델을 이용한 자연어 처리 시스템 및 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20240018229A true KR20240018229A (ko) | 2024-02-13 |
Family
ID=83546721
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220096224A KR20240018229A (ko) | 2022-08-02 | 2022-08-02 | 시내퍼 모델을 이용한 자연어 처리 시스템 및 방법 |
KR1020230151022A KR20240018401A (ko) | 2022-08-02 | 2023-11-03 | 시내퍼 모델을 이용한 자연어 처리 시스템 및 방법 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020230151022A KR20240018401A (ko) | 2022-08-02 | 2023-11-03 | 시내퍼 모델을 이용한 자연어 처리 시스템 및 방법 |
Country Status (7)
Country | Link |
---|---|
US (1) | US11636275B1 (ko) |
EP (1) | EP4318300A1 (ko) |
JP (1) | JP7511614B2 (ko) |
KR (2) | KR20240018229A (ko) |
CN (1) | CN117494696A (ko) |
CA (1) | CA3197945A1 (ko) |
TW (1) | TWI822370B (ko) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220049693A (ko) | 2020-10-15 | 2022-04-22 | 한동대학교 산학협력단 | 신경망 기반의 고유명사 기호화를 이용한 번역 방법 및 그 시스템 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4914590A (en) * | 1988-05-18 | 1990-04-03 | Emhart Industries, Inc. | Natural language understanding system |
AUPR956901A0 (en) * | 2001-12-17 | 2002-01-24 | Jayaratne, Neville | Real time translator |
US7346493B2 (en) | 2003-03-25 | 2008-03-18 | Microsoft Corporation | Linguistically informed statistical models of constituent structure for ordering in sentence realization for a natural language generation system |
US7433893B2 (en) * | 2004-03-08 | 2008-10-07 | Marpex Inc. | Method and system for compression indexing and efficient proximity search of text data |
JP5309480B2 (ja) * | 2007-06-14 | 2013-10-09 | 沖電気工業株式会社 | 文字列入力装置、文字列入力方法およびプログラム |
US20100121630A1 (en) * | 2008-11-07 | 2010-05-13 | Lingupedia Investments S. A R. L. | Language processing systems and methods |
US9176949B2 (en) | 2011-07-06 | 2015-11-03 | Altamira Technologies Corporation | Systems and methods for sentence comparison and sentence-based search |
JP6784084B2 (ja) | 2016-07-27 | 2020-11-11 | 富士通株式会社 | 符号化プログラム、符号化装置、符号化方法、及び検索方法 |
CN108287858B (zh) * | 2017-03-02 | 2021-08-10 | 腾讯科技(深圳)有限公司 | 自然语言的语义提取方法及装置 |
TWI660340B (zh) * | 2017-11-03 | 2019-05-21 | 財團法人資訊工業策進會 | 聲控方法及系統 |
US11250842B2 (en) * | 2019-01-27 | 2022-02-15 | Min Ku Kim | Multi-dimensional parsing method and system for natural language processing |
KR101986721B1 (ko) | 2019-03-27 | 2019-06-10 | 월드버텍 주식회사 | 신경망 기반 기계번역 및 셈뭉치를 이용한 수학문제 개념유형 예측 서비스 제공 방법 |
CN111368923B (zh) * | 2020-03-05 | 2023-12-19 | 上海商汤智能科技有限公司 | 神经网络训练方法及装置、电子设备和存储介质 |
US11544457B2 (en) * | 2020-03-25 | 2023-01-03 | Adobe Inc. | Machine learning based abbreviation expansion |
US20220050967A1 (en) * | 2020-08-11 | 2022-02-17 | Adobe Inc. | Extracting definitions from documents utilizing definition-labeling-dependent machine learning background |
TWI769520B (zh) * | 2020-09-07 | 2022-07-01 | 和碩聯合科技股份有限公司 | 多國語言語音辨識及翻譯方法與相關的系統 |
TWM607509U (zh) * | 2020-09-25 | 2021-02-11 | 國泰人壽保險股份有限公司 | 語音服務系統 |
US11837221B2 (en) * | 2021-02-26 | 2023-12-05 | Rovi Guides, Inc. | Age-sensitive automatic speech recognition |
US11119985B1 (en) * | 2021-03-19 | 2021-09-14 | Atlassian Pty Ltd. | Apparatuses, methods, and computer program products for the programmatic documentation of extrinsic event based data objects in a collaborative documentation service |
-
2022
- 2022-08-02 KR KR1020220096224A patent/KR20240018229A/ko not_active IP Right Cessation
- 2022-09-29 TW TW111137024A patent/TWI822370B/zh active
- 2022-09-30 JP JP2022157480A patent/JP7511614B2/ja active Active
- 2022-09-30 EP EP22199147.4A patent/EP4318300A1/en active Pending
- 2022-11-10 US US17/984,711 patent/US11636275B1/en active Active
-
2023
- 2023-04-26 CA CA3197945A patent/CA3197945A1/en active Pending
- 2023-05-19 CN CN202310573593.XA patent/CN117494696A/zh active Pending
- 2023-11-03 KR KR1020230151022A patent/KR20240018401A/ko not_active Application Discontinuation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220049693A (ko) | 2020-10-15 | 2022-04-22 | 한동대학교 산학협력단 | 신경망 기반의 고유명사 기호화를 이용한 번역 방법 및 그 시스템 |
Also Published As
Publication number | Publication date |
---|---|
TWI822370B (zh) | 2023-11-11 |
CN117494696A (zh) | 2024-02-02 |
JP2024021023A (ja) | 2024-02-15 |
EP4318300A1 (en) | 2024-02-07 |
CA3197945A1 (en) | 2024-02-02 |
KR20240018401A (ko) | 2024-02-13 |
US11636275B1 (en) | 2023-04-25 |
JP7511614B2 (ja) | 2024-07-05 |
TW202407576A (zh) | 2024-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kalyan et al. | Ammus: A survey of transformer-based pretrained models in natural language processing | |
Lee et al. | Patent claim generation by fine-tuning OpenAI GPT-2 | |
Zhang et al. | A simple and effective neural model for joint word segmentation and POS tagging | |
US12045569B2 (en) | Graph-based cross-lingual zero-shot transfer | |
Graliński et al. | PSI-toolkit: A natural language processing pipeline | |
Wang et al. | Automatic paper writing based on a RNN and the TextRank algorithm | |
Wintner | Morphological processing of semitic languages | |
KR20200064880A (ko) | 한국어 워드넷 기반 지식 주도 심층학습을 이용한 워드 임베딩 장치 및 방법 | |
Gupta et al. | A TENGRAM method based part-of-speech tagging of multi-category words in Hindi language | |
Moukafih et al. | Improving machine translation of arabic dialects through multi-task learning | |
CN115809658A (zh) | 平行语料的生成方法及装置和无监督同义转写方法及装置 | |
Han et al. | Lexicalized neural unsupervised dependency parsing | |
KR20240018229A (ko) | 시내퍼 모델을 이용한 자연어 처리 시스템 및 방법 | |
Almansor et al. | Transferring informal text in arabic as low resource languages: State-of-the-art and future research directions | |
Lee et al. | Ensemble multi-channel neural networks for scientific language editing evaluation | |
Haq et al. | NLPashto: NLP toolkit for low-resource Pashto language | |
Le-Hong et al. | Integrating graph embedding and neural models for improving transition-based dependency parsing | |
Udomcharoenchaikit et al. | Adversarial evaluation of robust neural sequential tagging methods for thai language | |
WO2014030258A1 (ja) | 形態素解析装置、テキスト分析方法、及びそのプログラム | |
Aydinov et al. | Investigation of automatic part-of-speech tagging using CRF, HMM and LSTM on misspelled and edited texts | |
Murthy et al. | A New Approach to Tagging in Indian Languages. | |
Myint | A hybrid approach for part-of-speech tagging of Burmese texts | |
Fouad et al. | Masdar: a novel sequence-to-sequence deep learning model for Arabic stemming | |
Rahman et al. | Dense word representation utilization in Indonesian dependency parsing | |
Shi et al. | USING CONTINUOUS BAG OF WORDS |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AMND | Amendment | ||
AMND | Amendment | ||
X601 | Decision of rejection after re-examination | ||
J201 | Request for trial against refusal decision | ||
J301 | Trial decision |
Free format text: TRIAL NUMBER: 2024101000255; TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20240201 Effective date: 20240329 |