KR20210051175A - Method, system, and computer program for dedecting multimodal abusing pattern to select document - Google Patents

Method, system, and computer program for dedecting multimodal abusing pattern to select document Download PDF

Info

Publication number
KR20210051175A
KR20210051175A KR1020190136111A KR20190136111A KR20210051175A KR 20210051175 A KR20210051175 A KR 20210051175A KR 1020190136111 A KR1020190136111 A KR 1020190136111A KR 20190136111 A KR20190136111 A KR 20190136111A KR 20210051175 A KR20210051175 A KR 20210051175A
Authority
KR
South Korea
Prior art keywords
pattern
document
explosive
abusing
score
Prior art date
Application number
KR1020190136111A
Other languages
Korean (ko)
Other versions
KR102426056B1 (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 KR1020190136111A priority Critical patent/KR102426056B1/en
Publication of KR20210051175A publication Critical patent/KR20210051175A/en
Application granted granted Critical
Publication of KR102426056B1 publication Critical patent/KR102426056B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/226Validation

Abstract

A method and a system for detecting a multimodal abusing pattern for document screening are disclosed. The abusing pattern detecting method comprises the steps of: detecting a burstiness pattern representing a repeating pattern of a document based on a multimodal feature between documents; and screening an original document by using the burstiness pattern.

Description

문서 선별을 위해 멀티모달 어뷰징 패턴을 감지하는 방법, 시스템, 및 컴퓨터 프로그램{METHOD, SYSTEM, AND COMPUTER PROGRAM FOR DEDECTING MULTIMODAL ABUSING PATTERN TO SELECT DOCUMENT}Method, system, and computer program for detecting multimodal abusing patterns for document selection {METHOD, SYSTEM, AND COMPUTER PROGRAM FOR DEDECTING MULTIMODAL ABUSING PATTERN TO SELECT DOCUMENT}

아래의 설명은 어뷰징(abusing) 패턴 문서를 탐지하는 기술에 관한 것이다.The following description relates to a technique for detecting an abusing pattern document.

인터넷의 상용화로 인해 많은 사용자들이 인터넷을 이용하여 다양한 주제의 정보를 검색할 수 있다. 그러나, 방대한 양의 정보 속에서 사용자가 원하는 최적의 정보를 찾는 데는 시간과 노력이 필요하다.Due to the commercialization of the Internet, many users can search for information on various topics using the Internet. However, it takes time and effort to find the optimal information desired by the user in the vast amount of information.

최근 검색 엔진들은 사용자가 원하는 최적의 정보를 찾아낼 수 있도록 다양한 검색 방법을 도입하고 있다. 그 중 하나는 경험이나 의견이 풍부한 문서나 정보성이 높은 문서가 검색 결과 상위에 노출되도록 하는 문서 의도 기반의 랭킹 알고리즘 등이 있다.Recently, search engines have introduced various search methods so that users can find the optimal information they want. One of them is a document intention-based ranking algorithm that allows documents with rich experiences or opinions or documents with high information to be exposed to the top of search results.

한편, 광고나 악의적인 목적으로 문서 랭킹을 차지하기 위해 유사 문서를 집중적으로 생산해 내는 어뷰징(abusing) 문제가 증가하고 있다.On the other hand, there is an increasing problem of abusing in which similar documents are intensively produced to occupy the ranking of documents for advertisements or malicious purposes.

이러한 어뷰징 문제를 해결하기 위한 기술들이 많이 연구되고 있으며, 예컨대 한국공개특허 제10-2012-0005797호(공개일 2012년 01월 17일)에는 필터링 대상으로 판단된 문서가 등록되거나 노출되는 것을 차단하는 기술이 개시되어 있다.A lot of research is being conducted on technologies for solving such abusing problems. For example, Korean Patent Publication No. 10-2012-0005797 (published on January 17, 2012) prevents the registration or exposure of documents determined to be filtered. The technology is disclosed.

일정 기간 동안 생산된 문서를 대상으로 멀티모달 어뷰징 패턴을 감지하여 감지된 패턴을 바탕으로 독창성 있는 문서를 선별할 수 있는 방법 및 시스템을 제공한다.Provides a method and system for selecting original documents based on the detected patterns by detecting multimodal abusing patterns for documents produced for a certain period of time.

문서 패턴의 어뷰징 특성과 함께 문서 작성자 간의 네트워크 정보를 감지하여 이러한 패턴들을 통해 의도적으로 생산된 어뷰징 문서를 선별할 수 있는 방법 및 시스템을 제공한다.A method and system capable of selecting an abusing document intentionally produced through these patterns by detecting the abusing characteristics of a document pattern and network information between document authors are provided.

컴퓨터 시스템에서 실행되는 어뷰징 패턴 감지 방법에 있어서, 상기 컴퓨터 시스템은 메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서를 포함하고, 상기 어뷰징 패턴 감지 방법은, 상기 적어도 하나의 프로세서에 의해, 문서 간의 멀티모달 피처(multimodal feature)에 기초하여 상기 문서의 반복 패턴을 나타내는 폭발성(burstiness) 패턴을 감지하는 단계; 및 상기 적어도 하나의 프로세서에 의해, 상기 폭발성 패턴을 이용하여 독창적인 문서(original document)를 선별하는 단계를 포함하는 어뷰징 패턴 감지 방법을 제공한다.A method for detecting an abusing pattern executed in a computer system, wherein the computer system includes at least one processor configured to execute computer-readable instructions contained in a memory, and the method for detecting an abusing pattern is performed by the at least one processor. And detecting an explosive pattern representing a repetition pattern of the document based on multimodal features between documents; And selecting an original document using the explosive pattern by the at least one processor.

일 측면에 따르면, 상기 감지하는 단계는, 타임 윈도우 내 문서 집합을 대상으로 상기 문서 집합에서 나타나는 상기 폭발성 패턴을 감지하는 단계를 포함할 수 있다.According to an aspect, the detecting may include detecting the explosive pattern appearing in the document set for a document set within a time window.

다른 측면에 따르면, 상기 감지하는 단계는, 타임 윈도우 내 문서 집합을 대상으로 각 문서에 포함된 단어, 링크, 제목, 본문, 이미지 중 적어도 하나의 컨텐츠를 이용하여 상기 문서 집합에서 나타나는 상기 폭발성 패턴을 감지하는 단계를 포함할 수 있다.According to another aspect, in the detecting, the explosive pattern appearing in the document set is determined using at least one of a word, a link, a title, a body, and an image included in each document for a document set in a time window. It may include the step of sensing.

또 다른 측면에 따르면, 상기 감지하는 단계는, 상기 문서 집합에서 단어 출현 빈도를 기준으로 선정된 단어나 표현이 각 문서에서 등장하는 비중을 이용하여 상기 폭발성 패턴을 감지하는 단계를 포함할 수 있다.According to another aspect, the detecting may include detecting the explosive pattern by using a weight of a word or expression selected on the basis of the frequency of occurrence of words in the document set by using a weight in each document.

또 다른 측면에 따르면, 상기 감지하는 단계는, 상기 문서에 포함된 컨텐츠를 이용하여 상기 반복 패턴을 나타내는 복수의 피처를 측정하는 단계; 및 상기 복수의 피처를 합산하여 폭발성 점수를 산출하는 단계를 포함할 수 있다.According to another aspect, the detecting may include measuring a plurality of features representing the repetition pattern using content included in the document; And calculating an explosive score by summing the plurality of features.

또 다른 측면에 따르면, 상기 감지하는 단계는, 상기 복수의 피처를 이용하여 문서 집합을 선정하는 단계; 및 상기 문서 집합을 바탕으로 상기 복수의 피처를 학습하거나 각 피처 별 가중치를 조정하는 단계를 더 포함할 수 있다.According to another aspect, the detecting may include selecting a document set using the plurality of features; And learning the plurality of features based on the document set or adjusting weights for each feature.

또 다른 측면에 따르면, 상기 감지하는 단계는, 상기 문서에 포함된 컨텐츠를 수치 벡터로 변환한 후 상기 수치 벡터에 대응되는 패턴 ID를 부여하는 단계; 및 시간 경과에 따른 패턴 ID에 타임 윈도우를 적용하여 상기 타임 윈도우 내의 패턴 ID 개수를 점수화하여 폭발성 점수를 산출하는 단계를 포함할 수 있다.According to another aspect, the detecting may include converting content included in the document into a numeric vector and then assigning a pattern ID corresponding to the numeric vector; And calculating an explosive score by scoring the number of pattern IDs in the time window by applying a time window to the pattern ID over time.

또 다른 측면에 따르면, 상기 감지하는 단계는, 상기 폭발성 점수가 일정 레벨 이상인 경우 상기 타임 윈도우를 조정하여 상기 폭발성 패턴의 선예도(sharpness)를 측정하는 단계를 더 포함할 수 있다.According to another aspect, the detecting may further include measuring a sharpness of the explosive pattern by adjusting the time window when the explosive score is greater than or equal to a predetermined level.

또 다른 측면에 따르면, 상기 어뷰징 패턴 감지 방법은, 상기 적어도 하나의 프로세서에 의해, 상기 폭발성 패턴이 감지된 문서와 해당 문서를 작성한 작성자 간 네트워크 정보를 생성하는 단계를 더 포함할 수 있다.According to another aspect, the method of detecting an abusing pattern may further include generating, by the at least one processor, network information between a document in which the explosive pattern is detected and an author who has created the document.

또 다른 측면에 따르면, 상기 감지하는 단계는, 상기 문서에 포함된 컨텐츠를 수치 벡터로 변환한 후 상기 수치 벡터에 대응되는 패턴 ID를 부여하는 단계를 포함하고, 상기 생성하는 단계는, 상기 패턴 ID와 해당 문서를 작성한 작성자 간의 링크를 연결하여 상기 네트워크 정보를 생성하는 단계를 포함할 수 있다.According to another aspect, the detecting step includes converting content included in the document into a numeric vector and then assigning a pattern ID corresponding to the numeric vector, and the generating step comprises: the pattern ID And generating the network information by connecting a link between the author who wrote the document and the document.

또 다른 측면에 따르면, 상기 선별하는 단계는, 상기 폭발성 패턴과 함께 상기 네트워크 정보를 이용하여 어뷰징 문서와 어뷰저 중 적어도 하나를 선별하는 단계를 포함할 수 있다.According to another aspect, the selecting may include selecting at least one of an abusing document and an abuser using the network information together with the explosive pattern.

상기 어뷰징 패턴 감지 방법을 상기 컴퓨터 시스템에 실행시키기 위해 비-일시적인 컴퓨터 판독가능한 기록 매체에 저장되는 컴퓨터 프로그램을 제공한다.There is provided a computer program stored in a non-transitory computer-readable recording medium for executing the method of detecting an abusing pattern on the computer system.

상기 어뷰징 패턴 감지 방법을 컴퓨터에 실행시키기 위한 프로그램이 기록되어 있는 비-일시적인 컴퓨터 판독 가능한 기록 매체를 제공한다.It provides a non-transitory computer-readable recording medium in which a program for executing the method for detecting an abusing pattern on a computer is recorded.

컴퓨터 시스템에 있어서, 메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 문서 간의 멀티모달 피처에 기초하여 상기 문서의 반복 패턴을 나타내는 폭발성 패턴을 감지하는 패턴 감지부; 및 상기 폭발성 패턴을 이용하여 독창적인 문서를 선별하는 문서 선별부를 포함하는 컴퓨터 시스템을 제공한다.A computer system comprising at least one processor configured to execute computer readable instructions contained in a memory, wherein the at least one processor generates an explosive pattern representing a repeating pattern of the document based on multimodal features between documents. A pattern detection unit to detect; And a document sorting unit for selecting original documents using the explosive pattern.

컴퓨터 시스템에 있어서, 메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 문서 간의 멀티모달 피처에 기초하여 상기 문서의 반복 패턴을 나타내는 폭발성 패턴을 감지하는 패턴 감지부; 상기 폭발성 패턴이 감지된 문서와 해당 문서를 작성한 작성자 간 네트워크 정보를 생성하는 네트워크 생성부; 및 상기 폭발성 패턴 및 상기 네트워크 정보를 이용하여 독창적인 문서를 선별하는 문서 선별부를 포함하는 컴퓨터 시스템을 제공한다.A computer system comprising at least one processor configured to execute computer readable instructions contained in a memory, wherein the at least one processor generates an explosive pattern representing a repeating pattern of the document based on multimodal features between documents. A pattern detection unit to detect; A network generator for generating network information between the document in which the explosive pattern is detected and the author who created the document; And a document sorting unit for selecting original documents using the explosive pattern and the network information.

본 발명의 실시예들에 따르면, 일정 기간 동안 생산된 문서를 대상으로 멀티모달 어뷰징 패턴을 감지하여 감지된 패턴을 바탕으로 어뷰징 패턴을 가진 문서와 독창성 있는 문서를 선별할 수 있다.According to embodiments of the present invention, a document having an abusing pattern and a document with originality may be selected based on the detected pattern by detecting a multimodal abusing pattern for a document produced for a certain period.

본 발명의 실시예들에 따르면, 문서 패턴의 어뷰징 특성과 함께 문서 작성자 간의 네트워크 정보를 이용하여 의도적으로 생산된 어뷰징 문서를 선별함으로써 문서 선별 성능과 문서 검색 품질을 향상시킬 수 있다.According to embodiments of the present invention, it is possible to improve document selection performance and document search quality by selecting abusing documents intentionally produced by using an abusing characteristic of a document pattern and network information between document authors.

도 1은 본 발명의 일 실시예에 따른 네트워크 환경의 예를 도시한 도면이다.
도 2는 본 발명의 일 실시예에 있어서 전자 기기 및 서버의 내부 구성을 설명하기 위한 블록도이다.
도 3은 본 발명의 일 실시예에 따른 서버의 프로세서가 포함할 수 있는 구성요소의 예를 도시한 도면이다.
도 4는 본 발명의 일 실시예에 따른 서버가 수행할 수 있는 방법의 예를 도시한 흐름도이다.
도 5는 본 발명의 일실시예에 있어서 문서에서 나타날 수 있는 집합적 특성을 설명하기 위한 예시 도면이다.
도 6 내지 도 7은 본 발명의 일실시예에 있어서 문서를 수치 벡터로 표현하는 과정을 설명하기 위한 예시 도면이다.
도 8은 본 발명의 일실시예에 있어서 세부 피처를 이용하여 어뷰징 패턴을 학습하는 과정을 설명하기 위한 예시 도면이다.
도 9는 본 발명의 일실시예에 있어서 문서와 작성자 간의 네트워크 정보를 설명하기 위한 예시 도면이다.
도 10 내지 도 13은 본 발명의 일실시예에 있어서 어뷰징 문서와 정상 문서를 선별하는 과정을 설명하기 위한 예시 도면이다.
1 is a diagram illustrating an example of a network environment according to an embodiment of the present invention.
2 is a block diagram illustrating an internal configuration of an electronic device and a server according to an embodiment of the present invention.
3 is a diagram illustrating an example of components that may be included in a processor of a server according to an embodiment of the present invention.
4 is a flowchart illustrating an example of a method that can be performed by a server according to an embodiment of the present invention.
5 is an exemplary diagram for explaining collective characteristics that may appear in a document according to an embodiment of the present invention.
6 to 7 are exemplary diagrams for explaining a process of expressing a document as a numeric vector in an embodiment of the present invention.
8 is an exemplary diagram for explaining a process of learning an abusing pattern using detailed features in an embodiment of the present invention.
9 is an exemplary diagram for explaining network information between a document and an author in an embodiment of the present invention.
10 to 13 are exemplary diagrams for explaining a process of selecting an abusing document and a normal document according to an embodiment of the present invention.

이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

본 발명의 실시예들은 어뷰징 패턴 문서를 선별하는 기술에 관한 것이다.Embodiments of the present invention relate to a technique for selecting an abusing pattern document.

본 명세서에서 구체적으로 개시되는 것들을 포함하는 실시예들은 독창성 없이 반복되는 어뷰징 패턴을 찾아 반대로 독창적인 문서(original document)를 선별할 수 있고, 이를 통해 문서 선별 성능과 문서 검색 품질을 향상시킬 수 있다.In the embodiments including those specifically disclosed in the present specification, it is possible to search for a repetitive abusing pattern without ingenuity, and to select an original document on the contrary, thereby improving document selection performance and document search quality.

도 1은 본 발명의 일실시예에 따른 네트워크 환경의 예를 도시한 도면이다. 도 1의 네트워크 환경은 복수의 전자 기기들(110, 120, 130, 140), 복수의 서버들(150, 160) 및 네트워크(170)를 포함하는 예를 나타내고 있다. 이러한 도 1은 발명의 설명을 위한 일례로 전자 기기의 수나 서버의 수가 도 1과 같이 한정되는 것은 아니다.1 is a diagram showing an example of a network environment according to an embodiment of the present invention. The network environment of FIG. 1 shows an example including a plurality of electronic devices 110, 120, 130, and 140, a plurality of servers 150 and 160, and a network 170. 1 is an example for explaining the invention, and the number of electronic devices or servers is not limited as in FIG. 1.

복수의 전자 기기들(110, 120, 130, 140)은 컴퓨터 시스템으로 구현되는 고정형 단말이거나 이동형 단말일 수 있다. 복수의 전자 기기들(110, 120, 130, 140)의 예를 들면, 스마트폰(smart phone), 휴대폰, 내비게이션, 컴퓨터, 노트북, 디지털방송용 단말, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 태블릿 PC, 게임 콘솔(game console), 웨어러블 디바이스(wearable device), IoT(internet of things) 디바이스, VR(virtual reality) 디바이스, AR(augmented reality) 디바이스 등이 있다. 일례로 도 1에서는 전자 기기(110)의 예로 스마트폰의 형상을 나타내고 있으나, 본 발명의 실시예들에서 전자 기기(110)는 실질적으로 무선 또는 유선 통신 방식을 이용하여 네트워크(170)를 통해 다른 전자 기기들(120, 130, 140) 및/또는 서버(150, 160)와 통신할 수 있는 다양한 물리적인 컴퓨터 시스템들 중 하나를 의미할 수 있다.The plurality of electronic devices 110, 120, 130, and 140 may be a fixed terminal implemented as a computer system or a mobile terminal. Examples of the plurality of electronic devices 110, 120, 130, and 140 include smart phones, mobile phones, navigation systems, computers, notebook computers, digital broadcasting terminals, personal digital assistants (PDAs), and portable multimedia players (PMPs). ), tablet PCs, game consoles, wearable devices, internet of things (IoT) devices, virtual reality (VR) devices, and augmented reality (AR) devices. As an example, in FIG. 1, the shape of a smartphone is shown as an example of the electronic device 110, but in the embodiments of the present invention, the electronic device 110 is substantially different through the network 170 using a wireless or wired communication method. It may mean one of various physical computer systems capable of communicating with the electronic devices 120, 130, 140 and/or the servers 150 and 160.

통신 방식은 제한되지 않으며, 네트워크(170)가 포함할 수 있는 통신망(일례로, 이동통신망, 유선 인터넷, 무선 인터넷, 방송망, 위성망 등)을 활용하는 통신 방식뿐만 아니라 기기들간의 근거리 무선 통신 역시 포함될 수 있다. 예를 들어, 네트워크(170)는, PAN(personal area network), LAN(local area network), CAN(campus area network), MAN(metropolitan area network), WAN(wide area network), BBN(broadband network), 인터넷 등의 네트워크 중 하나 이상의 임의의 네트워크를 포함할 수 있다. 또한, 네트워크(170)는 버스 네트워크, 스타 네트워크, 링 네트워크, 메쉬 네트워크, 스타-버스 네트워크, 트리 또는 계층적(hierarchical) 네트워크 등을 포함하는 네트워크 토폴로지 중 임의의 하나 이상을 포함할 수 있으나, 이에 제한되지 않는다.The communication method is not limited, and not only a communication method using a communication network (for example, a mobile communication network, wired Internet, wireless Internet, broadcasting network, satellite network, etc.) that the network 170 may include, but also short-range wireless communication between devices is included. I can. For example, the network 170 includes a personal area network (PAN), a local area network (LAN), a campus area network (CAN), a metropolitan area network (MAN), a wide area network (WAN), and a broadband network (BBN). And any one or more of networks such as the Internet. In addition, the network 170 may include any one or more of a network topology including a bus network, a star network, a ring network, a mesh network, a star-bus network, a tree or a hierarchical network, etc. Not limited.

서버(150, 160) 각각은 복수의 전자 기기들(110, 120, 130, 140)과 네트워크(170)를 통해 통신하여 명령, 코드, 파일, 컨텐츠, 서비스 등을 제공하는 컴퓨터 장치 또는 복수의 컴퓨터 장치들로 구현될 수 있다. 예를 들어, 서버(150)는 네트워크(170)를 통해 접속한 복수의 전자 기기들(110, 120, 130, 140)로 제1 서비스를 제공하는 시스템일 수 있으며, 서버(160) 역시 네트워크(170)를 통해 접속한 복수의 전자 기기들(110, 120, 130, 140)로 제2 서비스를 제공하는 시스템일 수 있다. 보다 구체적인 예로, 서버(150)는 복수의 전자 기기들(110, 120, 130, 140)에 설치되어 구동되는 컴퓨터 프로그램으로서의 어플리케이션을 통해, 해당 어플리케이션이 목적하는 서비스(일례로, 검색 서비스 등)를 제1 서비스로서 복수의 전자 기기들(110, 120, 130, 140)로 제공할 수 있다. 다른 예로, 서버(160)는 상술한 어플리케이션의 설치 및 구동을 위한 파일을 복수의 전자 기기들(110, 120, 130, 140)로 배포하는 서비스를 제2 서비스로서 제공할 수 있다.Each of the servers 150 and 160 is a computer device or a plurality of computers that communicates with a plurality of electronic devices 110, 120, 130, and 140 through a network 170 to provide commands, codes, files, contents, services, etc. It can be implemented with devices. For example, the server 150 may be a system that provides a first service to a plurality of electronic devices 110, 120, 130, and 140 accessed through the network 170, and the server 160 is also a network ( It may be a system that provides a second service to a plurality of electronic devices 110, 120, 130, and 140 accessed through 170). As a more specific example, the server 150 provides a service (for example, a search service, etc.) targeted by the application through an application as a computer program installed and driven in a plurality of electronic devices 110, 120, 130, and 140. As a first service, it may be provided to a plurality of electronic devices 110, 120, 130, and 140. As another example, the server 160 may provide a service for distributing the above-described application installation and running file to the plurality of electronic devices 110, 120, 130, and 140 as the second service.

도 2는 본 발명의 일실시예에 있어서 전자 기기 및 서버의 내부 구성을 설명하기 위한 블록도이다. 도 2에서는 전자 기기에 대한 예로서 전자 기기(110), 그리고 서버(150)의 내부 구성을 설명한다. 또한, 다른 전자 기기들(120, 130, 140)이나 서버(160) 역시 상술한 전자 기기(110) 또는 서버(150)와 동일한 또는 유사한 내부 구성을 가질 수 있다.2 is a block diagram illustrating an internal configuration of an electronic device and a server according to an embodiment of the present invention. In FIG. 2, internal configurations of the electronic device 110 and the server 150 are described as examples of the electronic device. In addition, other electronic devices 120, 130, 140 or server 160 may also have the same or similar internal configuration as the electronic device 110 or server 150 described above.

전자 기기(110)와 서버(150)는 메모리(211, 221), 프로세서(212, 222), 통신 모듈(213, 223) 그리고 입출력 인터페이스(214, 224)를 포함할 수 있다. 메모리(211, 221)는 비-일시적인 컴퓨터 판독 가능한 기록매체로서, RAM(random access memory), ROM(read only memory), 디스크 드라이브, SSD(solid state drive), 플래시 메모리(flash memory) 등과 같은 비소멸성 대용량 저장 장치(permanent mass storage device)를 포함할 수 있다. 여기서 ROM, SSD, 플래시 메모리, 디스크 드라이브 등과 같은 비소멸성 대용량 저장 장치는 메모리(211, 221)와는 구분되는 별도의 영구 저장 장치로서 전자 기기(110)나 서버(150)에 포함될 수도 있다. 또한, 메모리(211, 221)에는 운영체제와 적어도 하나의 프로그램 코드(일례로 전자 기기(110)에 설치되어 구동되는 브라우저나 특정 서비스의 제공을 위해 전자 기기(110)에 설치된 어플리케이션 등을 위한 코드)가 저장될 수 있다. 이러한 소프트웨어 구성요소들은 메모리(211, 221)와는 별도의 컴퓨터에서 판독 가능한 기록매체로부터 로딩될 수 있다. 이러한 별도의 컴퓨터에서 판독 가능한 기록매체는 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록매체를 포함할 수 있다. 다른 실시예에서 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록매체가 아닌 통신 모듈(213, 223)을 통해 메모리(211, 221)에 로딩될 수도 있다. 예를 들어, 적어도 하나의 프로그램은 개발자들 또는 어플리케이션의 설치 파일을 배포하는 파일 배포 시스템(일례로, 상술한 서버(160))이 네트워크(170)를 통해 제공하는 파일들에 의해 설치되는 컴퓨터 프로그램(일례로 상술한 어플리케이션)에 기반하여 메모리(211, 221)에 로딩될 수 있다.The electronic device 110 and the server 150 may include memories 211 and 221, processors 212 and 222, communication modules 213 and 223, and input/output interfaces 214 and 224. The memories 211 and 221 are non-transitory computer-readable recording media, such as random access memory (RAM), read only memory (ROM), disk drive, solid state drive (SSD), flash memory, and the like. It may include a permanent mass storage device. Here, a non-destructive mass storage device such as a ROM, SSD, flash memory, disk drive, etc. may be included in the electronic device 110 or the server 150 as a separate permanent storage device separated from the memories 211 and 221. In addition, the memories 211 and 221 include an operating system and at least one program code (for example, a browser installed and driven in the electronic device 110 or a code for an application installed in the electronic device 110 to provide a specific service). Can be saved. These software components may be loaded from a computer-readable recording medium separate from the memories 211 and 221. Such a separate computer-readable recording medium may include a computer-readable recording medium such as a floppy drive, a disk, a tape, a DVD/CD-ROM drive, and a memory card. In another embodiment, software components may be loaded into the memories 211 and 221 through communication modules 213 and 223 other than a computer-readable recording medium. For example, at least one program is a computer program installed by files provided by a file distribution system (for example, the server 160 described above) that distributes the installation files of developers or applications through the network 170 It may be loaded into the memories 211 and 221 based on (for example, the above-described application).

프로세서(212, 222)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(211, 221) 또는 통신 모듈(213, 223)에 의해 프로세서(212, 222)로 제공될 수 있다. 예를 들어 프로세서(212, 222)는 메모리(211, 221)와 같은 기록 장치에 저장된 프로그램 코드에 따라 수신되는 명령을 실행하도록 구성될 수 있다.The processors 212 and 222 may be configured to process instructions of a computer program by performing basic arithmetic, logic, and input/output operations. Instructions may be provided to the processors 212 and 222 by the memories 211 and 221 or the communication modules 213 and 223. For example, the processors 212 and 222 may be configured to execute a command received according to a program code stored in a recording device such as the memories 211 and 221.

통신 모듈(213, 223)은 네트워크(170)를 통해 전자 기기(110)와 서버(150)가 서로 통신하기 위한 기능을 제공할 수 있으며, 전자 기기(110) 및/또는 서버(150)가 다른 전자 기기(일례로 전자 기기(120)) 또는 다른 서버(일례로 서버(160))와 통신하기 위한 기능을 제공할 수 있다. 일례로, 전자 기기(110)의 프로세서(212)가 메모리(211)와 같은 기록 장치에 저장된 프로그램 코드에 따라 생성한 요청이 통신 모듈(213)의 제어에 따라 네트워크(170)를 통해 서버(150)로 전달될 수 있다. 역으로, 서버(150)의 프로세서(222)의 제어에 따라 제공되는 제어 신호나 명령, 컨텐츠, 파일 등이 통신 모듈(223)과 네트워크(170)를 거쳐 전자 기기(110)의 통신 모듈(213)을 통해 전자 기기(110)로 수신될 수 있다. 예를 들어 통신 모듈(213)을 통해 수신된 서버(150)의 제어 신호나 명령, 컨텐츠, 파일 등은 프로세서(212)나 메모리(211)로 전달될 수 있고, 컨텐츠나 파일 등은 전자 기기(110)가 더 포함할 수 있는 저장 매체(상술한 영구 저장 장치)로 저장될 수 있다.The communication modules 213 and 223 may provide a function for the electronic device 110 and the server 150 to communicate with each other through the network 170, and the electronic device 110 and/or the server 150 A function for communicating with an electronic device (for example, the electronic device 120) or another server (for example, the server 160) may be provided. As an example, a request generated by the processor 212 of the electronic device 110 according to a program code stored in a recording device such as a memory 211 is sent to the server 150 through the network 170 under the control of the communication module 213. ) Can be delivered. Conversely, control signals, commands, contents, files, etc. provided under the control of the processor 222 of the server 150 are transmitted through the communication module 223 and the network 170 to the communication module 213 of the electronic device 110. ) Through the electronic device 110. For example, a control signal, command, content, file, etc. of the server 150 received through the communication module 213 may be transmitted to the processor 212 or the memory 211, and the content or file may be transmitted to an electronic device ( 110) may be stored as a storage medium (permanent storage device described above) that may further include.

입출력 인터페이스(214)는 입출력 장치(215)와의 인터페이스를 위한 수단일 수 있다. 예를 들어, 입력 장치는 키보드, 마우스, 마이크로폰, 카메라 등의 장치를, 그리고 출력 장치는 디스플레이, 스피커, 햅틱 피드백 디바이스(haptic feedback device) 등과 같은 장치를 포함할 수 있다. 다른 예로 입출력 인터페이스(214)는 터치스크린과 같이 입력과 출력을 위한 기능이 하나로 통합된 장치와의 인터페이스를 위한 수단일 수도 있다. 입출력 장치(215)는 전자 기기(110)와 하나의 장치로 구성될 수도 있다. 또한, 서버(150)의 입출력 인터페이스(224)는 서버(150)와 연결되거나 서버(150)가 포함할 수 있는 입력 또는 출력을 위한 장치(미도시)와의 인터페이스를 위한 수단일 수 있다. 보다 구체적인 예로, 전자 기기(110)의 프로세서(212)가 메모리(211)에 로딩된 컴퓨터 프로그램의 명령을 처리함에 있어서 서버(150)나 전자 기기(120)가 제공하는 데이터를 이용하여 구성되는 서비스 화면이나 컨텐츠가 입출력 인터페이스(214)를 통해 디스플레이에 표시될 수 있다.The input/output interface 214 may be a means for an interface with the input/output device 215. For example, the input device may include a device such as a keyboard, a mouse, a microphone, and a camera, and the output device may include a device such as a display, a speaker, and a haptic feedback device. As another example, the input/output interface 214 may be a means for interfacing with a device in which input and output functions are integrated into one, such as a touch screen. The input/output device 215 may be configured with the electronic device 110 and one device. In addition, the input/output interface 224 of the server 150 may be a means for interface with a device (not shown) for input or output that is connected to the server 150 or that the server 150 may include. As a more specific example, when the processor 212 of the electronic device 110 processes a command of a computer program loaded in the memory 211, a service configured by using data provided by the server 150 or the electronic device 120 A screen or content may be displayed on the display through the input/output interface 214.

또한, 다른 실시예들에서 전자 기기(110) 및 서버(150)는 도 2의 구성요소들보다 더 많은 구성요소들을 포함할 수도 있다. 그러나, 대부분의 종래기술적 구성요소들을 명확하게 도시할 필요성은 없다. 예를 들어, 전자 기기(110)는 상술한 입출력 장치(215) 중 적어도 일부를 포함하도록 구현되거나 또는 트랜시버(transceiver), GPS(Global Positioning System) 모듈, 카메라, 각종 센서, 데이터베이스 등과 같은 다른 구성요소들을 더 포함할 수도 있다. 보다 구체적인 예로, 전자 기기(110)가 스마트폰인 경우, 일반적으로 스마트폰이 포함하고 있는 가속도 센서나 자이로 센서, 카메라 모듈, 각종 물리적인 버튼, 터치패널을 이용한 버튼, 입출력 포트, 진동을 위한 진동기 등의 다양한 구성요소들이 전자 기기(110)에 더 포함되도록 구현될 수 있다.In addition, in other embodiments, the electronic device 110 and the server 150 may include more components than those of FIG. 2. However, there is no need to clearly show most of the prior art components. For example, the electronic device 110 may be implemented to include at least some of the input/output devices 215 described above, or other components such as a transceiver, a global positioning system (GPS) module, a camera, various sensors, and a database. May include more. As a more specific example, when the electronic device 110 is a smartphone, an acceleration sensor or a gyro sensor, a camera module, various physical buttons, a button using a touch panel, an input/output port, and a vibrator for vibration generally included in the smartphone Various components such as may be implemented to be further included in the electronic device 110.

이하에서는 문서 선별을 위해 멀티모달 어뷰징 패턴을 감지하는 방법 및 시스템의 구체적인 실시예를 설명하기로 한다.Hereinafter, a specific embodiment of a method and system for detecting a multimodal abusing pattern for document selection will be described.

본 명세서에서 문서는 인터넷 상에서 검색 대상이 되는 정보 단위를 의미할 수 있다.In this specification, a document may mean an information unit that is a search target on the Internet.

광고나 악의적인 목적으로 생산되는 문서들은 유사 내용이 반복되는 패턴으로 독창성이 없고 주로 비슷한 그룹의 작성자들에 의해 비슷한 내용으로 비슷한 시기에 집중적으로 작성되는 특성을 가진다.Documents produced for advertisements or malicious purposes have the characteristics of being intensively written at similar times with similar contents, mainly by similar groups of authors, without originality due to repetitive patterns of similar contents.

본 실시예에서 폭발성(burstiness) 패턴은 문서 품질을 측정하기 위한 것으로, 문서들이 비슷한 시기에 비슷한 그룹의 작성자들에 의해 비슷한 내용으로 작성됨에 따라 반복 패턴으로 나타나는 어뷰징 패턴을 의미한다. 문서의 폭발성 패턴은 문서 하나의 특성보다는 특정 기간 내에 생산되는 문서 간의 집합적 특성(multimodal feature)을 의미할 수 있다.In the present embodiment, the burstiness pattern is for measuring the quality of a document, and refers to an abuzz pattern that appears as a repeating pattern as documents are written with similar content by a similar group of authors at a similar time. The explosive pattern of a document may mean a multimodal feature between documents produced within a specific period rather than a single document.

본 실시예들은 독창성 없는 반복 패턴의 문서들을 찾아 내어 이를 통해 반대로 검색 서비스 이용자들이 선호할만한 독창성 있는 문서를 선별하고자 하는 것이다.The present embodiments seek to find documents having a repetitive pattern without originality, and through this, to select original documents that search service users prefer.

도 3은 본 발명의 일실시예에 따른 서버의 프로세서가 포함할 수 있는 구성요소의 예를 도시한 블록도이고, 도 4는 본 발명의 일실시예에 따른 서버가 수행할 수 있는 방법의 예를 도시한 흐름도이다.3 is a block diagram showing an example of components that may be included in a processor of a server according to an embodiment of the present invention, and FIG. 4 is an example of a method that can be performed by a server according to an embodiment of the present invention. Is a flow chart showing.

본 실시예에 따른 서버(150)는 검색 서비스를 제공하는 플랫폼 역할을 한다. 특히, 서버(150)는 검색 대상이 되는 문서를 대상으로 반복 패턴인 폭발성 패턴을 탐지하여 이러한 패턴을 통해 독창성 있는 문서를 선별할 수 있다.The server 150 according to the present embodiment serves as a platform for providing a search service. In particular, the server 150 may detect an explosive pattern, which is a repeating pattern, targeting a document to be searched, and select a document with originality through this pattern.

서버(150)의 프로세서(222)는 도 4에 따른 어뷰징 패턴 감지 방법을 수행하기 위한 구성요소로서 도 3에 도시된 바와 같이, 패턴 감지부(310), 네트워크 생성부(320), 및 문서 선별부(330)를 포함할 수 있다. 실시예에 따라 프로세서(222)의 구성요소들은 선택적으로 프로세서(222)에 포함되거나 제외될 수도 있다. 또한, 실시예에 따라 프로세서(222)의 구성요소들은 프로세서(222)의 기능의 표현을 위해 분리 또는 병합될 수도 있다.The processor 222 of the server 150 is a component for performing the method of detecting an abusing pattern according to FIG. 4, and as shown in FIG. 3, a pattern detection unit 310, a network generation unit 320, and a document are selected. It may include a unit 330. Depending on the embodiment, components of the processor 222 may be selectively included or excluded from the processor 222. In addition, according to an embodiment, components of the processor 222 may be separated or merged to express the function of the processor 222.

이러한 프로세서(222) 및 프로세서(222)의 구성요소들은 도 4의 어뷰징 패턴 감지 방법이 포함하는 단계들(S410 내지 S430)을 수행하도록 서버(150)를 제어할 수 있다. 예를 들어, 프로세서(222) 및 프로세서(222)의 구성요소들은 메모리(221)가 포함하는 운영체제의 코드와 적어도 하나의 프로그램의 코드에 따른 명령(instruction)을 실행하도록 구현될 수 있다.Components of the processor 222 and the processor 222 may control the server 150 to perform the steps (S410 to S430) included in the method of detecting an abusing pattern of FIG. 4. For example, the processor 222 and the components of the processor 222 may be implemented to execute an instruction according to the code of the operating system included in the memory 221 and the code of at least one program.

여기서, 프로세서(222)의 구성요소들은 서버(150)에 저장된 프로그램 코드가 제공하는 명령에 따라 프로세서(222)에 의해 수행되는 서로 다른 기능들(different functions)의 표현들일 수 있다. 예를 들어, 서버(150)가 문서의 반복 패턴을 나타내는 폭발성 패턴을 감지하도록 상술한 명령에 따라 서버(150)를 제어하는 프로세서(222)의 기능적 표현으로서 패턴 감지부(310)가 이용될 수 있다.Here, the components of the processor 222 may be expressions of different functions performed by the processor 222 according to an instruction provided by the program code stored in the server 150. For example, the pattern detection unit 310 may be used as a functional expression of the processor 222 that controls the server 150 according to the above-described command so that the server 150 detects an explosive pattern representing a repetition pattern of a document. have.

프로세서(222)는 서버(150)의 제어와 관련된 명령이 로딩된 메모리(221)로부터 필요한 명령을 읽어들일 수 있다. 이 경우, 상기 읽어들인 명령은 프로세서(222)가 이후 설명될 단계들(S410 내지 S430)을 실행하도록 제어하기 위한 명령을 포함할 수 있다. 이후 설명될 단계들(S410 내지 S430)은 도 4에 도시된 순서와 다른 순서로 수행될 수 있으며, 단계들(S410 내지 S430) 중 일부가 생략되거나 추가의 과정이 더 포함될 수 있다.The processor 222 may read necessary commands from the memory 221 loaded with commands related to control of the server 150. In this case, the read command may include a command for controlling the processor 222 to execute steps S410 to S430 to be described later. The steps S410 to S430 to be described later may be performed in an order different from the order shown in FIG. 4, and some of the steps S410 to S430 may be omitted or an additional process may be further included.

단계(S410)에서 패턴 감지부(310)는 일정 기간에 생성된 문서를 대상으로 문서의 반복 패턴을 나타내는 폭발성 패턴을 감지할 수 있다. 어뷰저에 의해 생산된 문서들은 주로 어떤 공통점을 가지고 특정 기간에 집중적으로 나타나는 경향이 있기 때문에 이러한 반복 패턴에 해당되는 폭발성 패턴을 찾아 어뷰징 문서를 선별할 수 있다. 일례로, 패턴 감지부(310)는 문서에 포함된 단어, 이미지, 링크, 문서의 제목이나 본문, 대가성 여부 등을 이용하여 반복 패턴을 나타내는 다양한 피처(feature)(이하, '세부 피처'라 칭함)를 측정함으로써 폭발성 패턴을 감지할 수 있다. 이때, 패턴 감지부(310)는 주기적으로(예컨대, 4시간) 해당 주기에 생산 혹은 수정된 문서 집합을 대상으로 세부 피처를 측정한 후 주기 별 세부 피처를 순차적으로 축적하여 특정 기간(예컨대, 8시간, 1일 등) 동안 축적된 세부 피처로부터 폭발성 패턴을 찾아낼 수 있다. 패턴 감지부(310)는 타임 윈도우(time window)를 조정해가면서 타임 윈도우 내에 발생한 특정 패턴의 증감을 통해 폭발성 패턴을 찾아낼 수 있다.In step S410, the pattern detection unit 310 may detect an explosive pattern representing a repetition pattern of a document targeting a document generated in a predetermined period. Since the documents produced by the abuzzer have a certain commonality and tend to appear intensively in a specific period, it is possible to select an abusing document by finding an explosive pattern corresponding to this repetition pattern. As an example, the pattern detection unit 310 includes various features representing a repeating pattern using words, images, links, the title or body of the document, whether or not it has a price (hereinafter, referred to as'detail features'). ) Can detect explosive patterns. At this time, the pattern detection unit 310 periodically (eg, 4 hours) measures detailed features for a set of documents produced or modified in a corresponding period, and then sequentially accumulates detailed features for each period for a specific period (eg, 8 hours). Explosive patterns can be found from detailed features accumulated over time, 1 day, etc.). The pattern detection unit 310 may detect an explosive pattern through an increase or decrease in a specific pattern occurring in the time window while adjusting the time window.

단계(S420)에서 네트워크 생성부(330)는 폭발성 패턴이 감지된 문서를 대상으로 해당 문서를 작성한 작성자 간 네트워크 정보를 생성할 수 있다. 네트워크 생성부(330)는 문서의 폭발성 패턴을 바탕으로 문서와 작성자 간, 그리고 작성자와 작성자 간의 네트워크를 생성할 수 있다. 네트워크 생성부(330)는 유사한 반복 패턴의 문서를 작성한 작성자끼리 링크를 연결하고 유사한 반복 패턴의 문서와 해당 문서를 만든 작성자 간의 링크를 연결함으로써 네트워크 정보를 생성할 수 있다.In step S420, the network generator 330 may generate network information between authors who have created the corresponding document targeting the document in which the explosive pattern is detected. The network generator 330 may generate a network between the document and the author and between the author and the author based on the explosive pattern of the document. The network generator 330 may generate network information by connecting links between authors who have created a document having a similar repetition pattern, and connecting a link between a document having a similar repetition pattern and an author who created the document.

단계(S430)에서 문서 선별부(330)는 단계(S410)에서 감지된 폭발성 패턴과 단계(S420)에서 생성된 네트워크 정보를 기초로 문서를 선별할 수 있다. 문서 선별부(330)는 문서의 폭발성 패턴과 작성자 간의 네트워크 정보를 이용하여 반복 패턴을 포함하는 문서들과 반복 패턴으로 문서를 작성하는 작성자들을 걸러내고 독창성 있는 패턴의 정상 문서들을 선별할 수 있다.In step S430, the document sorting unit 330 may select a document based on the explosive pattern detected in step S410 and the network information generated in step S420. The document sorting unit 330 may filter out documents including a repetitive pattern and authors who write a document with a repetition pattern by using the explosive pattern of the document and network information between authors, and select normal documents having a unique pattern.

문서의 폭발성 패턴을 감지하는 과정을 구체적으로 설명하면 다음과 같다.The process of detecting the explosive pattern of a document will be described in detail as follows.

도 5를 참조하면, 본 실시예에서 폭발성 패턴은 특정 기간(타임 윈도우) 내에 생산되는 문서 간에 나타날 수 있는 집합적 특징으로서, 문서 폭발성 패턴(501), 개인 폭발성 패턴(502), 그룹 폭발성 패턴(503)을 포함할 수 있다. 문서 폭발성 패턴(501)은 유사 단어, 유사 제목, 유사 본문 등이 포함된 문서가 일정 기간 동안 집중되는 패턴을 의미하고, 개인 폭발성 패턴(502)은 작성자 별로 유사 문서로 분류된 문서가 일정 기간 동안 집중적으로 작성되는 패턴을 의미하고, 그룹 폭발성 패턴(503)은 특정 그룹의 작성자들에 의해 유사 문서가 비슷한 기간에 집중적으로 작성되는 패턴을 의미할 수 있다.5, in this embodiment, an explosive pattern is a collective feature that can appear between documents produced within a specific period (time window), and includes a document explosive pattern 501, a personal explosive pattern 502, and a group explosive pattern ( 503). The document explosive pattern 501 refers to a pattern in which documents including similar words, similar titles, and similar texts are concentrated for a certain period, and the personal explosive pattern 502 refers to documents classified as similar documents by authors for a certain period. The group explosive pattern 503 may refer to a pattern that is intensively created, and the group explosive pattern 503 may refer to a pattern in which similar documents are intensively created in a similar period by creators of a specific group.

문서의 폭발성 패턴은 상기한 바와 같이 문서 폭발성 패턴(501), 개인 폭발성 패턴(502), 그룹 폭발성 패턴(503) 중 적어도 하나의 패턴과 관련된 세부 피처의 조합으로 만들 수 있다.As described above, the explosive pattern of the document may be made as a combination of detailed features related to at least one of the document explosive pattern 501, the personal explosive pattern 502, and the group explosive pattern 503.

세부 피처들은 일정 주기의 문서 집합을 단위로 계산될 수 있으며, 피처 간에 스케일을 쉽게 맞추기 위해 대부분 순위 통계(rank statistics)를 이용하여 정규화할 수 있다.Detailed features can be calculated in units of a document set of a certain period, and most of them can be normalized using rank statistics in order to easily scale between features.

폭발성 점수 계산에 사용된 세부 피처의 예시들은 다음과 같다.Examples of detailed features used in calculating the explosive score are as follows.

(1) 단어 폭발성 점수(word burstiness score)(1) word burstiness score

단어 폭발성은 타임 윈도우를 기준으로 평소보다 더 많이 쓰인 단어들이 문서에서 얼마나 많이 나타나는지 측정하는 피처에 해당된다. 이때, 단어는 공백분리 기준이고, 명사가 포함된 단어만 카운팅한다. 그리고, 평소보다 많이 쓰였는지 여부는 TF-IDF(Term Frequency-Inverse Document Frequency)와 대비하여 각 단어의 타임 윈도우 내 TF-IDF 비율로 측정할 수 있다.The word explosiveness corresponds to a feature that measures how many more words used than usual appear in a document based on the time window. At this time, the word is a space separation criterion, and only words containing nouns are counted. In addition, whether or not it is used more than usual can be measured by the ratio of TF-IDF within the time window of each word compared to TF-IDF (Term Frequency-Inverse Document Frequency).

예를 들어, 단어 폭발성(WBScore)은 [수학식 1]을 통해 점수화할 수 있다.For example, the word explosiveness (WBScore) can be scored through [Equation 1].

[수학식 1][Equation 1]

WBScore = sum{ log(TF + 1) × IDF / (NORM_TF × IDF) } (if DF >= 5 else 0)WBScore = sum{ log(TF + 1) × IDF / (NORM_TF × IDF)} (if DF >= 5 else 0)

(2) 링크 폭발성 점수(link burstiness score)(2) link burstiness score

링크 폭발성은 문서에 포함된 링크가 타임 윈도우 내 다른 문서들 내에서 얼마나 자주 나타났는지 측정하는 피처에 해당된다. 다시 말해, 링크 폭발성은 문서에 포함된 링크를 몇 명의 다른 작성자가 썼는지를 측정하는 값이다.Link explosiveness is a feature that measures how often links contained in a document appear within other documents in the time window. In other words, link explosiveness is a measure of how many different authors wrote links in a document.

예를 들어, 링크 폭발성(LBScore)은 [수학식 2]를 통해 점수화할 수 있다.For example, link explosiveness (LBScore) can be scored through [Equation 2].

[수학식 2][Equation 2]

LBScore = 1 (if WF == 1)LBScore = 1 (if WF == 1)

LBScore = (DF + WF) × 0.8 (if WF == 2)LBScore = (DF + WF) × 0.8 (if WF == 2)

LBScore = DF + WF (if WF > 2)LBScore = DF + WF (if WF> 2)

여기서, WF는 Writer Frequency를 의미한다.Here, WF means Writer Frequency.

(3) 제목 폭발성 점수(title burstiness score)(3) title burstiness score

제목 폭발성은 문서의 제목이 타임 윈도우 내 다른 문서들에서 얼마나 자주 나타났는지 측정하는 피처에 해당된다. 동일한 제목 개수를 측정하기 위해서 문서의 제목을 벡터-양자화할 수 있다. 이때, 단어의 벡터는 128차원 벡터를 이용하며 제목에 나타난 단어 벡터를 모두 더해 제목 벡터를 만든다. 제목 벡터를 양자화할 때는 128 각 차원에 대해서 양(+)의 값은 1, 음(-)의 값은 0으로 바꿔서 숫자 ID로 변환할 수 있다. 숫자 ID를 기준으로 DF(Document Frequency), WF(Writer Frequency) 등을 측정한 후 링크 폭발성과 동일한 방식으로 점수화할 수 있다.Title explosive is a feature that measures how often a document's title appears in other documents in the time window. To measure the same number of titles, the titles of the document can be vector-quantized. At this time, the word vector is a 128-dimensional vector, and a title vector is created by adding all the word vectors appearing in the title. When quantizing the title vector, it can be converted to a numeric ID by changing the positive (+) value to 1 and the negative (-) value to 0 for each of the 128 dimensions. After measuring DF (Document Frequency) and WF (Writer Frequency) based on the numeric ID, it can be scored in the same way as link explosiveness.

예를 들어, 제목 폭발성(TBScore)은 [수학식 3]을 통해 점수화할 수 있다.For example, the title explosiveness (TBScore) can be scored through [Equation 3].

[수학식 3][Equation 3]

TBScore = 1 (if WF == 1)TBScore = 1 (if WF == 1)

TBScore = (DF + WF) × 0.8 (if WF == 2)TBScore = (DF + WF) × 0.8 (if WF == 2)

TBScore = DF + WF (if WF > 2)TBScore = DF + WF (if WF> 2)

(4) 본문 폭발성 점수(body burstiness score)(4) body burstiness score

본문 폭발성 점수는 제목 폭발성과 유사한 방식으로 숫자 ID를 만들어 계산할 수 있다. 일례로, 문서의 본문을 일정 개수의 단어씩(예컨대, 100단어) 잘라서 여러 개의 숫자 ID를 만들 수 있다.The text explosive score can be calculated by creating a numeric ID in a similar way to the title explosive. For example, it is possible to create multiple numeric IDs by cutting the body of a document by a certain number of words (eg, 100 words).

예를 들어, 본문 폭발성(BBScore)은 [수학식 4]를 통해 점수화할 수 있다.For example, the text explosiveness (BBScore) can be scored through [Equation 4].

[수학식 4][Equation 4]

BBScore = 1 (if WF == 1)BBScore = 1 (if WF == 1)

BBScore = (DF + WF) × 0.8 (if WF == 2)BBScore = (DF + WF) × 0.8 (if WF == 2)

BBScore = DF + WF (if WF > 2)BBScore = DF + WF (if WF> 2)

(5) 대가성 점수(5) High cost score

대가성 점수는 문서를 대가를 받고 작성했는지 여부를 측정하는 것으로, 작성자가 문서에 직접 명시한 경우 1, 그렇지 않은 경우 0으로 분류되는 피처를 의미한다. 예를 들어, 문서의 말미 일부(예컨대, 100바이트)를 확률적 학습(일례로, Naive Bayes)을 통해 학습하여 대가성 여부를 분류할 수 있다. 대가성 점수는 단독으로 쓰이기 보다는 다른 피처의 학습 집합을 만드는데 이용될 수 있다.The cost score is a measure of whether a document was written at a price, and refers to a feature that is classified as 1 if the author directly specified it in the document, and 0 otherwise. For example, it is possible to classify whether or not the end of the document (eg, 100 bytes) is learned through probabilistic learning (for example, Naive Bayes). Rather than being used alone, the cost score can be used to create a learning set of other features.

(6) 대가성 단어 비중 점수(pay word burstiness score)(6) Pay word burstiness score

대가성 단어 비중은 대가성으로 분류된 문서에서 단어 폭발성을 계산한 후 주제 별로 상위 n개의 단어를 선정하고 선정된 단어가 문서에서 어느 정도의 비중으로 존재하는지 측정하는 피처에 해당된다.The weight of words with high cost is a feature that calculates the word explosiveness in documents classified as high cost, selects the top n words for each topic, and measures how much weight the selected word exists in the document.

예를 들어, 대가성 단어 비중(PWBScore)은 [수학식 5]를 통해 점수화할 수 있다.For example, the weight of the cost words (PWBScore) can be scored through [Equation 5].

[수학식 5][Equation 5]

PWBScore = sum{ log(TF + 1) × IDF / (NORM_TF × IDF) }PWBScore = sum{ log(TF + 1) × IDF / (NORM_TF × IDF)}

(7) 폭발성 상위 문서 표현 비중 점수(expression burstiness score)(7) Expression burstiness score

폭발성 상위 문서 표현 비중 점수는 대가성 단어 비중 점수와 유사한 방식으로 계산할 수 있다. 다만, 합산 단위들은 명사가 아닌 동사나 형용사가 포함된 '2단어 표현'을 이용한다. 폭발성 상위 문서 표현 비중은 폭발성 상위 문서에서 자주 나타나는 표현들을 탐지하기 위한 피처이다. 이때, 폭발성 상위 문서는 합산 폭발성 점수가 사전에 정해진 레벨 이상인 문서들을 의미한다. 합산 폭발성 점수에 대해서는 이하에서 다시 설명하기로 한다.The explosive high-level document presentation weight score can be calculated in a similar way to the high cost word weight score. However, the summation units use'two-word expression' that includes verbs or adjectives, not nouns. The proportion of high-level explosive document expressions is a feature for detecting expressions that frequently appear in high-level explosive documents. In this case, the high-level explosive documents refer to documents having a summed explosive score equal to or higher than a predetermined level. The summed explosiveness score will be described again below.

예를 들어, 폭발성 상위 문서 표현 비중(EBScore)은 [수학식 6]을 통해 점수화할 수 있다.For example, the high explosive document expression weight (EBScore) can be scored through [Equation 6].

[수학식 6][Equation 6]

EBScore = sum{ log(TF + 1) × IDF / (NORM_TF × IDF) }EBScore = sum{ log(TF + 1) × IDF / (NORM_TF × IDF)}

(8) 폭발성 상위 문서 표현 비율 점수(expression rate burstiness score)(8) expression rate burstiness score

폭발성 상위 문서 표현 비율 점수는 폭발성 상위 문서 표현 비중 점수를 본문 전체의 단어 개수로 나눈 값으로, [수학식 7]과 같이 정의될 수 있다.The explosive high-level document expression ratio score is a value obtained by dividing the explosive high-level document expression ratio score by the number of words in the entire body, and may be defined as [Equation 7].

[수학식 7][Equation 7]

ERBScore = EBScore / (word count)ERBScore = EBScore / (word count)

(9) 폭발성 점수 작성자별 합산 점수 (작성자 단위)(9) Explosive score, total score for each author (by author)

폭발성 점수 작성자 별 합산 점수는 합산 폭발성 점수를 작성자 별로 합산하여 순위 통계 점수로 환산한 값이다.The summed score for each creator of the explosive score is a value obtained by summing the summed explosive score for each creator and converting it into a ranking statistical score.

(10) 이미지 폭발성 점수(image burstiness score)(10) image burstiness score

이미지 폭발성은 타임 윈도우를 기준으로 유사한 이미지가 여러 문서에서 얼마나 반복적으로 사용되는지 측정하는 피처에 해당된다. 이미지 유사성은 하나의 벡터 ID로 표현되고, 이때 이미지 폭발성은 이미지의 벡터 ID를 이용하여 텍스트 기반 폭발성(단어 폭발성, 제목 폭발성, 본문 폭발성)과 유사한 방식으로 측정할 수 있다.Image explosiveness corresponds to a feature that measures how repeatedly similar images are used in multiple documents based on a time window. Image similarity is expressed by one vector ID, and image explosiveness can be measured in a similar manner to text-based explosiveness (word explosiveness, title explosiveness, text explosiveness) using the vector ID of the image.

프로세서(222)는 세부 피처에 따라 문서에 포함된 텍스트나 이미지를 수치 벡터로 변환한 후 이를 다시 숫자 ID로 변환함으로써 ID화할 수 있다.The processor 222 may convert text or an image included in the document into a numeric vector according to detailed features, and then convert the converted text or image into a numeric vector to be ID.

텍스트의 경우 도 6에 도시한 바와 같이 word2vce와 같은 딥러닝 기술을 이용하여 텍스트에 대한 수치 벡터를 생성할 수 있다. 텍스트는 1단어에 대한 벡터를 물론이고, 2단어에 대한 벡터, 제목에 대한 벡터, 링크와 같은 컨텐츠에 대한 벡터 등을 이용하여 두 세트 간의 유사성을 추정하기 위한 숫자 ID(예컨대, simhash ID)로 표현할 수 있다.In the case of text, as shown in FIG. 6, a numeric vector for the text may be generated using a deep learning technology such as word2vce. Text is a numeric ID (e.g., simhash ID) for estimating the similarity between two sets by using a vector for 1 word, a vector for 2 words, a vector for titles, and a vector for content such as links. I can express it.

도 7을 참조하면, 이미지(600)의 경우 이미지 검색 딥 피처를 활용하여 이미지 간 유사성을 바탕으로 클러스터링함으로써 ID화할 수 있다. 일례로, 이미지 딥러닝 벡터(4096 차원)를 kNN(k nearest neighbors) 알고리즘으로 클러스터링한 후 가까운 순으로 클러스터 ID를 나열하여 이미지를 ID화할 수 있다. 예를 들어, 1번, 3번, 5번, 29번 순으로 클러스터의 거리가 가까운 경우 이미지 ID를 [1.3.5.29]와 같이 표현할 수 있다. 이때, SHA-256 해시 알고리즘으로 구한 이미지 시그니처(signature)를 이용하여 이미지 딥러닝 벡터를 클러스터링할 수 있다.Referring to FIG. 7, in the case of an image 600, ID can be achieved by clustering based on similarity between images using an image search deep feature. For example, after clustering an image deep learning vector (dimension 4096) with a k nearest neighbors (kNN) algorithm, an image can be IDed by listing cluster IDs in the nearest order. For example, if the distance of the cluster is close in the order of 1, 3, 5, and 29, the image ID can be expressed as [1.3.5.29]. At this time, the image deep learning vector may be clustered using the image signature obtained by the SHA-256 hash algorithm.

상기한 세부 피처들은 피처 간에 스케일을 맞추기 위해 순위 통계 점수로 변경할 수 있다. 순위 통계 점수란, 점수 크기 순서대로 나열한 후 상위 1%에 해당하는 경우 0.99, 상위 50%에 해당하는 경우 0.5, 하위 1%에 속하면 0.01로 정규화하는 방식이다. 이때, 점수 크기가 같은 경우에는 순위 통계 점수도 같도록 만든다.The detailed features described above can be changed to a ranking statistical score to fit the scale between features. Ranking statistics scores are listed in order of score size, and then normalized to 0.99 for the top 1%, 0.5 for the top 50%, and 0.01 for the bottom 1%. In this case, if the score size is the same, the ranking statistics score is made the same.

추가로, 모든 세부 피처의 값이 높으면서 가장 값이 큰 피처가 얼마나 큰지를 동시에 측정하기 위해 요약 지표를 적용할 수 있다. 예를 들어, 요약 지표는 [수학식 8]과 같이 정의할 수 있다.Additionally, a summary metric can be applied to simultaneously measure how large the feature with the highest value is while all the detail features have high values. For example, the summary index can be defined as [Equation 8].

[수학식 8][Equation 8]

요약지표 = 0.7 × 1등 피처의 점수 + 0.3 × (그 외 나머지 피쳐들의 평균 점수)Summary indicator = 0.7 × score of 1st feature + 0.3 × (average score of other features)

상기한 요약 지표는 다른 세부 피처의 점수가 낮더라도 점수가 가장 높은 피처가 아주 확실하게 폭발성을 나타낼 때를 감지하기 위한 목적으로 활용될 수 있다.The above summary indicator can be used for the purpose of detecting when the feature with the highest score very clearly exhibits explosiveness even if the score of other detailed features is low.

프로세서(222)는 세부 피처의 점수를 합산하여 합산 점수가 사전에 정해진 레벨 이상 높은 문서 집합을 선정한 후 선정된 문서 집합을 바탕으로 세부 피처들을 다시 학습하거나 세부 피처 간에 결합 가중치를 조정하거나 새로운 세부 피처를 추가 측정할 수 있다. 프로세서(222)는 상기한 과정을 반복하면서 세부 피처가 잘못된 방향으로 학습되지 않도록 테스터에 의해 평가된 정답 데이터 셋을 이용하여 세부 피처를 조정할 수 있다.The processor 222 summing the scores of the detailed features, selects a document set having a higher summation score of at least a predetermined level, and then re-learns detailed features based on the selected document set, adjusts the combination weight between the detailed features, or performs a new detailed feature. Can be further measured. The processor 222 may repeat the above-described process and adjust the detailed features using the correct answer data set evaluated by the tester so that the detailed features are not learned in the wrong direction.

도 8은 어뷰징 문서의 일례로 광고 문서를 결정 트리로 학습한 결과 예시를 나타내고 있다.8 shows an example of a result of learning an advertisement document as a decision tree as an example of an abusing document.

프로세서(222)는 학습 과정에서 사전에 정해진 필터링 조건을 적용하여 광고일 확률이 높은 문서를 1차적으로 선별할 수 있다. 예를 들어, 도 8을 참조하면 프로세서(222)는 폭발성 상위 문서 표현 비중 점수(표현 밀도)가 0.888을 초과한 문서를 광고 문서로 분류하고, 폭발성 상위 문서 표현 비중 점수가 0.888 이하인 문서 중에서 본문 폭발성 점수가 0.472를 초과한 문서를 광고 문서로 분류하고, 본문 폭발성 점수가 0.472 이하인 문서 중에서 링크 폭발성 점수가 0.487를 초과한 문서를 광고 문서로 분류하고 그 외 나머지 문서를 독창성 있는 정상 문서로 분류할 수 있다. 다른 예로, 단어 폭발성 점수가 0.824를 초과하는 문서, 폭발성 상위 문서 표현 비율 점수가 0.426를 초과하는 문서 등을 광고 문서로 추가 선별한 후 나머지 문서를 정상 문서로 분류할 수도 있다.The processor 222 may firstly select a document having a high probability of being an advertisement by applying a predetermined filtering condition during the learning process. For example, referring to FIG. 8, the processor 222 classifies a document having an explosive high-level document expression weight score (expression density) exceeding 0.888 as an advertisement document, and among documents having an explosive high-level document expression weight score of 0.888 or less, the text explosiveness Documents with a score exceeding 0.472 can be classified as advertising documents, documents with a link explosive score exceeding 0.487 among documents with an explosive score of 0.472 or less are classified as advertising documents, and other documents can be classified as original and normal documents. have. As another example, a document having a word explosive score exceeding 0.824 and a document having a high explosive document expression ratio score exceeding 0.426 may be additionally selected as advertisement documents, and then the remaining documents may be classified as normal documents.

도 8에서 문서 분류 기준이 되는 점수는 예시적인 수치에 해당되며, 이에 한정되는 것은 아니다.In FIG. 8, the score used as the document classification criterion corresponds to an exemplary numerical value, but is not limited thereto.

프로세서(222)는 상기한 필터링 조건을 통해 광고 문서로 분류된 문서에 대해 선형 모델로 최종 폭발성 점수를 만들 수 있으며, 예들 들어 최종 폭발성 점수는 세부 피처 별 점수를 모두 합산한 합산 폭발성 점수로서 [수학식 9]와 같이 정의될 수 있다.The processor 222 may create a final explosive score with a linear model for a document classified as an advertisement document through the above filtering conditions. For example, the final explosive score is a sum explosive score obtained by summing all scores for each detailed feature. It can be defined as Equation 9].

[수학식 9][Equation 9]

dq_score = 0.5639 × total + 0.012 × w + 0.189 × l + 0.210 × t + 0.245 × b + 0.024 × pt + 0.005 × p + 0.127 × max(er, e)dq_score = 0.5639 × total + 0.012 × w + 0.189 × l + 0.210 × t + 0.245 × b + 0.024 × pt + 0.005 × p + 0.127 × max(er, e)

dq_score = - min(dq_score, 0.99)dq_score =-min(dq_score, 0.99)

(여기서, total은 요약 지표, w는 단어 폭발성 점수, l은 링크 폭발성 점수, t는 제목 폭발성 점수, b는 본문 폭발성 점수, pt는 대가성 여부, p는 대가성 단어 비중 점수, er은 폭발성 상위 문서 표현 비율 점수, r은 폭발성 상위 문서 표현 비중 점수)(Where, total is a summary index, w is a word explosive score, l is a link explosive score, t is a title explosive score, b is a text explosive score, pt is a false price, p is a false word weight score, and er is an explosive top document expression. Percentage score, r is the explosive top document expression weight score)

수학식 9에 포함된 가중치는 예시적인 수치에 해당되며, 이에 한정되는 것은 아니다.The weights included in Equation 9 correspond to exemplary values, and are not limited thereto.

상기한 합산 폭발성 점수에는 이미지 폭발성 점수가 포함되어 있지 않으나, 이는 예시적인 것일 뿐 세부 피처의 중요도에 따라 폭발성 점수의 합산 방식이 달리 적용될 수 있다. 예를 들어, 단어 폭발성 점수와 이미지 폭발성 점수에 가장 높은 가중치가 적용되는 방식으로 합산 폭발성 점수가 산출될 수 있다.The image explosive score is not included in the summed explosive score, but this is only an example, and the method of adding the explosive score may be differently applied depending on the importance of the detailed features. For example, the sum explosive score may be calculated in a manner in which the highest weight is applied to the word explosive score and the image explosive score.

프로세서(222)는 사전에 정해진 범위(예컨대, -0.5~-1.0)의 폭발성 점수만을 최종적으로 사용할 수 있으며, 폭발성 점수를 후처리하여 점수의 정확도를 높이고 적용 범위를 확장할 수 있다.The processor 222 may finally use only the explosive score in a predetermined range (eg, -0.5 to -1.0), and post-process the explosive score to increase the accuracy of the score and expand the application range.

후처리의 일례로, 프로세서(222)는 폭발성 점수가 있는 문서를 짧은 시간에 같은 작성자가 여러 번 작성한 경우(예컨대, 도배성 광고 등) 폭발성 점수를 보정하는 모델을 포함할 수 있다. 유사 패턴의 문서 여러 개를 짧은 시간 안에 여러 명이 작성한 경우 어뷰징 패턴일 확률이 매우 높다. 예를 들어, 폭발성 점수를 보정하기 위해서는 1시간, 10분, 1분 세 가지의 타임 윈도우를 사용할 수 있다. 폭발성 점수를 측정할 때 먼저 8시간 내지 1일 내외의 기본 타임 윈도우를 적용하다가 후처리로 타임 윈도우를 1시간으로 줄여 폭발성 패턴의 선예도(sharpness)를 추가로 측정할 수 있다.As an example of post-processing, the processor 222 may include a model for correcting the explosive score when a document having an explosive score is written several times by the same author in a short time (eg, a wallpaper advertisement, etc.). If several documents with similar patterns are written by several people within a short period of time, it is highly likely to be an abusing pattern. For example, to calibrate the explosive score, three time windows can be used: 1 hour, 10 minutes, and 1 minute. When measuring the explosive score, the basic time window of 8 to 1 day is first applied, and then the time window is reduced to 1 hour by post-processing, so that the sharpness of the explosive pattern can be additionally measured.

폭발성 점수는 폭발성 패턴의 특성 상 타임 윈도우를 이동하면서 해당 기간 내에 발생한 특정 패턴의 증감을 통해 어뷰징 패턴을 찾아내는 방식에 기초한다. 이러한 방식은 전체 문서 컬렉션에서 반복 패턴의 문서들을 모두 찾아내려면 전체 기간을 반복해서 계산해야 한다. 후처리의 다른 예로, 프로세서(222)는 문서 작성자 간의 네트워크 정보를 이용하여 폭발성 점수에 대한 계산 시간을 단축시킬 수 있다. 상세하게, 프로세서(222)는 모든 문서를 벡터화하고 문서 간에 유사성을 갖도록 양자화(quantization)를 거쳐 세부 피처 별로 패턴 ID를 부여할 수 있다. 각 문서의 패턴 ID에서 점수가 일정 레벨 이상인 패턴 ID만을 남긴 후 남겨진 패턴 ID와 해당 문서를 작성한 작성자 간의 링크를 연결함으로써 패턴ID-작성자ID-패턴ID 네트워크를 만들 수 있다. 패턴ID-작성자ID-패턴ID 네트워크에서 일정 분포도 이상의 클러스터를 찾아 해당 패턴 ID의 세부 피처 점수를 전파함으로써 폭발성 점수에 대한 계산 시간을 단축시킬 수 있다.The explosive score is based on a method of finding an abusing pattern through the increase or decrease of a specific pattern occurring within the period while moving the time window due to the characteristics of the explosive pattern. This way, in order to find all documents with a repeating pattern in the entire document collection, the entire period must be iterated over. As another example of post-processing, the processor 222 may shorten the calculation time for the explosive score by using network information between document authors. In detail, the processor 222 may vectorize all documents and assign a pattern ID for each detailed feature through quantization to have similarity between documents. The pattern ID-author ID-pattern ID network can be created by linking the link between the remaining pattern ID and the author who wrote the document after leaving only the pattern ID with a score above a certain level in the pattern ID of each document. The calculation time for explosive scores can be shortened by finding clusters with a certain distribution or more in the pattern ID-author ID-pattern ID network and propagating the detailed feature scores of the pattern ID.

도 9를 참조하면, 프로세서(222)는 문서와 문서를 작성한 작성자 간의 링크를 연결하여 작성자-문서-작성자 네트워크(900)를 생성함에 있어 반복 패턴의 문서를 작성한 작성자에게 동일한 패턴 ID를 부여할 수 있다. 다시 말해, 작성자-문서-작성자 네트워크(900)에서 클러스터가 별 모양(star-like)으로 모여 있다는 것은 해당 패턴 ID의 문서를 여러 명이 비슷한 시기에 작성했다는 것으로 어뷰징 조건에 해당한다. 프로세서(222)는 어뷰징 조건에 해당되는 클러스터에 속하는 문서들의 폭발성 점수를 평균하여 적용할 경우 전체 컬렉션의 모든 문서에 대한 폭발성 점수를 추정할 수 있고 반복 패턴의 문서를 작성한 작성자(즉, 어뷰저)를 추가적으로 찾아낼 수 있다.Referring to FIG. 9, the processor 222 connects the link between the document and the creator who created the document to create the creator-document-author network 900, so that the same pattern ID may be assigned to the creator who created the document with a repetition pattern. have. In other words, the fact that clusters are clustered in a star-like shape in the author-document-author network 900 corresponds to an abusing condition as that several people wrote the document of the pattern ID at the same time. When the processor 222 averages and applies the explosive scores of documents belonging to the cluster corresponding to the abusing condition, the processor 222 can estimate the explosive score for all documents in the entire collection, and the author (i.e., the abuser) who created the document with a repetitive pattern. You can find additional.

문서의 폭발성 패턴을 감지하는 과정을 정리하면 다음과 같다.The process of detecting explosive patterns in documents is summarized as follows.

도 10을 참조하면, 프로세서(222)는 최근 작성된 문서(1010)를 대상으로 문서(1010)에 포함된 텍스트를 워드 벡터(1011)로 표현하고 문서(1010)에 포함된 이미지를 이미지 벡터(1012)로 표현하여 문서(1010)에 포함된 텍스트와 이미지를 모두 숫자 ID로 표현할 수 있다. 이때, 유사성을 바탕으로 유사 텍스트와 유사 이미지는 동일 패턴 ID가 부여된다. 그리고, 프로세서(222)는 문서(1010)에 부여된 패턴 ID를 통해 문서(1010)의 폭발성 패턴을 측정 및 점수화할 수 있고 이를 바탕으로 반복 패턴의 어뷰징 문서(1001)를 선정할 수 있다.Referring to FIG. 10, the processor 222 expresses the text included in the document 1010 as a word vector 1011 for the recently created document 1010 and the image included in the document 1010 is an image vector 1012. ) To represent both text and images included in the document 1010 with numeric IDs. In this case, the same pattern ID is assigned to the similar text and the similar image based on the similarity. In addition, the processor 222 may measure and score the explosive pattern of the document 1010 through the pattern ID assigned to the document 1010, and may select the abusing document 1001 of the repetitive pattern based on this.

프로세서(222)는 도 11에 도시한 바와 같이 시간 경과에 따라 문서의 동일 패턴 ID가 축적되는 경우 타임 윈도우를 적용하여 해당 기간 내의 폭발성 점수를 산출할 수 있다. 이때, 폭발성 점수는 타임 윈도우 내의 패턴 개수 변위치(quantile)를 점수화한 것이다. 먼저, 프로세서(222)는 기본 타임 윈도우(예컨대, 7일)를 적용하다가 폭발성 점수가 일정 레벨 이상인 경우 타임 윈도우를 단계적으로 줄여가면서(예컨대, 1일, 1시간, 10분, 1분) 폭발성 점수를 산출할 수 있다.As illustrated in FIG. 11, when the same pattern ID of the document is accumulated over time, the processor 222 may apply a time window to calculate an explosive score within the corresponding period. At this time, the explosiveness score is a score obtained by calculating the quantity of the number of patterns in the time window. First, the processor 222 applies a basic time window (e.g., 7 days), and if the explosive score is higher than a certain level, the time window is gradually reduced (e.g., 1 day, 1 hour, 10 minutes, 1 minute) and the explosive score Can be calculated.

도 12를 참조하면, 프로세서(222)는 세부 피처 별로 패턴 ID를 부여할 수 있고, 예를 들어 유사 단어의 패턴 ID가 부여된 문서 집합(1201), 유사 문장의 패턴 ID가 부여된 문서 집합(1202), 동일 작성자의 패턴 ID가 부여된 문서 집합(1203), 유사 이미지의 패턴 ID가 부여된 문서 집합(1204) 등에서 둘 이상의 집합에 동시에 속하는 문서들, 즉 여러 세부 피처에서 공통적으로 폭발성 패턴이 나타나는 문서 집합(1210)을 어뷰징 문서로 의심되는 후보 문서로 선정할 수 있다.Referring to FIG. 12, the processor 222 may assign a pattern ID for each detailed feature. For example, a document set 1201 to which a pattern ID of a similar word is assigned, a document set to which a pattern ID of a similar sentence is assigned ( 1202), documents belonging to two or more sets at the same time in the document set 1203 to which the pattern ID of the same author is assigned, and the document set 1204 to which the pattern ID of similar images is assigned, that is, explosive patterns are commonly found in several detailed features. The document set 1210 that appears may be selected as a candidate document suspected of being an abusing document.

프로세서(222)는 후보 문서로 선정된 문서 집합(1210)을 바탕으로 세부 피처를 재학습하거나 세부 피처 간에 결합 가중치를 조정하거나 새로운 세부 피처를 추가할 수 있다. 도 13을 참조하면, 프로세서(222)는 후보 문서로 선정된 문서 집합(1210)을 대상으로 강화형 기계 학습을 반복하면서 반복 패턴의 어뷰징 문서와 독창성 있는 정상 문서로 분류할 수 있다. 일례로, 프로세서(222)는 후보 문서 집합(1210)에서 폭발성 점수가 높은 상위 문서 혹은 검색 결과에서 상위 랭킹을 차지하는 문서를 샘플링하여 샘플링된 문서에 대한 테스터의 어뷰징 태깅이나 패턴 선정에 따라 어뷰징 패턴을 재학습할 수 있다. 예를 들어, 프로세서(222)는 사전 태깅이나 라벨링이 이루어진 이미지가 포함된 문서의 경우 후보 문서 집합(1210)에서 제외시킬 수도 있고 세부 피처 간의 가중치 조정을 통해 어뷰징 문서로 잘못 분류된 문서를 재학습할 수도 있다.The processor 222 may relearn detailed features based on the document set 1210 selected as a candidate document, adjust a combination weight between detailed features, or add a new detailed feature. Referring to FIG. 13, the processor 222 may classify a document set 1210 selected as a candidate document into an abusing document with a repetition pattern and a normal document with originality while repeating the reinforcement type machine learning. As an example, the processor 222 samples a high-ranking document with a high explosive score from the candidate document set 1210 or a document that occupies a high ranking in the search result, and determines an abusing pattern according to the tester's abusing tagging or pattern selection for the sampled document You can relearn. For example, the processor 222 may exclude a document containing pre-tagged or labeled images from the candidate document set 1210, or retrain a document that is incorrectly classified as an abusing document through weight adjustment between detailed features. You may.

프로세서(222)는 문서 간의 멀티모달 폭발성 패턴에 기초한 문서 선별 결과를 문서 랭킹에 적용할 수 있으며, 예를 들어 반복 패턴의 어뷰징 문서로 최종 선별된 문서의 경우 검색 결과에서 정상 문서보다 상위 랭킹을 차지하지 않도록 패널티를 적용할 수 있다.The processor 222 may apply a document selection result based on a multimodal explosive pattern between documents to the document ranking. For example, a document finally selected as an abusing document of a repetitive pattern occupies a higher ranking than a normal document in the search result. Penalties can be applied not to do so.

이처럼 본 발명의 실시예들에 따르면, 일정 기간 동안 생산된 문서를 대상으로 멀티모달 어뷰징 패턴을 감지하여 감지된 패턴을 바탕으로 어뷰징 패턴을 가진 문서와 독창성 있는 문서를 선별할 수 있다. 그리고, 본 발명의 실시예들에 따르면, 문서 패턴의 집합적 특성과 함께 문서 작성자 간의 네트워크 정보를 이용하여 의도적으로 생산된 어뷰징 문서를 선별함으로써 문서 선별 성능과 문서 검색 품질을 향상시킬 수 있다.As described above, according to embodiments of the present invention, a document having an abusing pattern and a document with originality may be selected based on the detected pattern by detecting a multimodal abusing pattern for a document produced for a certain period. Further, according to embodiments of the present invention, it is possible to improve document selection performance and document retrieval quality by selecting intentionally produced abusing documents by using network information between document authors together with a collective characteristic of a document pattern.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and/or a combination of a hardware component and a software component. For example, the devices and components described in the embodiments include a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), and a programmable gate array (PLU). It may be implemented using one or more general purpose or special purpose computers, such as a logic unit), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications executed on the operating system. Further, the processing device may access, store, manipulate, process, and generate data in response to the execution of software. For the convenience of understanding, although it is sometimes described that one processing device is used, one of ordinary skill in the art, the processing device is a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that it may include. For example, the processing device may include a plurality of processors or one processor and one controller. In addition, other processing configurations are possible, such as a parallel processor.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of these, configuring the processing unit to operate as desired or processed independently or collectively. You can command the device. Software and/or data may be embodyed in any type of machine, component, physical device, computer storage medium or device to be interpreted by the processing device or to provide instructions or data to the processing device. have. The software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 이때, 매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수 개의 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 어플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. In this case, the medium may be one that continuously stores a program executable by a computer, or temporarily stores a program for execution or download. Further, the medium may be a variety of recording means or storage means in a form in which a single or several pieces of hardware are combined, but is not limited to a medium directly connected to a computer system, but may be distributed on a network. Examples of media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, And there may be ones configured to store program instructions, including ROM, RAM, flash memory, and the like. In addition, examples of other media include an app store that distributes applications, a site that supplies or distributes various software, and a recording medium or a storage medium managed by a server.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described by the limited embodiments and drawings, various modifications and variations are possible from the above description to those of ordinary skill in the art. For example, the described techniques are performed in a different order from the described method, and/or components such as systems, structures, devices, circuits, etc. described are combined or combined in a form different from the described method, or other components Alternatively, even if substituted or substituted by an equivalent, an appropriate result can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and those equivalent to the claims also fall within the scope of the claims to be described later.

Claims (15)

컴퓨터 시스템에서 실행되는 어뷰징 패턴 감지 방법에 있어서,
상기 컴퓨터 시스템은 메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서를 포함하고,
상기 어뷰징 패턴 감지 방법은,
상기 적어도 하나의 프로세서에 의해, 문서 간의 멀티모달 피처(multimodal feature)에 기초하여 상기 문서의 반복 패턴을 나타내는 폭발성(burstiness) 패턴을 감지하는 단계; 및
상기 적어도 하나의 프로세서에 의해, 상기 폭발성 패턴을 이용하여 독창적인 문서(original document)를 선별하는 단계
를 포함하는 어뷰징 패턴 감지 방법.
In the method for detecting an abusing pattern executed in a computer system,
The computer system includes at least one processor configured to execute computer readable instructions contained in a memory,
The abusing pattern detection method,
Detecting, by the at least one processor, an explosive pattern representing a repetition pattern of the document based on multimodal features between documents; And
Selecting an original document using the explosive pattern by the at least one processor
Abusing pattern detection method comprising a.
제1항에 있어서,
상기 감지하는 단계는,
타임 윈도우 내 문서 집합을 대상으로 상기 문서 집합에서 나타나는 상기 폭발성 패턴을 감지하는 단계
를 포함하는 어뷰징 패턴 감지 방법.
The method of claim 1,
The detecting step,
Detecting the explosive pattern appearing in the document set for a document set in a time window
Abusing pattern detection method comprising a.
제1항에 있어서,
상기 감지하는 단계는,
타임 윈도우 내 문서 집합을 대상으로 각 문서에 포함된 단어, 링크, 제목, 본문, 이미지 중 적어도 하나의 컨텐츠를 이용하여 상기 문서 집합에서 나타나는 상기 폭발성 패턴을 감지하는 단계
를 포함하는 어뷰징 패턴 감지 방법.
The method of claim 1,
The detecting step,
Detecting the explosive pattern appearing in the document set by using at least one of a word, link, title, body, and image included in each document for a document set in a time window
Abusing pattern detection method comprising a.
제3항에 있어서,
상기 감지하는 단계는,
상기 문서 집합에서 단어 출현 빈도를 기준으로 선정된 단어나 표현이 각 문서에서 등장하는 비중을 이용하여 상기 폭발성 패턴을 감지하는 단계
를 포함하는 어뷰징 패턴 감지 방법.
The method of claim 3,
The detecting step,
Detecting the explosive pattern by using the weight of a word or expression selected on the basis of the frequency of occurrence of words in the document set by using the weight in each document
Abusing pattern detection method comprising a.
제1항에 있어서,
상기 감지하는 단계는,
상기 문서에 포함된 컨텐츠를 이용하여 상기 반복 패턴을 나타내는 복수의 피처를 측정하는 단계; 및
상기 복수의 피처를 합산하여 폭발성 점수를 산출하는 단계
를 포함하는 어뷰징 패턴 감지 방법.
The method of claim 1,
The detecting step,
Measuring a plurality of features representing the repeating pattern by using content included in the document; And
Calculating an explosive score by summing the plurality of features
Abusing pattern detection method comprising a.
제5항에 있어서,
상기 감지하는 단계는,
상기 복수의 피처를 이용하여 문서 집합을 선정하는 단계; 및
상기 문서 집합을 바탕으로 상기 복수의 피처를 학습하거나 각 피처 별 가중치를 조정하는 단계
를 더 포함하는 어뷰징 패턴 감지 방법.
The method of claim 5,
The detecting step,
Selecting a document set using the plurality of features; And
Learning the plurality of features based on the document set or adjusting weights for each feature
Abusing pattern detection method further comprising a.
제1항에 있어서,
상기 감지하는 단계는,
상기 문서에 포함된 컨텐츠를 수치 벡터로 변환한 후 상기 수치 벡터에 대응되는 패턴 ID를 부여하는 단계; 및
시간 경과에 따른 패턴 ID에 타임 윈도우를 적용하여 상기 타임 윈도우 내의 패턴 ID 개수를 점수화하여 폭발성 점수를 산출하는 단계
를 포함하는 어뷰징 패턴 감지 방법.
The method of claim 1,
The detecting step,
Converting content included in the document into a numeric vector and then assigning a pattern ID corresponding to the numeric vector; And
Calculating an explosive score by applying a time window to the pattern ID over time to score the number of pattern IDs in the time window
Abusing pattern detection method comprising a.
제7항에 있어서,
상기 감지하는 단계는,
상기 폭발성 점수가 일정 레벨 이상인 경우 상기 타임 윈도우를 조정하여 상기 폭발성 패턴의 선예도(sharpness)를 측정하는 단계
를 더 포함하는 어뷰징 패턴 감지 방법.
The method of claim 7,
The detecting step,
Measuring sharpness of the explosive pattern by adjusting the time window when the explosive score is higher than a certain level
Abusing pattern detection method further comprising a.
제1항에 있어서,
상기 어뷰징 패턴 감지 방법은,
상기 적어도 하나의 프로세서에 의해, 상기 폭발성 패턴이 감지된 문서와 해당 문서를 작성한 작성자 간 네트워크 정보를 생성하는 단계
를 더 포함하는 어뷰징 패턴 감지 방법.
The method of claim 1,
The abusing pattern detection method,
Generating, by the at least one processor, network information between the document in which the explosive pattern is detected and the author who wrote the document
Abusing pattern detection method further comprising a.
제9항에 있어서,
상기 감지하는 단계는,
상기 문서에 포함된 컨텐츠를 수치 벡터로 변환한 후 상기 수치 벡터에 대응되는 패턴 ID를 부여하는 단계
를 포함하고,
상기 생성하는 단계는,
상기 패턴 ID와 해당 문서를 작성한 작성자 간의 링크를 연결하여 상기 네트워크 정보를 생성하는 단계
를 포함하는 어뷰징 패턴 감지 방법.
The method of claim 9,
The detecting step,
Converting the content included in the document into a numeric vector and then assigning a pattern ID corresponding to the numeric vector
Including,
The generating step,
Generating the network information by connecting the link between the pattern ID and the author who created the document
Abusing pattern detection method comprising a.
제9항에 있어서,
상기 선별하는 단계는,
상기 폭발성 패턴과 함께 상기 네트워크 정보를 이용하여 어뷰징 문서와 어뷰저 중 적어도 하나를 선별하는 단계
를 포함하는 어뷰징 패턴 감지 방법.
The method of claim 9,
The step of selecting,
Selecting at least one of an abusing document and an abuser using the network information together with the explosive pattern
Abusing pattern detection method comprising a.
제1항 내지 제11항 중 어느 한 항의 어뷰징 패턴 감지 방법을 상기 컴퓨터 시스템에 실행시키기 위해 비-일시적인 컴퓨터 판독가능한 기록 매체에 저장되는 컴퓨터 프로그램.A computer program stored in a non-transitory computer-readable recording medium for executing the method of detecting an abusing pattern according to any one of claims 1 to 11 on the computer system. 제1항 내지 제11항 중 어느 한 항의 어뷰징 패턴 감지 방법을 컴퓨터에 실행시키기 위한 프로그램이 기록되어 있는 비-일시적인 컴퓨터 판독 가능한 기록 매체.A non-transitory computer-readable recording medium in which a program for executing the method of detecting an abusing pattern of claim 1 on a computer is recorded. 컴퓨터 시스템에 있어서,
메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서
를 포함하고,
상기 적어도 하나의 프로세서는,
문서 간의 멀티모달 피처에 기초하여 상기 문서의 반복 패턴을 나타내는 폭발성 패턴을 감지하는 패턴 감지부; 및
상기 폭발성 패턴을 이용하여 독창적인 문서를 선별하는 문서 선별부
를 포함하는 컴퓨터 시스템.
In a computer system,
At least one processor configured to execute computer readable instructions contained in memory
Including,
The at least one processor,
A pattern detector configured to detect an explosive pattern representing a repeating pattern of the document based on multimodal features between documents; And
Document sorting unit that selects original documents using the explosive pattern
Computer system comprising a.
컴퓨터 시스템에 있어서,
메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서
를 포함하고,
상기 적어도 하나의 프로세서는,
문서 간의 멀티모달 피처에 기초하여 상기 문서의 반복 패턴을 나타내는 폭발성 패턴을 감지하는 패턴 감지부;
상기 폭발성 패턴이 감지된 문서와 해당 문서를 작성한 작성자 간 네트워크 정보를 생성하는 네트워크 생성부; 및
상기 폭발성 패턴 및 상기 네트워크 정보를 이용하여 독창적인 문서를 선별하는 문서 선별부
를 포함하는 컴퓨터 시스템.
In a computer system,
At least one processor configured to execute computer readable instructions contained in memory
Including,
The at least one processor,
A pattern detector configured to detect an explosive pattern representing a repeating pattern of the document based on multimodal features between documents;
A network generator for generating network information between the document in which the explosive pattern is detected and the author who created the document; And
Document sorting unit for selecting original documents using the explosive pattern and the network information
Computer system comprising a.
KR1020190136111A 2019-10-30 2019-10-30 Method, system, and computer program for dedecting multimodal abusing pattern to select document KR102426056B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190136111A KR102426056B1 (en) 2019-10-30 2019-10-30 Method, system, and computer program for dedecting multimodal abusing pattern to select document

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190136111A KR102426056B1 (en) 2019-10-30 2019-10-30 Method, system, and computer program for dedecting multimodal abusing pattern to select document

Publications (2)

Publication Number Publication Date
KR20210051175A true KR20210051175A (en) 2021-05-10
KR102426056B1 KR102426056B1 (en) 2022-07-27

Family

ID=75917431

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190136111A KR102426056B1 (en) 2019-10-30 2019-10-30 Method, system, and computer program for dedecting multimodal abusing pattern to select document

Country Status (1)

Country Link
KR (1) KR102426056B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009294923A (en) * 2008-06-05 2009-12-17 Nippon Telegr & Teleph Corp <Ntt> Spam determination method, device, and program
JP2011159296A (en) * 2003-09-30 2011-08-18 Google Inc Method for document scoring

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011159296A (en) * 2003-09-30 2011-08-18 Google Inc Method for document scoring
JP2009294923A (en) * 2008-06-05 2009-12-17 Nippon Telegr & Teleph Corp <Ntt> Spam determination method, device, and program

Also Published As

Publication number Publication date
KR102426056B1 (en) 2022-07-27

Similar Documents

Publication Publication Date Title
WO2022057658A1 (en) Method and apparatus for training recommendation model, and computer device and storage medium
CN107209861A (en) Use the data-optimized multi-class multimedia data classification of negative
US8856109B2 (en) Topical affinity badges in information retrieval
US11146580B2 (en) Script and command line exploitation detection
US20210297498A1 (en) User targeted content generation using multimodal embeddings
JP6629935B2 (en) Deep learning learning method and system for categorizing documents
US20180285448A1 (en) Producing personalized selection of applications for presentation on web-based interface
US11144783B2 (en) Servers, non-transitory computer-readable media and methods for providing articles
US20210390152A1 (en) Method, system, and non-transitory computer-readable record medium for providing multiple models of federated learning using personalization
WO2020003109A1 (en) Facet-based query refinement based on multiple query interpretations
KR20220070181A (en) Method and system for detecting duplicated document using document similarity measuring model based on deep learning
KR20180000166A (en) System and method for providing interest contents
WO2022245469A1 (en) Rule-based machine learning classifier creation and tracking platform for feedback text analysis
KR102337536B1 (en) Method and system for providing document timeline using cluster of long-term related issue unit
KR102315068B1 (en) Method and system for determining document consistence to improve document search quality
KR102426056B1 (en) Method, system, and computer program for dedecting multimodal abusing pattern to select document
US20210319074A1 (en) Method and system for providing trending search terms
KR20200046192A (en) Method and system for correcting keyboard typo based on deep learning model
US8195458B2 (en) Open class noun classification
KR20230047849A (en) Method and system for summarizing document using hyperscale language model
KR102227741B1 (en) Method and system for searching poi based on title matching score
US11783177B2 (en) Target class analysis heuristics
US11157535B2 (en) Method and system for subject-based ranking considering writer-reader interaction
KR20210052912A (en) Method and apparatus for recommending app function shortcuts through app usage pattern and conversation analysis
JP2020155108A (en) Method and system for grouping channels in plural social network services and non-temporary computer-readable storage medium

Legal Events

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