KR102086248B1 - 소셜 네트워크에서의 그래프 기반 이벤트 검출 방법, 및 소셜 네트워크에서의 그래프 기반 이벤트 검출 시스템 - Google Patents

소셜 네트워크에서의 그래프 기반 이벤트 검출 방법, 및 소셜 네트워크에서의 그래프 기반 이벤트 검출 시스템 Download PDF

Info

Publication number
KR102086248B1
KR102086248B1 KR1020180112353A KR20180112353A KR102086248B1 KR 102086248 B1 KR102086248 B1 KR 102086248B1 KR 1020180112353 A KR1020180112353 A KR 1020180112353A KR 20180112353 A KR20180112353 A KR 20180112353A KR 102086248 B1 KR102086248 B1 KR 102086248B1
Authority
KR
South Korea
Prior art keywords
graph
candidate
keyword
social
vertices
Prior art date
Application number
KR1020180112353A
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 KR1020180112353A priority Critical patent/KR102086248B1/ko
Priority to US16/222,759 priority patent/US11036818B2/en
Application granted granted Critical
Publication of KR102086248B1 publication Critical patent/KR102086248B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9536Search customisation based on social or collaborative filtering
    • 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/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • G06F16/322Trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • 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/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • 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/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • 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/31Indexing; Data structures therefor; Storage structures
    • G06F16/313Selection or weighting of terms for indexing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Primary Health Care (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Computational Linguistics (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

소셜 네트워크에서의 그래프 기반 이벤트 검출 방법, 및 소셜 네트워크에서의 그래프 기반 이벤트 검출 시스템이 개시된다. 본 발명의 일실시예에 따른 소셜 네트워크에서의 그래프 기반 이벤트 검출 방법은, 소셜 네트워크 시스템으로부터 수집한 소셜 데이터를 기반으로, 키워드 그래프를 구축하는 단계와, 상기 키워드 그래프를 클러스터링 하여, 복수의 후보 그래프로 분리하는 단계와, 상기 소셜 데이터에 연관되는 소셜 행위의 시간 별 변화량에 근거해, 상기 복수의 후보 그래프 각각으로 사용자 관심도를 산출하는 단계, 및 상기 사용자 관심도를 고려하여, 상기 복수의 후보 그래프 중에서, k개(상기 k는 자연수)의 후보 그래프를 이벤트 그래프로서 결정하는 단계를 포함한다.

Description

소셜 네트워크에서의 그래프 기반 이벤트 검출 방법, 및 소셜 네트워크에서의 그래프 기반 이벤트 검출 시스템{METHOD AND SYSTEM FOR DETECTING GRAPH BASED EVENT IN SOCIAL NETWORKS}
본 발명은 소셜 네트워크 환경에서 그래프 기반의 이벤트(토픽) 검출 기술에 연관되며, 사용자 관심도를 고려한 이벤트 검출의 정확도 향상에 연관된다.
기존에는 단어의 출현 빈도를 고려하여 이벤트(토픽)를 검출하는 기법이 연구되고 있으며, 특히, 이전에는 나타나지 않다가 순간적으로 다수 발생하는 단어를 이벤트로서 검출하는 기법이 연구되고 있다.
하지만, 기존의 연구에서는 단순히 키워드를 나열해 이벤트 검출 결과가 제공되고 있어, 사용자가 키워드를 보고 이벤트를 유추해야 하는 한계를 가질 수 있다.
또한, 그래프를 기반으로 하는 이벤트 검출 기법에서, 온톨로지를 이용하는 경우에는, 결과의 표현이 명확하다는 장점이 있지만, 온톨로지에 포함된 이벤트 만을 검출하게 되는 한계가 있을 수 있다. 즉 온톨로지에 포함되지 않은 이벤트에 대해서는 검출이 어려웠다.
한편, 온톨로지에 의존하지 않는 이벤트 검출 기법의 경우에는, 클러스터링 과정에서 사용자의 개입으로 인해 결과의 정확성을 보장하는데 어려움이 있었다.
또한, 이와 같이 단어의 출현 빈도수를 고려한 기존의 기법에서는 악의적으로 빈번하게 사용된 단어를 필터링 할 수 있는 방법이 없었다.
이에 따라, 단어의 출현 빈도 외에, 사용자 관심도를 반영하여 이벤트 검출의 정확도를 향상시킬 수 있는 기술이 요구되고 있다.
본 발명의 실시예는 공감, 재공유와 같은 소셜 행위의 변화량을 통해 소셜 데이터에 대한 사용자 관심도를 파악하여 이벤트 검출 시 고려함으로써, 기존 단어의 출현 빈도 수에 따른 이벤트 검출 기법의 정확도를 높이는 것을 목적으로 한다.
또한, 본 발명의 실시예는 소셜 네트워크에서 수집한 데이터를 전처리하여 키워드 그래프를 구축하고, 그래프에서 단어의 매개 중심성에 따라 중심 키워드와 의미적으로 다른 하나 이상의 후보 그래프를 클러스터링 하고, 소셜 행위의 변화량에 따른 사용자 관심도를 가중치로서 활용하여, 복수의 후보 그래프 중에서 신뢰성이 높은 이벤트 그래프를 선별하는 것을 목적으로 한다.
본 발명의 일실시예에 따른 소셜 네트워크에서의 그래프 기반 이벤트 검출 방법은, 소셜 네트워크 시스템으로부터 수집한 소셜 데이터를 기반으로, 키워드 그래프를 구축하는 단계와, 상기 키워드 그래프를 클러스터링 하여, 복수의 후보 그래프로 분리하는 단계와, 상기 소셜 데이터에 연관되는 소셜 행위의 시간 별 변화량에 근거해, 상기 복수의 후보 그래프 각각으로 사용자 관심도를 산출하는 단계, 및 상기 사용자 관심도를 고려하여, 상기 복수의 후보 그래프 중에서, k개(상기 k는 자연수)의 후보 그래프를 이벤트 그래프로서 결정하는 단계를 포함할 수 있다.
또한, 본 발명의 실시예에 따른 소셜 네트워크에서의 그래프 기반 이벤트 검출 시스템은, 소셜 네트워크 시스템으로부터 수집한 소셜 데이터를 기반으로, 키워드 그래프를 구축하는 구축부와, 상기 키워드 그래프를 클러스터링 하여, 복수의 후보 그래프로 분리하는 클러스터링부와, 상기 소셜 데이터에 연관되는 소셜 행위의 시간 별 변화량에 근거해, 상기 복수의 후보 그래프 각각으로 사용자 관심도를 산출하는 산출부, 및 상기 사용자 관심도를 고려하여, 상기 복수의 후보 그래프 중에서, k개(상기 k는 자연수)의 후보 그래프를 이벤트 그래프로서 결정하는 결정부를 포함할 수 있다.
본 발명의 일실시예에 따르면, 소셜 데이터를 그래프 기반으로 분석하여 주요 토픽으로서의 이벤트를 검출 시, 단어 간 동시 출현 빈도수와, 소셜 데이터에 대한 공감을 나타내는 소셜 행위 변화량을 통해 사용자 관심도를 파악하고, 이를 그래프의 가중치로서 반영하여, 검출되는 이벤트의 신뢰도와 정확도를 향상시킬 수 있다.
또한, 본 발명의 실시예에 따르면, 키워드 그래프를, 정점과 간선의 매개 중심성을 이용하여 자동적이고 반복적으로 클러스터링 함으로써, 사용자의 개입에 의해 일정한 결과를 제공하기 어려운 기존 기법의 한계를 해결할 수 있다.
또한, 본 발명의 실시예에 따르면, 광고성 게시글이나 악의적으로 다수 사용된 단어를 필터링하여 이벤트 검출 결과의 신뢰성과 정확도를 향상시킬 수 있다.
또한, 본 발명의 실시예에 따르면, 키워드 그래프를 기반으로 한 이벤트 검출 기법에 의해 이벤트 검출 결과를, 단어 단위가 아닌, 단어의 상호관계를 표현한 그래프로 표현하여 효과적으로 전달할 수 있다.
도 1은 본 발명의 일실시예에 따른 소셜 네트워크에서의 그래프 기반 이벤트 검출 시스템의 구성을 도시한 블록도이다.
도 2는 본 발명의 일실시예에 따른 소셜 네트워크에서의 그래프 기반 이벤트 검출 시스템의 전체 구조를 도시한 도면이다.
도 3은 본 발명의 일실시예에 따른 이벤트 검출 시스템에서, 소셜 데이터의 전처리 과정을 예시한 도면이다.
도 4는 본 발명의 일실시예에 따른 이벤트 검출 시스템에서, 키워드 그래프를 구축하는 과정을 예시한 도면이다.
도 5는 본 발명의 일실시예에 따른 이벤트 검출 시스템에서, 클러스터링 알고리즘의 일례를 도시한 도면이다.
도 6a 내지 도 6e는 본 발명의 일실시예에 따른 이벤트 검출 시스템에서, 키워드 그래프를 복수의 후보 그래프로 클러스터링 하는 과정을 예시한 도면이다.
도 7a 내지 도 7c는 본 발명의 일실시예에 따른 이벤트 검출 시스템에서, 복수의 후보 그래프를 검증하는 과정을 예시한 도면이다.
도 8은 본 발명의 일실시예에 따른 소셜 네트워크에서의 그래프 기반 이벤트 검출 방법의 순서를 도시한 흐름도이다.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 1은 본 발명의 일실시예에 따른 소셜 네트워크에서의 그래프 기반 이벤트 검출 시스템의 구성을 도시한 블록도이다.
도 1을 참조하면, 본 발명의 일실시예에 따른 소셜 네트워크에서의 그래프 기반 이벤트 검출 시스템(100)은, 구축부(110), 클러스터링부(120), 산출부(130) 및 결정부(140)를 포함하여 구성할 수 있다. 또한, 실시예에 따라, 이벤트 검출 시스템(100)은, 수집부(150), 데이터베이스(160), 연산부(170) 및 검증부(180)를 각각 추가하여 구성할 수 있다.
구축부(110)는 소셜 네트워크 시스템으로부터 수집한 소셜 데이터를 기반으로, 키워드 그래프(초기 그래프)를 구축한다.
일반적으로, 주요 토픽, 상황으로서의 이벤트를 포함하고 있는 소셜 데이터 내에는 관련있는 표현이나 부수적인 상황들이 함께 언급되므로, 구축부(110)는 소셜 데이터 내에 동시 출현한 단어들로 키워드 그래프를 구축할 수 있다.
일례로, 구축부(110)는 소셜 데이터에 대한 전처리 과정을 통해 추출한 단어(키워드)를 정점으로 하고, 소셜 데이터에서 동시 출현한 두 단어에 해당하는 정점 사이를 간선으로 연결하여 키워드 그래프를 구축할 수 있다.
이를 통해, 본 발명에 따르면, 그래프 기반의 이벤트 검출 시 중복 검출을 방지하여 효율성을 높일 수 있다.
실시예에 따라, 이벤트 검출 시스템(100)은, 수집부(150) 및 데이터베이스(160)를 각각 추가하여 구성할 수 있다.
수집부(150)는 일정 주기로 소셜 네트워크 시스템으로부터 소셜 데이터(예, '게시글') 및 상기 소셜 데이터에 연관되는 소셜 행위를 수집하고, 데이터베이스(160)에 기록할 수 있다.
또한, 데이터베이스(160)에는, 후술하는 결정부(140)에 의해 검출된 이벤트 그래프가, 상기 소셜 데이터 및 상기 소셜 행위와 연관되어 기록될 수 있다.
여기서 소셜 행위는 소셜 네트워크 시스템 상에서 소셜 데이터를 읽은 사용자들이 공감(예, '좋아요') 혹은 재공유('리트윗') 하는 행위를 지칭할 수 있다.
또한, 수집부(150)는 설정된 제1 시간 동안, 상기 소셜 데이터에 연관되는 소셜 행위의 수를 더 수집하여, 후술하는 산출부(130)에 의해 소셜 행위 수의 변화량을 계산하도록 할 수 있다.
구축부(110)는 수집된 소셜 데이터를 전처리 하여, 특수문자, URL, 조사, 신조어, 및 부사어에 속하거나 혹은 정해진 출현 빈도수를 만족하지 않는 단어를, 상기 소셜 데이터로부터 제거하고, 상기 전처리에 의해 추출되는 명사 및 동사 어근 중 적어도 하나의 단어를 정점에 매칭하고, 상기 정점 각각을, 매칭된 단어 간 동시 출현 여부에 따라 간선으로 연결하여, 상기 키워드 그래프를 구축할 수 있다.
일례로, 도 4를 참조하면, 구축부(110)는 해시태그 기능 혹은 재공유 기능 사용을 위한 특수문자와, 이모티콘, 느낌표, 마침표, 물음표 등과 같은 문장의 뉘앙스를 표현하는데 사용되는 특수문자를 소셜 데이터로부터 제거한 후, URL과 단어 간 문법적인 관계를 나타내는 '조사', '신조어', '부사어'를 불용어로 간주하여 소셜 데이터로부터 제거하고, 형태소 분석기를 통해, 이벤트 검출 시 주요 의미를 내포하는 명사와 동사 어근 중 적어도 하나의 단어(키워드)를 추출하여, 키워드 그래프(초기 그래프)를 구축할 수 있다.
이때, 구축부(110)는 추출된 단어 중, 소셜 데이터에서 정해진 횟수 미만으로 사용된 단어를, 이벤트와 관련되지 않는 우연히 사용된 것으로 추정해 키워드 그래프의 구축 전에 제거할 수 있다.
클러스터링부(120)는 상기 키워드 그래프를 클러스터링 하여, 복수의 후보 그래프로 분리한다.
즉, 클러스터링부(120)는 키워드 그래프를 이루는 정점 및 간선의 매개 중심성(betweenness centrality)에 따라 클러스터링을 수행하여, 키워드 그래프를, 의미적으로 다른 복수의 후보 그래프로 분리할 수 있다.
여기서, 매개 중심성은, 키워드 그래프에서 가능한 모든 최단 경로 중에서, 특정 정점 혹은 특정 간선이 포함되는 속성을 의미할 수 있다.
실시예에 따라, 이벤트 검출 시스템(100)은, 연산부(170)를 추가하여 구성할 수 있다.
연산부(170)는 상기 키워드 그래프를 이루는 정점 중, 두 정점 사이에 가능한 모든 최단경로를 연산하고, 상기 모든 최단경로 중, 특정 정점을 경유하게 되는 최단경로의 비율을, 상기 특정 정점에 대한 제1 매개 중심 속성값으로서 연산한다.
즉 연산부(170)는 키워드 그래프(610) 내의 각 정점 마다, 각 정점을 경유하는 최단 경로의 비율에 관한 제1 매개 중심 속성값(Cb vertex)을 산출하여, 중심 키워드의 선정 시 이용할 수 있다.
클러스터링부(120)는 상기 키워드 그래프에서, 상기 제1 매개 중심 속성값이 가장 높게 산출되는 정점에 매칭된 단어를, 중심 키워드로 선정할 수 있다. 이를 통해, 클러스터링부(120)는 사용자의 개입에 의해 일정하고 자동화된 클러스터링 결과를 도출하기 어려운 기존 기법의 한계점을 개선할 수 있다.
또한, 연산부(170)는 상기 모든 최단경로 중, 특정 간선을 경유하게 되는 최단경로의 비율을, 상기 특정 간선에 대한 제2 매개 중심 속성값으로서 연산할 수 있다.
즉 연산부(170)는 키워드 그래프(610) 내의 각 간선 마다, 각 간선을 경유하는 최단 경로의 비율에 관한 제2 매개 중심 속성값(Cb edge)을 산출해, 상기 중심 키워드를 기준으로 한 클러스터링 시 이용할 수 있다.
클러스터링부(120)는 키워드 그래프를, 상기 중심 키워드가 매칭된 정점 및 상기 정점과 간선으로 연결된 각 정점을 포함하는 제1 후보 그래프와, 상기 제1 후보 그래프를 제외한 제2 후보 그래프로 분리할 수 있다.
일례로, 클러스터링부(120)는 상기 키워드 그래프에서, 상기 제2 매개 중심 속성값이 임계치를 초과하는 간선을 상기 제2 매개 중심 속성값이 높은 순으로 제거하고, 상기 간선이 제거된 키워드 그래프를, 복수의 후보 그래프로서 반환할 수 있다.
실시예에 따라, 클러스터링부(120)는 상기 제2 후보 그래프에 대해, 중심 키워드의 선정과 분리 과정을 반복하여, 하나 이상의 후보 그래프로 분리할 수 있다.
예를 들어, 도 6을 참조하면, 클러스터링부(120)는 키워드 그래프(610)에서 Cb vertex이 가장 높은 정점('청주')을 찾아 '중심 키워드'로 선정하고, 상기 중심 키워드를 기준으로 2홉 이상 떨어진 정점들('천안', '저지대', '위험요소' 및 '신계리')을 찾아 '제거대상'(601)으로 설정할 수 있다.
클러스터링부(120)는 키워드 그래프(610) 내 각 간선의 Cb edge를 정규화 했을 때 95%의 신뢰구간을 벗어나는 간선(602, 605)을 차례로 절단한 후, 절단에 의해 연결이 해제된 두 정점에 각각 정점(603, 604, 606, 607)을 복제해 간선으로 연결할 수 있다.
클러스터링부(120)는 중심 키워드로 선정된 정점('청주')과, 제거대상(601)으로 설정된 정점들이 서로 다른 클러스터(620, 630)에 존재하므로, 두 클러스터(620, 630) 각각을 후보 그래프로서 반환할 수 있다.
이와 같이, 클러스터링부(120)는 정점과 간선의 매개 중심성을 이용하여 자동적이고 반복적으로 키워드 그래프를 클러스터링 할 수 있다.
결정부(140)는 사용자 관심도를 고려하여, 복수의 후보 그래프 중에서, k개(상기 k는 자연수)의 후보 그래프를 이벤트 그래프로서 결정한다.
여기서 k개는 사용자(관리자)에 의해 요청된 이벤트 그래프의 개수로서 사전에 입력될 수 있다.
결정부(140)는 이벤트 검출 결과를 키워드의 나열로 제공하여 사용자로 하여금 이벤트를 유추하도록 하는 기존 기법에 비해, 단어 간 상호관계를 나타낸 이벤트 그래프로서 이벤트 검출 결과를 제공함으로써, 결과의 정확도를 높일 수 있다.
또한, 결정부(140)는 복수의 후보 그래프 각각에 대한 사용자 관심도에 따라 이벤트 그래프를 결정 함으로써, 다수가 관심을 가지는 소셜 데이터로부터 우선적으로 이벤트를 검출할 수 있게 된다.
또한, 결정부(140)는 이벤트 그래프의 결정 시, 단어의 동시 출현 여부에 사용자 관심도를 더 고려하게 되므로, 광고성 게시글이나 악의적으로 다수 사용된 단어를 필터링 할 수 있어 이벤트 검출 결과의 신뢰성을 향상시킬 수 있다.
이하에서는 사용자 관심도를, 간선의 가중치로 반영한 복수의 후보 그래프로부터, 이벤트 그래프를 결정하는 과정을 상세히 설명한다.
산출부(130)는 상기 소셜 데이터에 연관되는 소셜 행위의 시간 별 변화량에 근거해, 상기 복수의 후보 그래프 각각으로 사용자 관심도를 산출한다.
일례로, 수집부(150)는 제1 시간 동안에, 상기 후보 그래프 내 두 정점에 매칭된 각 단어가 동시 출현한 소셜 데이터에 연관되는, 공감을 나타내는 소셜 행위의 수를, 상기 소셜 네트워크 시스템으로부터 수집하고, 산출부(130)는 상기 제1 시간 동안의 상기 소셜 행위의 수의 변화량을, 상기 제1 시간 이전의 제2 시간 동안의 상기 소셜 행위의 수를 기준으로 계산하고, 계산된 상기 소셜 행위의 수의 변화량을 이용하여, 상기 두 정점에 매칭된 각 단어에 대한 사용자 관심도를 산출할 수 있다.
일례로, 산출부(130)는 제1 시간 동안의 소셜 행위의 수를, 제1 시간 이전의, 상기 제1 시간과 같은 시간 간격의 제2 시간 동안 수집된 소셜 행위의 수로 나누어, 소셜 행위의 수의 변화량을 산출할 수 있다.
여기서, 제1 시간은 하나의 윈도우 슬라이딩에 해당하는 시간으로, 실시예에 따라, 상기 제1 시간은, 상기 제2 시간과 일부 겹치도록 설정될 수 있으며, 이 경우 단어의 증가량도 파악 가능하다.
다른 일례로, 산출부(130)는 상기 두 정점에 매칭된 각 단어가 동시 출현한 빈도수를 카운트 하고, 상기 빈도수를 더 이용하여, 상기 두 정점에 매칭된 각 단어에 대한 사용자 관심도를 산출할 수 있다.
즉, 산출부(130)는 후술하는 수학식 5에 근거하여, 두 단어가 동시에 출현한 게시글에 대한 소셜 행위와, 두 단어가 동시에 출현한 빈도수를 모두 고려해 사용자 관심도를 산출할 수 있다.
산출부(130)는 산출한 사용자 관심도를, 두 단어(정점)을 연결한 간선의 가중치로 부여하고, 후보 그래프에서 간선으로 연결된 두 정점 마다 상술의 과정을 반복할 수 있다.
구체적으로, 산출부(130)는 두 정점에 매칭된 각 단어에 대한 사용자 관심도를, 후보 그래프에서 각 단어를 연결한 간선에, 가중치로서 부여하고, 후보 그래프의 모든 간선에 부여되는 가중치를 합산하여, 복수의 후보 그래프 각각으로 이벤트 감지 계수를 계산할 수 있다.
여기서, 이벤트 감지 계수는, 복수의 후보 그래프 각각에 대해 이벤트 그래프로서의 가치가 있는지 판별하는 기준으로 이용될 수 있다.
정리하면, 산출부(130)는 소셜 행위의 변화량과, 단어들의 동시 출현 빈도수를 이용해 사용자 관심도를 산출하고 이를 각 후보 그래프에 가중치로서 반영하고, 결정부(140)는 가중치의 합산인 이벤트 감지 계수가 높은 순으로, 복수의 후보 그래프를 정렬하고, 정렬한 후보 그래프 중에서 사용자가 요청한 상위 k개의 후보 그래프를, 이벤트 그래프로서 선별할 수 있다.
즉, 결정부(140)는 후보 그래프의 이벤트 감지 계수가 높을수록 다수 사용자가 관심을 가지며 빈번히 사용된 것으로 판단하여 이벤트 그래프로서 결정할 수 있다.
실시예에 따라, 이벤트 검출 시스템(100)은, 복수의 후보 그래프 각각에 대해 검증을 실시하여 이벤트 그래프 검출의 정확도를 높이기 위해, 검증부(180)를 추가하여 구성할 수 있다.
검증부(180)는 후보 그래프를 이루는 각 정점과, 이웃한 정점이 소셜 데이터 내에서 실제로 동시 출현했는지 여부를 확인하여, 복수의 후보 그래프 각각을 검증한다.
일례로, 검증부(180)는 상기 후보 그래프에서 제1 매개 중심 속성값이 가장 높은 정점에 매칭되는 단어를, 중심 키워드로 선정하고, 상기 중심 키워드로부터 정해진 홉 수 이내의 정점들이, 상기 소셜 데이터 내에서 동시 출현하는지 여부를, 상기 홉 수를 증가시키면서 확인하고, 상기 확인 결과, 동시 출현하는 정점들을 상기 후보 그래프 내에 유지하고, 동시 출현하지 않는 정점들을 상기 후보 그래프로부터 삭제함으로써, 상기 후보 그래프를 검증할 수 있다.
예를 들어, 도 7을 참조하면, 검증부(180)는 Cb vertex가 높은 정점('청주')을 찾아 중심 키워드로 선정하고, 도 7a과 같이 중심 키워드로부터 1홉 이내의 정점들('홍수', '무심천', '명암저수지', '범람', '대피' 및 '문자')을 2개씩 쌍으로 묶어, 소셜 데이터에서 동시 출현하는지 여부를 확인할 수 있다.
또한, 검증부(180)는 홉 수를 증가시켜, 도 7b와 같이 중심 키워드로부터 2홉 이내의 정점들에 대하여 동시 출현 여부를 확인하고, 중심 키워드인 정점(청주)와 간선이 없는(동시 출현한 적이 없는) 정점('천안') 및 정점('저지대')을 각각 후보 그래프에서 제거할 수 있다.
이처럼, 검증부(180)는 도 6에서 클러스터링 과정에서 간선의 절단에 따라 복제된 정점('천안')과 정점('저지대')을 최종 이벤트 그래프의 결정 전에 각 후보 그래프에서 제거하여, 정확한 이벤트 그래프의 검출이 이루어지도록 할 수 있다.
결정부(140)는 검증이 완료된 후보 그래프를 대상으로, 상기 이벤트 그래프로서 결정할 후보 그래프를 선별 함으로써, 검출되는 이벤트 그래프의 정확도를 향상시킬 수 있다.
이와 같이, 본 발명의 일실시예에 따르면, 소셜 데이터를 그래프 기반으로 분석하여 주요 토픽으로서의 이벤트를 검출 시, 단어 간 동시 출현 빈도수와, 소셜 데이터에 대한 공감을 나타내는 소셜 행위 변화량을 통해 사용자 관심도를 파악하고, 이를 그래프의 가중치로서 반영하여, 검출되는 이벤트의 신뢰도와 정확도를 향상시킬 수 있다.
도 2는 본 발명의 일실시예에 따른 소셜 네트워크에서의 그래프 기반 이벤트 검출 시스템의 전체 구조를 도시한 도면이다.
도 2를 참조하면, 본 발명의 일실시예에 따른 소셜 네트워크에서의 그래프 기반 이벤트 검출 시스템(200)은, 데이터 수집부(210), 데이터 전처리부(220), 이벤트 정보 추출부(230) 및 이벤트 검출부(240)를 포함하여 구성할 수 있다.
데이터 수집부(210)는 소셜 네트워크 시스템(201)으로부터 이벤트 검출에 필요한 소셜 데이터를 수집하고, 수집한 소셜 데이터를 데이터베이스(DB)에 저장하는 과정을 수행한다.
데이터 수집부(210)는 일례로 트위터, 페이스북, 인스타그램, 카카오톡, 라인 등과 같은 다양한 소셜 네트워크 시스템(201)과 연계하여, 소셜 사용자들이 작성해 공유한 게시글이나 프로필, 사진, 동영상 등의 소셜 데이터를 주기적으로 수집할 수 있다.
또한, 데이터 수집부(210)는 소셜 데이터를 수집 시, 해당 소셜 데이터와 연관되는 소셜 행위의 수를 더 수집할 수 있다.
일례로, 데이터 수집부(210)는 '좋아요!'와 같이 공감을 나타내거나, '리트윗'과 같이 재공유를 나타내는 긍정적인 소셜 행위의 수를 정해진 시간 단위로 수집할 수 있다.
데이터 전처리부(220)는 키워드 그래프(초기 그래프)를 구축하기 위해, 수집한 소셜 데이터를 전처리하는 과정을 수행한다.
우선, 데이터 전처리부(220)는 수집한 소셜 데이터에 포함되는 특수문자, URL 및 불용어 중 적어도 하나의 단어를 제거할 수 있다. 예를 들면, 데이터 전처리부(220)는 체언에 붙어 다른 단어와의 문법적인 관계를 나타내는 '조사'와, 'ㅋㅋㅋ'와 같은 신조어, '그냥', '대박' 등과 같은 부사어를 불용어로 간주하여 제거할 수 있다.
다음으로, 데이터 전처리부(220)는 형태소 분석기를 통해, 이벤트 검출 시 주요 의미를 내포하는 명사와 동사 어근 중 적어도 하나의 단어를 추출할 수 있다.
이후, 데이터 전처리부(220)는 상기 소셜 데이터에서 정해진 횟수 미만으로 사용된 단어를 필터링하여, 이벤트와 관련되지 않는 우연히 사용된 것으로 추정되는 단어를 키워드 그래프의 구축 전에 제거할 수 있다.
이벤트 정보 추출부(230)는 상기 전처리 과정을 통해 추출한 단어를 이용하여 키워드 그래프(초기 그래프)를 구축하고, 키워드 그래프를 클러스터링 하여 복수의 후보 그래프로 분리하는 과정을 수행한다.
먼저, 이벤트 정보 추출부(230)는 상기 전처리 과정을 통해 추출한 단어(키워드)를 정점으로 하고, 소셜 데이터에서 동시 출현한 두 단어에 해당하는 정점 사이를 간선으로 연결하여 키워드 그래프를 구축할 수 있다.
일반적으로, 주요 토픽, 상황으로서의 이벤트를 포함하고 있는 소셜 데이터 내에는 관련있는 표현이나 부수적인 상황들이 함께 언급될 수 있다. 이에 따라, 이벤트 정보 추출부(230)는 소셜 데이터 내에 동시 출현한 단어들로 키워드 그래프를 구축함으로써, 중복적인 이벤트 검출을 방지하고, 그래프 기반의 이벤트 검출이 효율적으로 수행되도록 할 수 있다.
다음으로, 이벤트 정보 추출부(230)는 키워드 그래프를 이루는 정점 및 간선의 매개 중심성(betweenness centrality)에 따라 클러스터링을 수행하여, 키워드 그래프를, 의미적으로 다른 복수의 후보 그래프로 분리할 수 있다.
즉, 이벤트 정보 추출부(230)는 정점의 매개 중심성을 통해 이벤트를 나타내는 중심 키워드를 찾고, 간선의 매개 중심성을 이용하여 의미적으로 다른 후보 이벤트 그래프를 찾아 분리하는 방식으로 클러스터링을 수행할 수 있다.
여기서, 매개 중심성은, 키워드 그래프에서 가능한 모든 최단 경로 중에서, 특정 정점 혹은 특정 간선이 반드시 포함되는 경우를 의미할 수 있다.
따라서, 정점의 매개 중심성(제1 매개 중심 속성값)이 높다는 것은, 키워드 그래프에서 가능한 모든 최단 경로에서 해당 정점을 경유하는 비율이 높다는 것으로서, 다른 단어와 함께 사용되는 비율이 높아 소셜 데이터에서 중심이 되는 키워드일 가능성이 높다는 것을 의미할 수 있다.
즉, 이벤트 정보 추출부(230)는 매개 중심성이 가장 높은 정점(단어)를, 이벤트를 나타낼 확률이 높은 중심 키워드로 선정하고, 중심 키워드과 동시 출현한 단어(중심 키워드와 간선으로 연결된 정점)를 클러스터링 할 수 있다. 이를 통해 사용자의 개입에 의해 일정하고 자동화된 클러스터링 결과를 도출하기 어려운 기존 기법의 한계점을 개선할 수 있다.
또한, 간선의 매개 중심성(제2 매개 중심 속성값)이 높다는 것은, 키워드 그래프에서 가능한 모든 최단 경로에서 해당 간선을 경유하는 비율이 높다는 것으로서, 의미적으로 서로 다른 이벤트를 상징하는 두 후보 그래프를 연결하는 간선일 가능성이 높다는 것을 의미할 수 있다.
이를 이용하여, 이벤트 정보 추출부(230)는 상기 클러스터링 과정에서, 매개 중심성이 임계치를 초과하는 간선을 차례로 절단하여, 키워드 그래프를, 중심 키워드를 기준으로, 의미적으로 상이한 하나 이상의 후보 그래프로 분리할 수 있다.
끝으로, 이벤트 정보 추출부(230)는 '좋아요'와 같이 공감을 나타내거나, '리트윗'과 같이 재공유를 나타내는 소셜 행위의 시간 별 변화량과, 두 단어가 소셜 데이터 내에 동시 출현한 빈도수를 고려하여, 사용자 관심도를 산출하고, 이를 복수의 후보 그래프에서 두 단어(정점)를 잇는 간선에 가중치로서 부여할 수 있다.
이하에서는, 초기 그래프의 구축과, 후보 그래프로의 클러스터링 및 사용자 관심도를 반영하는 과정을 상세히 설명한다.
먼저, 이벤트 정보 추출부(230)는 전처리 과정을 거친 키워드(단어)를 이용하여 각 정점을 생성하고, 소셜 데이터에서 동시 출현한 두 단어의 정점을 각각 간선으로 연결하여 초기 그래프를 생성할 수 있다. 즉, 이벤트 정보 추출부(230)는 소셜 데이터 내에서 한 번 이상 동시에 사용된 두 정점(키워드)을 간선으로 연결할 수 있다.
구체적으로, 이벤트 정보 추출부(230)는 시간 t에 해당하는 하나의 윈도우 슬라이드 간격을 기준으로, 정점의 집합 V, 정점을 잇는 간선의 집합 E, 및 정점 사이의 간선에 부여된 가중치의 집합 W으로 구성되는 키워드 그래프 Gt를 구축할 수 있다.
이후, 이벤트 정보 추출부(230)는 초기 그래프의 각 정점에 대해, 정점의 출현 빈도수(소셜 데이터에서 단어가 사용된 횟수)와, 제1 매개 중심 속성값을 연산하여, 클러스터링 과정에서 활용할 수 있다.
구체적으로, 이벤트 정보 추출부(230)는 키워드 그래프 Gt에서 키워드(단어)를 나타내는 각 정점 Vi 마다, 출현 빈도수(freq) 및 제1 매개 중심 속성값(Cb vertex)을 연산하고, 이를 이용하여 초기 그래프를 클러스터링 할 수 있다.
일례로, 이벤트 정보 추출부(230)는 수학식 1에 기초하여, 각 정점의 제1 매개 중심 속성값(Cb vertex)을 연산할 수 있다.
Figure 112018093571008-pat00001
수학식 1에서, σ(s, t)는 정점 s와 정점 t 사이의 모든 최단 경로의 수를 나타내고, σ(s, t|v)는 모든 최단 경로 중 정점 v를 반드시 경유하는 최단 경로의 수를 나타낼 수 있다.
즉, 제1 매개 중심 속성값은 키워드 그래프에 존재하는 모든 최단 경로 중 해당 정점이 얼마나 많이 그 최단 경로에 속하는지에 대한 비율을 나타낼 수 있다.
다시 말해, 매개 중심성이 높다는 것은, 다른 키워드들과 함께 언급된 비율이 높다는 것으로, 이벤트와 관련된 키워드 중에서 중심이 되는 키워드일 가능성이 높다는 것을 의미할 수 있다.
이에 따라, 이벤트 정보 추출부(230)는 정점의 매개 중심성(제1 매개 중심 속성값)을 활용하여 중심 키워드를 찾고, 그 중심 키워드를 중심으로 클러스터링을 진행할 수 있다.
이처럼, 이벤트 정보 추출부(230)는 초기에 생성된 키워드 그래프에서 검출할 후보 이벤트 그래프를 찾기 위해 클러스터링을 수행 시, 정점과 간선의 매개 중심성을 이용함으로써, 사용자로부터 찾고자 하는 이벤트 수를 입력받아 클러스터링을 수행하는 기존 기법에서의 사용자의 요청에 따라 후보 그래프의 형태가 달라지는 문제점을 해결하고, 사용자의 개입을 최소화하여 일관성 있는 클러스터링 결과를 도출할 수 있다.
다음으로, 이벤트 정보 추출부(230)는 키워드 그래프 Gt에서 각 간선 Ei에 대해, 각 간선이 연결하는 두 정점(키워드)의 소셜 데이터 내 동시 출현 빈도수와, 상기 소셜 데이터에 대한 소셜 행위 변화량을 고려해, 사용자 관심도를 산출하고, 산출한 사용자 관심도를, 가중치 Wi로서 부여할 수 있다.
일반적으로 소셜 행위는 더 많은 사용자들에게 정보를 전파할 뿐만 아니라 사용자의 관심을 표현할 수 있는 수단이 될 수 있으므로, 이벤트 정보 추출부(230)는 소셜 행위의 변화량을 통해 사용자 관심도를 이벤트 검출 시 반영할 수 있고, 무분별하게 올라온 스팸문구나 악의적인 글들을 이벤트 검출 결과에서 제외하여, 이벤트 검출의 신뢰성을 향상시킬 수 있다.
이벤트 정보 추출부(230)는 수학식 2에 기초하여, 소셜 행위의 변화량과 두 단어의 동시 출현 빈도수를 이용하여 사용자 관심도를 계산할 수 있으며, 사용자 관심도를 두 키워드(정점)를 잇는 간선에 가중치로 부여할 수 있다.
여기서, 소셜 행위는, 소셜 네트워크 시스템(201) 마다 소셜 데이터에 대해 사용자의 의견이나 관심을 표현하는 방식이 다를 수 있지만, 소셜 데이터에 공감('좋아요!')을 나타내거나, 소셜 데이터를 재공유('리트윗')하는 행위로 예시될 수 있다. 즉, 이벤트 정보 추출부(230)는 예컨대, 게시글의 공감 수 혹은 재공유 수에 대한 변화량을 통해 사용자 관심도를 계산할 수 있다.
Figure 112018093571008-pat00002
수학식 2에서, Nt RT 는 t 시간(제1 시간) 동안 단어 i와 단어 j가 동시 출현한 게시글에 대한 재공유('리트윗') 수를 의미하고, Nt Like는 t 시간(제1 시간) 동안 단어 i와 단어 j가 동시 출현한 게시글에 대한 공감('좋아요') 수를 의미할 수 있다.
또한, Nt - 1 RT 는 t시간 보다 이전의 t-1 시간(제2 시간)에 단어 i와 단어 j가 동시 출현한 게시글에 대한 재공유('리트윗') 수를 의미하고, Nt - 1 Like는 t시간 보다 이전의 t-1 시간(제2 시간)에 단어 i와 단어 j가 동시 출현한 게시글에 대한 공감('좋아요') 수를 의미할 수 있다.
이벤트 정보 추출부(230)는 수학식 2에서 계산된 소셜 행위의 변화량을 정규화하고, 수학식 3을 적용하여, 변화량(변화율)에 따라 부여할 가중치를 조절할 수 있다. 수학식 3에서, μ와 β는 가중치의 범위를 조절하기 위한 임의의 상수이고, Si,j는 수학식 2에서 계산된 값일 수 있다.
Figure 112018093571008-pat00003
또한, 이벤트 정보 추출부(230)는 수학식 4에 기초하여, 두 단어가 동시에 출현한 빈도수를 이용해 가중치를 부여할 수 있다. 수학식 4에서, frequencyi , j는 두 단어 i와 j가 동시에 출현한 빈도수를 의미할 수 있다.
Figure 112018093571008-pat00004
최종적으로, 이벤트 정보 추출부(230)는 수학식 5에 기초하여, 두 단어가 동시에 출현한 게시글에 대한 사용자 관심도와, 두 단어가 동시에 출현한 빈도수를 모두 고려하여, 후보 그래프에서 두 단어(정점)를 연결한 간선 마다 가중치를 부여할 수 있다.
Figure 112018093571008-pat00005
수학식 5에서, α는 사용자 관심도와 두 단어의 출현 빈도수의 분포에 따라 조정되는 임의의 상수이고, NSi , j는 수학식 3에서 계산된 값으로서 소셜 행위 변화량에 따른 가중치를 의미하고, Fi , j는 수학식 4에서 계산된 값으로서 동시 출현 빈도수에 따른 가중치를 의미할 수 있다.
이벤트 정보 추출부(230)는 후보 이벤트 그래프의 모든 간선에 수학식 5를 이용하여 가중치를 부여하고, 부여된 가중치는 이벤트 검출부(240)에서 이벤트 검출 시 활용할 수 있다.
여기서, n개의 후보 그래프는 각각 이벤트를 포함할 수 있으나, 사용자 관심도가 보다 높고, 빈번하게 출현하는 후보 그래프를 우선적으로 이벤트 그래프로서 검출할 수 있어야 하므로, 복수의 후보 그래프에 대해 이벤트로서의 가치를 식별할 필요가 있으며, 이때, 수학식 5에서 계산된 가중치를 활용할 수 있다.
즉, 후보 그래프의 간선 Ei 마다 부여된 가중치는, 이벤트 그래프로서의 가치가 있는 후보 그래프를 선별하는 기준으로 사용될 수 있다.
이벤트 검출부(240)는 상기 간선에 부여된 가중치를 활용하여, 복수의 후보 그래프 중에서 이벤트 그래프를 식별하고, 식별한 이벤트 그래프에 대해 검증하는 과정을 수행한다.
먼저, 이벤트 검출부(240)는 이벤트로서의 가치 판별을 위해, 복수의 후보 이벤트 그래프 별로 이벤트 감지 계수를 계산하고, 이벤트 감지 계수가 큰 순으로 순위를 매겼을 때, 상위에 위치하는 사용자가 요청한 k개의 후보 그래프를, 이벤트 그래프로서 식별할 수 있다.
일례로, 이벤트 검출부(240)는 수학식 6에 기초하여, 각 후보 그래프에 대한 이벤트 감지 계수 Dt를 계산하고, 사용자가 요청한 개수의 이벤트 그래프를 결과로 도출할 수 있다.
Figure 112018093571008-pat00006
수학식 6에서 i 와 j 는, 후보 그래프에 속하는 각 정점을 나타내고, Wi , j는 각 정점 i와 j를 연결한 간선의 가중치를 나타내고, Dt는 사용자 관심도와 동시 출현 빈도수를 고려해 후보 그래프의 각 간선에 부여된 가중치의 합으로서, 후보 그래프에 속하는 단어들의 사용자 관심도를 수식화 한 것이다.
이벤트 검출부(240)는 후보 그래프의 이벤트 감지 계수가 클수록, 소셜 행위가 많아 다수 사용자의 관심을 야기하고, 동시 출현 빈도수가 높아 소셜 데이터에서 언급된 양도 많은 것으로 볼 수 있어, 이벤트로서의 가치가 있다고 판단할 수 있다.
이처럼, 이벤트 검출부(240)는 단어의 출현 빈도수 만을 고려하는 기존 기법과 달리, 사용자 관심도를 함께 고려하여 이벤트 그래프를 검출함으로써, 결과의 신뢰성을 향상시킬 수 있다.
한편, 이벤트 그래프에 속한 정점 중 클러스터링 과정에서 불필요하게 추가되었거나 주제를 벗어나는 단어가 포함되어 있을 수 있기 때문에, 이벤트 검출부(240)는 이벤트 그래프를 검출하기 전에 검증을 수행하여 이벤트 검출 결과의 정확도를 높일 수 있다.
일례로, 이벤트 검출부(240)는 후보 그래프에 포함된 정점 중 제1 매개 중심 속성값(Cb vertex)이 가장 높은 중심 키워드를 찾고, 중심 키워드로부터 1홉 이내로 연결된 정점들을 2개씩 쌍으로 묶은 후, 쌍으로 묶인 각 정점의 키워드가, 하나의 게시글(소셜 데이터)에서 동시에 출현했는지 여부를 확인할 수 있다.
이벤트 검출부(240)는 동시 출현이 확인된 각 정점을 후보 그래프에 유지하고, 동시 출현되지 않은 정점을, 후보 그래프의 주제와 벗어나거나 혹은 클러스터링 과정에서 추가(복제)된 정점으로 간주하여, 후보 그래프로부터 제거할 수 있다.
또한, 이벤트 검출부(240)는 중심 키워드로부터 2홉 이상 떨어진 정점들의 경우, 해당 정점으로부터 중심 키워드까지의 최단 경로 상에 위치한 다른 정점과의 동시 출현 여부를 확인할 수 있다.
이 경우에도, 이벤트 검출부(240)는 한 정점에 매칭된 단어에 대해, 다른 정점들과의 동시 출현 여부를 각각 확인했을 때, 임계치(예컨대 30%) 이상의 확률로, 다른 단어와 동시에 출현하지 않은 경우에는, 해당 정점을 후보 그래프로부터 제거할 수 있다.
이와 같이, 이벤트 검출부(240)는 복수의 후보 그래프에 대해, 모든 단어가 유의미한 것인지 검증하는 단계를 거쳐, 신뢰성 높은 이벤트 그래프를 도출할 수 있다.
이와 같이, 본 발명에 따르면, 공감, 재공유와 같은 소셜 행위의 변화량과, 단어 간 동시 출현 빈도수에 따라, 소셜 데이터에 대한 사용자 관심도를 파악하여 이벤트 검출시 고려함으로써, 광고성 게시글이나 악의적으로 사용된 단어를 용이하게 필터링하여 이벤트 검출 결과의 신뢰도를 높일 수 있고, 사용자의 개입 없는 자동화된 클러스터링에 의해 이벤트 검출 결과를 단어 간 상호관계를 나타내는 그래프 형태로 제공하여 정확도를 높일 수 있다.
도 3은 본 발명의 일실시예에 따른 이벤트 검출 시스템에서, 소셜 데이터의 전처리 과정을 예시한 도면이다.
도 3을 참조하면, 본 발명의 일실시예에 따른 이벤트 검출 시스템에서 소셜 네트워크 시스템으로부터 수집한 소셜 데이터에는, 주요 단어로서의 이벤트에 관한 정보 외에도, 해시태그 기능 혹은 재공유 기능 사용을 위한 특수문자가 사용될 수 있다.
소셜 네트워크 시스템 중 '트위터'로 예로 들면, 특정 사용자를 언급하여 대화하고자 할 때 사용하는 멘션(Mention) 기능, 타 사용자의 의견을 공유하거나 의견을 덧붙일 때 사용하는 리트윗(Retweet) 기능, 그리고 다양한 사람들이 특정 주제로 대화하기 쉽도록 색인할 때 사용하는 해시태그(Hashtag) 기능 등을 사용하기 위해 필요한 특수문자(@, #)가 소셜 데이터 내에는 다수 포함될 수 있다.
뿐만 아니라, 소셜 데이터에는 이모티콘과 느낌표, 마침표, 물음표 등과 같은 문장의 뉘앙스를 표현하는데 사용되는 특수문자와, URL과 같은 불필요한 단어도 다수 포함될 수 있다.
또한, 소셜 데이터에는 명사와 같은 체언에 붙어, 다른 단어와의 문법적인 관계를 나타내는 '조사'와, 'ㅋㅋㅋ'와 같은 신조어, '그냥'과 같은 부사어를 포함해 큰 의미가 없는 불용어들이 포함되어 있을 수 있다.
이에 따라, 이벤트 검출 시스템은, 특수문자와 URL, 불용어와 같은 이벤트 검출에 불필요한 단어를 소셜 데이터로부터 제거한 후, 명사(혹은 동사 어근)에 해당하는 단어를 추출하고, 추출한 단어 중에서, 정해진 출현 빈도수를 만족하지 않는 단어를 필터링 하는 전처리 과정을 수행하여, 이벤트에 관련된 정보만을 정제할 수 있다.
도 3의 (ⅰ)에는 소셜 네트워크 시스템으로부터 수집한 소셜 데이터('게시글')의 일례가 도시되어 있다.
도 3의 (ⅱ)를 참조하면, 이벤트 검출 시스템은, 일차적으로 상기 소셜 데이터에 포함되는 SNS기능을 이용하기 위한 특수문자('#')와, 특수문자 '[' 및 URL('http://omn.kr/oluj')를 제거할 수 있다.
특수문자 제거 과정을 수행한 후, 이벤트 검출 시스템은, 각 문장에 대해 자연어 처리 과정을 수행하여 분석에 필요한 단어(키워드)를 추출할 수 있다.
도 3의 (ⅲ)을 참조하면, 이벤트 검출 시스템은, '-고', '-는'과 같은 조사와, '등'과 같은 큰 의미가 없는 불용어를 제거한 상태에서, 형태소 분석기의 명사 추출 기능을 활용해 '포항, '지진'과 같은 명사 및 '쏟아지-', '부서지-'와 같은 동사 어근을 포함한 단어를 추출할 수 있다.
실시예에 따라, 이벤트 검출 시스템은, 정해진 출현 빈도수(예, '2회')를 만족하지 않는 단어에 대해, 우연히 사용된 단어일 가능성이 높다고 판단하여, 낮은 빈도수를 갖는 단어를 추가적으로 제거함으로써, 이벤트 검출에 부적합한 단어를 필터링하고, 추후 키워드 그래프 구축의 처리 속도를 높일 수 있다.
이와 같이, 이벤트 검출 시스템은, 소셜 데이터에 대한 전처리 과정을 통해 의미 없는 단어들이 이벤트로서 검출되는 현상을 방지할 수 있다.
도 4는 본 발명의 일실시예에 따른 이벤트 검출 시스템에서, 키워드 그래프를 구축하는 과정을 예시한 도면이다.
도 4를 참조하면, 본 발명의 일실시예에 따른 이벤트 검출 시스템은, 도 4의 (ⅰ)에 도시된 소셜 데이터로부터 특수문자, 부사어와 같은 불용어를 제거하여, 도 3의 (ⅱ)와 같이 전처리 할 수 있다.
이벤트 검출 시스템은, 상기 전처리 과정을 거친 도 3의 (ⅱ)로부터 추출한 단어들('홍수', '청주', '대피', '범람', '재난' 등)을 정점으로 생성하고, 한 문장 내에서 동시 출현한 두 정점을 간선으로 연결할 수 있다.
예를 들면, 이벤트 검출 시스템은, 한 게시글('Tw1') 내에서 동시 출현한 단어('청주'와 '준비')를 간선으로 연결하고, 한 게시글('Tw1')에 사용된 단어('준비')와, 다른 게시글('Tw2')에 사용된 단어('범람')를 간선으로 연결하지 않음으로써, 단어의 단순한 나열이 아닌, 단어 간 상호 관계를 그래프 형태로 나타낼 수 있다.
이어서, 이벤트 검출 시스템은, 키워드 그래프 내 각 정점 Vi마다, 출현 빈도수('freq') 및 매개 중심 속성값('Cb')을 도 3의 (ⅳ)와 같이 산출하여, 후술하는 도 5에서 키워드 그래프를 클러스터링 시 활용할 수 있다.
예를 들어, 이벤트 검출 시스템은, 최근 일주일간 소셜 네트워크 시스템 내에서 단어('홍수')가 '156회' 출현하고, 키워드 그래프 내에서 가능한 모든 최단 경로 중, 단어('홍수')를 경유한 최단 경로의 비율이 '0.43'이면, 단어('홍수')에 대한 속성값을, '{freq : 156, : Cb: 0.43}'과 같이 산출할 수 있고, 이를 키워드 그래프 내 모든 정점에 대해 반복할 수 있다.
도 5는 본 발명의 일실시예에 따른 이벤트 검출 시스템에서, 클러스터링 알고리즘의 일례를 도시한 도면이다.
도 5를 참조하면, 본 발명의 일실시예에 따른 이벤트 검출 시스템은, 초기 그래프(키워드 그래프) 내 모든 정점에 대해, 제1 매개 중심 속성값(Cb vertex)을 산출하고, 제1 매개 중심 속성값(Cb vertex)이 가장 높게 산출되는 정점의 단어를, 중심 키워드로 선정할 수 있다.
다음으로, 이벤트 검출 시스템은, 중심 키워드를 기점으로 2홉 이상 떨어진 정점들의 경우, 한 게시글(혹은 한 문장) 내에서 동시 출현하지 않았기 때문에 관련성이 없는 키워드일 가능성이 높으므로, 제거대상으로서 설정할 수 있다.
다음으로, 이벤트 검출 시스템은, 키워드 그래프 내 모든 간선에 대해, 제2 매개 중심 속성값(Cb edge)을 산출하여, 서로 다른 클러스터(후보 그래프)의 존재를 확인할 수 있다. 두 클러스터를 잇는 간선은 최단경로를 구성할 때 불가피하게 항상 거쳐야하는 경로로 포함되기 때문에 높은 값을 가질 수 있다.
다음으로, 이벤트 검출 시스템은, 모든 간선의 Cb edge가 정규분포를 따른다고 가정할 때, Cb edge이 임계치 '(m+2σ) 값'을 벗어나는 간선이 있는 경우와, 임계치를 벗어나는 간선이 없는 경우로 나누어 클러스터링을 진행할 수 있다.
먼저, 임계치(범위)를 벗어나는 간선이 있을 경우, 이벤트 검출 시스템은, 가장 높은 Cb edge를 갖는 간선을 절단하고, 절단한 간선과 연결된 두 정점 각각에, 새로운 간선을 생성해, 절단된 간선으로 인해 연결이 해제된 정점을 각각 복제하는 과정을 반복하여 수행할 수 있다.
상기 과정의 반복에 따라, 임계치를 벗어나는 간선이 없게 되면, 이벤트 검출 시스템은, 제거대상으로 설정된 정점 중, 상기 중심 키워드와 같은 클러스터에 있는 정점을 제거할 수 있다.
이를 통해, 제거대상으로 설정된 정점이 모두 상기 중심 키워드와 다른 클러스터에 존재하게 되면, 이벤트 검출 시스템은, 해당 정점들에 대해 제거대상을 설정 해제할 수 있다.
최종적으로, 이벤트 검출 시스템은, 상기 중심 키워드가 속한 클러스터와, 제거대상을 설정 해제한 정점이 속한 클러스터 각각을, 후보 그래프로서 반환할 수 있다.
도 6a 내지 도 6e는 본 발명의 일실시예에 따른 이벤트 검출 시스템에서, 키워드 그래프를 복수의 후보 그래프로 클러스터링 하는 과정을 예시한 도면이다.
도 6a 내지 도 6e를 참조하면, 본 발명의 일실시예에 따른 이벤트 검출 시스템은, 도 5에 도시된 클러스터링 알고리즘에 기초하여 키워드 그래프(초기 그래프)(610)를 복수의 클러스터(620, 630)로 분리할 수 있다.
도 6a에는, 소셜 데이터를 전처리하여 추출한 단어들을 정점으로 하고, 상기 소셜 데이터에서 동시에 출현한 두 단어를 간선으로 연결하여 구축한 키워드 그래프(610)가 도시되어 있다.
이벤트 검출 시스템은, 키워드 그래프(610) 내의 각 정점 마다, 각 정점을 경유하는 최단 경로의 비율에 관한 제1 매개 중심 속성값(Cb vertex)을 산출하여, 중심 키워드의 선정 시 이용할 수 있다.
또한, 이벤트 검출 시스템은, 키워드 그래프(610) 내의 각 간선 마다, 각 간선을 경유하는 최단 경로의 비율에 관한 제2 매개 중심 속성값(Cb edge)을 산출해, 상기 중심 키워드를 기준으로 한 클러스터링 시 이용할 수 있다.
우선, 이벤트 검출 시스템은, 키워드 그래프(610)에서 Cb vertex이 가장 높은 정점('청주')을 찾아 '중심 키워드'로 선정할 수 있다.
다음으로, 이벤트 검출 시스템은, 도 6b에 도시된 것처럼, 상기 중심 키워드를 기준으로 2홉 이상 떨어진 정점들('천안', '저지대', '위험요소' 및 '신계리')을 찾아 '제거대상'(601)으로 설정할 수 있다.
다음으로, 이벤트 검출 시스템은, 도 6c및 도 6d에 도시된 것처럼, 키워드 그래프(610) 내 각 간선의 Cb edge를 정규화 했을 때 95%의 신뢰구간을 벗어나는 간선(602, 605)이 존재하는지 확인하여, 서로 다른 클러스터(620, 630)의 존재를 확인할 수 있다.
이는, 두 클러스터(620, 630)를 잇는 간선(602, 605)은, 키워드 그래프(610)에서 최단경로를 구성할 때 불가피하게 항상 거쳐야하는 경로로 포함되기 때문에 높은 값을 가지게 되기 때문이다.
이벤트 검출 시스템은, Cb edge가 높은 순으로 먼저 간선(602)를 절단한 후, 절단에 의해 연결이 해제된 두 정점('홍수', '천안')에 각각 정점(603, 604)을 복제해 간선으로 연결할 수 있다.
즉 이벤트 검출 시스템은 정점('홍수')에 간선을 생성하여 정점('천안')을 복제한 정점(603)과 연결하고, 정점('천안')에도 간선을 생성해, 정점('홍수')을 복제한 정점(604)과 연결할 수 있다.
마찬가지로, 이벤트 검출 시스템은 간선(605)를 절단한 후, 도 6e와 같이 두 정점('홍수', '저지대') 각각에 정점(606, 607)을 복제해 간선으로 연결할 수 있다.
상술과 같이 클러스터링이 실시된 도 6e에서, 중심 키워드로 선정된 정점('청주')과, 제거대상(601)으로 설정된 정점들이 서로 다른 클러스터(620, 630)에 존재하므로, 이벤트 검출 시스템은 두 클러스터(620, 630) 각각을 후보 그래프로서 반환할 수 있다.
도 7a 내지 도 7c는 본 발명의 일실시예에 따른 이벤트 검출 시스템에서, 복수의 후보 그래프를 검증하는 과정을 예시한 도면이다.
도 7a 내지 도 7c를 참조하면, 본 발명의 일실시예에 따른 이벤트 검출 시스템은, 도 6에서 분리된 클러스터(도 6의 620, 630)에 대해 검증을 실시할 수 있다.
이벤트 검출 시스템은, 클러스터(도 6의 620)에서 Cb vertex가 높은 정점('청주')을 찾아 중심 키워드로 선정할 수 있다.
우선, 이벤트 검출 시스템은, 도 7a과 같이 중심 키워드로부터 1홉 이내의 정점들('홍수', '무심천', '명암저수지', '범람', '대피' 및 '문자')을 2개씩 쌍으로 묶어, 소셜 데이터에서 동시 출현하는지 여부를 확인해 상기 검증할 수 있다.
예를 들어, 이벤트 검출 시스템은, 1홉 이내의 정점들 중 정점('홍수')을 기준으로 {(홍수, 무심천), (홍수, 명암저수지), (홍수, 범람), (홍수, 문자)}와 같이 2개의 정점들을 쌍으로 묶고, 소셜 데이터에서의 동시 출현 여부를 확인할 수 있다.
마찬가지로, 이벤트 검출 시스템은, 1홉 이내의 정점들 중 다른 정점(예, '무심천')을 기준으로도 2개씩의 정점을 쌍으로 묶어, 소셜 데이터에서의 동시 출현 횟수를 누적해서 카운트할 수 있다.
이벤트 검출 시스템은, 각 쌍에 대해 동시 출현 횟수를 카운트한 결과, 임계치 이상(예컨대, 30%의 확률)으로 카운트된 쌍을, 클러스터 내에 유지하고, 임계치 미만으로 카운트된 쌍을 클러스터에서 제거할 수 있다.
다음으로, 이벤트 검출 시스템은, 도 7b와 같이 중심 키워드로부터 2홉 이내의 정점들에 대하여 동시 출현 여부를 확인해 상기 검증할 수 있다.
이벤트 검출 시스템은, 정점('천안')을 기준으로 중심 키워드('청주')에 이르는 최단 경로를 찾고, 상기 정점('천안')이, 최단 경로에 포함된 모든 정점('홍수' 및 '청주')과 소셜 데이터에서 동시 출현했는지 여부를 확인할 수 있다.
이벤트 검출 시스템은 도 7b에서 정점('천안')과 정점('홍수') 사이에 간선이 있어 두 정점이 동시 출현한 것으로 확인하지만, 정점('천안')과 정점(청주) 사이에는 간선이 없으므로 동시 출현한 적이 없는 것으로 확인할 수 있다. 이에 따라, 이벤트 검출 시스템은 조건을 만족하지 않는 정점('천안')을 클러스터에서 제거할 수 있다.
마찬가지로, 이벤트 검출 시스템은 정점('저지대')을 기준으로 중심 키워드('청주')에 이르는 최단 경로를 찾고, 상기 정점('저지대')이, 최단 경로에 포함된 모든 정점('홍수' 및 '청주')과 소셜 데이터에서 동시 출현했는지 여부를 확인할 수 있다.
이벤트 검출 시스템은 정점('저지대')과 정점(청주) 사이에는 간선이 없으므로 동시 출현한 적이 없는 것으로 확인할 수 있으며, 조건을 만족하지 않는 정점('저지대')을 클러스터에서 제거할 수 있다.
이벤트 검출 시스템은 중심 키워드로부터 2홉 이내의 정점들에 대하여 상술한 과정을 반복해 검증하고, 최종적으로 도 7c와 같은 클러스터를 후보 그래프로서 반환할 수 있다.
또한, 이벤트 검출 시스템은 클러스터(도 6의 630)에 대해서도 검증을 실시하여 후보 그래프로서 반환할 수 있다.
이벤트 검출 시스템은 상술과 같은 검증 과정을 거친 복수의 후보 그래프 중에서 이벤트 그래프를 결정하게 되므로, 이벤트 그래프 검출의 정확도와 신뢰도를 높일 수 있다.
이하, 도 8에서는 본 발명의 실시예들에 따른 이벤트 검출 시스템(100)의 작업 흐름을 상세히 설명한다.
도 8은 본 발명의 일실시예에 따른 소셜 네트워크에서의 그래프 기반 이벤트 검출 방법의 순서를 도시한 흐름도이다.
본 실시예에 따른 이벤트 검출 방법은 상술한 이벤트 검출 시스템(100)에 의해 수행될 수 있다.
도 8을 참조하면, 단계(810)에서, 이벤트 검출 시스템(100)은, 소셜 네트워크 시스템으로부터 소셜 데이터를 수집한다.
단계(820)에서, 이벤트 검출 시스템(100)은, 수집한 소셜 데이터를 기반으로, 키워드 그래프를 구축한다.
단계(830)에서, 이벤트 검출 시스템(100)은, 상기 키워드 그래프를 클러스터링 알고리즘에 따라, 복수의 후보 그래프로 분리한다.
단계(840)에서, 이벤트 검출 시스템(100)은, 후보 그래프를 이루는 각 정점에 대해, 이웃한 정점과의 상기 소셜 데이터 내 동시 출현 여부를 확인하여, 상기 복수의 후보 그래프 각각을 검증한다.
단계(850)에서, 이벤트 검출 시스템(100)은, 소셜 데이터에 연관되는 소셜 행위의 시간 별 변화량에 근거해 산출한 사용자 관심도를 고려하여, 복수의 후보 그래프 중에서, k개(상기 k는 자연수)의 후보 그래프를 선별해 이벤트 그래프로서 결정한다.
이와 같은 과정에 의해, 이벤트 검출 시스템(100)은 소셜 네트워크에서 그래프 기반으로 이벤트를 검출 시 사용자 관심도를 그래프의 가중치로서 활용하여, 검출되는 이벤트의 신뢰도와 정확도를 높일 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.
100: 이벤트 검출 시스템
110: 구축부
120: 클러스터링부
130: 산출부
140: 결정부
150: 수집부
160: 데이터베이스
170: 연산부
180: 검증부

Claims (14)

  1. 소셜 네트워크 시스템으로부터 수집한 소셜 데이터를 기반으로, 키워드 그래프를 구축하는 단계;
    상기 키워드 그래프를 클러스터링 하여, 복수의 후보 그래프로 분리하는 단계;
    후보 그래프를 이루는 각 정점에 대해, 이웃한 정점과의 상기 소셜 데이터 내 동시 출현 여부를 확인하여, 상기 복수의 후보 그래프 각각을 검증하는 단계;
    상기 소셜 데이터에 연관되는 소셜 행위의 시간 별 변화량에 근거해, 상기 복수의 후보 그래프 각각으로 사용자 관심도를 산출하는 단계; 및
    상기 사용자 관심도를 고려하여, 상기 검증이 완료된 후보 그래프 중에서, k개(상기 k는 자연수)의 후보 그래프를 이벤트 그래프로서 결정하는 단계
    를 포함하는 소셜 네트워크에서의 그래프 기반 이벤트 검출 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 검증하는 단계는,
    상기 후보 그래프에서 매개 중심 속성값이 가장 높은 정점에 매칭되는 단어를, 중심 키워드로 선정하는 단계;
    상기 중심 키워드로부터 정해진 홉 수 이내의 정점들이, 상기 소셜 데이터 내에서 동시 출현하는지 여부를, 상기 홉 수를 증가시키면서 확인하는 단계; 및
    상기 확인 결과, 동시 출현하는 정점들을 상기 후보 그래프 내에 유지하고, 동시 출현하지 않는 정점들을 상기 후보 그래프로부터 삭제함으로써, 상기 후보 그래프를 검증하는 단계
    를 포함하는 소셜 네트워크에서의 그래프 기반 이벤트 검출 방법.
  4. 제1항에 있어서,
    제1 시간 동안에, 상기 후보 그래프 내 두 정점에 매칭된 각 단어가 동시 출현한 소셜 데이터에 연관되는, 공감을 나타내는 소셜 행위의 수를, 상기 소셜 네트워크 시스템으로부터 수집하는 단계
    를 더 포함하고,
    상기 사용자 관심도를 산출하는 단계는,
    상기 제1 시간 동안의 상기 소셜 행위의 수의 변화량을, 상기 제1 시간 이전의 제2 시간 동안의 상기 소셜 행위의 수를 기준으로 계산하고, 계산된 상기 소셜 행위의 수의 변화량을 이용하여, 상기 두 정점에 매칭된 각 단어에 대한 사용자 관심도를 산출하는 단계
    를 포함하는 소셜 네트워크에서의 그래프 기반 이벤트 검출 방법.
  5. 제4항에 있어서,
    상기 사용자 관심도를 산출하는 단계는,
    상기 두 정점에 매칭된 각 단어가 동시 출현한 빈도수를 카운트 하고, 상기 빈도수를 더 이용하여, 상기 두 정점에 매칭된 각 단어에 대한 사용자 관심도를 산출하는 단계
    를 더 포함하는 소셜 네트워크에서의 그래프 기반 이벤트 검출 방법.
  6. 제4항에 있어서,
    상기 이벤트 검출 방법은,
    상기 두 정점에 매칭된 각 단어에 대한 사용자 관심도를, 상기 후보 그래프에서 상기 각 단어를 연결한 간선에, 가중치로서 부여하는 단계;
    상기 후보 그래프의 모든 간선에 부여되는 가중치를 합산하여, 상기 후보 그래프 각각으로 이벤트 감지 계수를 계산하는 단계; 및
    상기 이벤트 감지 계수가 높은 순으로 정렬한 후보 그래프 중에서 상위에 위치하는 상기 k개의 후보 그래프를 선별하는 단계
    를 더 포함하는 소셜 네트워크에서의 그래프 기반 이벤트 검출 방법.
  7. 제1항에 있어서,
    상기 키워드 그래프를 구축하는 단계는,
    상기 소셜 데이터를 전처리하여, 특수문자, URL, 조사, 신조어, 및 부사어에 속하거나 혹은 정해진 출현 빈도수를 만족하지 않는 단어를, 상기 소셜 데이터로부터 제거하는 단계; 및
    상기 전처리에 의해 추출되는 명사 및 동사 어근 중 적어도 하나의 단어를 정점에 매칭하고, 상기 정점 각각을, 매칭된 단어 간 동시 출현 여부에 따라 간선으로 연결하여, 상기 키워드 그래프를 구축하는 단계
    를 포함하는 소셜 네트워크에서의 그래프 기반 이벤트 검출 방법.
  8. 제1항에 있어서,
    상기 키워드 그래프를 이루는 정점 중, 두 정점 사이에 가능한 모든 최단경로를 연산하는 단계; 및
    상기 모든 최단경로 중, 특정 정점을 경유하게 되는 최단경로의 비율을, 상기 특정 정점에 대한 제1 매개 중심 속성값으로서 연산하는 단계
    를 더 포함하고,
    상기 복수의 후보 그래프로 분리하는 단계는,
    상기 키워드 그래프에서, 상기 제1 매개 중심 속성값이 가장 높게 산출되는 정점에 매칭된 단어를, 중심 키워드로 선정하는 제1 단계;
    상기 키워드 그래프를, 상기 중심 키워드가 매칭된 정점 및 상기 정점과 간선으로 연결된 각 정점을 포함하는 제1 후보 그래프와, 상기 제1 후보 그래프를 제외한 제2 후보 그래프로 분리하는 제2 단계; 및
    상기 제2 후보 그래프에 대해, 상기 제1 단계 및 상기 제2 단계를 반복하여, 하나 이상의 후보 그래프로 분리하는 단계
    를 포함하는 소셜 네트워크에서의 그래프 기반 이벤트 검출 방법.
  9. 제8항에 있어서,
    상기 이벤트 검출 방법은,
    상기 모든 최단경로 중, 특정 간선을 경유하게 되는 최단경로의 비율을, 상기 특정 간선에 대한 제2 매개 중심 속성값으로서 연산하는 단계
    를 더 포함하고,
    상기 복수의 후보 그래프로 분리하는 단계는,
    상기 키워드 그래프에서, 상기 제2 매개 중심 속성값이 임계치를 초과하는 간선을 상기 제2 매개 중심 속성값이 높은 순으로 제거하고, 상기 간선이 제거된 상기 키워드 그래프를, 상기 복수의 후보 그래프로서 반환하는 단계
    를 더 포함하는 소셜 네트워크에서의 그래프 기반 이벤트 검출 방법.
  10. 소셜 네트워크 시스템으로부터 수집한 소셜 데이터를 기반으로, 키워드 그래프를 구축하는 구축부;
    상기 키워드 그래프를 클러스터링 하여, 복수의 후보 그래프로 분리하는 클러스터링부;
    후보 그래프를 이루는 각 정점에 대해, 이웃한 정점과의 상기 소셜 데이터 내 동시 출현 여부를 확인하여, 상기 복수의 후보 그래프 각각을 검증하는 검증부
    상기 소셜 데이터에 연관되는 소셜 행위의 시간 별 변화량에 근거해, 상기 복수의 후보 그래프 각각으로 사용자 관심도를 산출하는 산출부; 및
    상기 사용자 관심도를 고려하여, 상기 검증이 완료된 후보 그래프 중에서, k개(상기 k는 자연수)의 후보 그래프를 이벤트 그래프로서 결정하는 결정부
    를 포함하는 소셜 네트워크에서의 그래프 기반 이벤트 검출 시스템.
  11. 삭제
  12. 제10항에 있어서,
    제1 시간 동안에, 상기 후보 그래프 내 두 정점에 매칭된 각 단어가 동시 출현한 소셜 데이터에 연관되는, 공감을 나타내는 소셜 행위의 수를, 상기 소셜 네트워크 시스템으로부터 수집하는 수집부
    를 더 포함하고,
    상기 산출부는,
    상기 제1 시간 동안의 상기 소셜 행위의 수의 변화량을, 상기 제1 시간 이전의 제2 시간 동안의 상기 소셜 행위의 수를 기준으로 계산하고, 계산된 상기 소셜 행위의 수의 변화량을 이용하여, 상기 두 정점에 매칭된 각 단어에 대한 사용자 관심도를 산출하는
    소셜 네트워크에서의 그래프 기반 이벤트 검출 시스템.
  13. 제10항에 있어서,
    상기 키워드 그래프를 이루는 정점 중, 두 정점 사이에 가능한 모든 최단경로를 연산하고, 상기 모든 최단경로 중, 특정 정점을 경유하게 되는 최단경로의 비율을, 상기 특정 정점에 대한 제1 매개 중심 속성값으로서 연산하는 연산부
    를 더 포함하고,
    상기 클러스터링부는,
    상기 키워드 그래프에서, 상기 제1 매개 중심 속성값이 가장 높게 산출되는 정점에 매칭된 단어를, 중심 키워드로 선정하고, 상기 키워드 그래프를, 상기 중심 키워드가 매칭된 정점 및 상기 정점과 간선으로 연결된 각 정점을 포함하는 제1 후보 그래프와, 상기 제1 후보 그래프를 제외한 제2 후보 그래프로 분리하고,
    상기 제2 후보 그래프를, 중심 키워드의 선정에 따라 하나 이상의 후보 그래프로 분리하는
    를 포함하는 소셜 네트워크에서의 그래프 기반 이벤트 검출 시스템.
  14. 제13항에 있어서,
    상기 연산부는,
    상기 모든 최단경로 중, 특정 간선을 경유하게 되는 최단경로의 비율을, 상기 특정 간선에 대한 제2 매개 중심 속성값으로서 연산하고,
    상기 클러스터링부는,
    상기 키워드 그래프에서, 상기 제2 매개 중심 속성값이 임계치를 초과하는 간선을 상기 제2 매개 중심 속성값이 높은 순으로 제거하고, 상기 간선이 제거된 상기 키워드 그래프를, 상기 복수의 후보 그래프로서 반환하는
    소셜 네트워크에서의 그래프 기반 이벤트 검출 시스템.
KR1020180112353A 2018-09-19 2018-09-19 소셜 네트워크에서의 그래프 기반 이벤트 검출 방법, 및 소셜 네트워크에서의 그래프 기반 이벤트 검출 시스템 KR102086248B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020180112353A KR102086248B1 (ko) 2018-09-19 2018-09-19 소셜 네트워크에서의 그래프 기반 이벤트 검출 방법, 및 소셜 네트워크에서의 그래프 기반 이벤트 검출 시스템
US16/222,759 US11036818B2 (en) 2018-09-19 2018-12-17 Method and system for detecting graph based event in social networks

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180112353A KR102086248B1 (ko) 2018-09-19 2018-09-19 소셜 네트워크에서의 그래프 기반 이벤트 검출 방법, 및 소셜 네트워크에서의 그래프 기반 이벤트 검출 시스템

Publications (1)

Publication Number Publication Date
KR102086248B1 true KR102086248B1 (ko) 2020-03-06

Family

ID=69774134

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180112353A KR102086248B1 (ko) 2018-09-19 2018-09-19 소셜 네트워크에서의 그래프 기반 이벤트 검출 방법, 및 소셜 네트워크에서의 그래프 기반 이벤트 검출 시스템

Country Status (2)

Country Link
US (1) US11036818B2 (ko)
KR (1) KR102086248B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210117038A (ko) * 2020-03-18 2021-09-28 충북대학교 산학협력단 소셜 네트워크에서 연관 문서 분석을 통한 지역 이벤트 검출 시스템 및 방법
KR20210121921A (ko) * 2020-03-31 2021-10-08 포항공과대학교 산학협력단 키워드 공동출현 네트워크를 기반으로 핵심 키워드를 추출하는 방법 및 장치
WO2024111763A1 (en) * 2022-11-21 2024-05-30 Samsung Electronics Co., Ltd. Method and electronic device of behavior shift-based interest level prediction

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11468074B1 (en) * 2019-12-31 2022-10-11 Rapid7, Inc. Approximate search of character strings
KR102403681B1 (ko) * 2020-08-13 2022-05-31 인천대학교 산학협력단 사용자 위치 및 키워드 기반 지능형 퍼지 유도 시스템 및 방법

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7809548B2 (en) * 2004-06-14 2010-10-05 University Of North Texas Graph-based ranking algorithms for text processing
KR101173789B1 (ko) 2011-04-29 2012-08-16 성균관대학교산학협력단 여과 기법 기반 무선 센서 네트워크에서의 경로 재설정 방법
US9286391B1 (en) * 2012-03-19 2016-03-15 Amazon Technologies, Inc. Clustering and recommending items based upon keyword analysis
US9020835B2 (en) 2012-07-13 2015-04-28 Facebook, Inc. Search-powered connection targeting
US20150120717A1 (en) * 2013-10-25 2015-04-30 Marketwire L.P. Systems and methods for determining influencers in a social data network and ranking data objects based on influencers
DK179049B1 (en) 2016-06-11 2017-09-18 Apple Inc Data driven natural language event detection and classification
US9836183B1 (en) * 2016-09-14 2017-12-05 Quid, Inc. Summarized network graph for semantic similarity graphs of large corpora
US10855706B2 (en) * 2016-10-11 2020-12-01 Battelle Memorial Institute System and methods for automated detection, reasoning and recommendations for resilient cyber systems

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
김병선 외 3인, 키워드 네트워크 분석을 이용한 지리공간정보의 글로벌 연구 동향 분석, Journal of Korea Spatial Information Society Vol.23, No.1 : 69-77, (2015.02.공개)* *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210117038A (ko) * 2020-03-18 2021-09-28 충북대학교 산학협력단 소셜 네트워크에서 연관 문서 분석을 통한 지역 이벤트 검출 시스템 및 방법
KR102328234B1 (ko) * 2020-03-18 2021-11-17 충북대학교 산학협력단 소셜 네트워크에서 연관 문서 분석을 통한 지역 이벤트 검출 시스템 및 방법
KR20210121921A (ko) * 2020-03-31 2021-10-08 포항공과대학교 산학협력단 키워드 공동출현 네트워크를 기반으로 핵심 키워드를 추출하는 방법 및 장치
KR102498294B1 (ko) * 2020-03-31 2023-02-08 포항공과대학교 산학협력단 키워드 공동출현 네트워크를 기반으로 핵심 키워드를 추출하는 방법 및 장치
WO2024111763A1 (en) * 2022-11-21 2024-05-30 Samsung Electronics Co., Ltd. Method and electronic device of behavior shift-based interest level prediction

Also Published As

Publication number Publication date
US11036818B2 (en) 2021-06-15
US20200089723A1 (en) 2020-03-19

Similar Documents

Publication Publication Date Title
KR102086248B1 (ko) 소셜 네트워크에서의 그래프 기반 이벤트 검출 방법, 및 소셜 네트워크에서의 그래프 기반 이벤트 검출 시스템
Nouh et al. Understanding the radical mind: Identifying signals to detect extremist content on twitter
Biswas et al. A graph based keyword extraction model using collective node weight
Sayyadi et al. Event detection and tracking in social streams
Ifrim et al. Event detection in twitter using aggressive filtering and hierarchical tweet clustering
Mitra et al. Credbank: A large-scale social media corpus with associated credibility annotations
Mondal et al. Analysis and early detection of rumors in a post disaster scenario
KR101737887B1 (ko) 크로스 미디어 분석에 기반한 소셜 미디어 텍스트의 주제 카테고리 자동 분류 방법 및 그 장치
Olariu Efficient online summarization of microblogging streams
Lee et al. When twitter meets foursquare: tweet location prediction using foursquare
Guzman et al. On-line relevant anomaly detection in the Twitter stream: an efficient bursty keyword detection model
Middleton et al. Geoparsing and geosemantics for social media: Spatiotemporal grounding of content propagating rumors to support trust and veracity analysis during breaking news
CN111428113A (zh) 一种基于模糊综合评判的网络舆论引导效果预测方法
Yang et al. A topic detection method based on KeyGraph and community partition
Makki et al. Twitter message recommendation based on user interest profiles
Patil et al. Live twitter sentiment analysis using streamlit framework
CN102063497B (zh) 一种开放式知识共享平台及其词条处理方法
Samory et al. Quotes reveal community structure and interaction dynamics
Krokos et al. A look into twitter hashtag discovery and generation
Sharma et al. A transformer-based model for evaluation of information relevance in online social-media: A case study of covid-19 media posts
Olariu Hierarchical clustering in improving microblog stream summarization
Seilsepour et al. 2016 olympic games on twitter: Sentiment analysis of sports fans tweets using big data framework
Ghadiri et al. Automated fake news detection using cross-checking with reliable sources
CN108280772B (zh) 社交网络中基于事件关联的故事脉络生成方法
Konagala et al. Fake news detection using deep learning: supervised fake news detection analysis in social media with semantic similarity method

Legal Events

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