KR20130021956A - 스팸 문서 판단 방법 및 그 판단 장치 - Google Patents

스팸 문서 판단 방법 및 그 판단 장치 Download PDF

Info

Publication number
KR20130021956A
KR20130021956A KR1020110084554A KR20110084554A KR20130021956A KR 20130021956 A KR20130021956 A KR 20130021956A KR 1020110084554 A KR1020110084554 A KR 1020110084554A KR 20110084554 A KR20110084554 A KR 20110084554A KR 20130021956 A KR20130021956 A KR 20130021956A
Authority
KR
South Korea
Prior art keywords
document
spam
index
occurrence
frequency
Prior art date
Application number
KR1020110084554A
Other languages
English (en)
Other versions
KR101291076B1 (ko
Inventor
이수원
이성진
한정석
백종범
Original Assignee
숭실대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 숭실대학교산학협력단 filed Critical 숭실대학교산학협력단
Priority to KR1020110084554A priority Critical patent/KR101291076B1/ko
Publication of KR20130021956A publication Critical patent/KR20130021956A/ko
Application granted granted Critical
Publication of KR101291076B1 publication Critical patent/KR101291076B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Operations Research (AREA)
  • Probability & Statistics with Applications (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Algebra (AREA)
  • Evolutionary Biology (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 스팸 문서를 판단하는 기술에 관한 것으로, 본 발명의 일 실시예에 따른 스팸 문서 판단 방법은, 문서로부터 특수 문자, 색인어, 링크 정보를 추출하는 단계와, 상기 문서에서 상기 특수 문자의 출현 비율, 상기 특수 문자가 스팸 문서에서 출현할 확률을 이용한 특수 문자 스팸지수, 상기 색인어의 스팸 문서에서 출현할 확률을 이용한 색인어 스팸지수, 상기 색인어의 출현 빈도에 대한 표준편차, 상기 색인어의 출현 빈도의 평균에서 상기 표준편차를 초과하여 반복 출현하는 비정상 색인어의 출현 비율, 상기 반복 출현하는 색인어들의 개수 비율, 웹 페이지 주소로 유도하는 상기 링크의 개수 중 적어도 하나를 포함하는 특징 변수를 설정하는 단계와, 상기 특징 변수들의 값을 기계학습 알고리즘을 이용하여 계산하는 특징 변수를 계산하는 단계와, 상기 계산된 특징 변수들의 값을 미리 설정된 스팸 문서 분류 모델로 분석하여, 상기 문서의 스팸 문서 여부를 판단하는 단계를 포함한다. 이에 따라, 자질어만을 이용하는 기존의 스팸 문서 판단 방법에 비해 스팸 문서 분류의 정확도를 향상시킬 수 있다.

Description

스팸 문서 판단 방법 및 그 판단 장치{METHOD AND APPARATUS FOR DETERMINING SPAM DOCUMENT}
본 발명은 스팸 문서를 판단하는 기술에 관한 것으로, 보다 구체적으로 문서에 포함되는 특수 문자, 색인어, 링크 정보를 이용하여 스팸 문서 여부를 판단하는 기술이 개시된다.
1994년 국내에 처음 인터넷이 등장한 이후 2010년 5월에는 만3세 이상 인구의 인터넷 이용률이 무려 77.8%에 이를 정도로 꾸준히 성장해 왔다. 그러나 인터넷 이용의 증가는 스팸의 범람이라는 역기능을 함께 수반하고 있다. 스팸이란 정보통신망을 통해 이용자가 원하지 않음에도 불구하고 일방적으로 제공되는 영리목적의 광고성 정보를 의미하며, 점차 그 규모가 커지고 있다. 특히 최근 검색 문화가 활성화되면서 Spamdexing(Spam+Indexing)을 이용한 다양한 방식의 스팸이 등장하고 있다. Spamdexing이란 검색 엔진의 문서 랭킹 알고리즘에 영향을 미쳐 사용자의 의도와는 상관없이 스팸 문서의 노출 순위를 부당하게 높이는 방법을 말하며, 크게 Boosting과 Hiding으로 구분할 수 있다.
현재 일반적으로 사용하는 스팸 차단 기술은 발신 리스트 기반 스팸 차단 기술과 스팸 단어 사전 기반 스팸 차단 기술, 문서 분류 기반 스팸 차단 기술 등이 있다. 발신 리스트 기반 스팸 차단 기술은 주로 이메일 차단 시스템에서 사용되는 기술로, 수작업을 통해 스팸 메일 발송자 리스트를 작성하고 발신자가 이 리스트에 포함되어 있는 경우 메일을 차단하는 방법이다. 스팸 단어 사전 기반 스팸 차단 시스템 역시 수작업을 필요로 하는 기술로, 미리 스팸 문서에서 자주 사용되는 단어를 사전에 등록하고, 사전에 등록된 단어가 일정 비율 이상 포함된 문서를 스팸으로 차단하는 시스템이다. 반면 문서 분류 기반 스팸 차단 시스템은 기계학습을 이용한 문서 자동 분류 기술을 활용한 방법으로, 문서에서 출현한 키워드 정보를 이용하여 스팸 여부를 판단할 수 있는 분류 모델을 학습하고, 새로운 문서를 분류 모델에 적용하여 스팸 문서를 차단하는 기술이다.
최근의 스팸 문서는 스팸 차단 기술을 회피하기 위해 다양한 스패밍 기술을 사용하고 있다. 대표적으로 특정 단어를 반복하여 사용하는 Repetition, 정상 문서에 스팸 문구를 삽입하는 Weaving 등을 들 수 있으며, 철자 변형, 특수 문자 끼워 넣기 등의 간단한 방법들도 자주 사용되고 있다.
그러나 기존의 스팸 차단 기술은 스팸 사전에 등록된 단어 또는 학습에 사용된 단어의 출현 여부만을 이용해 스팸 문서를 차단하기 때문에 이러한 스패밍 기술에 매우 취약하다는 단점을 가지고 있다. 예를 들어 “대출”이라는 말이 스팸 사전에 등록되어 있는 경우 웹 문서에서“신용데출",“신★용대★출”이라는 단어를 사용한다면 이를 스팸으로 분류하지 못한다. 또한 기계학습을 이용한 문서 자동 분류 기술을 활용하는 방법에서는 학습 단계에서 선택된 단어의 수가 많을수록 분류 정확도가 높아진다. 그러나 선택된 단어의 수가 많을수록 학습에 필요한 시간은 기하급수적으로 늘어난다는 문제점이 있다.
본 발명이 이루고자 하는 기술적인 과제는, 문서에 포함되는 특수 문자, 색인어, 링크 정보를 이용하여 그 출현 패턴을 특징 변수로 설정하여 스팸 문서 여부를 판단하는 스팸 문서 판단 방법 및 그 판단 장치를 제공하기 위한 것이다.
본 발명의 일 실시예에 따른 스팸 문서 판단 방법은, 문서로부터 특수 문자, 색인어, 링크 정보를 추출하는 단계와, 상기 문서에서 상기 특수 문자의 출현 비율, 상기 특수 문자가 스팸 문서에서 출현할 확률을 이용한 특수 문자 스팸지수, 상기 색인어의 스팸 문서에서 출현할 확률을 이용한 색인어 스팸지수, 상기 색인어의 출현 빈도에 대한 표준편차, 상기 색인어의 출현 빈도의 평균에서 상기 표준편차를 초과하여 반복 출현하는 비정상 색인어의 출현 비율, 상기 반복 출현하는 색인어들의 개수 비율, 웹 페이지 주소로 유도하는 상기 링크의 개수 중 적어도 하나를 포함하는 특징 변수를 설정하는 단계와, 상기 특징 변수들의 값을 기계학습 알고리즘을 이용하여 계산하는 특징 변수를 계산하는 단계와, 상기 계산된 특징 변수들의 값을 미리 설정된 스팸 문서 분류 모델로 분석하여, 상기 문서의 스팸 문서 여부를 판단하는 단계를 포함한다.
또한, 상기 특징 변수를 계산하는 단계는, 상기 특수 문자가 스팸 문서에서 출현할 확률에 대한 가중치를 부여하여 계산한 특수 문자 스팸지수(SCSVi)를 다음의 수학식을 이용하여 계산할 수 있다:
Figure pat00001
여기서, TFi(SCj)는 문서 i에서 특수 문자 j의 출현 빈도를, PrS(SCj)는 스팸 문서에서 특수 문자 j의 출현 확률을, Pr(SCj)는 전체 문서에서 특수 문자 j의 출현 확률을, TFSumi(C)는 문서 i에서 출현한 문자의 출현 빈도의 합을 나타낸다.
또한, 상기 특징 변수를 계산하는 단계는, 상기 색인어가 스팸 문서에서 출현할 확률에 대한 가중치를 부여하여 계산한 색인어 스팸지수(KSVi)를 다음의 수학식을 이용하여 계산할 수 있다:
Figure pat00002
여기서, TFi(Kj)는 문서 i에서 색인어 j의 출현 빈도를, PrS(Kj)는 스팸 문서에서 색인어 j의 출현 확률을, Pr(Kj)는 전체 문서에서 색인어 j의 출현 확률을, TFSumi(K)는 문서 i에서 출현한 색인어의 출현 빈도의 합을 나타낸다.
또한, 상기 특징 변수를 계산하는 단계는, 상기 색인어의 출현 빈도의 평균에서 상기 표준편차를 초과하여 반복 출현하는 비정상 색인어의 출현 비율( KRRi)을 다음의 수학식을 이용하여 계산할 수 있다:
Figure pat00003
여기서, TFi(Kk)는 문서 i에서 k번째 색인어의 출현 빈도를, TFSumi(K)는 문서 i에서 출현한 색인어의 출현 빈도의 합을, Avg.TFi는 문서 i에서 색인어의 출현 빈도의 평균을, Std.TFi는 문서 i에서 색인어 출현 빈도의 표준편차를 나타낸다.
또한, 상기 기계학습 알고리즘은 의사결정트리, 나이브 베이지안, 신경망, SVM 중 어느 하나를 이용할 수 있다.
본 발명의 또 다른 실시예에 따른 스팸 문서 판단 장치는, 문서로부터 특수 문자, 색인어, 링크 정보를 추출하는 정보 추출부와, 상기 문서에서 상기 특수 문자의 출현 비율, 상기 특수 문자가 스팸 문서에서 출현할 확률을 이용한 특수 문자 스팸지수, 상기 색인어의 스팸 문서에서 출현할 확률을 이용한 색인어 스팸지수, 상기 색인어의 출현 빈도에 대한 표준편차, 상기 색인어의 출현 빈도의 평균에서 상기 표준편차를 초과하여 반복 출현하는 비정상 색인어의 출현 비율, 상기 반복 출현하는 색인어들의 개수 비율, 웹 페이지 주소로 유도하는 상기 링크의 개수를 포함하는 특징 변수를 설정하는 특징 변수 설정부와, 상기 특징 변수들의 값을 기계학습 알고리즘을 이용하여 계산하는 특징 변수 계산부와, 상기 계산된 특징 변수들의 값을 상기 특징 변수를 이용해 미리 설정된 스팸 문서 분류 모델로 분석하여, 상기 문서의 스팸 문서 여부를 판단하는 스팸 문서 판단부를 포함한다.
이와 같은 본 발명에 따른 스팸 문서 판단 방법 및 그 판단 장치는 문서에 포함되는 특수 문자, 색인어, 링크 정보를 이용하여 그 출현 패턴을 7개의 특징 변수로 설정하고, 기계학습을 통해 스팸 문서 여부를 판단함으로써, 기존의 자질어만을 이용하는 스팸 문서 판단 방법에 비해 스팸 문서 분류의 정확도를 향상시킬 수 있다. 또한, 기존의 자질어의 출현 여부를 표현하는 다수의 특징 변수 대신에 7개의 특징 변수만을 이용함으로써 스팸 문서 판단 시간을 단축시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 스팸 문서 판단 장치의 구성도,
도 2는 도 1에 따른 스팸 문서 판단 장치의 스팸 문서 판단 방법의 흐름도,
도 3은 도 2에 따른 스팸 문서 판단 방법 중 이메일 문서에 대한 표준편차 분포를 나타낸 예시도,
도 4는 도 2에 따른 스팸 문서 판단 방법 중 이메일 문서에 대한 링크 개수 분포를 나타낸 예시도이다.
이하, 첨부된 도면들을 참조하여 본 발명의 실시예를 상세하게 설명한다. 사용되는 용어들은 실시예에서의 기능을 고려하여 선택된 용어들로서, 그 용어의 의미는 사용자, 운용자의 의도 또는 판례 등에 따라 달라질 수 있다. 그러므로 후술하는 실시예들에서 사용된 용어의 의미는, 본 명세서에서 구체적으로 정의된 경우에는 그 정의에 따르며, 구체적인 정의가 없는 경우에는 당업자들이 일반적으로 인식하는 의미로 해석되어야 할 것이다.
도 1은 본 발명의 일 실시예에 따른 스팸 문서 판단 장치의 구성도이고, 도 2는 도 1에 따른 스팸 문서 판단 장치의 스팸 문서 판단 방법의 흐름도이다.
도 1과 도 2를 참조하면, 스팸 문서 판단 장치(100)는 정보 추출부(110), 문서 DB(115), 특징 변수 설정부(120), 스팸 분류 모델 DB(125), 특징 변수 계산부(130), 스팸 문서 판단부(140)를 포함한다. 정보 추출부(110)는 문서 DB(115)에 저장된 문서로부터 특수 문자, 색인어, 링크 정보를 추출한다(S200). 이 경우, 문서 DB(115)에 저장된 문서는 이메일, 웹 페이지의 HTML 문서, 핸드폰 문자, 종이 문서를 스캔하여 광학식 문자판독기(optical character reader, OCR)로 판독된 문서를 포함하며, 반드시 이에 한정하는 것은 아니다.
또한, 문서 DB(115)에 저장된 문서의 경우 문서 자체의 내용을 표시하지 않는 HTML Tag, 접속사, 조사와 같은 불용어가 제거된 문서이다. 이를 위해 사용자에 의해 미리 설정된 표준 명사 사전이나 불용어 사전을 통해 원본 문서를 전처리하는 과정을 거치는 것이 바람직하다.
정보 추출부(110)는 문서로부터 특수 문자, 색인어, 링크 정보를 추출하는데, 여기서 특수 문자는 일반적인 기호 문자를 포괄하는 의미이며, 사용자의 설정에 의해 특정 기호 문자를 특수 문자로 인식하는 것이 가능하다. 또한, 색인어는 일반적인 문서에서 불용어가 제거된 명사 위주의 키워드를 의미하며, 링크 정보는 인터넷의 접속을 유도하는 링크 주소를 의미한다. 예를 들어, '빠른대출을 보장합니다'라는 문장에서 불용어를 제거하면 '빠른', '대출', '보장'과 같은 색인어가 추출되고, 링크 정보는 'http://search.hot-xxx.com/05cd4X236'와 같이 'http' 또는 'www'과 같은 정보를 포함하는 링크가 추출된다. 정보 추출부(110)는 문서 DB(115)로부터 추출된 정보를 특징 변수 설정부(120)로 출력한다.
다음으로, 특징 변수 설정부(120)는 정보 추출부(110)로부터 입력된 정보를 기초로, 문서에서 특수 문자의 출현 비율, 특수 문자 스팸지수, 색인어 스팸지수, 색인어의 출현 빈도에 대한 표준편차, 비정상 색인어의 출현 비율, 링크 개수 중 적어도 하나를 특징 변수로 설정한다(S210). 이와 같은 7개의 특징 변수는 스팸 문서를 판단하는 기준으로써 이를 종합적으로 고려함으로써 스팸 문서 판단의 정확도를 향상시킬 수 있다. 이하, 특징 변수 설정부(120)에서 설정되는 7개의 특징 변수 각각에 대해 구체적으로 설명하도록 한다.
특수 문자의 출현 비율은 문서 내에 특수 문자의 존재 비율을 의미한다. 이는 반드시 동일 특수 문자일 필요는 없으며, 서로 다른 특수 문자를 포함한 비율을 나타낸다. 특수 문자의 출현 비율은 다음의 수학식 1과 같이 표현된다.
Figure pat00004
수학식 1에서, TFSumi(C)는 문서 i에서 출현하는 문자의 출현 빈도의 합을 나타내며, TFSumi(SC)는 문서 i에서 출현하는 특수 문자의 출현 빈도의 합을 나타낸다. 특수 문자 출현 비율(SCRi)은 문서 내의 문자 중 특수 문자의 출현 비율을 나타낸다. 정상적인 문서에서는 숫자 문서나 알파벳 문자가 많이 출현하는 반면에 스팸 문서에서는 특수 문자를 스팸 단어를 강조하기 위해 특수 문자를 많이 사용하는 경향이 있다. 따라서, 문서의 특수 문자 출현 비율(SCRi)이 큰 값으로 측정되면 해당 문서는 스팸 문서일 확률이 높아지게 된다.
한편, 특수 문자 스팸지수는 특수 문자가 스팸 문서에서 출현할 확률을 나타낸다. 특수 문자는 스팸 문서가 아닌 정상 문서에서도 출현할 수 있기 때문에 특수 문자 출현 비율(SCRi)만으로 스팸 문서를 판단하기에는 부족한 면이 있다. 따라서, 각 특수 문자 자체가 스팸 문서에서 출현할 확률인 특수 문자 스팸지수(SCSVi)가 필요하며, 다음의 수학식 2와 같이 표현된다.
Figure pat00005
수학식 2에서, TFi(SCj)는 문서 i에서 특수 문자 j의 출현 빈도를, PrS(SCj)는 스팸 문서에서 특수 문자 j의 출현 확률을, Pr(SCj)는 전체 문서에서 특수 문자 j의 출현 확률을, TFSumi(C)는 문서 i에서 출현한 문자의 출현 빈도의 합을 나타낸다. 특정 특수 문자의 경우 스팸 문서를 포함한 전체 문서나 스팸 문서에서 출현할 확률이 차이가 없는 경우가 발생할 수 있기 때문에, 특수 문자가 전체 문서에서 출현할 확률보다 스팸 문서에서 출현할 확률이 높은 특수 문자의 경우 가중치를 부여하여 계산할 수 있다. 수학식 2에서는 출현 확률에 대한 비율이 일정값 이상으로 커지면 의미의 차이가 없기 때문에 log 함수를 사용한다.
한편, 색인어 스팸지수는 색인어가 스팸 문서에서 출현할 확률을 나타낸다. 특수 문자 외에도 각 색인어가 스팸 문서에서 출현할 확률 역시 스팸 문서를 판단하는데 중요한 변수가 될 수 있다. 색인어 스팸지수는 각 색인어의 스팸 변별력을 개별 특징으로 사용하는 것이 아니라, 각 단어의 스팸 변별력을 종합하여 하나의 특징으로 사용한다. 색인어 스팸지수(KSVi)는 다음의 수학식 3과 같이 나타낸다.
Figure pat00006
여기서, TFi(Kj)는 문서 i에서 색인어 j의 출현 빈도를, PrS(Kj)는 스팸 문서에서 색인어 j의 출현 확률을, Pr(Kj)는 전체 문서에서 색인어 j의 출현 확률을, TFSumi(K)는 문서 i에서 출현한 색인어의 출현 빈도의 합을 나타낸다. 특정 색인어의 경우 스팸 문서를 포함한 전체 문서나 스팸 문서에서 출현할 확률이 차이가 없는 경우가 발생할 수 있기 때문에, 색인어가 전체 문서에서 출현할 확률보다 스팸 문서에서 출현할 확률이 높은 색인어의 경우 가중치를 부여하여 계산할 수 있다. 또한, 수학식 3에서는 출현 확률에 대한 비율이 일정값 이상으로 커지면 의미의 차이가 없기 때문에 log 함수를 사용한다.
한편, 색인어의 출현 빈도에 대한 표준편차는 문서 내에 출현하는 색인어의 출현 빈도의 통계를 이용하여 평균 출현 빈도로부터의 편차로 설정된다. 스팸 문서의 경우, 반복 출현하는 색인어의 표준 편차가 정상적인 문서의 경우보다 훨씬 크게 나타나는 경향을 보이고 있다. 이와 관련해서는 도 3을 참조하여 설명하도록 한다.
도 3은 도 2에 따른 스팸 문서 판단 방법 중 이메일 문서에 대한 표준편차 분포를 나타낸 예시도이다.
도 3을 참조하면, 이메일 문서들을 대상으로 반복 출현하는 반복 색인어의 표준편차 분포를 알 수 있다. 정상적인 문서(HAM 문서)의 경우 대부분 표준 편차가 3 이하의 값을 가지는 것을 알 수 있다. 반면 비정상적인 문서(SPAM 문서)의 경우 표준 편차가 1 이하의 값을 가지는 경우도 있으나, 3 이상의 표준 편차를 가지는 문서가 다수 존재하는 것을 알 수 있다. 따라서, 이러한 스팸 문서의 반복 색인어 표준 편차 분포를 통해 스팸 문서의 특징인 표준 편차가 스팸 문서를 판단함에 있어서 하나의 변수로 설정될 수 있음을 알 수 있다.
다시 도 1과 도 2를 참조하면, 비정상 색인어의 출현 비율은 색인어의 출현 빈도의 평균에서 앞서 설정한 표준편차를 초과하여 반복 출현하는 비정상 색인어의 출현 비율을 나타낸다. 이와 같은 비정상 색인어의 출현 비율(KRRi)은 다음의 수학식 4와 같이 나타낼 수 있다.
Figure pat00007
수학식 4에서, TFi(Kk)는 문서 i에서 k번째 색인어의 출현 빈도를, TFSumi(K)는 문서 i에서 출현한 색인어의 출현 빈도의 합을, Avg.TFi는 문서 i에서 색인어의 출현 빈도의 평균을, Std.TFi는 문서 i에서 색인어 출현 빈도의 표준편차를 나타낸다. 색인어의 반복 패턴을 이용하는 경우 반복되는 색인어 하나에 대한 반복강도를 계산하는 경우에는 반복 출현하는 색인어가 복수개 존재하면 그 정확도가 떨어지게 된다. 따라서, 여러 색인어에 대한 출현 비율을 계산하여야 하나, 몇 개의 색인어를 반영하여야 하는지 결정하기는 쉽지 않다. 따라서, 문서의 특성상 반복 패턴을 가지는 반복 색인어의 출현 빈도는 정상적인 단어의 출현 빈도와의 값의 차이가 크므로, 반복 색인어의 출현 빈도의 평균에서 표준 편차 이상인 색인어의 출현 빈도의 합을 이용한다.
한편, 반복 출현하는 색인어들의 개수 비율은 문서에 반복 출현하는 색인어 자체의 개수를 특징 변수로 설정한 것이다. 이는 몇 갱의 색인어가 스팸 문서로 판단되는데 영향을 미치는지를 설명하는 중요한 변수이다. 색인어 개수 비율(KNRRi)은 다음의 수학식 5와 같이 나타낼 수 있다.
Figure pat00008
수학식 5에서, Ni(K)는 문서 i에서 출현한 색인어의 수를, Ni(Kk)는 문서 i에서 출현한 K번째 색인어의 수를, Avg.TFi는 문서 i에서 색인어의 출현 빈도의 평균을, Std.TFi는 문서 i에서 색인어 출현 빈도의 표준편차를 나타낸다.
한편, 링크의 개수는 웹 페이지 주소로 유도하는 상기 링크의 개수로 설정되는 특징 변수이다. 최근의 스팸 문서는 스팸 사이트로의 방문을 유도하기 위한 목적으로 사용되고 있으며, 정상 문서에 비해 많은 개수의 링크를 포함하고 있는 경향이다. 또한, 문서 상에 직접적인 링크 주소를 기재하지 않고 특정 문구를 클릭하면 해당 페이지로 이동하게 되므로, 해당 문서의 소스 코드를 분석하여 문서상에 포함된 링크 정보를 탐색하여 링크 개수를 특징 변수로 설정한다. 이하, 도 4를 통해 스팸 문서에서 나타나는 링크 정보의 개수 분포의 특징을 설명하도록 한다.
도 4는 도 2에 따른 스팸 문서 판단 방법 중 이메일 문서에 대한 링크 개수 분포를 나타낸 예시도이다.
도 4를 참조하면, 정상적인 문서(HAM 문서)의 경우 대부분 링크 개수가 10개 이하의 값을 가지는 것을 알 수 있다. 반면에 비정상적인 문서(SPAM 문서)의 경우에는 링크 개수가 10개 이하인 경우도 있으나, 30개 이상의 링크 개수를 가지는 스팸 문서가 다수 존재하는 것을 알 수 있다. 따라서, 링크 개수가 특정 개수 이상으로 존재하는 경우에는 해당 문서가 스팸 문서일 확률이 높아지므로, 문서의 링크 개수를 스팸 문서를 판단하는 특징 변수로 설정하게 되면, 스팸 문서를 보다 정확하게 판단할 수 있다.
다시 도 1과 도 2를 참조하면, 특징 변수 설정부(120)는 앞서 설명한 7가지의 특징 변수를 설정하고 이를 스팸 분류 모델 DB(125)에 저장하고, 특징 변수 계산부(130)로 해당 특징 변수 정보를 출력한다. 스팸 분류 모델 DB(125)에는 특정 문서가 스팸 문서인지 여부를 판단하는데 사용되는 벡터 모델이 저장되어 있다.
다음으로, 특징 변수 계산부(130)는 특징 변수 설정부(120)에서 설정된 특징 변수들의 값을 기계학습 알고리즘을 이용하여 계산한다(S220). 이 경우, 특징 변수 계산부(130)에서 사용되는 기계학습 알고리즘은 의사결정트리, 나이브 베이지안, 신경망, SVM(Support Vector Machine) 중 어느 하나를 이용할 수 있다. 이러한 기계학습 알고리즘은 스팸 문서를 판단하는 기술분야에서 일반적으로 사용되는 알고리즘이다. 특징 변수 계산부(130)는 계산된 특징 변수의 값을 스팸 문서 판단부(140)로 출력한다.
다음으로, 스팸 문서 판단부(140)는 특징 변수 계산부(130)로부터 계산된 특징 변수들의 값을 입력받고, 스팸 분류 모델 DB(125)에 저장된 스팸 분류 모델을 이용하여 문서의 스팸 여부를 판단한다(S230). 스팸 문서 판단부(140)는 외부에 연결된 표시부(도시하지 않음)에 스팸 결과를 표시할 수 있다.
이와 같은 본 발명에 따른 스팸 문서 판단 방법 및 그 판단 장치는 문서에 포함되는 특수 문자, 색인어, 링크 정보를 이용하여 그 출현 패턴을 7개의 특징 변수로 설정하여 기계학습을 통해 스팸 문서 여부를 판단함으로써, 기존의 자질어만을 이용하는 스팸 문서 판단 방법에 비해 스팸 문서 분류의 정확도를 향상시킬 수 있다. 또한, 기존의 자질어의 출현 여부를 표현하는 다수의 특징 변수 대신에 7개의 특징 변수만을 이용함으로써 스팸 문서 판단 시간을 단축시킬 수 있다.
이상에서 본 발명은 도면을 참조하면서 기술되는 바람직한 실시예를 중심으로 설명되었지만 이에 한정되는 것은 아니다. 따라서 본 발명은 기재된 실시예로부터 도출 가능한 자명한 변형예를 포괄하도록 의도된 특허청구범위의 기재에 의해 해석되어져야 한다.
100 : 스팸 문서 판단 장치 110 : 정보 추출부
115 : 문서 DB 120 : 특징 변수 설정부
125 : 스팸 분류 모델 DB 130 : 특징 변수 계산부
140 : 스팸 문서 판단부

Claims (10)

  1. 문서로부터 특수 문자, 색인어, 링크 정보를 추출하는 단계;
    상기 문서에서 상기 특수 문자의 출현 비율, 상기 특수 문자가 스팸 문서에서 출현할 확률을 이용한 특수 문자 스팸지수, 상기 색인어의 스팸 문서에서 출현할 확률을 이용한 색인어 스팸지수, 상기 색인어의 출현 빈도에 대한 표준편차, 상기 색인어의 출현 빈도의 평균에서 상기 표준편차를 초과하여 반복 출현하는 비정상 색인어의 출현 비율, 상기 반복 출현하는 색인어들의 개수 비율, 웹 페이지 주소로 유도하는 상기 링크의 개수 중 적어도 하나를 포함하는 특징 변수를 설정하는 단계;
    상기 특징 변수들의 값을 기계학습 알고리즘을 이용하여 계산하는 특징 변수를 계산하는 단계; 및
    상기 계산된 특징 변수들의 값을 미리 설정된 스팸 문서 분류 모델로 분석하여, 상기 문서의 스팸 문서 여부를 판단하는 단계를 포함하는 스팸 문서 판단 방법.
  2. 제1항에 있어서, 상기 특징 변수를 계산하는 단계는,
    상기 특수 문자가 스팸 문서에서 출현할 확률에 대한 가중치를 부여하여 계산한 특수 문자 스팸지수(SCSVi)를 다음의 수학식을 이용하여 계산하는 스팸 문서 판단 방법:
    Figure pat00009

    여기서, TFi(SCj)는 문서 i에서 특수 문자 j의 출현 빈도를, PrS(SCj)는 스팸 문서에서 특수 문자 j의 출현 확률을, Pr(SCj)는 전체 문서에서 특수 문자 j의 출현 확률을, TFSumi(C)는 문서 i에서 출현한 문자의 출현 빈도의 합을 나타낸다.
  3. 제1항에 있어서, 상기 특징 변수를 계산하는 단계는,
    상기 색인어가 스팸 문서에서 출현할 확률에 대한 가중치를 부여하여 계산한 색인어 스팸지수(KSVi)를 다음의 수학식을 이용하여 계산하는 스팸 문서 판단 방법:
    Figure pat00010

    여기서, TFi(Kj)는 문서 i에서 색인어 j의 출현 빈도를, PrS(Kj)는 스팸 문서에서 색인어 j의 출현 확률을, Pr(Kj)는 전체 문서에서 색인어 j의 출현 확률을, TFSumi(K)는 문서 i에서 출현한 색인어의 출현 빈도의 합을 나타낸다.
  4. 제1항에 있어서, 상기 특징 변수를 계산하는 단계는,
    상기 색인어의 출현 빈도의 평균에서 상기 표준편차를 초과하여 반복 출현하는 비정상 색인어의 출현 비율(KRRi)을 다음의 수학식을 이용하여 계산하는 스팸 문서 판단 방법:
    Figure pat00011

    여기서, TFi(Kk)는 문서 i에서 k번째 색인어의 출현 빈도를, TFSumi(K)는 문서 i에서 출현한 색인어의 출현 빈도의 합을, Avg.TFi는 문서 i에서 색인어의 출현 빈도의 평균을, Std.TFi는 문서 i에서 색인어 출현 빈도의 표준편차를 나타낸다.
  5. 제1항에 있어서,
    상기 기계학습 알고리즘은 의사결정트리, 나이브 베이지안, 신경망, SVM 중 어느 하나를 이용하는 스팸 문서 판단 방법.
  6. 문서로부터 특수 문자, 색인어, 링크 정보를 추출하는 정보 추출부;
    상기 문서에서 상기 특수 문자의 출현 비율, 상기 특수 문자가 스팸 문서에서 출현할 확률을 이용한 특수 문자 스팸지수, 상기 색인어의 스팸 문서에서 출현할 확률을 이용한 색인어 스팸지수, 상기 색인어의 출현 빈도에 대한 표준편차, 상기 색인어의 출현 빈도의 평균에서 상기 표준편차를 초과하여 반복 출현하는 비정상 색인어의 출현 비율, 상기 반복 출현하는 색인어들의 개수 비율, 웹 페이지 주소로 유도하는 상기 링크의 개수 중 적어도 하나를 포함하는 특징 변수를 설정하는 특징 변수 설정부;
    상기 특징 변수들의 값을 기계학습 알고리즘을 이용하여 계산하는 특징 변수 계산부; 및
    상기 계산된 특징 변수들의 값을 상기 특징 변수를 이용해 미리 설정된 스팸 문서 분류 모델로 분석하여, 상기 문서의 스팸 문서 여부를 판단하는 스팸 문서 판단부를 포함하는 스팸 문서 판단 장치.
  7. 제6에 있어서, 상기 특징 변수 계산부는,
    상기 특수 문자가 스팸 문서에서 출현할 확률에 대한 가중치를 부여하여 계산한 특수 문자 스팸지수(SCSVi)를 다음의 수학식을 이용하여 계산하는 스팸 문서 판단 장치:
    Figure pat00012

    여기서, TFi(SCj)는 문서 i에서 특수 문자 j의 출현 빈도를, PrS(SCj)는 스팸 문서에서 특수 문자 j의 출현 확률을, Pr(SCj)는 전체 문서에서 특수 문자 j의 출현 확률을, TFSumi(C)는 문서 i에서 출현한 문자의 출현 빈도의 합을 나타낸다.
  8. 제6항에 있어서, 상기 특징 변수 계산부는,
    상기 색인어가 스팸 문서에서 출현할 확률에 대한 가중치를 부여하여 계산한 색인어 스팸지수(KSVi)를 다음의 수학식을 이용하여 계산하는 스팸 문서 판단 장치:
    Figure pat00013

    여기서, TFi(Kj)는 문서 i에서 색인어 j의 출현 빈도를, PrS(Kj)는 스팸 문서에서 색인어 j의 출현 확률을, Pr(Kj)는 전체 문서에서 색인어 j의 출현 확률을, TFSumi(K)는 문서 i에서 출현한 색인어의 출현 빈도의 합을 나타낸다.
  9. 제6항에 있어서, 상기 특징 변수 계산부는,
    상기 색인어의 출현 빈도의 평균에서 상기 표준편차를 초과하여 반복 출현하는 비정상 색인어의 출현 비율(KRRi)을 다음의 수학식을 이용하여 계산하는 스팸 문서 판단 장치:
    Figure pat00014

    여기서, TFi(Kk)는 문서 i에서 k번째 색인어의 출현 빈도를, TFSumi(K)는 문서 i에서 출현한 색인어의 출현 빈도의 합을, Avg.TFi는 문서 i에서 색인어의 출현 빈도의 평균을, Std.TFi는 문서 i에서 색인어 출현 빈도의 표준편차를 나타낸다.
  10. 제1항에 있어서,
    상기 기계학습 알고리즘은 의사결정트리, 나이브 베이지안, 신경망, SVM 중 어느 하나를 이용하는 스팸 문서 판단 장치.
KR1020110084554A 2011-08-24 2011-08-24 스팸 문서 판단 방법 및 그 판단 장치 KR101291076B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110084554A KR101291076B1 (ko) 2011-08-24 2011-08-24 스팸 문서 판단 방법 및 그 판단 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110084554A KR101291076B1 (ko) 2011-08-24 2011-08-24 스팸 문서 판단 방법 및 그 판단 장치

Publications (2)

Publication Number Publication Date
KR20130021956A true KR20130021956A (ko) 2013-03-06
KR101291076B1 KR101291076B1 (ko) 2013-08-23

Family

ID=48174727

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110084554A KR101291076B1 (ko) 2011-08-24 2011-08-24 스팸 문서 판단 방법 및 그 판단 장치

Country Status (1)

Country Link
KR (1) KR101291076B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101526500B1 (ko) * 2013-12-20 2015-06-09 고려대학교 산학협력단 정보 엔트로피를 이용한 악성 의심 웹사이트 탐지 방법 및 시스템
WO2016088954A1 (ko) * 2014-12-04 2016-06-09 숭실대학교산학협력단 스팸 분류 방법, 이를 수행하기 위한 기록 매체 및 스팸 분류 장치
KR20190070702A (ko) * 2017-12-13 2019-06-21 주식회사 한류에이아이센터 텍스트 마이닝 기반 보안 이벤트 자동 검증 시스템 및 방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101572648B1 (ko) 2013-11-07 2015-12-04 주식회사 카카오 스팸 문서 판단 장치, 스팸 문서 판단 방법 및 이를 이용한 검색 서비스 제공 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100902475B1 (ko) * 2007-05-25 2009-06-11 엔에이치엔(주) 스팸문서 판단 시스템 및 방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101526500B1 (ko) * 2013-12-20 2015-06-09 고려대학교 산학협력단 정보 엔트로피를 이용한 악성 의심 웹사이트 탐지 방법 및 시스템
WO2016088954A1 (ko) * 2014-12-04 2016-06-09 숭실대학교산학협력단 스팸 분류 방법, 이를 수행하기 위한 기록 매체 및 스팸 분류 장치
KR20160067473A (ko) * 2014-12-04 2016-06-14 숭실대학교산학협력단 스팸 분류 방법, 이를 수행하기 위한 기록 매체 및 스팸 분류 장치
KR20190070702A (ko) * 2017-12-13 2019-06-21 주식회사 한류에이아이센터 텍스트 마이닝 기반 보안 이벤트 자동 검증 시스템 및 방법

Also Published As

Publication number Publication date
KR101291076B1 (ko) 2013-08-23

Similar Documents

Publication Publication Date Title
US8359327B2 (en) Document processing method and system
Peng et al. Enhancing the naive bayes spam filter through intelligent text modification detection
US7555523B1 (en) Spam discrimination by generalized Ngram analysis of small header fields
CN110149266B (zh) 垃圾邮件识别方法及装置
US8909713B2 (en) Method and system for filtering text messages
CN107315797A (zh) 一种网络新闻获取及文本情感预测系统
US20130275433A1 (en) Classification rule generation device, classification rule generation method, classification rule generation program, and recording medium
US7711673B1 (en) Automatic charset detection using SIM algorithm with charset grouping
CN103995876A (zh) 一种基于卡方统计和smo算法的文本分类方法
CN103634473A (zh) 基于朴素贝叶斯分类的手机垃圾短信过滤方法与系统
CN109299228A (zh) 计算机执行的文本风险预测方法及装置
CN109086355B (zh) 基于新闻主题词的热点关联关系分析方法及系统
CN111767716A (zh) 企业多级行业信息的确定方法、装置及计算机设备
KR101291076B1 (ko) 스팸 문서 판단 방법 및 그 판단 장치
CN113590764B (zh) 训练样本构建方法、装置、电子设备和存储介质
CN111079029B (zh) 敏感账号的检测方法、存储介质和计算机设备
Joshi et al. Phishing attack detection using feature selection techniques
CN106897290B (zh) 一种建立关键词模型的方法及装置
Agarwal et al. SMS spam detection for Indian messages
Hosseinpour et al. An ensemble learning approach for sms spam detection
CN101329668A (zh) 一种信息规则生成方法及装置、信息类型判断方法及系统
CN110991169B (zh) 一种风险内容变种的识别方法、装置及电子设备
CN107483420B (zh) 信息审核装置及方法
CN116644183A (zh) 文本分类方法、装置及存储介质
CN109947932B (zh) 一种推送信息分类方法及系统

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160627

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170703

Year of fee payment: 5