KR102015218B1 - 기계 학습을 이용한 텍스트 분류 방법 및 장치 - Google Patents

기계 학습을 이용한 텍스트 분류 방법 및 장치 Download PDF

Info

Publication number
KR102015218B1
KR102015218B1 KR1020180044121A KR20180044121A KR102015218B1 KR 102015218 B1 KR102015218 B1 KR 102015218B1 KR 1020180044121 A KR1020180044121 A KR 1020180044121A KR 20180044121 A KR20180044121 A KR 20180044121A KR 102015218 B1 KR102015218 B1 KR 102015218B1
Authority
KR
South Korea
Prior art keywords
text
character
word
vector value
unit
Prior art date
Application number
KR1020180044121A
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 KR1020180044121A priority Critical patent/KR102015218B1/ko
Application granted granted Critical
Publication of KR102015218B1 publication Critical patent/KR102015218B1/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/3347Query execution using vector based model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

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

Abstract

기계 학습을 이용한 텍스트 분류 방법 및 장치가 개시된다. 기계 학습을 이용한 텍스트 분류 방법은 (a) 텍스트를 수집하는 단계; (b) 상기 수집된 각 텍스트를 워드 단위와 문자 단위로 각각 구분하는 단계; (c) 상기 워드 단위로 구분된 텍스트를 워드 기반 임베딩하여 벡터값으로 변환하는 단계; (d) 상기 문자 단위로 구분된 텍스트를 문자 기반 임베딩하여 벡터값으로 변환하는 단계; 및 (e) 상기 워드 기반 임베딩된 실수 벡터값과 상기 문자 기반 임베딩된 벡터값을 각각의 채널을 통해 학습된 텍스트 분류 모델에 적용하여 상기 텍스트의 분류 결과를 출력하는 단계를 포함한다.

Description

기계 학습을 이용한 텍스트 분류 방법 및 장치{Method and apparatus for text classification using machine learning}
본 발명은 기계 학습을 이용한 텍스트 분류 방법 및 장치에 관한 것이다.
종래의 딥러닝을 사용한 한국어 텍스트 의도 파악 장치의 경우, Word Level Convolutional Neural Network(이하, Word CNN)를 활용하여 텍스트 안 의도를 파악했다. Word CNN의 경우, 의미 단위로 분리된 텍스트를 필터를 통해 임베딩시킨다. 임베딩 후, 합성곱 과정을 거친 출력값 중 최댓값을 추출해 완전연결(Fully-Connected)해준다. 이러한 과정을 거치게 되면, 마지막 노드에서 개발자가 설정한 항목 개수만큼 텍스트가 분류된다. 한편, Character CNN의 경우, 별도의 텍스트 가공 과정 없이 텍스트 내 각각의 문자에 대해 임베딩을 진행 후 합성곱을 수행한다. 그 후 Word CNN과 마찬가지로 마지막 단계에서 분류된 텍스트가 출력되게 된다.
종래 보편적으로 쓰였던 Word CNN의 경우, 텍스트 가공 과정부터 문제가 발생한다. 한국어가 가진 언어 특성-명사와 조사, 또는 동사와 어미가 결합되어 있다는 점 등-상 현존하는 한국어 전처리 패키지로 텍스트 가공 시 분류 정확도가 떨어지게 된다. 또한 온라인상의 텍스트는 띄어쓰기나 맞춤법 등이 지켜지지 않는 경우가 많아 분류 정확성을 더욱 낮추는 측면이 있다.
본 발명은 온라인상에 게시되는 informal하고 짧은 텍스트를 분류하기 위한 기계 학습을 이용한 텍스트 분류 방법 및 장치를 제공하기 위한 것이다.
본 발명의 일 측면에 따르면, 온라인상에 게시되는 informal하고 짧은 텍스트를 분류하기 위한 기계 학습을 이용한 텍스트 분류 방법이 제공된다.
본 발명의 일 실시예에 따르면, (a) 텍스트를 수집하는 단계; (b) 상기 수집된 각 텍스트를 워드 단위와 문자 단위로 각각 구분하는 단계; (c) 상기 워드 단위로 구분된 텍스트를 워드 기반 임베딩하여 벡터값으로 변환하는 단계; (d) 상기 문자 단위로 구분된 텍스트를 문자 기반 임베딩하여 벡터값으로 변환하는 단계; 및 (e) 상기 워드 기반 임베딩된 실수 벡터값과 상기 문자 기반 임베딩된 벡터값을 각각의 채널을 통해 학습된 텍스트 분류 모델에 적용하여 상기 텍스트의 분류 결과를 출력하는 단계를 포함하는 텍스트 분류 방법이 제공될 수 있다.
상기 텍스트 분류 모델은, 복수의 채널을 통해, 워드 기반 임베딩된 실수 벡터값과 상기 문자 기반 임베딩된 벡터값을 각각 입력받고, 각 필터 사이즈에 대해 합성곱을 수행하여 출력값을 출력하며, 맥스풀링을 통해 상기 각 필터 사이즈에서 출력된 출력값들 중 최대값을 추출한 후 각 채널의 최대값을 연결하여 상기 텍스트의 분류 결과를 출력하되, 상기 각 채널의 최대값을 연결하기 위한 연결층(concatenate layer)가 맥스풀링층과 완전 연결층 사이에 구비될 수 있다.
제1 채널과 제2 채널에 구비되는 필터 종류는 상이하되, 각각의 필터 종류별 필터 개수는 복수일 수 있다.
상기 워드 기반 임베딩은, 상기 워드 단위로 구분된 텍스트를 각 워드간 유사도를 고려하여 기설정된 벡터 사전을 통해 벡터값을 도출하며,
상기 문자 기반 임베딩은, 상기 문자 단위로 구분된 텍스트를 각각 문자별 유니코드 포인트로 변환하여 벡터값을 도출할 수 있다.
상기 텍스트는 짧은 비정형화된 문장일 수 있다.
본 발명의 다른 측면에 따르면, 온라인상에 게시되는 informal하고 짧은 텍스트를 분류하기 위한 기계 학습을 이용한 텍스트 분류 장치가 제공된다.
본 발명의 일 실시예에 따르면, 각 텍스트를 워드 단위와 문자 단위로 각각 구분하는 텍스트 전처리부; 상기 워드 단위로 구분된 텍스트를 워드 기반 임베딩하여 벡터값으로 변환하고, 상기 문자 단위로 구분된 텍스트를 문자 기반 임베딩하여 벡터값으로 변환하는 임베딩부; 및 복수의 채널을 구비하며, 각각의 채널을 통해 상기 워드 기반 임베딩된 실수 벡터값과 상기 문자 기반 임베딩된 벡터값을 입력받은 후 기설정된 분류 항목에 따라 분류하여 상기 텍스트의 분류 결과를 출력하는 텍스트 분류 모델부를 포함하는 텍스트 분류 장치가 제공될 수 있다.
상기 텍스트 분류 모델부는, 복수의 채널을 통해, 워드 기반 임베딩된 실수 벡터값과 상기 문자 기반 임베딩된 벡터값을 각각 입력받고, 각 필터 사이즈에 대해 합성곱을 수행하여 출력값을 출력하며, 맥스풀링을 통해 상기 각 필터 사이즈에서 출력된 출력값들 중 최대값을 추출한 후 각 채널의 최대값을 연결하여 상기 텍스트의 분류 결과를 출력하되, 상기 각 채널의 최대값을 연결하기 위한 연결층(concatenate layer)이 맥스풀링층과 완전 연결층 사이에 구비될 수 있다.
텍스트에 상응하여 워드 기반 임베딩된 벡터값과 문자 기반 임베딩된 벡터값을 상기 텍스트 분류 모델부에 입력값으로 입력한 후 분류 결과를 설정하여 상기 텍스트 분류 모델부의 내부 가중치를 조정하도록 하여 상기 텍스트 분류 모델부를 트레이닝하는 학습부를 더 포함할 수 있다.
본 발명의 일 실시예에 따른 기계 학습을 이용한 텍스트 분류 방법 및 장치를 제공함으로써, 띄어쓰기나 맞춤법 등의 오류가 있는 문장에서도 의도 분류 정확성을 높일 수 있는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 기계 학습을 이용한 텍스트 분류 모델을 학습하는 방법을 나타낸 순서도.
도 2는 본 발명의 일 실시예에 따른 분류 항목을 도시한 도면.
도 3은 본 발명의 일 실시예에 따른 워드 단위와 문자 단위 텍스트 구분과 임베딩을 설명하기 위해 도시한 도면.
도 4는 본 발명의 일 실시예에 따른 텍스트 분류 모델을 도시한 도면.
도 5는 본 발명의 일 실시예에 따른 텍스트 분류 방법을 나타낸 순서도.
도 6은 본 발명의 일 실시예에 따른 텍스트 분류 장치의 내부 구성을 개략적으로 도시한 도면.
본 명세서에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "구성된다" 또는 "포함한다" 등의 용어는 명세서상에 기재된 여러 구성 요소들, 또는 여러 단계들을 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
이하, 첨부된 도면들을 참조하여 본 발명의 실시예를 상세히 설명한다.
도 1은 본 발명의 일 실시예에 따른 기계 학습을 이용한 텍스트 분류 모델을 학습하는 방법을 나타낸 순서도이며, 도 2는 본 발명의 일 실시예에 따른 분류 항목을 도시한 도면이고, 도 3은 본 발명의 일 실시예에 따른 워드 단위와 문자 단위 텍스트 구분과 임베딩을 설명하기 위해 도시한 도면이고, 도 4는 본 발명의 일 실시예에 따른 텍스트 분류 모델을 도시한 도면이다. 본 발명의 일 실시예에서는 워드 기반 임베딩과 문자 기반 임베딩을 혼합한 CNN을 기반으로 텍스트 분류 모델이 형성된다. 이하에서는 별도의 설명이 없더라도 텍스트 분류 모델은 혼합형 CNN인 것으로 확장 해석되어야 할 것이다.
단계 110에서 텍스트 분류 장치(100)는 텍스트를 수집한다. 여기서, 수집되는 텍스트는 쇼핑몰의 상품 문의와 같은 짧은 텍스트인 것을 가정하기로 한다. 예를 들어, "환불 신청 했는데 언제 가지러 오나요?", "생수 언제 입고되나요?", "주문한 것보다 많이 왔습니다" 등과 같은 정형화되지 않은 짧은 텍스트가 수집될 수 있다.
본 명세서에서는 이해와 설명의 편의를 도모하기 위해 수집되는 텍스트가 온라인상에 게시되는 짧은 텍스트인 것을 가정하나 짧은 텍스트로 제한되는 것은 아니다.
단계 115에서 텍스트 분류 장치(100)는 수집된 텍스트를 각각 분류 항목별로 분류한다.
분류 항목(카테고리)의 일 예는 도 2에 도시된 바와 같다. 도 2는 상품 문의에 대한 분류 항목의 일 예를 도시한 도면이다. 상품 문의와 관련하여 도 2에서는 분류 항목을 크게 6가지로 분류하고, 세부적으로 25가지로 구체화한 일 예를 도시하고 있다. 그러나, 상품 문의에 대한 분류 항목은 도 2와는 상이할 수 있음은 당연하다.
각 수집된 텍스트를 각각의 분류 항목에 따라 분류한 후 분류된 각 분류 항목으로 라벨링할 수 있다.
단계 120에서 텍스트 분류 장치(100)는 텍스트를 각각 워드 단위 및 문자 단위로 구분한다.
예를 들어, 텍스트 분류 장치(100)는 형태소 분석기를 이용하여 각 텍스트를 워드 단위로 구분할 수 있다. 이때, 공백은 별다른 의미를 갖지 못하므로 이를 제외할 수도 있다.
"나는 밥을 먹었다"와 같은 짧은 텍스트를 가정하기로 한다. 형태소 분석기를 기반으로 워드 단위로 텍스트를 구분하는 경우, "나","는", "라면","을","먹었다"와 같이 구분될 수 있다.
또한, 텍스트 분류 장치(100)는 텍스트를 각각 문자 단위로 구분할 수 있다. 이때, 문자 단위로 구분하는 경우, "나","는","라","면","을","먹","었","다"와 같이 구분될 수 있다.
텍스트를 워드 단위로 구분한 일 예와 문자 단위로 구분한 일 예가 도 3에 도시되어 있다.
단계 125에서 텍스트 분류 장치(100)는 단어 단위로 구분된 텍스트를 단어 기반으로 임베딩(단어 기반 임베딩)하여 벡터화한다.
예를 들어, 단어 기반 임베딩은 도 3에서 보여지는 바와 같이, 단어 단위로 구분된 데이터를 수치화하는 과정이다.
단어 기반 임베딩은 예를 들어, word2vec을 이용할 수 있다.
단어 단위로 구분된 텍스트는 각 단어간 유사도를 고려하여 벡터값(실수값)으로 변환될 수 있다. 텍스트 분류 장치(100)는 기설정된 벡터 사전을 이용하여 각 단어간 유사도를 고려하여 단어 단위로 구분된 텍스트를 수치화할 수 있다.
단계 130에서 텍스트 분류 장치(100)는 문자 단위로 구분된 텍스트를 문자 기반으로 임베딩(문자 기반 임베딩)하여 벡터화한다.
이때, 텍스트 분류 장치(100)는 문자 단위로 구분된 텍스트를 각각 유니코드 포인트(unicode point)로 변환하고, 임의의 균등 분포를 갖도록 임베딩할 수 있다.
단계 135에서 텍스트 분류 장치(100)는 단어 기반 임베딩된 벡터값과 워드 기반 임베딩된 벡터값을 각각 입력값으로 텍스트 분류 모델에 입력하여 텍스트 분류 모델을 학습한다.
이미 전술한 바와 같이, 각 텍스트는 분류 항목이 라벨링되어 있다. 따라서, 각 텍스트에 상응하는 단어 기반 임베딩된 벡터값과 워드 기반 임베딩된 벡터값이 입력값으로 텍스트 분류 모델에 입력되는 경우, 각 텍스트의 분류 항목이 결과값으로 주어지며 텍스트 분류 모델 내부의 가중치를 조절하는 과정을 통해 트레이닝할 수 있다.
이해와 설명의 편의를 도모하기 위해 우선 텍스트 분류 모델에 대해 도 4를 참조하여 간략하게 설명하기로 한다.
본 발명의 일 실시예에 따른 텍스트 분류 모델은 도 4에서 보여지는 바와 같이, 딥 러닝에 따른 인공 신경망을 기반으로 한다.
다만, 종래의 인공 신경망과 달리, 본 발명의 일 실시예에 따른 텍스트 분류 모델은 두 종류의 데이터를 이용하여 텍스트 분류 모델을 학습 및 분류하기 위해 두 종류의 데이터를 각각 입력값으로 입력받기 위해 복수의 채널을 포함한다.
텍스트 분류 모델은 도 4에 도시된 바와 같이, 복수의 채널(410a, 410b), 복수의 필터층(420), 맥스풀링층(430), 연결층(440), 완전 연결층(450)을 포함한다.
복수의 채널(410a, 410b)은 두 종류의 데이터를 각각 입력받는다. 즉, 복수의 채널(410a, 410b)은 제1 채널(410a)과 제2 채널(410b)을 포함한다. 제1 채널(410a)은 문자 기반 임베딩된 벡터값(실수 벡터)를 입력받는다. 또한, 제2 채널(410b)은 단어 기반 임베딩된 벡터값(실수 벡터)를 입력받는다.
필터층(420)은 제1 필터층과 제2 필터층을 포함한다. 제1 필터층은 제1 채널(410a)과 연결되며, 제2 필터층은 제2 채널과 연결된다.
제1 필터층은 서로 다른 사이즈를 가지는 복수의 필터를 포함한다. 예를 들어, 제1 필터층은 4 종류의 필터(2글자 필터, 3글자 필터, 4글자 필터, 5글자 필터)를 포함한다. 또한, 한 종류의 필터당 필터 개수는 예를 들어, 128개일 수 있다. 따라서, 제1 채널(410a)의 경우 전체 512개의 필터가 존재하게 된다.
제2 필터층 또한, 제1 필터층과 마찬가지로 서로 다른 사이즈를 가지는 복수의 필터를 포함한다. 예를 들어, 제2 필터층은 3종류의 필터(1단어 필터, 2단어 필터, 3단어 필터)를 포함한다. 또한, 한 종류의 필터마다 171개의 필터를 포함할 수 있다. 따라서, 제2 필터층의 전체 필터 개수는 513개일 수 있다.
제1 필터층과 제2 필터층의 필터 사이즈 및 필터 개수는 일 예에 불과하며 필터 사이즈와 필터 개수는 구현 방법에 따라 달라질 수 있음은 당연하다.
제1 필터층과 제2 필터층은 각 필터 사이즈에서 합성곱 과정을 통해 출력값이 출력되며, 맥스풀링층(430)을 통해 출력값들 중 최대값이 추출된다.
각 채널의 최대값이 연결층(440)을 통해 연결되며, 완전 연결층(450)에 의해 최종 분류 의도들이 출력되게 된다.
이와 같이, 본 발명의 일 실시예에 따른 텍스트 분류 모델은 복수의 채널을 통해 두 종류의 데이터를 입력값으로 하며, 중간 은닉층에서 두 종류의 데이터를 합산하는 과정을 거친 후 최종적으로 분류 의도(카테고리)와 연결되어 학습하게 된다.
도 5는 본 발명의 일 실시예에 따른 텍스트 분류 방법을 나타낸 순서도이다.
단계 510에서 텍스트 분류 장치(100)는 텍스트를 수집한다.
단계 515에서 텍스트 분류 장치(100)는 텍스트를 각각 워드 단위 및 문자 단위로 구분한다. 도 1에서 설명한 트레이닝 과정과 동일하게 텍스트를 텍스트 분류 모델에 입력하기 위해서는 입력값을 벡터화해야 한다.
도 1에서 설명한 바와 같이, 텍스트는 각각 워드 단위와 문자 단위로 구분될 수 있다. 이는 도 1에서 설명한 바와 동일하므로 중복되는 설명은 생략하기로 한다.
단계 520에서 텍스트 분류 장치(100)는 워드 단위로 구분된 텍스트를 워드 기반 임베딩하여 벡터화한다.
단계 525에서 텍스트 분류 장치(100)는 문자 단위로 구분된 텍스트를 문자 기반 임베딩을 통해 벡터화한다.
이미 전술한 바와 같이, 본 발명의 일 실시예에 따른 텍스트 분류 모델은 두 종류의 데이터를 입력값으로 이용하여 텍스트를 분류할 수 있다. 이를 위해, 본 발명의 일 실시예에서는 단어 기반 임베딩을 통해 단어 단위로 구분된 텍스트를 단어간 유사도를 기반으로 임베딩하여 실수 벡터값을 도출할 수 있다. 또한, 문자 기반 임베딩을 통해 문자 단위로 구분된 텍스트를 임베딩하여(즉, 유니코드 포인트로 변환하여) 실수 벡터값을 도출할 수 있다.
단계 530에서 텍스트 분류 장치(100)는 워드 기반 임베딩된 벡터값과 문자 기반 임베딩된 벡터값을 입력값으로 이용하여 텍스트 분류 모델에 적용하여 텍스트의 분류 의도를 출력한다.
도 6은 본 발명의 일 실시예에 따른 텍스트 분류 장치의 내부 구성을 개략적으로 도시한 도면이다.
도 6을 참조하면, 본 발명의 일 실시예에 따른 텍스트 분류 장치(100)는 수집부(610), 텍스트 전처리부(615), 임베딩부(620), 학습부(625), 텍스트 분류 모델부(630), 메모리(635) 및 프로세서(640)를 포함하여 구성된다.
수집부(610)는 텍스트를 수집한다. 예를 들어, 수집부(610)는 쇼핑몰 등에서 짧은 텍스트를 수집할 수 있다.
텍스트 전처리부(615)는 수집된 텍스트를 워드 단위 또는/및 문자 단위로 분류 가공한다. 이는 이미 전술한 바와 동일하므로 중복되는 설명은 생략하기로 한다.
임베딩부(620)는 워드 단위로 구분된 텍스트를 워드 기반 임베딩하고, 문자 단위로 구분된 텍스트를 문자 기반 임베딩한다. 이는 도 1에서 전술한 바와 동일하므로 중복되는 설명은 생략하기로 한다.
학습부(625)는 워드 기반 임베딩된 벡터값과 문자 단위 임베딩된 벡터값을 텍스트 분류 모델부(630)에 입력하여 해당 텍스트 분류 모델을 훈련하기 위한 수단이다.
학습부(625)는 각 텍스트에 대한 분류 항목을 알고 있으므로, 텍스트 분류 모델부(630)에 각 텍스트에 상응하는 워드 기반 임베딩된 벡터값과 문자 단위 임베딩된 벡터값을 입력값으로 입력하고 그에 따른 결과값을 분류 항목으로 각각 설정함으로써 텍스트 분류 모델부(630)의 은닉층의 가중치를 조정하여 학습할 수 있다.
텍스트 분류 모델부(630)는 복수의 채널을 포함하며, 각 채널을 통해 서로 다른 데이터(벡터값)을 각각 입력받으며, 각각의 필터 사이즈에서 합성곱을 수행해 출력값을 도출한 후 맥스풀링층을 통해 출력값들 중 최대값을 추출한 후 각 채널에서 추출된 최대값을 이어주는 완전 연결 과정을 통해 기설정된 대분류 또는 소분류에 따른 분류 의도를 출력한다. 학습 과정 또한 동일하므로 중복되는 설명은 생략하기로 한다.
메모리(635)는 적어도 하나의 명령어들을 저장한다. 또한, 메모리(635)는 텍스트 분류 방법을 수행하기 위해 필요한 명령어, 이 과정에서 파생되는 다양한 데이터 등을 저장한다.
프로세서(640)는 본 발명의 일 실시예에 따른 텍스트 분류 장치(100)의 내부 구성 요소들(예를 들어, 수집부(610), 텍스트 전처리부(615), 임베딩부(620), 학습부(625), 텍스트 분류 모델부(630), 메모리(635) 등)을 제어하기 위한 수단이다.
본 발명의 실시 예에 따른 장치 및 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야 통상의 기술자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이제까지 본 발명에 대하여 그 실시 예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
100: 텍스트 분류 장치
610: 수집부
615: 텍스트 전처리부
620: 임베딩부
625: 학습부
630: 텍스트 분류 모델부
635: 메모리
640: 프로세서

Claims (10)

  1. (a) 텍스트를 수집하는 단계;
    (b) 상기 수집된 각 텍스트를 워드 단위와 문자 단위로 각각 구분하는 단계;
    (c) 상기 워드 단위로 구분된 텍스트를 워드 기반 임베딩하여 벡터값으로 변환하는 단계;
    (d) 상기 문자 단위로 구분된 텍스트를 문자 기반 임베딩하여 벡터값으로 변환하는 단계; 및
    (e) 상기 워드 기반 임베딩된 실수 벡터값과 상기 문자 기반 임베딩된 벡터값을 각각의 채널을 통해 학습된 텍스트 분류 모델에 적용하여 상기 텍스트의 분류 결과를 출력하는 단계를 포함하되,
    상기 학습된 텍스트 분류 모델은,
    텍스트에 상응하여 워드 기반 임베딩된 벡터값과 문자 기반 임베딩된 벡터값을 텍스트 분류 모델부에 입력값으로 입력한 후 분류 결과를 설정하여 텍스트 분류 모델부의 내부 가중치를 조정하도록 하여 트레이닝되는 것을 특징으로 하는 텍스트 분류 방법.
  2. 제1 항에 있어서,
    상기 텍스트 분류 모델은,
    복수의 채널을 통해, 워드 기반 임베딩된 실수 벡터값과 상기 문자 기반 임베딩된 벡터값을 각각 입력받고, 각 필터 사이즈에 대해 합성곱을 수행하여 출력값을 출력하며, 맥스풀링을 통해 상기 각 필터 사이즈에서 출력된 출력값들 중 최대값을 추출한 후 각 채널의 최대값을 연결하여 상기 텍스트의 분류 결과를 출력하되,
    상기 각 채널의 최대값을 연결하기 위한 연결층(concatenate layer)가 맥스풀링층과 완전 연결층 사이에 구비되는 것을 특징으로 하는 텍스트 분류 방법.
  3. 제2 항에 있어서,
    제1 채널과 제2 채널에 구비되는 필터 종류는 상이하되,
    각각의 필터 종류별 필터 개수는 복수인 것을 특징으로 하는 텍스트 분류 방법.
  4. 제1 항에 있어서,
    상기 워드 기반 임베딩은,
    상기 워드 단위로 구분된 텍스트를 각 워드간 유사도를 고려하여 기설정된 벡터 사전을 통해 벡터값을 도출하는 것을 특징으로 하는 텍스트 분류 방법.
  5. 제1 항에 있어서,
    상기 문자 기반 임베딩은,
    상기 문자 단위로 구분된 텍스트를 각각 문자별 유니코드 포인트로 변환하여 벡터값을 도출하는 것을 특징으로 하는 텍스트 분류 방법.
  6. 제1 항에 있어서,
    상기 텍스트는 짧은 비정형화된 문장인 것을 특징으로 하는 텍스트 분류 방법.
  7. 제1 항 내지 제6 항 중 어느 하나의 항에 따른 방법을 수행하기 위한 프로그램 코드를 기록한 컴퓨터로 판독 가능한 기록매체.
  8. 각 텍스트를 워드 단위와 문자 단위로 각각 구분하는 텍스트 전처리부;
    상기 워드 단위로 구분된 텍스트를 워드 기반 임베딩하여 벡터값으로 변환하고, 상기 문자 단위로 구분된 텍스트를 문자 기반 임베딩하여 벡터값으로 변환하는 임베딩부; 및
    복수의 채널을 구비하며, 각각의 채널을 통해 상기 워드 기반 임베딩된 실수 벡터값과 상기 문자 기반 임베딩된 벡터값을 입력받은 후 기설정된 분류 항목에 따라 분류하여 상기 텍스트의 분류 결과를 출력하는 텍스트 분류 모델부; 및
    텍스트에 상응하여 워드 기반 임베딩된 벡터값과 문자 기반 임베딩된 벡터값을 상기 텍스트 분류 모델부에 입력값으로 입력한 후 분류 결과를 설정하여 상기 텍스트 분류 모델부의 내부 가중치를 조정하도록 하여 상기 텍스트 분류 모델부를 트레이닝하는 학습부를 포함하는 텍스트 분류 장치.
  9. 제8 항에 있어서,
    상기 텍스트 분류 모델부는,
    복수의 채널을 통해, 워드 기반 임베딩된 실수 벡터값과 상기 문자 기반 임베딩된 벡터값을 각각 입력받고, 각 필터 사이즈에 대해 합성곱을 수행하여 출력값을 출력하며, 맥스풀링을 통해 상기 각 필터 사이즈에서 출력된 출력값들 중 최대값을 추출한 후 각 채널의 최대값을 연결하여 상기 텍스트의 분류 결과를 출력하되,
    상기 각 채널의 최대값을 연결하기 위한 연결층(concatenate layer)이 맥스풀링층과 완전 연결층 사이에 구비되는 것을 특징으로 하는 텍스트 분류 장치.
  10. 삭제
KR1020180044121A 2018-04-16 2018-04-16 기계 학습을 이용한 텍스트 분류 방법 및 장치 KR102015218B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180044121A KR102015218B1 (ko) 2018-04-16 2018-04-16 기계 학습을 이용한 텍스트 분류 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180044121A KR102015218B1 (ko) 2018-04-16 2018-04-16 기계 학습을 이용한 텍스트 분류 방법 및 장치

Publications (1)

Publication Number Publication Date
KR102015218B1 true KR102015218B1 (ko) 2019-10-21

Family

ID=68460042

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180044121A KR102015218B1 (ko) 2018-04-16 2018-04-16 기계 학습을 이용한 텍스트 분류 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102015218B1 (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112287672A (zh) * 2019-11-28 2021-01-29 北京京东尚科信息技术有限公司 文本意图识别方法及装置、电子设备、存储介质
KR102265947B1 (ko) * 2020-11-23 2021-06-17 주식회사 엠로 기계 학습 기반 정보 제공 방법 및 장치
KR20210089962A (ko) 2020-01-09 2021-07-19 (주)미소정보기술 컨셉 사전을 기반으로 생성된 규칙을 이용한 텍스트 분석 장치 및 방법
WO2021172700A1 (ko) * 2020-02-27 2021-09-02 주식회사 와들 이미지로부터 추출한 텍스트의 블록화 시스템 및 그 방법
US11328125B2 (en) 2019-05-14 2022-05-10 Korea University Research And Business Foundation Method and server for text classification using multi-task learning
KR102674452B1 (ko) * 2023-06-05 2024-06-17 한화오션 주식회사 인공지능 기반 대화형 사이버보안 가이드 서비스 제공 시스템 및 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010024184A1 (ja) * 2008-08-26 2010-03-04 日本電気株式会社 風評情報検出システム、風評情報検出方法及びプログラム
JP2017059205A (ja) * 2015-09-17 2017-03-23 パナソニックIpマネジメント株式会社 主題推定システム、主題推定方法およびプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010024184A1 (ja) * 2008-08-26 2010-03-04 日本電気株式会社 風評情報検出システム、風評情報検出方法及びプログラム
JP2017059205A (ja) * 2015-09-17 2017-03-23 パナソニックIpマネジメント株式会社 主題推定システム、主題推定方法およびプログラム

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11328125B2 (en) 2019-05-14 2022-05-10 Korea University Research And Business Foundation Method and server for text classification using multi-task learning
CN112287672A (zh) * 2019-11-28 2021-01-29 北京京东尚科信息技术有限公司 文本意图识别方法及装置、电子设备、存储介质
KR20210089962A (ko) 2020-01-09 2021-07-19 (주)미소정보기술 컨셉 사전을 기반으로 생성된 규칙을 이용한 텍스트 분석 장치 및 방법
WO2021172700A1 (ko) * 2020-02-27 2021-09-02 주식회사 와들 이미지로부터 추출한 텍스트의 블록화 시스템 및 그 방법
KR102265947B1 (ko) * 2020-11-23 2021-06-17 주식회사 엠로 기계 학습 기반 정보 제공 방법 및 장치
KR102674452B1 (ko) * 2023-06-05 2024-06-17 한화오션 주식회사 인공지능 기반 대화형 사이버보안 가이드 서비스 제공 시스템 및 방법

Similar Documents

Publication Publication Date Title
KR102015218B1 (ko) 기계 학습을 이용한 텍스트 분류 방법 및 장치
CN110298037B (zh) 基于增强注意力机制的卷积神经网络匹配的文本识别方法
Zhang et al. Neural coreference resolution with deep biaffine attention by joint mention detection and mention clustering
CN109190117B (zh) 一种基于词向量的短文本语义相似度计算方法
CN108304468B (zh) 一种文本分类方法以及文本分类装置
CN113407660B (zh) 非结构化文本事件抽取方法
CN112732916A (zh) 一种基于bert的多特征融合模糊文本分类模型
CN112434164B (zh) 一种兼顾话题发现和情感分析的网络舆情分析方法及系统
Al Wazrah et al. Sentiment analysis using stacked gated recurrent unit for arabic tweets
CN110969023B (zh) 文本相似度的确定方法及装置
El Mekki et al. Weighted combination of BERT and n-GRAM features for nuanced Arabic dialect identification
Lee et al. Off-Topic Spoken Response Detection Using Siamese Convolutional Neural Networks.
Helmy et al. Applying deep learning for Arabic keyphrase extraction
CN113268974A (zh) 多音字发音标注方法、装置、设备及存储介质
Touati-Hamad et al. Arabic quran verses authentication using deep learning and word embeddings
CN114186059A (zh) 一种文章的分类方法和装置
CN110825852B (zh) 面向长文本的语义匹配方法及系统
Nogueira dos Santos et al. Portuguese part-of-speech tagging using entropy guided transformation learning
Ajees et al. A named entity recognition system for Malayalam using neural networks
CN113435192A (zh) 一种基于改变神经网络通道基数的中文文本情感分析方法
Ahmed et al. Question analysis for Arabic question answering systems
CN112579794A (zh) 一种为中英文单词对预测义原树的方法及系统
Chunamari et al. Quora question pairs using XG boost
CN116702753A (zh) 基于图注意力网络的文本情感分析方法
Abdelfattah et al. ArSentBERT: fine-tuned bidirectional encoder representations from transformers model for Arabic sentiment classification