KR20230096932A - Ai 기반의 소셜 네트워크 서비스 분석 장치 - Google Patents

Ai 기반의 소셜 네트워크 서비스 분석 장치 Download PDF

Info

Publication number
KR20230096932A
KR20230096932A KR1020230076860A KR20230076860A KR20230096932A KR 20230096932 A KR20230096932 A KR 20230096932A KR 1020230076860 A KR1020230076860 A KR 1020230076860A KR 20230076860 A KR20230076860 A KR 20230076860A KR 20230096932 A KR20230096932 A KR 20230096932A
Authority
KR
South Korea
Prior art keywords
data
module
social network
user
machine learning
Prior art date
Application number
KR1020230076860A
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 KR1020230076860A priority Critical patent/KR20230096932A/ko
Publication of KR20230096932A publication Critical patent/KR20230096932A/ko

Links

Images

Classifications

    • 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
    • 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/951Indexing; Web crawling techniques
    • 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/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • 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/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06Q50/30

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Tourism & Hospitality (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • General Business, Economics & Management (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Marketing (AREA)
  • Molecular Biology (AREA)
  • Primary Health Care (AREA)
  • Human Resources & Organizations (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Operations Research (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명의 일 실시예에 따른 AI 기반의 소셜 네트워크 서비스 분석 장치는, 소셜 네트워크 서비스 플랫폼 상의 데이터를 수집하는 데이터 수집 모듈; 상기 데이터 수집 모듈이 수집한 데이터를 미리 설정된 검색 알고리즘에 기초하여 출력하고, 수집된 데이터에 라벨링을 생성하는 기능을 구비하는 데이터 관리 모듈; 상기 데이터 관리 모듈에 저장된 상기 데이터의 라벨에 기초하여 기계학습을 수행하여, 상기 데이터의 라벨링을 자동으로 수행하는 알고리즘을 생성하는 기계학습 모듈; 사용자의 요청을 입력받고, 상기 사용자의 요청에 기초하여 상기 데이터 관리 모듈 및 기계학습 모듈 중 적어도 하나가 분석한 결과를 시각화하여 출력하는 사용자 서비스 모듈; 및 상기 데이터 수집 모듈, 데이터 관리 모듈, 기계학습 모듈 및 사용자 서비스 모듈 중 적어도 하나를 제어하는 코어 서비스 모듈;을 포함한다.

Description

AI 기반의 소셜 네트워크 서비스 분석 장치{AN ANALYSIS APPARTUS FOR SOCIAL NETWORK SERVICE BASED ON ARTIFICIAL INTELLIGENCE}
본 발명은 소셜 네트워크 서비스 분석 장치에 관한 것으로, 구체적으로는 인터넷 뉴스 및 소셜 네트워크 서비스 상의 게시물 및 게시물의 댓글을 분석하여 고객의 긍정 및 부정도를 파악할 수 있는 인공지능 기반의 소셜 네트워크 서비스 분석 장치에 관한 것이다.
소셜 데이터는 설문 조사나 인터뷰 자료처럼 가공된 데이터가 아니라 소비자 의견 또는 감성이 그대로 반영된 데이터라는 점에서 소비자를 가장 잘 파악할 수 있는 마케팅 지표로 각광받고 있다.
이에 따라, 소셜 데이터에서 타깃(target)에 대한 소비자의 의견 또는 타깃으로부터 소비자가 느끼는 감성을 자동으로 분석해 주는 감성분석(sentiment analysis) 또한 빅데이터 환경의 핵심 기술 중 하나로 주목받고 있다.
오피니언 마이닝(opinion mining)으로도 불리는 감성 분석은 다양한 콘텐츠에서 사람의 주관적인 데이터를 추출하고, 이를 분석하여 사람들의 의견, 감성 등을 도출하는 자연어 처리 기술이다.
감성 분석에는 크게 문서/문장 단위의 감성 분석 기법과 속성 단위의 감성 분석 기법이 있으며, 이중에서, 문서 단위의 감성 분석 기법은 주로 기계 학습 모델을 통해 수행된다.
가령, 문서 단위 감성 분석 기법은 학습된 기계 학습 모델을 통해 주어진 문서의 감성 클래스(e.g. 긍정, 부정)을 추론하는 방식으로 수행된다.
종래의 경우 상술한 감성분석을 실시하기 위하여 데이터 수집, 데이터 관리, 기계학습 등을 하나의 시스템에서 진행하였으며, 이로 인하여 기능의 확장이 불가하고, 사용자 환경에 영향을 받는 문제점이 있어왔다.
한편, 하기 선행기술문헌은 토픽별 감성사전 구축 및 감성사전을 기반하여 기사 극성 계산, 토픽별 월별 감성지수 구축을 통하여 시장의 거시적 동향을 나타내는 변수들과의 인과성을 정확하게 분석 및 예측할 수 있도록 한 감성사전 구축을 통한 주택시장 동향 분석을 위한 시스템 및 방법을 개시하고 있으며, 본 발명의 기술적 요지는 개시하고 있지 않다.
대한민국 공개특허공보 제10-2020-0022144호
본 발명의 일 실시예에 따른 AI 기반의 뉴스 및 소셜 네트워크 서비스 분석 장치는 전술한 문제점을 해결하기 위하여 다음과 같은 해결과제를 목적으로 한다.
분석 장치의 각 기능을 담당하는 모듈을 각각의 서버에서 제공하도록 구성함으로써 각 기능에 대한 서버의 자원을 최대로 활용할 수 있는 AI 기반의 뉴스 및 소셜 네트워크 서비스 분석 장치를 제공하는 것이다.
아울러 각 모듈들의 환경을 상호 독립적인 환경으로 설정하여 제공함으로써 사용자의 환경과는 무관하게 용이하게 적용이 가능한 AI 기반의 뉴스 및 소셜 네트워크 서비스 분석 장치를 제공하는 것이다.
본 발명의 해결과제는 이상에서 언급된 것들에 한정되지 않으며, 언급되지 아니한 다른 해결과제들은 아래의 기재로부터 당해 기술분야에 있어서의 통상의 지식을 가진 자에게 명확하게 이해되어 질 수 있을 것이다.
본 발명의 일 실시예에 따른 AI 기반의 소셜 네트워크 서비스 분석 장치는, 소셜 네트워크 서비스 플랫폼 상의 데이터를 수집하는 데이터 수집 모듈;
상기 데이터 수집 모듈이 수집한 데이터를 미리 설정된 검색 알고리즘에 기초하여 출력하고, 수집된 데이터에 라벨링을 생성하는 기능을 구비하는 데이터 관리 모듈; 상기 데이터 관리 모듈에 저장된 상기 데이터의 라벨에 기초하여 기계학습을 수행하여, 상기 데이터의 라벨링을 자동으로 수행하는 알고리즘을 생성하는 기계학습 모듈; 사용자의 요청을 입력받고, 상기 사용자의 요청에 기초하여 상기 데이터 관리 모듈 및 기계학습 모듈 중 적어도 하나가 분석한 결과를 시각화하여 출력하는 사용자 서비스 모듈; 및 상기 데이터 수집 모듈, 데이터 관리 모듈, 기계학습 모듈 및 사용자 서비스 모듈 중 적어도 하나를 제어하는 코어 서비스 모듈;을 포함한다.
상기 데이터 수집 모듈은, 상기 소셜 네트워크 서비스 플랫폼에 게시된 게시물의 URL을 미리 설정된 주기마다 수집하는 URL 수집유닛; 및 상기 URL 수집유닛으로부터 전달받은 URL에 기초하여 상기 게시물의 크롤링을 수행하는 크롤링 유닛;을 포함하는 것이 바람직하다.
상기 URL 수집유닛은 미리 설정된 주기마다 상기 소셜 네트워크 서비스 플랫폼에 접속하여 상기 소셜 네트워크 서비스 플랫폼의 최신글부터 지난 주기까지의 게시물들의 ID를 획득한 후, 상기 게시물들의 ID에 기초하여 상기 게시물들의 URL을 생성하여 상기 크롤링 유닛에 전달하고, 상기 크롤링 유닛은 상기 URL 수집유닛이 생성한 URL에 접속한 후 해당 URL의 게시물을 크롤링하는 것이 바람직하다.
상기 크롤링 유닛은 상기 URL 수집유닛이 생성한 URL에 접속하여 상기 URL의 게시물을 크롤링한 후 전처리를 수행하여 전처리 데이터를 생성하고, 상기 전처리 데이터는 상기 코어 서비스 모듈의 제2 데이터베이스에 저장되는 것이 바람직하다.
상기 데이터 관리 모듈은 상기 사용자 서비스 모듈에서 입력된 사용자의 요청에 기초하여 상기 코어 서비스 모듈의 제2 데이터베이스에 저장된 데이터 중 상기 요청에 부합하는 타겟 데이터와 상기 타겟 데이터의 정보를 상기 데이터 관리 모듈 내의 제1 데이터베이스에 저장하는 것이 바람직하다.
상기 데이터 관리 모듈은 상기 제1 데이터베이스에 저장된 게시물을 데이터 관리 웹페이지 상에 출력하되, 상기 데이터 관리 웹페이지 상에는 상기 게시물의 원문, 상기 게시물을 미리 설정된 단위로 분할한 컨텍스트 및 상기 게시물의 댓글 중 적어도 하나가 출력되는 것이 바람직하다.
상기 데이터 관리 웹페이지 상에는 사용자로 하여금 상기 게시물의 원문, 상기 게시물을 미리 설정된 단위로 분할한 컨텍스트 및 상기 게시물의 댓글 중 적어도 하나에 대한 주요요소(Aspect) 및 상기 주요요소에 대한 감성평가에 대한 라벨링을 수행할 수 있도록 구성되고, 상기 라벨링 결과는 상기 제1 데이터베이스 및 제2 데이터베이스 중 적어도 하나에 저장되되 상기 미리 설정된 단위는 해당 게시물의 문맥을 가장 잘 표현할 수 있는 단위인 것이 바람직하다.
본 발명의 일 실시예에 따른 AI 기반의 소셜 네트워크 서비스 분석 장치는, 각 모듈이 환경 독립적으로 동작 가능한 컨테이너로 제공됨으로써 사용자의 환경과 관계없이 쉽게 적용이 가능하며, 나아가 각각의 컨테이너의 성능 및 기능의 확장이 용이하다는 효과가 있다.
본 발명의 효과는 이상에서 언급된 것들에 한정되지 않으며, 언급되지 아니한 다른 효과들은 아래의 기재로부터 당해 기술분야에 있어서의 통상의 지식을 가진 자에게 명확하게 이해되어질 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 AI 기반의 소셜 네트워크 서비스 분석 장치를 도시한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 AI 기반의 소셜 네트워크 서비스 분석 장치 중 데이터 수집 모듈의 동작을 설명하기 위한 도면이다.
도 3은 본 발명의 일 실시예에 따른 AI 기반의 소셜 네트워크 서비스 분석 장치 중 데이터 관리 모듈의 동작을 설명하기 위한 도면이다.
도 4 및 도 5는 본 발명의 일 실시예에 따른 AI 기반의 소셜 네트워크 서비스 분석 장치에서 데이터 관리 웹페이지를 도시한 도면이다.
도 6은 본 발명의 일 실시예에 따른 AI 기반의 소셜 네트워크 서비스 분석 장치 중 데이터 관리 모듈의 다른 실시예의 동작을 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시예에 따른 AI 기반의 소셜 네트워크 서비스 분석 장치 중 데이터 관리 모듈에서 사용자가 작성한 라벨링 저장과정을 도시한 도면이다.
도 8은 본 발명의 일 실시예에 따른 AI 기반의 소셜 네트워크 서비스 분석 장치 중 기계학습 모듈의 Web상 화면의 일 실시예를 도시한 도면이다.
도 9는 본 발명의 일 실시예에 따른 AI 기반의 소셜 네트워크 서비스 분석 장치 중 기계학습 모듈에서의 학습과정을 설명하기 위한 도면이다.
도 10은 본 발명의 일 실시예에 따른 AI 기반의 소셜 네트워크 서비스 분석 장치 중 기계학습 모듈의 Web상 화면의 다른 실시예를 도시한 도면이다.
도 11은 본 발명의 일 실시예에 따른 AI 기반의 소셜 네트워크 서비스 분석 장치 중 기계학습 모듈에서의 추론과정을 설명하기 위한 도면이다. 도 12 및 도 13은 본 발명의 일 실시예에 따른 AI 기반의 소셜 네트워크 서비스 분석 장치 중 사용자 서비스 모듈에 의한 시각화 예를 도시한 도면이다.
첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
또한, 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 발명의 사상을 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 발명의 사상이 제한되는 것으로 해석되어서는 아니 됨을 유의해야 한다.
이하 도 1 내지 도 8을 참조하여 본 발명의 일 실시예에 따른 AI 기반의 뉴스 및 소셜 네트워크 서비스 분석 장치에 대하여 설명하도록 한다.
본 발명의 일 실시예에 따른 AI 기반의 뉴스 및 소셜 네트워크 서비스 분석 장치는 인터넷 뉴스 및 소셜 네트워크 서비스 상의 게시물을 및 게시물의 댓글을 분석하여 고객의 긍정 및 부정도를 파악할 수 있는 분석 장치에 관한 것으로, 도 1에 도시된 바와 같이 데이터 수집 모듈(100), 데이터 관리 모듈(200), 기계학습 모듈(300), 사용자 서비스 모듈(400) 및 코어 서비스 모듈(500)을 포함하도록 구성된다.
상술한 본 발명의 일 실시예에 따른 AI 기반의 소셜 네트워크 서비스 분석 장치를 이루는 각 구성들은 각각의 서버를 구비하도록 구성되며, 이를 통하여 각 기능마다 서버의 자원을 최대로 활용할 수 있도록 구비된다.
아울러, 각 구성이 컨테이너 방식의 독립환경으로 구성되어, 각 구성들 간의 환경 의존성이 없기 때문에 개발환경의 구성의 최적화가 용이하며, 사용자의 환경과 관계없이 쉽게 적용 가능하며 각각의 컨테이너의 성능 및 기능의 확장이 용이하도록 구성된다.
데이터 수집 모듈(100)은 네이버 기사, 네이버 카페, 트위터, 페이스북 및 인스타그램 등의 소셜 네트워크 서비스 플랫폼 상의 데이터를 수집하는 기능을 수행하며, 하나의 소셜 네트워크 서비스 플랫폼 당 2개의 구성요소, 즉 URL 수집유닛(110) 및 크롤링 유닛(120)을 포함하도록 구성된다.
URL 수집유닛(110)은 미리 설정된 주기에 따라 특정기간의 글들의 URL을 수집하는 기능을 수행하고, 크롤링 유닛(120)은 URL 수집유닛(110)이 수집한 URL을 받아서 실제 크롤링하고 DB에 저장하는 기능을 수행한다.
URL 수집유닛(110)이 URL을 수집할 때 마다 크롤링 유닛(120)에게 URL 정보가 담긴 queue를 전송하게 되고, 크롤링 유닛(120)은 URL 수집유닛(110)이 보낸 queue를 받아 바로바로 크롤링을 실행하게 되며, URL 수집유닛(110)과 크롤링 유닛(120)의 동작 시간 차로 인해 처리되지 못한 queue들은 크롤링 유닛(120)에 쌓여 있다가 순차적으로 처리하면서 데이터가 수집되게 된다.
이 경우 백그라운드에서 사용자가 신경 쓰지 않아도 주기적으로 데이터를 크롤링 해오며 주기를 짧게 구현하면 실시간데이터 수집까지 가능하도록 구현될 수 있으며, 전체 글을 한번에 가져오는 것이 아닌 주기적으로 나눠서 빈틈없이 글들을 가져오기 때문에 효율적으로 데이터를 수집하며 항상 최신의 데이터를 유지할 수 있기 때문에 정확하고 의미있는 분석이 가능하게 된다.
이하에서는 도 2를 참조하여 상술한 데이터 수집 모듈(100)의 동작에 대하여 시계열적으로 설명하도록 한다.
먼저 미리 설정된 주기에 따라 URL 수집유닛(110)이 실행이 되어 해당 소셜 네트워크 플랫폼에 접속하는 단계(S110)가 수행되고, 이후 URL 수집유닛(110)이 해당 소셜 네트워크 플랫폼으로부터 최신 게시물부터 지난 주기까지의 게시물의 ID들을 획득하는 단계(S120)가 수행된다.
이후 URL 수집유닛(110)은 획득한 ID들을 반복문을 통하여 각각에 대한 URL을 생성하는 단계(S130) 및 여기에서 생성된 URL들을 크롤링 유닛(120)에게 전달하는 단계(S140)가 수행된다.
다음으로 크롤링 유닛(120)이 전달받은 URL에 접속하는 단계(S150) 및 해당 URL의 글들을 크롤링한 후 html 태그 등을 삭제하는 등의 전처리를 수행하는 단계(S160)가 진행된다.
이후 크롤링 유닛(120)이 전처리된 데이터를 코어 서비스 모듈(500)의 제1 데이터베이스에 저장하는 단계(S170)가 수행되며, 마지막으로 코어 서비스 모듈(500)은 크롤링 유닛(120)에게 데이터베이스 내의 데이터의 저장이 잘 되었는지 여부의 확인을 위한 확인 메시지를 전송하는 단계(S180)가 진행된다.
아울러 종래의 데이터 크롤링 과정에서는 URL 정보들을 가져올 때 html 기반의 paser를 사용하였으나, 본 발명의 일 실시예에 따른 AI 기반의 소셜 네트워크 서비스 분석 장치의 데이터 수집 모듈(100)은 lxml 기반의 paser를 사용함으로써 종래 대비 수집 속도가 향상되는 효과를 기대할 수 있다.
데이터 관리 모듈(200)은 사용자로 하여금 데이터 수집 모듈(100)에서 수집한 데이터에 효율적으로 접근하고 관리할 수 있도록 마련된 구성으로, 데이터 수집 모듈(100)이 수집한 데이터를 미리 설정된 검색 알고리즘에 기초하여 출력하고, 나아가 수집된 데이터에 라벨링을 생성하는 기능을 구비하도록 구성된다.
이러한 데이터 관리 모듈(200)은 웹으로 제공되며 자체 데이터베이스인 제1 데이터베이스(210)를 가지고 있어 제1 데이터베이스(210)에 저장할 값을 요청을 통해 가져오게 되고, 제1 데이터베이스(210)에 저장된 데이터를 통한 카테고리 및 검색알고리즘이 존재하여 사용자가 데이터를 추려서 볼 수 있도록 구성된다.
즉, 출처 별, 날짜 별, 키워드 별, 회사 별 등 데이터의 기본 정보를 카테고리화 할 수 있으며, 상세 정보는 검색을 통하여 쉽게 sorting 및 접근이 가능하도록 구성된다.
이러한 데이터 관리 모듈(200)의 동작을 도 3을 참조하여 시계열적으로 설명해보면, 먼저 데이터 관리 모듈(200)의 웹페이지를 통하여 분석하고자 하는 타겟(Target)에 대한 카테고리의 생성을 코어 서비스 모듈(500)에 요청하는 단계(S210)가 수행된다.
이때 코어 서비스 모듈(500)은 자체 보유하고 있는 제2 데이터베이스(510)에서 타겟에 대한 데이터, 즉 크롤링해서 저장된 데이터를 가져와서 페이지네이션(pagination)을 진행하는데, 이때 요청이 들어온 URL 정보와 페이지 정보를 추후 데이터가 보여질 웹 URL에 사용하기 위하여 같이 저장하게 된다.
이후 코어 서비스 모듈(500)은 전체 데이터 수 및 페이지 정보를 데이터 관리 모듈(200)로 전송하는 단계(S220)가 수행된다.
이때 데이터 관리 모듈(200)로 전달된 데이터가 데이터 관리 모듈(200)에 구비된 제1 데이터베이스(210)에 저장될 때마다 도 4에 도시된 바와 같이 데이터가 얼마만큼 불러와졌는지는 웹 페이지 상에 표시될 수 있으며, 이때 데이터는 실시간으로 전달되기 때문에 데이터가 100%가 전달되지 않은 상황이라도 사용자는 데이터 관리 웹페이지 상에서 여러가지 작업의 수행이 가능하다.
아울러 코어 서비스 모듈(500)이 전체 데이터 수 및 페이지 정보를 데이터 관리 모듈(200)로 전송하는 동시에 코어 서비스 모듈(500)은 데이터베이스(510)에 저장된 URL 정보 및 페이지 정보를 dm_generator로 송신하는 단계(S230)가 수행된다.
이후 dm_generator는 실제 페이지네이션된 데이터를 코어 서비스 모듈(500)에 요청하는 단계(S240) 및 코어 서비스 모듈(500)이 요청받은 데이터를 dm_generator로 송신하는 단계(S250)가 진행되며, 이때 지정한 페이지의 개수가 채워질때까지 S240 및 S250의 수행이 반복된다.
S240 및 S250의 반복 수행에 의하여 dm_generator가 한 페이지의 전체 데이터를 획득하게 되면 해당 데이터를 dm_creator로 보내는 단계(S260)가 수행된다.
다음으로 dm_creator가 dm_generator로부터 획득한 데이터를 데이터 관리 모듈(200)로 전달하여 데이터를 데이터 관리 모듈(200)에 구비된 제1 데이터베이스(210)에 저장하는 단계(S270)가 수행되며, 이때 데이터 관리 모듈(200)의 웹페이지에는 S230에서 지정한 URL 페이지에 저장된 정보가 제공된다.
아울러 상술한 데이터 관리 모듈(200)에서 한번에 모든 데이터를 가져오면 웹 화면에 리스트가 나올 때까지 시간이 오래 걸리기 때문에 먼저 페이지당 글이 나오고 본문의 수정을 누를 때 그 본문에 엮여 있던 댓글이나 context 단위의 글들이 함께 불러와지게 구현하여 효율성 증대시킬 수도 있다.
한편, 데이터 관리 모듈(200)은 데이터 가져오기를 제외한 나머지 카테고리 생성, 검색 등의 데이터 조회 및 추출시에는 기존의 DB search가 아닌 Full search text 기반의 알고리즘을 이용하도록 구성될 수 있다.
Full search text 기반의 검색은 단어를 조각내서 저장하기 때문에(inverted) 조회가 매우 빠르며 속도 면에서도 상당한 개선을 이루어낼 수 있으며, 단어를 조각낼 때 nori_tokenizer를 이용하여 형태소 기반으로 잘라서 넣기 때문에 종래 DB 검색 대비 의미있는 결과들이 나올 수 있다.
상술한 Full search text 기반의 검색을 포함한 데이터 관리 모듈(200)의 동작을 도 6을 참조하여 시계열적으로 설명해보면, S210 내지 S270 단계는 상술한 바와 동일하며, S270 단계 이후에는 데이터 관리 모듈(200)이 S260 단계을 통하여 획득한 후 제1 데이터베이스(210)에 저장하였던 데이터를 Full Text 검색엔진(220)에 전달하는 단계(S280)가 수행된다.
이후 데이터 관리 모듈(200)은 dm_creator에 Full Text 검색엔진(220)에서의 데이터 저장이 정상적으로 이루어졌음을 알리는 메시지를 송신하거나 또는 정상적이지 않은 경우 S270의 재수행을 요청하는 메시지를 송신하는 단계(S290)가 수행된다.
한편, 데이터 관리 모듈(200)의 데이터 관리 웹페이지는 도 5에 도시된 바와 같이 출력될 수 있는데, 상기 데이터 관리 웹페이지상에는 사용자로 하여금 상기 게시물의 원문, 상기 게시물을 미리 설정된 단위로 분할한 컨텍스트 및 상기 게시물의 댓글 중 적어도 하나에 대한 주요요소(Aspect) 및 상기 주요요소에 대한 감성평가에 대한 라벨링을 수행할 수 있도록 구성될 수 있다.
특히 사용자는 웹페이지 상에서 데이터를 수정할 수 있으며, 구체적으로 수집된 데이터)글 단위)마다 상세 페이지가 존재하고, 여기에서 사용자가 글을 수행하게 되면 제1 데이터베이스(210)에서도 이러한 수정내용이 실시간으로 반영되어 저장되도록 구성된다.
아울러 사용자는 웹 페이지 상에서 데이터의 기계학습 수행을 위한 라벨링을 생성할 수도 있는데, 전체 게시물을 context를 이해하기 적합한 문단 또는 문장 등의 단위로 잘라서 데이터를 저장할 수 있으며, 해당 단위 별로 라벨링을 수행하도록 구성될 수 있다.
또한 댓글이 존재하는 경우에는 댓글이 본문의 문맥과 연관되는 경우가 많기 때문에 사용자가 본문을 보면서 댓글에 대한 라벨링이 가능하도록 구성되는 것이 바람직하며, 이때 댓글 별로 본문에서 추가적으로 필요한 정보들을 입력함으로써 추후 새로운 데이터를 처리할 알고리즘에 반영될 수 있도록 구성되는 것이 바람직하다.
즉 사용자가 직접 라벨링한 정보는 제1 데이터베이스(210)에 저장된 각 게시글(본문, 문맥 단위, 댓글)의 meta field에 저장되어 추후 학습에 사용되며, 라벨의 경우 수행하고자 하는 작업에 따라 여러 개가 될 수도 있고 그 형식이 달라질 수 있기 때문에 어떠한 형식에도 대응 가능하도록 jsonb 타입으로 저장함으로써 활용성을 극대화하는 것이 바람직하며, 또한 이러한 라벨링 정보는 코어 서비스 모듈(500)의 제2 데이터베이스(510)에도 저장될 수 있다.
한편, 본 발명의 일 실시예에 따른 키워드 기반으로 사용자가 커스텀 카테고리를 추가할 수 있도록 구성될 수도 있다.
즉, 사용자가 직접 카테고리명을 지정하여 생성할 수 있으며, 해당 카테고리에서 키워드를 추가하거나 삭제하는 등의 작업을 통하여 원하는 카테고리를 생성할 수 있다.
키워드는 쉼표(,) 구분으로 한번에 복수 개를 입력할 수 있으며, 각각의 키워드는 뱃지로 저장되며, 삭제시에는 키워드 뱃지를 눌러 여러 개를 한꺼번에 삭제할 수 있도록 구성된다.
아울러 키워드는 형태소 분석 기반 검색 알고리즘을 통하여 검색된 결과들을 가져오게 되며, 좀 더 정확한 검색을 위하여 추가된 키워드들은 사용자 사전에 저장되어 정확한 tokenizing이 되도록 구현되는 것이 바람직하다.
나아가 라벨링 과정에서 상태가 추가되었는데 라벨을 작성하면 '검수 필요' 상태가 할당되고 추후 관리자가 검수확인까지 한 경우 검수 완료, 기계학습 모델이 추론한 라벨이거나, 라벨이 아예 없는 등의 사람이 라벨을 작성하지 않은 글들은 라벨링 필요 상태로 저장이 되어 카테고리를 통해 모아서 볼 수 있도록 구성될 수 있다.
또한 라벨링 과정에서 애매한 부분은 글, 댓글, context 별로 메모를 작성할 수 있으며, 저장하기를 누르면 라벨과 함께 저장이 되어 글에는 '메모' 뱃지가 붙고 메모 글이 하단의 게시판에 추가가 되도록 구성될 수 있으며, 하단 게시판에선 메모에 대한 댓글을 달 수 있도록 구성되며, 메모 뱃지는 메모를 삭제하거나 메모를 남기고 이슈 닫기 버튼을 통해 떼어낼 수 있도록 구성되는 것도 가능할 것이다.
상술한 사용자가 작성한 라벨링 저장과정을 도 7을 참조하여 시계열적으로 설명해보면 다음과 같다.
먼저 사용자가 데이터 관리 모듈(200) 상에서 라벨링을 작성 후 저장하게 되면, 데이터 관리 모듈(200)의 제1 데이터베이스(210) 상에 추가된 라벨링 정보가 업데이트되는 동시에 Full Text 검색엔진(220)로 ID 및 상태정보가 전달되어 라벨링 작성 상태가 업데이트되는 단계(S291)가 수행된다.
이후 데이터 관리 모듈(200)은 업데이트된 라벨링 정보 및 라벨링된 게시물에 대한 메타정보(id, 본문, context, 댓글 여부 등)를 코어 서비스 모듈(400)로 전달하는 단계(S292)와, 코어 서비스 모듈(500)이 제2 데이터베이스(510)에서 전달된 메타정보에 해당하는 게시글을 찾아 라벨링 정보를 업데이트 하는 단계 (S293)가 진행된다.
이후 코어 서비스 모듈(500)은 데이터 관리 모듈(200) 데이터 전송이 정상적으로 이루어졌음을 알리는 메시지를 송신하거나 또는 정상적이지 않은 경우 데이터의 재전송을 요청하는 단계(S294)가 수행된다. 기계학습 모듈(300)은 데이터 관리 모듈(200)에 저장된 상기 데이터의 라벨에 기초하여 기계학습을 수행하여, 상기 데이터의 라벨링을 자동으로 수행하는 알고리즘을 생성하는 기능을 수행하는데, 즉 제1 데이터베이스(210) 또는 제2 데이터베이스(510) 중 적어도 하나에 저장된 meta field의 데이터로 학습을 진행하여 output_meta field에 추론한 라벨을 저장하는 기능을 수행한다.
기계학습 모듈(300)에서는 meta field에 저장되어 있는 라벨들과 게시물(본문, 단위 별, 댓글) 전체로 학습이 진행되며, 사용자가 특정 부분에 특화된 학습 모델을 원할 경우에는 사용자 서비스 모듈(400)에서 사용자가 파라미터를 지정(분석하고자 하는 타겟, 기간, 키워드 등)하여 거기에 맞는 학습데이터로만 학습이 가능하도록 구현하는 것도 가능하다.
한편 기계학습 모듈(300)에서 적용될 수 있는 모델로는 Utilizing BERT for Aspect-Based Sentiment Analysis via Constructing Auxiliary Sentence 논문을 활용한 모델이며 논문에서 Target Aspect Sentiment 세가지를 통해 target이 어떤 aspect에서 Sentiment(긍정 혹은 부정) 평가를 받는지 예측한다는 컨셉을 차용하여 게시물에서 Target(회사)이 Aspect(6가지 평가지표)에서 Sentiment(긍정 중립 부정) 평가를 받는지 예측할 수 있다.
또한 해당 논문에서 사용한 기존의 모델은 영어 전용 모델이었기 때문에 이미 오픈된 여러 한국어 모델 중에서 자체 테스트 결과 성능이 가장 좋았던 KoElectra 모델을 사용할 수 있으며, Aspect 및 Sentiment의 종류와 기준은 task에 따라 달라질 수 있으며 심지어 시스템이 해결해야할 task에 따라 모델 자체가 바뀔 수 있다.
추가적으로 Longformer: The Long-Document Transforemr의 논문에 수록된 기술을 적용하여 기존 논문에서 사용한 Bert-Model의 sequence 한계인 512 토큰을 넘어서 4096토큰까지 학습이 이루어질 수 있도록 구현하였고 이를 통해 전체 corpus의 길이 제한에서 좀 더 자유롭게 문서 단위까지의 문맥 정보를 포함하여 학습을 진행할 수 있게 하였다.
현재 공식적으로 한국어 Longformer pretrained 모델은 존재하지 않으며 본 출원인의 연구 및 실험을 통해 다른 공개된 여러 한국어 pretrained 모델을 Longformer용으로 변환한 pretrained 모델 중 성능이 뛰어난 모델을 사용하고 있으며 기존 Longformer 모델을 수정하여 조금 더 메모리 효율적인 모델을 사용하고 있다.
하지만 성능적인 측면에서 Longformer가 기존 모델보다 아쉬운 면이 존재하기 때문에 512토큰 이하에서는 기존 모델을 512토큰 이상에서는 Longformer 모델을 사용하는 2-way 방식의 모델 학습방식을 사용하고 있다.
특히 기계학습 모듈(300)은 웹이 추가되며, 기계학습 모듈(300)에서 이루어지는 학습 및 예측이 기계학습 모듈(300)에 연결된 웹에서 진행되도록 구성될 수 있다.
이러한 웹에서 사용자는 기본설정으로 학습 및 예측을 할 수 있으며, 도 8에 도시된 바와 같이 원하는 작업에 맞추어 구성된 옵션들을 직접 설정하여 학습을 진행할 수 있으며, 옵션의 경우 사용자의 요청에 의하여 확장이 가능할 수 있도록 구성될 수 있다.
아울러 사용자가 모델의 이름을 지정할 수 있어 여러 방식으로 학습된 모델을 효율적으로 관리할 수 있으며 추후 예측(inference) 작업에서 직접 지정했던 이름으로 모델을 선택하여 예측할 수 있다.
기계학습 모듈(300)에서 학습이 진행되면 기계학습 모듈(300) 내에 구비된 제3 데이터베이스(310)에 모델명, 정확도, 생성일 등이 저장이 되며 관련 정보는 기계학습 모듈 web의 모델 리스트에서 확인할 수 있게 된다.
특히 기계학습 모듈(300)에서 학습이 일어나는 과정을 도 9를 참조하여 시계열적으로 설명해보면 아래와 같다.
먼저 기계학습 모듈(300)과 연결된 WEB의 모델 학습 탭에서 사용자가 도 8의 화면에서의 학습시작 아이콘을 누르면 사용자가 설정한 옵션 정보가 내부의 학습 모듈에 들어오는 단계(S311)가 수행된다.
이후, 기계학습 모듈(300)은 전달된 정보를 Training Worker에 전달함과 동시에 기계학습 모듈(300)에 연결된 제3 데이터베이스(310)에 옵션 정보를 저장하는 단계(S312)가 수행되며, 이를 통하여 모델 리스트 페이지에서 학습모델에 대한 정보와 상태를 확인할 수 있게 된다.
이후 Training Worker는 직접 코어 서비스 모듈(500)의 제2 데이터베이스(510)에 접속하여 S312 단계번에서 받은 옵션 정보를 검색하는 단계(S313), 제2 데이터베이스(510)가 S313 단계에서 검색된 데이터(학습에 필요한 text, meta(사람이 작성한 라벨) 등의 정보)를 Training Worker에 전달하는 단계(S314) 및 Training Worker가 S314 단계에서 받은 정보를 기계학습 모듈(300)로 전달하는 단계(S315)가 순차적으로 진행된다.
이후 기계학습 모듈(300)이 S315 단계에서 전달받은 정보에 기초하여 학습을 진행하고 학습이 완료된 모델을 저장하는 단계(S316) 및 학습이 완료된 모델 Path를 제3 데이터베이스(310)에 저장함과 동시에 상태를 학습 중에서 학습완료로 업데이트하는 단계(S317)이 수행된다. 한편, 기계학습 모듈(300)에 의하여 학습된 모델은 사람이 직접 라벨링을 수행할 필요가 없이 새로운 데이터에 대하여 결과를 예측하게 되는데, 새로운 데이터가 들어오면 자동으로 그 데이터에서 미리 지정된 타겟 별로 aspect 및 sentiment에 대한 라벨을 예측하여 제2 데이터베이스(510) 및 제3 데이터베이스(310) 중 적어도 하나에 저장될 수 있으며, 이는 사람이 직접 입력한 라벨과는 구분되도록 저장되는 것이 바람직하다.
이러한 기계학습 모듈(300)의 예측과정을 도 10 및 도 11을 참조하여 설명해보면 다음과 같다.
먼저 도 10에 도시된 기계학습 모듈(300)의 web상에서 사용자가 예측 시작 아이콘을 누르면 미리 작성된 옵션 정보가 기계학습 모듈로 전달되는 단계(S321)가 수행되며, 이후 기계학습 모듈(300)은 S321 단계에서 전달된 정보를 Inference Worker 및 제3 데이터베이스(310)로 전달하는 단계(S322)가 수행되며, 이때 제3 데이터베이스(310)에서 해당 모델의 상태는 예측 중인 것으로 업데이트된다.
이후 Inference Worker가 S322 단계에서 획득한 정보에 대응되는 데이터를 제2 데이터베이스(510)에 요청하는 단계(S323) 및 제2 데이터베이스(510)가 요청받은 데이터를 Inference Worker에 전달하는 단계(S324)가 순차적으로 진행된다.
이후 Inference Worker는 전달받은 데이터를 기계학습 모듈(300)에 전달하는 단계(S325) 및 기계학습 모듈(300)이 학습된 모델에 기초하여 추론을 진행하는 단계(S326)가 수행된다.
기계학습 모듈(300)에서 추론이 완료된 데이터가 반영될 수 있도록 제2 데이터베이스(510)에 해당 내용이 업데이트되는 단계(S327)가 수행되는데, 이때 데이터에 output_meta라는 이름에 필드에 저장이 되며 meta 필드는 사용자가 작성한 라벨, output_meta는 모델이 예측한 라벨이 저장된다.
마지막으로 모든 데이터에 대한 추론이 완료되고 제2 데이터베이스(510) 내에서 모든 업데이트가 완료되면 제3 데이터베이스(310)에서는 현재 상태를 추론완료 상태로 업데이트하는 단계(S328)가 수행된다.
상술한 과정을 도 6을 참조하여 시계열적으로 설명해보면, 먼저 데이터 수집 모듈(100), 구체적으로 크롤링 유닛(120)이 크롤링한 새로운 게시물이 코어 서비스 모듈(500)의 데이터베이스에 저장되는 단계(S310)가 수행되되, 동시에 데이터 수집 모듈(100)은 크롤링한 데이터를 model_inference worker에 전달하는 단계(S320)가 진행된다.
여기에 실무에서의 더 높은 정확성을 위해 모델이 예측하지 못한 혹은 예측 score가 특정 수치를 넘지 못하는 경우를 임계치(threshold)로 두어서 그 수치를 넘지 못한 예측은 딥러닝이 아닌 프로젝트에 맞추어 개발한 키워드 rule 기반으로 튜닝된 알고리즘을 통해 라벨 예측을 진행하여 실무에서 더욱 더 정확한 결과를 통해 분석을 진행할 수 있도록 할 수 있다.
사용자 서비스 모듈(400)은 사용자의 요청을 입력받고, 상기 사용자의 요청에 기초하여 상기 데이터 관리 모듈 및 기계학습 모듈 중 적어도 하나가 분석한 결과를 시각화하여 출력하는 기능을 수행한다.
즉 이러한 사용자 서비스 모듈(400)은 데이터베이스에 저장된 글과 정보들(글의 출처, 날짜, 키워드, target, aspect와 sentiment)을 분석하여 그 결과를 도표로 보여줄 수 있는 기능을 수행한다.
Task에 따라 보여지는 정보가 달라질 수 있으며 도 12에 도시된 바와 같이 회사별로 평가지수별 점수(각각의 글 당 어떤 aspect에서 긍부정 평가가 어떻게 되었고 그 글에 댓글들의 긍부정 평가까지 고려한 점수)별 radar 그래프(육각형 수치그래프)를 제공할 수 있으며, 도 13에 도시된 바와 같이 기간별 평가 지수 변화 추이를 확인할 수 있도록 구성될 수 있다.
아울러 사용자 서비스 모듈(400)은 특정 기업의 플랫폼 별 언급량, 워드클라우드, 특정 키워드에 대한 언급량과 증가율 등의 텍스트 기반 검색 및 분석에 대한 도표를 제공할 수 있으며, 나아가 트랜드 맵 또한 제공할 수 있도록 구성되는 것이 바람직하다.
아울러 각각의 그래프마다 다른 회사를 겹쳐 볼 수 있어 직관적인 비교가 가능하도록 구현되는 것이 바람직하며, 각각의 그래프의 경우 그래프 상에 마우스를 올리면 상세 정보가 보이거나 스크롤을 통해 기간을 조정하여 볼 수 있는 등 Interactive한 결과를 보여줄 수 있는 코드로 구현될 수 있다.
또한 사용자의 다양한 분석을 담보할 수 있도록 다양한 도표와 다양한 조건 설정이 가능하도록 구현될 수 있으며, 검색에 사용되는 데이터의 경우 meta 필드가 존재하면 meta field의 데이터를 우선적으로 사용하고, meta field가 없는 경우에만 output_meta의 데이터를 사용하여 모델예측 값을 사용하도록 구현한다.
마지막으로 코어 서비스 모듈(500)은 데이터 수집 모듈(100), 데이터 관리 모듈(200), 기계학습 모듈(300) 및 사용자 서비스 모듈(400) 중 적어도 하나를 통합 관리 및 제어하는 기능을 수행하며, 상술한 각각의 모듈들과 연결되어 실시간 통신이 이루어지며, 각 모듈에서 들어온 command를 적재 적소의 모듈에 전달하여 해당 모듈의 worker가 동작할 수 있도록 하는 역할을 수행한다.
아울러 코어 서비스 모듈(500)은 데이터 수집 모듈(100)에서 크롤링한 전체 data가 저장되는 제2 데이터베이스(510)가 구비되어 필요한 데이터를 각각의 서비스에 전달해 주는 기능도 겸하는 등의 서비스를 통합적으로 관리하는 역할을 할 수 있다.
상술한 내용을 종합적으로 고려하여 본 발명의 일 실시예에 따른 AI 기반의 소셜 네트워크 서비스 분석 장치에 대하여 정리하여 설명해보면 다음과 같다.
먼저 데이터 수집 모듈(100)에서는 정해진 기간별로 주기적으로 social platform 별 generator worker을 실행시키고 generator worker가 실행이 되면 자동으로 crawler worker가 실행이 되어서 데이터 수집을 진행할 수 있도록 관리한다.
데이터 관리 모듈(200)과는 직접 API 통신으로 요청을 수신하고 요청에 맞는 데이터의 정보를 전달하고 dm_generator worker와 dm_creator worker을 통해 실제 데이터까지 전달하여 동작을 시키며 내부적으로 Crawler worker를 통해 Inference worker에 데이터를 전달하여 모델 추론까지 자동으로 되도록 관리를 한다.
위의 모든 시스템은 각각의 서버에서 제공되기 때문에 각 기능마다 서버의 자원을 최대로 활용할 수 있으며 요즘 떠오르는 environment independent하게 동작가능한 컨테이너로 제공되어 미리 셋팅된 환경에서 제공되기 때문에 사용자의 환경과 관계없이 쉽게 적용 가능하며 각각의 컨테이너의 성능 및 기능의 확장이 용이하다는 효과를 기대할 수 있다.
본 명세서에서 설명되는 실시예와 첨부된 도면은 본 발명에 포함되는 기술적 사상의 일부를 예시적으로 설명하는 것에 불과하다. 따라서 본 명세서에 개시된 실시예들은 본 발명의 기술적 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이므로, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것이 아님은 자명하다. 본 발명의 명세서 및 도면에 포함된 기술적 사상의 범위 내에서 당해 기술분야에 있어서의 통상의 지식을 가진 자가 용이하게 유추할 수 있는 변형 예와 구체적인 실시예는 모두 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
100: 데이터 수집 모듈
200: 데이터 관리 모듈
300: 기계학습 모듈
400: 사용자 서비스 모듈
500: 코어 서비스 모듈

Claims (4)

  1. 소셜 네트워크 서비스 플랫폼 상의 데이터를 수집하는 데이터 수집 모듈;
    상기 데이터 수집 모듈이 수집한 데이터를 미리 설정된 검색 알고리즘에 기초하여 출력하고, 수집된 데이터에 기계학습을 위한 라벨을 생성하는 기능을 구비하는 데이터 관리 모듈;
    상기 데이터의 라벨에 기초하여 기계학습을 수행하여, 신규 데이터의 라벨링을 자동으로 수행하는 알고리즘을 생성하는 기계학습 모듈;
    사용자의 요청을 입력받고, 상기 사용자의 요청에 기초하여 상기 데이터 관리 모듈 및 기계학습 모듈 중 적어도 하나가 분석한 결과를 시각화하여 출력하는 사용자 서비스 모듈; 및
    상기 데이터 수집 모듈, 데이터 관리 모듈, 기계학습 모듈 및 사용자 서비스 모듈 중 적어도 하나를 제어하는 코어 서비스 모듈;
    을 포함하고,
    상기 데이터 수집 모듈은,
    상기 소셜 네트워크 서비스 플랫폼에 게시된 게시물의 URL을 미리 설정된 주기마다 수집하는 URL 수집유닛; 및
    상기 URL 수집유닛으로부터 전달받은 URL에 기초하여 상기 게시물의 크롤링을 수행하는 크롤링 유닛;을 포함하며,
    상기 URL 수집유닛은 미리 설정된 주기마다 상기 소셜 네트워크 서비스 플랫폼에 접속하여 상기 소셜 네트워크 서비스 플랫폼의 게시물들의 ID를 획득한 후, 상기 획득한 ID를 반복문을 통하여 각각에 대한 URL을 생성하여 상기 크롤링 유닛에 전달하고,
    상기 크롤링 유닛은 상기 URL 수집유닛이 생성한 URL에 접속한 후 해당 URL의 게시물을 크롤링하며,
    상기 데이터 관리 모듈은 제1 데이터베이스에 저장된 게시물을 데이터 관리 웹페이지 상에 출력하되,
    상기 데이터 관리 웹페이지 상에는 상기 게시물의 원문, 상기 게시물을 미리 설정된 단위로 분할한 문단 및 상기 게시물의 댓글 중 적어도 하나가 출력되며, 사용자로 하여금 상기 게시물의 원문, 상기 분할한 문단 및 상기 게시물의 댓글 중 적어도 하나에 대한 감성평가에 대한 라벨링을 수행할 수 있도록 구성되고, 사용자가 상기 원문을 보면서 상기 댓글에 대한 라벨링이 가능하도록 구성되며,
    상기 데이터 관리 모듈에 의해 생성되는 데이터의 라벨과 상기 기계학습모듈에 의해 라벨링되는 데이터의 라벨은 구분하여 저장되고,
    상기 기계학습 모듈은 시퀀스(sequence)가 512 토큰 미만이면 베르드-모델(Bert-Model)을 사용하고, 512 토큰 이상에서는 롱포머(Longformer) 모델을 사용하는 2-웨이(2-way) 방식의 모델 학습방식을 사용하고,
    상기 사용자 서비스 모듈은,
    회사별로 평가지수별 점수별 라이다 그래프 및 평가지수 변화 추이를 제공하고,
    특정 기업의 플랫폼 별 언급량, 워드클라우드, 특정 키워드에 대한 언급량과 증가율을 포함하는 텍스트 기반 검색 및 분석에 대한 도표를 제공하며,
    각각의 그래프마다 다른 회사를 겹쳐 보도록 제공하는 AI 기반의 소셜 네트워크 서비스 분석 장치.
  2. 청구항 1에 있어서,
    상기 크롤링 유닛은 상기 URL 수집유닛이 생성한 URL에 접속하여 상기 URL의 게시물을 크롤링한 후 전처리를 수행하여 전처리 데이터를 생성하고,
    상기 전처리 데이터는 상기 코어 서비스 모듈의 제2 데이터베이스에 저장되는 것을 특징으로 하는 AI 기반의 소셜 네트워크 서비스 분석 장치.
  3. 청구항 1에 있어서,
    상기 데이터 관리 모듈은 상기 사용자 서비스 모듈에서 입력된 사용자의 요청에 기초하여 상기 코어 서비스 모듈의 제2 데이터베이스에 저장된 데이터 중 상기 요청에 부합하는 타겟 데이터를 상기 데이터 관리 모듈 내의 상기 제1 데이터베이스에 저장하는 AI 기반의 소셜 네트워크 서비스 분석 장치.
  4. 청구항 1에 있어서,
    상기 라벨링 결과는 상기 제1 데이터베이스 및 제2 데이터베이스 중 적어도 하나에 저장되는 것을 특징으로 하는 AI 기반의 소셜 네트워크 서비스 분석 장치.
KR1020230076860A 2020-12-28 2023-06-15 Ai 기반의 소셜 네트워크 서비스 분석 장치 KR20230096932A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230076860A KR20230096932A (ko) 2020-12-28 2023-06-15 Ai 기반의 소셜 네트워크 서비스 분석 장치

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020200184640A KR20220093671A (ko) 2020-12-28 2020-12-28 Ai 기반의 소셜 네트워크 서비스 분석 장치
KR1020230076860A KR20230096932A (ko) 2020-12-28 2023-06-15 Ai 기반의 소셜 네트워크 서비스 분석 장치

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020200184640A Division KR20220093671A (ko) 2020-12-28 2020-12-28 Ai 기반의 소셜 네트워크 서비스 분석 장치

Publications (1)

Publication Number Publication Date
KR20230096932A true KR20230096932A (ko) 2023-06-30

Family

ID=82401779

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020200184640A KR20220093671A (ko) 2020-12-28 2020-12-28 Ai 기반의 소셜 네트워크 서비스 분석 장치
KR1020230076860A KR20230096932A (ko) 2020-12-28 2023-06-15 Ai 기반의 소셜 네트워크 서비스 분석 장치

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020200184640A KR20220093671A (ko) 2020-12-28 2020-12-28 Ai 기반의 소셜 네트워크 서비스 분석 장치

Country Status (1)

Country Link
KR (2) KR20220093671A (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102560907B1 (ko) * 2022-10-24 2023-07-31 주식회사 모비젠 개선된 학습모델을 통해 재난발생여부를 판단하는 방법 및 그 장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200022144A (ko) 2018-08-22 2020-03-03 울산과학기술원 감성사전 구축을 통한 주택시장 동향 분석을 위한 시스템 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200022144A (ko) 2018-08-22 2020-03-03 울산과학기술원 감성사전 구축을 통한 주택시장 동향 분석을 위한 시스템 및 방법

Also Published As

Publication number Publication date
KR20220093671A (ko) 2022-07-05

Similar Documents

Publication Publication Date Title
US10832008B2 (en) Computerized system and method for automatically transforming and providing domain specific chatbot responses
CN107220352B (zh) 基于人工智能构建评论图谱的方法和装置
JP7187545B2 (ja) 名前付きエンティティの構文解析および識別に基づくクロスドキュメントの修辞的つながりの判断
Nigam et al. Towards a robust metric of opinion
US7395498B2 (en) Apparatus and method for evaluating web pages
Ankolekar et al. Supporting online problem-solving communities with the semantic web
CN1745364B (zh) 用于扩展应用程序首选项类的系统和方法
CN113377850A (zh) 认知物联网大数据技术平台
KR20160021110A (ko) 텍스트 매칭 장치와 방법 및 텍스트 분류 장치와 방법
US20130246442A1 (en) System for requirement identification and analysis based on capability model structure
CN107526718A (zh) 用于生成文本的方法和装置
US10467262B2 (en) Customized visualization based intelligence augmentation
Park et al. Systematic review on chatbot techniques and applications
JP5848199B2 (ja) 影響力予測装置、影響力予測方法、及びプログラム
KR20230096932A (ko) Ai 기반의 소셜 네트워크 서비스 분석 장치
CN116541493A (zh) 基于意图识别的交互应答方法、装置、设备、存储介质
CN114817755A (zh) 一种用户互动内容管理方法、装置和存储介质
KR102368043B1 (ko) 사용자 정의 토픽 모델링을 활용한 사용자 관심 뉴스 추천 장치 및 그 방법
CN116226494A (zh) 一种用于信息搜索的爬虫系统及方法
Li et al. Multi-agent systems for web-based map information retrieval
JP2010026624A (ja) リスティング運用支援装置及びリスティング運用支援方法
CN115640403A (zh) 基于知识图谱的知识管控方法及装置
CN115269862A (zh) 一种基于知识图谱的电力问答与可视化系统
Segev Adaptive ontology use for crisis knowledge representation
Kerekešová et al. Using the virtual assistant Alexa as a communication channel for road traffic situation

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E601 Decision to refuse application