KR102215259B1 - 주제별 단어 또는 문서의 관계성 분석 방법 및 이를 구현하는 장치 - Google Patents

주제별 단어 또는 문서의 관계성 분석 방법 및 이를 구현하는 장치 Download PDF

Info

Publication number
KR102215259B1
KR102215259B1 KR1020190032680A KR20190032680A KR102215259B1 KR 102215259 B1 KR102215259 B1 KR 102215259B1 KR 1020190032680 A KR1020190032680 A KR 1020190032680A KR 20190032680 A KR20190032680 A KR 20190032680A KR 102215259 B1 KR102215259 B1 KR 102215259B1
Authority
KR
South Korea
Prior art keywords
subject
word
words
document
training
Prior art date
Application number
KR1020190032680A
Other languages
English (en)
Other versions
KR20200112353A (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 KR1020190032680A priority Critical patent/KR102215259B1/ko
Publication of KR20200112353A publication Critical patent/KR20200112353A/ko
Application granted granted Critical
Publication of KR102215259B1 publication Critical patent/KR102215259B1/ko

Links

Images

Classifications

    • 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
    • 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/35Clustering; Classification
    • 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 Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

주제별 단어 또는 문서의 관계성 분석 방법 및 이를 구현하는 장치가 제공된다.
상기 주제별 단어 또는 문서의 관계성 분석 방법은 주제에 따라 선택된 사전 및 문서를 컴퓨팅 디바이스로 판독가능한 형태로 수집 가공된 언어 자료를 제공하는 단계와, 상기 주제에 따른 벡터 차원을 갖도록, 뉴스 데이터, 소셜 미디어 데이터, 객관화 데이터 중에 주제에 따라 선정된 훈련 문서에 대하여 상기 주제, 상기 언어 자료 및 상기 사전 중 적어도 어느 하나를 참조하여 단어 별로 벡터화하는 단계와, 단어 별 벡터값 및 상기 훈련 문서에 기초하여 상기 주제와 관련된 예측을 수행하는 기계 학습을 적용함으로써 선행 훈련된 모델링을 수립하는 단계, 및 신규 문서를 상기 선행 훈련된 모델링이 수립된 기계 학습에 로딩하여 임베딩하거나 상기 모델링을 응용 프로그램에 제공하는 단계를 포함한다.

Description

주제별 단어 또는 문서의 관계성 분석 방법 및 이를 구현하는 장치{Method of analyzing relationships of words or documents by subject and device implementing the same}
본 발명은 주제별 단어 또는 문서의 관계성 분석 방법 및 이를 구현하는 장치에 관한 것으로, 보다 상세하게는 기계 학습에 적용하기 위한 단어 또는 문서의 벡터화를 선행적으로 훈련한 모델링을 구축함으로써, 신규 문서의 벡터화를 수행하는데 있어서처리 시간 단축 및 프로세서 부담 경감을 실현시키는 주제별 단어 또는 문서의 관계성 분석 방법 등에 관한 것이다.
최근에 빅데이터 급의 웹 문서 등에 대해 기계 학습을 적용하여 사용자가 희망하는 예측 데이터를 추출하는 기술이 급증하고 있다. 예를 들면, 희망하는 예측 주제가 특정 지역의 부동산 추이, 금융 상하승 추이 등의 다소 객관적 주제 뿐만 아니라, SNS 등의 소셜 미디어의 텍스트 등을 통한 성격 분류 등일 수 있다.
여기서 웹 문서는 수치화된 데이터 보다는 특정 주제에 대한 견해, 특정 주제와 관련된 정성적인 객관 정보 등으로 이루어진다.
이러한 웹 문서에 대한 기계 학습을 적용하기 위해서는 웹 문서의 텍스트와 단어를 컴퓨팅 디바이스에 적합하도록 디지털화된 수치로 변환하여야 한다.
수치 변환은 예를 들어, 원핫(onehot) 인코딩 방식을 사용한다. 이 방식은 주제와 관련성을 갖는 단어마다 이진화된 값을 부여하나, 주제에 대해 서로 관계성 내지 밀접도가 높은 단어들 사이의 이진화 값의 차이가 불가피하게 이격되도록, 관계성 높은 단어들의 이진화 값이 부여될 수 있다.
이에 의하면, 관계성/밀접성이 높은 단어들이 문서에 다수 포함되어 있더라도, 기계 학습을 통한 문서 분석 결과가 실제 결과 데이터와 상반되는 주제에 대한 예측 데이터로 산출되어 예측 정확성이 저하된다.
이에 더하여, 기계 학습 전에 수행되는 문서 내의 단어 별 수치 변환이 기계 학습 과정마다 진행되면, 처리 시간 및 프로세서 부담 측면에서 매우 열악함을 보여왔다.
높은 관계성을 갖는 단어들 간의 변환 수치가 인접하게 위치되어 문서 분석의 정확도를 향상시킴과 동시에, 처리 시간 단축과 프로세서 부담 경감을 실현하는 주제별 문서 등의 관계성 분석 방안이 지속적으로 연구되고 있는 실정이다.
본 발명이 이루고자 하는 기술적 과제는 기계 학습에 적용하기 위한 단어 또는 문서의 벡터화를 선행적으로 훈련한 모델링을 구축함으로써, 신규 문서의 벡터화를 수행하는데 있어서 처리 시간 단축 및 프로세서 부담 경감을 실현시키는 주제별 단어 또는 문서의 관계성 분석 방법 및 이를 구현하는 장치를 제공하는데 있다.
본 발명의 목적은 이상에서 언급된 목적으로 제한되지 않으며, 언급되지 않은 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상기 기술적 과제를 이루기 위한 본 발명의 일 양태에 따르면, 주제별 단어 또는 문서의 관계성 분석 방법은 주제에 따라 선택된 사전 및 문서를 컴퓨팅 디바이스로 판독가능한 형태로 수집 가공된 언어 자료를 제공하는 단계와, 상기 주제에 따른 벡터 차원을 갖도록, 뉴스 데이터, 소셜 미디어 데이터, 객관화 데이터 중에 주제에 따라 선정된 훈련 문서에 대하여 상기 주제, 상기 언어 자료 및 상기 사전 중 적어도 어느 하나를 참조하여 단어 별로 벡터화하는 단계와, 단어 별 벡터값 및 상기 훈련 문서에 기초하여 상기 주제와 관련된 예측을 수행하는 기계 학습을 적용함으로써 선행 훈련된 모델링을 수립하는 단계, 및 신규 문서를 상기 선행 훈련된 모델링이 수립된 기계 학습에 로딩하여 임베딩하거나 상기 모델링을 응용 프로그램에 제공하는 단계를 포함한다.
다른 실시예에서, 상기 언어 자료 및 상기 사전은 상기 주제에 따라 기 설정된 단어 타입 및 단어 개수를 참조하여 선정될 수 있다.
또 다른 실시예에서, 상기 단어 별로 벡터화하는 단계에서 설정되는 상기 벡터 차원은 상기 주제와 아울러서 상기 훈련 문서의 개수 및 상기 컴퓨팅 디바이스의 성능에 따라 결정될 수 있다.
또 다른 실시예에서, 상기 단어 별로 벡터화하는 단계는, 문서 내에서 스캔하는 단어 수를 설정하는 윈도우 사이즈, 문서 내에서 무시하는 특정 단어의 개수를 설정하는 최소 단어수, 문서 내에서 다운샘플하는 특정 단어의 빈도를 규정하는 샘플링 임계값, 노이즈 단어의 개수를 설정하는 제외 사이즈를 규정하는 훈련 파라미터를 설정하는 단계. 및 상기 주제에 따른 벡터 차원을 갖도록, 상기 선정된 훈련 문서에 대하여 상기 주제 및 상기 훈련 파라미터를 참조하여 단어 별로 벡터화하는 단계를 포함할 수 있다.
여기서, 상기 주제 및 상기 훈련 파라미터를 참조하여 단어 별로 벡터화하는 단계 전에, 복수의 벡터화 알고리즘 중 적어도 하나를 지정하는 단계를 더 포함하고, 상기 단어 별로 벡터화하는 단계는 지정된 벡터화 알고리즘을 적용하여 실행할 수 있다.
또 다른 실시예에서, 상기 단어 별로 벡터화하는 단계는 사용자의 선택에 따라, 상기 훈련 문서의 단어를 벡터화 변환하거나, 단어 별 벡터값에 기반하여 상기 훈련 문서 별로 벡터화 변환할 수 있다.
또 다른 실시예에서, 상기 선행 훈련된 모델링을 수립하는 단계는, 복수의 벡터 차원 별로 각각 실행된 상기 훈련 문서의 단어들의 벡터값들에 기초한 기계 학습을 각각 적용하여 산출된 벡터 차원 별 예측 데이터와 관련된 예측 클래스를 산출하는 단계와, 상기 훈련 문서에 기초하여 실제 평가된 실 데이터와 관련된 실제 클래스와 상기 벡터 차원 별 예측 데이터와 관련된 예측 클래스를 비교하여 상기 예측 클래스의 정확도를 판정하는 단계, 및 최고의 정확도 또는 임계치 이상의 정확도를 갖는 상기 벡터 차원의 벡터값과 상기 훈련 문서에 기초하여 상기 주제와 관련된 예측을 수행하는 기계 학습을 적용함으로써 선행 훈련된 모델링을 수립하는 단계를 포함할 수 있다.
또 다른 실시예에서, 상기 단어 별로 벡터화하는 단계 전에, 상기 훈련 문서 내의 단어를 지정된 방식에 규정하는 단어 단위로 분리하는 단계와, 상기 단어 별로 문법 형태를 분석하는 단계, 및 상기 훈련 문서의 각 문장을 구성하는 단어의 문장 성분을 분석하는 단계를 더 포함하고, 상기 단어 별로 벡터화하는 단계는 상기 주제, 상기 사전, 상기 언어 자료, 단어 분리 정보, 상기 문법 형태 및 상기 문장 성분 중 적어도 어느 하나를 참조할 수 있다.
또 다른 실시예에서, 상기 신규 문서를 상기 선행 훈련된 모델링이 수집된 기계 학습에 로딩하여 임베딩하는 단계는, 상기 사전 및 상기 언어 자료를 제공하는 단계와, 상기 신규 문서 내의 단어를 지정된 방식에 규정하는 단어 단위로 분리하는 단계와, 상기 단어 별로 문법 형태를 분석하는 단계, 상기 신규 문서의 각 문장을 구성하는 단어의 문장 성분을 분석하는 단계, 상기 모델링에 따른 벡터 차원을 갖도록, 상기 신규 문서에 대하여 상기 주제, 상기 사전, 상기 언어 자료, 단어 분리 정보, 상기 문법 형태 및 상기 문장 성분 중 적어도 어느 하나를 참조하여 단어 별로 벡터화하는 단계, 및 단어 별 벡터값 및 상기 신규 문서에 기초하여 상기 주제와 관련된 예측을 수행하는 기계 학습을 적용하는 단계를 포함할 수 있다.
상기 기술적 과제를 이루기 위한 본 발명의 다른 양태에 따르면, 주제별 단어 또는 문서의 관계성 분석 장치는 주제에 따라 선택된 사전 및 문서를 컴퓨팅 디바이스로 판독가능한 형태로 수집 가공된 언어 자료를 제공하는 언어 자료 및 사전 데이터베이스부와, 상기 주제에 따른 벡터 차원을 갖도록, 뉴스 데이터, 소셜 미디어 데이터, 객관화 데이터 중에 주제에 따라 선정된 훈련 문서에 대하여 상기 주제, 상기 언어 자료 및 상기 사전 중 적어도 어느 하나를 참조하여 단어 별로 벡터화하는 벡터화부와, 단어 별 벡터값 및 상기 훈련 문서에 기초하여 상기 주제와 관련된 예측을 수행하는 기계 학습을 적용함으로써 선행 훈련된 모델링을 수립하는 모델 수립부, 및 신규 문서를 상기 선행 훈련된 모델링이 수집된 기계 학습에 로딩하여 임베딩하거나 상기 모델링을 응용 프로그램에 제공하는 응용 처리부를 포함한다.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명에 따르면, 기계 학습에 적용하기 위한 단어 또는 문서의 벡터화를 선행적으로 훈련한 모델링을 구축함으로써, 신규 문서의 벡터화를 수행하는데 있어서 처리 시간 단축 및 프로세서 부담 경감을 실현시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 주제별 단어 또는 문서의 관계성 분석 장치에 관한 구성도이다.
도 2는 형태소 분석부의 구성도이다.
도 3은 벡터화부의 구성도이다.
도 4는 본 발명의 다른 실시예에 따른 주제별 단어 또는 문서의 관계성 분석 방법에 관한 순서도이다.
도 5는 벡터화부에서 수행되는 과정에 관한 순서도이다.
도 6은 본 발명의 또 다른 실시예에 따른 주제별 단어 또는 문서의 관계성 분석 방법에 있어서, 모델 수립부에서 수행되는 최적의 벡터 차원에 따른 모델링을 선정하는 과정에 관한 순서도이다.
이하, 첨부한 도면들 및 후술되어 있는 내용을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 그러나, 본 발명은 여기서 설명되어지는 실시예들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 오히려, 여기서 소개되는 실시예들은 개시된 내용이 철저하고 완전해질 수 있도록 그리고 당업자에게 본 발명의 사상이 충분히 전달될 수 있도록 하기 위해 제공되어지는 것이다. 명세서 전체에 걸쳐서 동일한 참조번호들은 동일한 구성요소들을 나타낸다. 한편, 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급되지 않는 한 복수형도 포함된다. 명세서에서 사용되는 "포함한다(comprises)"및/또는 "포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자가 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
또한, "부" 내지 모듈 이란, 일반적으로 논리적으로 분리 가능한 소프트웨어(컴퓨터 프로그램), 하드웨어 등의 부품을 가리킨다. 따라서, 본 실시형태에 있어서의 모듈은 컴퓨터 프로그램에 있어서의 모듈뿐만 아니라, 하드웨어 구성에 있어서의 모듈도 가리킨다. 그 때문에, 본 실시형태는, 그것들을 모듈로서 기능시키기 위한 컴퓨터 프로그램(컴퓨터에 각각의 단계를 실행시키기 위한 프로그램, 컴퓨터를 각각의 수단으로서 기능시키기 위한 프로그램, 컴퓨터에 각각의 기능을 실현시키기 위한 프로그램), 시스템 및 방법의 설명도 겸하고 있다. 다만, 설명의 형편상, 「저장한다」, 「저장시킨다」, 이것들과 동등한 문언을 이용하지만, 이들 문언은, 실시형태가 컴퓨터 프로그램일 경우에는, 기억 장치에 기억시키는, 또는 기억 장치에 기억시키는 것과 같이 제어하는 것을 의미한다. 또한, "부" 내지 모듈은 기능에 일대일로 대응하고 있어도 되지만, 실장에 있어서는, 1 모듈을 1 프로그램으로 구성해도 되고, 복수 모듈을 1프로그램으로 구성해도 되고, 반대로 1 모듈을 복수 프로그램으로 구성해도 된다. 또한, 복수 모듈은 1컴퓨터에 의해 실행되어도 되고, 분산 또는 병렬 환경에 있어서의 컴퓨터에 의해 1모듈이 복수 컴퓨터로 실행되어도 된다. 또한, 1개의 모듈에 다른 모듈이 포함되어 있어도 된다. 또한, 이하, 「접속」이란 물리적인 접속 외에, 논리적인 접속(데이터의 주고받기, 지시, 데이터간의 참조 관계 등)일 경우에도 채용한다. 「미리 정해진」이란, 대상으로 하고 있는 처리 전에 정해져 있음을 말하고, 본 실시형태에 의한 처리가 개시되기 전은 물론이고, 본 실시형태에 의한 처리가 개시된 후에도, 대상으로 하고 있는 처리 전이면, 그 때의 상황, 상태에 따라, 또는 그때까지의 상황, 상태에 따라 정해지는 것의 의미를 포함해서 이용한다.
또한, 시스템 또는 장치란, 복수의 컴퓨터, 하드웨어, 장치 등이 네트워크(일대 일 대응의 통신 접속을 포함함) 등의 통신 수단에 의해 접속되어 구성되는 것 외에, 1 개의 컴퓨터, 하드웨어, 장치 등에 의해 실현될 경우도 포함된다. 「장치」와 「시스템」이란, 서로 동의(同意)의 용어로서 이용한다. 물론이지만, 「시스템」에는, 인위적인 결정인 사회적인 「기구」(사회 시스템)에 지나지 않는 것은 포함하지 않는다.
또한, 각 부 내지 각 모듈에 의한 처리마다 또는 각 부 내지 모듈 내에서 복수의 처리를 행할 경우는 그 처리마다, 대상이 되는 정보를 기억 장치로부터 판독 입력하고, 그 처리를 행한 후에, 처리 결과를 기억 장치에 기입하는 것이다. 따라서, 처리 전의 기억 장치로부터의 판독 입력, 처리 후의 기억 장치에의 기입에 관해서는, 설명을 생략할 경우가 있다. 또한, 여기에서의 기억 장치로서는, 하드디스크, RAM(Random Access Memory), 외부 기억 매체, 통신 회선을 통한 기억 장치, CPU(Central Processing Unit) 내의 레지스터 등을 포함하고 있어도 된다.
이하, 도 1 내지 도 3을 참조하여, 본 발명의 일 실시예에 따른 주제별 단어 또는 문서의 관계성 분석 장치에 대하여 상세히 설명하기로 한다.
본 발명의 일 실시예에 따른 주제별 단어 또는 문서의 관계성 분석에 관한 구성도이며, 도 2는 형태소 분석부의 구성도이고, 도 3은 벡터화부의 구성도이다.
주제별 단어 또는 문서의 관계성 분석 장치(100)는 사용자가 선택한 주제에 따라 사전, 언어 자료 등을 참조하여 훈련 문서들에 대해 적합한 벡터 차원을 갖도록 벡터화를 수행하며, 벡터화된 훈련 문서들을 통해 기계 학습을 적용하여 선행 훈련된 모델링을 수립하고, 선행 훈련된 모델링을 신규 문서의 기계 학습에 적용하거나 다른 응용 프로그램에 제공하는 장치이다.
관계성 분석은 훈련 문서 내에서 사전적으로 유사한 의미를 단어를 탐색하는 것이 아니라, 신규 문서가 입력되어 주제와 관련된 예측을 수행하는 경우에, 문서 내의 단어들 중 특정 예측 결과를 도출할 것으로 추정되는 단어들에 대해 밀접한 관련성을 갖는 것으로 판정할 수 있도록, 밀접한 관련성을 갖는 단어들에 대해 근거리에 위치하는 벡터값으로 벡터화하고, 벡터화된 데이터로 단어 또는 문서의 관계성에 기반하여 기계 학습을 수행하는 분석이다.
관계성 분석 장치(100)은 도 1에서와 같이, 훈련 문서 입력부(110), 언어 자료 및 사전 데이터베이스부(120), 형태소 분석부(130), 문장 형태 분석부(140), 벡터화부(150), 기계 학습부(160), 모델 수립부(170), 신규 문서가 입력되는 문서 입력부(180) 및 응용 처리부(190)를 포함할 수 있다.
여기서 각 부는 하나의 컴퓨팅 디바이스에서 구성될 수 있거나, 분산 처리로서 서버/클라이언트 형태로 구성될 수 있다. 분산 처리의 경우에, 서버에는 데이터베이스부(120), 형태소 분석부(130), 문장 형태 분석부(140), 기계 학습부(160), 모델 수립부(170) 및 응용 처리부(190)가 제공될 수 있으며, 클라이언트에는 훈련 문서 입력부(110) 및 문서 입력부(180) 가 제공될 수 있으나, 이러한 분산 형태로 제한되지 아니하고, 다양한 분산 형태로 설정될 수 있다.
훈련 문서 입력부(110)는 벡터화가 선행 훈련된 모델링을 수립하기 위해 원시 자료로서 웹 상에서 수집되는 뉴스 데이터, 소셜 미디어 데이터 및 객관화 데이터 등의 문서들 중에 사용자가 선택한 주제에 따라 데이터들을 선택한다.
수집되는 문서는 html, PDF(Portable Document Format), 이미지 중 적어도 하나의 형태로 구현될 수 있다.
뉴스 데이터는 언론사, 공중파 방송사, 케이블 방송사, 포털 사이트 뉴스, 사용자가 선택한 주제와 관련된 뉴스 사이트로부터 제공되는 웹데이터로서, 소셜 미디어 데이터에 비해 전문적이거나 공신력있는 데이터이다.
객관화 데이터는 공식적인 뉴스 데이터 외에, 주제와 관련된 사이트로서 객관적 정보를 포함하는 것으로 평가된 사이트로부터 추출되는 텍스트 데이터이다. 주제가 특정 지역의 부동산 고평가 여부, 부동산 예측 등일 경우에, 객관화 데이터는 부동산 관련 기관, 업체 등으로부터 제공되는 부동산 시세, 지표 등을 포함하는 텍스트 데이터, 부동산 평가, 예측 등과 관련한 정성적인 분석, 컬럼, 해당 지역과 관련된 다양한 의견 등을 포함하는 텍스트 데이터 및 위키피디아와 같은 백과 사전 형태의 텍스트 데이터 등일 수 있다.
소셜 미디어 데이터는 인터넷 등의 네트워크와 접속되는 고정형 컴퓨터 또는 모바일 기기를 통해 입력되는 미디어 데이터로서, 네트워크와 접속된 다른 사용자와 상호 공유될 수 있는 데이터이다. 예컨대, 소셜 미디어 데이터는 소셜 미디어 서버에서 운영하는 소셜 미디어 사이트들 및 다양한 포털 사이트 등에서 운영하며 개인화된 컨텐츠가 포함된 블로그 사이트들일 수 있다. 소셜 미디어 사이트들은 소위 SNS로서, 트위터(twitter), 페이스북(facebook), 다양한 포털 사이트에서 서비스하는 소셜 미디어일 수 있다.
훈련 문서 입력부(110)는 대량으로 수집된 뉴스 데이터, 소셜 미디어 데이터, 객관화 데이터 중에, 사용자의 선택에 따라 주제에 부합하는 문서를 훈련 문서로 선별하여 입력한다.
사용자의 선택은 사용자의 직접 선별과 장치(100)의 기 지정된 방식의 선별 등일 수 있으며, 직접 선별은 다량의 데이터 중에 주제와 관련된 데이터를 담는 사이트를 직접 선정하여 훈련 문서 입력부(110)에 입력하는 것이며, 기 지정된 방식은 다량의 데이터 중에 사용자가 지정한 주제 관련 키워드 등을 포함하는 텍스트 데이터를 장치(100)가 자동으로 선별하여 입력하는 것이다.
예를 들어, 주제가 특정 지역의 부동산 평가, 가격 추이 등과 같은 객관적이거나 다량의 데이터를 포함하는 테마일 경우, 훈련 문서 입력부(110)는 뉴스 데이터, 객관화 데이터 및 해당 주제와 관련된 소셜 미디어 데이터가 전반적으로 훈련 문서의 대상으로 채용할 수 있다. 그러나 주제가 글 또는 얼굴 등으로 개인 성격을 판별하는 등과 같은 주관적인 테마일 경우, 훈련 문서 입력부(110)는 뉴스 데이터, 객관화 데이터 보다는 해당 주제가 다수 있다고 추정되는 소셜 미디어 데이터를 더 집중 수집하여 훈련 문서의 대상으로 채택할 수도 있다.
언어 자료 및 사전 데이터베이스부(120)는 주제 별로 다양한 언어 자료 및 다량의 용어를 데이터베이스화한 사전을 저장하고 있으며, 주제에 따라 다양한 언어 자료들 및 사전들 중 주제에 부합하는 하나 이상의 언어 자료 등을 형태소 분석부(130)를 통해 벡터화부(150)로 전달할 수 있다.
언어 자료는 문서를 컴퓨팅 디바이스로 판독가능한 형태로 수집 가공된 정보로서, 뉴스 데이터, 소셜 미디어 데이터, 객관화 데이터에서 판독가능한 형태로 분석된 코퍼스(corpus)이거나 사용자가 직접 생성한 언어 자료 데이터일 수 있다.
데이터베이스부(120)에서 선택되는 언어 자료 등은 사용자의 직접 선별 혹은 장치(100)의 기 지정된 방식으로 선정될 수 있다. 기 지정된 방식에 의하면, 주제와 관련된 이미 설정된 단어 타입 및 단어 개수를 참조하여 하나 이상의 언어 자료 등을 선택할 수 있다.
형태소 분석부(130)는 벡터화부(150)에서 수행되는 훈련 문서 내의 단어 평가 처리의 효율을 향상시키기 위해, 훈련 문서 내의 단어를 분리하고, 단어 별로문법 형태를 분석할 수 있다.
구체적으로 도 2를 참조하면, 형태소 분석부(130)는 분리부(132)와 문법 형태 분석부(134) 를 포함할 수 있다.
분리부(132)는 훈련 문서 내의 단어를 지정된 방식에 규정하는 단어 단위로 분리하는 토큰나이징(tokenizing) 기능을 수행한다. 지정된 방식은 복합어에 대한 분리 또는 유지 처리 여부, 불용어(stop word)의 유지 또는 제거 처리 여부, 띄어쓰기 그대로 유지 여부 등에 관한 단어 분리의 규칙일 수 있다. 지정된 방식 역시 주제 및 훈련 문서의 종류 등에 따라 사용자의 직접 선택 또는 장치(100)의 기 설정된 옵션일 수 있다.
문법 형태 분석부(134)는 단어 별로 문법 형태를 분석하는 포스 태깅(pos tagging)으로 기능한다. 문법 형태 분석부(134)는 분리된 단어에 대해 품사 등의 문법적 역할을 분석할 수 있으며, 사용자의 선택에 따라, 분리된 단어의 품사 기본형으로 복원하거나 품사만을 라벨링하고(labelling) 훈련 문서 내의 단어 형태로 유지시킬 수 있다.
문장 형태 분석부(140)는 훈련 문서의 각 문장을 구성하는 단어의 문장 성분을 분석하는 파서(parser)로서의 기능을 담당한다. 문장 형태 분석부(140)는 각 문장의 단어 간의 의존성(dependency)을 분석함으로써, 각 단어 간의 수식 관계 등을 판정한다.
벡터화부(150)는 주제에 따른 벡터 차원을 갖도록, 훈련 문서에 대하여 주제, 언어 자료 및 사전 등으로부터 적어도 어느 하나를 참조하여 단어 별로 벡터화한다.
구체적으로 도 3을 참조하여 설명하면, 벡터화부(150)는 파라미터 설정부(152), 벡터 알고리즘 설정부(154) 및 벡터 요소 산출부(156)를 포함할 수 있다.
파라미터 설정부(152)는 훈련 문서를 벡터화하는데 규정되는 훈련 파라미터를 사용자의 지정 혹은 장치(100)의 기 지정된 방식으로 설정할 수 있으며, 훈련 파라미터는 훈련 문서 내에서 스캔하는 단어 수를 설정하는 윈도우 사이즈, 훈련 문서 내에서 무시하는 특정 단어의 개수를 설정하는 최소 단어수, 훈련 문서 내에서 다운샘플하는 특정 단어의 빈도를 규정하는 샘플링 임계값, 노이즈 단어의 개수를 설정하는 제외 사이즈를 포함할 수 있다.
벡터 알고리즘 설정부(154)는 훈편 파라미터에 기반한 복수의 벡터화 알고리즘 중 적어도 하나를 사용자의 직접 선택 혹은 장치(100)의 정해진 방식으로 지정할 수 있다. 훈련 문서 별로 벡터화 변환하는 경우에, 벡터화 알고리즘은 예컨대 DM(Distributed Memory), DBOW(Distributed Bag Of Words)일 수 있으며, 벡터 알고리즘 설정부(154)는 주제, 훈련 문서의 종류, 개수 등에 적합하도록 상술한 알고리즘 중 적어도 하나를 채용할 수 있다.
벡터 요소 산출부(156)는 주제, 언어 자료, 사전, 분리부(132)에 의한 단어 분리 정보, 문법 형태 분석부(134)에 의한 문법 형태 및 문장 형태 분석부(140)에 의한 문장 성분, 훈련 파라미터들 중 적어도 어느 하나를 참조하여, 지정 벡터화 알고리즘에 따라 훈련 문서들의 단어 별로 주제에 부합되는 벡터 차원의 벡터 요소(벡터값)를 산출할 수 있다.
이 경우에, 벡터화는 훈련 문서 내의 단어 별로 벡터값을 산출하는 것이다. 상세하게는 벡터화는 단어 별로 m 차원의 (N1, N2...Nm)의 벡터값을 산출하는 것을 의미하고, m 차원은 벡터 차원이다.
벡터 차원은 주제와 아울러서 훈련 문서의 개수 및 컴퓨팅 디바이스의 성능에 따라 적어도 하나 이상 결정될 수 있다. 이 경우에, 모델 수립부(170)에서 구현되는 후술할 사항인 최적의 벡터 차원을 선정하기 위해, 복수의 백터 차수 별로 산출된 단어의 벡터값을 획득할 수도 있다.
벡터 요소 산출부(156)는 사용자의 선택에 따라, 훈련 문서의 단어를 벡터화 변환하는 과정으로만 진행될 수도 있고, 더 나아가 단어 별 벡터값에 기반하여 훈련 문서 별로 벡터화 변환할 수도 있다. 훈련 문서의 벡터화 변환은 예컨대 각 훈련 문서의 단어 별 벡터값의 평균에 기반하여 훈련 문서의 벡터값을 산출할 수 있다.
기계 학습부(160)는 단어 별 벡터값 및 훈련 문서에 기초하여 주제와 관련된 예측을 수행하여 선행 훈련된 모델링을 생성하여 모델 수립부(170)로 전달한다. 복수 개의 벡터 차원에 의한 경우에, 선행 훈련된 모델링은 벡터 차원의 개수만큼 생성될 수 있다.
모델 수립부(170)는 한 종류의 벡터 차원에 따른 모델링인 경우에, 이 모델링을 선행 훈련된 모델링으로 최종 채택하고, 복수 종류의 벡터 차원에 따른 모델링인 경우에, 복수의 모델링 중 최적의 모델링 하나를 최종적으로 채택한다.
복수의 모델링인 경우에, 모델 수립부(170)는 복수의 벡터 차원 별로 각각 실행된 훈련 문서의 단어들의 벡터값들에 기초한 기계 학습을 각각 적용하여 산출된 벡터 차원 별 예측 데이터와 관련된 예측 클래스를 산출한다. 또한, 모델 수립부(170)는 훈련 문서에 기초하여 실제 평가된 실 데이터와 관련된 실제 클래스와 벡터 차원 별 예측 데이터와 관련된 예측 클래스를 비교하여 상기 예측 클래스의 정확도를 판정한다. 이에 더하여, 모델 수립부(170)는 최고의 정확도 혹은 임계치 이상의 정확도를 갖는 벡터 차원의 벡터값과 훈련 문서에 기초하여 주제와 관련된 예측을 수행하는 기계 학습을 적용함으로써 선행 훈련된 모델링을 수립하고, 기계 학습부(160)에 제공된다.
응용 처리부(190)는 사용자가 문서 입력부(180) 를 통해 입력한 신규 문서를 선행 훈련된 모델링이 수립된 기계 학습부(160)에 로딩하여 임베딩(embedding)하거나 모델링을 응용 프로그램에 제공할 수 있다.
응용 프로그램은 문서 유사도 측정, 대표 단어 서치, 유사어 탐색 및 워드 클라우드(word cloud) 등일 수 있다.
기계 학습부(160)에 로딩하는 경우에, 응용 처리부(190)는 신규 문서가 전술한 각 부(120~160)를 거쳐 벡터화하고, 기계 학습에 의해 주제에 따른 예측 결과를 도출하도록 제어한다.
구체적으로, 데이터베이스부(120)는 선행 훈련된 모델링에 지정된 사전 및 언어 자료를 제공하고, 형태소 분석부(130)는 선행 훈련된 모델링에서 선택한 방식을 참조하여, 신규 문서 내의 단어를 지정된 방식에 규정하는 단어 단위로 분리하고, 단어 별로 문법 형태를 분석한다. 문장 형태 분석부(140)는 신규 문서의 각 문장을 구성하는 단어의 문장 성분을 분석한다.
벡터화부(150)는 모델링에 따른 벡터 차원을 갖도록, 신규 문서에 대하여 주제, 사전, 언어 자료, 단어 분리 정보, 문법 형태, 문장 성분 및 훈련 파라미터들 중 적어도 어느 하나를 참조하여, 지정된 벡터화 알고리즘에 따라 단어 별로 벡터화한다.
기계 학습부(160)는 단어 별 벡터값 및 신규 문서에 기초하여 주제와 관련된 예측을 수행하는 기계 학습을 적용한다.
이하, 도 1 내지 도 5를 참조하여, 본 발명의 다른 실시예에 따른 주제별 단어 또는 문서의 관계성 분석 방법이 도 1의 장치(100)에 구현되는 과정을 설명하기로 한다.
도 4는 본 발명의 다른 실시예에 따른 주제별 단어 또는 문서의 관계성 분석 방법에 관한 순서도이고, 도 5는 벡터화부에서 수행되는 과정에 관한 순서도이다.
먼저 도 4를 참조하면, 훈련 문서 입력부(110)는 웹 상에서 수집되는 뉴스 데이터, 소셜 미디어 데이터 및 객관화 데이터 등의 문서들 중에 사용자가 선택한 주제에 따라 데이터들을 훈련 문서로서 선택하여 입력한다(S405).
사용자의 선택은 사용자의 직접 선별과 장치(100)의 기 지정된 방식의 선별 등일 수 있으며, 직접 선별은 다량의 데이터 중에 주제와 관련된 데이터를 담는 사이트를 직접 선정하여 훈련 문서 입력부(110)에 입력하는 것이며, 기 지정된 방식은 다량의 데이터 중에 사용자가 지정한 주제 관련 키워드 등을 포함하는 텍스트 데이터를 장치(100)가 자동으로 선별하여 입력하는 것이다. 뉴스 데이터, 소셜 미디어 데이터 및 객관화 데이터, 주제 등에 관한 상세 설명은 도 1에서 행하였으므로 생략하기로 한다.
다음으로, 언어 자료 및 사전 데이터베이스부(120)는 주제에 따라 다양한 언어 자료들 및 사전들 중 주제에 부합하는 하나 이상의 언어 자료 등을 형태소 분석부(130)를 통해 벡터화부(150)로 제공한다(S410).
데이터베이스부(120)에서 선택되는 언어 자료 등은 사용자의 직접 선별 혹은 장치(100)의 기 지정된 방식으로 선정될 수 있다. 기 지정된 방식에 의하면, 주제와 관련된 이미 설정된 단어 타입 및 단어 개수를 참조하여 하나 이상의 언어 자료 등을 선택할 수 있다. 언어 자료 및 사전 등에 관한 상세 설명은 도 1에서 행하였으므로 생략하기로 한다.
이어서, 분리부(132)는 훈련 문서 내의 단어를 지정된 방식에 규정하는 단어 단위로 분리한다(S415).
지정된 된 방식은 복합어에 대한 분리 또는 유지 처리 여부, 불용어(stop word)의 유지 또는 제거 처리 여부, 띄어쓰기 그대로 유지 여부 등에 관한 단어 분리의 규칙일 수 있다. 지정된 방식 역시 주제 및 훈련 문서의 종류 등에 따라 사용자의 직접 선택 또는 장치(100)의 기 설정된 옵션일 수 있다.
다음으로, 문법 형태 분석부(134)는 단어 별로 문법 형태를 분석한다(S420).
문법 형태 분석부(134)는 분리된 단어에 대해 품사 등의 문법적 역할을 분석할 수 있으며, 사용자의 선택에 따라, 분리된 단어의 품사 기본형으로 복원하거나 품사만을 라벨링하고(labelling) 훈련 문서 내의 단어 형태로 유지시킬 수 있다.
계속해서, 문장 형태 분석부(140)는 훈련 문서의 각 문장을 구성하는 단어의 문장 성분을 분석한다(S425).
문장 형태 분석부(140)는 각 문장의 단어 간의 의존성(dependency)을 분석함으로써, 각 단어 간의 수식 관계 등을 판정한다.
이어서, 벡터화부(150)는 주제, 언어 자료, 사전, 단어 분리 정보, 문법 형태 및 문장 성분, 훈련 파라미터들 중 적어도 어느 하나를 참조하여, 지정 벡터화 알고리즘에 따라 훈련 문서들의 단어 별로 주제에 부합되는 벡터 차원의 벡터값을 산출하는 벡턱화를 수행한다(S430).
벡터화 과정과 관련하여 도 5를 참조하여 상세히 설명하면, 파라미터 설정부(152)는 훈련 문서를 벡터화하는데 규정되는 훈련 파라미터를 설정한다(S505).
먼저, 파라미터 설정부(152)는 사용자의 지정 혹은 장치(100)의 기 지정된 방식으로 설정할 수 있으며, 훈련 파라미터는 이하의 설정예와 같이, 훈련 문서 내에서 스캔하는 단어 수를 설정하는 윈도우 사이즈(window_size), 훈련 문서 내에서 무시하는 특정 단어의 개수를 설정하는 최소 단어수(word_min_count), 훈련 문서 내에서 다운샘플하는 특정 단어의 빈도를 규정하는 샘플링 임계값(sampling_threshold), 노이즈 단어의 개수를 설정하는 제외 사이즈(negative_size)를 포함할 수 있다. 참고로, train_epoch는 벡터화 알고리즘에 대한 훈련 횟수이다.
(설정예)
vector_size = 300
window_size = 15
word_min_count = 2
sampling_threshold = 1e-5
negative_size = 5
train_epoch = 100
dm = 1 #0 = dbow 1 = dmpv
다음으로, 벡터 알고리즘 설정부(154)는 설정예와 같이, 훈편 파라미터에 기반한 복수의 벡터화 알고리즘(dm, dbow, dmpv) 중 적어도 하나를 사용자의 직접 선택 혹은 장치(100)의 정해진 방식으로 지정할 수 있다(S510).
훈련 문서 별로 벡터화 변환하는 경우에, 벡터화 알고리즘은 예컨대 DM(Distributed Memory), DBOW(Distributed Bag Of Words)일 수 있으며, 벡터 알고리즘 설정부(154)는 주제, 훈련 문서의 종류, 개수 등에 적합하도록 상술한 알고리즘 중 적어도 하나를 채용할 수 있다.
이어서, 벡터 요소 산출부(156)는 전술한 참조 데이터들 중 적어도 어느 하나에 기반하여, 지정 벡터화 알고리즘에 따라 훈련 문서들의 단어 별로 주제에 부합되는 벡터 차원의 벡터값을 산출한다(S515).
벡터 차원은 주제와 아울러서 훈련 문서의 개수 및 컴퓨팅 디바이스의 성능에 따라 적어도 하나 이상 결정될 수 있다. 본 실시예에서는 1 개의 벡터 차원으로 벡터화하여 선행 훈련된 모델링을 수립하는 것을 위주로 설명하고 있으나, 도 6과 같은 다른 실시예에서는 모델 수립부(170)에서 최적의 벡터 차원을 선정하기 위해, 복수의 백터 차수 별로 산출된 단어의 벡터값을 획득할 수도 있다.
벡터 요소 산출부(156)는 사용자의 선택에 따라, 훈련 문서의 단어를 벡터화 변환하는 과정으로만 진행될 수도 있고, 더 나아가 단어 별 벡터값에 기반하여 훈련 문서 별로 벡터화 변환할 수도 있다. 훈련 문서의 벡터화 변환은 예컨대 각 훈련 문서의 단어 별 벡터값의 평균에 기반하여 훈련 문서의 벡터값을 산출할 수 있다.
다시 도 4를 참조하면, 기계 학습부(160)는 단어 별 벡터값 및 훈련 문서에 기초하여 주제와 관련된 예측을 수행하여 선행 훈련된 모델링을 생성하고, 모델 수립부(170)는 이 모델링을 선행 훈련된 모델링으로 채택한다(S435).
다음으로, 응용 처리부(190)는 사용자가 문서 입력부(180) 를 통해 입력한 신규 문서를 선행 훈련된 모델링이 수립된 기계 학습부(160)에 로딩하여 임베딩하거나 모델링을 응용 프로그램에 제공한다(S440).
기계 학습부(160)에 로딩하는 경우에, 응용 처리부(190)는 신규 문서가 전술한 각 부(120~160)를 거쳐 벡터화하고, 기계 학습에 의해 주제에 따른 예측 결과를 도출하도록 제어한다.
구체적으로, 데이터베이스부(120)는 선행 훈련된 모델링에 지정된 사전 및 언어 자료를 제공하고, 형태소 분석부(130)는 선행 훈련된 모델링에서 선택한 방식을 참조하여, 신규 문서 내의 단어를 지정된 방식에 규정하는 단어 단위로 분리하고, 단어 별로 문법 형태를 분석한다. 문장 형태 분석부(140)는 신규 문서의 각 문장을 구성하는 단어의 문장 성분을 분석한다.
벡터화부(150)는 모델링에 따른 벡터 차원을 갖도록, 신규 문서에 대하여 주제, 사전, 언어 자료, 단어 분리 정보, 문법 형태, 문장 성분 및 훈련 파라미터들 중 적어도 어느 하나를 참조하여, 지정된 벡터화 알고리즘에 따라 단어 별로 벡터화한다.
기계 학습부(160)는 단어 별 벡터값 및 신규 문서에 기초하여 주제와 관련된 예측을 수행하는 기계 학습을 적용한다.
본 실시예에 따르면, 기계 학습에 적용하기 위한 단어 또는 문서의 벡터화를 선행적으로 훈련한 모델링을 구축함으로써, 신규 문서의 벡터화를 수행하는데 있어서 처리 시간 단축 및 프로세서 부담 경감을 실현시킬 수 있다. 또한, 종래의 수치 변환 데이터에 비해 벡터화를 진행함으로써 단어들 또는 문서들 간의 관계성을 보다 정확하게 산출하며, 이에 따라 기계 학습의 예측 결과가 높은 신뢰도를 가질 수 있다.
이상에서 설명한 실시예에서는 형태소 분석부(130) 및 문장 형태 분석부(140)가 단어 분리 정보, 문법 형태, 문장 성분을 도출하는 것을 예롤 들고 있으나, 설계 사항에 따라, 형태소 분석부(130) 및 문장 형태 분석부(140) 중 적어도 하나가 생략될 수 있으며, 이 경우에 이로부터 도출되는 데이터가 벡터화의 참조 데이터에서 제외될 수도 있다.
이하, 도 1, 도 4, 도 6을 참조하여, 본 발명의 또 다른 실시예에 따른 주제별 단어 또는 문서의 관계성 분석 방법에 있어서, 모델 수립부가 최적의 벡터 차원에 따른 모델링을 선정하는 과정을 설명하기로 한다.
도 6은 본 발명의 또 다른 실시예에 따른 주제별 단어 또는 문서의 관계성 분석 방법에 있어서, 모델 수립부에서 수행되는 최적의 벡터 차원에 따른 모델링을 선정하는 과정에 관한 순서도이다.
본 실시예는 최적의 벡터 차원을 선정하기 위해 벡터화부(150)가 복수의 백터 차수 별로 산출된 단어의 벡터값을 획득하는 것이다. 따라서, 본 실시예는 도 4의 S430. S435 단계를 변형한 실시예일 뿐, 도 4의 S405~S425, S440 단계의 과정과 실질적으로 동일하여 이에 대한 설명은 생략한다. 이하에서는 도 4의 S430. S435 단계과 상이한 부분을 위주로 설명하다.
우선, 벡터 요소 산출부(156)는 도 4의 설명에서 언급된 참조 데이터들에 기반하여 지정된 벡터화 알고리즘에 의해 복수 개의 벡터 차원 별로 단어의 벡터값을 산출한다.
다음으로 도 6을 참조하면, 모델 수립부(170)는 복수의 벡터 차원 별로 각각 실행된 훈련 문서의 단어들의 벡터값들에 기초한 기계 학습을 각각 적용하여 산출된 벡터 차원 별 예측 데이터와 관련된 예측 클래스를 산출한다(S605).
이어서, 모델 수립부(170)는 훈련 문서에 기초하여 실제 평가된 실 데이터와 관련된 실제 클래스와 벡터 차원 별 예측 데이터와 관련된 예측 클래스를 비교하여 상기 예측 클래스의 정확도를 판정한다(S610).
계속해서, 모델 수립부(170)는 최고의 정확도 혹은 임계치 이상의 정확도의 벡터 차원을 갖는 벡터값과 훈련 문서에 기초하여 주제와 관련된 예측을 수행하는 기계 학습을 적용함으로써 선행 훈련된 모델링을 수립하고, 기계 학습부(160)에 제공된다(S615).
본 실시예에서는 기계 학습부에 선행 훈련된 모델링을 자동으로 제공하는 것을 예로 들고 있으나, 다른 실시예로서, 사용자에게 복수의 벡터 차원 별로 정확도를 화면으로 제시하여 사용자가 직접 벡터 차원을 선택할 수 있다.
통상 벡터 차원이 증가할수록 선행 훈련된 모델링의 정확도가 향상되는 편이나, 주제, 훈련 문서의 개수, 종류에 따라 벡터 차원이 증가하더라도 오히려 낮은 벡터 차원의 선행 훈련된 모델링이 높은 정확도를 나타내는 경우가 종종 발생한다.
본 실시예에 따르면, 최적의 벡터 차원을 갖는 선행 훈련 모델링을 수립하여 신규 문서 등에 대한 기계 학습의 예측 정확도를 더욱 향상시킬 수 있다.
도 1 내지 도 3에 도시된 장치(100)를 구성하는 구성요소 또는 도 4 내지 도 6에 도시된 실시예들에 따른 단계는 그 기능을 실현시키는 프로그램의 형태로 컴퓨터 판독가능한 기록 매체에 기록될 수 있다. 여기에서, 컴퓨터 판독 가능한 기록 매체란, 데이터나 프로그램 등의 정보를 전기적, 자기적, 광학적, 기계적, 또는 화학적 작용에 의해 축적하고, 컴퓨터에서 판독할 수 있는 기록 매체를 말한다. 이러한 기록 매체 중 컴퓨터로부터 분리 가능한 것으로서는, 예를 들면, 휴대용 스토리지(portalbe storage), 플렉시블 디스크, 광자기 디스크, CD-ROM, CD-R/W, DVD, DAT, 메모리 카드 등이 있다. 또한, 모바일 디바이스 및 컴퓨터에 고정된 기록 매체로서 SSD(Solid State Disk), 하드디스크나 ROM 등이 있다.
또한, 이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다.
이상에서 대표적인 실시예를 통하여 본 발명에 대하여 상세하게 설명하였으나, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리 범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태에 의하여 정해져야 한다.
100: 주제별 단어 또는 문서 관계성 분석 장치
110: 훈련 문서 입력부 120: 사전 및 언어 자료 데이터베이스부
130: 헝태소 분석부 140: 문장 형태 분석부
150: 벡터화부 160: 기계 학습부
170: 모델 수립부 180: 문서 입력부
190: 응용 처리부

Claims (10)

  1. 관계성 분석 장치에 의한 주제별 단어 또는 문서의 관계성 분석 방법으로서,
    상기 관계성 분석 장치 내부의 언어 자료 및 사전 데이터베이스부에 의해, 주제에 따라 선택된 사전 및 문서를 컴퓨팅 디바이스로 판독가능한 형태로 수집 가공된 언어 자료를 제공하는 단계;
    상기 관계성 분석 장치 내부의 벡터화부에 의해, 상기 주제에 따른 벡터 차원을 갖도록, 뉴스 데이터, 소셜 미디어 데이터, 객관화 데이터 중에 주제에 따라 선정된 훈련 문서에 대하여 상기 주제, 상기 언어 자료 및 상기 사전 중 적어도 어느 하나를 참조하여 단어 별로 벡터화하는 단계;
    상기 관계성 분석 장치 내부의 기계 학습부에 의해, 단어 별 벡터값 및 상기 훈련 문서에 기초하여 상기 주제와 관련된 예측을 수행하는 기계 학습을 적용함으로써 선행 훈련된 모델링을 수립하는 단계; 및
    상기 관계성 분석 장치 내부의 응용 처리부에 의해, 신규 문서를 상기 선행 훈련된 모델링이 수립된 기계 학습에 로딩하여 임베딩(embedding)하거나 상기 모델링을 응용 프로그램에 제공하는 단계를 포함하고;
    상기 단어 별로 벡터화하는 단계는,
    문서 내에서 스캔하는 단어 수를 설정하는 윈도우 사이즈, 문서 내에서 무시하는 특정 단어의 개수를 설정하는 최소 단어수, 문서 내에서 다운샘플하는 특정 단어의 빈도를 규정하는 샘플링 임계값, 노이즈 단어의 개수를 설정하는 제외 사이즈를 규정하는 훈련 파라미터를 설정하는 단계; 및
    상기 주제에 따른 벡터 차원을 갖도록, 상기 선정된 훈련 문서에 대하여 상기 주제 및 상기 훈련 파라미터를 참조하여 단어 별로 벡터화하는 단계를 더 포함하는 주제별 단어 또는 문서의 관계성 분석 방법.
  2. 제 1 항에 있어서,
    상기 언어 자료 및 상기 사전은 상기 주제에 따라 기 설정된 단어 타입 및 단어 개수를 참조하여 선정되는 주제별 단어 또는 문서의 관계성 분석 방법.
  3. 제 1 항에 있어서,
    상기 단어 별로 벡터화하는 단계에서 설정되는 상기 벡터 차원은 상기 주제와 아울러서 상기 훈련 문서의 개수 및 상기 컴퓨팅 디바이스의 성능에 따라 결정되는 주제별 단어 또는 문서의 관계성 분석 방법.
  4. 삭제
  5. 제 1 항에 있어서,
    상기 주제 및 상기 훈련 파라미터를 참조하여 단어 별로 벡터화하는 단계 전에,
    상기 관계성 분석 장치 내부의 벡터화부에 의해, 복수의 벡터화 알고리즘 중 적어도 하나를 지정하는 단계를 더 포함하고,
    상기 단어 별로 벡터화하는 단계는 지정된 벡터화 알고리즘을 적용하여 실행하는 주제별 단어 또는 문서의 관계성 분석 방법.
  6. 제 1 항에 있어서,
    상기 단어 별로 벡터화하는 단계는 사용자의 선택에 따라, 상기 훈련 문서의 단어를 벡터화 변환하거나, 단어 별 벡터값에 기반하여 상기 훈련 문서 별로 벡터화 변환하는 주제별 단어 또는 문서의 관계성 분석 방법.
  7. 제 1 항에 있어서,
    상기 선행 훈련된 모델링을 수립하는 단계는,
    복수의 벡터 차원 별로 각각 실행된 상기 훈련 문서의 단어들의 벡터값들에 기초한 기계 학습을 각각 적용하여 산출된 벡터 차원 별 예측 데이터와 관련된 예측 클래스를 산출하는 단계;
    상기 훈련 문서에 기초하여 실제 평가된 실 데이터와 관련된 실제 클래스와 상기 벡터 차원 별 예측 데이터와 관련된 예측 클래스를 비교하여 정확도를 판정하는 단계; 및
    최고의 정확도 또는 임계치 이상의 정확도를 갖는 상기 벡터 차원의 벡터값과 상기 훈련 문서에 기초하여 상기 주제와 관련된 예측을 수행하는 기계 학습을 적용함으로써 선행 훈련된 모델링을 수립하는 단계를 포함하는 주제별 단어 또는 문서의 관계성 분석 방법.
  8. 제 1 항에 있어서,
    상기 단어 별로 벡터화하는 단계 전에,
    상기 관계성 분석 장치 내부의 형태소 분석부에 의해, 상기 훈련 문서 내의 단어를 지정된 방식에 규정하는 단어 단위로 분리하는 단계;
    상기 관계성 분석 장치 내부의 상기 형태소 분석부에 의해, 상기 단어 별로 문법 형태를 분석하는 단계; 및
    상기 관계성 분석 장치 내부의 문장 형태 분석부에 의해, 상기 훈련 문서의 각 문장을 구성하는 단어의 문장 성분을 분석하는 단계를 더 포함하고,
    상기 단어 별로 벡터화하는 단계는 상기 주제, 상기 사전, 상기 언어 자료, 단어 분리 정보, 상기 문법 형태 및 상기 문장 성분 중 적어도 어느 하나를 참조하는 주제별 단어 또는 문서의 관계성 분석 방법.
  9. 제 1 항에 있어서,
    상기 신규 문서를 상기 선행 훈련된 모델링이 수집된 기계 학습에 로딩하여 임베딩하는 단계는,
    상기 사전 및 상기 언어 자료를 제공하는 단계;
    상기 신규 문서 내의 단어를 지정된 방식에 규정하는 단어 단위로 분리하는 단계;
    상기 단어 별로 문법 형태를 분석하는 단계; 및
    상기 신규 문서의 각 문장을 구성하는 단어의 문장 성분을 분석하는 단계
    상기 모델링에 따른 벡터 차원을 갖도록, 상기 신규 문서에 대하여 상기 주제, 상기 사전, 상기 언어 자료, 단어 분리 정보, 상기 문법 형태 및 상기 문장 성분 중 적어도 어느 하나를 참조하여 단어 별로 벡터화하는 단계; 및
    단어 별 벡터값 및 상기 신규 문서에 기초하여 상기 주제와 관련된 예측을 수행하는 기계 학습을 적용하는 단계를 포함하는 주제별 단어 또는 문서의 관계성 분석 방법.
  10. 주제에 따라 선택된 사전 및 문서를 컴퓨팅 디바이스로 판독가능한 형태로 수집 가공된 언어 자료를 제공하는 언어 자료 및 사전 데이터베이스부;
    상기 주제에 따른 벡터 차원을 갖도록, 뉴스 데이터, 소셜 미디어 데이터, 객관화 데이터 중에 주제에 따라 선정된 훈련 문서에 대하여 상기 주제, 상기 언어 자료 및 상기 사전 중 적어도 어느 하나를 참조하여 단어 별로 벡터화하는 벡터화부;
    단어 별 벡터값 및 상기 훈련 문서에 기초하여 상기 주제와 관련된 예측을 수행하는 기계 학습을 적용함으로써 선행 훈련된 모델링을 수립하는 모델 수립부; 및
    신규 문서를 상기 선행 훈련된 모델링이 수집된 기계 학습에 로딩하여 임베딩하거나 상기 모델링을 응용 프로그램에 제공하는 응용 처리부를 포함하고;
    상기 벡터화부는 문서 내에서 스캔하는 단어 수를 설정하는 윈도우 사이즈, 문서 내에서 무시하는 특정 단어의 개수를 설정하는 최소 단어수, 문서 내에서 다운샘플하는 특정 단어의 빈도를 규정하는 샘플링 임계값, 노이즈 단어의 개수를 설정하는 제외 사이즈를 규정하는 훈련 파라미터를 설정하며; 상기 주제에 따른 벡터 차원을 갖도록, 상기 선정된 훈련 문서에 대하여 상기 주제 및 상기 훈련 파라미터를 참조하여 단어 별로 벡터화하는 주제별 단어 또는 문서의 관계성 분석 장치.
KR1020190032680A 2019-03-22 2019-03-22 주제별 단어 또는 문서의 관계성 분석 방법 및 이를 구현하는 장치 KR102215259B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190032680A KR102215259B1 (ko) 2019-03-22 2019-03-22 주제별 단어 또는 문서의 관계성 분석 방법 및 이를 구현하는 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190032680A KR102215259B1 (ko) 2019-03-22 2019-03-22 주제별 단어 또는 문서의 관계성 분석 방법 및 이를 구현하는 장치

Publications (2)

Publication Number Publication Date
KR20200112353A KR20200112353A (ko) 2020-10-05
KR102215259B1 true KR102215259B1 (ko) 2021-02-15

Family

ID=72808762

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190032680A KR102215259B1 (ko) 2019-03-22 2019-03-22 주제별 단어 또는 문서의 관계성 분석 방법 및 이를 구현하는 장치

Country Status (1)

Country Link
KR (1) KR102215259B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102542268B1 (ko) * 2021-08-23 2023-06-12 옥성수 키워드 이미지 대입을 이용한 목차 암기 학습 시스템

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101737887B1 (ko) * 2015-09-18 2017-05-19 아주대학교산학협력단 크로스 미디어 분석에 기반한 소셜 미디어 텍스트의 주제 카테고리 자동 분류 방법 및 그 장치
US10360507B2 (en) * 2016-09-22 2019-07-23 nference, inc. Systems, methods, and computer readable media for visualization of semantic information and inference of temporal signals indicating salient associations between life science entities
KR102060176B1 (ko) * 2017-09-12 2019-12-27 네이버 주식회사 문서의 카테고리 분류를 위한 딥러닝 학습 방법 및 그 시스템

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
D. Bahdanau et al., Neural machine translation by jointly learning to align and translate, proc. on ICLR 2015 (2015.) 1부.
김도우 외, Doc2Vec과 Word2Vec을 활용한 Convolutional Neural Network 기반 한국어 신문 기사 분류, 한국정보과학회논문지 44(7) pp.742-747 (2017.07.) 1부.*
박천음 외, 포인터 네트워크를 이용한 한국어 의존 구문 분석, 정보과학회논문지 44(8) pp.822-831 (2017.08)

Also Published As

Publication number Publication date
KR20200112353A (ko) 2020-10-05

Similar Documents

Publication Publication Date Title
CN109145294B (zh) 文本实体识别方法及装置、电子设备、存储介质
CN109101537B (zh) 基于深度学习的多轮对话数据分类方法、装置和电子设备
JP7164701B2 (ja) セマンティックテキストデータをタグとマッチングさせる方法、装置、及び命令を格納するコンピュータ読み取り可能な記憶媒体
CN112131350B (zh) 文本标签确定方法、装置、终端及可读存储介质
CN111680159B (zh) 数据处理方法、装置及电子设备
CN108875059B (zh) 用于生成文档标签的方法、装置、电子设备和存储介质
WO2018184518A1 (zh) 微博数据处理方法、装置、计算机设备及存储介质
CN112084334B (zh) 语料的标签分类方法、装置、计算机设备及存储介质
CN112632226B (zh) 基于法律知识图谱的语义搜索方法、装置和电子设备
CN113961685A (zh) 信息抽取方法及装置
CN111753082A (zh) 基于评论数据的文本分类方法及装置、设备和介质
CN112287672A (zh) 文本意图识别方法及装置、电子设备、存储介质
CN114528845A (zh) 异常日志的分析方法、装置及电子设备
US20220129630A1 (en) Method For Detection Of Malicious Applications
US8224642B2 (en) Automated identification of documents as not belonging to any language
CN113761875B (zh) 事件抽取方法、装置、电子设备及存储介质
US20220156489A1 (en) Machine learning techniques for identifying logical sections in unstructured data
CN113723077A (zh) 基于双向表征模型的句向量生成方法、装置及计算机设备
CN111241273A (zh) 文本数据分类方法、装置、电子设备及计算机可读介质
KR102215259B1 (ko) 주제별 단어 또는 문서의 관계성 분석 방법 및 이를 구현하는 장치
CN113918710A (zh) 文本数据处理方法、装置、电子设备和可读存储介质
CN113569578B (zh) 一种用户意图识别方法、装置和计算机设备
KR102363958B1 (ko) 이중 클러스터링 기반 소비자 인식 분석 방법, 장치 및 프로그램
JP6026036B1 (ja) データ分析システム、その制御方法、プログラム、及び、記録媒体
JP2017538226A (ja) スケーラブルなウェブデータの抽出

Legal Events

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