KR102038957B1 - Method and apparatus for detecting game abuser - Google Patents
Method and apparatus for detecting game abuser Download PDFInfo
- Publication number
- KR102038957B1 KR102038957B1 KR1020190011029A KR20190011029A KR102038957B1 KR 102038957 B1 KR102038957 B1 KR 102038957B1 KR 1020190011029 A KR1020190011029 A KR 1020190011029A KR 20190011029 A KR20190011029 A KR 20190011029A KR 102038957 B1 KR102038957 B1 KR 102038957B1
- Authority
- KR
- South Korea
- Prior art keywords
- game
- goods
- navigator
- transaction
- banker
- Prior art date
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/75—Enforcing rules, e.g. detecting foul play or generating lists of cheating players
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/55—Details of game data or player data management
- A63F2300/5586—Details of game data or player data management for enforcing rights or rules, e.g. to prevent foul play
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/57—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of game services offered to the player
- A63F2300/575—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of game services offered to the player for trading virtual items
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
Description
아래 실시예들은 게임 어뷰저 검출 기술에 관한 것이다.The embodiments below relate to a game navigator detection technique.
최근, 게임 재화를 현금으로 거래하는 중개 사이트의 등장으로, 게임 재화를 조직적으로 취득하고, 게임 재화를 현금과 거래하여 이익을 챙기는 소위 "작업장"이 문제가 되고 있다. 작업장은 여러 게임 계정이 조직을 이뤄 게임 재화를 취득하고, 취득한 게임 재화를 다른 게임 유저에게 파는 형태를 가진다. 일반적으로, 작업장은 게임 재화를 취득하는 파머(farmer), 파머에 의해 취득된 게임 재화를 모으는 뱅커(banker), 뱅커로부터 게임 재화를 구매하는 구매자(consumer)가 다단계 구조를 이루고 있다. 이러한 작업장의 행위는 게임 재화의 시세에 영향을 주거나 또는 시세를 조작함으로써 게임 경제를 해칠 수 있으므로 적절한 조치가 취해져야 할 필요가 있다.Recently, with the advent of intermediary sites that trade game goods for cash, so-called "workshops" which systematically acquire game goods and earn profits by trading game goods with cash have become a problem. In the workplace, various game accounts are organized to acquire game goods, and the acquired game goods are sold to other game users. In general, a workplace has a multi-level structure of a farmer acquiring game goods, a banker collecting game goods acquired by the farmer, and a buyer buying game goods from the banker. The actions of these workplaces may affect the price of game goods or damage the game economy by manipulating the prices, so appropriate measures need to be taken.
일 실시예에 따른 게임 어뷰저 검출 방법은, 게임 재화의 거래와 관련된 로그 데이터를 수신하는 단계; 상기 로그 데이터에 기초하여 거래 네트워크 데이터를 생성하는 단계; 상기 거래 네트워크 데이터에 포함된 노드들 간의 연결 관계에 기초하여 기준 특징을 결정하는 단계; 상기 결정된 기준 특징에 기초하여 클러스터링을 수행하는 것에 의해 상기 노드들을 분류하는 단계; 및 상기 분류 결과에 기초하여 게임 어뷰저를 검출하는 단계를 포함할 수 있다.According to one or more exemplary embodiments, a method of detecting a game advisor includes: receiving log data related to a transaction of a game good; Generating transaction network data based on the log data; Determining a reference feature based on a connection relationship between nodes included in the transaction network data; Classifying the nodes by performing clustering based on the determined reference feature; And detecting the game advisor based on the classification result.
상기 기준 특징을 결정하는 단계는, 상기 거래 네트워크 데이터에 포함된 일 노드와 상기 일 노드에 연결된 하나 이상의 다른 노드 간의 연결 관계에 기초하여 상기 기준 특징을 결정하는 단계를 포함할 수 있다.The determining of the reference feature may include determining the reference feature based on a connection relationship between one node included in the transaction network data and one or more other nodes connected to the one node.
상기 기준 특징을 결정하는 단계는, 상기 거래 네트워크 데이터에서 각 노드들로부터 다른 노드로의 게임 재화 이동 방향에 기초하여 상기 기준 특징을 결정하는 단계를 포함할 수 있다.Determining the reference feature may include determining the reference feature based on a direction in which the game goods move from each node to another node in the transaction network data.
상기 기준 특징을 결정하는 단계는, 상기 연결 관계에 기초하여 결정되는 복수의 특징들 중에서 어느 하나의 특징을 상기 기준 특징으로서 선택하는 단계를 할 수 있다.The determining of the reference feature may include selecting any one feature among the plurality of features determined based on the connection relationship as the reference feature.
상기 거래 네트워크 데이터를 생성하는 단계는, 게임 재화 거래의 이상 정도를 수치화하는 단계; 및 상기 수치화된 이상 정도를 게임 재화 거래에 대응하는 간선의 가중치로 할당하는 단계를 포함할 수 있다.The generating of the transaction network data may include quantifying an abnormality degree of a game goods transaction; And assigning the quantified abnormality as the weight of the edge corresponding to the game goods transaction.
상기 이상 정도를 수치화하는 단계는, 게임 재화의 거래와 관련한 거래가의 평균 값, 게임 재화의 각각의 시중 거래가 및 거래된 게임 재화의 개수에 기초하여 상기 이상 정도를 계산하는 단계를 포함할 수 있다.The step of quantifying the degree of abnormality may include calculating the degree of abnormality based on an average value of a transaction price associated with a transaction of a game good, each commercial transaction price of the game good, and the number of game goods traded.
상기 거래 네트워크 데이터를 구성하는 노드는 게임 유저에 대응하고, 노드들 간의 간선은 게임 유저들 간의 게임 재화 거래와 관련하여 게임 재화의 이동 방향에 대응할 수 있다.A node constituting the transaction network data may correspond to a game user, and the trunk line between the nodes may correspond to a movement direction of the game goods in relation to the game goods transaction between the game users.
상기 노드들을 분류하는 단계는, 상기 노드들을, 게임 상에서 게임 재화를 획득하는 파머, 상기 파머로부터 게임 재화를 전달받고, 상기 전달받은 게임 재화를 수집하는 뱅커, 상기 뱅커로부터 게임 재화를 구매하는 구매자 및 상기 게임 재화의 거래와 관련이 없는 일반 게임 유저로 분류하는 단계를 포함할 수 있다.The step of classifying the nodes may include: a node acquiring game goods on a game, a banker receiving game goods from the farmer, a banker collecting the received game goods, a buyer purchasing game goods from the banker; And classifying as a general game user not related to the transaction of the game goods.
상기 노드들을 분류하는 단계는, 상기 노드들을, 게임 상에서 게임 재화를 획득하는 파머, 상기 파머로부터 게임 재화를 전달받고, 상기 전달받은 게임 재화를 뱅커에게 전달하는 중간 뱅커, 상기 중간 뱅커로부터 전달받은 게임 재화를 수집하는 뱅커, 상기 뱅커로부터 게임 재화를 구매하는 구매자 및 상기 게임 재화의 거래와 관련이 없는 일반 게임 유저로 분류하는 단계를 포함할 수 있다.The classifying the node may include: a node acquiring game goods on a game, an intermediate banker receiving game goods from the farmer, an intermediate banker delivering the received game goods to a banker, and a game received from the intermediate banker And classifying as a banker that collects the goods, a buyer who purchases the game goods from the banker, and a general game user who is not involved in the transaction of the game goods.
다른 실시예에 따른 게임 어뷰저 검출 방법은, 게임 재화의 거래와 관련된 로그 데이터에 기초하여 거래 네트워크 데이터를 생성하는 단계; 상기 거래 네트워크 데이터에 기초하여 기준 특징을 결정하는 단계; 상기 기준 특징에 기초하여 상기 거래 네트워크 데이터를 클러스터링하는 것에 의해 게임 어뷰저를 검출하는 단계; 상기 게임 어뷰저의 검출 결과를 검증하는 단계; 및 상기 검증 결과가 미리 설정된 조건을 만족시키는지 여부를 판단하는 단계를 포함할 수 있다.According to another embodiment of the present invention, a method of detecting a game advisor includes generating transaction network data based on log data associated with a transaction of a game good; Determining a reference feature based on the transaction network data; Detecting a game advisor by clustering the transaction network data based on the reference feature; Verifying a detection result of the game advisor; And determining whether the verification result satisfies a preset condition.
다른 실시예에 따른 게임 어뷰저 검출 방법은, 상기 검증 결과가 상기 미리 설정된 조건을 만족시키지 않는 경우, 상기 게임 어뷰저의 검출을 위한 기준 특징을 변경하는 단계; 및 상기 변경된 기준 특징에 기초하여 상기 거래 네트워크 데이터를 다시 클러스터링하는 것에 의해 상기 게임 어뷰저를 검출하는 단계를 더 포함할 수 있다.According to another aspect of the present invention, there is provided a method of detecting a game observer, the method comprising: changing a reference feature for detecting the game observer if the verification result does not satisfy the preset condition; And detecting the game advisor by re-clustering the trading network data based on the modified reference feature.
상기 검증 결과가 상기 조건을 만족시키는지 여부를 판단하는 단계는, 상기 검출 결과의 정확도를 계산하는 단계; 및 상기 검출 결과의 정확도가 임계 값을 초과하는지 여부를 판단하는 단계를 포함할 수 있다.Determining whether the verification result satisfies the condition comprises: calculating an accuracy of the detection result; And determining whether the accuracy of the detection result exceeds a threshold value.
상기 검출 결과를 검증하는 단계는, 뉴럴 네트워크 기반의 검증 모델이 예측한 분류 결과와 상기 클러스터링의 분류 결과에 기초하여 상기 검출 결과를 검증하는 단계를 포함할 수 있다.The verifying of the detection result may include verifying the detection result based on the classification result predicted by the neural network-based verification model and the classification result of the clustering.
상기 검증 모델은, 게임 유저들의 게임 플레이 상의 행동과 관련된 로그 데이터를 입력으로 하고, 각 게임 유저들이 속하는 집단을 분류하기 위한 레이블을 출력할 수 있다. The verification model may input log data related to game users' behavior on game play, and output a label for classifying a group to which each game user belongs.
상기 검출 결과를 검증하는 단계는, 상기 검출 결과와 상기 검증 모델의 출력 결과에 기초하여 혼동 행렬을 생성하는 단계; 및 상기 혼동 행렬에 기초하여 상기 검출 결과의 검증 결과를 결정하는 단계를 포함할 수 있다.The verifying of the detection result may include generating a confusion matrix based on the detection result and an output result of the verification model; And determining a verification result of the detection result based on the confusion matrix.
상기 검증 결과를 결정하는 단계는, 상기 혼동 행렬의 대각 엘리먼트들 값들에 기초하여 산출된 대표 값이 임계 값 이상인지 여부를 판단하는 단계를 포함할 수 있다.The determining of the verification result may include determining whether a representative value calculated based on diagonal element values of the confusion matrix is greater than or equal to a threshold value.
또 다른 실시예에 따른 게임 어뷰저 검출 방법은, 게임 재화의 거래와 관련된 로그 데이터에 기초하여 거래 네트워크 데이터를 생성하는 단계; 상기 거래 네트워크 데이터에 포함된 노드들 간의 연결 관계에 기초한 복수의 특징들 중에서 기준 특징을 선택하는 단계; 상기 기준 특징에 기초하여 클러스터링을 수행하는 것에 의해 게임 유저들을 분류하는 단계; 뉴럴 네트워크 기반의 검증 모델을 이용하여 상기 분류 결과를 검증하는 단계; 상기 검증 결과가 미리 설정된 조건을 만족시키지 않는 경우, 상기 기준 특징을 다른 기준 특징으로 변경하는 단계; 및 상기 변경된 기준 특징에 기초하여 클러스터링을 수행하는 것에 의해 게임 어뷰저를 검출하는 단계를 포함할 수 있다.According to another embodiment, a game navigator detecting method includes generating transaction network data based on log data associated with a transaction of a game good; Selecting a reference feature from among a plurality of features based on a connection relationship between nodes included in the transaction network data; Classifying game users by performing clustering based on the reference feature; Verifying the classification result using a neural network based verification model; Changing the reference feature to another reference feature if the verification result does not satisfy a preset condition; And detecting a game advisor by performing clustering based on the modified reference feature.
일 실시예에 따른 게임 어뷰저 검출 장치는, 메모리 및 프로세서를 포함하고, 상기 메모리는 상기 프로세서에 의해 실행 가능한 인스트럭션들을 저장하고, 상기 인스트럭션들이 상기 프로세서에 의해 실행될 때, 상기 프로세서는, 게임 재화의 거래와 관련된 로그 데이터를 수신하고, 상기 로그 데이터에 기초하여 거래 네트워크 데이터를 생성하고, 상기 거래 네트워크 데이터에 포함된 노드들 간의 연결 관계에 기초하여 기준 특징을 결정하고, 상기 결정된 기준 특징에 기초하여 클러스터링을 수행하는 것에 의해 상기 노드들을 분류하고, 상기 분류 결과에 기초하여 게임 어뷰저를 검출할 수 있다.An apparatus for detecting a game navigator according to an embodiment includes a memory and a processor, the memory storing instructions executable by the processor, and when the instructions are executed by the processor, the processor is configured to execute a game product. Receiving log data related to a transaction, generating transaction network data based on the log data, determining a reference feature based on connection relationships between nodes included in the transaction network data, and based on the determined reference feature The nodes may be classified by performing clustering, and a game navigator may be detected based on the classification result.
다른 실시예에 따른 게임 어뷰저 검출 장치는, 메모리 및 프로세서를 포함하고, 상기 메모리는 상기 프로세서에 의해 실행 가능한 인스트럭션들을 저장하고, 상기 인스트럭션들이 상기 프로세서에 의해 실행될 때, 상기 프로세서는, 게임 재화의 거래와 관련된 로그 데이터에 기초하여 거래 네트워크 데이터를 생성하고, 상기 거래 네트워크 데이터에 기초하여 기준 특징을 결정하고, 상기 기준 특징에 기초하여 상기 거래 네트워크 데이터를 클러스터링하는 것에 의해 게임 어뷰저를 검출하고, 상기 게임 어뷰저의 검출 결과를 검증하고, 상기 검증 결과가 미리 설정된 조건을 만족시키는지 여부를 판단할 수 있다.According to another embodiment, an apparatus for detecting a game navigator includes a memory and a processor, the memory storing instructions executable by the processor, and when the instructions are executed by the processor, the processor is configured to execute a game product. Generating game network data based on log data associated with the transaction, determining a reference feature based on the transaction network data, clustering the transaction network data based on the reference feature, and detecting a game advisor The detection result of the game advisor may be verified, and it may be determined whether the verification result satisfies a preset condition.
또 다른 실시예에 따른 게임 어뷰저 검출 장치는, 메모리 및 프로세서를 포함하고, 상기 메모리는 상기 프로세서에 의해 실행 가능한 인스트럭션들을 저장하고, 상기 인스트럭션들이 상기 프로세서에 의해 실행될 때, 상기 프로세서는, 게임 재화의 거래와 관련된 로그 데이터에 기초하여 거래 네트워크 데이터를 생성하고, 상기 거래 네트워크 데이터에 포함된 노드들 간의 연결 관계에 기초한 복수의 특징들 중에서 기준 특징을 선택하고, 상기 기준 특징에 기초하여 클러스터링을 수행하는 것에 의해 게임 유저들을 분류하고, 뉴럴 네트워크 기반의 검증 모델을 이용하여 상기 분류 결과를 검증하고, 상기 검증 결과가 미리 설정된 조건을 만족시키지 않는 경우, 상기 기준 특징을 다른 기준 특징으로 변경하고, 상기 변경된 기준 특징에 기초하여 클러스터링을 수행하는 것에 의해 게임 어뷰저를 검출할 수 있다.An apparatus for detecting game gamers according to yet another embodiment includes a memory and a processor, the memory storing instructions executable by the processor, and when the instructions are executed by the processor, the processor is configured to play a game good. Generate transaction network data based on log data related to a transaction of a user, select a reference feature from among a plurality of features based on a connection relationship between nodes included in the transaction network data, and perform clustering based on the reference feature Classify game users, verify the classification result using a neural network-based verification model, and if the verification result does not satisfy a predetermined condition, change the reference feature to another reference feature, Based on modified reference characteristics By performing a gettering it can detect the gamers byujeo.
도 1은 일 실시예에 따른 게임 시스템의 개요(overview)를 제공하는 도면이다.
도 2는 일 실시예에 따른 게임 어뷰저 검출 방법의 전체적인 동작을 도시하는 흐름도이다.
도 3은 일 실시예에 따른 게임 어뷰저 검출 과정을 설명하기 위한 흐름도이다.
도 4a 및 도 4b는 일 실시예에 따른 거래 네트워크 데이터의 일례를 도시하는 도면들이다.
도 5a 및 도 5는 일 실시예에 따른 클러스터링 결과를 나타내는 박스 플롯(box plot)의 일례들을 도시하는 도면들이다.
도 6은 일 실시예에 따른 게임 어뷰저 검출 결과의 검증 과정을 설명하기 위한 흐름도이다.
도 7은 일 실시예에 따른 검증 과정에 이용될 뉴럴 네트워크의 구조의 일례를 도시하는 도면이다.
도 8a 및 도 8b는 일 실시예에 따른 혼동 행렬의 일례를 도시하는 도면들이다.
도 9는 일 실시예에 따른 게임 어뷰저 검출 장치의 구성을 도시하는 도면이다.1 is a diagram providing an overview of a game system according to one embodiment.
2 is a flowchart illustrating the overall operation of the game navigator detection method according to an embodiment.
3 is a flowchart illustrating a process of detecting a game navigator according to an exemplary embodiment.
4A and 4B are diagrams illustrating an example of trading network data according to an embodiment.
5A and 5 are diagrams showing examples of a box plot showing a clustering result according to an embodiment.
6 is a flowchart illustrating a verification process of a game navigator detection result, according to an exemplary embodiment.
7 is a diagram illustrating an example of a structure of a neural network to be used in the verification process according to an embodiment.
8A and 8B are diagrams illustrating an example of a confusion matrix, according to one embodiment.
9 is a diagram illustrating a configuration of a game navigator detecting apparatus according to an embodiment.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.Hereinafter, exemplary embodiments will be described in detail with reference to the accompanying drawings. However, various changes may be made to the embodiments so that the scope of the patent application is not limited or limited by these embodiments. It is to be understood that all changes, equivalents, and substitutes for the embodiments are included in the scope of rights.
실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of description and should not be construed as limiting. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this specification, terms such as "comprise" or "have" are intended to indicate that there is a feature, number, step, action, component, part, or combination thereof described on the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art and shall not be construed in ideal or excessively formal meanings unless expressly defined in this application. Do not.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.In addition, in the description with reference to the accompanying drawings, the same components regardless of reference numerals will be given the same reference numerals and duplicate description thereof will be omitted. In the following description of the embodiment, when it is determined that the detailed description of the related known technology may unnecessarily obscure the gist of the embodiment, the detailed description thereof will be omitted.
도 1은 일 실시예에 따른 게임 시스템의 개요를 제공하는 도면이다.1 is a diagram providing an overview of a game system according to one embodiment.
도 1을 참조하면, 게임 시스템(100)은 게임 서버(110)를 통해 복수의 게임 유저 단말(130)들에 게임 서비스를 제공한다. 게임 시스템(100)은 게임 서버(110), 네트워크(120), 복수의 게임 유저 단말(130)들을 포함하고, 게임 서버(110)와 복수의 게임 유저 단말(130)들은 네트워크(120)(예를 들어, 인터넷 통신망, 유무선의 근거리 통신망 또는 광역 데이터 통신망 등)를 통해 서로 통신할 수 있다.Referring to FIG. 1, the
게임 서버(110)는 게임 프로그램의 실행을 위해 접속을 요청한 게임 유저 단말(130)에 대한 인증 절차를 수행하고, 인증이 완료된 게임 유저 단말(130)에 게임 서비스를 제공할 수 있다. 게임을 플레이하고자 하는 게임 유저는 게임 유저 단말(130)에 설치된 게임 프로그램(또는 게임 어플리케이션)을 실행하고, 게임 서버(110)에 접속을 요청한다. 게임 유저 단말(130)은 온라인 접속을 통해 게임 유저의 게임 접속을 가능하게 하는 컴퓨팅 장치로서, 예를 들어 셀룰러 폰, 스마트 폰, 퍼스널 컴퓨터, 랩탑, 노트북, 넷북, 태블릿 또는 휴대 정보 단말기(personal digital assistant; PDA)일 수 있다. 본 명세서에서 '게임 유저'는 자신의 게임 계정을 통해 게임을 플레이 할 수 있는 사용자를 의미하고, '게임 유저 단말(130)'은 게임 유저의 단말로서 게임 클라이언트로 지칭될 수 있다.The
게임 유저는 가상의 게임 캐릭터를 조정하여 게임을 플레이한다. '게임 캐릭터'는 게임이 이루어지는 가상의 공간인 '게임 공간' 내에 등장하는 허구적 인물로서, 각각의 게임 유저에 의하여 제어되는 객체이자 게임 진행을 위한 액션을 수행하는 주체를 의미한다. 각각의 게임 캐릭터는 2차원 또는 3차원의 그래픽 이미지로 시각화될 수 있다. 게임 유저는 게임 재화(또는 게임 아이템)를 이용하여 게임 캐릭터의 능력이나 특성을 변경시킬 수 있다. 이러한 게임 재화는 게임 플레이에 많은 영향을 줄 수 있고, 게임에 따라 게임 유저들 간에 게임 재화의 거래가 가능한 경우가 있다. 이 경우, 게임 재화의 거래는 게임 재화 거래소를 통해서나 게임 상에서 이루어질 수 있다. The game user adjusts the virtual game character to play the game. The 'game character' is a fictional character appearing in a 'game space' which is a virtual space where a game is played, and means an object controlled by each game user and a subject performing an action for game progress. Each game character can be visualized as a graphic image in two or three dimensions. The game user may change the ability or characteristics of the game character using the game goods (or game items). Such game goods can affect game play a lot, and in some cases, game goods can be traded between game users depending on the game. In this case, the trading of the game goods may be made through the game goods exchange or on the game.
게임 재화의 거래와 관련하여, 비정상적으로 게임 재화를 취득하는 '작업장'이 문제가 될 수 있다. 작업장은 게임 재화를 조직적으로 취득하고, 게임 재화를 현금과 거래하여 이익을 챙기는 게임 어뷰저(game abuser) 중의 하나로서, 이러한 작업장의 행위는 게임 재화의 시세에 영향을 주거나 또는 시세를 조작함으로써 게임 경제를 해칠 우려가 있다. 따라서, 게임 어뷰저를 검출하는 것은 게임 재화 거래의 정상화와 게임 경제 측면에서 중요한 문제이다.In relation to the trading of game goods, the 'workplace' of acquiring the game goods abnormally can be a problem. The workplace is one of the game abusers who systematically acquire game goods and make profits by trading game goods with cash.The actions of these workshops affect the prices of game goods or manipulate them by manipulating them. There is a risk of harm to the economy. Therefore, detecting game advisors is an important issue in terms of normalization of game goods trading and game economy.
이하에서 설명할 실시예들에서는, 게임 재화의 거래 네트워크를 분석하여 작업장과 같은 게임 어뷰저를 효과적으로 검출하고, 게임 유저의 행동 양식 분류를 통해 해당 게임 어뷰저의 검출 결과를 검증함으로써 게임 어뷰저를 정확하게 검출하는 방안을 제공한다. 거래 네트워크를 이용하여 작업장의 전체 구조를 탐지하는 것이 가능하며, 뉴럴 네트워크 모델을 이용하여 게임 유저의 행동 양식을 분류한 결과를 기초로 작업장의 탐지 결과가 검증될 수 있다.In the embodiments to be described below, the game network is accurately identified by analyzing a transaction network of game goods to effectively detect a game advisor such as a workplace, and verifying a detection result of the game advisor by classifying the behavior of the game user. It provides a way to detect. It is possible to detect the overall structure of the workplace using the transaction network, and the detection result of the workplace can be verified based on the result of classifying the game user's behavior using the neural network model.
도 2는 일 실시예에 따른 게임 어뷰저 검출 방법의 전체적인 동작을 도시하는 흐름도이다. 게임 어뷰저 검출 방법은 본 명세서에서 설명되는 게임 어뷰저 검출 장치에 의해 수행될 수 있다.2 is a flowchart illustrating the overall operation of the game navigator detection method according to an embodiment. The game navigator detection method may be performed by the game navigator detection apparatus described herein.
도 2를 참조하면, 게임 어뷰저 검출 장치는 거래 네트워크 분석을 통해 작업장 세력과 같은 게임 어뷰저를 탐지하고, 게임 유저들의 행동 양식을 이용한 분류(classification) 과정을 통해, 이전 단계에서 게임 어뷰저가 정확하게 탐지된 것인지를 검증할 수 있다.Referring to FIG. 2, the game observer detection device detects a game navigator such as workplace forces through a transaction network analysis, and classifies the game navigator using the behavior patterns of game users. You can verify that it is detected.
단계(210)에서, 게임 어뷰저 검출 장치는 게임 재화의 거래와 관련된 로그 데이터(이하 '거래 로그 데이터'라 지칭함)에 기초하여 게임 어뷰저를 검출할 수 있다. 게임 어뷰저 검출 장치는 거래 로그 데이터에 기초하여 거래 네트워크 데이터를 생성하고, 거래 네트워크 데이터를 분석하여 게임 어뷰저를 검출할 수 있다. 일 실시예에서, 게임 어뷰저 검출 장치는 게임 재화 거래의 이상 정도(abnormal degree)를 수치화하고, 수치화된 이상 정보를 기초로 거래 네트워크 데이터를 생성할 수 있다.In
게임 어뷰저 검출 장치는 거래 네트워크 데이터의 분석에서 연결 정도 기반의 중심성(degree based centrality)을 클러스터링의 특징으로서 이용하여 클러스터링을 수행함으로써 게임 어뷰저를 탐지할 수 있다. 작업장은 일반 게임 유저와 다른 양상으로 게임 재화를 거래한다. 이러한 점을 기초로, 게임 어뷰저 검출 장치는, 예를 들어 복수의 가능한 특징들 중 작업장 및 일반 게임 유저 간에 차이가 날 것이라고 예상되는 특징(기준 특징)을 선정한 후 K-평균 클러스터링(means clustering) 등과 같은 클러스터링을 수행함으로써 게임 어뷰저의 그룹을 분류해 낼 수 있다. 클러스터링에 이용되는 특징들은 거래 네트워크 데이터에서 노드들 간의 연결 관계에 기초하여 계산될 수 있으며, 이에 대해서는 아래에서 후술한다.The game navigator detection apparatus may detect the game navigator by performing clustering using a degree-based centrality as a feature of clustering in the analysis of transaction network data. The workplace trades game goods in a different way from ordinary game users. Based on this point, the game navigator detection device, for example, selects a feature (reference feature) that is expected to be different between a workplace and a general game user among a plurality of possible features and then K-means clustering. Clustering, etc., can be used to classify groups of game advisors. Features used for clustering may be calculated based on the connection relationships between nodes in the transaction network data, which will be described below.
게임 어뷰저 검출 장치는 클러스터링을 통해 게임 상에서 게임 재화를 획득하는 파머, 파머로부터 게임 재화를 전달받고 전달받은 게임 재화를 수집하는 뱅커, 뱅커로부터 게임 재화를 구매하는 구매자 및 게임 재화의 거래와 관련이 없는 일반 게임 유저를 분류해 낼 수 있다. 다른 실시예에서 게임 어뷰저 검출 장치는 클러스터링을 통해 파머, 파머로부터 게임 재화를 전달받고 전달받은 게임 재화를 취합하여 뱅커에게 전달하는 중간 뱅커, 중간 뱅커로부터 전달받은 게임 재화를 수집하는 뱅커, 뱅커로부터 게임 재화를 구매하는 구매자 및 일반 게임 유저를 분류할 수 있다. 작업장의 구조에 따라, 작업장 세력에 중간 뱅커가 포함되거나 생략될 수 있다. 중간 뱅커는 거래 네트워크에서 파머의 특성과 뱅커의 특성을 모두 가진다. 클러스터링 과정은 거래 로그 데이터에 포함된 게임 유저들을 각각의 그룹, 예를 들어 파머, 뱅커, 중간 뱅커, 구매자 및 일반 게임 유저 중 어느 하나로 레이블링(labeling)하는 과정을 포함한다. 파머, 뱅커 및 중간 뱅커가 게임 어뷰저에 해당한다.The game navigator detecting device is related to a farmer acquiring game goods in a game through clustering, a banker receiving game goods received from a farmer, a banker collecting game goods received from a farmer, a buyer who purchases game goods from a banker, and a transaction of game goods. It can classify non-standard game users. In another embodiment, the game navigator detecting device is a middle banker that receives game goods received from a farmer and a farmer through clustering and collects the game goods received from a farmer, and delivers the game goods received from the middle banker to a banker and a banker. It is possible to classify buyers who purchase game goods and general game users. Depending on the structure of the workplace, workplace forces may include or omit intermediate bankers. An intermediate banker has both the characteristics of a farmer and a banker in a trading network. The clustering process includes labeling game users included in the transaction log data to each group, for example, a farmer, a banker, an intermediate banker, a buyer, and a general game user. Farmers, bankers and middle bankers are game advisors.
단계(210)의 과정은 도 3을 참조하여 아래에서 보다 구체적으로 설명한다.The process of
단계(220)에서, 게임 어뷰저 검출 장치는 단계(210)에서의 게임 어뷰저의 검출 결과를 검증할 수 있다. 게임 어뷰저 검출 장치는 단계(210)에서의 클러스터링 결과, 즉 정상적인 일반 게임 유저와 게임 어뷰저(예, 작업장 세력)가 잘 분리되었는지에 대해 검증할 수 있다. 파머, 뱅커, 중간 뱅커, 구매자 및 일반 게임 유저의 집단은 서로 다른 행동 양식을 나타낸다는 점에 기초하여, 게임 어뷰저 검출 장치는 게임 유저의 행동 양식을 기반으로 검증을 수행한다.In
게임 어뷰저 검출 장치는 게임 유저들의 행동 양식과 관련된 행동 로그 데이터(이하 '행동 로그 데이터'라 지칭함)에 기초하여 게임 유저들을 분류할 수 있다. 이 때, 단계(210)의 클러스터링에서 이용된 특징과는 독립적인 특징이 이용될 수 있다. 게임 어뷰저 검출 장치는 뉴럴 네트워크 기반의 검증 모델을 구성하고, 구성된 검증 모델을 이용하여 검증 과정을 수행할 수 있다. 검증 모델은 행동 로그 데이터를 입력으로 하고, 각 게임 유저가 속하는 집단의 레이블을 출력할 수 있다. 예를 들어, 게임 어뷰저 검출 장치는 검증 모델을 이용하여, 게임 유저들을 파머, 뱅커, 중간 뱅커, 구매자 및 일반 게임 유저로 분류할 수 있다. 실시예에 따라, 중간 뱅커의 분류 과정은 생략될 수 있다. 행동 로그 데이터를 검증 모델을 이용한 분류의 특징으로 이용하는 경우, 게임 유저들의 집단이 잘 분류될 수 있다. 만약, 단계(210)에서의 분류 결과가 정확하다면, 검증 모델을 통한 분류 결과의 정확도가 높아야 한다.The game navigator detecting apparatus may classify game users based on behavior log data (hereinafter, referred to as 'behavior log data') related to behavior patterns of game users. At this time, a feature independent of the feature used in the clustering of
검증 과정은, 게임 어뷰저 검출 장치가 단계(210)에서의 분류 결과와 검증 모델을 이용한 분류 결과에 기초하여 혼동 행렬(confusion matrix)을 생성하고, 생성된 혼동 행렬에 기초하여 분류의 정확도를 산출한 후 산출된 정확도가 미리 설정된 조건을 만족시키는지 여부를 판단하는 과정을 포함한다.In the verification process, the game-viewer detection apparatus generates a confusion matrix based on the classification result in
단계(220)의 과정은 도 6을 참조하여 아래에서 보다 구체적으로 설명한다.The process of
단계(230)에서, 게임 어뷰저 검출 장치는 단계(220)의 검증 결과가 미리 설정된 조건을 만족시키는지 여부를 판단할 수 있다. 예를 들어, 검증 과정은 혼동 행렬을 이용하여 단계(210)에서의 검출 결과의 정확도를 계산하고, 검출 결과의 정확도가 임계 값을 초과하는지 여부를 판단하는 과정을 포함할 수 있다. 게임 어뷰저 검출 장치는 검증 결과로서 획득되는 혼동 행렬의 정확도(precision)가 기준보다 낮으면 거래 네트워크 분석으로 돌아가 다시 분석 과정을 수행할 수 있다.In
검증 결과가 미리 설정된 조건을 만족시키지 않는 경우, 게임 어뷰저 검출 장치는 게임 어뷰저의 검출을 위한 기준 특징을 변경하고, 변경된 기준 특징에 기초하여 거래 네트워크 데이터를 다시 클러스터링하는 것에 의해 게임 유저들을 각각의 그룹으로 분류함으로써 게임 어뷰저를 검출할 수 있다. If the verification result does not satisfy the preset condition, the game navigator detecting apparatus changes the reference characteristics for the detection of the game navigator, and re-cluster the trading network data based on the changed reference characteristics to each of the game users. By classifying into groups, game advisors can be detected.
게임 어뷰저 검출 장치는 단계(220)의 검증 결과를 통해 단계(210)에서 수행되는 클러스터링에 이용될 특징을 개선하고, 개선된 특징으로 다시 거래 네트워크 데이터를 클러스터링하여 분류 작업을 수행한다. 혼동 행렬에서 비-대각 엘리먼트들(off-diagonal elements)의 값이 큰 경우, 해당 실제 레이블(actual label)이 제대로 클러스터링되지 않은 것으로 해석될 수 있다. 이 경우, 게임 어뷰저 검출 장치는 값이 큰 비-대각 엘리먼트들과 관련된 집단을 더 잘 구분할 수 있도록 단계(210)에서 수행될 클러스터링의 특징을 재조정할 수 있다. 게임 어뷰저 검출 장치는 단계(210)의 거래 네트워크 분석 과정 및 단계(220)의 검증 과정을 반복적으로 수행하는 것에 의해 게임 어뷰저를 정확하고 정교하게 검출할 수 있다.The game navigator detecting apparatus improves the feature to be used for clustering performed in
혼동 행렬의 정확도가 높은 경우, 게임 어뷰저 검출 장치는 클러스터링에서 이용된 특징(clustering feature)을 기초로 분류된 각 집단을 특정하고, 거래 로그 데이터의 분석을 통해 게임 어뷰저를 확정할 수 있다.When the confusion matrix has high accuracy, the game advisor detection device may specify each group classified based on the clustering feature used in clustering, and determine the game advisor by analyzing the transaction log data.
위와 같이, 게임 어뷰저 검출 장치는 연결 정도 기반의 중심성에 기초한 클러스터링을 통해 게임 어뷰저를 검출하는 과정과 뉴럴 네트워크 기반의 검증 모델을 이용하여 해당 검출 결과를 검증하는 과정을 통해 신뢰도 높게 게임 어뷰저를 탐지할 수 있다. 또한, 게임 어뷰저 검출 장치는 봇(bot)과 같은 기계 프로그램뿐만 아니라, 파머, 중간 뱅커, 뱅커, 구매자를 모두 탐지할 수 있으므로, 높은 범용성을 제공한다.As described above, the game navigator detecting apparatus has high reliability through the process of detecting the game navigator through clustering based on the degree of connection based on the connection degree and verifying the corresponding detection result using the neural network-based verification model. Can be detected. In addition, the game observer detection device can detect not only machine programs such as bots, but also farmers, intermediate bankers, bankers, and buyers, thereby providing high versatility.
도 3은 일 실시예에 따른 게임 어뷰저 검출 과정을 설명하기 위한 흐름도이다.3 is a flowchart illustrating a process of detecting a game navigator according to an exemplary embodiment.
도3을 참조하면, 단계(310)에서 게임 어뷰저 검출 장치는 게임 재화의 거래와 관련된 로그 데이터(거래 로그 데이터)를 수신한다. 거래 로그 데이터는 게임 재화 거래소나 게임 서버 등으로부터 전달될 수 있다. 거래 로그 데이터는, 예를 들어 거래 당사자들, 거래된 게임 재화, 거래 가격, 거래 시간, 거래된 게임 재화의 개수 등에 관한 정보를 포함할 수 있다.Referring to FIG. 3, in
단계(320)에서, 게임 어뷰저 검출 장치는 거래 로그 데이터에 기초하여 거래 네트워크 데이터를 생성한다. 예를 들어, 게임 어뷰저 검출 장치는 게임 유저들 간의 거래 로그 데이터를 이용하여 이상 거래에 대한 거래 네트워크 데이터를 생성할 수 있다.In
게임 어뷰저 검출 장치는 각각의 게임 유저를 노드(node)로 나타내고, 게임 유저들 간의 게임 재화 거래를 간선으로 나타내며, 게임 재화의 이동 방향을 간선의 방향으로 나타내는 것에 의해 거래 네트워크 데이터를 생성할 수 있다. 본 명세서에서, "거래 네트워크 데이터"는 "거래 네트워크 그래프" 또는 "이상 거래 네트워크 그래프"로도 지칭될 수 있다. 거래 네트워크 데이터를 구성하는 각 노드는 게임 유저에 대응하고, 노드들 간의 간선은 게임 유저들 간의 게임 재화 거래와 관련하여 게임 재화의 이동 방향에 대응한다.The game navigator detecting apparatus can generate transaction network data by representing each game user as a node, representing game goods transactions between game users as trunks, and indicating movement directions of game goods in the direction of trunk lines. have. In the present specification, "transaction network data" may also be referred to as "transaction network graph" or "abnormal transaction network graph". Each node constituting the transaction network data corresponds to a game user, and the trunk line between the nodes corresponds to the direction of movement of the game goods in relation to the game goods transaction between the game users.
일 실시예에 따른 거래 네트워크 데이터의 일례가 도 4a 및 도 4b에 도시되어 있다. 도 4a 및 도 4b를 참조하면, 각각의 게임 유저를 노드(410, 420, 430, 440, 450, 460, 470)로 표시하고, 각 게임 유저 간 게임 재화의 거래를 간선 내지 에지(edge)로 표시하는 것에 의해 거래 네트워크 그래프가 구성될 수 있다. 이 때, 간선의 방향은 게임 재화의 이동 방향으로 설정될 수 있다. 이후에, 게임 어뷰저 검출 장치는 작업장 세력을 탐지하기 위해 모든 게임 재화 거래의 이상 정도를 수치화하고, 수치화된 이상 정도를 게임 재화 거래에 대응하는 간선의 가중치에 대응함으로써 가중치를 가진 방향 그래프(weighted directed graph)를 생성할 수 있다. 간선의 가중치는 게임 재화 거래의 이상 정도를 나타낼 수 있다.One example of trading network data according to one embodiment is shown in FIGS. 4A and 4B. 4A and 4B, each game user is represented by the
다시 도 3으로 돌아오면, 위와 같이 게임 어뷰저 검출 장치는 게임 재화 거래의 이상 정도(abnormal degree)를 수치화할 수 있다. 일 실시예에서, 게임 어뷰저 검출 장치는 게임 재화의 거래와 관련한 거래가의 평균 값, 게임 재화의 각각의 시중 거래가 및 거래된 게임 재화의 개수에 기초하여 게임 거래의 이상 정도를 계산하는 것에 의해 이상 정도를 수치화할 수 있다. 게임 어뷰저 검출 장치는 수치화된 이상 정도를 게임 재화의 거래에 대응하는 간선의 가중치로 할당할 수 있다. 이를 통해, 게임 어뷰저 검출 장치는 가중치를 가진 방향 그래프를 구성할 수 있다.3, the game navigator detecting apparatus may quantify the abnormal degree of the game goods transaction as described above. In one embodiment, the game navigator detecting device performs an abnormality by calculating an abnormality degree of the game transaction based on the average value of the transaction price in relation to the transaction of the game goods, each commercial transaction price of the game goods, and the number of game goods traded. You can quantify the degree. The game observer detection apparatus may assign the numerical abnormality degree to the weight of the edge corresponding to the transaction of the game goods. In this way, the game navigator detecting apparatus may construct a direction graph having a weight.
일반적으로, 작업장을 통해 취득된 게임 재화는 게임 재화 거래소를 통하여 이동하는데, 대부분의 경우 구하기가 쉽고 시중 거래가가 싼 게임 재화를 비싼 가격에 파는 형태로 게임 재화 거래가 이루어진다. 이 때, 특정한 가격 단위로 게임 재화의 거래 가격대를 나누어 각 게임 재화마다 가장 빈번히 거래된 가격대를 적정 가격대로 결정한다. 그리고, 그 적정 가격대 내 거래가의 평균 값을 각 게임 재화의 시중 거래가 'c'로 결정한다. 각 거래에서 게임 재화의 개당 실제 거래가를 'cost'라고 하고, 거래된 게임 재화의 개수를 'cnt'라고 하면, 수치화된 이상 정도는 다음의 수학식 1에 의해 계산될 수 있다.In general, game goods acquired through the workplace are moved through the game goods exchange. In most cases, game goods are traded in the form of selling game goods that are easy to obtain and have a low market price at a high price. At this time, the transaction price of game goods is divided by a specific price unit to determine the most frequently traded price for each game product as an appropriate price. Then, the average value of the transaction price within the appropriate price range determines the commercial transaction price of each game product as 'c'. If the actual transaction price of each game goods in each transaction is called 'cost' and the number of game goods traded is called 'cnt', the numerical abnormality degree can be calculated by
이상 정도의 값이 높다는 것은 시중 거래가가 싼 게임 재화를 더 비싸게, 더 많이 거래했음을 의미할 수 있다.This higher price could mean that the marketer traded more and cheaper game goods.
단계(330)에서, 게임 어뷰저 검출 장치는 거래 네트워크 데이터에 포함된 노드들 간의 연결 관계에 기초하여 기준 특징을 결정한다. 게임 어뷰저 검출 장치는 거래 네트워크 데이터에서 각 노드들로부터 다른 노드로의 게임 재화 이동 방향에 기초하여 기준 특징을 결정할 수 있다. 게임 어뷰저 검출 장치는 거래 네트워크 데이터에 포함된 일 노드와 일 노드에 연결된 하나 이상의 다른 노드 간의 연결 관계에 기초하여 결정되는 복수의 특징들 중에서 어느 하나의 특징을 기준 특징으로서 선택할 수 있다.In
일 실시예에서, 분류하고 싶은 게임 어뷰저의 유형이 결정되고, 각 게임 어뷰저의 유형별로 다른 유형과 차이가 날 것으로 예상되는 여러 특징들이 정의될 수 있다. 거래 네트워크 데이터를 통해 계산될 수 있는 연결 정도 기반의 중심성(degree based centrality)이 특징으로 정의될 수 있다. 정의된 특징들 중 단계(340)이 클러스터링에서 이용될 기준 특징이 선택될 수 있다.In one embodiment, the type of game adviser that you want to classify is determined, and various features that are expected to be different from other types may be defined for each type of game advisor. The degree of centrality, which can be calculated through transaction network data, can be defined as a feature. Among the defined features, a reference feature may be selected in which step 340 will be used in clustering.
작업장과 같은 게임 어뷰저와 일반 게임 유저는 게임 재화 거래의 이상 정도에서 차이가 난다. 거래 네트워크 데이터상에서 게임 어뷰저에 대응하는 노드는 들어가거나 나가는 간선의 가중치가 높을 것이다. 거래 네트워크 데이터의 인접 행렬(adjacency matrix)을 'A'라고 할 때, 게임 어뷰저를 분류하기 위한 각 노드의 in-degree(x)와 out-degree(y)는 다음의 수학식 2에 기초하여 계산할 수 있다.Game advisers such as workshops and general game users differ in the degree of abnormality in the trading of game goods. The nodes corresponding to the game advisors on the transaction network data will have a high weight of the incoming or outgoing edges. When the adjacency matrix of the transaction network data is called 'A', the in-degree (x) and out-degree (y) of each node for classifying the game advisor are based on
여기서, 'x'는 한 노드로 들어오는 가중치의 합을 나타내고, 'y'는 노드에서 나가는 가중치의 합을 나타낸다. 'i'는 현재 노드를 가리키기 위한 인덱스이고, 'j'는 게임 재화의 거래 상대방 노드를 가리키기 위한 인덱스이다. 예를 들어, 파머 -> 뱅커 -> 구매자로 게임 재화가 이동하는 형태에서는, 뱅커와 구매자가 각각 파머와 뱅커로부터 게임 재화를 전달받기 때문에 뱅커와 구매자의 x 값은 크다. 이와 반대로, 파머와 뱅커는 각각 뱅커와 구매자에게 게임 재화를 전달하기 때문에, 파머와 뱅커의 y 값은 크다.Here, 'x' represents the sum of weights coming into one node, and 'y' represents the sum of weights coming out of the node. 'i' is an index for pointing to the current node, and 'j' is an index for pointing to a trading partner node of the game good. For example, in the form of game goods moving from Farmer to Banker to Buyer, the x value of Banker and Buyer is large because Banker and Buyer receive game goods from Farmer and Banker respectively. In contrast, since Farmer and Banker deliver the game goods to Banker and Buyer, respectively, Farmer and Banker's y value is large.
수학식 2에 의해 계산되는 특징들 이외에, 게임 어뷰저를 보다 세밀하게 분류하기 위한 특징들이 다음의 수학식 3 내지 수학식 10에 따라 계산될 수 있다. 수학식 3 내지 수학식 10에서도, 'A'는 거래 네트워크 데이터의 인접 행렬을 나타내고, 'i'는 현재 노드를 가리키기 위한 인덱스를 나타내며, 'j'는 게임 재화의 거래 상대방 노드를 가리키기 위한 인덱스를 나타낸다.In addition to the features calculated by
수학식 3에서 계산되는 특징은, x2는 두 번 거쳐서 들어오는 간선들을 고려하기 때문에 구매자가 큰 값을 가지고, 반대로 y2는 두 번에 거쳐서 나가는 간선들을 고려하기 때문에 파머가 큰 값을 가진다. 수학식 4에서 계산되는 특징은, xy는 들어오는 간선과 나가는 간선을 모두 고려하기 때문에 뱅커가 가장 큰 값을 가진다. The characteristic calculated in
수학식 5에서 계산되는 특징은, 두 번에 거쳐서 들어오는 간선과 한 번에 거쳐서 나가는 간선을 모두 고려하기 때문에 파머에게서 중간 뱅커를 거쳐 게임 재화를 받고 구매자에게 게임 재화를 전달하는 뱅커가 가장 큰 값을 가진다.The feature calculated in
수학식 6에서 계산되는 특징은, 한 번에 거쳐서 들어오는 간선과 두 번에 거쳐서 나가는 간선을 모두 고려하기 때문에 파머에게서 게임 재화를 받고 뱅커를 거쳐 구매자에게 게임 재화를 전달하는 중간 뱅커가 가장 큰 값을 가진다.The feature calculated in Equation 6 takes into account both the incoming and outgoing edges at once, so the middle banker who receives the game goods from the farmer and passes the game goods to the buyer via the banker has the highest value. Have
수학식 7에서 계산되는 특징인 to_xy_max는, 자신으로부터 들어오는 간선이 있는 다른 노드의 뱅커 정도인 xy 값과 그 간선의 가중치를 동시에 고려하기 때문에 중간 뱅커>파머, 뱅커>일반 게임 유저의 양상을 나타낸다. 중간 뱅커는 거래 네트워크에서 파머의 특성과 뱅커의 특성을 모두 나타내므로, 중간 뱅커를 구분하기 위해 이를 구분하기 위해 수학식 6 및 7에서 계산되는 특징이 이용될 수 있다.To_xy_max, which is a feature calculated in Equation 7, represents an aspect of an intermediate banker> palmer, banker> general game user because the xy value, which is the level of the banker of another node that has an edge coming from it, and the weight of the edge are simultaneously considered. Since the intermediate banker represents both the characteristics of the farmer and the characteristics of the banker in the transaction network, the features calculated in Equations 6 and 7 may be used to distinguish the intermediate bankers.
수학식 8에서 계산되는 특징은, 자신에게로 나가는 간선이 있는 다른 노드의 xy 값과 그 간선의 가중치를 동시에 고려하기 때문에 구매자>다른 집단의 양상을 보인다.The feature calculated in
수학식 9에서 계산되는 특징은, 수학식 7의 to_xy_max 값과 그 간선의 가중치를 동시에 고려하기 때문에 중간 뱅커에 게임 재화를 전달하는 파머가 가장 큰 값을 가진다.The feature calculated in Equation (9) takes into account the to_xy_max value in Equation 7 and the weight of the edge at the same time, so that the farmer delivering the game goods to the intermediate banker has the largest value.
수학식 10에서 계산되는 특징은, 수학식 7의 to_xy_max 값과 그 간선의 가중치를 동시에 고려하기 때문에 중간 뱅커에서 게임 재화를 받는 구매자와 뱅커가 가장 큰 값을 가진다.The feature calculated in Equation 10 considers the to_xy_max value of Equation 7 and the weight of the edge at the same time, so that the buyer and the banker who receive the game goods in the intermediate banker have the largest value.
기준 특징은 위 수학식 2 내지 수학식 10을 통해 계산될 수 있는 특징들 중에서 선택될 수 있다.The reference feature may be selected from among features that may be calculated through
단계(340)에서, 게임 어뷰저 검출 장치는 단계(330)에서 결정된 기준 특징에 기초하여 클러스터링을 수행하는 것에 의해 거래 네트워크 데이터를 구성하는 노드들을 분류할 수 있다. 예를 들어, 게임 어뷰저 검출 장치는 기준 특징을 중심으로 거래 네트워크 데이터에 대해 K-평균 클러스터링 등과 같은 클러스터링 기법을 수행하는 것에 의해 작업장 세력에 해당되는 노드들을 분류할 수 있다. 여기서, 수행되는 클러스터링 기법은 K-평균 클러스터링에 한정되지 않으며 다른 다양한 클러스터링 기법이 이용될 수 있다. 게임 어뷰저 검출 장치는 클러스터링을 통해 거래 네트워크 데이터에 포함된 노드들을 파머, 뱅커, 구매자 및 일반 게임 유저로 분류하거나, 또는 해당 노드들을 파머, 중간 뱅커, 뱅커, 구매자 및 일반 게임 유저로 분류할 수 있다. 게임 어뷰저 검출 장치는 클러스터링을 통해 노드에 대응하는 게임 유저별로 레이블을 할당할 수 있다. In
다시 도 3으로 돌아오면, 단계(350)에서 게임 어뷰저 검출 장치는 단계(340)의 분류 결과에 기초하여 게임 어뷰저를 검출할 수 있다. 게임 어뷰저 검출 장치는 클러스터 레이블별 특징 양상과 게임 유저 유형별 특징 변화 양상을 조합하여 게임 어뷰저와 일반 게임 유저를 분류할 수 있다. 게임 어뷰저 검출 장치는 클러스터 레이블에 게임 유저 유형을 대응시킬 수 있다.Referring back to FIG. 3, in
예를 들어, 파머 -> 뱅커 -> 구매자의 형태를 가지는 작업장 구조와 일반 게임 유저까지 고려하여 K=4인 K-평균 클러스터링을 진행한 결과의 일례가 도 5a에 도시되어 있고, 파머 -> 중간 뱅커 -> 뱅커 -> 구매자의 형태를 가지는 작업장 구조와 일반 게임 유저까지 고려하여 K=5인 K-평균 클러스터링을 진행한 결과의 일례가 도 5b에 도시되어 있다. 도 5a 및 도 5는 일 실시예에 따른 클러스터링 결과를 나타내는 박스 플롯(box plot)의 일례들을 도시한다.For example, an example of the result of K-average clustering with K = 4 considering the workplace structure having the form of Farmer-> Banker-> Buyer and general game user is shown in FIG. An example of the results of the K-average clustering with K = 5 in consideration of a workplace structure having a banker-> banker-> buyer form and a general game user is shown in FIG. 5B. 5A and 5 show examples of box plots showing clustering results according to one embodiment.
도 5a를 참조하면, 각 박스 플롯들(505, 510, 515, 520, 525)은 각 기준 특징(위 수학식을 통해 계산된 x, x2, y, y2, xy의 특징)별로 노드들을 클러스터링한 결과를 도시하며 기준 특징의 경향성을 나타낸다. 각 박스 플롯들(505, 510, 515, 520, 525)에서 x축은 클러스터 레이블을 나타내고, y축은 특징 값을 나타낸다. 클러스터 레이블의 경우, '1'은 일반 게임 유저를, '2'는 파머를, '3'은 구매자를, '4'는 뱅커를 각각 의미한다.Referring to FIG. 5A, each of the
박스 플롯(505) 및 박스 플롯(515)은, 각각 수학식2를 통해 계산되는 특징 x, y에 따른 클러스터링 결과를 나타내고, 박스 폴롯(510) 및 박스 플롯(520)은, 각각 수학식 3을 통해 계산되는 특징 x2, y2에 따른 클러스터링 결과를 나타낸다. 박스 플롯(525)는 수학식 4를 통해 계산되는 특징 xy에 따른 클러스터링 결과를 나타낸다. 박스 플롯(510)에서, x2의 특징 값이 큰 클러스터 레이블 '3'이 구매자에 대응되고, 박스 플롯(520)에서, y2의 특징 값이 큰 클러스터 레이블 '2'가 파머에 대응되는 것으로 추정될 수 있다. 박스 플롯(525)에서 xy의 특징 값이 큰 클러스터 레이블 '4'가 뱅커에 대응되고, 수가 가장 많은 클러스터 레이블 '1'이 일반 게임 유저에 대응되는 것으로 추정될 수 있다.The
각 클러스터 레이블별 박스 플롯과 게임 유저의 유형별 기준 특징 양상을 고려하면, 다음의 표 1처럼 클러스터 레이블과 게임 유저의 유형을 대응할 수 있다. 표 1은 클러스터 레이블별 게임 유저 분포표의 일례를 나타낸다.Considering the box plot for each cluster label and the reference feature for each type of game user, the cluster label and the type of game user may correspond to each other as shown in Table 1 below. Table 1 shows an example of a game user distribution table for each cluster label.
도 5b를 참조하면, 각 박스 플롯들(530, 535, 540, 545, 550)은 각 기준 특징(위 수학식을 통해 계산된 x, from_xy_max, y, to_xy_max, xy의 특징)별로 노드들을 클러스터링한 결과를 도시하며 기준 특징의 경향성을 나타낸다. 각 박스 플롯들(530, 535, 540, 545, 550)은 에서 x축은 클러스터 레이블을 나타내고, y축은 특징 값을 나타낸다. 클러스터 레이블의 경우, '1'은 일반 게임 유저를, '2'는 파머를, '3'은 중간 뱅커를, '4'는 구매자를, '5'는 뱅커를 각각 의미한다.박스 플롯(530) 및 박스 플롯(540)은, 각각 수학식2를 통해 계산되는 특징 x, y에 따른 클러스터링 결과를 나타내고, 박스 플롯(550)은 수학식 4를 통해 계산되는 특징 xy에 따른 클러스터링 결과를 나타낸다. 박스 플롯(535)은 수학식 8을 통해 계산되는 특징 from_xy_max에 따른 클러스터링 결과를 나타내고, 박스 폴롯(545)는 수학식 7을 통해 계산되는 특징 to_xy_max에 따른 클러스터링 결과를 나타낸다. 박스 플롯(525)에서 xy의 특징 값이 큰 클러스터 레이블 '5'가 뱅커에 대응되고 박스 플롯(545)에서 to_xy_max의 특징 값이 큰 클러스터 레이블 '3'이 중간 뱅커에 대응되는 것으로 추정될 수 있다. 박스 플롯(535)에서 from_xy_max의 특징 값이 큰 클러스터 레이블 '4'가 구매자에 대응되는 것으로 추정되고, 수가 가장 많은 클러스터 레이블 '1'이 일반 게임 유저에 대응되는 것으로 추정될 수 있다. 나머지 클러스터 레이블 '2'는 파머에 대응하는 것으로 추정될 수 있다.Referring to FIG. 5B, each of the
각 클러스터 레이블별 박스 플롯과 게임 유저의 유형별 기준 특징 양상을 고려하면, 다음의 표 2처럼 클러스터 레이블과 게임 유저의 유형을 대응할 수 있다. 표 2는 클러스터 레이블별 게임 유저 분포표의 일례를 나타낸다.Considering the box plot for each cluster label and the reference feature of each game user, the cluster label and the type of game user may correspond to each other as shown in Table 2 below. Table 2 shows an example of a game user distribution table for each cluster label.
일 실시예에서, 거래 네트워크 구조상 특정한 게임 어뷰저의 유형이 탐지되면, 거래 기록에 기초하여 다른 게임 어뷰저를 탐지하는 것도 가능하다. 예를 들어, 거래 네트워크 구조상 뱅커가 탐지되면, 탐지된 뱅커의 거래 기록을 추적하여 중간 뱅커, 파머, 구매자를 탐지하는 것도 가능하다.위와 같이, 게임 어뷰저의 검출 및 분류가 완료되면, 도 4a 및 도 4b에 도시된 거래 네트워크 데이터에서 각각의 게임 유저 유형이 결정될 수 있다. 도 4a에서, 노드(430)은 게임 재화를 기계적으로 취득하는 파머에 대응하고, 노드(420)은 파머로부터 게임 재화를 전달받아 수집하는 뱅커에 대응한다. 노드(410)은 뱅커로부터 게임 재화를 구매하는 구매자에 대응한다. 도 4b에서는, 노드(460)이 파머에 대응하고, 노드(450)이 파머로부터 게임 재화를 전달받아 수집하는 중간 뱅커에 대응한다. 노드(470)은 중간 뱅커로부터 게임 재화를 전달받아 수집하는 뱅커에 대응하고, 노드(440)은 구매자에 대응한다.In one embodiment, if a particular type of game advisor is detected in the transaction network structure, it is also possible to detect other game advisors based on the transaction record. For example, if a banker is detected in the trading network structure, it is possible to detect the intermediate bankers, farmers, and buyers by tracking the transaction records of the detected bankers. As described above, when the detection and classification of the game advisor is completed, FIGS. Each game user type may be determined in the transaction network data shown in FIG. 4B. In FIG. 4A,
위 단계(310) 내지 단계(350)의 과정에 따라 게임 어뷰저의 검출이 완료되면, 도 2의 단계(220)으로 진행되어 검출 결과의 검증 과정이 수행될 수 있다.When the detection of the game navigator is completed according to the process of
도 6은 일 실시예에 따른 게임 어뷰저 검출 결과의 검증 과정을 설명하기 위한 흐름도이다. 6 is a flowchart illustrating a verification process of a game navigator detection result, according to an exemplary embodiment.
도 6을 참조하면, 단계(610)에서 게임 어뷰저 검출 장치는 행동 로그 데이터에 기초하여 행동 로그(또는 로그 액션)를 선정한다. 게임 어뷰저 검출 장치는 행동 양식을 나타내는 특징으로 이용될 행동 로그를 선정할 수 있다. 단계(620)에서, 게임 어뷰저 검출 장치는 게임 유저별 행동 로그 카운트 값을 추출하고, 게임 유저별 행동 로그 카운트 값에 기반하여 데이터 전처리를 수행할 수 있다. 게임 어뷰저 검출 장치는 행동 로그의 횟수 대신 비율을 고려하기 위해 전체 행동 로그 카운트 대비 해당 행동 로그 카운트의 비율을 계산할 수 있다.Referring to FIG. 6, in
검증을 위해 이용되는 특징은 도 3의 거래 네트워크 분석의 클러스터링에서 이용되는 특징과 구별된다. 검증 과정에서는, 예를 들어 게임 유저별 행동 로그 카운트 값, 행동 로그 카운트의 비율, 총 행동 로그 카운트 수, 맥스 배틀 파워(max battle power) 등의 특징이 이용될 수 있다. 여기서, 맥스 배틀 파워는 하루 중에 나타나는 게임 내 전투력 수치 중 최고 값이다.The features used for verification are distinct from the features used in clustering of the trading network analysis of FIG. 3. In the verification process, for example, features such as a behavior log count value per game user, a ratio of behavior log counts, a total behavior log count number, max battle power, and the like may be used. Here, Max Battle Power is the highest in-game combat power level of the day.
일 실시예에서, 게임 어뷰저 검출 장치는 각 특징에 대해 정규화(normalization) 및 로그 스케일링(log scaling) 등과 같은 데이터 전처리를 수행할 수 있다. 실시예에 따라, 게임 어뷰저 검출 장치는 정규화 및 로그 스케일링 이외에 다른 다양한 데이터 전처리를 수행할 수 있다. 행동 로그 카운트의 비율이 0에 가까운 작은 값이기 때문에, 각 특징들에 대해 로그 스케일링이 수행될 수 있다. 로그 스케일링에 의해 발산되는 것을 방지하기 위해 10-10이 더해질 수 있고, 로그 스케일링 값의 절대값이 이용될 수 있다. 이와 같은 과정은 다음의 수학식 11과 같이 나타낼 수 있다.In one embodiment, the game navigator detection device may perform data preprocessing such as normalization and log scaling for each feature. According to an embodiment, the game navigator detection apparatus may perform various data preprocessing in addition to normalization and log scaling. Since the ratio of the behavior log count is a small value close to zero, log scaling can be performed for each feature. 10 -10 can be added to prevent divergence by log scaling, and the absolute value of the log scaling value can be used. This process can be expressed as Equation 11 below.
여기서, x는 검증에 이용되는 특징 값을 나타내고, x'는 데이터 전처리가 수행된 결과 값을 나타낸다.Here, x represents a feature value used for verification, and x 'represents a result value of performing data preprocessing.
단계(630)에서, 게임 어뷰저 검출 장치는 행동 로그 데이터에 기반한 게임 유저별 특징과 도 3의 클러스터링 결과로서 도출된 게임 유저별 레이블(클러스터 레이블)을 병합할 수 있다. 예를 들어, 게임 어뷰저 검출 장치는 게임 유저를 식별하기 위한 PID(player identifier)를 기준으로 행동 로그 데이터에 기반한 게임 유저별 특징과 게임 유저별 레이블을 병합할 수 있다.In
게임 어뷰저 검출 장치는, 단계(640)에서 혼동 행렬을 생성하고, 단계(650)에서 혼동 행렬에 기초하여 검증을 수행한다.The game observer detection apparatus generates a confusion matrix in
게임 어뷰저 검출 장치는 거래 네트워크 분석을 통해 도출된 클러스터링 결과를 검증하기 위해 새로운 검증 모델을 구성할 수 있다. 검증 모델로서, 뉴럴 네트워크 기반의 검증 모델이 이용될 수 있다. 예를 들어, 게임 어뷰저 검출 장치는 검증 모델을 이용하여 클러스터링 결과에서 파머, 중간 뱅커, 뱅커, 구매자, 일반 게임 유저가 잘 구분되었는지를 검증할 수 있다.The game navigator detection apparatus may construct a new verification model to verify the clustering result derived from the transaction network analysis. As a verification model, a neural network based verification model may be used. For example, the game navigator detecting apparatus may verify whether the farmer, the middle banker, the banker, the buyer, and the general game user are well distinguished in the clustering result using the verification model.
검증 모델은 게임 유저들의 게임 플레이 상의 행동과 관련된 행동 로그 데이터를 입력으로 하고, 각 게임 유저들이 속하는 집단을 분류하기 위한 레이블을 출력할 수 있다. 일 실시예에 따르면, 검증 모델로서 도 7에 도시된 것과 같은 완전 연결 뉴럴 네트워크(fully connected neural network; 700)가 이용될 수 있다. 실시예에 따라, 검증 모델로서 완전 연결 뉴럴 네트워크 이외에 다른 구조를 가지는 뉴럴 네트워크가 이용될 수도 있다. 도 7은 완전 연결 뉴럴 네트워크(700)의 구조의 일례를 도시한다. 완전 연결 뉴럴 네트워크(700)는 입력 레이어(710), 히든 레이어(hidden layer; 720) 및 출력 레이어(730)를 포함할 수 있다. 예를 들어, 히든 레이어(720)는 5개의 히든 레이어들을 포함하고, 각각의 히든 레이어들은 512, 512, 256, 256, 128 개의 인공 뉴런들을 가질 수 있으나, 히든 레이어의 개수와 각 히든 레이어를 구성하는 인공 뉴런의 개수가 이에 한정되는 것은 아니다. 완전 연결 뉴럴 네트워크(700)를 위한 활성 함수로는 tanh 함수가 사용될 수 있으나, 이에 한정되는 것은 아니다. 또한, 검증 모델을 위한 뉴럴 네트워크로서 도 7의 완전 연결 뉴럴 네트워크뿐만 아니라 다른 다양한 구조/기능의 뉴럴 네트워크가 이용될 수도 있다.The verification model may input behavior log data related to behaviors of game users in game play, and output labels for classifying groups to which game users belong. According to one embodiment, a fully connected
다시 도 6으로 돌아오면, 게임 어뷰저 검출 장치는 뉴럴 네트워크 기반의 검증 모델이 예측한 분류 결과와 도 3에서 설명된 클러스터링의 분류 결과에 기초하여 거래 네트워크 분석 결과로서 도출된 게임 어뷰저의 검출 결과를 검증할 수 있다. 게임 어뷰저 검출 장치는 해당 검출 결과와 검증 모델의 출력 결과에 기초하여 혼동 행렬을 생성하고, 생성된 혼동 행렬에 기초하여 검출 결과의 검증 결과를 결정할 수 있다. 게임 어뷰저 검출 장치는 검증 모델의 학습을 위한 학습 세트(train set)와 인증 세트(validation set)을 선정하고, 선정된 학습 세트를 이용하여 검증 모델을 학습시킬 수 있다. 그리고, 검증 모델의 출력과 인증 세트에 기초하여 혼동 행렬이 획득될 수 있다.Referring back to FIG. 6, the game advisor detection apparatus detects a game advisor detected as a transaction network analysis result based on the classification result predicted by the neural network-based verification model and the classification result of clustering described in FIG. 3. Can be verified The game navigator detecting apparatus may generate a confusion matrix based on the detection result and the output result of the verification model, and determine the verification result of the detection result based on the generated confusion matrix. The game navigator detecting apparatus selects a training set and a validation set for learning the verification model, and trains the verification model using the selected learning set. And a confusion matrix can be obtained based on the output of the verification model and the authentication set.
일 실시예에서, 게임 어뷰저 검출 장치는 학습 세트와 인증 세트를 클래스 균형(class balance)이 같도록 랜덤으로 선정하고, 학습 세트에 기초하여 검증 모델을 여러 번 학습시켜 인증 세트를 분류할 수 있다. 게임 어뷰저 검출 장치는 인증 세트의 분류 결과를 혼동 행렬로 나타낼 수 있다. 학습 세트와 인증 세트가 랜덤하게 선정되기 때문에, 검증 모델의 출력 데이터의 편차(variance)를 줄이기 위해 게임 어뷰저 검출 장치는 이와 같은 과정을 여러 번 반복하여 복수의 혼동 행렬들을 생성할 수 있다. 게임 어뷰저 검출 장치는 생성된 혼동 행렬들을 모두 합한 후 정규화 과정을 통해 최종 혼동 행렬을 생성할 수 있다.In one embodiment, the game navigator detection apparatus may randomly select the learning set and the authentication set to have the same class balance, and classify the authentication set by learning the verification model several times based on the learning set. . The game navigator detection apparatus may represent the classification result of the authentication set in a confusion matrix. Since the learning set and the authentication set are randomly selected, the game navigator detection apparatus may generate the plurality of confusion matrices by repeating this process several times to reduce the variance of the output data of the verification model. The game navigator detection apparatus may generate the final confusion matrix through a normalization process after summing all generated confusion matrices.
게임 어뷰저 검출 장치는 최종 혼동 행렬을 통해 거래 네트워크 분석에서의 클러스터 레이블링이 잘되었는지를 검증할 수 있다. 예를 들어, 게임 어뷰저 검출 장치는 혼동 행렬의 대각 엘리먼트들(diagonal elements) 값들에 기초하여 대표 값을 산출하고, 산출된 대표 값이 임계 값 이상인지 여부를 판단하여 검증 결과를 결정할 수 있다. 혼동 행렬의 대각 엘리먼트들의 평균 값이 대표 값으로 산출될 수 있고, 해당 평균 값은 검증 모델의 정도를 나타낼 수 있다.The game navigator detection device may verify the cluster labeling in the transaction network analysis through the final confusion matrix. For example, the game navigator detecting apparatus may calculate the representative value based on the diagonal element values of the confusion matrix, and determine whether the calculated representative value is greater than or equal to the threshold value to determine the verification result. An average value of the diagonal elements of the confusion matrix may be calculated as a representative value, and the average value may represent the degree of the verification model.
만약, 최종 혼동 행렬에서 비-대각 엘리먼트들(off-diagonal elements)의 값이 크다면, 실제 레이블(actual label)이 제대로 클러스터링되지 않았다고 해석할 수 있다. 이 경우, 게임 어뷰저를 더 잘 구분할 수 있도록 클러스터링을 위한 특징이 재조정될 수 있다. 예를 들어, 게임 어뷰저 검출 장치는 최종 혼동 행렬에서 정확도가 낮은 엘리먼트를 식별하고, 식별된 엘리먼트에 대응하는 항목이 보다 정확하게 구분될 수 있도록 거래 네트워크 분석의 클러스터링에서 이용되는 특징(즉, 기준 특징)을 변경할 수 있다. 이후에, 변경된 기준 특징에 기초하여 거래 네트워크 분석이 다시 수행될 수 있다.If the value of off-diagonal elements in the final confusion matrix is large, it can be interpreted that the actual labels are not properly clustered. In this case, the features for clustering may be readjusted to better distinguish the game advisor. For example, the game navigator detection device identifies features with low accuracy in the final confusion matrix and uses features in clustering of transactional network analysis (ie, reference features) so that items corresponding to the identified elements can be distinguished more accurately. ) Can be changed. Thereafter, trading network analysis may be performed again based on the changed reference characteristics.
도 8a 및 도 8b는 일 실시예에 따른 혼동 행렬의 일례를 도시하는 도면들이다.8A and 8B are diagrams illustrating an example of a confusion matrix, according to one embodiment.
도 8a는 파머 -> 뱅커 -> 구매자의 형태를 가지는 작업장 구조와 관련된 혼동 행렬을 나타내고, 도 8b는 파머 -> 중간 뱅커 -> 뱅커 -> 구매자의 형태를 가지는 작업장 구조와 관련된 혼동 행렬을 나타낸다. 각 혼동 행렬들에서 대각 엘리먼트들은 정확하게 추정된 정도를 나타내고, 비-대각 엘리먼트들을 잘못 추정된 결과를 나타낸다. 엘리먼트들의 값의 단위는 %이다. 도 8a에 도시된 혼동 행렬의 정확도는 (93.07+97.27+91.23+95.14)/4=94.1775% 를 나타내고, 도 8b에 도시된 혼동 행렬의 정확도는 (83.76+93.70+93.76+96.72+87.09)/5=91.006% 을 나타낸다. 'Predict'는 행동 로그 데이터에 기초하여 학습된 검증 모델이 예측한 예측 결과에 대응하고, 'Actual'은 거래 네트워크 분석의 클러스터링을 통한 레이블링 결과에 대응한다.FIG. 8A shows the confusion matrix associated with a workplace structure in the form of Farmer-> Banker-> Buyer, and FIG. 8B shows the confusion matrix associated with the workplace structure in the form of Farmer-> Intermediate Banker-> Banker-> Buyer. Diagonal elements in each of the confusion matrices represent a precisely estimated degree, and non-diagonal elements show a wrong estimate. The unit of values of the elements is%. The accuracy of the confusion matrix shown in FIG. 8A represents (93.07 + 97.27 + 91.23 + 95.14) /4=94.1775%, and the accuracy of the confusion matrix shown in FIG. 8B is (83.76 + 93.70 + 93.76 + 96.72 + 87.09) / 5. = 91.006%. 'Predict' corresponds to the prediction result predicted by the learned verification model based on the behavior log data, and 'Actual' corresponds to the labeling result through clustering of the transaction network analysis.
도 9는 일 실시예에 따른 게임 어뷰저 검출 장치의 구성을 도시하는 도면이다.9 is a diagram illustrating a configuration of a game navigator detecting apparatus according to an embodiment.
도 9를 참조하면, 게임 어뷰저 검출 장치(900)는 프로세서(910), 메모리(920) 및 통신 인터페이스(930)를 포함할 수 있다. 실시예에 따라, 게임 어뷰저 검출 장치(900)는 데이터베이스(940)를 더 포함할 수도 있다. 게임 어뷰저 검출 장치(900)는 본 명세서에서 설명된 게임 어뷰저 검출 장치에 대응한다.Referring to FIG. 9, the game
메모리(920)는 프로세서(910)에 연결되고, 프로세서(910)에 의해 실행가능한 인스트럭션들, 프로세서(910)가 연산할 데이터 또는 프로세서(910)에 의해 처리된 데이터를 저장할 수 있다. 메모리(920)는 비일시적인 컴퓨터 판독가능 매체, 예컨대 고속 랜덤 액세스 메모리 및/또는 비휘발성 컴퓨터 판독가능 저장 매체(예컨대, 하나 이상의 디스크 저장 장치, 플래쉬 메모리 장치, 또는 기타 비휘발성 솔리드 스테이트 메모리 장치)를 포함할 수 있다.The
통신 인터페이스(930)는 외부 장치(예를 들어, 게임 재화 거래소 또는 게임 서버)와 통신하기 위한 인터페이스를 제공한다. 통신 인터페이스(930)는 유선 또는 무선 네트워크를 통해 외부 장치와 통신할 수 있다.The
데이터베이스(940)는 게임 어뷰저 검출 장치(900)가 동작하는데 필요한 정보 및 데이터를 저장할 수 있다. 예를 들어, 데이터베이스(940)는 게임 재화의 거래와 관련된 로그 데이터, 게임 유저의 행동과 관련된 로그 데이터, 거래 네트워크 분석을 통한 클러스터링 결과 데이터, 검증 모델의 학습을 위한 학습 데이터 등을 저장할 수 있다.The
프로세서(910)는 게임 어뷰저 검출 장치(900)의 각 구성 요소들을 제어하도록 구성된다. 프로세서(910)는 게임 어뷰저 검출 장치(900) 내에서 실행하기 위한 기능 및 인스트럭션들을 실행하고, 게임 어뷰저 검출 장치(900)의 전체적인 동작을 제어한다. 프로세서(910)는 도 1 내지 도 8에서 설명된 게임 어뷰저 검출 장치(900)의 동작과 관련된 하나 이상의 동작을 수행할 수 있다.The
예를 들어, 프로세서(910)는 게임 재화의 거래와 관련된 로그 데이터를 수신하고, 해당 로그 데이터에 기초하여 거래 네트워크 데이터를 생성할 수 있다. 프로세서(910) 거래 네트워크 데이터에 포함된 노드들 간의 연결 관계에 기초하여 기준 특징을 결정할 수 있다. 프로세서(910)는 결정된 기준 특징에 기초하여 거래 네트워크 데이터를 클러스터링하는 것에 의해 거래 네트워크 데이터 포함된 노드들을 분류할 수 있다. 프로세서(910)는 노드들 간의 연결 관계에 기초하여 계산될 수 있는 복수의 특징들 중 기준 특징을 선택하고, 선택된 기준 특징에 기초하여 클러스터링을 수행하는 것에 의해 게임 유저들을 분류할 수 있다. 프로세서(910)는 해당 분류 결과에 기초하여 게임 어뷰저를 검출할 수 있다.For example, the
또한, 프로세서(910)는 뉴럴 네트워크 기반의 검증 모델을 이용하여 게임 어뷰저의 검출 결과를 검증할 수 있다. 프로세서(910)는 검증 결과가 미리 설정된 조건을 만족시키지 않는 경우, 클러스터링에 이용된 기준 특징을 다른 기준 특징으로 변경하고, 변경된 기준 특징에 기초하여 클러스터링을 수행하는 것에 의해 게임 어뷰저를 재검출할 수 있다. 이와 같은 과정을 통해 게임 어뷰저 검출 장치(900)는 작업장 세력과 같은 게임 어뷰저를 정확하게 검출할 수 있다.In addition, the
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, 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 hardware components and software components. For example, the devices and components described in the embodiments are, for example, processors, controllers, arithmetic logic units (ALUs), digital signal processors, microcomputers, field programmable gate arrays (FPGAs). May be implemented using one or more general purpose or special purpose computers, such as a programmable logic unit (PLU), 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 running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to the execution of the software. For convenience of explanation, one processing device may be described as being used, but one of ordinary skill in the art will appreciate that the processing device includes 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 parallel processors.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of the above, and configure the processing device to operate as desired, or process independently or collectively. You can command the device. Software and / or data may be any type of machine, component, physical device, virtual equipment, computer storage medium or device in order to be interpreted by or to provide instructions or data to the processing device. Or may be permanently or temporarily embodied in a signal wave to be transmitted. The software may be distributed over networked computer systems so that they may be stored or executed in a distributed manner. Software and data may be stored on one or more computer readable recording media.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be embodied in the form of program instructions that can be executed by various computer means and recorded in a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the media may be those specially designed and constructed for the purposes of the embodiments, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks. Magneto-optical media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.Although the embodiments have been described by the limited embodiments and the drawings as described above, various modifications and variations are possible to those skilled in the art from the above description. For example, the described techniques may be performed in a different order than the described method, and / or components of the described systems, structures, devices, circuits, etc. may be combined or combined in a different form than the described method, or other components Or even if replaced or substituted by equivalents, an appropriate result can be achieved.
그러므로, 다른 구현들, 다른 실시예들 및 청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are within the scope of the following claims.
100: 게임 시스템
110: 게임 서버
120: 네트워크
130: 게임 유저 단말
900: 게임 어뷰저 검출 장치
910: 프로세서
920: 메모리
930: 통신 인터페이스
940: 데이터베이스100: game system
110: game server
120: network
130: game user terminal
900: game navigator detection device
910: processor
920: memory
930: communication interface
940: database
Claims (25)
게임 재화의 거래와 관련된 로그 데이터를 수신하는 단계;
상기 로그 데이터에 기초하여 거래 네트워크 데이터를 생성하는 단계;
상기 거래 네트워크 데이터에 포함된 노드들 간의 연결 관계에 기초하여 기준 특징을 결정하는 단계;
상기 결정된 기준 특징에 기초하여 클러스터링을 수행하는 것에 의해 상기 노드들을 분류하는 단계;
상기 분류 결과에 기초하여 게임 어뷰저를 검출하는 단계; 및
상기 게임 어뷰저의 검출 결과를 검증하는 단계를 포함하고,
상기 검출 결과를 검증하는 단계는,
상기 게임 어뷰저의 검출 결과와 뉴럴 네트워크 기반의 검증 모델의 출력 결과에 기초하여 혼동 행렬을 생성하는 단계; 및
상기 혼동 행렬에 기초하여 상기 검출 결과의 검증 결과를 결정하는 단계
를 포함하는,
게임 어뷰저 검출 방법.
In the game navigator detection method performed by the game navigator detection device,
Receiving log data related to a transaction of a game good;
Generating transaction network data based on the log data;
Determining a reference feature based on a connection relationship between nodes included in the transaction network data;
Classifying the nodes by performing clustering based on the determined reference feature;
Detecting a game advisor based on the classification result; And
Verifying a detection result of the game advisor;
Verifying the detection result,
Generating a confusion matrix based on a detection result of the game advisor and an output result of a neural network based verification model; And
Determining a verification result of the detection result based on the confusion matrix
Including,
How to detect the game navigator.
상기 기준 특징을 결정하는 단계는,
상기 거래 네트워크 데이터에 포함된 일 노드와 상기 일 노드에 연결된 하나 이상의 다른 노드 간의 연결 관계에 기초하여 상기 기준 특징을 결정하는 단계
를 포함하는,
게임 어뷰저 검출 방법.
The method of claim 1,
Determining the reference feature,
Determining the reference feature based on a connection relationship between one node included in the transaction network data and one or more other nodes connected to the one node;
Including,
How to detect the game navigator.
상기 기준 특징을 결정하는 단계는,
상기 거래 네트워크 데이터에서 각 노드들로부터 다른 노드로의 게임 재화 이동 방향에 기초하여 상기 기준 특징을 결정하는 단계
를 포함하는,
게임 어뷰저 검출 방법.
The method of claim 1,
Determining the reference feature,
Determining the reference characteristic based on a direction of game goods movement from each node to another node in the transaction network data
Including,
How to detect the game navigator.
상기 기준 특징을 결정하는 단계는,
상기 연결 관계에 기초하여 결정되는 복수의 특징들 중에서 어느 하나의 특징을 상기 기준 특징으로서 선택하는 단계
를 포함하는,
게임 어뷰저 검출 방법.
The method of claim 1,
Determining the reference feature,
Selecting any one feature among the plurality of features determined based on the connection relationship as the reference feature
Including,
How to detect the game navigator.
상기 거래 네트워크 데이터를 생성하는 단계는,
게임 재화 거래의 이상 정도(abnormal degree)를 수치화하는 단계; 및
상기 수치화된 이상 정도를 게임 재화 거래에 대응하는 간선의 가중치로 할당하는 단계
를 포함하는,
게임 어뷰저 검출 방법.
The method of claim 1,
Generating the transaction network data,
Quantifying the abnormal degree of the game goods transaction; And
Allocating the quantified abnormality as a weight of an edge corresponding to a game goods transaction.
Including,
How to detect the game navigator.
상기 이상 정도를 수치화하는 단계는,
게임 재화의 거래와 관련한 거래가의 평균 값, 게임 재화의 각각의 시중 거래가 및 거래된 게임 재화의 개수에 기초하여 상기 이상 정도를 계산하는 단계
를 포함하는,
게임 어뷰저 검출 방법.
The method of claim 5,
The step of quantifying the degree of abnormality,
Calculating the degree of abnormality based on the average value of the transaction price in relation to the trading of the game goods, each commercial transaction price of the game goods, and the number of game goods traded;
Including,
How to detect the game navigator.
상기 거래 네트워크 데이터를 구성하는 노드는 게임 유저에 대응하고, 노드들 간의 간선은 게임 유저들 간의 게임 재화 거래와 관련하여 게임 재화의 이동 방향에 대응하는,
게임 어뷰저 검출 방법.
The method of claim 1,
The nodes constituting the transaction network data correspond to game users, and the trunk lines between the nodes correspond to the movement direction of the game goods in relation to the game goods transactions between the game users.
How to detect a game explorer.
상기 노드들을 분류하는 단계는,
상기 노드들을, 게임 상에서 게임 재화를 획득하는 파머(farmer), 상기 파머로부터 게임 재화를 전달받고, 상기 전달받은 게임 재화를 수집하는 뱅커(banker), 상기 뱅커로부터 게임 재화를 구매하는 구매자(consumer) 및 상기 게임 재화의 거래와 관련이 없는 일반 게임 유저로 분류하는 단계
를 포함하는,
게임 어뷰저 검출 방법.
The method of claim 1,
Classifying the nodes,
The nodes include a farmer who acquires game goods on a game, a banker receiving game goods from the farmer, a banker collecting the received game goods, and a buyer who purchases game goods from the banker. And classifying as general game users not related to the transaction of the game goods.
Including,
How to detect the game navigator.
상기 노드들을 분류하는 단계는,
상기 노드들을, 게임 상에서 게임 재화를 획득하는 파머, 상기 파머로부터 게임 재화를 전달받고, 상기 전달받은 게임 재화를 뱅커에게 전달하는 중간 뱅커(mid banker), 상기 중간 뱅커로부터 전달받은 게임 재화를 수집하는 뱅커, 상기 뱅커로부터 게임 재화를 구매하는 구매자 및 상기 게임 재화의 거래와 관련이 없는 일반 게임 유저로 분류하는 단계
를 포함하는,
게임 어뷰저 검출 방법.
The method of claim 1,
Classifying the nodes,
The nodes are collected by a farmer acquiring game goods on a game, a mid banker receiving game goods from the farmer, a mid banker delivering the received game goods to a banker, and a game goods received from the middle banker. Categorizing into a banker, a purchaser who purchases a game good from the banker, and a general game user not related to the transaction of the game good.
Including,
How to detect a game explorer.
게임 재화의 거래와 관련된 로그 데이터에 기초하여 거래 네트워크 데이터를 생성하는 단계;
상기 거래 네트워크 데이터에 기초하여 기준 특징을 결정하는 단계;
상기 기준 특징에 기초하여 상기 거래 네트워크 데이터를 클러스터링하는 것에 의해 게임 어뷰저를 검출하는 단계;
상기 게임 어뷰저의 검출 결과를 검증하는 단계; 및
상기 검증 결과가 미리 설정된 조건을 만족시키는지 여부를 판단하는 단계를 포함하고,
상기 검출 결과를 검증하는 단계는,
상기 게임 어뷰저의 검출 결과와 뉴럴 네트워크 기반의 검증 모델의 출력 결과에 기초하여 혼동 행렬을 생성하는 단계; 및
상기 혼동 행렬에 기초하여 상기 검출 결과의 검증 결과를 결정하는 단계
를 포함하는,
게임 어뷰저 검출 방법.
In the game navigator detection method performed by the game navigator detection device,
Generating transaction network data based on log data related to the transaction of the game goods;
Determining a reference feature based on the transaction network data;
Detecting a game advisor by clustering the transaction network data based on the reference feature;
Verifying a detection result of the game advisor; And
Determining whether the verification result satisfies a preset condition;
Verifying the detection result,
Generating a confusion matrix based on a detection result of the game advisor and an output result of a neural network based verification model; And
Determining a verification result of the detection result based on the confusion matrix
Including,
How to detect a game explorer.
상기 검증 결과가 상기 미리 설정된 조건을 만족시키지 않는 경우, 상기 게임 어뷰저의 검출을 위한 기준 특징을 변경하는 단계; 및
상기 변경된 기준 특징에 기초하여 상기 거래 네트워크 데이터를 다시 클러스터링하는 것에 의해 상기 게임 어뷰저를 검출하는 단계
를 더 포함하는,
게임 어뷰저 검출 방법.
The method of claim 10,
If the verification result does not satisfy the preset condition, changing a reference feature for detection of the game navigator; And
Detecting the game advisor by reclustering the trading network data based on the modified reference feature
Further comprising,
How to detect a game explorer.
상기 검증 결과가 상기 조건을 만족시키는지 여부를 판단하는 단계는,
상기 검출 결과의 정확도를 계산하는 단계; 및
상기 검출 결과의 정확도가 임계 값을 초과하는지 여부를 판단하는 단계
를 포함하는,
게임 어뷰저 검출 방법.
The method of claim 10,
Determining whether the verification result satisfies the condition,
Calculating an accuracy of the detection result; And
Determining whether the accuracy of the detection result exceeds a threshold value
Including,
How to detect the game navigator.
상기 검증 모델은,
게임 유저들의 게임 플레이 상의 행동과 관련된 로그 데이터를 입력으로 하고, 각 게임 유저들이 속하는 집단을 분류하기 위한 레이블을 출력하는,
게임 어뷰저 검출 방법.
The method of claim 10,
The verification model,
Input log data related to game users' behaviors in game play, and output labels for classifying groups to which each game user belongs.
How to detect a game explorer.
상기 검증 결과를 결정하는 단계는,
상기 혼동 행렬의 대각 엘리먼트들(diagonal elements) 값들에 기초하여 산출된 대표 값이 임계 값 이상인지 여부를 판단하는 단계
를 포함하는,
게임 어뷰저 검출 방법.
The method of claim 10,
Determining the verification result,
Determining whether the representative value calculated based on the diagonal element values of the confusion matrix is greater than or equal to a threshold value;
Including,
How to detect a game explorer.
게임 재화의 거래와 관련된 로그 데이터에 기초하여 거래 네트워크 데이터를 생성하는 단계;
상기 거래 네트워크 데이터에 포함된 노드들 간의 연결 관계에 기초한 복수의 특징들 중에서 기준 특징을 선택하는 단계;
상기 기준 특징에 기초하여 클러스터링을 수행하는 것에 의해 게임 유저들을 분류하는 단계;
뉴럴 네트워크 기반의 검증 모델을 이용하여 상기 분류 결과를 검증하는 단계;
상기 검증 결과가 미리 설정된 조건을 만족시키지 않는 경우, 상기 기준 특징을 다른 기준 특징으로 변경하는 단계;
상기 변경된 기준 특징에 기초하여 클러스터링을 수행하는 것에 의해 게임 어뷰저를 검출하는 단계; 및
상기 게임 어뷰저의 검출 결과를 검증하는 단계를 포함하고,
상기 검출 결과를 검증하는 단계는,
상기 게임 어뷰저의 검출 결과와 뉴럴 네트워크 기반의 검증 모델의 출력 결과에 기초하여 혼동 행렬을 생성하는 단계; 및
상기 혼동 행렬에 기초하여 상기 검출 결과의 검증 결과를 결정하는 단계
를 포함하는,
게임 어뷰저 검출 방법.
In the game navigator detection method performed by the game navigator detection device,
Generating transaction network data based on log data related to the transaction of the game goods;
Selecting a reference feature from among a plurality of features based on a connection relationship between nodes included in the transaction network data;
Classifying game users by performing clustering based on the reference feature;
Verifying the classification result using a neural network based verification model;
Changing the reference feature to another reference feature if the verification result does not satisfy a preset condition;
Detecting a game advisor by performing clustering based on the modified reference feature; And
Verifying a detection result of the game advisor;
Verifying the detection result,
Generating a confusion matrix based on a detection result of the game advisor and an output result of a neural network based verification model; And
Determining a verification result of the detection result based on the confusion matrix
Including,
How to detect the game navigator.
A computer-readable recording medium having recorded thereon a program for performing the method of any one of claims 1 to 12, 14, 16 and 17.
메모리 및 프로세서를 포함하고,
상기 메모리는 상기 프로세서에 의해 실행 가능한 인스트럭션들(instructions)을 저장하고,
상기 인스트럭션들이 상기 프로세서에 의해 실행될 때, 상기 프로세서는,
게임 재화의 거래와 관련된 로그 데이터를 수신하고,
상기 로그 데이터에 기초하여 거래 네트워크 데이터를 생성하고,
상기 거래 네트워크 데이터에 포함된 노드들 간의 연결 관계에 기초하여 기준 특징을 결정하고,
상기 결정된 기준 특징에 기초하여 클러스터링을 수행하는 것에 의해 상기 노드들을 분류하고,
상기 분류 결과에 기초하여 게임 어뷰저를 검출하고,
상기 게임 어뷰저의 검출 결과를 검증하고,
상기 프로세서는,
상기 검출 결과를 검증하는 과정에서, 상기 게임 어뷰저의 검출 결과와 뉴럴 네트워크 기반의 검증 모델의 출력 결과에 기초하여 혼동 행렬을 생성하고,상기 혼동 행렬에 기초하여 상기 검출 결과의 검증 결과를 결정하는,
게임 어뷰저 검출 장치.
In the game navigator detection device,
Memory and processor,
The memory stores instructions executable by the processor,
When the instructions are executed by the processor, the processor
Receive log data related to the trading of game goods,
Generate trading network data based on the log data,
Determine a reference characteristic based on a connection relationship between nodes included in the transaction network data,
Classify the nodes by performing clustering based on the determined reference feature,
Based on the classification result, the game navigator is detected,
Verify the detection result of the game advisor,
The processor,
In the process of verifying the detection result, generating a confusion matrix based on the detection result of the game navigator and the output result of the neural network-based verification model, and determining the verification result of the detection result based on the confusion matrix,
Game navigator detection device.
상기 프로세서는,
상기 연결 관계에 기초하여 결정되는 복수의 특징들 중에서 어느 하나의 특징을 상기 기준 특징으로서 선택하는,
게임 어뷰저 검출 장치.
The method of claim 19,
The processor,
Selecting one feature among the plurality of features determined based on the connection relationship as the reference feature,
Game navigator detection device.
상기 프로세서는,
게임 재화 거래의 이상 정도를 수치화하고, 상기 수치화된 이상 정도를 게임 재화 거래에 대응하는 간선의 가중치로 할당하는 것에 의해 상기 거래 네트워크 데이터를 생성하는,
게임 어뷰저 검출 장치.
The method of claim 19,
The processor,
Generating the transaction network data by quantifying an abnormality degree of a game goods transaction and assigning the quantified abnormality degree to a weight of an edge corresponding to a game goods transaction;
Game navigator detection device.
상기 프로세서는,
상기 노드들을, 게임 상에서 게임 재화를 획득하는 파머, 상기 파머로부터 게임 재화를 전달받고, 상기 전달받은 게임 재화를 수집하는 뱅커, 상기 뱅커로부터 게임 재화를 구매하는 구매자 및 상기 게임 재화의 거래와 관련이 없는 일반 게임 유저로 분류하는,
게임 어뷰저 검출 장치.
The method of claim 19,
The processor,
The nodes are associated with a farmer acquiring game goods on the game, a banker receiving game goods from the farmer, a banker collecting the received game goods, a buyer purchasing game goods from the banker, and a transaction of the game goods. Classified as no ordinary game users,
Game navigator detection device.
상기 프로세서는,
상기 노드들을, 게임 상에서 게임 재화를 획득하는 파머, 상기 파머로부터 게임 재화를 전달받고, 상기 전달받은 게임 재화를 뱅커에게 전달하는 중간 뱅커, 상기 중간 뱅커로부터 전달받은 게임 재화를 수집하는 뱅커, 상기 뱅커로부터 게임 재화를 구매하는 구매자 및 상기 게임 재화의 거래와 관련이 없는 일반 게임 유저로 분류하는,
게임 어뷰저 검출 장치.
The method of claim 19,
The processor,
The nodes include: a farmer acquiring game goods on a game, an intermediate banker receiving game goods from the farmer, an intermediate banker delivering the received game goods to a banker, a banker collecting game goods received from the intermediate banker, the banker Categorized as a purchaser who purchases game goods from and a general game user who is not involved in the transaction of the game goods,
Game navigator detection device.
메모리 및 프로세서를 포함하고,
상기 메모리는 상기 프로세서에 의해 실행 가능한 인스트럭션들을 저장하고,
상기 인스트럭션들이 상기 프로세서에 의해 실행될 때, 상기 프로세서는,
게임 재화의 거래와 관련된 로그 데이터에 기초하여 거래 네트워크 데이터를 생성하고,
상기 거래 네트워크 데이터에 기초하여 기준 특징을 결정하고,
상기 기준 특징에 기초하여 상기 거래 네트워크 데이터를 클러스터링하는 것에 의해 게임 어뷰저를 검출하고,
상기 게임 어뷰저의 검출 결과를 검증하고,
상기 프로세서는,
상기 검출 결과를 검증하는 과정에서, 상기 게임 어뷰저의 검출 결과와 뉴럴 네트워크 기반의 검증 모델의 출력 결과에 기초하여 혼동 행렬을 생성하고,상기 혼동 행렬에 기초하여 상기 검출 결과의 검증 결과를 결정하는,
게임 어뷰저 검출 장치.
In the game navigator detection device,
Memory and processor,
The memory stores instructions executable by the processor,
When the instructions are executed by the processor, the processor
Generate trading network data based on log data related to trading of game goods,
Determine a reference characteristic based on the transaction network data,
Detect a game advisor by clustering the transaction network data based on the reference feature,
Verify the detection result of the game advisor,
The processor,
In the process of verifying the detection result, generating a confusion matrix based on the detection result of the game navigator and the output result of the neural network-based verification model, and determining the verification result of the detection result based on the confusion matrix,
Game navigator detection device.
메모리 및 프로세서를 포함하고,
상기 메모리는 상기 프로세서에 의해 실행 가능한 인스트럭션들을 저장하고,
상기 인스트럭션들이 상기 프로세서에 의해 실행될 때, 상기 프로세서는,
게임 재화의 거래와 관련된 로그 데이터에 기초하여 거래 네트워크 데이터를 생성하고,
상기 거래 네트워크 데이터에 포함된 노드들 간의 연결 관계에 기초한 복수의 특징들 중에서 기준 특징을 선택하고,
상기 기준 특징에 기초하여 클러스터링을 수행하는 것에 의해 게임 유저들을 분류하고,
뉴럴 네트워크 기반의 검증 모델을 이용하여 상기 분류 결과를 검증하고,
상기 검증 결과가 미리 설정된 조건을 만족시키지 않는 경우, 상기 기준 특징을 다른 기준 특징으로 변경하고,
상기 변경된 기준 특징에 기초하여 클러스터링을 수행하는 것에 의해 게임 어뷰저를 검출하고,
상기 게임 어뷰저의 검출 결과를 검증하고,
상기 프로세서는,
상기 검출 결과를 검증하는 과정에서, 상기 게임 어뷰저의 검출 결과와 뉴럴 네트워크 기반의 검증 모델의 출력 결과에 기초하여 혼동 행렬을 생성하고,상기 혼동 행렬에 기초하여 상기 검출 결과의 검증 결과를 결정하는,
게임 어뷰저 검출 장치.In the game navigator detection device,
Memory and processor,
The memory stores instructions executable by the processor,
When the instructions are executed by the processor, the processor
Generate trading network data based on log data related to trading of game goods,
Selecting a reference feature from among a plurality of features based on a connection relationship between nodes included in the transaction network data,
Classify game users by performing clustering based on the reference feature,
The classification results are verified using a neural network based verification model,
If the verification result does not satisfy a preset condition, change the reference feature to another reference feature,
Detect a game navigator by performing clustering based on the changed reference feature,
Verify the detection result of the game advisor,
The processor,
In the process of verifying the detection result, generating a confusion matrix based on the detection result of the game navigator and the output result of the neural network-based verification model, and determining the verification result of the detection result based on the confusion matrix,
Game navigator detection device.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20180121279 | 2018-10-11 | ||
KR1020180121279 | 2018-10-11 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190132866A Division KR20200041288A (en) | 2018-10-11 | 2019-10-24 | Method and apparatus for detecting game abuser |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102038957B1 true KR102038957B1 (en) | 2019-10-31 |
Family
ID=68420827
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190011029A KR102038957B1 (en) | 2018-10-11 | 2019-01-29 | Method and apparatus for detecting game abuser |
KR1020190132866A KR20200041288A (en) | 2018-10-11 | 2019-10-24 | Method and apparatus for detecting game abuser |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190132866A KR20200041288A (en) | 2018-10-11 | 2019-10-24 | Method and apparatus for detecting game abuser |
Country Status (1)
Country | Link |
---|---|
KR (2) | KR102038957B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210067160A (en) * | 2019-11-29 | 2021-06-08 | 넷마블 주식회사 | Method for game data processing |
KR20220043309A (en) * | 2020-09-29 | 2022-04-05 | 넷마블 주식회사 | Method for recommending game goods |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100902466B1 (en) | 2007-10-30 | 2009-06-11 | 엔에이치엔비즈니스플랫폼 주식회사 | System and Method for Tracking a Keyword Search Abuser |
KR101074624B1 (en) | 2008-11-03 | 2011-10-17 | 엔에이치엔비즈니스플랫폼 주식회사 | Method and system for protecting abusinng based browser |
KR20120080400A (en) * | 2011-01-07 | 2012-07-17 | 주식회사 엔씨소프트 | Apparatus and method of detecting abnormal character in online game based on clustering technique |
KR20130099786A (en) * | 2012-02-29 | 2013-09-06 | 한국전자통신연구원 | Illegal user detecting apparatus and method |
KR101596192B1 (en) * | 2015-01-05 | 2016-02-19 | 주식회사 엔씨소프트 | Method and apparatus for monitoring delinquent degree of characters via analyzing respective trade in on-line game |
-
2019
- 2019-01-29 KR KR1020190011029A patent/KR102038957B1/en active IP Right Grant
- 2019-10-24 KR KR1020190132866A patent/KR20200041288A/en unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100902466B1 (en) | 2007-10-30 | 2009-06-11 | 엔에이치엔비즈니스플랫폼 주식회사 | System and Method for Tracking a Keyword Search Abuser |
KR101074624B1 (en) | 2008-11-03 | 2011-10-17 | 엔에이치엔비즈니스플랫폼 주식회사 | Method and system for protecting abusinng based browser |
KR20120080400A (en) * | 2011-01-07 | 2012-07-17 | 주식회사 엔씨소프트 | Apparatus and method of detecting abnormal character in online game based on clustering technique |
KR20130099786A (en) * | 2012-02-29 | 2013-09-06 | 한국전자통신연구원 | Illegal user detecting apparatus and method |
KR101596192B1 (en) * | 2015-01-05 | 2016-02-19 | 주식회사 엔씨소프트 | Method and apparatus for monitoring delinquent degree of characters via analyzing respective trade in on-line game |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210067160A (en) * | 2019-11-29 | 2021-06-08 | 넷마블 주식회사 | Method for game data processing |
KR102333941B1 (en) * | 2019-11-29 | 2021-12-01 | 넷마블 주식회사 | Method for game data processing |
KR20220043309A (en) * | 2020-09-29 | 2022-04-05 | 넷마블 주식회사 | Method for recommending game goods |
KR102428087B1 (en) * | 2020-09-29 | 2022-08-01 | 넷마블 주식회사 | Method for recommending game goods |
Also Published As
Publication number | Publication date |
---|---|
KR20200041288A (en) | 2020-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10430727B1 (en) | Systems and methods for privacy-preserving generation of models for estimating consumer behavior | |
US10783457B2 (en) | Method for determining risk preference of user, information recommendation method, and apparatus | |
KR102211278B1 (en) | Online platform for probability based technology valuation using collective intelligence and realtime artificial intelligence | |
US20180240037A1 (en) | Training and estimation of selection behavior of target | |
KR102038957B1 (en) | Method and apparatus for detecting game abuser | |
US20120022920A1 (en) | Eliciting customer preference from purchasing behavior surveys | |
KR101998294B1 (en) | Apparatus and method for detection of gold farmer group account | |
US20060085249A1 (en) | Method and apparatus for mining patent data | |
KR102188760B1 (en) | Apparatus and method of detecting abnormal game account | |
Ramasubramanian et al. | Machine learning model evaluation | |
KR20190103688A (en) | Customer classification method and system using frm and k-means algorithm | |
CN111144899A (en) | Method and device for identifying false transactions and electronic equipment | |
US10242068B1 (en) | Methods and systems for ranking leads based on given characteristics | |
CN108985755B (en) | Account state identification method and device and server | |
KR102258078B1 (en) | Method and apparatus for determining abnormal user | |
JP7426027B2 (en) | Business classification device, method, program, business evaluation system and credit risk evaluation system | |
CN110544166A (en) | Sample generation method, device and storage medium | |
CN109460778A (en) | Active evaluation method, apparatus, electronic equipment and storage medium | |
Ilgun et al. | Application of Ann in Australian credit card approval | |
Wang et al. | A cross-entropy based feature selection method for binary valued data classification | |
Chavez et al. | Deploying massive runs of evolutionary algorithms with ECJ and Hadoop: Reducing interest points required for face recognition | |
KR102271236B1 (en) | Method and apparatus for detecting abnormal user | |
Kalra et al. | Cooperative monitoring of malicious activity in stock exchanges | |
Chang et al. | PSO based time series models applied in exchange rate forecasting for business performance management | |
Park et al. | Cashflow tracing: Detecting online game bots leveraging financial analysis with recurrent neural networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
A107 | Divisional application of patent | ||
GRNT | Written decision to grant |