KR102445172B1 - 질의 해석 방법 및 장치 - Google Patents

질의 해석 방법 및 장치 Download PDF

Info

Publication number
KR102445172B1
KR102445172B1 KR1020190133906A KR20190133906A KR102445172B1 KR 102445172 B1 KR102445172 B1 KR 102445172B1 KR 1020190133906 A KR1020190133906 A KR 1020190133906A KR 20190133906 A KR20190133906 A KR 20190133906A KR 102445172 B1 KR102445172 B1 KR 102445172B1
Authority
KR
South Korea
Prior art keywords
query
queries
misclassification
candidates
intent
Prior art date
Application number
KR1020190133906A
Other languages
English (en)
Other versions
KR20210049518A (ko
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 KR1020190133906A priority Critical patent/KR102445172B1/ko
Publication of KR20210049518A publication Critical patent/KR20210049518A/ko
Application granted granted Critical
Publication of KR102445172B1 publication Critical patent/KR102445172B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

적어도 하나의 프로세서에 의해 동작하는 컴퓨팅 장치가 질의를 해석하는 방법으로서, 임의의 장치에 의해 해석된 의도가 라벨링 된 질의들을 입력받는 단계, 상기 입력 질의들을 기준 질의와 오분류 된 것으로 예상되는 대조 질의들로 분류하고, 상기 기준 질의의 어휘 패턴을 분석하는 단계, 상기 기준 질의, 상기 대조 질의, 그리고 상기 어휘 패턴으로 학습 데이터를 생성하는 단계, 그리고 상기 학습 데이터를 이용하여 질의 해석 모델을 학습시키는 단계를 포함하고, 상기 대조 질의들은 상기 입력 질의들 중 미리 정한 값 이하의 빈도로 나타나는 질의들이다.

Description

질의 해석 방법 및 장치{METHOD AND APPARATUS FOR INTERPRETING INTENTION OF QUERY}
본 발명은 질의의 의도를 해석하는 기술에 관한 것이다.
대화 시스템이나 문서 분석 시스템에서는 사용자 질의의 의도를 정확하게 분류하는 질의 의도 해석 시스템이 필요하며, 이러한 질의 의도 해석 시스템은 대부분 기계 학습 방법을 통해 학습된다. 이때 기계 학습 방법을 이용하여 해석하기 위해서는 사용자의 의도가 부착된 대량의 학습 문장이 필요하다.
상용 시스템을 통해 대량의 문장 로그가 매일 생성되므로, 이를 이용하여 학습 데이터를 생성할 수 있으나, 문장과 의도를 자동으로 대응시키는 과정에서 전문가의 인력을 사용하는 경우 비용적, 시간적 측면에서 많은 어려움이 있다.
이러한 단점을 해결하기 위해 실제 상용 서비스 시스템에서 수집한 로그를 이용하는 방법도 등장하였다. 문장과 의도를 미리 대응시키고, 전문가가 실제 상용 서비스의 결과를 확인하여 수정하고, 수정된 내용을 다시 학습에 사용하여, 시스템의 성능을 올리는 것이다.
그러나 대량의 상용 서비스 로그를 수작업으로 모두 확인하는 것이 어렵고 엄청난 시간이 소요되므로 대부분 사용되지 않고 있다.
해결하고자 하는 과제는 상용 서비스에서 그 의도가 판단된 질의 중 오분류된 것으로 예상되는 소수의 질의들을 선정하고, 선정된 오분류 후보 질의들을 이용하여 질의 해석 모델을 생성하는 방법 및 그 장치를 제공하는 것이다.
한 실시예에 따른 적어도 하나의 프로세서에 의해 동작하는 컴퓨팅 장치가 질의를 해석하는 방법으로서, 임의의 장치에 의해 해석된 의도가 라벨링 된 질의들을 입력받는 단계, 상기 입력 질의들을 기준 질의와 오분류 된 것으로 예상되는 대조 질의들로 분류하고, 상기 기준 질의의 어휘 패턴을 분석하는 단계, 상기 기준 질의, 상기 대조 질의, 그리고 상기 어휘 패턴으로 학습 데이터를 생성하는 단계, 그리고 상기 학습 데이터를 이용하여 질의 해석 모델을 학습시키는 단계를 포함하고, 상기 대조 질의들은 상기 입력 질의들 중 미리 정한 값 이하의 빈도로 나타나는 질의들인 질의 해석 방법이다.
상기 학습 데이터를 생성하는 단계는, 상기 기준 질의와 상기 대조 질의들의 의미 유사도를 이용한 필터링 규칙을 생성하고, 상기 필터링 규칙에 따라 상기 대조 질의들 중에서 오분류 후보들을 선정하는 단계, 그리고 상기 기준 질의의 어휘 패턴과 상기 오분류 후보들의 어휘 패턴을 비교하여, 상기 기준 질의에는 존재하고, 상기 오분류 후보들에 존재하지 않는 핵심 어휘들을 추출하는 단계를 포함할 수 있다.
상기 오분류 후보들을 선정하는 단계는, 상기 기준 질의와 상기 대조 질의들을 언어학적으로 분석하여 각각의 임베딩 벡터를 생성하는 단계, 상기 기준 질의의 임베딩 벡터와 상기 대조 질의들의 각 임베딩 벡터 간 의미 유사도를 계산하는 단계, 그리고 계산된 의미 유사도 값이 미리 정한 값 이상인 대조 질의들를 오분류 후보로 결정하는 단계를 포함할 수 있다.
상기 필터링 규칙은, 상기 기준 질의의 의도와 동일한 의도라고 판단되는 대조 질의는 오분류 후보에서 제외할 수 있다.
상기 오분류 후보로 결정하는 단계 이후에, 전문가로부터 상기 오분류 후보에 라벨링 된 의도와 실제 사용자의 의도가 일치하는지 판단 결과를 수신하는 단계, 그리고 상기 결과를 참고하여, 상기 라벨링 된 의도가 상기 실제 사용자의 의도와 같은 질의가 상기 오분류 후보에 포함된 경우, 다시 오분류 후보들을 선정하는 단계를 포함할 수 있다.
상기 핵심 어휘들을 추출하는 단계는, 상기 기준 질의를 구성하는 어휘 중에서 임의의 개체명으로 인식되지 않는 어휘를 추출할 수 있다.
상기 학습시키는 단계 이후에, 새로운 질의를 상기 학습된 질의 해석 모델로 입력하는 단계, 상기 학습된 질의 해석 모델로부터 상기 새로운 질의의 의도를 결정하는 단계, 그리고 상기 새로운 질의에 라벨링 된 의도와 상기 결정된 의도가 다른 경우, 상기 새로운 질의의 의도를 상기 결정된 의도로 변경하는 단계를 더 포함할 수 있다.
한 실시예에 따른 컴퓨팅 장치로서, 메모리, 그리고 상기 메모리에 로드된 프로그램의 명령들(instructions)을 실행하는 적어도 하나의 프로세서를 포함하고, 상기 프로그램은 임의의 장치에 의해 해석된 의도가 라벨링 된 질의들을 입력받는 단계, 상기 입력 질의들을 기준 질의와 오분류 된 것으로 예상되는 대조 질의들로 분류하는 단계, 상기 기준 질의와 상기 대조 질의들 각각의 임베딩 벡터를 생성하고, 상기 기준 질의의 임베딩 벡터와 상기 대조 질의들의 각 임베딩 벡터 간 의미 유사도를 계산하는 단계, 상기 계산된 의미 유사도 값이 미리 정한 값 이상인 대조 질의들를 오분류 후보로 선정하는 단계, 상기 기준 질의와 상기 오분류 후보들의 어휘 패턴을 분석하여 상기 기준 질의에 존재하고, 상기 오분류 후보들에 존재하지 않는 핵심 어휘들을 추출하는 단계, 상기 기준 질의, 상기 오분류 후보들 그리고 상기 핵심 어휘들로 학습 데이터를 생성하는 단계, 그리고 상기 학습 데이터를 이용하여 질의 해석 모델을 학습시키는 단계를 실행하도록 기술된 명령들을 포함하는, 컴퓨팅 장치이다.
상기 분류하는 단계는, 상기 입력 질의들 중 상기 기준 질의의 의도 라벨과 동일한 기능을 수행하는 의도 라벨을 갖는 질의를 정분류 된 것으로 분류할 수 있다.
상기 핵심 어휘들을 추출하는 단계는, 상기 기준 질의를 구성하는 어휘를 상기 어휘와 유의 관계에 있는 어휘로 대체한 의미 패턴을 생성할 수 있다.
본 발명에 따르면 상용 서비스에서 미리 판단된 질의 중 오분류된 것으로 예상되는 소수의 후보를 효율적으로 추출하는 과정을 거치므로, 모든 오분류 질의를 대상으로 하는 질의 해석 장치에 비해 속도와 정확성을 높일 수 있다.
또한 본 발명에 따르면 필터링 규칙과 딥러닝 기반의 알고리즘을 같이 사용함으로써, 대량의 상용 서비스 로그에서 획득한 다양한 유형의 질의 해석이 가능하다.
도 1은 한 실시예에 따른 질의 해석 장치 및 그 주변 환경의 구성도이다.
도 2는 한 실시예에 따른 입력 데이터 중 오분류로 예상되는 후보를 선정하는 방법의 흐름도이다.
도 3은 한 실시예에 따른 언어 분석기의 동작 방법의 흐름도이다.
도 4는 한 실시예에 따른 오분류된 질의의 의도를 바르게 해석하는 방법의 예시도이다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 명세서에서 사용되는 데이터는 도 4의 410 내지 430에 도시된 바와 같이 사용자의 질의와, 상용 시스템에서 분석한 질의의 의도가 라벨로 부착된 형태이다. 즉 사용자가 대화 시스템 또는 문서 분석 시스템 등의 상용 시스템에 요청한 질의와 상용 시스템이 자체적으로 해석한 질의의 의도가 결합된 것을 의미한다. 이때 상용 시스템은 사용자와 대화를 주고받아 요청된 작업을 수행하는 프로그램 또는 장치로서, 예를 들어 인공지능 스피커일 수 있으며 본 발명의 질의 해석 장치(1000)일 수도 있다.
또한 상용 시스템이 질의 의도를 실제 사용자의 의도와 다르게 해석하는 것을 ‘오분류’, 사용자의 의도에 맞게 해석하는 것을 ‘정분류’ 라고 호칭한다.
이하 질의 해석 장치가 오분류 된 질의의 의도를 올바르게 파악하는 방법에 대해 살펴본다.
도 1은 한 실시예에 따른 질의 해석 장치 및 그 주변 환경의 구성도이다.
도 1을 참고하면, 질의 해석 장치(1000)는 학습 데이터 생성기(100), 질의 해석 모델(210)을 학습시키는 학습기(200) 그리고 학습된 질의 해석 모델(210)을 이용하여 입력된 질의를 해석하는 질의 해석기(300)를 포함한다.
설명을 위해, 학습 데이터 생성기(100), 학습기(200) 그리고 질의 해석기(300)로 명명하여 부르나, 이들은 적어도 하나의 프로세서에 의해 동작하는 컴퓨팅 장치이다. 여기서, 학습 데이터 생성기(100), 학습기(200) 그리고 질의 해석기(300)는 하나의 컴퓨팅 장치에 구현되거나, 별도의 컴퓨팅 장치에 분산 구현될 수 있다. 별도의 컴퓨팅 장치에 분산 구현된 경우, 학습 데이터 생성기(100), 학습기(200) 그리고 질의 해석기(300)는 통신 인터페이스를 통해 서로 통신할 수 있다. 컴퓨팅 장치는 본 발명을 수행하도록 작성된 소프트웨어 프로그램을 실행할 수 있는 장치이면 충분하고, 예를 들면, 서버, 랩탑 컴퓨터 등일 수 있다.
학습 데이터 생성기(100), 학습기(200) 그리고 질의 해석기(300) 각각은 하나의 인공지능 모델일 수 있고, 복수의 인공지능 모델로 구현될 수도 있다. 그리고 질의 해석 모델(210)도 하나의 인공지능 모델일 수 있고, 복수의 인공지능 모델로 구현될 수도 있다. 질의 해석 장치(1000)는 하나의 인공지능 모델일 수 있고, 복수의 인공지능 모델로 구현될 수도 있다. 이에 따라, 상술한 구성들에 대응하는 하나 또는 복수의 인공지능 모델은 하나 또는 복수의 컴퓨팅 장치에 의해 구현될 수 있다.
학습 데이터 생성기(100)는 질의 해석 장치(1000)로 입력되는 데이터 중 일부를 학습 데이터로 생성하며, 오분류 후보 추출기(110)와 언어 분석기(120)를 포함한다.
오분류 후보 추출기(110)는 입력되는 대량의 데이터에서 상용 시스템이 사용자의 의도를 잘못 해석한 것으로 예상되는 소량의 오분류 후보 질의를 추출하여 질의 학습 모델(210)의 학습 데이터로 사용한다.
오분류 후보 추출기(110)는 정분류 된 질의를 이용하여 대량의 데이터를 필터링하는 규칙을 생성하고, 필터링 된 오분류 후보 질의들 중 정분류 질의가 포함되었는지 전문가의 판단을 거쳐 최종 오분류 후보 질의를 선정한다. 오분류 후보 추출기(110)의 동작 방법은 도 2를 통해 자세히 설명한다.
언어 분석기(120)는 정분류 된 질의와 오분류 된 질의를 각각 언어적으로 분석하여, 오분류된 질의가 올바르게 해석되기 위해 필요한 핵심 어휘를 추출한다. 자세한 분석 방법과 핵심 어휘에 대한 내용은 도 3을 통해 설명한다.
학습 데이터 생성기(100)는 오분류 후보 추출기(110)로부터 올바른 의도 라벨이 부착된 정분류 질의와 잘못된 의도 라벨이 부착된 소량의 오분류 후보를 얻고, 언어 분석기(120)로부터 핵심 어휘들을 얻어 학습 데이터로 생성한다.
학습기(200)는 생성된 학습 데이터를 이용하여 질의 해석 모델(210)을 학습한다. 이때 사용되는 딥러닝 알고리즘은 사전 훈련된 언어 모델을 사용하는 ELMo(Embedding from Language Models)-LSTM일 수 있으며, 어느 하나에 한정되지 않는다.
질의 해석기(300)는 학습된 질의 해석 모델(210)을 이용하여, 입력되는 질의에 부착된 의도 라벨이 올바른지 판단한다. 즉 입력되는 사용자의 질의에 부착된 의도 라벨이 실제 사용자의 의도에 부합하는지 판단하고, 의도 라벨이 잘못된 경우 질의 해석기(300)로부터 얻은 의도 라벨로 변경한다.
한편, 도 1은 상용 시스템을 통해 질의 해석 과정을 한번 거쳐, 의도 라벨이 부착된 형태의 질의가 입력된다고 가정하였으나, 상용 시스템을 거치지 않아 의도 라벨이 없는 질의가 질의 해석기(300)에 입력될 수도 있다. 이 경우 질의 해석기(300)는 해당 질의에 올바른 의도 라벨을 새롭게 부착하는 동작을 수행할 수 있다.
도 2는 한 실시예에 따른 입력 데이터 중 오분류로 예상되는 후보를 선정하는 방법의 흐름도이다.
도 2를 참고하면, 오분류 후보 추출기(110)는 대량의 입력 데이터 중에서 빈번하게 등장하는 질의를 기준 질의, 등장 빈도가 낮은 질의를 대조 질의로 분류한다(S101). 예를 들어 1000개의 입력 데이터 중, 제1 질의가 980번 발생하였고, 제2 질의가 10번, 제3 질의가 5번, 제4 질의가 5번 발생한 경우, 오분류 후보 추출기(110)는 제1 질의를 기준 질의로 하고 제2 질의, 제3 질의, 제4 질의를 대조 질의로 분류한다.
본 명세서에서 기준 질의는 상용 시스템에서 질의 해석이 올바르게 이루어지고, 사용자 의도에 맞는 의도 라벨이 부착된 것으로 예상되는 질의를 의미한다. 즉 기준 질의는 사용자에 의해 확률상 빈번하게 발화되는 패턴으로서, 해당 질의의 표준으로 패턴화 할 수 있는 질의이다.
오분류 후보 추출기(110)는 기준 질의와 대조 질의의 어휘, 의미 정보를 추출하여 각 질의의 임베딩 벡터를 생성한다(S102).
예를 들어, 오분류 후보 추출기(110)는 기준 질의인 제1 질의와 대조 질의인 제2 질의, 제3 질의, 제4 질의에서 어휘, 형태소/구문 분석 정보, 개체명, 질의가 발생한 상황의 정보, 이력 정보 등을 추출하여 어휘/의미 정보를 생성하고, 이를 바탕으로 각 질의의 임베딩 벡터를 생성한다.
구체적으로 오분류 후보 추출기(110)는 형태소 분석을 통해 질의의 명사, 동사 등을 분류할 수 있고, 구문 분석을 통해 질의의 구조를 파악할 수 있다.
일반적으로 자연어 처리는 형태소 분석, 개체명 인식, 의미역 결정 순으로 이루어진다. 형태소 분석은 문장을 구성하는 어절을 형태소로 분석하여, 품사를 부착하는 것을 의미한다. 개체명(Named Entity)이란 문서에서 특정한 의미를 가지고 있는 단어 또는 어구를 의미하며, 개체명 인식이란 형태소 분석을 통해 추출된 고유 명사의 범주를 분류하는 과정을 말한다. 의미역(Semantic Role)이란 문장 속에서 서술어와의 관계에서 나타나는 명사의 역할을 말하며, 의미역 결정이란 문장 내에 포함된 서술어와 해당 서술어의 수식을 받는 논항간의 의미 관계를 인식, 분류하는 것이다. 문장의 각 성분이 다른 구조로 배열되더라도 같은 의미역을 가질 수 있고, 혹은 같은 구조로 배열된 구문이 다른 의미역을 지닐 수 있다.
형태소 분석, 개체명 인식, 의미역 결정에 사용되는 방법은 이미 널리 알려진 것으로서 Head-tail 구분법, Tabular 파싱법, Hidden Markov Model(HMM), Support Vector Machine(SVM), Conditional Random Field(CRF), Maximum Entropy(ME), Structural SVM 등의 알고리즘을 이용할 수 있으며 어느 하나에 한정되지 않는다.
예를 들어, 오분류 후보 추출기(110)는 “캡틴마블 틀어줘.”라는 예문에 대해 형태소를 분석하여 “캡틴마블/체언-일반명사, 틀어줘/용언-동사”로 파악하고, 구문 분석을 통해 해당 예문을“체언-일반명사 + 용언-동사”의 조합이라고 파악할 수 있다.
그리고 개체명 분석을 통해 각 단어 또는 어구의 의미를 파악할 수 있다. 위의 “캡틴마블 틀어줘.”라는 예문에 대해서, “캡틴마블/영화, 틀어줘/재생”으로 각 어구의 의미를 레이블링 할 수 있다.
또한, 상황 정보란, 해당 질의를 발화한 시점의 상용 시스템의 동작과 관련된 정보를 의미한다. 예를 들어, 사용자가 TV 시청 중 특정 영화를 재생하라는 질의를 발화한 경우, 상황 정보는 ‘TV 시청 중’이라고 추출될 수 있다. 이력 정보란, 사용자의 과거 발화 내역 또는 사용자가 가입한 특정 서비스에 대한 정보를 포함할 수 있다.
이후 오분류 후보 추출기(110)는 추출한 형태소, 개체명, 의미역 등의 정보를 이용하여 각 질의의 임베딩 벡터를 생성한다. 임베딩 벡터란 범주형 자료를 연속형 벡터 형태로 변환한 것을 의미한다.
문장 임베딩 벡터를 생성하는 한 예로서, 구글에서 개발된 sentence2vec 모델을 이용할 수 있다. sentence2vec 모델은 word2vec의 CBOW(Continuous Bag Of Words) 모델을 문장 단위로 확장한 모델이다. 표 1은 sentence2vec 모델을 사용하여 임의의 질의문 2개를 N차원의 벡터로 생성한 예시이다.
질의문 1 (0.00011 0.09193 -1.93188 … 0.335567)
질의문 2 (0.00011 0.11171 -1.31652 … 1.89287)
오분류 후보 추출기(110)는 기준 질의의 임베딩 벡터와 대조 질의의 임베딩 벡터 간 의미 유사도를 계산한다(S103).
임베딩 벡터 간 의미 유사도를 계산하는 방법은 어느 하나에 한정되지 않는다. 한 예로서, 변환된 임베딩 벡터에 대해, 코사인 유사도(Cosine Similarity)를 계산할 수 있다. 코사인 유사도는 내적 공간의 두 벡터의 각도의 코사인 값으로서, 두 벡터 간 유사한 정도를 0 과 1 사이의 값으로 표현하며 코사인 유사도가 1에 가까울 수록 두 벡터가 유사하다는 것을 의미한다.
예를 들어 오분류 후보 추출기(110)는 제1 질의의 임베딩 벡터와 제2 질의의 임베딩 벡터를 비교하여 의미 유사도를 계산하고, 제1 질의의 임베딩 벡터와 제3 질의의 임베딩 벡터 간 의미 유사도 그리고 제1 질의의 임베딩 벡터와 제4 질의의 임베딩 벡터 간 의미 유사도를 각각 계산한다.
오분류 후보 추출기(110)는 계산된 의미 유사도 또는 기준 질의의 의도 라벨 등을 이용하여 필터링 규칙을 생성한다(S104). 필터링 규칙은 대조 질의들 중 소수의 질의만을 선정하기 위해 사용되는 것으로, 복수 개가 사용될 수 있다. 예를 들어 의미 유사도가 일정 값 이상인 대조 질의를 오분류 후보로 추출하는 규칙, 또는 특정 의도 라벨을 부착한 질의를 오분류 후보로 추출하는 규칙 등이 이용될 수 있다.
필터링 규칙의 한 예로서, 제1 질의의 임베딩 벡터와 제2 질의의 임베딩 벡터 간 의미 유사도가 0.83, 제1 질의의 임베딩 벡터와 제3 질의의 임베딩 벡터 간 의미 유사도가 0.81, 제1 질의의 임베딩 벡터와 제4 질의의 임베딩 벡터 간 의미 유사도가 0.77를 얻은 경우를 가정한다. 이때 사용자 또는 질의 해석 장치(1000)의 관리자가 기준이 되는 의미 유사도 값을 0.8이라고 설정한 경우 0.8 이상인 값을 갖는 제2 질의, 제3 질의만을 오분류 후보로 선정한다.
이때 기준이 되는 값 이하의 의미 유사도를 갖는 질의는 서로 다른 의미라고 간주된다. 따라서 제4 질의는 제1 질의와 의도가 다른 질의이므로, 제1 질의의 의도 라벨을 부착하기 위한 질의 해석 모델(210)의 학습 데이터로 사용될 수 없다.
그러나 제4 질의는 다른 임의의 기준 질의와의 의미 유사도가 0.8 이상인 경우 학습 데이터로 이용 가능할 수 있다.
필터링 규칙의 다른 예로서, 사용자 또는 질의 해석 장치(1000)의 관리자는 서로 다른 의도 라벨이 해석상 동일한 의도를 갖는 경우를 규칙으로 설정하여 질의 해석 장치(1000)에 등록할 수 있다.
예를 들어 제1 질의에 부착된 의도 라벨이 A이고, 제2 질의에 부착된 의도 라벨이 B로 형식적으로는 다르지만, 실질적으로 A와 B는 같은 의도로 간주되는 경우, A와 B가 같다는 규칙을 등록할 수 있다. 이때 의도 라벨 B가 부착된 제2 질의는 실제 사용자 의도에 맞는 의도로 해석된 것으로서, 오분류 후보에서 제외된다.
오분류 후보 추출기(110)는 생성된 필터링 규칙에 따라 복수의 대조 질의들 중 오분류 후보를 추출한다(S105). 위에서 설명한 예로서, 복수의 대조 질의들인 제2 질의, 제3 질의, 제4 질의 중 제1 질의와 의미 유사도가 0.8 미만인 제4 질의가 필터링 되고, 제1 질의와 제2 질의의 의도 라벨이 같다는 규칙에 따라 제2 질의가 필터링 된다. 따라서 4개의 대조 질의로부터 제3 질의만을 오분류 후보로 추출한다.
이후 전문가가 오분류 후보들을 확인한다(S106). 최종 학습 데이터의 검증은 전문가의 판단을 거치게 되며, 전문가가 입력 데이터 전부에 대해 확인하는 것이 아니라 필터링을 한번 거친 오분류 후보들에 대해서만 확인하므로 검증 시간을 감소시킬 수 있다.
전문가로부터 오분류 후보들이 실제로 사용자의 의도와 다른 의도 라벨을 부착하고 있는지 확인되고(S107), 모두 오분류 된 것이라면 오분류 후보들을 최종 오분류 후보로 선정하고(S108), 오분류 후보들에 정분류 질의가 포함된 경우 전문가의 판단 결과를 반영하여 S104에서 생성된 필터링 규칙을 수정한다(S109).
오분류 후보 추출기(110)는 기준 질의와, 위의 과정을 거쳐 생성된 최종 오분류 후보들을 언어 분석기(120)에 전달한다. 이하에서는 언어 분석기(120)가 질의 해석 모델(210) 학습에 사용되는 데이터를 생성하기 위해, 기준 질의와 최종 오분류 후보들의 언어적인 특성의 차이를 분석하는 방법을 살펴본다.
도 3은 한 실시예에 따른 언어 분석기의 동작 방법의 흐름도이다.
도 3을 참고하면, 언어 분석기(120)는 기준 질의의 어휘 의미 패턴을 분석한다(S201). 어휘 의미 패턴이란 문장을 어휘, 품사, 유의어로 나누고 의미 정보를 추가하여 만든 시퀀스이다. 즉 한 의미를 갖는 문장이 다양한 방식으로 표현될 수 있는데 이 방식들의 구문 유형을 정의한 문법이다.
따라서 기준 질의로부터 하나의 어휘 의미 패턴을 구축하게 되면, 해당 패턴을 갖는 다른 표현의 문장들을 기준 질의와 같은 의미를 갖는 것으로 해석할 수 있다.
예를 들어 기준 질의가 "캡틴마블 틀어줘."라면, 도 2를 통해 설명한 바와 같이 형태소 분석, 구문 분석, 개체명 분석 등을 통하여 기준 질의의 어휘 의미 패턴을 '체언-일반명사-영화 + 용언-동사-재생'이라고 분석할 수 있다.
또한, '영화'와 유의 관계에 있는 '드라마'를 이용하여, 유의 의미 패턴을 '체언-일반명사-드라마 + 용언-동사-재생'이라고 생성할 수 있다.
언어 분석기(120)는 최종 오분류 후보 질의들의 형태소 분석, 구문 분석을 수행한다(S202). 형태소 분석이란, 문장을 형태소라는 최소 의미 단위로 분리하는 것이고, 구문 분석(Parsing)은 문장 내에서 각 형태소들이 가지는 역할을 분석하는 것을 의미하며, 이는 도 2에서 설명한 내용과 같다.
언어 분석기(120)는 최종 오분류 후보들의 형태소, 구문 분석 결과를 바탕으로 기준 질의에는 존재하나 최종 오분류 후보들에는 존재하지 않는 핵심 어휘의 후보를 추출한다(S203). 핵심 어휘를 추출하는 방법은 도 4를 통해 자세히 설명한다.
이후 언어 분석기(120)는 추출된 핵심 어휘 후보들 각각의 신뢰도를 계산한다(S204). 신뢰도를 계산하기 위해 양방향 LSTM(Bi-directional Long Short-Term Memory)과 (Conditional Random Field, CRF) 방식을 결합한 BiLSTM-CRF을 사용할 수 있으며, 이미 학습된 다른 모델을 사용할 수 있다.
BiLSTM은 순차적 데이터 활용에서 가장 많이 쓰이는 딥러닝 모형인 LSTM을 두 개 사용하여, 각 데이터에 대해 왼쪽(Forward)뿐만 아니라 오른쪽(Backward) 데이터를 고려하도록 보완한 모델이다. BiLSTM은 앞뒤 문맥을 모두 고려해야 하는 자연어 처리에서 높은 성능을 보이는 알고리즘이다.
한편 기준 질의의 어휘 의미 패턴 분석 결과를 바탕으로, 개체명의 종류를 한정하여 신뢰도를 산출할 수 있다.
이후 언어 분석기(120)는 핵심 어휘의 후보들 중 가장 높은 신뢰도를 가진 핵심 어휘를 추출한다(S205).
언어 분석기(120)는 추출된 핵심 어휘와 기준 질의, 최종 오분류 후보를 학습 데이터로 생성하여 학습기(200)에 전달한다. 학습기(200)는 질의 해석 모델(210)을 학습한다. 질의 해석 모델(210)은 앞서 언급된 ELMo-LSTM로 구현될 수 있으며, 어느 하나로 제한되지 않는다.
한편 언어 분석기(120)는 기준 질의의 어휘 의미 패턴을 오분류 후보 추출기(110)에 전달하여, 오분류 후보 추출기(110)가 생성한(S104) 필터링 규칙에 이를 포함시킬 수도 있다.
도 4는 한 실시예에 따른 오분류된 질의의 의도를 바르게 해석하는 방법의 예시도이다.
도 4를 참고하면, “캡틴마블 틀어줘”(410)라는 질의가 1000번 발생, “캡틴마블 찾아줄 수 있니”(420), “마블캡틴을 틀면 좋겠어”(430)라는 질의가 각각 5번씩 발생하였고, 상용 시스템은 “캡틴마블 틀어줘”(410)의 의도를 SearchContent로 라벨링, “캡틴마블 찾아줄 수 있니”(420)의 의도를 FindContent, “마블캡틴을 틀면 좋겠어”(430)의 의도를 ILikeContent로 라벨링 한 상황을 가정하여 설명한다.
한편 도 4에서는 학습에 사용된 데이터를 질의 해석기(300)에 입력하여 결과를 산출하는 것으로 도시하였으나, 학습 데이터와 분석 대상 데이터가 다를 수 있음은 당연하다.
질의 해석 장치(1000)는 1000번 발생한 “캡틴마블 틀어줘”(410)를 기준 질의로 분류하고, 5번씩 발생한 “캡틴마블 찾아줄 수 있니”(420)와 “마블캡틴을 틀면 좋겠어”(430)를 대조 질의로 분류한다. 즉 상용 시스템이 “캡틴마블 틀어줘”(410)는 정분류, “캡틴마블 찾아줄 수 있니”(420)와 “마블캡틴을 틀면 좋겠어”(430) 는 오분류 한 것으로 가정한다.
질의 해석 장치(1000)는 기준 질의와 대조 질의의 어휘, 의미 정보를 추출하고, 3개의 질의에 대해 sentence2vec를 이용하여 임베딩 벡터를 생성한다.
질의 해석 장치(1000)는 임베딩 벡터 간의 의미 유사도를 계산한다. 코사인 유사도 계산 결과, “캡틴마블 틀어줘”(410)와 “캡틴마블 찾아줄 수 있니”(420)의 의미 유사도가 0.81로 계산되고, “캡틴마블 틀어줘”(410)와 “마블캡틴을 틀면 좋겠어”(430)의 의미 유사도가 0.83으로 계산될 수 있다.
한편, SearchContent와 FindContent는 ‘TV 컨텐츠 찾아주기’라는 서비스를 제공하는 라벨로서, 그 의미가 동일하다.
따라서 질의 해석 장치(1000)는 기준 질의와의 의미 유사도가 0.8 이상인 조건과 SearchContent와 FindContent는 동일한 의도라는 조건으로 필터링 규칙을 생성하고, 대조 질의 중 오분류 후보를 추출할 수 있다.
“캡틴마블 찾아줄 수 있니”(420)와 “마블캡틴을 틀면 좋겠어”(430)는 기준 질의와의 의미 유사도가 모두 0.8 이상이고, “캡틴마블 틀어줘”(410)의 의도 라벨과 “캡틴마블 찾아줄 수 있니”(420)의 의도 라벨이 동일한 것으로 간주되므로, “마블캡틴을 틀면 좋겠어”(430)가 오분류 후보로 추출된다. 한편, 오분류 후보에서 제외된 “캡틴마블 찾아줄 수 있니”(420)의 의도 라벨인 FindContent는 그대로 유지된다.
이후 전문가는 “마블캡틴을 틀면 좋겠어”(430)의 의도 라벨 ILikeContent는 실제 사용자의 의도와 다르다는 것을 최종적으로 판단한다.
질의 해석 장치(1000)는 최종 오분류 후보인 “마블캡틴을 틀면 좋겠어”(430)의 의도 라벨이 ILikeContent에서 기준 질의의 의도 라벨인 SearchContent로 변경되기 위한 핵심 어휘를 추출하기 위해 언어 분석 과정을 수행한다.
우선 기준 질의인 “캡틴마블 틀어줘”(410)의 어휘 의미 패턴을 분석한다. “캡틴마블 틀어줘”(410)라는 질의는 표 2와 같은 어휘 의미 패턴을 갖을 수 있다.
+ Noun-content + Post + Play
+ Noun-content + Noun-none + Play
+ Noun-content + Post + Play
표 2에서, Noun-content는 명사와 컨텐츠 이름이 결합된 것이고, Post는 Postposition의 약자로서 조사를 의미하고, Play는 재생을 의미하는 동사이고, Noun-none은 개체명 분석 결과 별도의 카테고리 정보가 없는 명사를 의미한다.
질의 해석 장치(1000)는 최종 오분류 후보의 형태소와 구문을 분석하여 “마블캡틴을 틀면 좋겠어”(430)의 의미 패턴을 'Noun-none + Post + Play + Like'로 생성할 수 있다. 이후 질의 해석 장치(1000)는 기준 질의인 “캡틴마블 틀어줘”(410)에는 존재하나 최종 오분류 후보인 “마블캡틴을 틀면 좋겠어”(430)에는 존재하지 않는 핵심 어휘를 추출한다. 즉 임의의 질의가 정분류 되기 위해 반드시 필요한 요소로서 Noun-none이 될 수 있는 후보들을 추출한다. 이 경우, 표 3과 같이 3 가지의 핵심 어휘 후보를 추출할 수 있다.
캡틴마블/Noun-content
캡틴/Noun-content + 마블/Noun-none
캡틴/Noun-content
표 3에서, 질의 해석 장치(1000)는 3개의 핵심 어휘 후보들에 언어 학습 임베딩 모델로 신뢰도를 계산하여 '캡틴/Noun-content'을 핵심 어휘로 선정한다. 질의 해석 장치(1000)는 선정된 핵심 어휘를 학습기(200)에 전달하여 질의 해석 모델(210)을 생성한다.
한편 질의 해석 장치(1000)는 오분류 후보 추출 과정에서 사용되는 필터링 규칙에, 오분류 질의가 정분류 되기 위해서는 ‘캡틴/Noun-content’을 포함해야 한다는 새로운 규칙을 반영할 수도 있다.
위의 과정을 거쳐 기준 질의, 최종 오분류 후보, 핵심 어휘를 학습 데이터로 하여 질의 해석 모델(210)을 학습한다.
질의 해석기(300)는 질의 해석 모델(210)을 이용하여, “마블캡틴을 틀면 좋겠어”라는 질의의 의도 라벨을 430a와 같이 SearchContent로 변경하고, 결과적으로 “캡틴마블 틀어줘”와 “마블캡틴을 틀면 좋겠어”의 의도가 동일한 것으로 해석한다.
이후 학습된 질의 해석 모델(210)을 포함한 질의 해석 장치(1000)는 대화 시스템 혹은 문서 분석 상용 서비스의 일부로서 사용될 수 있고, 더 높은 성능의 대화 해석 결과를 상용 로그에 출력할 수 있다.
또한, 질의 해석 장치(1000)의 출력값은 다시 입력값으로 사용되어, 질의 해석 모델(210)의 학습에 이용될 수 있다.
본 발명에 따르면 상용 서비스에서 미리 판단된 질의 중 오분류된 것으로 예상되는 소수의 후보를 효율적으로 추출하는 과정을 거치므로, 모든 오분류 질의를 대상으로 하는 질의 해석 장치에 비해 속도와 정확성을 높일 수 있다.
또한 본 발명에 따르면 필터링 규칙과 딥러닝 기반의 알고리즘을 같이 사용함으로써, 대량의 상용 서비스 로그에서 획득한 다양한 유형의 질의 해석이 가능하다.
이상에서 설명한 본 발명의 실시예는 장치 및 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.

Claims (10)

  1. 적어도 하나의 프로세서에 의해 동작하는 컴퓨팅 장치가 질의를 해석하는 방법으로서,
    임의의 장치에 의해 해석된 의도가 라벨링 된 질의들을 입력받는 단계,
    상기 입력 질의들을 기준 질의와 오분류 된 것으로 예상되는 대조 질의들로 분류하고, 상기 기준 질의의 어휘 패턴을 분석하는 단계,
    상기 기준 질의, 상기 대조 질의, 그리고 상기 어휘 패턴으로 학습 데이터를 생성하는 단계, 그리고
    상기 학습 데이터를 이용하여 질의 해석 모델을 학습시키는 단계를 포함하고,
    상기 대조 질의들은 상기 입력 질의들 중 미리 정한 값 이하의 빈도로 나타나는 질의들인, 질의 해석 방법.
  2. 제1항에서,
    상기 학습 데이터를 생성하는 단계는,
    상기 기준 질의와 상기 대조 질의들의 의미 유사도를 이용한 필터링 규칙을 생성하고, 상기 필터링 규칙에 따라 상기 대조 질의들 중에서 오분류 후보들을 선정하는 단계, 그리고
    상기 기준 질의의 어휘 패턴과 상기 오분류 후보들의 어휘 패턴을 비교하여, 상기 기준 질의에는 존재하고, 상기 오분류 후보들에 존재하지 않는 핵심 어휘들을 추출하는 단계를 포함하는, 질의 해석 방법.
  3. 제2항에서,
    상기 오분류 후보들을 선정하는 단계는,
    상기 기준 질의와 상기 대조 질의들을 언어학적으로 분석하여 각각의 임베딩 벡터를 생성하는 단계,
    상기 기준 질의의 임베딩 벡터와 상기 대조 질의들의 각 임베딩 벡터 간 의미 유사도를 계산하는 단계, 그리고
    계산된 의미 유사도 값이 미리 정한 값 이상인 대조 질의들를 오분류 후보로 결정하는 단계를 포함하는, 질의 해석 방법.
  4. 제3항에서,
    상기 필터링 규칙은,
    상기 기준 질의의 의도와 동일한 의도라고 판단되는 대조 질의는 오분류 후보에서 제외하는 것인, 질의 해석 방법.
  5. 제3항에서,
    상기 오분류 후보로 결정하는 단계 이후에,
    전문가로부터 상기 오분류 후보에 라벨링 된 의도와 실제 사용자의 의도가 일치하는지 판단 결과를 수신하는 단계, 그리고
    상기 결과를 참고하여, 상기 라벨링 된 의도가 상기 실제 사용자의 의도와 같은 질의가 상기 오분류 후보에 포함된 경우, 다시 오분류 후보들을 선정하는 단계를 더 포함하는, 질의 해석 방법.
  6. 제2항에서,
    상기 핵심 어휘들을 추출하는 단계는,
    상기 기준 질의를 구성하는 어휘 중에서 임의의 개체명으로 인식되지 않는 어휘를 추출하는, 질의 해석 방법.
  7. 제1항에서,
    상기 학습시키는 단계 이후에,
    새로운 질의를 상기 학습된 질의 해석 모델로 입력하는 단계,
    상기 학습된 질의 해석 모델로부터 상기 새로운 질의의 의도를 결정하는 단계, 그리고
    상기 새로운 질의에 라벨링 된 의도와 상기 결정된 의도가 다른 경우, 상기 새로운 질의의 의도를 상기 결정된 의도로 변경하는 단계를 더 포함하는, 질의 해석 방법.
  8. 컴퓨팅 장치로서,
    메모리, 그리고
    상기 메모리에 로드된 프로그램의 명령들(instructions)을 실행하는 적어도 하나의 프로세서를 포함하고,
    상기 프로그램은,
    임의의 장치에 의해 해석된 의도가 라벨링 된 질의들을 입력받는 단계,
    상기 입력 질의들을 기준 질의와 오분류 된 것으로 예상되는 대조 질의들로 분류하는 단계,
    상기 기준 질의와 상기 대조 질의들 각각의 임베딩 벡터를 생성하고, 상기 기준 질의의 임베딩 벡터와 상기 대조 질의들의 각 임베딩 벡터 간 의미 유사도를 계산하는 단계,
    상기 계산된 의미 유사도 값이 미리 정한 값 이상인 대조 질의들를 오분류 후보로 선정하는 단계,
    상기 기준 질의와 상기 오분류 후보들의 어휘 패턴을 분석하여 상기 기준 질의에 존재하고, 상기 오분류 후보들에 존재하지 않는 핵심 어휘들을 추출하는 단계,
    상기 기준 질의, 상기 오분류 후보들 그리고 상기 핵심 어휘들로 학습 데이터를 생성하는 단계, 그리고
    상기 학습 데이터를 이용하여 질의 해석 모델을 학습시키는 단계
    를 실행하도록 기술된 명령들을 포함하는, 컴퓨팅 장치.
  9. 제8항에서,
    상기 분류하는 단계는,
    상기 입력 질의들 중 상기 기준 질의의 의도 라벨과 동일한 기능을 수행하는 의도 라벨을 갖는 질의를 정분류 된 것으로 분류하는, 컴퓨팅 장치.
  10. 제8항에서,
    상기 핵심 어휘들을 추출하는 단계는,
    상기 기준 질의를 구성하는 어휘를 상기 어휘와 유의 관계에 있는 어휘로 대체한 의미 패턴을 생성하는, 컴퓨팅 장치.
KR1020190133906A 2019-10-25 2019-10-25 질의 해석 방법 및 장치 KR102445172B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190133906A KR102445172B1 (ko) 2019-10-25 2019-10-25 질의 해석 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190133906A KR102445172B1 (ko) 2019-10-25 2019-10-25 질의 해석 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20210049518A KR20210049518A (ko) 2021-05-06
KR102445172B1 true KR102445172B1 (ko) 2022-09-20

Family

ID=75916022

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190133906A KR102445172B1 (ko) 2019-10-25 2019-10-25 질의 해석 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102445172B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011198156A (ja) 2010-03-19 2011-10-06 Fujitsu Ltd イベント情報抽出誤り検知装置、方法、及びプログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101839121B1 (ko) * 2015-09-14 2018-04-26 네이버 주식회사 사용자 질의 교정 시스템 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011198156A (ja) 2010-03-19 2011-10-06 Fujitsu Ltd イベント情報抽出誤り検知装置、方法、及びプログラム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Fang et al. "Learning how to active learn: A deep reinforcement learning approach." arXiv preprint arXiv:1708.02383 (2017).
Zhang et al. "Active discriminative text representation learning." Proceedings of the AAAI Conference on Artificial Intelligence. Vol. 31. No. 1. 2017.
하은지, et al. "Active Learning 과 RoBERTa 언어모델을 이용한 대화해석 개선." 한국정보과학회 학술발표논문집 (2019): 380-382.

Also Published As

Publication number Publication date
KR20210049518A (ko) 2021-05-06

Similar Documents

Publication Publication Date Title
Chen et al. Spoken language understanding without speech recognition
US11816441B2 (en) Device and method for machine reading comprehension question and answer
US11580145B1 (en) Query rephrasing using encoder neural network and decoder neural network
US10304444B2 (en) Fine-grained natural language understanding
Kim et al. Two-stage multi-intent detection for spoken language understanding
US8204751B1 (en) Relevance recognition for a human machine dialog system contextual question answering based on a normalization of the length of the user input
US10134388B1 (en) Word generation for speech recognition
CN112417102B (zh) 一种语音查询方法、装置、服务器和可读存储介质
US8504374B2 (en) Method for recognizing and interpreting patterns in noisy data sequences
US20140195238A1 (en) Method and apparatus of confidence measure calculation
KR101581816B1 (ko) 기계학습을 이용한 음성인식방법
Ferreira et al. Zero-shot semantic parser for spoken language understanding.
Huang et al. Adapting pretrained transformer to lattices for spoken language understanding
US11893347B2 (en) Contrastive meta-learning for zero-shot learning
CN110427619B (zh) 一种基于多通道融合与重排序的中文文本自动校对方法
Moyal et al. Phonetic search methods for large speech databases
JP4653598B2 (ja) 構文・意味解析装置、音声認識装置、及び構文・意味解析プログラム
KR102445172B1 (ko) 질의 해석 방법 및 장치
Malandrakis et al. Emotiword: Affective lexicon creation with application to interaction and multimedia data
Dinarelli Spoken language understanding: from spoken utterances to semantic structures
US11900072B1 (en) Quick lookup for speech translation
Henderson et al. Data-driven methods for spoken language understanding
Xu et al. Continuous space discriminative language modeling
US20230143110A1 (en) System and metohd of performing data training on morpheme processing rules
Fabian et al. Contextual semantic processing for a spanish dialogue system using markov logic

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant