KR101583188B1 - 문제 사이트 발굴 방법 및 문제 사이트 발굴 시스템 - Google Patents

문제 사이트 발굴 방법 및 문제 사이트 발굴 시스템 Download PDF

Info

Publication number
KR101583188B1
KR101583188B1 KR1020150092945A KR20150092945A KR101583188B1 KR 101583188 B1 KR101583188 B1 KR 101583188B1 KR 1020150092945 A KR1020150092945 A KR 1020150092945A KR 20150092945 A KR20150092945 A KR 20150092945A KR 101583188 B1 KR101583188 B1 KR 101583188B1
Authority
KR
South Korea
Prior art keywords
pages
page
crawled
file identifier
site
Prior art date
Application number
KR1020150092945A
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 부산대학교 산학협력단
Application granted granted Critical
Publication of KR101583188B1 publication Critical patent/KR101583188B1/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/10Services
    • G06Q50/26Government or public services
    • 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/10Services
    • 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/10Services
    • G06Q50/22Social work or social welfare, e.g. community support activities or counselling services
    • G06Q50/30

Landscapes

  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Health & Medical Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Marketing (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Educational Administration (AREA)
  • Development Economics (AREA)
  • Operations Research (AREA)
  • Child & Adolescent Psychology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

문제 사이트 발굴 방법 및 문제 사이트 발굴 시스템이 개시된다. 본 발명의 일실시예에 따른 문제 사이트 발굴 방법은, 사이트 목록에 포함된 파일 식별자 각각을 대상으로 페이지를 크롤링하는 단계와, 상기 크롤링된 페이지의 총수와, 상기 크롤링된 페이지 내 문제 페이지의 총수를 카운팅하는 단계, 및 상기 페이지의 총수와 상기 문제 페이지의 총수에 기초하여, 주기 도래에 따른 차기 크롤링시의, 상기 파일 식별자 별 크롤링 페이지수를 조정하는 단계를 포함한다.

Description

문제 사이트 발굴 방법 및 문제 사이트 발굴 시스템{METHOD AND SYSTEM FOR DISCOVERING PROBLEM SITES}
본 발명은 청소년의 자살, 따돌림, 폭력 등과 같은 위험 상황을 조기에 인지하고 전문가에 의한 효과적인 대응을 통해 위험 상황에서 청소년을 신속하게 구할 수 있도록 하기 위한 문제 사이트 발굴 방법 및 문제 사이트 발굴 시스템에 관한 것이다.
일반적으로 빅데이터 기술은 온라인 상의 구조화되지 않은 텍스트 기반의 문서를 수집하고, 수집된 문서를 정제하여 단어를 추출하거나 정제된 문서를 가공하고, 원시 데이터 및 정제 가공된 문서를 대용량 스토리지에 저장하고, 필요한 경우 원시 데이터 및 정제 가공된 문서를 데이터베이스에 입력하여 데이터베이스를 갱신하고, 정제 가공된 문서와 데이터베이스를 기반으로 다양한 통계 기법을 활용하여 데이터를 분석하고, 분석한 결과를 여러 가지 기법을 통해 온라인 상에 가시화하여 제공하는 것을 지칭할 수 있다.
이러한 빅데이터 기술을 이용한 연구가 많은 분야에서 이루어지고 있으며, 특히, 청소년의 자살과 같은 위험 상황을 예방하기 위한 시스템 설계를 목적으로 해당 위험 상황과 연관된 웹 페이지(버즈)의 발생 패턴을 분석하는 데 빅데이터 기술이 유용하게 활용될 수 있다.
도 1은 종래의 일실시예에 따른 청소년 자살 사이트 판단 방법의 순서를 도시한 흐름도이다.
도 1을 참조하면, 종래의 일실시예에 따른 청소년 자살 사이트 판단 방법은, 선정된 기간(예, 2012년 1월부터 10월 18일) 동안 키워드 '자살'이 언급된 온라인 상의 자료를 뉴스, 블로그, 카페, 게시판 등에서 크롤링하고(단계 110), 크롤링한 자료에서 불필요한 부분(예, HTML 태그)을 제거(필터 링)하여(단계 120) 추출한 본문(text)에 대해 품사를 태깅하고(단계 130), 본문에 포함되는 상기 키워드의 개수를 카운팅하여(단계 140), 상기 카운팅한 개수에 따라 상기 자료가 수집된 사이트를 자살 사이트로 판단(단계 150)할 수 있다.
한편, 상술한 종래의 빅데이터 기술을 활용한 청소년 위험 상황 관리 기술은, 과거의 특정 기간에서 사건 발생 이후의 추세나 기술통계와 같은 데이터 만을 제공하고 있어, 분석 결과 및 예방체계로의 연결성이 다소 약하고, 해당 위험 상황(예, 청소년의 자살)에 관한 응용 분야 전문가와의 연결이 없어, 보다 적극적인 예방 조치를 할 수 없다는 한계점을 가질 수 있다.
이에 따라, 조기에 적극적인 대응이 필요한 청소년의 위험 상황 관리 분야에서, 위험 상황을 포함하고 있는 웹 페이지를 동적으로 발굴하고, 위험도가 상대적으로 높은 웹 페이지를 청소년 상담 전문가에게 제공하여, 누적된 통계, 유사 사례 및 패턴 분석 결과 등에 기초한 상담지원 데이터마이닝에 활용되도록 하는 보다 효과적인 대응 체계의 구축이 요구되고 있다.
또한, 종래의 청소년 위험 상황 관리 기술은, 위험 상황과 연관된 웹 페이지를 수집하기 위해 크롤링하는 사이트가 고정적이고 협소하여 검색의 재현성이 약하며, 실시간성이 부족하다는 단점을 가질 수 있다.
이에 따라, 크롤링하려는 사이트의 리스트 및 각 사이트에서 크롤링하려는 페이지수를 동적으로 변경하여, 청소년의 위험 상황이 포함되는 웹 페이지의 발견 확률을 높일 수 있도록 하기 위한 기술이 요구되고 있다.
KR 10-2012-0072742(2012.07.04), 한국전자통신연구원 US 12/979,603(2010.12.28), General Electric Company KR 10-2012-0009890(2012.01.31), 숭실대학교 산학협력단 KR 10-2013-0061692(2013.05.30), 김태연
김석주, 소셜네트워크(SNS)를 활용한 위기관리 방안 모색: 미국 사례를 중심으로, 한국테러학회보, 2013, 제6권 제2호, ISSN 2005-4203, 페이지 5-21 송태민 외, 소셜 빅 데이터를 활용한 자살검색 요인 다변량 분석, 보건교육건강증진학회지, 2013, 제30권 제3호, ISSN 1229-4128 페이지 59-73 배정환 외, 소셜 빅데이터를 활용한 자살사건 반응 분석, 한국지형공단정보학회 춘계학술대회, 2014.5, 페이지 241-242
본 발명의 실시예는 온라인 상의 문제 페이지(버즈)를 조기에 수집 및 분석하여 전문가에게 실시간으로 제공 함으로써, 누적된 상담지원 데이터베이스를 기반으로 전문가의 중재를 통하여 해당 문제 페이지의 작성자에 대한 선별적이면서 적극적인 대응이 이루어지도록 하는 것을 목적으로 한다. 여기서, 문제 페이지는 예컨대 청소년의 자살, 따돌림, 폭력 등과 같은 위험 상황과 연관된 웹 페이지일 수 있다. 특히, 본 발명은 상기 문제 페이지에 대한 분석을 통해 위험도가 상대적으로 높은 사이트를 집중 관리하고, 상기 문제 페이지의 작성자(예, 청소년)를 상담 전문가와 연결하여, 상기 문제 페이지의 분석을 통해 누적된 통계, 유사 사례 및 패턴 분석 결과 등을 활용하여 해당 작성자가 신속하게 위험 상황에서 벗어날 수 있도록 하는 것을 목적으로 한다.
또한, 본 발명의 실시예는 상기 문제 페이지의 수집을 위해 크롤링하려는 사이트에 관한 사이트 목록을 고정시키거나, 사이트 별로 크롤링할 페이지수를 일괄 적용하는 것이 아니라, 이전에 상기 사이트 목록을 이용하여 문제 페이지를 수집한 결과에 기초하여, 상기 사이트 목록 또는 사이트 별 크롤링할 페이지수를 동적으로 변경 함으로써, 제한된 기간 이내에 문제 페이지를 보다 많이 신속하게 수집할 수 있도록 하여 검색의 재현율을 향상시킬 수 있도록 하는 것을 목적으로 한다.
본 발명의 일실시예에 따른 문제 사이트 발굴 방법은, 사이트 목록에 포함된 파일 식별자 각각을 대상으로 페이지를 크롤링하는 단계와, 상기 크롤링된 페이지의 총수와, 상기 크롤링된 페이지 내 문제 페이지의 총수를 카운팅하는 단계, 및 상기 페이지의 총수와 상기 문제 페이지의 총수에 기초하여, 주기 도래에 따른 차기 크롤링시의, 상기 파일 식별자 별 크롤링 페이지수를 조정하는 단계를 포함한다.
또한, 본 발명의 일실시예에 따른 문제 사이트 발굴 시스템은, 사이트 목록에 포함된 파일 식별자 각각을 대상으로 페이지를 크롤링하는 크롤링부와, 상기 크롤링된 페이지의 총수와, 상기 크롤링된 페이지 내 문제 페이지의 총수를 카운팅하는 연산부, 및 상기 페이지의 총수와 상기 문제 페이지의 총수에 기초하여, 주기 도래에 따른 차기 크롤링시의, 상기 파일 식별자 별 크롤링 페이지수를 조정하는 처리부를 포함한다.
또한, 본 발명의 다른 실시예에 따른 문제 사이트 발굴 방법은, 제한된 기간 내에 검색 재현율을 최대화할 수 있도록, 특정 주기로 검색(크롤링)할 파일 식별자의 리스트(사이트 목록)와 수집 건수(크롤링 페이지수)를 자동으로 설정하고, 갱신하는 고위험 사이트 동적 발굴 단계와, 수집되고 정제된 온라인 버즈(문제 페이지)를 의사 결정 트리, 사회 연결망 분석, 유전자 알고리즘 중 적어도 하나의 규칙 기반의 알고리즘을 이용하여 분석하여 청소년의 위험 상황에 관한 위험도를 설정하는 청소년 위험 상황 등급 설정 단계와, 위험도가 특정 임계치를 초과하는 고위험의 온라인 버즈를, SMS, MMS, 이메일 및 전화 통화 중 적어도 하나의 수단을 통해 청소년 위험 상황에 관한 전문가에게 실시간으로 전달하여 위험 상황을 알리는 조기 경보 및 전문가 연결 단계, 및 위험 상황을 통지 받은 전문가가 해당 온라인 버즈의 작성자(게시자, 전파자를 포함)와의 상담을 전개 시 필요한 통계, 유사 사례 및 패턴 분석 결과 중 적어도 하나의 정보를 전문가에게 제공해 주는 상담 지원 데이터마이닝 단계를 포함할 수 있다.
또한, 본 발명의 다른 실시예에 따른 문제 사이트 발굴 방법은, 제한된 기간 내에 검색 재현율을 최대화할 수 있도록, 상기 기간 내에 수집 및 분석이 가능한 최대 건수를 계산하여 수집 대상이 되는 사이트의 수(크롤링 페이지수)를 설정하고, 사전에 설정된 사이트 카테고리와 사이트 목록을 초기 파일 식별자로 랜덤 액세스하여, 사이트 목록에 할당된 수집 건수(크롤링 페이지수)에 따라 온라인 버즈를 수집하고 정제한 후, 청소년 위험 상황과 관련된 기본 질의어(자살 관련 키워드)의 포함 유무로 청소년 위험 상황과의 연관성을 평가하고, 사이트 별로 청소년 위험 상황과 연관된 것으로 평가된 온라인 버즈의 누적 건수와 수집 건수와의 비율(수집율)을 구하고, 상기 비율에 따라 사이트 목록을 주기 도래 시 업데이트 할 수 있다.
이때, 문제 사이트 발굴 방법은, 기계 학습 기반의 출현 단어 가중치를 이용하여 텍스트 기반의 페이지에 대해 특정한 주제(예, 청소년의 '자살')와의 연관성을 식별할 수 있다.
또한, 문제 사이트 발굴 방법은, BFS(Breadth First Search) 알고리즘에 따라 사이트 목록(Seed URL) 내 파일 식별자로 상기 온라인 버즈를 수집할 수 있다. 또한, 문제 사이트 발굴 방법은, 예컨대 구글, 네이버, 다음 등의 검색 API(Application Programming Interface)를 요청하여 반환된 결과값(검색 결과, XML 파일)을 파싱(parsing)하여 획득한 파일 식별자(URL) 이용하여 상기 온라인 버즈를 수집할 수 있다.
본 발명의 일실시예에 따르면, 온라인 상의 문제 페이지(버즈)를 조기에 수집 및 분석하여 전문가에게 실시간으로 제공 함으로써, 누적된 상담지원 데이터베이스를 기반으로 전문가의 중재를 통하여 해당 문제 페이지의 작성자에 대한 선별적이면서 적극적인 대응이 이루어지도록 할 수 있다.
또한, 본 발명의 일실시예에 따르면, 상기 문제 페이지에 대한 분석을 통해 위험도가 상대적으로 높은 사이트를 집중 관리하고, 상기 문제 페이지의 작성자(예, 청소년)를 상담 전문가와 연결하여, 상기 문제 페이지의 분석을 통해 누적된 통계, 유사 사례 및 패턴 분석 결과 등을 활용하여 해당 작성자가 신속하게 위험 상황에서 벗어날 수 있도록 할 수 있다.
또한, 본 발명의 일실시예에 따르면, 상기 문제 페이지의 수집을 위해 크롤링하려는 사이트에 관한 사이트 목록을 고정시키거나, 사이트 별로 크롤링할 페이지수를 일괄 적용하는 것이 아니라, 이전에 상기 사이트 목록을 이용하여 문제 페이지를 수집한 결과에 기초하여, 상기 사이트 목록 또는 사이트 별 크롤링할 페이지수를 동적으로 변경 함으로써, 제한된 기간 이내에 문제 페이지를 보다 많이 신속하게 수집할 수 있도록 하여 검색의 재현율을 향상시킬 수 있다.
도 1은 종래의 일실시예에 따른 청소년 자살 사이트 판단 방법의 순서를 도시한 흐름도이다.
도 2는 본 발명의 일실시예에 따른 문제 사이트 발굴 시스템의 내부 구성을 도시한 블록도이다.
도 3은 본 발명의 다른 실시예에 따른 문제 사이트 발굴 시스템의 구성을 도시한 블록도이다.
도 4는 본 발명에 따른 문제 사이트 발굴 시스템에서, 고위험 사이트를 동적으로 발굴하는 과정을 도시한 흐름도이다.
도 5는 본 발명에 따른 문제 사이트 발굴 시스템에서, 기계 학습 기반의 출현 단어 가중치를 이용하여 페이지를 식별하는 알고리즘을 도시한 흐름도이다.
도 6은 본 발명에 따른 문제 사이트 발굴 시스템에서, 검색 API를 요청하여 반환된 검색 결과를 이용하여, 웹 페이지를 크롤링하는 실시예를 도시한 도면이다.
도 7은 본 발명에 따른 문제 사이트 발굴 시스템에서, 문제 페이지(온라인 버즈) 분석을 위한 데이터베이스 개체 관계도를 도시한 도면이다.
도 8은 본 발명에 따른 문제 사이트 발굴 시스템에서, 문제 페이지 판별을 위한 자살 관련 키워드의 일례를 도시한 도면이다.
도 9는 본 발명의 일실시예에 따른 문제 사이트 발굴 방법의 순서를 도시한 흐름도이다.
이하, 첨부된 도면들을 참조하여 본 발명의 일실시예에 따른 응용프로그램 업데이트 장치 및 방법에 대해 상세히 설명한다. 그러나, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 2는 본 발명의 일실시예에 따른 문제 사이트 발굴 시스템의 내부 구성을 도시한 블록도이다.
도 2를 참조하면, 문제 사이트 발굴 시스템(200)은 크롤링부(210), 연산부(220), 처리부(230), 갱신부(240) 및 데이터베이스(250)를 포함하여 구성할 수 있다.
크롤링부(210)는 사이트 목록에 포함된 파일 식별자 각각을 대상으로 페이지를 크롤링한다. 크롤링부(210)는 크롤링한 페이지를 상기 각 파일 식별자와 연관시켜 데이터베이스(250)에 기록할 수 있다.
일례로, 크롤링부(210)는 관리자에 의해 설정된 시점(예, '2015년 6월 1일 0시')에, 입력된 사이트 목록 내 복수 개의 파일 식별자(초기 파일 식별자, 예를 들면, '100개의 URL')를 이용하여, 설정된 기간(예, '1주일') 동안 최초로 페이지를 크롤링하고, 이후, 설정된 주기(예, '2주')의 도래 시마다, 갱신되는 사이트 목록 내 복수 개의 파일 식별자를 이용하여 설정된 기간 동안 페이지를 크롤링할 수 있다.
이때, 크롤링부(210)는 설정된 기간(예, '1주일') 동안 선정된 크롤링 페이지수 이내의 페이지를 각 파일 식별자를 이용하여 크롤링할 수 있다. 여기서, 크롤링 페이지수는 파일 식별자 별로 선정되는 최대로 크롤링 가능한 페이지의 수로서, 상기 사이트 목록으로 최초로 크롤링 시, 동일한 크롤링 페이지수(예컨대, '10,000 페이지')가 파일 식별자 별로 선정될 수 있다.
크롤링부(210)는 상기 파일 식별자로 식별되는 상위 페이지 및 상기 상위 페이지로부터 지정된 깊이(depth) 이내로 링크되는 하위 페이지를 선정된 건수 만큼 크롤링 할 수 있다.
즉, 크롤링부(210)는 사이트 목록(Seed URL) 내 파일 식별자를 이용하여, BFS(Breadth First Search) 알고리즘에 따라 상위 페이지에서 하위 페이지로 확장해 가면서 크롤링할 수 있다.
예를 들어, 크롤링부(210)는 사이트 목록 내 '100개'의 URL을 통해 접속되는 페이지(상위 페이지)를 크롤링하고, 상기 각 상위 페이지에 URL이 링크되는 페이지(제1 하위 페이지)를 크롤링할 수 있다(상위 페이지로부터 깊이가 '1'인 경우). 또한, 크롤링부(210)는 상기 각 제1 하위 페이지에 URL이 링크되는 페이지(제2 하위 페이지)를 크롤링할 수 있다(상위 페이지로부터 깊이가 '2'인 경우). 이와 같이, 크롤링부(210)는 파일 식별자 별로 선정된 크롤링 페이지수(예컨대, '10,000 페이지')에 도달할 때까지 상기 설정된 기간 동안 반복해서 상위 페이지로부터 지정된 깊이 이내의 하위 페이지를 크롤링할 수 있다.
또한, 실시예에 따라, 크롤링부(210)는 검색 사이트로부터, 자살 관련 키워드 또는 자살 관련 키워드의 조합에 대한 검색 결과를 획득하고, 획득한 검색 결과에 포함되는 상위 n개(상기 n은 자연수)의 페이지를 크롤링할 수 있다. 이때, 크롤링한 n개의 페이지는 상기 자살 관련 키워드의 조합을 포함하고 있어 문제 페이지(온라인 버즈)로서 판별될 수 있다.
즉, 크롤링부(210)는 검색 API에 자살 관련 키워드 또는 자살 관련 키워드의 조합에 대한 검색을 요청하고, 반환된 결과값(검색 결과)을 파싱하여 획득한 파일 식별자(URL)를 이용하여 상기 문제 페이지로 판별되는 n개의 페이지를 크롤링할 수 있다.
예를 들어, 크롤링부(210)는 도 8에 도시한 문제 페이지와 연관된 자살 관련 키워드 중에서 두 개의 자살 관련 키워드 '동반', '자살'을 조합하여 자살 관련 키워드의 조합 '동반 자살'을 생성하고, 예컨대 구글, 네이버, 다음 등의 검색 API를 오픈하여, 상기 자살 관련 키워드의 조합 '동반 자살'로 검색을 요청하고, 검색 API로부터 반환된 검색 결과(XML 파일)에 링크된 상위 100개의 페이지를 크롤링할 수 있다. 크롤링부(210)는 크롤링한 각 페이지를, 자살 관련 키워드의 조합, 검색 결과(XML 파일), 및 크롤링한 각 페이지의 게시일시 중 적어도 하나와 연관시켜, 문제 페이지로서 데이터베이스(250)에 기록할 수 있다. 이때, 문제 사이트 발굴 시스템(200)은 크롤링한 각 페이지의 파일 식별자(URL)를 포함하는 사이트 목록(SeedURL List)을 생성할 수 있다.
연산부(220)는 크롤링된 페이지의 총수와, 크롤링된 페이지 내 문제 페이지의 총수를 카운팅한다.
즉, 연산부(220)는 설정된 기간(예, '1주일) 동안 사이트 목록 내 각 파일 식별자를 이용하여 크롤링된 상위 페이지 및 하위 페이지의 총수를, 상기 페이지의 총수로서 카운팅할 수 있다.
예를 들어, 사이트 목록 내 100개의 파일 식별자 각각에 선정된 크롤링 페이지수가 '10,000 페이지'이고, 상기 기간 동안 상기 크롤링 페이지수 만큼의 페이지가 모두 크롤링된 경우, 연산부(220)는 상기 페이지의 총수를 '100개 * 10,000 페이지'와 같이 연산할 수 있다.
또한, 연산부(220)는 상기 기간 동안 크롤링된 페이지 중, 설정된 값(예, '1')을 만족하는 페이지 스코어가 산출되어 문제 페이지로 판별된 페이지의 총수를, 상기 문제 페이지의 총수로서 카운팅할 수 있다.
여기서, 상기 페이지 스코어는 크롤링된 페이지에 자살 관련 키워드가 등장하는지 여부, 크롤링된 페이지에 등장하는 자살 관련 키워드에 설정되는 가중치, 크롤링된 페이지에 자살 관련 키워드가 등장하는 총횟수 및 크롤링된 페이지에 등장하는 자살 관련 키워드의 개수 중 적어도 하나에 근거하여 후술하는 처리부(230)에 의해 산출될 수 있다.
처리부(230)는 상기 페이지의 총수와 상기 문제 페이지의 총수에 기초하여, 주기 도래에 따른 차기 크롤링시의, 상기 파일 식별자 별 크롤링 페이지수를 조정한다.
즉, 처리부(230)는 크롤링된 페이지 중에서 문제 페이지가 상대적으로 적게 발견된 파일 식별자에 선정된 크롤링 페이지수를 감소하는 대신, 문제 페이지가 상대적으로 많이 발견된 파일 식별자에 선정된 크롤링 페이지수를 증가시킴으로써, 주기를 거듭 함에 따라 파일 식별자 별 크롤링 페이지수가 조정된 사이트 목록에 기초하여 크롤링하도록 하여, 보다 많은 문제 페이지를 발견(수집)할 수 있게 된다.
구체적으로, 처리부(230)는 크롤링된 페이지 중 기대치보다 적은 문제 페이지가 발견된 파일 식별자에 선정된 크롤링 페이지수를, 문제 페이지의 수(ri)와 기대치 간의 차 만큼 감소하여 조정할 수 있다.
또한, 처리부(230)는 크롤링된 페이지 중 기대치보다 많은 문제 페이지가 발견된 파일 식별자에 선정된 크롤링 페이지수를, 문제 페이지의 수(ri)와 기대치 간의 차 만큼 증가하여 조정할 수 있다.
이때, 처리부(230)는 파일 식별자 별로 결정된 상기 변동되는 페이지수의 합산 건수가, 상기 크롤링된 페이지의 총수와 일치하도록, 상기 파일 식별자 별 크롤링 페이지수를 조정할 수 있다.
다시 말해, 처리부(230)는 사이트 목록 내 파일 식별자 각각에 선정된 크롤링 페이지수를 증가 또는 감소하여 조정 시, 모든 파일 식별자를 이용하여 크롤링된 페이지의 총수(예, '100개 * 10,000 페이지')에는 변함이 없도록 상기 파일 식별자 별 크롤링 페이지수를 조정할 수 있다.
이에 따라, 처리부(230)는 주기 도래 시마다 동일한 수의 페이지를 크롤링하면서도, 문제 페이지가 상대적으로 많이 수집된 파일 식별자를 통해 보다 많은 페이지를 크롤링 할 수 있어, 제한된 기간 동안 문제 페이지를 수집할 확률(수집율)을 높일 수 있게 된다.
일례로, 처리부(230)는 수학식 1과 같이, 상기 문제 페이지의 총수를 상기 페이지의 총수로 나누어, 상기 사이트 목록에 대한 문제 페이지의 수집율(collection rate, cr)을 계산할 수 있다.
Figure 112015063331804-pat00001
여기서, ci는 사이트 목록 내 i번째 파일 식별자에 선정된 최대로 크롤링 가능한 페이지의 수로서, 본 실시예에서는 i번째 파일 식별자를 이용하여 실제로 페이지를 크롤링한 건수와 동일한 값을 나타낼 수 있으며, ri는 i번째 파일 식별자를 이용하여 크롤링한 페이지 내 문제 페이지의 수를 나타낼 수 있으며, 사이트 목록은 n개(n은 자연수)의 파일 식별자를 가지는 것으로 가정할 수 있다.
또한, 처리부(230)는 사이트 목록 내 임의의 파일 식별자(i번째 파일 식별자)에 대해 상기 페이지를 크롤링한 건수(ci), 크롤링된 페이지 내 문제 페이지의 수(ri), 및 상기 수집율(cr) 중 적어도 하나를 이용하여, 상기 임의의 파일 식별자에 대해 변동되는 페이지수를 결정할 수 있다.
구체적으로, 처리부(230)는 i번째 파일 식별자를 이용하여 페이지를 크롤링한 건수(ci) 및 상기 수집율(cr)을 곱셈 연산하여 상기 크롤링된 페이지에 포함되는 것으로 기대되는 문제 페이지의 수(기대치)를 계산하고, 상기 크롤링된 페이지 중 실제로 발견된 문제 페이지의 수(ri)에서, 상기 계산한 문제 페이지의 수를 뺀 값을, 상기 i번째 파일 식별자에 선정된 크롤링 페이지수(ci)에 더하여, 수학식 2와 같이, 변동되는 페이지수(Ci)를 결정할 수 있다.
Figure 112015063331804-pat00002
예를 들어, 처리부(230)는 1번째 파일 식별자를 이용하여 페이지를 크롤링한 건수(c1)가 '10,000'이고, 상기 크롤링된 페이지에 포함되는 것으로 기대되는 문제 페이지의 수가 '5,000'이고, 상기 크롤링된 페이지에서 실제로 발견된 문제 페이지의 수(r1)가 '3,000'인 경우, 주기 도래에 따라 1번째 파일 식별자를 이용하여 차기 크롤링할 페이지수(C1)를, '10,000 + [3,000 - 5,000] = 8,000'와 같이 조정할 수 있다.
또한, 처리부(230)는 2번째 파일 식별자를 이용하여 페이지를 크롤링한 건수(c2)가 '10,000'이고, 상기 크롤링된 페이지에 포함되는 것으로 기대되는 문제 페이지의 수가 '5,000'이고, 상기 크롤링된 페이지에서 실제로 발견된 문제 페이지의 수(r2)가 '8,000'인 경우, 주기 도래에 따라 2번째 파일 식별자를 이용하여 차기 크롤링할 페이지수(C2)를, '10,000 + [8,000 - 5,000] = 13,000'와 같이 조정할 수 있다.
또한, 처리부(230)는 조정된 차기 크롤링할 페이지수(Ci)의 총합이, 조정 전 크롤링된 페이지(ci)의 총수와 같아지도록, 각 차기 크롤링할 페이지수를 조정할 수 있다.
이와 같이, 본 발명의 일실시예에 따르면, 사이트 별로 크롤링할 페이지수(파일 식별자 별 크롤링 페이지수)를 일괄 적용하는 것이 아니라, 이전에 사이트 목록을 이용하여 문제 페이지를 수집한 결과(크롤링된 페이지의 총수 및 크롤링된 페이지 내 문제 페이지의 총수)에 기초하여, 사이트 별로 크롤링할 페이지수를 동적으로 변경 함으로써, 제한된 기간 이내에 문제 페이지를 보다 많이, 신속하게 수집할 수 있도록 하여, 검색의 재현율을 향상시킬 수 있다.
또한, 실시예에 따라, 문제 사이트 발굴 시스템(200)은 사이트 목록 자체를 업데이트하여, 주기 도래에 따른 차기 크롤링시 업데이트된 사이트 목록에 기초하여 크롤링하도록 할 수 있다. 즉, 문제 사이트 발굴 시스템(200)은 사이트 목록 내 임의의 파일 식별자를, 문제 페이지를 발견할 가능성이 상대적으로 높은 파일 식별자로 변경할 수 있다.
일례로, 갱신부(240)는 조정된 크롤링 페이지수가 정해진 수치 이하인, 파일 식별자를 사이트 목록에서 삭제하여, 사이트 목록을 갱신할 수 있다.
예를 들어, 갱신부(240)는 사이트 목록 내 파일 식별자 A에 대한 크롤링 페이지수가 '10,000'에서 '4,000'으로 조정되어, 정해진 수치 '5,000'이하인 경우, 파일 식별자 A를 사이트 목록에서 삭제할 수 있다.
다른 일례로, 연산부(220)는 파일 식별자 각각으로 크롤링된 페이지 내 문제 페이지의 수를 카운팅하고, 처리부(230)는 파일 식별자 별 문제 페이지의 수에 따라 사이트 목록 내 파일 식별자에 대해 랭킹을 부여할 수 있다. 갱신부(240)는 선정된 랭킹 미만의 파일 식별자를 사이트 목록에서 삭제할 수 있다. 또한, 갱신부(240)는 사이트 목록에서 랭킹이 가장 낮은 파일 식별자를 삭제할 수 있다.
예를 들어, 처리부(230)는 사이트 목록에 포함된 파일 식별자가 100개인 경우, 파일 식별자 별 문제 페이지의 수가 많은 순서에 따라 내림차순으로 각 파일 식별자에 대해 랭킹을 부여할 수 있다. 즉, 처리부(230)는 파일 식별자 별 문제 페이지의 수가 가장 많은 파일 식별자에 대해 랭킹 1을 부여하고, 파일 식별자 별 문제 페이지의 수가 가장 적은 파일 식별자에 대해 랭킹 100을 부여할 수 있다. 갱신부(240)는 파일 식별자 별 문제 페이지의 수에 따라 90 미만의 랭킹이 부여된 10개의 파일 식별자를 삭제할 수 있다. 또한, 갱신부(240)는 파일 식별자 별 문제 페이지의 수가 가장 적은 랭킹이 100으로 부여된 파일 식별자를 사이트 목록에서 삭제할 수 있다.
또한, 갱신부(240)는 삭제된 파일 식별자의 개수에 상응하여, 데이터베이스(250)에서 검색된 신규 파일 식별자를 추가하여, 사이트 목록을 갱신할 수 있다.
즉, 데이터베이스(250)는 크롤링할 페이지에 관한 임의의 신규 파일 식별자를 기록해 둘 수 있으며, 갱신부(240)는 사이트 목록에서 파일 식별자가 삭제 됨에 따라, 삭제된 개수 만큼 데이터베이스(250)로부터 검색한 신규 파일 식별자를 자동으로 추가하여 사이트 목록을 갱신할 수 있다. 이에 따라, 크롤링부(210)는 주기 도래 시마다 갱신된 사이트 목록을 이용하여 신규의 페이지를 크롤링 함으로써 크롤링 대상이 되는 페이지를 확장할 수 있고 문제 페이지의 수집율을 높일 수 있다.
이때, 갱신부(240)는 추가할 신규 파일 식별자가 데이터베이스(250)에 없는 경우, 상기 문제 페이지로 판별된 페이지의 파일 식별자를 사이트 목록에 추가하여 사이트 목록을 갱신할 수 있다.
여기서, 문제 페이지로 판별된 페이지는 사이트 목록에 파일 식별자가 포함된 상위 페이지와, 사이트 목록에 파일 식별자가 포함되어 있지는 않은 하위 페이지로 구분할 수 있다. 갱신부(240)는 문제 페이지로 판별되는 '하위 페이지' 중에서 '상위 페이지'로부터 선정된 깊이(예, '1') 이내의 제1 하위 페이지의 파일 식별자를 사이트 목록에 추가할 수 있다. 이에 따라, 크롤링부(210)는 주기 도래 시, 문제 페이지로 판별된 상기 제1 하위 페이지를 상위 페이지로 하여, 보다 많은 하위 페이지들을 크롤링할 수 있게 된다.
이와 같이, 본 발명의 일실시예에 따르면, 문제 페이지의 수집을 위해 크롤링하려는 사이트에 관한 사이트 목록을 고정시키지 않고, 이전에 사이트 목록을 이용하여 문제 페이지를 수집한 결과에 기초하여, 사이트 목록을 동적으로 변경 함으로써, 주기 도래에 따른 차기 크롤링시, 제한된 기간 이내에 문제 페이지를 보다 많이 신속하게 수집할 수 있도록 하여 검색의 재현율을 향상시킬 수 있다.
이하에서는, 사이트 목록을 이용하여 크롤링된 페이지 중에서 문제 페이지를 판별하는 과정을 설명한다.
처리부(230)는 상기 크롤링된 페이지를 필터링하고, 상기 필터링을 통해 추출되는, 텍스트 또는 이모티콘을 이용하여, 상기 페이지 중에서 문제 페이지를 판별할 수 있다.
예를 들어, 처리부(230)는 상기 크롤링된 페이지에 관한 소스 코드에서 HTML 태그, 주석 등 불필요한 부분을 필터링하여 텍스트(본문)을 추출할 수 있다. 또한, 처리부(230)는 상기 소스 코드로부터, 작성자의 작성 당시의 감정(예, '우는 얼굴: 슬픔, 웃는 얼굴: 행복 등')을 나타내기 용이한 이모티콘을 추출할 수 있다.
이때, 처리부(230)는 상기 소스 코드로부터, 페이지의 게시일시(시간), 페이지의 작성자에 관한 성별, 연령, 사용자ID 및 작성 당시의 감정 중 적어도 하나의 정보를 추출할 수 있다.
처리부(230)는 추출한 텍스트에 대해, 품사를 태깅하거나, 띄어쓰기를 수정하거나, 인칭 및 시제를 변경하거나, 복수형을 단수형으로 변경하거나, 원형으로 변경하는 정제를 실시하고, 정제된 텍스트 또는 상기 추출한 이모티콘이 자살 관련 키워드(예, '자살', '한강대교', '수면제' 등)와 관련되는지를 확인 함으로써, 상기 페이지와 문제 페이지와의 연관성을 결정할 수 있다.
여기서, 상기 문제 페이지는 특정 문제를 다루고 있는 페이지로서, '청소년의 자살'에 관한 페이지를 문제 페이지의 일례로 들 수 있다. 이 경우, 자살 관련 키워드는 '청소년의 자살'과 연관되는 단어('죽다', '왕따', '슬프다' 등)로 지정될 수 있으며, 상기 자살 관련 키워드의 조합(예, '동반 자살')이 등장하는 페이지는 문제 페이지일 확률이 보다 높아질 수 있다.
예를 들어, 도 8을 참조하면, 데이터베이스(250)는 '청소년의 자살'에 관한 자살 관련 키워드(kij)를 n*m 행렬로서 기록할 수 있으며, 연관 관계가 상대적으로 높은 자살 관련 키워드들을 동일한 행(n) 또는 열(m)에 배치하여, 크롤링된 페이지에 등장하는 임의의 자살 관련 키워드에 대한 가중치(Wij)를, 상기 자살 관련 키워드가 배치된 행(n) 또는 열(m)과 동일한 행(n) 또는 열(m)에 배치되는, 연관 관계가 높은 자살 관련 키워드들이 상기 페이지에 등장하는 횟수를 이용하여 연산하도록 할 수 있다.
즉, 연산부(220)는 크롤링된 페이지에 자살 관련 키워드(도 8에 도시한 n*m 행렬 내 kij)가 등장하는 총횟수를 수학식 3과 같이 카운팅할 수 있다.
Figure 112015063331804-pat00003
연산부(220)는 상기 총횟수에서, 임의의 자살 관련 키워드(kij)가 갖는 횟수(xij)를 이용하여, 수학식 3과 같이, 임의의 자살 관련 키워드(kij)에 대한 가중치(Wij)를 연산할 수 있다(연관 관계가 높은 자살 관련 키워드들이 동일한 열(m)에 배치되는 경우).
Figure 112015063331804-pat00004
일례로, 처리부(230)는 크롤링된 페이지에 자살 관련 키워드가 등장하는지 여부(Pij) 및 상기 크롤링된 페이지에 등장하는 자살 관련 키워드에 설정되는 가중치(Wij)에 근거하여, 수학식 5와 같이, 상기 페이지에 대한 페이지 스코어를 산출할 수 있다.
Figure 112015063331804-pat00005
예를 들어, 도 8을 참조하면, 처리부(230)는 크롤링된 페이지에 k11 '죽다'가 등장하면 P11을 '1'로 부여하고, 크롤링된 페이지에 k21 '왕따'가 등장하면 P21을 '1'로 부여하고, 크롤링된 페이지에 k31 '슬프다'가 등장하지 않으면 P31을 '0'으로 부여할 수 있다.
또한, 처리부(230)에서 초기 파일 식별자가 포함된 사이트 목록을 이용하여 최초로 크롤링된 페이지에 대한 페이지 스코어를 산출 시, 설정된 가중치(Wij)는 자살 관련 키워드 별로 동일할 수 있다(예, '0.1). 이후, 연산부(220)는 상기 크롤링된 페이지에 자살 관련 키워드가 등장하는 총횟수를 카운팅하고, 상기 총횟수에서, 임의의 자살 관련 키워드가 갖는 횟수를 이용하여, 상기 임의의 자살 관련 키워드에 설정된 가중치를 수학식 4를 이용하여 변경할 수 있다.
처리부(230)는 설정된 값을 만족하는 페이지 스코어가 산출되는 페이지를, 상기 문제 페이지로 판별할 수 있다. 예를 들어, 처리부(230)는 페이지 스코어가 '0'을 초과하는 페이지를, 문제 페이지로 판별할 수 있다.
다른 일례로, 처리부(230)는 크롤링된 페이지에 등장하는 자살 관련 키워드의 개수에 근거하여, 상기 페이지에 대한 페이지 스코어를 산출하고, 설정된 값을 만족하는 페이지 스코어가 산출되는 페이지를, 상기 문제 페이지로 판별할 수 있다.
예를 들어, 처리부(230)는 도 8에 도시한 '청소년의 자살'과 연관된 자살 관련 키워드가 크롤링된 페이지에 등장하는 개수를 상기 페이지 스코어로서 산출하고, 페이지 스코어가 설정된 값 '2' 이상인 페이지를, 문제 페이지로 판별할 수 있다. 이 경우, 처리부(230)는 '동반' 및 '자살'과 같은 자살 관련 키워드의 조합이 등장하는 페이지를, 문제 페이지로 판별할 수 있다.
실시예에 따라, 처리부(230)는 문제 페이지로 판별된 페이지에 관한 정보를 데이터베이스(250)에 기록할 수 있다.
구체적으로, 처리부(230)는 문제 페이지에 대한 파일 식별자, 게시일시(시간), 문제 페이지에 등장하는 자살 관련 키워드 또는 자살 관련 키워드의 조합, 문제 페이지의 작성자에 관한 성별, 연령, 사용자ID 및 작성 당시의 감정 중 적어도 하나의 정보를, 문제 페이지로부터 추출하여 데이터베이스(250)에 기록할 수 있다.
예를 들어, 처리부(230)는 문제 페이지에 사용된 단어를 통해, 문제 페이지를 작성한 작성자의 나이대(예, '청소년', '성인', '초등학생', '중학생', '고등학생')를 추출하여 데이터베이스(250)에 기록할 수 있다.
또한, 연산부(220)는 상기 자살 관련 키워드와 관련되는 이모티콘의 개수를 카운팅하고, 처리부(230)는 문제 페이지 내에, 이모티콘이 일정 개수 이상 포함되는 경우, 작성자의 성별 및 나이를 예컨대, '여성, 10대 청소년'과 같이 추출하고, 반복적으로 사용되는 이모티콘(예, '우는 얼굴', '좌절', '슬픔', '아픔' 등)을 통해, 작성자의 작성 당시의 감정 '슬픔, 괴로움'을 추출하여, 데이터베이스(250)에 기록할 수 있다.
이하에서는, 사이트 목록을 이용하여 크롤링된 페이지 내 문제 페이지를 전문가에게 리포팅하는 과정을 설명한다.
처리부(230)는 상기 문제 페이지를, 메시지, 이메일, 음성통화 및 영상통화 중 적어도 하나의 수단을 이용하여 지정된 전문가 단말로 리포팅 할 수 있다.
또한, 처리부(230)는 상기 문제 페이지에 관해 데이터베이스(250)에 기록된 정보를, 전문가 단말로 리포팅 할 수 있다.
예를 들어, 처리부(230)는 문제 페이지에 관한 게시일시와 자살 관련 키워드를 포함하는 정보를 전문가 단말로 리포팅 함으로써, 시간에 따른 자살 관련 키워드의 변화를 통해, 해당 문제 페이지와 관련한 트렌드를 전문가에게 알려줄 수 있다. 또한, 처리부(230)는 문제 페이지에 관한 파일 식별자, 작성자의 성별, 연령, 사용자ID 및 작성 당시의 감정 중 적어도 하나의 정보를 리포팅하여, 전문가 단말에서 작성자와의 상담 시, 상기 정보를 상담 자료로 활용하도록 할 수 있다.
이때, 처리부(230)는 상기 문제 페이지 내에, 자살 관련 키워드와 관련되는 이모티콘이 일정 개수 이상 포함되는 경우, 상기 문제 페이지를, 청소년 대상 문제 사이트로서 지정된 전문가 단말에 리포팅할 수 있다.
또한, 처리부(230)는 페이지 스코어에 기초하여 문제 페이지에 대해 위험도에 관한 등급(5단계 등급)을 설정하고, 임계치 이상의 페이지 스코어가 산출되어 4등급 이상의 고위험으로 설정된 문제 페이지를, 전문가 단말로 리포팅 할 수 있다.
이와 같이, 본 발명의 일실시예에 따르면, 온라인 상의 문제 페이지(버즈)를 조기에 수집 및 분석하여 전문가에게 실시간으로 제공 함으로써, 누적된 상담지원 데이터베이스를 기반으로 전문가의 중재를 통하여 해당 문제 페이지의 작성자에 대한 선별적이면서 적극적인 대응이 이루어지도록 할 수 있다. 즉, 본 발명에 따르면, 문제 페이지의 작성자(예, 청소년)를 상담 전문가와 연결하여, 문제 페이지의 분석을 통해 누적된 통계, 유사 사례 및 패턴 분석 결과 등을 활용하여 해당 작성자가 신속하게 위험 상황에서 벗어날 수 있도록 할 수 있다.
실시예에 따라, 갱신부(240)는 상기 문제 페이지에 관한 고위험 사이트 목록을 작성하고, 상기 고위험 사이트 목록을 바탕으로, 상기 사이트 목록에 포함된 파일 식별자를 갱신할 수 있다. 이를 통해, 문제 사이트 발굴 시스템(200)은 위험도가 상대적으로 높은 사이트를 집중 관리할 수 있게 된다.
도 3은 본 발명의 다른 실시예에 따른 문제 사이트 발굴 시스템의 구성을 도시한 블록도이다.
도 3을 참조하면, 문제 사이트 발굴 시스템(300)은 수집 및 정제부(310), 분석 및 평가부(320), 정보 제공 및 활용부(330) 및 데이터베이스(340)를 포함하여 구성될 수 있다.
수집 및 정제부(310)는 온라인 상의 버즈(문제 페이지)를 수집하여 정제하는 기능을 할 수 있다. 수집 및 정제부(310)는 크롤링부(311), 본문 추출부(312), 문서 정제부(313) 및 키워드 검색부(314)로 구성될 수 있다.
크롤링부(311)는 수집이 허용된 온라인 상의 버즈를 수집하고, 본문 추출부(312)는 수집된 버즈에서 HTML 태그, 자바 스크립트(Javascript) 등을 제거하여 텍스트로 된 본문을 추출하고, 문서 정제부(313)는 본문을 정제하여 형태소를 추출하고, 띄워 쓰기와 맞춤법을 교정하고, 최적의 품사를 도출하고, 키워드 검색부(314)는 정제된 본문(이하, 정제된 문제 페이지)으로부터 자살 관련 키워드를 검색할 수 있다.
이때, 수집 및 정제부(310)는 각 단계에서 생성되는 파일을, 수집일시, 파일 식별자 및 본문 추출 일시 중 적어도 하나에 연관시켜 데이터베이스(340)에 기록할 수 있다.
분석 및 평가부(320)는 수집 및 정제부(310)에서 출력된 정제된 문제 페이지에 대한 분석 및 평가를 수행할 수 있다. 분석 및 평가부(320)는 고위험 사이트 동적 발굴부(321), 페이지 분석부(322), 청소년 위험 상황 등급 설정부(323), 일반 통계 분석부(324) 및 분석 결과 저장부(325)로 구성될 수 있다.
고위험 사이트 동적 발굴부(321)는 정제된 문제 페이지를 이용하여 고위험 사이트 목록을 작성하고, 고위험 사이트 목록에 따라 초기 파일 식별자가 포함된 사이트 목록을 갱신할 수 있다.
페이지 분석부(322)는 정제된 문제 페이지를 분석하여, 자살 관련 키워드, 동반어(자살 관련 키워드의 조합), 사용자 ID, 게시일시 및 파일식별자 중 적어도 하나를 데이터베이스(340)에 기록할 수 있다. 또한, 페이지 분석부(322)는 작성자의 성별과 연령 등을 추정하거나, 페이지 작성 당시의 감정을 평가할 수도 있다.
청소년 위험 상황 등급 설정부(323)는 정제된 문제 페이지에 대한 정량 평가를 수행하여, 청소년의 위험 상황에 관한 위험도를 설정할 수 있다.
청소년 위험 상황 등급 설정부(323)는 자살 관련 키워드의 등장 횟수, 페이지 스코어, 의사 결정 트리에 의한 탐색, 사회 연결망 분석에 의한 단어들간의 관계, 유전 알고리즘에 의한 단어의 가중치와 임계치 설정, 그 외 다양한 규칙 기반의 알고리즘 중 적어도 하나의 방식을 이용하여, 정제된 문제 페이지에 대한 위험도를 산출할 수 있다. 청소년 위험 상황 등급 설정부(323)는 상술한 방식을 개별로 적용하거나, 다양한 알고리즘을 병행하면서 그 중 적절한 방식을 취사 선택하여 적용할 수도 있다.
일반 통계 분석부(324)는 필요한 데이터베이스를 다운로드 하고 적절한 통계도구를 사용하여 회귀 분석, 판별 분석, 신경망 분석, 구조 방정식 중 적어도 하나의 추론 통계를 수행하고, 수행한 결과를 정보 제공 및 활용부(330) 내 정보 제공부(333)를 통해 전문가에게 제공하도록 할 수 있다.
분석 결과 저장부(325)는 수행한 결과를 데이터베이스(340)에 기록할 수 있다.
정보 제공 및 활용부(330)는 실시간 경보 및 전문가 연결부(331), 상담지원 데이터마이닝부(332) 및 정보 제공부(333)로 구성될 수 있다.
실시간 경보 및 전문가 연결부(331)는 상기 위험도가 임계치를 초과하는 경우, 메시지, 통화, 이메일, SNS 중 적어도 하나의 수단을 통해 청소년 위기 상황 대응 전문가에게 위험도가 높은 문제 페이지와 그 작성자에 관해 실시간으로 통지할 수 있다.
전문가는 상기 문제 페이지의 작성자에 접촉을 시도하여, 전문가 자신의 경험과 역량, 상담지원 데이터마이닝부(332)에 누적된 통계, 유사 사례 및 패턴 분석 결과 중 적어도 하나를 참조하여, 상담을 실시할 수 있다.
정보 제공부(333)는 전문가가 아닌 일반 사용자에게 OLAP(OnLine Analytical Processing) 기반의 다차원 검색 서비스, 구글 그래프 API 기반의 추세 정보, 이메일에 의한 주기적인 뉴스레터, 필요 시 승인 하에 원시 데이터를 제공하여 연구 등에 활용되도록 할 수 있다.
도 4는 본 발명에 따른 문제 사이트 발굴 시스템에서, 고위험 사이트를 동적으로 발굴하는 과정을 도시한 흐름도이다.
도 4를 참조하면, 문제 사이트 발굴 시스템은 우선, 예비 운영을 실시하고(단계 410), 예비 운영을 통해 지정된 기간(예, '1주일') 내에 수집 및 분석이 가능한 최대 건수를 계산하여 수집 대상이 되는 사이트의 수(크롤링 페이지수)를 설정한다(단계 420).
문제 사이트 발굴 시스템은 사전에 설정된 사이트 카테고리 및 초기 파일 식별자를 포함하는 사이트 목록을 데이터베이스로부터 리드하고(단계 430), 상기 사이트 목록을 이용하여 페이지에 랜덤 액세스하여, 사이트 목록 내 파일 식별자에 할당된 수집 건수(크롤링 페이지수)에 따라 온라인 버즈(페이지)를 수집하고 정제한다(단계 440).
문제 사이트 발굴 시스템은 청소년 위험 상황과 관련된 기본 질의어(자살 관련 키워드)의 포함 유무로 청소년 위험 상황과의 연관성을 평가하고(단계 450), 사이트 별로 청소년 위험 상황과 연관된 것으로 평가된 온라인 버즈(문제 페이지)의 누적 건수와 수집 건수와의 비율(수집율)을 구한 다음(단계 460), 상기 비율에 따라, 상기 사이트 목록을 선정된 주기(예, '2주')로 업데이트한다(단계 470).
일례로, 문제 사이트 발굴 시스템은 상기 사이트 목록 내 파일 식별자에 대해, 문제 페이지의 수에 따라 랭킹을 부여하고, 선정된 랭킹 미만의 파일 식별자를 사이트 목록에서 삭제하는 대신, 신규 파일 식별자를 사이트 목록에 추가하여, 상기 사이트 목록을 갱신할 수 있다.
또한, 문제 사이트 발굴 시스템은 상기 사이트 목록 내 파일 식별자에 할당된 수집 건수(크롤링 페이지수)를, 수집율에 따라 갱신할 수 있다(수학식 1 참조).
이에 따라, 본 발명에 따르면, 사이트 목록을 고정한 채, 파일 식별자 별로 수집 건수(크롤링 페이지수)를 일괄 적용하거나, 수집 건수(크롤링 페이지수)를 제한하지 않고 크롤링하는 종전의 방식보다 검색의 재현율을 향상시킬 수 있다.
도 5는 본 발명에 따른 문제 사이트 발굴 시스템에서, 기계 학습 기반의 출현 단어 가중치를 이용하여 페이지를 식별하는 알고리즘을 도시한 흐름도이다.
도 5를 참조하면, 문제 사이트 발굴 시스템은 사이트 목록을 이용하여 크롤링된 페이지에 대한 분석을 위해, 상기 페이지의 식별을 시작한다(단계 501).
문제 사이트 발굴 시스템은 식별된 페이지에 대해 단어를 카운팅하여, 상기 페이지에 자살 관련 키워드가 등장하는지 여부에 관한 이진 파일을 생성한다(단계 502). 예를 들어, 문제 사이트 발굴 시스템은 상기 페이지에 상기 자살 관련 키워드가 등장하면 '1', 등장하지 않으면 '0'을 부여하여, 상기 이진 파일을 생성할 수 있다.
문제 사이트 발굴 시스템은 상기 자살 관련 키워드의 등장 여부에 관한 이진 파일 및 단어별 관계 가중치 행렬(Wij)에 근거하여 상기 페이지에 대한 페이지 스코어를 계산 함으로써, 상기 페이지에 대해 문제 페이지와의 연관성을 평가할 수 있다(단계 503).
문제 사이트 발굴 시스템은 사전에 설문 조사(일반/위험군), 사전 실험(일반/위험군) 및 문헌 조사 중 적어도 하나를 실시하고(단계 504), 그 중 상위 35%의 단어를 이용해 단어별 관계 가중치 행렬(Wij)을 생성하여(단계 505), 상기 페이지 스코어의 계산 시, 단어별 관계 가중치 행렬을 이용할 수 있다.
문제 사이트 발굴 시스템은 페이지 스코어에 기초하여 각 페이지에 대해 Natural break에 의한 5단계 등급(위험도)을 설정한다(단계 506).
문제 사이트 발굴 시스템은 상기 페이지에 설정한 등급이 4단계 이상의 고위험인지 판단하고(단계 507), 고위험이 아닌 것으로 판단되는 경우, 단계 501로 이동하여 새로운 페이지를 식별한다.
문제 사이트 발굴 시스템은 고위험인 것으로 판단되는 경우, 상기 설정한 등급에 대해 타당성을 검토하고(단계 508), 타당성이 없으면 오류 원인을 분석하고 단계 501로 이동하여 새로운 페이지를 식별한다.
문제 사이트 발굴 시스템은 상기 설정한 등급에 타당성이 있으면, 벡터 정규화 값을 구하여 상기 단어별 관계 가중치 행렬(Wij)를 업데이트한다(단계 510).
이후, 문제 사이트 발굴 시스템은 상기 페이지에 대한 요약 정보(본문, 파일 식별자, 자살 관련 키워드, 작성자 정보 등)를 해당 분야의 전문가에게 발송하고(단계 511), 종료 명령의 발생에 따라 페이지의 분석을 종료한다(단계 512).
도 6은 본 발명에 따른 문제 사이트 발굴 시스템에서, 검색 API를 요청하여 반환된 검색 결과를 이용하여, 웹 페이지를 크롤링하는 실시예를 도시한 도면이다.
도 6을 참조하면, 문제 사이트 발굴 시스템은 설문 조사, 실험 및 문헌 조사 중 적어도 하나의 사전 연구를 통해 자살 관련 키워드 또는 자살 관련 키워드의 조합(동반어)을 생성한다(단계 601).
문제 사이트 발굴 시스템은 구글, 네이버, 다음 등과 같은 검색 API를 오픈하고(단계 602), 상기 생성한 자살 관련 키워드 또는 자살 관련 키워드의 조합에 대한 검색을 요청한다(단계 603).
문제 사이트 발굴 시스템은 상기 요청에 따라 반환되는 결과값(예, 'XML 파일')을 파싱하여(단계 605) 상기 결과값에 포함되는 상위 n개(상기 n은 자연수)의 파일 식별자(URL)를 획득하고, 획득한 파일 식별자로 연결되는 n개의 페이지를 크롤링한다(단계 606,607).
문제 사이트 발굴 시스템은 상기 자살 관련 키워드의 조합을 포함하고 있는 크롤링된 n개의 페이지를 문제 페이지(온라인 버즈)로서 판별하여 데이터베이스에 기록한다(단계 608).
예를 들어, 문제 사이트 발굴 시스템은 두 개의 자살 관련 키워드 '동반', '자살을 조합하여 자살 관련 키워드의 조합 '동반 자살'을 생성하고, 예컨대 구글, 네이버, 다음 등의 검색 API를 오픈하여, 상기 자살 관련 키워드의 조합 '동반 자살'로 검색을 요청하고, 검색 API로부터 반환된 검색 결과(XML 파일)에 링크된 상위 100개의 페이지를 크롤링하여, 크롤링된 각 페이지(문제 페이지)를 데이터베이스에 기록할 수 있다.
또한, 문제 사이트 발굴 시스템은 상기 파싱을 통해 추출한 출판일자(게시일자), 저자(작성자), 제목, 댓글 및 요약글 중 적어도 하나를, 획득한 파일 식별자(URL)와 함께 데이터베이스에 기록할 수 있다.
또한, 문제 사이트 발굴 시스템은 크롤링한 페이지들의 파일 식별자(URL)를 포함하는 사이트 목록(SeedURL List)을 생성할 수 있다.
도 7은 본 발명에 따른 문제 사이트 발굴 시스템에서, 문제 페이지(온라인 버즈) 분석을 위한 데이터베이스 개체 관계도를 도시한 도면이다.
도 7을 참조하면, 문제 사이트 발굴 시스템은 수집된 문제 페이지(온라인 버즈)를 분석하고, 분석된 정보를 상기 문제 페이지와 함께 해당 분야의 전문가에게 리포팅하여 알려줄 수 있다.
문제 사이트 발굴 시스템은 수집된 문제 페이지 중에서, 지정된 사이트 구분(카테고리) 및 게시일시에 해당하는 문제 페이지(온라인 버즈)에 대한 분석을 수행할 수 있다.
문제 사이트 발굴 시스템은 상기 문제 페이지를 분석하여, 파일 이름, 작성일자, 작성 시간, URL, 자살 관련 키워드, 자살 관련 키워드 빈도, 저자 ID(사용자 ID), 작성자의 추정 연령과 성별 및 추정되는 작성 당시의 감정 중 적어도 하나의 정보를, 상기 문제 페이지로부터 추출할 수 있다.
또한, 문제 사이트 발굴 시스템은 상기 문제 페이지가 작성되는 하루 중 시간(예, '오전', '오후', '저녁')이나 계절(예, '봄', '가을'), 상기 문제 페이지와 관련되는 학사일정 및 주요 이벤트 중 적어도 하나의 정보를 분석할 수도 있다.
이때, 문제 사이트 발굴 시스템은 상기 문제 페이지의 분석 시, 상기 문제 페이지에 대한 크롤링 시간, 크롤링 파일 저장 위치, 필터 링 시간, 필터 링 파일 저장 위치, 태기 파일 저장 위치, 카운팅 시간, 및 카운팅 파일 저장 위치 중 적어도 하나의 정보를 데이터베이스에 별도로 기록할 수 있다.
도 8은 본 발명에 따른 문제 사이트 발굴 시스템에서, 문제 페이지 판별을 위한 자살 관련 키워드의 일례를 도시한 도면이다.
도 8을 참조하면, 문제 사이트 발굴 시스템은 특정 문제 '청소년의 자살'을 다루는 문제 페이지의 판별을 위해, '청소년의 자살'과 연관되는 자살 관련 키워드(Kij)를 n*m 행렬로 마련할 수 있다.
문제 사이트 발굴 시스템은 크롤링된 페이지에 자살 관련 키워드가 등장하는지 여부(Pij) 및 상기 크롤링된 페이지에 등장하는 자살 관련 키워드에 설정되는 가중치(Wij)에 근거하여, 페이지에 대한 페이지 스코어를 산출하고, 설정된 값을 만족하는 페이지 스코어가 산출되는 페이지를, 상기 문제 페이지로 판별할 수 있다.
예를 들어, 문제 사이트 발굴 시스템은 크롤링된 페이지에 자살 관련 키워드 k11 '죽다'가 등장하면, P11을 '1'로 부여하고, 크롤링된 페이지에 k21 '왕따'가 등장하면 P21을 '1'로 부여하고, 크롤링된 페이지에 k31 '슬프다'가 등장하지 않으면 P31을 '0'으로 부여할 수 있다. 문제 사이트 발굴 시스템은 모든 자살 관련 키워드(kij)에 대해 크롤링된 페이지에 등장하는지 여부(Pij)를 확인하여, '0' 또는 '1'의 이진 파일을 생성할 수 있다.
문제 사이트 발굴 시스템은 초기 파일 식별자가 포함된 사이트 목록을 이용하여 최초로 크롤링된 페이지에 등장하는 자살 관련 키워드에 설정되는 가중치(Wij)를, 예컨대 '0.1'과 같이 동일한 값으로 설정할 수 있다.
이에 따라, 문제 사이트 발굴 시스템은 상술한 수학식 5에 기초하여, 모든 자살 관련 키워드(kij)에 대해, 크롤링된 페이지에 등장하는지 여부(Pij) '0' 또는 '1'과, 설정된 가중치(Wij) '0.1'를 곱한 값을 합산 함으로써, 상기 페이지에 대한 페이지 스코어를 산출할 수 있다.
문제 사이트 발굴 시스템은 상기 페이지에 대해 산출된 페이지 스코어가 설정된 값 예컨대 '0'을 초과하면, 상기 페이지를 문제 페이지로 판별할 수 있다.
또한, 문제 사이트 발굴 시스템은 상기 페이지에 대해 산출된 페이지 스코어가 임계치를 초과하여 4등급 이상의 고위험으로 설정된 문제 페이지를, 전문가 단말로 리포팅 할 수 있다.
이때, 문제 사이트 발굴 시스템은 크롤링된 페이지에서 임의의 자살 관련 키워드가 등장하는 횟수에 따라, 상기 자살 관련 키워드에 초기 설정된 가중치 '0.1'를 변경하여, 주기 도래에 따라 차기 크롤링된 페이지에 대한 페이지 스코어를 산출 시, 상기 변경된 가중치를 적용하여 페이지 스코어를 산출할 수 있다.
일례로, 문제 사이트 발굴 시스템은 크롤링된 페이지에 자살 관련 키워드(kij)가 등장하는 총횟수를 카운팅하고, 상기 총횟수 중에서, 임의의 자살 관련 키워드가 갖는 횟수의 비율을 이용하여, 상술한 수학식 4와 같이, 상기 임의의 자살 관련 키워드에 설정된 가중치를 변경할 수 있다.
예를 들어, 문제 사이트 발굴 시스템은 자살 관련 키워드 k11 '죽다'에 설정된 가중치 '0.1'을 변경 시, 자살 관련 키워드 k11 '죽다'와 동일한 열(m=1)에 배치된 자살 관련 키워드 k11 '죽다', k21 '왕따', k31 '슬프다', …의 상기 페이지에 등장하는 횟수를 '1', '2', '3', …과 같이 카운팅한 경우, 수학식 3에 따라,
Figure 112015063331804-pat00006
와 같이 자살 관련 키워드 k11 '죽다'와 동일한 열(m=1)에 배치된 자살 관련 키워드들이 상기 페이지에 등장하는 총횟수를 구할 수 있다. 문제 사이트 발굴 시스템은 상기 총횟수 '5'에 대한 자살 관련 키워드 k11 '죽다'의 등장 횟수 '1'의 비율, 즉 '1/5 = 0.2'를, 자살 관련 키워드 k11 '죽다'에 대한 가중치로 변경할 수 있다.
문제 사이트 발굴 시스템은 자살 관련 키워드 k11 '죽다'에 대한 가중치가 2배 증가 함에 따라, 차기 크롤링된 페이지에서 자살 관련 키워드 k11 '죽다'가 등장할 경우, 산출되는 페이지 스코어 또한 증가하게 되어, 상기 페이지를 문제 페이지로 판별할 가능성이 높아질 뿐만 아니라, 상기 페이지의 위험도에 관한 등급 또한 상향 조정될 수 있다.
이와 같이, 문제 사이트 발굴 시스템은 주기 도래 시마다 각 자살 관련 키워드에 대해 변경된 가중치를 적용하여 페이지 스코어를 산출 함으로써, 문제 페이지에 대한 판별의 정확도를 높일 수 있고, 해당 문제 페이지의 위험도를 보다 정확하게 분석하여 전문가에게 리포팅할 수 있게 된다.
이하, 도 9에서는 본 발명의 실시예들에 따른 문제 사이트 발굴 시스템(200)의 작업 흐름을 상세히 설명한다.
도 9는 본 발명의 일실시예에 따른 문제 사이트 발굴 방법의 순서를 도시한 흐름도이다.
본 실시예에 따른 문제 사이트 발굴 방법은 상술한 문제 사이트 발굴 시스템(200)에 의해 수행될 수 있다.
도 9를 참조하면, 단계(910)에서, 문제 사이트 발굴 시스템(200)은 사이트 목록에 포함된 파일 식별자 각각을 대상으로 페이지를 크롤링한다.
즉, 문제 사이트 발굴 시스템(200)은 사이트 목록(Seed URL) 내 파일 식별자를 이용하여, BFS(Breadth First Search) 알고리즘에 따라 상위 페이지에서 하위 페이지로 확장해 가면서 크롤링할 수 있다.
예를 들어, 문제 사이트 발굴 시스템(200)은 사이트 목록 내 '100개'의 URL을 통해 접속되는 페이지(상위 페이지)를 크롤링하고, 상기 각 상위 페이지에 URL이 링크되는 페이지(제1 하위 페이지)를 크롤링할 수 있다(상위 페이지로부터 깊이가 '1'인 경우). 또한, 문제 사이트 발굴 시스템(200)은 상기 각 제1 하위 페이지에 URL이 링크되는 페이지(제2 하위 페이지)를 크롤링할 수 있다(상위 페이지로부터 깊이가 '2'인 경우).
이와 같이, 문제 사이트 발굴 시스템(200)은 파일 식별자 별로 선정된 크롤링 페이지수(예컨대, '10,000 페이지')에 도달할 때까지 설정된 기간 동안 반복해서 상위 페이지로부터 지정된 깊이 이내의 하위 페이지를 크롤링할 수 있다.
단계(920)에서, 문제 사이트 발굴 시스템(200)은 상기 크롤링된 페이지의 총수와, 상기 크롤링된 페이지 내 문제 페이지의 총수를 카운팅하고, 단계(930)에서, 문제 사이트 발굴 시스템(200)은 상기 페이지의 총수와 상기 문제 페이지의 총수에 기초하여, 주기 도래에 따른 차기 크롤링시의, 상기 파일 식별자 별 크롤링 페이지수를 조정한다.
즉, 문제 사이트 발굴 시스템(200)은 크롤링된 페이지 중에서 문제 페이지가 상대적으로 적게 발견된 파일 식별자에 선정된 크롤링 페이지수를 감소하는 대신, 문제 페이지가 상대적으로 많이 발견된 파일 식별자에 선정된 크롤링 페이지수를 증가시킬 수 있다.
예를 들어, 문제 사이트 발굴 시스템(200)은 1번째 파일 식별자를 이용하여 페이지를 크롤링한 건수(c1)가 '10,000'이고, 상기 크롤링된 페이지에 포함되는 것으로 기대되는 문제 페이지의 수가 '5,000'이고, 상기 크롤링된 페이지에서 실제로 발견된 문제 페이지의 수(r1)가 '3,000'인 경우, 주기 도래에 따라 1번째 파일 식별자를 이용하여 차기 크롤링할 페이지수(C1)를, '10,000 + [3,000 - 5,000] = 8,000'와 같이 조정할 수 있다.
또한, 문제 사이트 발굴 시스템(200)은 2번째 파일 식별자를 이용하여 페이지를 크롤링한 건수(c2)가 '10,000'이고, 상기 크롤링된 페이지에 포함되는 것으로 기대되는 문제 페이지의 수가 '5,000'이고, 상기 크롤링된 페이지에서 실제로 발견된 문제 페이지의 수(r2)가 '8,000'인 경우, 주기 도래에 따라 2번째 파일 식별자를 이용하여 차기 크롤링할 페이지수(C2)를, '10,000 + [8,000 - 5,000] = 13,000'와 같이 조정할 수 있다.
또한, 문제 사이트 발굴 시스템(200)은 조정된 차기 크롤링할 페이지수(Ci)의 총합이, 조정 전 크롤링된 페이지(ci)의 총수와 같아지도록, 각 차기 크롤링할 페이지수를 조정할 수도 있다.
이와 같이, 본 발명의 일실시예에 따르면, 사이트 별로 크롤링할 페이지수(파일 식별자 별 크롤링 페이지수)를 일괄 적용하는 것이 아니라, 이전에 사이트 목록을 이용하여 문제 페이지를 수집한 결과(크롤링된 페이지의 총수 및 크롤링된 페이지 내 문제 페이지의 총수)에 기초하여, 사이트 별로 크롤링할 페이지수를 동적으로 변경 함으로써, 제한된 기간 이내에 문제 페이지를 보다 많이, 신속하게 수집할 수 있도록 하여, 검색의 재현율을 향상시킬 수 있다.
또한, 실시예에 따라, 문제 사이트 발굴 시스템(200)은 사이트 목록 자체를 업데이트하여, 주기 도래에 따른 차기 크롤링시 업데이트된 사이트 목록에 기초하여 크롤링하도록 할 수 있다. 즉, 문제 사이트 발굴 시스템(200)은 사이트 목록 내 임의의 파일 식별자를, 문제 페이지를 발견할 가능성이 상대적으로 높은 파일 식별자로 변경할 수 있다.
예를 들어, 문제 사이트 발굴 시스템(200)은 사이트 목록 내 파일 식별자 A에 대한 크롤링 페이지수가 '10,000'에서 '4,000'으로 조정되어, 정해진 수치 '5,000'이하인 경우, 파일 식별자 A를 사이트 목록에서 삭제할 수 있다.
또한, 문제 사이트 발굴 시스템(200)은 사이트 목록에 포함된 파일 식별자가 100개인 경우, 파일 식별자 별 문제 페이지의 수가 많은 순서에 따라 내림차순으로 각 파일 식별자에 대해 랭킹을 부여하고, 90 미만의 랭킹이 부여된 10개의 파일 식별자를 삭제하거나, 또는 파일 식별자 별 문제 페이지의 수가 가장 적은 랭킹이 100으로 부여된 파일 식별자를 사이트 목록에서 삭제할 수 있다.
이때, 문제 사이트 발굴 시스템(200)은 사이트 목록에서 파일 식별자가 삭제 됨에 따라, 삭제된 개수 만큼 데이터베이스로부터 검색한 신규 파일 식별자를 자동으로 추가하여 사이트 목록을 갱신할 수 있다. 이 경우, 문제 사이트 발굴 시스템(200)은 주기 도래 시, 신규 파일 식별자가 포함된 사이트 목록을 이용하여 페이지를 크롤링 함으로써 크롤링 대상이 되는 페이지를 확장하여 문제 페이지의 수집율을 높일 수 있다.
또는, 문제 사이트 발굴 시스템(200)은 문제 페이지로 판별된 페이지(하위 페이지)의 파일 식별자를 사이트 목록에 추가하여 사이트 목록을 갱신할 수도 있다. 이 경우, 문제 사이트 발굴 시스템(200)은 주기 도래 시, 문제 페이지로 판별된 하위 페이지를 상위 페이지로 하여, 보다 많은 하위 페이지들을 크롤링할 수 있게 된다.
본 발명의 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
200: 문제 사이트 발굴 시스템
210: 크롤링부
220: 연산부
230: 처리부
240: 갱신부
250: 데이터베이스

Claims (14)

  1. 크롤링부에서, 사이트 목록에 포함된 파일 식별자 각각을 대상으로 페이지를 크롤링(crawling)하는 단계;
    연산부에서, 크롤링 된 상기 페이지의 총수와, 상기 페이지 중에서 판별된 문제 페이지의 총수를 카운팅하는 단계;
    처리부에서, 상기 페이지의 총수와 상기 문제 페이지의 총수에 기초하여, 주기 도래에 따른 차기 크롤링시의, 상기 파일 식별자 별 크롤링 페이지수를 조정하는 단계;
    갱신부에서, 상기 조정된 크롤링 페이지수가 정해진 수치 이하인, 파일 식별자를 상기 사이트 목록에서 삭제하는 단계; 및
    상기 갱신부에서, 삭제된 파일 식별자의 개수에 상응하여, 데이터베이스에서 검색된 신규 파일 식별자를 추가하여 상기 사이트 목록을 갱신하는 단계로서, 상기 데이터베이스에 추가할 신규 파일 식별자가 없는 경우, 상기 문제 페이지로 판별된 페이지의 파일 식별자를 상기 사이트 목록에 추가하여 상기 사이트 목록을 갱신하는 단계
    를 포함하고,
    상기 처리부에서 상기 크롤링 페이지수를 조정하는 단계는,
    상기 문제 페이지의 총수를, 상기 페이지의 총수로 나누어 상기 사이트 목록에 대한 문제 페이지의 수집율을 계산하는 단계;
    임의의 파일 식별자에 대해 상기 페이지를 크롤링한 건수, 상기 페이지 중에서 판별된 문제 페이지의 수, 및 상기 수집율 중 적어도 하나를 이용하여, 상기 임의의 파일 식별자에 대해 변동되는 페이지수를 결정하는 단계; 및
    파일 식별자 별로 결정된 상기 변동되는 페이지수의 합산 건수가, 크롤링하는 페이지의 총수와 일치하도록, 상기 파일 식별자 별 크롤링 페이지수를 조정하는 단계
    를 포함하는 문제 사이트 발굴 방법.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 제1항에 있어서,
    상기 크롤링하는 단계는,
    상기 파일 식별자로 식별되는 상위 페이지 및 상기 상위 페이지로부터 지정된 깊이(depth) 이내로 링크되는 하위 페이지를 선정된 건수 만큼 크롤링하는 단계
    를 포함하는 문제 사이트 발굴 방법.
  7. 제1항에 있어서,
    상기 처리부에서, 상기 문제 페이지를, 메시지, 이메일, 음성통화 및 영상통화 중 적어도 하나의 수단을 이용하여 지정된 전문가 단말에 리포팅하는 단계; 및
    상기 갱신부에서, 상기 문제 페이지에 관한 고위험 사이트 목록을 작성하고, 상기 고위험 사이트 목록을 바탕으로, 상기 사이트 목록에 포함된 파일 식별자를 갱신하는 단계
    를 더 포함하는 문제 사이트 발굴 방법.
  8. 제1항에 있어서,
    상기 처리부에서, 상기 문제 페이지에 대한 파일 식별자, 게시일시, 상기 문제 페이지에 등장하는 자살 관련 키워드, 상기 자살 관련 키워드의 조합, 상기 문제 페이지의 작성자에 관한 성별, 연령, 사용자ID 및 작성 당시의 감정 중 적어도 하나의 정보를, 상기 문제 페이지로부터 추출하여 데이터베이스에 기록하는 단계
    를 더 포함하는 문제 사이트 발굴 방법.
  9. 제1항에 있어서,
    상기 크롤링부에서, 검색 사이트로부터 자살 관련 키워드 또는 상기 자살 관련 키워드의 조합에 대한 검색 결과를 획득하는 단계; 및
    상기 크롤링부에서, 상기 획득한 검색 결과에 포함되는 상위 n개(상기 n은 자연수)의 페이지를 크롤링하는 단계
    를 더 포함하는 문제 사이트 발굴 방법.
  10. 사이트 목록에 포함된 파일 식별자 각각을 대상으로 페이지를 크롤링하는 크롤링부;
    크롤링 된 상기 페이지의 총수와, 상기 페이지 중에서 판별된 문제 페이지의 총수를 카운팅하는 연산부;
    상기 페이지의 총수와 상기 문제 페이지의 총수에 기초하여, 주기 도래에 따른 차기 크롤링시의, 상기 파일 식별자 별 크롤링 페이지수를 조정하는 처리부; 및
    상기 조정된 크롤링 페이지수가 정해진 수치 이하인, 파일 식별자를 상기 사이트 목록에서 삭제하고, 삭제된 파일 식별자의 개수에 상응하여, 데이터베이스에서 검색된 신규 파일 식별자를 추가하여 상기 사이트 목록을 갱신하되, 상기 데이터베이스에 추가할 신규 파일 식별자가 없는 경우, 상기 문제 페이지로 판별된 페이지의 파일 식별자를 상기 사이트 목록에 추가하여 상기 사이트 목록을 갱신하는 갱신부
    를 포함하고,
    상기 처리부는,
    상기 문제 페이지의 총수를, 상기 페이지의 총수로 나누어 상기 사이트 목록에 대한 문제 페이지의 수집율을 계산하고, 임의의 파일 식별자에 대해 상기 페이지를 크롤링한 건수, 상기 페이지 중에서 판별된 문제 페이지의 수, 및 상기 수집율 중 적어도 하나를 이용하여, 상기 임의의 파일 식별자에 대해 변동되는 페이지수를 결정하며, 파일 식별자 별로 결정된 상기 변동되는 페이지수의 합산 건수가, 크롤링하는 페이지의 총수와 일치하도록, 상기 파일 식별자 별 크롤링 페이지수를 조정하는
    문제 사이트 발굴 시스템.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
KR1020150092945A 2014-10-13 2015-06-30 문제 사이트 발굴 방법 및 문제 사이트 발굴 시스템 KR101583188B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020140137534 2014-10-13
KR20140137534 2014-10-13

Publications (1)

Publication Number Publication Date
KR101583188B1 true KR101583188B1 (ko) 2016-01-11

Family

ID=55169794

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150092945A KR101583188B1 (ko) 2014-10-13 2015-06-30 문제 사이트 발굴 방법 및 문제 사이트 발굴 시스템

Country Status (1)

Country Link
KR (1) KR101583188B1 (ko)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110055308A (ko) * 2009-11-19 2011-05-25 주식회사 알에스엔 웹 문서를 이용하여 설문조사용 질의문의 결과를 획득하는 시스템
JP2011248500A (ja) * 2010-05-25 2011-12-08 Kddi R & D Laboratories Inc Webページ収集装置、方法及びプログラム
KR20120009890A (ko) 2010-07-22 2012-02-02 (주)금오전자 휴대단말기용 젠더
KR20120042529A (ko) * 2010-10-25 2012-05-03 삼성전자주식회사 웹 페이지 크롤링 방법 및 장치
KR20120072742A (ko) 2010-12-24 2012-07-04 엘지이노텍 주식회사 발광소자모듈
KR20130061692A (ko) 2013-04-18 2013-06-11 신윤성 권역별 신문(생활정보신문 포함)또는 잡지를 이용한 정보제공방법 또는 편집방법.

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110055308A (ko) * 2009-11-19 2011-05-25 주식회사 알에스엔 웹 문서를 이용하여 설문조사용 질의문의 결과를 획득하는 시스템
JP2011248500A (ja) * 2010-05-25 2011-12-08 Kddi R & D Laboratories Inc Webページ収集装置、方法及びプログラム
KR20120009890A (ko) 2010-07-22 2012-02-02 (주)금오전자 휴대단말기용 젠더
KR20120042529A (ko) * 2010-10-25 2012-05-03 삼성전자주식회사 웹 페이지 크롤링 방법 및 장치
KR20120072742A (ko) 2010-12-24 2012-07-04 엘지이노텍 주식회사 발광소자모듈
KR20130061692A (ko) 2013-04-18 2013-06-11 신윤성 권역별 신문(생활정보신문 포함)또는 잡지를 이용한 정보제공방법 또는 편집방법.

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
US 12/979,603(2010.12.28), General Electric Company
김석주, 소셜네트워크(SNS)를 활용한 위기관리 방안 모색: 미국 사례를 중심으로, 한국테러학회보, 2013, 제6권 제2호, ISSN 2005-4203, 페이지 5-21
배정환 외, 소셜 빅데이터를 활용한 자살사건 반응 분석, 한국지형공단정보학회 춘계학술대회, 2014.5, 페이지 241-242
송태민 외, 소셜 빅 데이터를 활용한 자살검색 요인 다변량 분석, 보건교육건강증진학회지, 2013, 제30권 제3호, ISSN 1229-4128 페이지 59-73

Similar Documents

Publication Publication Date Title
KR101078864B1 (ko) 질의/문서 주제 범주 변화 분석 시스템 및 그 방법과 이를 이용한 질의 확장 기반 정보 검색 시스템 및 그 방법
CN107862022B (zh) 文化资源推荐系统
WO2017097231A1 (zh) 话题处理方法及装置
KR101004352B1 (ko) 컨텐츠 유통 시스템 및 방법
CN110705288A (zh) 一种基于大数据的舆情分析系统
KR102334236B1 (ko) 음성 변환 Text Data에서 의미있는 키워드 추출 방법과 활용
TWI571756B (zh) 用以分析瀏覽記錄及其文件之方法及其系統
CN111538931A (zh) 基于大数据的舆情监控方法、装置、计算机设备及介质
KR102334255B1 (ko) AI 기반 음성서비스의 Text Data 수집 플랫폼 구축 및 통합관리방법
CN111723256A (zh) 一种基于信息资源库的政务用户画像构建方法及其系统
CN107506472A (zh) 一种学生浏览网页分类方法
Ghankutkar et al. Modelling machine learning for analysing crime news
JP4569380B2 (ja) ベクトル生成方法及び装置及びカテゴリ分類方法及び装置及びプログラム及びプログラムを格納したコンピュータ読み取り可能な記録媒体
Sujatha Improved user navigation pattern prediction technique from web log data
Thakur et al. Detection of malicious URLs in big data using RIPPER algorithm
KR20100023630A (ko) 카테고리 태그 정보를 이용한 웹 페이지 분류 방법, 그 시스템 및 이를 기록한 기록매체
US20160246794A1 (en) Method for entity-driven alerts based on disambiguated features
CN113961811B (zh) 基于事件图谱的话术推荐方法、装置、设备及介质
KR101583188B1 (ko) 문제 사이트 발굴 방법 및 문제 사이트 발굴 시스템
Wei et al. Algorithm of mining sequential patterns for web personalization services
Das et al. Adaptive web personalization system using splay tree
Jatowt et al. Predicting importance of historical persons using Wikipedia
Nguyen et al. Pagerank-based approach on ranking social events: a case study with flickr
Vishwakarma et al. Web user prediction by: integrating Markov model with different features
CN111858733A (zh) 一种基于互联网多源异构数据的政务信息比对方法及系统

Legal Events

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

Payment date: 20181129

Year of fee payment: 4