KR20180110639A - 사용자 생성 콘텐츠의 동적 용어 식별 체계 구축 장치 및 방법 - Google Patents

사용자 생성 콘텐츠의 동적 용어 식별 체계 구축 장치 및 방법 Download PDF

Info

Publication number
KR20180110639A
KR20180110639A KR1020180036501A KR20180036501A KR20180110639A KR 20180110639 A KR20180110639 A KR 20180110639A KR 1020180036501 A KR1020180036501 A KR 1020180036501A KR 20180036501 A KR20180036501 A KR 20180036501A KR 20180110639 A KR20180110639 A KR 20180110639A
Authority
KR
South Korea
Prior art keywords
cluster
clusters
term
result
terms
Prior art date
Application number
KR1020180036501A
Other languages
English (en)
Other versions
KR102025819B1 (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 중앙대학교 산학협력단
Publication of KR20180110639A publication Critical patent/KR20180110639A/ko
Application granted granted Critical
Publication of KR102025819B1 publication Critical patent/KR102025819B1/ko

Links

Images

Classifications

    • G06F17/30389
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 동적 용어 식별 체계 구축 장치 및 방법에 관한 것으로, 더욱 상세하게는 사용자 생성 콘텐츠의 동적 용어 식별 체계 구축 장치 및 방법에 관한 것이다. 본 발명은 시간의 변화에도 동적으로 용어의 의미를 고려하며 동음이의어의 경우에도 각각의 의미를 구분할 수 있는 동적 용어 식별 체계 구축 장치 및 방법을 제공할 수 있다.

Description

사용자 생성 콘텐츠의 동적 용어 식별 체계 구축 장치 및 방법{DEVICE AND METHOD FOR CONSTRUCTING DYNAMIC-TERMS IDENTIFICATION SYSTEM IN USER GERERATED CONTENTS}
본 발명은 동적 용어 식별 체계 구축 장치 및 방법에 관한 것으로, 더욱 상세하게는 사용자 생성 콘텐츠의 동적 용어 식별 체계 구축 장치 및 방법에 관한 것이다.
IT 기술의 발전으로 다양한 질의 검색 시스템이 서비스 되고 있다. 대표적으로 전세계인들이 가장 많이 활용하는 서비스 중 하나인 구글(Google)이 있다. 이러한 질의 검색 시스템은 사용자가 입력한 질의(query)를 이용하여 가장 유사한 콘텐츠를 찾아준다. 하지만, 사용자가 도메인에 대한 이해도가 높지 않으면 원하는 정보에 도달하기 어려울 수 있다. 사용자가 원하는 정보에 쉽게 도달하기 위하여 시스템은 적절한 단어들을 제공해줄 필요가 있다.
사용자의 초기 질의에 적합한 용어를 제공하기 위해서는 용어식별 체계가 필요하다. 또한, 용어식별 체계는 문서를 분석하고 활용할 때에도 필요하다.
이 때, 시간에 따른 용어의 생성과 변화를 반영하지 못하는 정적 용어식별 체계를 이용하는 경우, 시스템이 적절히 동작하지 않을 수 있다. 정적 용어식별 체계의 예로서 워드넷(WordNet)을 들 수 있다. 워드넷은 단어들 간에 연상이 가능하도록 단어를 의미 집합으로 분류해 놓은 단어 사전이다. 워드넷과 같은 정적 용어 식별 체계를 이용하는 경우, 새로운 용어가 등장하거나 용어의 의미나 활용이 변화되는 경우 시스템이 적절하게 동작하지 않을 수 있다. 이러한 문제들을 해결하기 위해서 동적으로 용어 식별 체계를 구축할 필요가 있다.
본 발명의 배경기술은 대한민국 공개특허 제 2009-0048261(2009년 5월 13일 공개)에 개시되어 있다.
본 발명은 전술한 문제 및 다른 문제를 해결하는 것을 목적으로 한다.
또한, 본 발명은 시간의 변화에도 동적으로 용어의 의미를 고려하며 동음이의어의 경우에도 각각의 의미를 구분할 수 있는 동적 용어 식별 체계 구축 장치 및 방법을 제공하는 것을 그 목적으로 한다
본 발명에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
상기 문제점을 해결하기 위하여, 본 발명의 일 실시예에 따른 동적 용어 식별 체계 구축 방법은 사용자 생성 콘텐츠를 용어의 형태로 가공하는 단계; 가공된 상기 용어를 벡터 공간의 벡터로 변환하는 단계; 상기 벡터를 기초로 질의어와 연관된 후보 단어를 추출하여 클러스터를 형성하는 단계; 및 상기 클러스터를 평가한 결과를 기초로 총 클러스터의 수를 결정하는 단계를 포함할 수 있다.
상기 클러스터를 평가한 결과는 상기 클러스터에 대한 DB 인덱스(Davies Bouldin index)를 포함할 수 있다.
상기 DB 인덱스(Davies Bouldin index, DB)는 다음의 수학식 1을 이용하여 결정되며,
[수학식 1]
Figure pat00001
상기 n은 상기 클러스터의 수, 상기
Figure pat00002
는 클러스터 x의 중심점, 상기
Figure pat00003
는 클러스터 x내의 모든 데이터 오브젝트로부터 중심점
Figure pat00004
까지 거리의 평균값이며 상기
Figure pat00005
는 중심점
Figure pat00006
와 중심점
Figure pat00007
간의 거리일 수 있다.
상기 총 클러스터의 수를 결정하는 단계는, 상기 총 클러스터의 수가 자연수 N인 경우에 평가한 제1 결과를 산출하는 단계; 상기 총 클러스터의 수가 N+1인 경우에 평가한 제2 결과를 산출하는 단계; 및 상기 제1 결과 및 상기 제2 결과를 비교하여 상기 총 클러스터의 수를 결정하는 단계를 포함할 수 있다.
상기 클러스터를 평가한 상기 결과는, 각 클러스터 사이의 거리에 대한 클러스터 간 분산 정보; 및 하나의 클러스터 내에서 각 용어에 대응하는 벡터 간의 거리에 대한 클러스터 내 분산 정보를 기초로 결정될 수 있다.
본 발명의 다른 실시예에 따른 동적 용어 식별 체계 구축 장치는 데이터를 송수신하기 위한 송수신기; 및 프로세서를 포함하고, 상기 프로세서는 사용자 생성 콘텐츠를 용어의 형태로 가공하고, 가공된 상기 용어를 벡터 공간의 벡터로 변환하고, 상기 벡터를 기초로 질의어와 연관된 후보 단어를 추출하여 클러스터를 형성하고, 상기 클러스터를 평가한 결과를 기초로 총 클러스터의 수를 결정할 수 있도록 구성될 수 있다.
상기 클러스터를 평가한 결과는 상기 클러스터에 대한 DB 인덱스(Davies Bouldin index)를 포함할 수 있다.
상기 DB 인덱스(Davies Bouldin index, DB)는 다음의 수학식 1을 이용하여 결정되며,
[수학식 1]
Figure pat00008
상기 n은 상기 클러스터의 수, 상기
Figure pat00009
는 클러스터 x의 중심점, 상기
Figure pat00010
는 클러스터 x내의 모든 데이터 오브젝트로부터 중심점
Figure pat00011
까지 거리의 평균값이며 상기
Figure pat00012
는 중심점
Figure pat00013
와 중심점
Figure pat00014
간의 거리일 수 있다.
상기 프로세서는 상기 총 클러스터의 수를 결정함에 있어서, 상기 총 클러스터의 수가 자연수 N인 경우에 평가한 제1 결과를 산출하고, 상기 총 클러스터의 수가 N+1인 경우에 평가한 제2 결과를 산출하고, 상기 제1 결과 및 상기 제2 결과를 비교하여 상기 총 클러스터의 수를 결정할 수 있도록 구성될 수 있다.
상기 클러스터를 평가한 상기 결과는, 각 클러스터 사이의 거리에 대한 클러스터 간 분산 정보; 및 하나의 클러스터 내에서 각 용어에 대응하는 벡터 간의 거리에 대한 클러스터 내 분산 정보를 기초로 결정될 수 있다.
본 발명에 대하여 전술한 일반적인 설명과 후술하는 상세한 설명은 예시적인 것이며, 청구항 기재 발명에 대한 추가적인 설명을 위한 것이다.
본 발명의 실시예에 따르면 사용자 생성 콘텐츠의 동적 용어 식별 체계 구축 장치 및 방법을 제공할 수 있다.
또한, 본 발명의 실시예에 따르면 시간의 변화에도 동적으로 용어의 의미를 고려하며 동음이의어의 경우에도 각각의 의미를 구분할 수 있는 동적 용어 식별 체계 구축 장치 및 방법을 제공할 수 있다.
본 발명에서 얻은 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되는 첨부 도면은 본 발명에 대한 실시예를 제공하고 상세한 설명과 함께 본 발명의 기술적 사상을 설명한다.
도 1은 본 발명의 일 실시예에 따른 사용자 생성 콘텐츠의 동적 용어 식별 체계 구축 방법을 나타내는 흐름도이다.
도 2는 본 발명의 일 실시예에 따른 클러스터링 방법을 도시한 것이다.
도 3은 사용자가 입력한 질의가 '의사'인 경우 연관 용어 리스트의 일례를 도시한 것이다.
도 4는 사용자가 입력한 질의가 '메모리'인 경우 연관 용어 리스트의 일례를 도시한 것이다.
도 5는 사용자가 입력한 질의가 '그래핀'인 경우 연관 용어 리스트의 일례를 도시한 것이다.
도 6은 사용자가 입력한 질의가 '병원'과 '의사'의 복합인 경우 연관 용어 리스트의 일례를 도시한 것이다.
도 7은 본 발명의 일 실시예에 따른 컴퓨팅 장치를 도시한 것이다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
도 1은 본 발명의 일 실시예에 따른 사용자 생성 콘텐츠의 동적 용어 식별 체계 구축 방법을 나타내는 흐름도이다.
도 1을 참조하면, 먼저 S110 단계에서 사용자 생성 콘텐츠(데이터)를 전처리한다. 즉, 사용자 생성 콘텐츠를 분석하기 용이한 용어의 형태로 가공할 수 있다.
사용자 생성 콘텐츠(User-generated contents)는 사용자들에 의해 생성된 텍스트, 이미지, 동영상 등 다양한 유형의 데이터들로 구성될 수 있다. 특히, 소셜 미디어(Social Media)의 발전으로 비정형 텍스트 데이터가 많이 발생하고 있다.
사용자 생성 콘텐츠를 전처리 하는 구체적 예로서, 먼저 사용자 생성 콘텐츠에서 불용어를 삭제하고 용어를 추출할 수 있다.
불용어는 검색 용어로 적합하지 않거나 문서 분석에 필요하지 않은 단어들을 의미한다. 예를 들면, 특수문자, 숫자, 이모티콘, 관사, 전치사, 조사, 접속사 등의 일부 또는 전부를 불용어로 판단할 수 있다.
또한, 불용어를 삭제한 이후 형태소분석을 더 수행할 수 있다. 형태소 분석은 문서나 문장을 가장 작은 의미 단위인 형태소 형태로 나누는 것이다. 최종적으로 문장은 품사 단위의 단어로 나누어 질 수 있다. 일반적으로 용어는 책이나 문서를 대표할 수 있는 대표어로, 이하에서는 용어를 명사로 정의한다.
다음으로 S120 단계에서 추출한 용어를 벡터 공간에 사영한다. 즉, 용어를 벡터 공간의 벡터로 변환할 수 있다.
예를 들면, 워드투벡터(Word2vec) 처리를 이용하여 S110 단계에서 추출한 용어를 벡터 공간에 사영할 수 있다. Word2vec는 단어 간의 의미 연관성을 수학적으로 표현하는 워드 임베딩(word embedding) 기법의 일종이다. 즉, Word2Vec는 벡터공간 상에서 단어의 의미를 효율적으로 추정할 수 있는 알고리즘이다.
Word2vec는 단어를 벡터공간에 사영하기 위하여 CBOW(Continuous Bag-of-Words) 또는 스킵 그램(Skip-gram) 모델을 이용하여 두 단계의 신경망 학습을 수행할 수 있다.
CBOW모델은 아래와 같은 논리의 흐름을 이용한다. "아이스크림을 사자마자 바로 먹었는데, 'X'가 시려서 너무 먹기가 힘들었다"라는 문장이 있다면, 'X'에 들어갈 단어가 정확하게 주어지지 않아도 앞 뒤의 단어들을 통해 'X'는 '이'임을 유추할 수 있다. CBOW 모델의 수학적인 계산 방법은 본 발명의 요지에 해당하지 않으므로 상세한 설명은 생략한다.
Skip-gram 모델은 상기 CBOW 모델과 반대 방향의 모델로 생각할 수 있다. 주어진 단어 한 개를 이용하여 주위의 몇가지 단어를 유추하는 것이다. CBOW 모델과 마찬가지로, Skip-gram 모델의 수학적인 계산 방법은 본 발명의 요지에 해당하지 않으므로 상세한 설명은 생략한다.
Word2vec 처리를 수행하면, 단어 간에 더 높은 연관관계를 가진 단어들이 더 비슷한 벡터 공간에 사영된다. 따라서, 벡터 정보를 이용하여 두 용어 사이의 관계를 추론할 수 있다. 예를 들면, 코사인 유사도(Cosine-Similarity)를 이용하여 두 용어 사이의 유사도를 추론할 수 있다. 단어에 대한 쓰임이 비슷하거나 같은 문서에 많이 활용되는 등 연관성이 높을수록 높은 유사도를 가질 것이다.
Word2Vec의 결과로 생성된 벡터는 벡터의 기본적인 성질을 가진다. 예를 들면, 제1 단어에 대한 제1 벡터와 제2 단어에 대한 제2 벡터가 존재할 때, 두 벡터를 더하여 제3 벡터를 계산할 수 있다. 또한, 제3 벡터도 고유한 벡터 값을 가지기 때문에, 다른 단어 벡터들과 연산이 가능하다. 이러한 방식으로 Word2Vec를 이용하여 단어와 단어 사이의 관계를 비교하고, 이를 기반으로 동적 용어 식별 체계, 클러스터링 등에 적용할 수 있다.
하지만, 종래의 Word2vec은 용어의 연관 관계만 제공할 뿐, 더욱 정밀한 관계를 제공하기는 어렵다. 특히, 동음이의어의 경우, 두 의미와 연관 있는 단어들을 구별하지 않고 한꺼번에 제공할 수 있다는 점에서 사용자에게 혼돈을 줄 수 있다. 본 발명에 따르면, 이하의 단계를 통해 상기 문제를 완화할 수 있으며 용어의 일관성(coherence)를 높여 줄 수 있다.
다음으로 S130 단계에서 벡터 정보를 이용하여 질의어와 연관된 후보단어를 추출하여 클러스터링을 수행한다.
클러스터링(clustering, 군집화)은 기계학습(Machine Learning), 데이터 마이닝(Data Mining), 패턴인식(Pattern Recognition), 영상분석(Image analysis), 및 생물정보학(Bioinformatics)을 비롯한 많은 분야에서 사용될 수 있는 데이터 분석 기술이다. 클러스터링은 하나의 데이터를 여러 개의 부분집합 혹은 클러스터(Clusters)로 분할하는 것을 의미한다. 각 클러스터에 있는 데이터는 몇가지의 공통된 특징(Trait)을 공유한다. 클러스터링은 몇가지 거리 측정법을 이용하여 유사도(Similarity or Proximity)를 계산함으로써 이루어질 수 있다.
도 2는 본 발명의 일 실시예에 따른 클러스터링 방법을 도시한 것이다. 본 발명의 일 실시예에 따르면, 모든 용어들 사이의 관계를 활용하고 용어들 사이의 일관성을 높이기 위하여 도 2와 같은 클러스터링 과정을 수행할 수 있다.
도 2를 참조하면, S120 단계에서 획득한 용어의 벡터 정보를 기반으로, 사용자가 입력한 질의와 연관이 높은 상위(top)-n 개의 단어리스트를 추출한다. 그 중 사용자의 질의와 가장 연관성이 높은 top-1의 단어를 클러스터의 헤드(head)로 정의하고, 연관 리스트의 다른 용어들과 관계를 비교한다. 이 때, 최대값과 최소값을 이용하여 임계 값을 정의하고 임계 값 이상의 용어들로 첫 번째 클러스터를 형성한다.
다음 클러스터는 첫 번째 클러스터의 헤드와 가장 유사성이 적은 단어를 헤드로 정의하고 반복 수행한다. 이러한 방법을 반복하여 원하는 수만큼의 클러스터를 얻을 수 있다. 일반적으로 용어의 의미나 활용이 무한하지 않기 때문에 클러스터의 수는 최소 2로 하는 것이 바람직하다. 클러스터링을 통해 각 용어 사이의 관계가 반영되고, 후보 용어들은 클러스터를 형성한다. 이를 통해 동음이의어를 갖는 용어에 대한 분류나 연관 단어들에 대한 일관성을 높일 수 있다.
다시 도 1을 참조하면, S140 단계에서 클러스터를 평가하고 그 결과를 기초로 총 클러스터의 수를 결정할 수 있다.
적절한 총 클러스터의 수를 정하기 위해서 사전의 지식이나 정보를 활용할 수 있다. 즉, 사전 정보를 기반으로 결정된 수의 클러스터를 이용하는 것이다.
반면, 적절한 클러스터의 수를 결정하기 위하여 클러스터 자체의 정보를 활용할 수도 있다. 예를 들면, 클러스터 간 및 클러스터 내 분산 정보를 이용할 수 있다. 클러스터 간 분산(Inter cluster variance) 정보의 경우, 각 클러스터의 거리를 최대화 하는 것이다. 클러스터링이 잘 이뤄질 수록 각 클러스터는 명확하게 분리되었다고 생각될 수 있다. 즉, 클러스터 간의 거리가 먼 것이다. 반면, 클러스터 내 분산(inner-cluster variance) 정보는 하나의 클러스터를 이루는 용어 간의 거리를 의미한다. 클러스터 내 분산이 최소화 되었다면 하나의 클러스터는 비슷한 성질의 용어끼리 클러스터를 형성했다고 평가할 수 있다.
본 발명에서 클러스터링은 사용자가 입력한 질의와 유사 관계에 있는 다른 용어들을 분류하는 데 이용된다. 즉, 본 발명은 관련 용어의 쓰임에 따라 관련 용어들을 클러스터링하고, 사용자에게 이에 대한 정보를 제공함에 목적이 있다. 따라서 사용자의 질의 용어에 따라 찾아낸 관련 용어들의 의미를 적절하게 분류할 수 있는 클러스터링 및 평가 방법이 필요하다.
예를 들면, 적절한 클러스터의 수를 결정하기 위하여 팔꿈치 방법(Elbow method)을 이용할 수 있다. 팔꿈치 방법은 이전 클러스터와 클러스터를 추가하였을 때를 비교하여 클러스터의 수를 결정하는 방법이다. 예를 들면, X축에서 클러스터의 수(K)를 1부터 차례로 늘려가면서 Y축에 평가값을 그래프로 나타낼 때, 그래프가 가장 꺽이는 지점(팔꿈치)에서의 K값을 선택하는 방법이다. 이때, 클러스터의 수에 따른 클러스터 적합도 평가를 위하여 DB 지수(Davies-Bouldin index)를 활용할 수 있다.
DB 지수는 클러스터링이 얼마나 잘 되었느가를 측정하는 방법으로, 데이터 집합을 클러스터링한 결과 그 자체를 놓고 평가하는 방식이다. DB지수는 클러스터 내 높은 유사도(High intra-cluster similarity)를 가지고, 클러스터 간 낮은 유사도(low inter-cluster similarity)를 가진 결과물에 낮은 점수를 준다.
DB지수는 아래의 수학식 1을 이용하여 계산할 수 있다.
Figure pat00015
n은 클러스터의 개수,
Figure pat00016
는 클러스터 x의 중심점,
Figure pat00017
는 클러스터 x내의 모든 데이터 오브젝트로부터 중심점
Figure pat00018
까지 거리의 평균값이며
Figure pat00019
는 중심점
Figure pat00020
와 중심점
Figure pat00021
간의 거리이다.
클러스터 내 유사도가 높고, 클러스터 간 유사도는 낮은 클러스팅은 낮은 DB 지수를 가진다. 따라서, DB 지수가 낮은 클러스터링 방법을 좋은 클러스터링 방법으로 평가할 수 있다.
본 발명에서는 클러스터의 수를 늘려가면서 DB 지수를 산출하고, 이전 단계의 값과 현재 단계의 값을 비교하여 클러스터의 수를 결정할 수 있다. DB 지수을 이용한 방법은 클러스터의 실제 참값에 대한 평가는 아니지만, 빠르게 개수를 정할 수 있는 장점이 있다.
도 3 내지 도 6은 상술한 방법을 이용하여 사용자가 입력한 질의어와 연관된 용어를 클러스터리한 결과의 예를 보여준다. 질의어와 연관된 용어는 질의어와 높은 유사도를 가지는 용어들을 말한다.
연관 용어 검색은 '단일 용어 검색'(도 3 내지 도 5의 예)과 '복합 용어 검색'(도 6의 예) 2가지로 수행될 수 있다. 단일 용어 검색은 사용자의 질의가 특정 용어 하나일 경우이며, 사용자의 질의에 해당하는 단어 벡터를 기반으로 다른 용어와 유사도 측정을 수행한다. 복합 용어 검색은 복수의 단어가 질의로 입력되는 경우를 말한다.
도 3은 사용자가 입력한 질의가 '의사'인 경우 연관 용어 리스트의 일례를 도시한 것이다. 도 3을 참조하면, 첫 번째 그룹(군집 1)의 연관 용어들은 환자, 의료진, 진료, 병명, 간호사 등 병원의 의사(doctor)와 관련 있는 것을 알 수 잇다. 반면 두 번째와 세 번째 그룹은 결정자, 결정권자, 결정부, 선택 등 의사 결정의 의사(intention)와 관련 있는 단어들이 리스트에 오른 것을 확인 할 수 있다.
즉, 사용자가 '의사'라는 질의어를 입력한 경우, '의사'는 의사결정의 의사 또는 병원의 의사를 의미할 수 있다. 본 발명에 따르면, 동음이의어별로 다르게 클러스터링된 연계 용어들을 사용자에게 제공하여 사용자의 결정을 도와줄 수 있다.
또한, 도 3의 예에서 클러스터링의 수를 결정할 때, 클러스터링의 수를 2개 (예를 들면, 군집 1 과 나머지 군집), 3개 (군집 1, 군집 2, 군집 3) 등으로 늘려가면서 DB 지수를 각각 평가하고, 가장 평가지수의 변화가 심한 지점(elbow)에서 클러스터링의 수를 결정할 수 있다.
도 4는 사용자가 입력한 질의가 '메모리'인 경우 연관 용어 리스트의 일례를 도시한 것이다. 도 4에서 군집 1은 액세스와 연관된 용어를, 군집 2는 불휘발, 낸드, 플래시 등과 연관된 용어, 군집 3은 비트, 어드레스, 프로그래밍 등에 대한 연관 용어를 포함하고 있다.
도 5는 사용자가 입력한 질의가 '그래핀'인 경우 연관 용어 리스트의 일례를 도시한 것이다. 도 5에서 군집 1은 탄소나노, 나노, 카본나노 등과 연관된 용어를, 군집 2는 상화그래핀, 그래핀층, 나노선 등과 연관된 용어를, 군집 3은 박리법, 직성장 등에 연관된 용어를 포함하고 있다.
도 4 및 도 5와 같이 각각의 클러스터들은 서로 다른 의미를 가지는 용어들의 연계 단어들을 나타내기도 하며, 도메인과 연계된 다양한 방법론들을 제시하기도 한다.
도 6은, 단일 용어 검색의 경우였던 도 3 내지 도 5와 다르게, '병원' 및 '의사'를 복합 질의 했을 때의 결과를 나타내고 있다. 도 3의 예에서 단일 질의인 '의사'에는 두 가지 의미가 존재하며, 의사 결정에서의 의사(intention)와 병원의 의사(doctor)가 별도로 클러스터링 됨을 볼 수 있었다. 하지만 '병원' 단어를 '의사'와 같이 입력한 경우, '의사'의 의미가 병원의 의사로 분명해지며 '의사'와 '병원'에 관련된 연관 용어들이 검색 되는 것을 확인할 수 있다. 첫 번째 클러스터(군집1)의 경우 진료와 관계된 용어 리스트가 생성되었으며, 두 번째 클러스터(군집2)는 간호사, 진료와 같이 병원 내에서의 도메인 연계 용어들로 클러스터링 된 것을 볼 수 있다.
본 발명은 사용자 입력 콘텐츠 또는 문서에 대한 학습을 통해 용어를 동적으로 식별할 수 있는 연관 용어 검색 서비스를 제공할 수 있다. 연관 용어 검색 서비스를 통해 사용자는 질의와 관련 있는 용어 정보들을 제공 받을 수 있으며, 연관 용어들 사이의 클러스터링 정보를 통해, 질의 용어 및 연관 용어들의 클러스터 경향에 대한 정보도 알 수 있다.
도 7은 본 발명의 일 실시예에 따른 컴퓨팅 장치(700)를 도시한 것이다. 도 7를 참조하면, 본 발명의 일 실시예에 따른 컴퓨팅 장치(700)는 프로세서(710), 메모리(720) 및 송수신기(730)를 포함할 수 있다.
프로세서(710)는 컴퓨팅 장치(700) 전반의 동작을 제어할 수 있다. 또한, 프로세서(710)는 본 발명에서 제안한 절차 및/또는 방법들을 구현하도록 구성될 수 있다. 메모리(720)는 본 발명에서 제안한 절차 및/또는 방법들을 구현하기 위한 정보를 저장할 수 있으며, 비휘발성 또는 휘발성 메모리가 될 수 있다. 송수신기(730)는 외부 장치 또는 내부의 다른 장치와 각종 신호, 데이터 및 정보를 송신하거나 수신할 수 있다.
본 발명의 다양한 실시 예에 따른 문서 유사도 분석 방법은 다양한 서버 등의 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현될 수 있다. 또한, 본 발명에 따른 문서 유사도 분석 방법을 실행하는 프로그램은 컴퓨터 수단에 설치되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광 기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.
이제까지 본 발명에 대하여 그 실시 예들을 중심으로 살펴보았다. 다만, 전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 본 발명의 범위는 상세한 설명보다는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (10)

  1. 동적 용어 식별 체계 구축 방법에 있어서,
    사용자 생성 콘텐츠를 용어의 형태로 가공하는 단계;
    가공된 상기 용어를 벡터 공간의 벡터로 변환하는 단계;
    상기 벡터를 기초로 질의어와 연관된 후보 단어를 추출하여 클러스터를 형성하는 단계; 및
    상기 클러스터를 평가한 결과를 기초로 총 클러스터의 수를 결정하는 단계
    를 포함하는, 동적 용어 식별 체계 구축 방법.
  2. 제1항에 있어서,
    상기 클러스터를 평가한 결과는 상기 클러스터에 대한 DB 인덱스(Davies Bouldin index)를 포함하는, 동적 용어 식별 체계 구축 방법.
  3. 제2항에 있어서,
    상기 DB 인덱스(Davies Bouldin index, DB)는 다음의 수학식 1을 이용하여 결정되며,
    [수학식 1]
    Figure pat00022

    상기 n은 상기 클러스터의 수, 상기
    Figure pat00023
    는 클러스터 x의 중심점, 상기
    Figure pat00024
    는 클러스터 x내의 모든 데이터 오브젝트로부터 중심점
    Figure pat00025
    까지 거리의 평균값이며 상기
    Figure pat00026
    는 중심점
    Figure pat00027
    와 중심점
    Figure pat00028
    간의 거리인, 동적 용어 식별 체계 구축 방법.
  4. 제1항에 있어서,
    상기 총 클러스터의 수를 결정하는 단계는,
    상기 총 클러스터의 수가 자연수 N인 경우에 평가한 제1 결과를 산출하는 단계;
    상기 총 클러스터의 수가 N+1인 경우에 평가한 제2 결과를 산출하는 단계; 및
    상기 제1 결과 및 상기 제2 결과를 비교하여 상기 총 클러스터의 수를 결정하는 단계
    를 포함하는, 동적 용어 식별 체계 구축 방법.
  5. 제1항에 있어서,
    상기 클러스터를 평가한 상기 결과는,
    각 클러스터 사이의 거리에 대한 클러스터 간 분산 정보; 및
    하나의 클러스터 내에서 각 용어에 대응하는 벡터 간의 거리에 대한 클러스터 내 분산 정보
    를 기초로 결정되는, 동적 용어 식별 체계 구축 방법.
  6. 동적 용어 식별 체계 구축 장치에 있어서,
    데이터를 송수신하기 위한 송수신기; 및
    프로세서를 포함하고,
    상기 프로세서는
    사용자 생성 콘텐츠를 용어의 형태로 가공하고,
    가공된 상기 용어를 벡터 공간의 벡터로 변환하고,
    상기 벡터를 기초로 질의어와 연관된 후보 단어를 추출하여 클러스터를 형성하고,
    상기 클러스터를 평가한 결과를 기초로 총 클러스터의 수를 결정할 수 있도록 구성되는, 동적 용어 식별 체계 구축 장치.
  7. 제6항에 있어서,
    상기 클러스터를 평가한 결과는 상기 클러스터에 대한 DB 인덱스(Davies Bouldin index)를 포함하는, 동적 용어 식별 체계 구축 장치.
  8. 제7항에 있어서,
    상기 DB 인덱스(Davies Bouldin index, DB)는 다음의 수학식 1을 이용하여 결정되며,
    [수학식 1]
    Figure pat00029

    상기 n은 상기 클러스터의 수, 상기
    Figure pat00030
    는 클러스터 x의 중심점, 상기
    Figure pat00031
    는 클러스터 x내의 모든 데이터 오브젝트로부터 중심점
    Figure pat00032
    까지 거리의 평균값이며 상기
    Figure pat00033
    는 중심점
    Figure pat00034
    와 중심점
    Figure pat00035
    간의 거리인, 동적 용어 식별 체계 구축 장치.
  9. 제6항에 있어서,
    상기 프로세서는 상기 총 클러스터의 수를 결정함에 있어서,
    상기 총 클러스터의 수가 자연수 N인 경우에 평가한 제1 결과를 산출하고,
    상기 총 클러스터의 수가 N+1인 경우에 평가한 제2 결과를 산출하고,
    상기 제1 결과 및 상기 제2 결과를 비교하여 상기 총 클러스터의 수를 결정할 수 있도록 구성되는, 동적 용어 식별 체계 구축 장치.
  10. 제6항에 있어서,
    상기 클러스터를 평가한 상기 결과는,
    각 클러스터 사이의 거리에 대한 클러스터 간 분산 정보; 및
    하나의 클러스터 내에서 각 용어에 대응하는 벡터 간의 거리에 대한 클러스터 내 분산 정보
    를 기초로 결정되는, 동적 용어 식별 체계 구축 장치.
KR1020180036501A 2017-03-29 2018-03-29 사용자 생성 콘텐츠의 동적 용어 식별 체계 구축 장치 및 방법 KR102025819B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020170040261 2017-03-29
KR20170040261 2017-03-29

Publications (2)

Publication Number Publication Date
KR20180110639A true KR20180110639A (ko) 2018-10-10
KR102025819B1 KR102025819B1 (ko) 2019-09-26

Family

ID=63876110

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180036501A KR102025819B1 (ko) 2017-03-29 2018-03-29 사용자 생성 콘텐츠의 동적 용어 식별 체계 구축 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102025819B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210004057A (ko) * 2019-07-03 2021-01-13 인하대학교 산학협력단 기계 학습 및 의미론적 지식 기반 빅데이터 분석으로 웨어러블 센서와 소셜 네트워킹 데이터를 이용한 새로운 의료 모니터링 방법 및 장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08221447A (ja) * 1995-02-10 1996-08-30 Canon Inc 文書自動分類装置
JP2000172701A (ja) * 1998-12-04 2000-06-23 Fujitsu Ltd 文書データ提供装置、文書データ提供システム、文書データ提供方法及び文書データを提供するプログラムを記録した記録媒体
KR101190230B1 (ko) * 2004-07-26 2012-10-12 구글 인코포레이티드 정보 검색 시스템에서의 문구 식별

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08221447A (ja) * 1995-02-10 1996-08-30 Canon Inc 文書自動分類装置
JP2000172701A (ja) * 1998-12-04 2000-06-23 Fujitsu Ltd 文書データ提供装置、文書データ提供システム、文書データ提供方法及び文書データを提供するプログラムを記録した記録媒体
KR101190230B1 (ko) * 2004-07-26 2012-10-12 구글 인코포레이티드 정보 검색 시스템에서의 문구 식별

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210004057A (ko) * 2019-07-03 2021-01-13 인하대학교 산학협력단 기계 학습 및 의미론적 지식 기반 빅데이터 분석으로 웨어러블 센서와 소셜 네트워킹 데이터를 이용한 새로운 의료 모니터링 방법 및 장치

Also Published As

Publication number Publication date
KR102025819B1 (ko) 2019-09-26

Similar Documents

Publication Publication Date Title
Giachanou et al. Like it or not: A survey of twitter sentiment analysis methods
Hashimoto et al. Topic detection using paragraph vectors to support active learning in systematic reviews
Akter et al. Prediction of cervical cancer from behavior risk using machine learning techniques
Godin et al. Using topic models for twitter hashtag recommendation
Villegas et al. General overview of ImageCLEF at the CLEF 2015 labs
Turner et al. Word2Vec inversion and traditional text classifiers for phenotyping lupus
Okazaki et al. Building a high-quality sense inventory for improved abbreviation disambiguation
US20110218947A1 (en) Ontological categorization of question concepts from document summaries
Han et al. Semantic fingerprints-based author name disambiguation in Chinese documents
Guarino et al. An automatic mechanism to provide privacy awareness and control over unwittingly dissemination of online private information
Park et al. Understanding the representation and representativeness of age in AI data sets
Karami Fuzzy topic modeling for medical corpora
dos Santos et al. Latent association rule cluster based model to extract topics for classification and recommendation applications
Chang et al. Using word semantic concepts for plagiarism detection in text documents
Raghav et al. Text and citations based cluster analysis of legal judgments
Biesialska et al. Leveraging contextual embeddings and self-attention neural networks with bi-attention for sentiment analysis
Wang et al. A meta-learning based stress category detection framework on social media
Gong et al. Improving visual-semantic embeddings by learning semantically-enhanced hard negatives for cross-modal information retrieval
Zhang et al. The comparative experimental study of multilabel classification for diagnosis assistant based on chinese obstetric emrs
Movshovitz-Attias et al. Discovering subsumption relationships for web-based ontologies
KR102025819B1 (ko) 사용자 생성 콘텐츠의 동적 용어 식별 체계 구축 장치 및 방법
Zhang et al. Enhancing clinical decision support systems with public knowledge bases
US11663215B2 (en) Selectively targeting content section for cognitive analytics and search
Muthusami et al. A novelty analysis about an impact of tweets and twitter bios on topic quality discovery using the topic modeling
Shunkevich et al. Ontological approach to image captioning evaluation

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right