KR20210000186A - Method for extracting feature of character and apparatus for executing the method - Google Patents

Method for extracting feature of character and apparatus for executing the method Download PDF

Info

Publication number
KR20210000186A
KR20210000186A KR1020190075187A KR20190075187A KR20210000186A KR 20210000186 A KR20210000186 A KR 20210000186A KR 1020190075187 A KR1020190075187 A KR 1020190075187A KR 20190075187 A KR20190075187 A KR 20190075187A KR 20210000186 A KR20210000186 A KR 20210000186A
Authority
KR
South Korea
Prior art keywords
vector
character
item
action
sequence
Prior art date
Application number
KR1020190075187A
Other languages
Korean (ko)
Other versions
KR102283238B1 (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 KR1020190075187A priority Critical patent/KR102283238B1/en
Publication of KR20210000186A publication Critical patent/KR20210000186A/en
Application granted granted Critical
Publication of KR102283238B1 publication Critical patent/KR102283238B1/en

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/58Controlling game characters or game objects based on the game progress by computing conditions of game characters, e.g. stamina, strength, motivation or energy level
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/537Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/69Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor by enabling or updating specific game elements, e.g. unlocking hidden features, items, levels or versions
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/77Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Processing Or Creating Images (AREA)

Abstract

Disclosed are a method for extracting a feature of a character, and a device for executing the same. According to one embodiment, the disclosed method for extracting a feature of a character is the method executed in a computing device having one or more processors and a memory having one or more programs executed by the processors and comprises: operation of obtaining a generated game log of a character in a game; operation of extracting a behavior sequence of the character and a time interval sequence between behavior of the character based on the game log; and operation of generating a behavior sequence vector of the character based on the behavior sequence and the time interval sequence.

Description

캐릭터 특징 추출 방법 및 이를 수행하기 위한 장치{METHOD FOR EXTRACTING FEATURE OF CHARACTER AND APPARATUS FOR EXECUTING THE METHOD}Character feature extraction method and device for performing it {METHOD FOR EXTRACTING FEATURE OF CHARACTER AND APPARATUS FOR EXECUTING THE METHOD}

개시되는 실시예는 캐릭터 특징 추출 기술과 관련된다.The disclosed embodiment relates to a character feature extraction technique.

최근 게임은 게이밍 디바이스 내에서만 실행되는 로컬 게임에서 네트워크를 통해 다른 게이밍 디바이스나 서버와의 연동을 통해 실행되는 온라인 게임 등 다양한 방식으로 진화하고 있다. 또한, 하드웨어 성능 및 네트워크 기술의 향상에 따라 개인용 컴퓨터나 게임 콘솔뿐 아니라 스마트폰(Smart Phone), 타블렛(Tablet) PC 등과 같은 모바일 장치에서도 게임이 실행 가능하도록 진화하고 있다.Recently, games are evolving in a variety of ways, from local games that run only within a gaming device to online games that run through interlocking with other gaming devices or servers through a network. In addition, with the improvement of hardware performance and network technology, games are evolving not only to personal computers and game consoles, but also to mobile devices such as smart phones and tablet PCs.

개시되는 실시예는 캐릭터 특징 추출과 관련된 새로운 기법을 제공하기 위한 것이다.The disclosed embodiment is to provide a new technique related to character feature extraction.

개시되는 일 실시예에 따른 캐릭터 특징 추출 방법은, 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치에서 수행되는 방법으로서, 게임 내 캐릭터에 대해 발생하는 게임 로그를 획득하는 동작; 상기 게임 로그를 기반으로 상기 캐릭터의 행동 시퀀스 및 상기 캐릭터의 각 행동 사이의 시간 간격 시퀀스를 추출하는 동작; 및 상기 행동 시퀀스 및 시간 간격 시퀀스를 기반으로 상기 캐릭터의 행동 시퀀스 벡터를 생성하는 동작을 포함한다.A method for extracting character features according to the disclosed embodiment is a method performed in a computing device having one or more processors, and a memory for storing one or more programs executed by the one or more processors, comprising: Obtaining a game log generated for the game; Extracting an action sequence of the character and a sequence of time intervals between each action of the character based on the game log; And generating an action sequence vector of the character based on the action sequence and the time interval sequence.

상기 행동 시퀀스를 추출하는 동작은, 상기 게임 로그에서 상기 캐릭터의 행동 식별 정보를 순차적으로 배열하여 상기 캐릭터의 행동 시퀀스를 추출하고, 상기 각 행동 사이의 시간 간격 시퀀스를 추출하는 동작은, 상기 게임 로그에서 상기 캐릭터의 각 행동 사이의 시간 간격을 산출하고, 상기 산출한 시간 간격을 순차적으로 배열하여 상기 시간 간격 시퀀스를 추출할 수 있다.The operation of extracting the action sequence includes sequentially arranging the action identification information of the character in the game log to extract the action sequence of the character, and extracting the time interval sequence between the actions, the game log At, a time interval between each action of the character is calculated, and the calculated time intervals are sequentially arranged to extract the time interval sequence.

상기 행동 시퀀스 벡터를 생성하는 동작은, 상기 행동 시퀀스 내 각 행동에 대한 행동 벡터를 생성하는 동작; 및 상기 행동 벡터를 순차적으로 연결하여 행동 시퀀스 벡터를 생성하는 동작을 포함할 수 있다.The operation of generating the action sequence vector may include: generating an action vector for each action in the action sequence; And generating an action sequence vector by sequentially connecting the action vectors.

상기 행동 벡터를 생성하는 동작은, 상기 행동 시퀀스 내 기 설정된 크기의 윈도우에서 타겟 행동과 인접한 행동들 및 상기 타겟 행동과 상기 인접한 행동들 사이의 시간 간격을 기반으로 상기 타겟 행동에 대한 행동 벡터를 생성할 수 있다.The operation of generating the action vector generates a action vector for the target action based on a target action and adjacent actions in a window of a predetermined size in the action sequence and a time interval between the target action and the adjacent actions can do.

상기 타겟 행동에 대한 행동 벡터를 생성하는 동작은, 상기 타겟 행동과 인접한 행동들의 원 핫 벡터를 각각 산출하는 동작; 및 상기 타겟 행동과 인접한 행동들의 원 핫 벡터 및 상기 타겟 행동과 상기 인접한 행동들 사이의 시간 간격을 기계 학습 모델의 입력 값으로 하여 상기 타겟 행동에 대한 행동 벡터를 생성하는 동작을 포함할 수 있다.The generating of the action vector for the target action may include: calculating a one-hot vector of the target action and adjacent actions; And generating an action vector for the target action by using a one-hot vector of the target action and adjacent actions and a time interval between the target action and the adjacent actions as input values of the machine learning model.

상기 타겟 행동과 상기 인접한 행동들 사이의 시간 간격은, 상기 원 핫 벡터의 인덱스 값의 가중치로 적용될 수 있다.The time interval between the target action and the adjacent actions may be applied as a weight of the index value of the one hot vector.

상기 캐릭터 특징 추출 방법은, 상기 캐릭터의 행동 시퀀스 벡터를 각각 기 설정된 사이즈로 압축하는 동작을 더 포함할 수 있다.The character feature extraction method may further include an operation of compressing the action sequence vector of the character into a preset size, respectively.

상기 캐릭터 특징 추출 방법은, 상기 캐릭터가 착용하는 아이템에 대한 아이템 착용 정보를 획득하는 동작; 상기 아이템 착용 정보에 기반하여 상기 캐릭터가 착용하는 각 아이템에 대해 아이템 벡터를 생성하는 동작; 및 상기 아이템 벡터를 연결하여 상기 캐릭터의 아이템 착용 벡터를 생성하는 동작을 더 포함할 수 있다.The character feature extraction method includes: obtaining item wearing information for an item worn by the character; Generating an item vector for each item worn by the character based on the item wearing information; And generating an item wearing vector of the character by connecting the item vectors.

상기 아이템 벡터를 생성하는 동작은, 상기 아이템 착용 정보를 기반으로 상기 캐릭터에 대한 착용 아이템 목록을 생성하는 동작; 상기 착용 아이템 목록에서 아이템들을 기 설정된 착용 위치의 순서대로 배열하는 동작; 및 상기 착용 아이템 목록에서 기 설정된 크기의 윈도우를 순차적으로 이동해가면서 각 아이템에 대한 아이템 벡터를 생성하는 동작을 포함할 수 있다.The generating of the item vector may include generating a list of worn items for the character based on the item wearing information; Arranging items in the order of a preset wearing position in the wearing item list; And generating an item vector for each item while sequentially moving a window of a preset size in the worn item list.

상기 캐릭터 특징 추출 방법은, 상기 착용 아이템 목록에서 각 아이템 벡터를 연결하여 아이템 착용 벡터를 생성하는 동작; 및 상기 행동 시퀀스 벡터 및 상기 아이템 착용 벡터를 결합하여 상기 캐릭터의 특징 벡터를 생성하는 동작을 더 포함할 수 있다.The character feature extraction method includes: generating an item wearing vector by connecting each item vector in the wearing item list; And generating a feature vector of the character by combining the behavior sequence vector and the item wearing vector.

개시되는 다른 실시예에 따른 캐릭터 특징 추출 방법은, 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치에서 수행되는 방법으로서, 게임 내 캐릭터가 착용하는 아이템에 대한 아이템 착용 정보를 획득하는 동작; 상기 아이템 착용 정보에 기반하여 상기 캐릭터가 착용하는 각 아이템에 대해 아이템 벡터를 생성하는 동작; 및 상기 아이템 벡터를 연결하여 상기 캐릭터의 아이템 착용 벡터를 생성하는 동작을 포함한다.A method for extracting character features according to another disclosed embodiment is a method performed in a computing device having one or more processors, and a memory storing one or more programs executed by the one or more processors, wherein a character in a game is Obtaining item wearing information for an item to be worn; Generating an item vector for each item worn by the character based on the item wearing information; And generating an item wearing vector of the character by connecting the item vectors.

개시되는 일 실시예에 따른 컴퓨팅 장치는, 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치로서, 게임 내 캐릭터에 대해 발생하는 게임 로그를 획득하고, 상기 게임 로그를 기반으로 상기 캐릭터의 행동 시퀀스 및 상기 캐릭터의 각 행동 사이의 시간 간격 시퀀스를 추출하는 시퀀스 추출부; 및 상기 행동 시퀀스 및 시간 간격 시퀀스를 기반으로 상기 캐릭터의 행동 시퀀스 벡터를 생성하는 행동 시퀀스 벡터 생성부를 포함한다.A computing device according to an embodiment disclosed is a computing device having one or more processors and a memory for storing one or more programs executed by the one or more processors, and includes a game log generated for a character in a game. A sequence extracting unit that acquires and extracts an action sequence of the character and a time interval sequence between each action of the character based on the game log; And an action sequence vector generator that generates an action sequence vector of the character based on the action sequence and the time interval sequence.

상기 시퀀스 추출부는, 상기 게임 로그에서 상기 캐릭터의 행동 식별 정보를 순차적으로 배열하여 상기 캐릭터의 행동 시퀀스를 추출하는 행동 시퀀스 추출부; 및 상기 게임 로그에서 상기 캐릭터의 각 행동 사이의 시간 간격을 산출하고, 상기 산출한 시간 간격을 순차적으로 배열하여 상기 시간 간격 시퀀스를 추출하는 시간 간격 시퀀스 추출부를 포함할 수 있다.The sequence extracting unit may include an action sequence extracting unit for extracting an action sequence of the character by sequentially arranging action identification information of the character from the game log; And a time interval sequence extractor configured to extract the time interval sequence by calculating a time interval between each action of the character in the game log, and sequentially arranging the calculated time intervals.

상기 행동 시퀀스 벡터 생성부는, 상기 행동 시퀀스 내 각 행동에 대한 행동 벡터를 생성하고, 상기 행동 벡터를 순차적으로 연결하여 행동 시퀀스 벡터를 생성할 수 있다.The action sequence vector generator may generate action vectors for each action in the action sequence, and sequentially connect the action vectors to generate action sequence vectors.

상기 행동 시퀀스 벡터 생성부는, 상기 행동 시퀀스 내 기 설정된 크기의 윈도우에서 타겟 행동과 인접한 행동들 및 상기 타겟 행동과 상기 인접한 행동들 사이의 시간 간격을 기반으로 상기 타겟 행동에 대한 행동 벡터를 생성할 수 있다.The action sequence vector generator may generate a action vector for the target action based on a target action and adjacent actions in a window having a preset size in the action sequence and a time interval between the target action and the adjacent actions. have.

상기 행동 시퀀스 벡터 생성부는, 상기 타겟 행동과 인접한 행동들의 원 핫 벡터를 각각 산출하고, 상기 타겟 행동과 인접한 행동들의 원 핫 벡터 및 상기 타겟 행동과 상기 인접한 행동들 사이의 시간 간격을 기계 학습 모델의 입력 값으로 하여 상기 타겟 행동에 대한 행동 벡터를 생성할 수 있다.The action sequence vector generation unit calculates a one-hot vector of the target action and adjacent actions, respectively, and determines the one hot vector of the target action and adjacent actions, and a time interval between the target action and the adjacent actions of the machine learning model. As an input value, a behavior vector for the target behavior may be generated.

상기 행동 시퀀스 벡터 생성부는, 상기 타겟 행동과 상기 인접한 행동들 사이의 시간 간격을 상기 원 핫 벡터의 인덱스 값의 가중치로 적용할 수 있다.The action sequence vector generator may apply a time interval between the target action and the adjacent actions as a weight of the index value of the one hot vector.

상기 컴퓨팅 장치는, 상기 캐릭터의 행동 시퀀스 벡터를 기 설정된 사이즈로 압축하는 벡터 압축부를 더 포함할 수 있다.The computing device may further include a vector compression unit for compressing the action sequence vector of the character to a preset size.

상기 컴퓨팅 장치는, 상기 캐릭터가 착용하는 아이템에 대한 아이템 착용 정보를 획득하고, 상기 아이템 착용 정보에 기반하여 상기 캐릭터가 착용하는 각 아이템에 대해 아이템 벡터를 생성하며, 상기 아이템 벡터를 연결하여 상기 캐릭터의 아이템 착용 벡터를 생성하는 아이템 착용 벡터 생성부를 더 포함할 수 있다.The computing device obtains item wearing information for an item worn by the character, generates an item vector for each item worn by the character based on the item wearing information, and connects the item vector to the character It may further include an item wearing vector generation unit that generates an item wearing vector of.

상기 아이템 착용 벡터 생성부는, 상기 아이템 착용 정보를 기반으로 상기 캐릭터에 대한 착용 아이템 목록을 생성하고, 상기 착용 아이템 목록에서 아이템들을 기 설정된 착용 위치의 순서대로 배열하며, 상기 착용 아이템 목록에서 기 설정된 크기의 윈도우를 순차적으로 이동해가면서 각 아이템에 대한 아이템 벡터를 생성할 수 있다.The item wearing vector generator generates a wearing item list for the character based on the item wearing information, arranges items in the order of a preset wearing position in the wearing item list, and a preset size in the wearing item list You can create an item vector for each item by sequentially moving the window of.

개시되는 실시예에 의하면, 게임 내 캐릭터의 행동, 착용 아이템, 지역 이동 정보 등을 기반으로 캐릭터의 특징 벡터를 생성함으로써, 게임 내 캐릭터들의 성향을 파악할 수 있으며, 각 캐릭터들의 성향을 통해 악성 유저 탐지, 이탈 유저 예측 등을 수행할 수 있게 된다. 또한, 캐릭터의 특징 벡터를 이용하면 비슷한 성향을 가진 캐릭터들끼리 군집을 형성할 수 있으며 이를 이용하여 다양한 고객 세그먼테이션을 수행할 수 있게 된다.According to the disclosed embodiment, by generating a feature vector of a character based on the in-game character's behavior, wearing items, and area movement information, it is possible to grasp the inclinations of the characters in the game, and to detect malicious users through the inclinations of each character. , It is possible to perform a departure user prediction, and the like. In addition, if the feature vector of the character is used, a cluster can be formed between characters having similar tendencies, and various customer segmentation can be performed using this.

도 1은 예시적인 일 실시예에 따른 캐릭터 특징 추출 장치의 구성을 나타낸 블록도이다.
도 2는 예시적인 실시예에서 게임 로그를 기반으로 캐릭터의 행동 시퀀스 및 시간 간격 시퀀스를 추출하는 상태를 나타낸 도면이다.
도 3은 예시적인 실시예에서 행동 시퀀스 벡터 생성부가 캐릭터의 각 행동에 대해 행동 벡터를 생성하는 상태를 설명하기 위한 도면이다.
도 4는 예시적인 실시예에서 각 캐릭터 별로 행동 시퀀스로부터 행동 시퀀스 벡터를 생성한 상태를 나타낸 도면이다.
도 5는 예시적인 일 실시예에서 유사한 행동 시퀀스 벡터를 갖는 캐릭터들끼리 군집을 형성하는 상태를 나타낸 도면이다.
도 6은 예시적인 실시예에서 각 캐릭터 별로 착용 아이템 목록에서 아이템 착용 벡터를 생성한 상태를 나타낸 도면이다.
도 7은 본 발명의 일 실시예에 따른 캐릭터 특징 방법을 설명하기 위한 흐름도이다.
도 8은 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도이다.
Fig. 1 is a block diagram showing a configuration of an apparatus for extracting character features according to an exemplary embodiment.
Fig. 2 is a diagram showing a state in which an action sequence and a time interval sequence of a character are extracted based on a game log in an exemplary embodiment.
FIG. 3 is a diagram for explaining a state in which an action sequence vector generation unit generates an action vector for each action of a character in an exemplary embodiment.
4 is a diagram showing a state in which an action sequence vector is generated from an action sequence for each character in an exemplary embodiment.
Fig. 5 is a diagram showing a state in which characters having a similar action sequence vector form a cluster in an exemplary embodiment.
6 is a diagram illustrating a state in which an item wearing vector is generated from a list of worn items for each character in an exemplary embodiment.
7 is a flowchart illustrating a character feature method according to an embodiment of the present invention.
8 is a block diagram illustrating and describing a computing environment including a computing device suitable for use in example embodiments.

이하, 도면을 참조하여 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 이에 제한되지 않는다.Hereinafter, a specific embodiment will be described with reference to the drawings. The following detailed description is provided to aid in a comprehensive understanding of the methods, devices, and/or systems described herein. However, this is only an example and is not limited thereto.

상세한 설명에서 사용되는 용어는 단지 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 명세서에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.The terms used in the detailed description are only for describing the embodiments and should not be limiting. Unless explicitly used otherwise, expressions in the singular form include the meaning of the plural form. In this specification, expressions such as "comprising" or "feature" are intended to refer to certain features, numbers, steps, actions, elements, some or combination thereof, and one or more It should not be construed to exclude the presence or possibility of other features, numbers, steps, actions, elements, any part or combination thereof.

이하의 설명에 있어서, 신호 또는 정보의 "전송", "통신", "송신", "수신" 기타 이와 유사한 의미의 용어는 일 구성요소에서 다른 구성요소로 신호 또는 정보가 직접 전달되는 것뿐만이 아니라 다른 구성요소를 거쳐 전달되는 것도 포함한다. 특히 신호 또는 정보를 일 구성요소로 "전송" 또는 "송신"한다는 것은 그 신호 또는 정보의 최종 목적지를 지시하는 것이고 직접적인 목적지를 의미하는 것이 아니다. 이는 신호 또는 정보의 "수신"에 있어서도 동일하다. 또한 본 명세서에 있어서, 2 이상의 데이터 또는 정보가 "관련"된다는 것은 하나의 데이터(또는 정보)를 획득하면, 그에 기초하여 다른 데이터(또는 정보)의 적어도 일부를 획득할 수 있음을 의미한다. In the following description, "transmission", "communication", "transmission", "reception" of signals or information, and other terms having a similar meaning are not only directly transmitted signals or information from one component to another component. It includes what is passed through other components. In particular, "transmitting" or "transmitting" a signal or information to a component indicates the final destination of the signal or information and does not imply a direct destination. The same is true for "reception" of signals or information. In addition, in the present specification, when two or more pieces of data or information are "related", it means that when one data (or information) is obtained, at least a part of other data (or information) can be obtained based thereon.

또한, 제1, 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 제1 구성 요소는 제2 구성 요소로 명명될 수 있고, 유사하게 제2 구성 요소도 제1 구성 요소로 명명될 수 있다.In addition, terms such as first and second may be used to describe various components, but the components should not be limited by the terms. These terms may be used for the purpose of distinguishing one component from another component. For example, a first component may be referred to as a second component, and similarly, a second component may be referred to as a first component.

이하에서 "게임"이란, 한 명 또는 그 이상의 게이머들이 게이밍 디바이스에 탑재되거나 연결된 입력장치를 이용하여 즐길 수 있는 소프트웨어를 의미한다. 통상 플레이어 캐릭터를 직접 조작하거나, 게임 내 오브젝트의 움직임을 조작하는 등의 방식으로 진행되며, 롤플레잉, 어드벤쳐, 아케이드 등으로 장르가 구분되기도 한다.Hereinafter, "game" means software that one or more gamers can enjoy using an input device mounted on or connected to a gaming device. Usually, the player character is directly manipulated or the movement of objects in the game is manipulated, and the genre is divided into role-playing, adventure, and arcade.

이하에서 "게이밍 디바이스"란 게임 소프트웨어를 실행하되 입력장치를 통한 사용자의 입력에 따라 연산을 수행하며, 출력장치를 통해 결과를 출력하는 하드웨어를 의미한다. 예컨대, 개인용 컴퓨터(Personal Computer), 랩탑(Laptop Computer), 게임 콘솔(Game Console), 스마트폰(Smart Phone), 타블렛(Tablet) PC, 스마트 밴드(Smart Band)나 스마트 와치(Smart Watch) 등의 웨어러블 디바이스(Wearable Device)의 형태일 수 있다. 이외에도 상기 정의를 만족하는 하드웨어라면 게이밍 디바이스에 속하는 것으로 해석된다.Hereinafter, “gaming device” refers to hardware that executes game software, performs an operation according to a user's input through an input device, and outputs a result through an output device. For example, Personal Computer, Laptop Computer, Game Console, Smart Phone, Tablet PC, Smart Band or Smart Watch, etc. It may be in the form of a wearable device. In addition, any hardware that satisfies the above definition is interpreted as belonging to a gaming device.

이하에서 "온라인 게임"이란, 게임의 플레이를 위하여 네트워크를 경유하여야 하는 게임을 의미한다. 통상 원격지의 둘 이상의 게이밍 디바이스가 네트워크를 통해 서로 연결되거나, 서버를 통해 동기화되어 즐기는 게임을 의미한다. 상기의 정의를 만족하는 것이라면 게임을 실행하는 게이밍 디바이스의 형태에 제한을 두지 아니한다. 개인용 컴퓨터나 게임 콘솔에서 실행되는 게임뿐만 아니라, 스마트폰과 같은 모바일에서 실행되는 게임, 또는 서로 다른 복수개의 게이밍 디바이스(서로 다른 종류의 게이밍 디바이스도 포함한다)가 연동되거나 클라우드에서 실행되는 게임 또한 상기 정의를 만족하는 것이라면 온라인 게임에 속하는 것으로 해석된다.Hereinafter, the term "online game" means a game that must be passed through a network in order to play the game. Usually, two or more gaming devices in a remote location are connected to each other through a network or synchronized through a server to mean a game to be enjoyed. If it satisfies the above definition, there is no restriction on the type of gaming device that executes the game. In addition to games running on personal computers or game consoles, games running on mobile devices such as smartphones, or games running in the cloud or in conjunction with a plurality of different gaming devices (including different types of gaming devices) are also mentioned above. Anything that satisfies the definition is interpreted as belonging to an online game.

이하에서 "입력장치(Input Device)"란, 게이밍 디바이스에 데이터를 입력하기 위한 장치를 의미한다. 예컨대, 조이스틱, 마우스, 키보드, 터치스크린, 하드웨어 버튼 또는 스티어링 휠, 악기, 총, 장갑, 발판 등의 형태로 제조된 게임 조작 전용 입력장치를 들 수 있다. 이외에도 게이밍 디바이스에 탑재되거나 연동되는 각종 센서(온도 센서, 적외선 센서, 모션센서, 자이로센서, 가속도 센서, 중력 센서 등)나 글로벌 포지셔닝 시스템(GPS; Global Positioning System), 실내 위치 확인 시스템(Indoor Positioning System) 등의 위치 확인 수단 또한 입력장치의 일 예로 들 수 있다.Hereinafter, the "input device" refers to a device for inputting data to a gaming device. For example, a joystick, a mouse, a keyboard, a touch screen, a hardware button or an input device exclusively for game operation manufactured in the form of a steering wheel, a musical instrument, a gun, gloves, or a footrest. In addition, various sensors (temperature sensor, infrared sensor, motion sensor, gyro sensor, acceleration sensor, gravity sensor, etc.) mounted or interlocked with gaming devices, global positioning system (GPS), indoor positioning system ), etc. may also be an example of an input device.

도 1은 예시적인 일 실시예에 따른 캐릭터 특징 추출 장치의 구성을 나타낸 블록도이다. Fig. 1 is a block diagram showing a configuration of an apparatus for extracting character features according to an exemplary embodiment.

도 1을 참조하면, 캐릭터 특징 추출 장치(100)는 시퀀스 추출부(102), 행동 시퀀스 벡터 생성부(104), 벡터 압축부(106), 아이템 착용 벡터 생성부(108), 및 캐릭터 특징 벡터 생성부(110)를 포함할 수 있다. 캐릭터 특징 추출 장치(100)는 게임 내 각 유저들의 캐릭터의 특징을 추출하기 위한 장치로서, 각 유저들의 캐릭터에 대해 캐릭터 특징 벡터를 생성할 수 있다.Referring to FIG. 1, the character feature extraction device 100 includes a sequence extraction unit 102, an action sequence vector generation unit 104, a vector compression unit 106, an item wearing vector generation unit 108, and a character feature vector. It may include a generator 110. The character feature extraction device 100 is a device for extracting features of characters of each user in a game, and may generate a character feature vector for each user's character.

일 실시예에서, 시퀀스 추출부(102), 행동 시퀀스 벡터 생성부(104), 벡터 압축부(106), 아이템 착용 벡터 생성부(108), 및 캐릭터 특징 벡터 생성부(110)는 물리적으로 구분된 하나 이상의 장치를 이용하여 구현되거나, 하나 이상의 프로세서 또는 하나 이상의 프로세서 및 소프트웨어의 결합에 의해 구현될 수 있으며, 도시된 예와 달리 구체적 동작에 있어 명확히 구분되지 않을 수 있다.In one embodiment, the sequence extraction unit 102, the action sequence vector generation unit 104, the vector compression unit 106, the item wearing vector generation unit 108, and the character feature vector generation unit 110 are physically separated. It may be implemented using one or more devices, or may be implemented by one or more processors or a combination of one or more processors and software, and may not be clearly distinguished in a specific operation unlike the illustrated example.

시퀀스 추출부(102)는 게임 내 유저의 캐릭터에 대해 발생하는 게임 로그를 획득할 수 있다. 게임 로그는 유저가 게임을 수행할 때 유저의 캐릭터가 수행한 행동 및 관련 이벤트 정보가 기록되는 로그일 수 있다. 게임 로그는 예를 들어, 캐릭터 정보, 해당 게임의 게임 계정, 캐릭터의 행동 및 이벤트 종류, 캐릭터의 행동 수행 시간, 캐릭터의 수행 위치(예를 들어, 지역 ID 또는 던전 ID 등) 등을 포함할 수 있다.The sequence extraction unit 102 may obtain a game log generated for a user's character in the game. The game log may be a log in which information about an action performed by a user's character and related event information is recorded when a user plays a game. The game log may include, for example, character information, the game account of the corresponding game, the character's action and event type, the character's action execution time, the character's performance location (e.g., area ID or dungeon ID, etc.). have.

시퀀스 추출부(102)는 게임 로그를 기반으로 해당 캐릭터의 행동 시퀀스 및 해당 캐릭터의 각 행동 사이의 시간 간격 시퀀스를 추출할 수 있다. 시퀀스 추출부(102)는 행동 시퀀스 추출부(102a) 및 시간 간격 시퀀스 추출부(102b)를 포함할 수 있다. 도 2는 예시적인 실시예에서 게임 로그를 기반으로 캐릭터의 행동 시퀀스 및 시간 간격 시퀀스를 추출하는 상태를 나타낸 도면이다. The sequence extractor 102 may extract an action sequence of a corresponding character and a sequence of time intervals between each action of the corresponding character based on the game log. The sequence extraction unit 102 may include an action sequence extraction unit 102a and a time interval sequence extraction unit 102b. Fig. 2 is a diagram showing a state in which an action sequence and a time interval sequence of a character are extracted based on a game log in an exemplary embodiment.

도 2를 참조하면, 행동 시퀀스 추출부(102a)는 게임 로그에서 캐릭터의 행동 식별 정보(즉, 캐릭터의 행동 종류)를 추출할 수 있다. 행동 시퀀스 추출부(102a)는 캐릭터의 행동 식별 정보를 순차적으로 배열하여 캐릭터의 행동 시퀀스를 추출할 수 있다. Referring to FIG. 2, the action sequence extracting unit 102a may extract action identification information (ie, action type of the character) of a character from a game log. The action sequence extracting unit 102a may extract the action sequence of the character by sequentially arranging the action identification information of the character.

여기서, 캐릭터의 행동에는 게임 내 캐릭터의 지역 이동이 포함될 수 있다. 즉, 행동 시퀀스 추출부(102a)는 게임 로그에서 캐릭터의 수행 위치(예를 들어, 지역 ID 또는 던전 ID 등)를 추출하고, 이를 기반으로 캐릭터의 지역 이동을 확인할 수 있다. 행동 시퀀스 추출부(102a)는 캐릭터의 지역 이동을 순차적으로 배열하여 캐릭터의 지역 이동에 대한 행동 시퀀스를 추출할 수 있다.Here, the character's behavior may include the movement of the character in the game. That is, the action sequence extraction unit 102a may extract a character's performance position (eg, a region ID or a dungeon ID, etc.) from the game log, and check the movement of the character in a region based on this. The action sequence extracting unit 102a may extract an action sequence for the local movement of the character by sequentially arranging the local movement of the character.

시간 간격 시퀀스 추출부(102b)는 게임 로그에서 캐릭터의 각 행동 사이의 시간 간격을 산출할 수 있다. 시간 간격 시퀀스 추출부(102b)는 캐릭터의 각 행동 사이의 시간 간격을 순차적으로 배열하여 시간 간격 시퀀스를 추출할 수 있다. The time interval sequence extraction unit 102b may calculate a time interval between each action of a character in the game log. The time interval sequence extraction unit 102b may extract a time interval sequence by sequentially arranging the time intervals between each action of the character.

시퀀스 추출부(102)는 표 1에 나타낸 바와 같이, 게임 내 각 캐릭터 별로 행동 시퀀스와 시간 간격 시퀀스를 추출할 수 있다. 그리고, 시퀀스 추출부(102)는 캐릭터 별로 행동 시퀀스와 시간 간격 시퀀스를 매칭하여 저장할 수 있다. As shown in Table 1, the sequence extraction unit 102 may extract an action sequence and a time interval sequence for each character in the game. In addition, the sequence extraction unit 102 may match and store an action sequence and a time interval sequence for each character.

캐릭터Character 행동 시퀀스Action sequence 시간 간격 시퀀스Time interval sequence 캐릭터 ACharacter A [존 퇴장, 존 입장, 퀘스트 획득, 존 퇴장, ...][John Exit, John Entry, Quest Acquisition, John Exit, ...] [1.0, 33.5, 21.9, 2.5, ...][1.0, 33.5, 21.9, 2.5, ...] 캐릭터 BCharacter B [텔레포트, 파티초대, NPC 죽임, 아이템 획득, ...][Teleport, party invitation, NPC killing, item acquisition, ...] [0.3, 2.3, 1.6, 1.4, ...][0.3, 2.3, 1.6, 1.4, ...] 캐릭터 CCharacter C [존 입장, 존 퇴장, PC 죽임, 던전 서버 이동, ...][Enter John, Exit John, Kill PC, Move Dungeon Server, ...] [3.0, 3.6, 0.9, 3.2, ...][3.0, 3.6, 0.9, 3.2, ...] ...... ...... ......

행동 시퀀스 벡터 생성부(104)는 캐릭터의 행동 시퀀스 및 시간 간격 시퀀스를 기반으로 캐릭터의 각 행동에 대한 벡터(이하, 행동 벡터라 지칭할 수 있음)를 생성하고, 행동 벡터를 순차적으로 연결하여 행동 시퀀스 벡터를 생성할 수 있다. 구체적으로, 행동 시퀀스 벡터 생성부(104)는 캐릭터의 행동 시퀀스에서 기 설정된 크기의 윈도우를 순차적으로 이동해가면서 캐릭터의 각 행동에 대한 행동 벡터를 생성할 수 있다. 이때, 캐릭터의 소정 행동(즉, 행동 벡터를 생성하고자 하는 행동으로, 이하 타겟 행동이라 지칭할 수 있음)과 인접한 행동(예를 들어, 타겟 행동의 전에 있었던 행동 및 타겟 행동의 후에 있었던 행동)들의 원 핫 벡터(One Hot Vetcor) 및 타겟 행동과 인접한 행동들 사이의 시간 간격을 기반으로 타겟 행동에 대한 행동 벡터를 생성할 수 있다. The action sequence vector generation unit 104 generates a vector for each action of a character (hereinafter, may be referred to as action vector) based on the action sequence and time interval sequence of the character, and sequentially connects the action vectors to act. Sequence vectors can be created. Specifically, the action sequence vector generation unit 104 may generate action vectors for each action of a character while sequentially moving a window of a preset size in the action sequence of the character. At this time, a predetermined action of the character (i.e., an action to generate an action vector, which can be referred to as a target action hereinafter) and adjacent actions (e.g., actions that occurred before the target action and actions that occurred after the target action) A behavior vector for a target behavior can be generated based on a One Hot Vetcor and a time interval between the target behavior and adjacent behaviors.

예시적인 실시예에서, 행동 시퀀스 벡터 생성부(104)는 기계 학습(Machine Learning) 모델에 의해 캐릭터의 행동 시퀀스에서 각 행동들의 행동 벡터를 생성할 수 있다. 여기서, 행동 시퀀스 내 타겟 행동의 행동 벡터를 산출하기 위해, 타겟 행동과 인접한 행동들의 원 핫 벡터 및 타겟 행동과 인접한 행동들 사이의 시간 간격을 기계 학습 모델의 입력 값으로 사용할 수 있다. In an exemplary embodiment, the action sequence vector generator 104 may generate action vectors of each action in the action sequence of a character using a machine learning model. Here, in order to calculate the action vector of the target action in the action sequence, a one-hot vector of the target action and adjacent actions and a time interval between the target action and adjacent actions may be used as input values of the machine learning model.

도 3은 예시적인 실시예에서 행동 시퀀스 벡터 생성부(104)가 캐릭터의 각 행동에 대해 행동 벡터를 생성하는 상태를 설명하기 위한 도면이다. 도 3의 (a)는 행동 시퀀스 및 시간 간격 시퀀스를 나타낸 도면이고, 도 3의 (b)는 행동 벡터 생성을 위한 기계 학습 모델의 구성을 개략적으로 나타낸 도면이다.FIG. 3 is a diagram for explaining a state in which the action sequence vector generation unit 104 generates action vectors for each action of a character in an exemplary embodiment. FIG. 3A is a diagram showing an action sequence and a time interval sequence, and FIG. 3B is a diagram schematically showing the configuration of a machine learning model for generating a behavior vector.

도 3을 참조하면, 캐릭터의 행동 시퀀스가 [퀘스트 획득, NPC 죽임, 아이템 루팅, 경험치 획득, 퀘스트 종료, 존 퇴장, 월드 입장]이고, 윈도우(W)의 크기가 5인 경우로 가정한다. 이하에서는, 캐릭터의 행동 중 "아이템 루팅"에 대해 행동 벡터를 생성하는 경우에 대해 살펴보기로 한다. Referring to FIG. 3, it is assumed that the character's action sequence is [Quest acquisition, NPC kill, item routing, experience value acquisition, quest end, zone exit, world entry], and the size of the window W is 5. Hereinafter, a case of generating an action vector for "item routing" among the actions of a character will be described.

행동 시퀀스 벡터 생성부(104)는 윈도우(W) 내에서 "아이템 루팅" 이전의 행동(즉, 퀘스트 획득 및 NPC 죽임)과 이후의 행동(즉, 경험치 획득 및 퀘스트 종료)을 추출할 수 있다. 행동 시퀀스 벡터 생성부(104)는 "아이템 루팅" 이전의 행동 및 이후의 행동들의 원 핫 벡터를 기계 학습 모델(MCM)의 입력 값으로 할 수 있다. 기계 학습 모델(MCM)은 행동 시퀀스의 타겟 행동의 윈도우 내 이전 행동 및 이후 행동들의 원 핫 벡터를 입력으로 하였을 때, 타겟 행동의 행동 벡터를 출력하도록 학습된 모델일 수 있다. The action sequence vector generation unit 104 may extract an action before "item routing" (ie, quest acquisition and NPC killing) and subsequent actions (ie, experience value acquisition and quest end) within the window W. The action sequence vector generation unit 104 may use a one-hot vector of actions before and after "item routing" as an input value of the machine learning model (MCM). The machine learning model (MCM) may be a model trained to output a behavior vector of a target behavior when a one-hot vector of previous and subsequent behaviors within a window of the target behavior of the behavior sequence is input.

여기서, 원 핫 벡터는 캐릭터의 행동 집합의 크기를 벡터의 차원으로 하고, 해당 행동의 인덱스에는 1의 값을 부여하고, 다른 행동들의 인덱스에는 0을 부여하는 벡터 표현 방식일 수 있다. 예를 들어, 소정 행동의 원 핫 벡터는 8차원으로 표현되는 것으로 하기로 한다.Here, the one-hot vector may be a vector expression method in which the size of a character's action set is a dimension of a vector, a value of 1 is assigned to an index of a corresponding action, and 0 is assigned to an index of other actions. For example, a one-hot vector of a predetermined action will be expressed in 8 dimensions.

그리고, "아이템 루팅"과 윈도우 내에서 "아이템 루팅"과 인접한 행동들 간의 시간 간격이 인접한 각 행동들의 원 핫 벡터에서 가중치로 적용될 수 있다. 도 3에서 윈도우(W) 내의 행동 시퀀스(퀘스트 획득-NPC 죽임-아이템 루팅-경험치 획득-퀘스트 종료)와 대응되는 시간 간격 시퀀스가 1초-1초-2초-3초인 경우, "아이템 루팅"과 퀘스트 획득 간의 시간 간격은 2초가 되고, "아이템 루팅"과 NPC 죽임 간의 시간 간격은 1초가 되며, "아이템 루팅"과 경험치 획득 간의 시간 간격은 2초가 되고, "아이템 루팅"과 퀘스트 종료 간의 시간 간격은 5초가 된다. 예시적인 실시예에서, "아이템 루팅" 및 "아이템 루팅"과 인접한 행동들 간의 시간 간격(n)은 인접한 각 행동들의 원 핫 벡터의 인덱스 값의 n 제곱승으로 하여 가중치를 줄 수 있다. In addition, a time interval between "item routing" and "item routing" and adjacent actions within a window may be applied as a weight in the one hot vector of each adjacent action. In FIG. 3, when the time interval sequence corresponding to the action sequence in the window (W) (Quest acquisition-NPC kill-Item routing-Experience value acquisition-Quest end) is 1 second-1 second-2 seconds-3 seconds, "item routing" The time interval between acquisition and quest is 2 seconds, the time interval between "rooting an item" and killing an NPC is 1 second, the time interval between "rooting an item" and acquiring experience is 2 seconds, and the time between "rooting an item" and the end of the quest The interval is 5 seconds. In an exemplary embodiment, the time interval (n) between "item routing" and "item routing" and adjacent actions may be weighted as the power of n of the index value of the one hot vector of each adjacent action.

도 3을 보면, 퀘스트 획득의 경우 "아이템 루팅"과의 시간 간격이 2초 이므로 원 핫 벡터가 [0, 0, 0.82, 0, 0, 0, 0, 0]이 되고, NPC 죽임의 경우 "아이템 루팅"과의 시간 간격이 1초 이므로 원 핫 벡터가 [0, 0, 0, 0.81, 0, 0, 0, 0]이 되며, 경험치 획득의 경우 "아이템 루팅"과의 시간 간격이 2초이므로 원 핫 벡터가 [0, 0, 0, 0, 0, 0.82, 0, 0]이 되며, 퀘스트 종료의 경우 "아이템 루팅"과의 시간 간격이 5초 이므로 원 핫 벡터가 [0, 0, 0, 0, 0, 0, 0.85, 0]이 된다. 이러한 인접 행동들의 원 핫 벡터를 기계 학습 모델(MCM)로 입력하면, "아이템 루팅"에 대한 행동 벡터가 출력될 수 있다. 여기서는, 시간 간격에 따른 가중치를 부여하기 위해 원 핫 벡터의 인덱스 값을 1이 아닌 0.8을 일 예로 사용하였다. 3, in the case of quest acquisition, since the time interval with "item routing" is 2 seconds, the one-hot vector becomes [0, 0, 0.8 2 , 0, 0, 0, 0, 0], and in the case of NPC killing Since the time interval with "item routing" is 1 second, the one hot vector becomes [0, 0, 0, 0.8 1 , 0, 0, 0, 0], and in case of acquiring experience, the time interval with "item routing" is Since it is 2 seconds, the one hot vector becomes [0, 0, 0, 0, 0, 0.8 2 , 0, 0], and in the case of the quest end, the time interval with "item routing" is 5 seconds, so the one hot vector is [0] , 0, 0, 0, 0, 0, 0.8 5 , 0]. When the one-hot vector of these adjacent actions is input as a machine learning model (MCM), a action vector for "item routing" may be output. Here, in order to assign a weight according to the time interval, the index value of the one hot vector is not 1 but 0.8 is used as an example.

이와 같이, 행동 시퀀스 내에서 타겟 행동과 인접한 행동들(즉, 해당 행동과 시간적 선후 관계가 있는 행동들)을 이용하여 타겟 행동에 대한 행동 벡터를 생성함으로써, 타겟 행동에 대한 의미 파악이 가능한 행동 벡터를 생성할 수 있게 된다.In this way, by creating a behavior vector for the target behavior using the behaviors adjacent to the target behavior (i.e., behaviors having a temporal precedence and successive relationship with the behavior) within the behavior sequence, a behavior vector that can grasp the meaning of the target behavior Can be created.

행동 시퀀스 벡터 생성부(104)는 행동 시퀀스에서 윈도우(W)를 이동해가면서 행동 시퀀스 내 각 행동들의 행동 벡터를 이러한 방식으로 생성할 수 있다. The action sequence vector generator 104 may generate action vectors of each action in the action sequence in this manner while moving the window W in the action sequence.

행동 시퀀스 벡터 생성부(104)는 행동 시퀀스 내 각 행동들의 행동 벡터를 연결하여 행동 시퀀스 벡터를 생성할 수 있다. 도 4는 예시적인 실시예에서 각 캐릭터 별로 행동 시퀀스로부터 행동 시퀀스 벡터를 생성한 상태를 나타낸 도면이다. The action sequence vector generator 104 may generate an action sequence vector by connecting action vectors of each action in the action sequence. 4 is a diagram showing a state in which an action sequence vector is generated from an action sequence for each character in an exemplary embodiment.

벡터 압축부(106)는 캐릭터의 행동 시퀀스 벡터를 압축할 수 있다. 벡터 압축부(106)는 캐릭터의 행동 시퀀스 벡터를 기 설정된 사이즈(즉, 기 설정된 차원의 벡터)로 압축할 수 있다. 이 경우, 각 캐릭터마다 행동 시퀀스 벡터의 사이즈가 다르더라도 동일한 사이즈로 압축할 수 있게 된다. The vector compression unit 106 may compress a character's action sequence vector. The vector compression unit 106 may compress the character's action sequence vector into a preset size (ie, a vector having a preset dimension). In this case, even if the size of the action sequence vector is different for each character, it can be compressed to the same size.

예시적인 실시예에서, 벡터 압축부(106)는 시퀀스 오토인코더(Sequence Autoencoder)를 이용하여 행동 시퀀스 벡터를 압축할 수 있다. 벡터 압축부(106)는 압축된 행동 시퀀스 벡터를 캐릭터 특징 벡터 생성부(110)로 전달할 수 있다. In an exemplary embodiment, the vector compression unit 106 may compress a behavioral sequence vector using a sequence autoencoder. The vector compression unit 106 may transfer the compressed action sequence vector to the character feature vector generation unit 110.

이와 같이, 행동 시퀀스 벡터를 압축하면, 유사한 행동 시퀀스 벡터를 갖는 캐릭터들끼리 군집(클러스터)을 형성하게 된다. 도 5는 예시적인 일 실시예에서 유사한 행동 시퀀스 벡터를 갖는 캐릭터들끼리 군집을 형성하는 상태를 나타낸 도면이다. When the action sequence vector is compressed in this way, a cluster (cluster) is formed between characters having similar action sequence vectors. Fig. 5 is a diagram showing a state in which characters having a similar action sequence vector form a cluster in an exemplary embodiment.

도 5를 참조하면, 0번 클러스터는 아이템 획득 또는 소비가 많은 캐릭터들의 군집일 수 있다. 1번 클러스터는 지역 이동이 많고 파티 플레이를 하는 캐릭터들의 군집일 수 있다. 2번 클러스터는 짧은 시간에 퀘스트만 진행하는 캐릭터들의 군집일 수 있다. 3번 클러스터는 PvP 컨텐츠 플레이를 하는 캐릭터들의 군집일 수 있다. 4번 클러스터는 사냥으로 게임 머니를 획득하는 캐릭터들의 군집일 수 있다. 5번 클러스터는 퀘스트 및 사냥을 장시간 반복하는 캐릭터들의 군집일 수 있다.Referring to FIG. 5, cluster 0 may be a group of characters that acquire or consume a lot of items. Cluster 1 may be a cluster of characters that have a lot of local movement and play party. Cluster 2 may be a cluster of characters who only proceed with quests in a short time. Cluster 3 may be a group of characters playing PvP content. Cluster #4 may be a cluster of characters who obtain game money by hunting. Cluster 5 may be a group of characters who repeat quests and hunting for a long time.

아이템 착용 벡터 생성부(108)는 게임 내 캐릭터의 아이템 착용 정보를 획득할 수 있다. 여기서, 아이템 착용 정보는 아이템 식별 정보 및 착용 위치 정보를 포함할 수 있다. 아이템 식별 정보는 해당 아이템을 식별하기 위한 고유 정보를 의미할 수 있다. 착용 위치 정보는 캐릭터가 해당 아이템을 어느 위치(예를 들어, 머리, 몸통, 손, 발 등)에 착용하였는지를 나타내는 정보일 수 있다.The item wearing vector generation unit 108 may obtain item wearing information of a character in the game. Here, the item wearing information may include item identification information and wearing position information. The item identification information may mean unique information for identifying a corresponding item. The wearing location information may be information indicating where the character wears the item (eg, head, body, hands, feet, etc.).

아이템 착용 벡터 생성부(108)는 캐릭터의 아이템 착용 정보를 기반으로 캐릭터가 착용한 각 아이템에 대해 아이템 벡터를 생성할 수 있다. 아이템 착용 벡터 생성부(108)는 행동 시퀀스 벡터 생성부(104)가 행동 벡터를 생성하는 방식과 유사한 방식으로 아이템 벡터를 생성할 수 있다. The item wearing vector generation unit 108 may generate an item vector for each item worn by the character based on the item wearing information of the character. The item wearing vector generation unit 108 may generate an item vector in a manner similar to a method in which the action sequence vector generation unit 104 generates the action vector.

즉, 아이템 착용 벡터 생성부(108)는 캐릭터의 아이템 착용 정보를 기반으로 캐릭터가 착용하고 있는 착용 아이템 목록을 생성할 수 있다. 착용 아이템 목록은 기 설정된 착용 위치의 순서대로 배열될 수 있다. 예를 들어, 착용 아이템 목록은 머리-몸통-손-발 등의 순서대로 아이템들이 배열될 수 있다.That is, the item wearing vector generator 108 may generate a list of worn items worn by the character based on the item wearing information of the character. The wearing item list may be arranged in the order of preset wearing positions. For example, in the worn item list, items may be arranged in the order of head-body-hands-feet, and the like.

아이템 착용 벡터 생성부(108)는 착용 아이템 목록에서 기 설정된 크기의 윈도우를 순차적으로 이동해가면서 각 아이템에 대한 아이템 벡터를 생성할 수 있다. 예시적인 실시예에서, 아이템 착용 벡터 생성부(108)는 착용 아이템 목록에서 타겟 아이템(즉, 아이템 벡터를 생성하고자 하는 아이템)과 인접한 아이템들의 원 핫 벡터를 기계 학습 모델의 입력 값으로 하여 타겟 아이템에 대한 아이템 벡터를 생성할 수 있다. 여기서, 원 핫 벡터의 인덱스 값은 1이 사용될 수 있다.The item wearing vector generation unit 108 may generate an item vector for each item while sequentially moving a window of a preset size in the worn item list. In an exemplary embodiment, the item wearing vector generation unit 108 uses a one-hot vector of items adjacent to a target item (that is, an item for which an item vector is to be generated) in the list of worn items as an input value of the machine learning model. You can create an item vector for. Here, 1 may be used as the index value of the one hot vector.

아이템 착용 벡터 생성부(108)는 착용 아이템 목록에서 각 아이템 벡터를 연결하여 아이템 착용 벡터를 생성할 수 있다. 도 6은 예시적인 실시예에서 각 캐릭터 별로 착용 아이템 목록에서 아이템 착용 벡터를 생성한 상태를 나타낸 도면이다. The item wearing vector generation unit 108 may generate an item wearing vector by connecting each item vector in the wearing item list. 6 is a diagram illustrating a state in which an item wearing vector is generated from a list of worn items for each character in an exemplary embodiment.

캐릭터 특징 벡터 생성부(110)는 압축된 행동 시퀀스 벡터 및 아이템 착용 벡터를 기반으로 해당 캐릭터의 특징 벡터를 생성할 수 있다. 캐릭터 특징 벡터 생성부(110)는 압축된 행동 시퀀스 벡터와 아이템 착용 벡터를 결합하여 해당 캐릭터의 특징 벡터를 생성할 수 있다. 예시적인 실시예에서, 캐릭터 특징 벡터 생성부(110)는 압축된 행동 시퀀스 벡터와 아이템 착용 벡터를 연결하여 해당 캐릭터의 특징 벡터를 생성할 수 있으나, 이에 한정되는 것은 아니며 그 이외에 다양한 벡터 결합 방식을 이용하여 해당 캐릭터의 특징 벡터를 생성할 수 있다. The character feature vector generator 110 may generate a feature vector of a corresponding character based on the compressed action sequence vector and the item wearing vector. The character feature vector generation unit 110 may generate a feature vector of a corresponding character by combining the compressed action sequence vector and the item wearing vector. In an exemplary embodiment, the character feature vector generation unit 110 may generate a feature vector of a corresponding character by connecting the compressed action sequence vector and the item wearing vector, but is not limited thereto, and various vector combining methods are used. By using it, a feature vector of the corresponding character can be generated.

한편, 여기서는 행동 시퀀스 벡터 및 아이템 착용 벡터를 모두 이용하여 캐릭터의 특징 벡터를 생성하는 것으로 설명하였으나, 이에 한정되는 것은 아니며 행동 시퀀스 벡터 및 아이템 착용 벡터 중 하나 이상을 이용하여 캐릭터의 특징 벡터를 생성할 수도 있다.Meanwhile, although it has been described here that the character feature vector is generated by using both the action sequence vector and the item wearing vector, it is not limited thereto, and the character feature vector may be generated using at least one of the action sequence vector and the item wearing vector. May be.

또한, 여기서는 행동 시퀀스 벡터를 압축하여 캐릭터 특징 벡터 생성부(110)로 전달하는 것으로 설명하였으나, 이에 한정되는 것은 아니며 행동 시퀀스 벡터를 직접 캐릭터 특징 벡터 생성부(110)로 전달할 수도 있다.In addition, although it has been described here that the action sequence vector is compressed and transmitted to the character feature vector generation unit 110, it is not limited thereto, and the action sequence vector may be directly transferred to the character feature vector generation unit 110.

개시되는 실시예에 의하면, 게임 내 캐릭터의 행동, 착용 아이템, 지역 이동 정보 등을 기반으로 캐릭터의 특징 벡터를 생성함으로써, 게임 내 캐릭터들의 성향을 파악할 수 있으며, 각 캐릭터들의 성향을 통해 악성 유저 탐지, 이탈 유저 예측 등을 수행할 수 있게 된다. 또한, 캐릭터의 특징 벡터를 이용하면 비슷한 성향을 가진 캐릭터들끼리 군집을 형성할 수 있으며 이를 이용하여 다양한 고객 세그먼테이션을 수행할 수 있게 된다.According to the disclosed embodiment, by generating a feature vector of a character based on the in-game character's behavior, wearing items, and area movement information, it is possible to grasp the inclinations of the characters in the game, and to detect malicious users through the inclinations of each character. , It is possible to perform a departure user prediction, and the like. In addition, if the feature vector of the character is used, a cluster can be formed between characters having similar tendencies, and various customer segmentation can be performed using this.

도 7은 본 발명의 일 실시예에 따른 캐릭터 특징 방법을 설명하기 위한 흐름도이다. 도시된 흐름도에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다. 또한, 적어도 일부의 단계들은 동시에 수행될 수 있다.7 is a flowchart illustrating a character feature method according to an embodiment of the present invention. In the illustrated flowchart, the method is described by dividing the method into a plurality of steps, but at least some of the steps are performed in a different order, combined with other steps, performed together, omitted, divided into detailed steps, or not shown. One or more steps may be added and performed. Also, at least some of the steps may be performed simultaneously.

도 7을 참조하면, 캐릭터 특징 추출 장치(100)는 게임 로그를 기반으로 캐릭터의 행동 시퀀스 및 캐릭터의 각 행동 사이의 시간 간격 시퀀스를 추출한다(702).Referring to FIG. 7, the character feature extraction apparatus 100 extracts an action sequence of a character and a time interval sequence between each action of the character based on the game log (702 ).

다음으로, 캐릭터 특징 추출 장치(100)는 캐릭터의 행동 시퀀스 및 시간 간격 시퀀스를 기반으로 캐릭터의 행동 시퀀스 벡터를 생성한다(704).Next, the character feature extraction apparatus 100 generates a character action sequence vector based on the character action sequence and the time interval sequence (704).

다음으로, 캐릭터 특징 추출 장치(100)는 캐릭터의 아이템 착용 정보를 기반으로 캐릭터의 아이템 착용 벡터를 생성한다(706).Next, the character feature extraction device 100 generates an item wearing vector of the character based on the item wearing information of the character (706).

다음으로, 캐릭터 특징 추출 장치(100)는 캐릭터의 행동 시퀀스 벡터를 압축한다(708).Next, the character feature extraction apparatus 100 compresses the character's action sequence vector (708).

다음으로, 캐릭터 특징 추출 장치(100)는 압축된 행동 시퀀스 벡터 및 아이템 착용 벡터를 기반으로 캐릭터의 특징 벡터를 생성한다(710).Next, the character feature extraction device 100 generates a feature vector of a character based on the compressed action sequence vector and the item wearing vector (710).

도 8은 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경(10)을 예시하여 설명하기 위한 블록도이다. 도시된 실시예에서, 각 컴포넌트들은 이하에 기술된 것 이외에 상이한 기능 및 능력을 가질 수 있고, 이하에 기술된 것 이외에도 추가적인 컴포넌트를 포함할 수 있다.8 is a block diagram illustrating and describing a computing environment 10 including a computing device suitable for use in example embodiments. In the illustrated embodiment, each component may have different functions and capabilities in addition to those described below, and may include additional components in addition to those described below.

도시된 컴퓨팅 환경(10)은 컴퓨팅 장치(12)를 포함한다. 일 실시예에서, 컴퓨팅 장치(12)는 캐릭터 특징 추출 장치(100)일 수 있다.The illustrated computing environment 10 includes a computing device 12. In one embodiment, the computing device 12 may be the character feature extraction device 100.

컴퓨팅 장치(12)는 적어도 하나의 프로세서(14), 컴퓨터 판독 가능 저장 매체(16) 및 통신 버스(18)를 포함한다. 프로세서(14)는 컴퓨팅 장치(12)로 하여금 앞서 언급된 예시적인 실시예에 따라 동작하도록 할 수 있다. 예컨대, 프로세서(14)는 컴퓨터 판독 가능 저장 매체(16)에 저장된 하나 이상의 프로그램들을 실행할 수 있다. 상기 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 상기 컴퓨터 실행 가능 명령어는 프로세서(14)에 의해 실행되는 경우 컴퓨팅 장치(12)로 하여금 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.The computing device 12 includes at least one processor 14, a computer-readable storage medium 16 and a communication bus 18. The processor 14 may cause the computing device 12 to operate according to the exemplary embodiments mentioned above. For example, the processor 14 may execute one or more programs stored in the computer-readable storage medium 16. The one or more programs may include one or more computer-executable instructions, and the computer-executable instructions are configured to cause the computing device 12 to perform operations according to an exemplary embodiment when executed by the processor 14 Can be.

컴퓨터 판독 가능 저장 매체(16)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 판독 가능 저장 매체(16)에 저장된 프로그램(20)은 프로세서(14)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시예에서, 컴퓨터 판독 가능 저장 매체(16)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 컴퓨팅 장치(12)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.The computer-readable storage medium 16 is configured to store computer-executable instructions or program code, program data, and/or other suitable form of information. The program 20 stored in the computer-readable storage medium 16 includes a set of instructions executable by the processor 14. In one embodiment, the computer-readable storage medium 16 includes memory (volatile memory such as random access memory, nonvolatile memory, or a suitable combination thereof), one or more magnetic disk storage devices, optical disk storage devices, flash It may be memory devices, other types of storage media that can be accessed by computing device 12 and store desired information, or a suitable combination thereof.

통신 버스(18)는 프로세서(14), 컴퓨터 판독 가능 저장 매체(16)를 포함하여 컴퓨팅 장치(12)의 다른 다양한 컴포넌트들을 상호 연결한다.The communication bus 18 interconnects the various other components of the computing device 12, including the processor 14 and computer-readable storage medium 16.

컴퓨팅 장치(12)는 또한 하나 이상의 입출력 장치(24)를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(22) 및 하나 이상의 네트워크 통신 인터페이스(26)를 포함할 수 있다. 입출력 인터페이스(22) 및 네트워크 통신 인터페이스(26)는 통신 버스(18)에 연결된다. 입출력 장치(24)는 입출력 인터페이스(22)를 통해 컴퓨팅 장치(12)의 다른 컴포넌트들에 연결될 수 있다. 예시적인 입출력 장치(24)는 포인팅 장치(마우스 또는 트랙패드 등), 키보드, 터치 입력 장치(터치패드 또는 터치스크린 등), 음성 또는 소리 입력 장치, 다양한 종류의 센서 장치 및/또는 촬영 장치와 같은 입력 장치, 및/또는 디스플레이 장치, 프린터, 스피커 및/또는 네트워크 카드와 같은 출력 장치를 포함할 수 있다. 예시적인 입출력 장치(24)는 컴퓨팅 장치(12)를 구성하는 일 컴포넌트로서 컴퓨팅 장치(12)의 내부에 포함될 수도 있고, 컴퓨팅 장치(12)와는 구별되는 별개의 장치로 컴퓨팅 장치(12)와 연결될 수도 있다.Computing device 12 may also include one or more input/output interfaces 22 and one or more network communication interfaces 26 that provide interfaces for one or more input/output devices 24. The input/output interface 22 and the network communication interface 26 are connected to the communication bus 18. The input/output device 24 may be connected to other components of the computing device 12 through the input/output interface 22. The exemplary input/output device 24 includes a pointing device (such as a mouse or trackpad), a keyboard, a touch input device (such as a touch pad or a touch screen), a voice or sound input device, and various types of sensor devices and/or a photographing device. Input devices and/or output devices such as display devices, printers, speakers, and/or network cards. The exemplary input/output device 24 may be included in the computing device 12 as a component constituting the computing device 12, and may be connected to the computing device 12 as a separate device distinct from the computing device 12. May be.

이상에서 본 발명의 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Although the exemplary embodiments of the present invention have been described in detail above, those of ordinary skill in the art to which the present invention pertains will understand that various modifications can be made to the above-described embodiments within the scope of the present invention . Therefore, the scope of the present invention is limited to the described embodiments and should not be determined, and should not be determined by the claims to be described later, but also by those equivalents to the claims.

10: 컴퓨팅 환경
12: 컴퓨팅 장치
14: 프로세서
16: 컴퓨터 판독 가능 저장 매체
18: 통신 버스
20: 프로그램
22: 입출력 인터페이스
24: 입출력 장치
26: 네트워크 통신 인터페이스
100 : 캐릭터 특징 추출 장치
102 : 시퀀스 추출부
102a : 행동 시퀀스 추출부
102b : 시간 간격 시퀀스 추출부
104 : 행동 시퀀스 벡터 생성부
106 : 벡터 압축부
108 : 아이템 착용 벡터 생성부
110 : 캐릭터 특징 벡터 생성부
10: computing environment
12: computing device
14: processor
16: computer readable storage medium
18: communication bus
20: program
22: input/output interface
24: input/output device
26: network communication interface
100: character feature extraction device
102: sequence extraction unit
102a: action sequence extraction unit
102b: time interval sequence extraction unit
104: action sequence vector generator
106: vector compression unit
108: Item wearing vector generation unit
110: Character feature vector generation unit

Claims (20)

하나 이상의 프로세서들, 및
상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치에서 수행되는 방법으로서,
게임 내 캐릭터에 대해 발생하는 게임 로그를 획득하는 동작;
상기 게임 로그를 기반으로 상기 캐릭터의 행동 시퀀스 및 상기 캐릭터의 각 행동 사이의 시간 간격 시퀀스를 추출하는 동작; 및
상기 행동 시퀀스 및 시간 간격 시퀀스를 기반으로 상기 캐릭터의 행동 시퀀스 벡터를 생성하는 동작을 포함하는, 캐릭터 특징 추출 방법.
One or more processors, and
A method performed in a computing device having a memory storing one or more programs executed by the one or more processors,
Obtaining a game log generated for a character in the game;
Extracting an action sequence of the character and a sequence of time intervals between each action of the character based on the game log; And
And generating an action sequence vector of the character based on the action sequence and the time interval sequence.
청구항 1에 있어서,
상기 행동 시퀀스를 추출하는 동작은,
상기 게임 로그에서 상기 캐릭터의 행동 식별 정보를 순차적으로 배열하여 상기 캐릭터의 행동 시퀀스를 추출하고,
상기 각 행동 사이의 시간 간격 시퀀스를 추출하는 동작은,
상기 게임 로그에서 상기 캐릭터의 각 행동 사이의 시간 간격을 산출하고, 상기 산출한 시간 간격을 순차적으로 배열하여 상기 시간 간격 시퀀스를 추출하는, 캐릭터 특징 추출 방법.
The method according to claim 1,
The operation of extracting the action sequence,
Extracting an action sequence of the character by sequentially arranging the action identification information of the character in the game log,
Extracting the sequence of time intervals between each of the actions,
A method of extracting the time interval sequence by calculating a time interval between each action of the character from the game log, and sequentially arranging the calculated time intervals.
청구항 1에 있어서,
상기 행동 시퀀스 벡터를 생성하는 동작은,
상기 행동 시퀀스 내 각 행동에 대한 행동 벡터를 생성하는 동작; 및
상기 행동 벡터를 순차적으로 연결하여 행동 시퀀스 벡터를 생성하는 동작을 포함하는, 캐릭터 특징 추출 방법.
The method according to claim 1,
The operation of generating the action sequence vector,
Generating an action vector for each action in the action sequence; And
And generating a behavior sequence vector by sequentially connecting the behavior vectors.
청구항 3에 있어서,
상기 행동 벡터를 생성하는 동작은,
상기 행동 시퀀스 내 기 설정된 크기의 윈도우에서 타겟 행동과 인접한 행동들 및 상기 타겟 행동과 상기 인접한 행동들 사이의 시간 간격을 기반으로 상기 타겟 행동에 대한 행동 벡터를 생성하는, 캐릭터 특징 추출 방법.
The method of claim 3,
The operation of generating the action vector,
A method for extracting character features, generating a behavior vector for the target behavior based on a target behavior and adjacent behaviors in a window having a preset size in the behavior sequence and a time interval between the target behavior and the adjacent behaviors.
청구항 4에 있어서,
상기 타겟 행동에 대한 행동 벡터를 생성하는 동작은,
상기 타겟 행동과 인접한 행동들의 원 핫 벡터를 각각 산출하는 동작; 및
상기 타겟 행동과 인접한 행동들의 원 핫 벡터 및 상기 타겟 행동과 상기 인접한 행동들 사이의 시간 간격을 기계 학습 모델의 입력 값으로 하여 상기 타겟 행동에 대한 행동 벡터를 생성하는 동작을 포함하는, 캐릭터 특징 추출 방법.
The method of claim 4,
The operation of generating a behavior vector for the target behavior,
Calculating a one-hot vector of the target action and adjacent actions, respectively; And
Character feature extraction comprising an operation of generating a behavior vector for the target behavior by using a one-hot vector of the target behavior and adjacent behaviors and a time interval between the target behavior and the adjacent behaviors as input values of a machine learning model Way.
청구항 5에 있어서,
상기 타겟 행동과 상기 인접한 행동들 사이의 시간 간격은,
상기 원 핫 벡터의 인덱스 값의 가중치로 적용되는, 캐릭터 특징 추출 방법.
The method of claim 5,
The time interval between the target action and the adjacent actions,
Character feature extraction method applied as a weight of the index value of the one hot vector.
청구항 1에 있어서,
상기 캐릭터 특징 추출 방법은,
상기 캐릭터의 행동 시퀀스 벡터를 기 설정된 사이즈로 압축하는 동작을 더 포함하는, 캐릭터 특징 추출 방법.
The method according to claim 1,
The character feature extraction method,
Character feature extraction method further comprising the operation of compressing the action sequence vector of the character to a preset size.
청구항 1에 있어서,
상기 캐릭터 특징 추출 방법은,
상기 캐릭터가 착용하는 아이템에 대한 아이템 착용 정보를 획득하는 동작;
상기 아이템 착용 정보에 기반하여 상기 캐릭터가 착용하는 각 아이템에 대해 아이템 벡터를 생성하는 동작; 및
상기 아이템 벡터를 연결하여 상기 캐릭터의 아이템 착용 벡터를 생성하는 동작을 더 포함하는, 캐릭터 특징 추출 방법.
The method according to claim 1,
The character feature extraction method,
Acquiring item wearing information for an item worn by the character;
Generating an item vector for each item worn by the character based on the item wearing information; And
And generating an item wearing vector of the character by connecting the item vector.
청구항 8에 있어서,
상기 아이템 벡터를 생성하는 동작은,
상기 아이템 착용 정보를 기반으로 상기 캐릭터에 대한 착용 아이템 목록을 생성하는 동작;
상기 착용 아이템 목록에서 아이템들을 기 설정된 착용 위치의 순서대로 배열하는 동작; 및
상기 착용 아이템 목록에서 기 설정된 크기의 윈도우를 순차적으로 이동해가면서 각 아이템에 대한 아이템 벡터를 생성하는 동작을 포함하는, 캐릭터 특징 추출 방법.
The method of claim 8,
The operation of generating the item vector,
Generating a list of worn items for the character based on the item wearing information;
Arranging items in the order of a preset wearing position in the wearing item list; And
And generating an item vector for each item while sequentially moving a window of a preset size in the worn item list.
청구항 9에 있어서,
상기 캐릭터 특징 추출 방법은,
상기 착용 아이템 목록에서 각 아이템 벡터를 연결하여 아이템 착용 벡터를 생성하는 동작; 및
상기 행동 시퀀스 벡터 및 상기 아이템 착용 벡터를 결합하여 상기 캐릭터의 특징 벡터를 생성하는 동작을 더 포함하는, 캐릭터 특징 추출 방법.
The method of claim 9,
The character feature extraction method,
Generating an item wearing vector by connecting each item vector in the wearing item list; And
And generating a feature vector of the character by combining the action sequence vector and the item wearing vector.
하나 이상의 프로세서들, 및
상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치에서 수행되는 방법으로서,
게임 내 캐릭터가 착용하는 아이템에 대한 아이템 착용 정보를 획득하는 동작;
상기 아이템 착용 정보에 기반하여 상기 캐릭터가 착용하는 각 아이템에 대해 아이템 벡터를 생성하는 동작; 및
상기 아이템 벡터를 연결하여 상기 캐릭터의 아이템 착용 벡터를 생성하는 동작을 포함하는, 캐릭터 특징 추출 방법.
One or more processors, and
A method performed in a computing device having a memory storing one or more programs executed by the one or more processors,
Obtaining item wearing information for an item worn by a character in the game;
Generating an item vector for each item worn by the character based on the item wearing information; And
And generating an item wearing vector of the character by connecting the item vectors.
하나 이상의 프로세서들, 및
상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치로서,
게임 내 캐릭터에 대해 발생하는 게임 로그를 획득하고, 상기 게임 로그를 기반으로 상기 캐릭터의 행동 시퀀스 및 상기 캐릭터의 각 행동 사이의 시간 간격 시퀀스를 추출하는 시퀀스 추출부; 및
상기 행동 시퀀스 및 시간 간격 시퀀스를 기반으로 상기 캐릭터의 행동 시퀀스 벡터를 생성하는 행동 시퀀스 벡터 생성부를 포함하는, 컴퓨팅 장치.
One or more processors, and
A computing device having a memory for storing one or more programs executed by the one or more processors,
A sequence extraction unit that obtains a game log generated for a character in a game, and extracts an action sequence of the character and a time interval sequence between each action of the character based on the game log; And
A computing device comprising an action sequence vector generator that generates an action sequence vector of the character based on the action sequence and the time interval sequence.
청구항 12에 있어서,
상기 시퀀스 추출부는,
상기 게임 로그에서 상기 캐릭터의 행동 식별 정보를 순차적으로 배열하여 상기 캐릭터의 행동 시퀀스를 추출하는 행동 시퀀스 추출부; 및
상기 게임 로그에서 상기 캐릭터의 각 행동 사이의 시간 간격을 산출하고, 상기 산출한 시간 간격을 순차적으로 배열하여 상기 시간 간격 시퀀스를 추출하는 시간 간격 시퀀스 추출부를 포함하는, 컴퓨팅 장치.
The method of claim 12,
The sequence extraction unit,
An action sequence extracting unit for extracting an action sequence of the character by sequentially arranging the action identification information of the character in the game log; And
A computing device comprising a time interval sequence extracting unit that calculates a time interval between each action of the character in the game log, and sequentially arranges the calculated time intervals to extract the time interval sequence.
청구항 12에 있어서,
상기 행동 시퀀스 벡터 생성부는,
상기 행동 시퀀스 내 각 행동에 대한 행동 벡터를 생성하고, 상기 행동 벡터를 순차적으로 연결하여 행동 시퀀스 벡터를 생성하는, 컴퓨팅 장치.
The method of claim 12,
The action sequence vector generation unit,
A computing device for generating an action vector for each action in the action sequence and sequentially connecting the action vectors to generate action sequence vectors.
청구항 14에 있어서,
상기 행동 시퀀스 벡터 생성부는,
상기 행동 시퀀스 내 기 설정된 크기의 윈도우에서 타겟 행동과 인접한 행동들 및 상기 타겟 행동과 상기 인접한 행동들 사이의 시간 간격을 기반으로 상기 타겟 행동에 대한 행동 벡터를 생성하는, 컴퓨팅 장치.
The method of claim 14,
The action sequence vector generation unit,
A computing device for generating a behavior vector for the target behavior based on a target behavior and adjacent behaviors in a window having a predetermined size in the behavior sequence and a time interval between the target behavior and the adjacent behaviors.
청구항 15에 있어서,
상기 행동 시퀀스 벡터 생성부는,
상기 타겟 행동과 인접한 행동들의 원 핫 벡터를 각각 산출하고, 상기 타겟 행동과 인접한 행동들의 원 핫 벡터 및 상기 타겟 행동과 상기 인접한 행동들 사이의 시간 간격을 기계 학습 모델의 입력 값으로 하여 상기 타겟 행동에 대한 행동 벡터를 생성하는, 컴퓨팅 장치.
The method of claim 15,
The action sequence vector generation unit,
The target behavior is calculated by calculating a one-hot vector of the target behavior and neighboring behaviors, respectively, and using a one-hot vector of the target behavior and neighboring behaviors and a time interval between the target behavior and the neighboring behaviors as input values of a machine learning model. Generating an action vector for a computing device.
청구항 16에 있어서,
상기 행동 시퀀스 벡터 생성부는,
상기 타겟 행동과 상기 인접한 행동들 사이의 시간 간격을 상기 원 핫 벡터의 인덱스 값의 가중치로 적용하는, 컴퓨팅 장치.
The method of claim 16,
The action sequence vector generation unit,
The computing device, wherein the time interval between the target action and the adjacent actions is applied as a weight of the index value of the one hot vector.
청구항 12에 있어서,
상기 컴퓨팅 장치는,
상기 캐릭터의 행동 시퀀스 벡터를 기 설정된 사이즈로 압축하는 벡터 압축부를 더 포함하는, 컴퓨팅 장치.
The method of claim 12,
The computing device,
The computing device further comprising a vector compression unit for compressing the action sequence vector of the character to a preset size.
청구항 12에 있어서,
상기 컴퓨팅 장치는,
상기 캐릭터가 착용하는 아이템에 대한 아이템 착용 정보를 획득하고, 상기 아이템 착용 정보에 기반하여 상기 캐릭터가 착용하는 각 아이템에 대해 아이템 벡터를 생성하며, 상기 아이템 벡터를 연결하여 상기 캐릭터의 아이템 착용 벡터를 생성하는 아이템 착용 벡터 생성부를 더 포함하는, 컴퓨팅 장치.
The method of claim 12,
The computing device,
Obtaining item wearing information for the item worn by the character, generating an item vector for each item worn by the character based on the item wearing information, and connecting the item vector to obtain an item wearing vector of the character. The computing device further comprises an item wearing vector generation unit to generate.
청구항 19에 있어서,
상기 아이템 착용 벡터 생성부는,
상기 아이템 착용 정보를 기반으로 상기 캐릭터에 대한 착용 아이템 목록을 생성하고, 상기 착용 아이템 목록에서 아이템들을 기 설정된 착용 위치의 순서대로 배열하며, 상기 착용 아이템 목록에서 기 설정된 크기의 윈도우를 순차적으로 이동해가면서 각 아이템에 대한 아이템 벡터를 생성하는, 컴퓨팅 장치.
The method of claim 19,
The item wearing vector generation unit,
Based on the item wearing information, a list of wearing items for the character is created, items are arranged in the order of a preset wearing position in the wearing item list, and a window of a preset size is sequentially moved in the wearing item list. A computing device that generates an item vector for each item.
KR1020190075187A 2019-06-24 2019-06-24 Method for extracting feature of character and apparatus for executing the method KR102283238B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190075187A KR102283238B1 (en) 2019-06-24 2019-06-24 Method for extracting feature of character and apparatus for executing the method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190075187A KR102283238B1 (en) 2019-06-24 2019-06-24 Method for extracting feature of character and apparatus for executing the method

Publications (2)

Publication Number Publication Date
KR20210000186A true KR20210000186A (en) 2021-01-04
KR102283238B1 KR102283238B1 (en) 2021-07-29

Family

ID=74127474

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190075187A KR102283238B1 (en) 2019-06-24 2019-06-24 Method for extracting feature of character and apparatus for executing the method

Country Status (1)

Country Link
KR (1) KR102283238B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190043846A (en) * 2017-10-19 2019-04-29 주식회사 넥슨코리아 Game service providing apparatus, method and computer program for providing item package

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190043846A (en) * 2017-10-19 2019-04-29 주식회사 넥슨코리아 Game service providing apparatus, method and computer program for providing item package

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"자기 유사도를 이용한 MMORPG 게임봇 탐지 시스템", 정보보호학회 논문지 VOL. 26, NO.1(2016.02.)* *
"행위 시간 간격 기반 게임 봇 탐지 기법", 정보보호학회 논문지 VOL.28, NO.5(2016.10.)* *

Also Published As

Publication number Publication date
KR102283238B1 (en) 2021-07-29

Similar Documents

Publication Publication Date Title
US8821288B2 (en) Method of determining gifts of each friend user
US11666829B1 (en) Utilizing gaming behavior in user authentication
KR102105525B1 (en) Method for providing game video, server for providing game video, and apparatus for executing the same
KR20110081400A (en) Apparstus and method of providing replay movie in massively multiplayer online role playing game
CN111282284A (en) Virtual object control method, device, terminal and storage medium
KR20200033709A (en) Enhanced item discovery and delivery for electronic video game systems
CN113786620A (en) Game information recommendation method and device, computer equipment and storage medium
WO2023213042A1 (en) Cloud game starting method, apparatus and system, and computer device and storage medium
JP6647600B1 (en) Game program and information processing device
CN117083111A (en) Method and system for dynamic task generation
KR102283238B1 (en) Method for extracting feature of character and apparatus for executing the method
JP2017131322A (en) Program and server
KR20200080978A (en) Apparatus and method for providing game screen information
KR20190059662A (en) Apparatus, method and computer program for game service
KR102584901B1 (en) Apparatus and method for sending event information, apparatus and method for displayng event information
JP2020156919A (en) Information processing device, information processing method and program
KR20190127308A (en) Apparatus and method for predicting game user control
KR102162179B1 (en) Apparatus and method for providing item informationi
KR102152231B1 (en) Apparatus and method for providing game server information
KR102211564B1 (en) Method and aparratus for providing game service
KR102170825B1 (en) Apparatus and method for controlling game
KR102219028B1 (en) Method and system for providing game using past game data
KR102279845B1 (en) Method and apparatus for recommending character name
KR100983543B1 (en) Screenshot providing system using characters having artificial intelligence and method thereof
KR102463571B1 (en) Apparatus and method for controlling game

Legal Events

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