KR20240016817A - System and method for growing non-player character avatar within metaverse based on metaverse behavior log of user - Google Patents

System and method for growing non-player character avatar within metaverse based on metaverse behavior log of user Download PDF

Info

Publication number
KR20240016817A
KR20240016817A KR1020220095039A KR20220095039A KR20240016817A KR 20240016817 A KR20240016817 A KR 20240016817A KR 1020220095039 A KR1020220095039 A KR 1020220095039A KR 20220095039 A KR20220095039 A KR 20220095039A KR 20240016817 A KR20240016817 A KR 20240016817A
Authority
KR
South Korea
Prior art keywords
user
data
avatar
activity
metaverse
Prior art date
Application number
KR1020220095039A
Other languages
Korean (ko)
Inventor
김준회
Original Assignee
주식회사 마블러스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 마블러스 filed Critical 주식회사 마블러스
Priority to KR1020220095039A priority Critical patent/KR20240016817A/en
Publication of KR20240016817A publication Critical patent/KR20240016817A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
    • G10L25/63Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination for estimating an emotional state

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Tourism & Hospitality (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Primary Health Care (AREA)
  • Remote Sensing (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Artificial Intelligence (AREA)
  • Marketing (AREA)
  • Human Resources & Organizations (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Child & Adolescent Psychology (AREA)
  • Hospice & Palliative Care (AREA)
  • Psychiatry (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Acoustics & Sound (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

실시예들은 사용자의 개인정보를 수신하는 단계; 미리 저장된 성격 중 사용자의 개인정보에 대응한 성격을 1차 성격으로 갖는 가상 NPC 아바타를 생성하는 단계 - 상기 가상 NPC 아바타는 사용자의 아바타와 상이한 형상을 가짐; 상기 사용자가 메타버스에서 활동하는 동안 전자 장치에 포착된 사용자의 활동 데이터 및 조작 데이터를 수신하는 단계 - 상기 활동 데이터는 사용자의 이미지, 텍스트, 및 음성 데이터 중 하나 이상의 데이터를 포함함; 미리 저장된 감정 인식 모델을 이용하여 사용자의 활동 데이터로부터 사용자의 감정 상태를 판단하는 단계; 상기 활동 데이터 및 감정 상태에 기초하여 상기 가상 NPC 아바타의 2차 성격을 생성하고, 상기 가상 NPC 아바타의 성격을 상기 2차 성격으로 업데이트하는 단계를 포함하는, 사용자의 메타버스 활동 로그에 기초하여 메타버스 속 가상 NPC 아바타를 성장시키는 시스템 및 방법에 관련된다. Embodiments include receiving a user's personal information; Creating a virtual NPC avatar having as a primary personality a personality corresponding to the user's personal information among pre-stored personalities - the virtual NPC avatar has a different shape from the user's avatar; Receiving activity data and manipulation data of the user captured on an electronic device while the user is active in the metaverse, the activity data including one or more of the user's image, text, and voice data; determining the user's emotional state from the user's activity data using a pre-stored emotion recognition model; Creating a secondary personality of the virtual NPC avatar based on the activity data and emotional state, and updating the personality of the virtual NPC avatar with the secondary personality, based on the user's metaverse activity log. This relates to a system and method for growing a virtual NPC avatar in a bus.

Description

사용자의 메타버스 활동 로그에 기초하여 메타버스 속 가상 NPC 아바타를 성장시키는 시스템 및 방법 {System and method for growing non-player character avatar within metaverse based on metaverse behavior log of user}System and method for growing a virtual NPC avatar in the metaverse based on the user's metaverse activity log {System and method for growing non-player character avatar within metaverse based on metaverse behavior log of user}

본 출원의 실시 예들은 메타버스 내에서 사용자가 활동하는 동안 수신된 데이터를 포함한 사용자의 메타버스 활동 로그에 기초하여 메타버스 속 아바타를 성장시키는 시스템 및 방법에 관한 것이다. Embodiments of the present application relate to a system and method for growing an avatar in the metaverse based on a user's metaverse activity log, including data received while the user is active in the metaverse.

아바타란 단어는 인터넷 초창기부터 2000년대 초중반 시절까지 주로 "게임 속 플레이어" 로서 통용되었다가 "캐릭터" 라는 용어로 대체되어 왔다. The word avatar was mainly used as a "player in a game" from the early days of the Internet to the early and mid-2000s, but has since been replaced by the term "character."

최근에 메타버스 기술이 각광받기 시작하면서 아바타란 용어가 전면에 재-등장하게 되었다. 다만, 이전의 뜻과는 다른 의미로 현재 통용되고 있다. 구체적으로, 메타버스 속 아바타는 나의 다양한 성격(multi-persona)을 메타버스의 가상세계로 투영할 뿐만 아니라, 현실의 나로부터 책임, 의무, 권리를 위임 받아 메타버스 내에서 행동하는 대리인(agent)로 정의되어 이용되기 시작하였다. 그 이유는, 메타버스가 단순한 가상의 오락공간이 아닌 일상생활과 경제 활동이 가능한 세계를 의미하는 것이기 때문에, 메타버스 속 아바타의 행위는 실제 나의 행위와 동격으로 취급되어 아바타에게도 실제세계에 준하는 가상세계의 사회적 의무와 책임이 수반될 수 있기 때문이다.Recently, as metaverse technology began to gain attention, the term avatar came to the forefront again. However, it is currently used with a different meaning from its previous meaning. Specifically, the avatar in the metaverse not only projects my various personalities (multi-persona) into the virtual world of the metaverse, but is also an agent who acts within the metaverse by being delegated responsibilities, duties, and rights from the real me. It was defined and began to be used. The reason is that the metaverse is not just a virtual entertainment space, but a world where daily life and economic activities are possible, so the actions of the avatar in the metaverse are treated as equivalent to my actual actions, so the avatar is treated as a virtual world equivalent to the real world. This is because it may involve global social obligations and responsibilities.

이러한 정의에 기초해 아바타 기술이 발전하였는 바, 현재 메타버스 세계에서 아바타의 존재는 메타버스 세계 내에 존재하는 오브젝트, 환경, 장소, 시스템과 더불어 가장 최선의 필수 요소로 취급된다. Based on this definition, avatar technology has developed, and in the current metaverse world, the existence of an avatar is treated as the best essential element along with the objects, environments, places, and systems that exist within the metaverse world.

메타버스 내 아바타는 사용자 아바타 및 사용자가 아닌 아바타로 분류되며, 사용자가 아닌 아바타는 일반적으로 NPC 아바타로 지칭된다. Avatars in the metaverse are classified into user avatars and non-user avatars, and non-user avatars are generally referred to as NPC avatars.

메타버스 내 가상 NPC 아바타는 다양한 정보를 사용자에게 제공하거나 사용자를 직접 가이드할 수도 있다. Virtual NPC avatars in the metaverse can provide various information to users or guide users directly.

그러나, 현재 가상 NPC 아바타는 설계자가 미리 정의한 룰 안에서 다수의 후보 채팅을 제공하고 선택된 후보 채팅에 연관된 다음 채팅을 추가로 제공하는 챗봇 시스템에 기반하여 구현되는 것이 일반적이므로, 사용자와 제한된 소통을 할 수 밖에 없는 한계가 있다. However, currently, virtual NPC avatars are generally implemented based on a chatbot system that provides a number of candidate chats within rules predefined by the designer and additionally provides the next chat related to the selected candidate chat, so limited communication with the user is possible. There are limits.

대한민국 특허등록공보 제10-2199843호 (202012.31.)Republic of Korea Patent Registration No. 10-2199843 (202012.31.)

상술한 문제를 해결하기 위해, 본 출원의 실시 예들은 메타버스 내 사용자의 메타버스 활동 로그에 기초하여, 가상 NPC 아바타의 성격에 메타버스에서 활동 중인 사용자의 행동 패턴, 활동 범위, 사용자와 메타버스 간의 상호작용 등을 반영함으로써, 메타버스 속 가상 NPC 아바타를 성장시키는 시스템 및 방법을 제공하고자 한다.In order to solve the above-described problem, embodiments of the present application are based on the metaverse activity log of the user in the metaverse, the behavior pattern of the user active in the metaverse, the activity range, and the characteristics of the virtual NPC avatar, the user and the metaverse. We aim to provide a system and method for growing virtual NPC avatars in the metaverse by reflecting interactions between them.

본 출원의 일 측면에 따르면 하나 이상의 컴퓨팅 장치에 의해 수행되는 사용자의 메타버스 활동 로그에 기초하여 메타버스 속 가상 NPC 아바타를 성장시키는 방법는, According to one aspect of the present application, a method of growing a virtual NPC avatar in the metaverse based on a user's metaverse activity log performed by one or more computing devices includes:

사용자의 개인정보를 수신하는 단계; Receiving the user's personal information;

미리 저장된 성격 중 사용자의 개인정보에 대응한 성격을 1차 성격으로 갖는 가상 NPC 아바타를 생성하는 단계 - 상기 가상 NPC 아바타는 사용자의 아바타와 상이한 형상을 가짐; Creating a virtual NPC avatar having as a primary personality a personality corresponding to the user's personal information among pre-stored personalities - the virtual NPC avatar has a different shape from the user's avatar;

상기 사용자가 메타버스에서 활동하는 동안 전자 장치에 포착된 사용자의 활동 데이터 및 조작 데이터를 수신하는 단계 - 상기 활동 데이터는 사용자의 이미지, 텍스트, 및 음성 데이터 중 하나 이상의 데이터를 포함함; Receiving activity data and manipulation data of the user captured on an electronic device while the user is active in the metaverse, the activity data including one or more of the user's image, text, and voice data;

미리 저장된 감정 인식 모델을 이용하여 사용자의 활동 데이터로부터 사용자의 감정 상태를 판단하는 단계;determining the user's emotional state from the user's activity data using a pre-stored emotion recognition model;

상기 활동 데이터 및 감정 상태에 기초하여 상기 가상 NPC 아바타의 2차 성격을 생성하고, 상기 가상 NPC 아바타의 성격을 상기 2차 성격으로 업데이트하는 단계를 포함하고, Generating a secondary personality of the virtual NPC avatar based on the activity data and emotional state, and updating the personality of the virtual NPC avatar with the secondary personality,

상기 2차 성격을 생성하는 단계는, The step of creating the secondary personality is,

시계열 순서에 따라 획득된, 사용자의 메타버스 내 활동 각각에 대한 사용자의 활동 데이터 및 해당 활동 데이터로부터 판단된 사용자의 감정 상태로 이루어진 복수의 쌍을 포함한 제1 데이터 세트를 형성하는 단계; 및Forming a first data set including a plurality of pairs of user activity data for each activity in the user's metaverse, obtained according to a time series order, and the user's emotional state determined from the activity data; and

상기 제1 데이터 세트를 이용하여 가상 NPC 아바타의 2차 성격을 가리키는 성격 모델을 모델링하는 단계를 포함할 수도 있다. It may also include modeling a personality model indicating the secondary personality of the virtual NPC avatar using the first data set.

일 실시 예에서, 상기 방법은, In one embodiment, the method:

수신된 활동 데이터 및 조작 데이터에 기초하여 사용자의 행동 패턴 데이터를 산출하는 단계; calculating user behavior pattern data based on the received activity data and manipulation data;

사용자의 활동 데이터 및 상기 활동 데이터에 대응한 감정 상태, 및 상기 활동 데이터에 대응한 사용자의 행동 패턴 데이터를 포함한 제2 데이터 세트를 형성하는 단계; forming a second data set including the user's activity data, an emotional state corresponding to the activity data, and the user's behavior pattern data corresponding to the activity data;

상기 제2 데이터 세트를 이용하여 상기 사용자의 메타버스 내 행동을 모방하는 행동을 수행하는 상기 가상 NPC 아바타의 3차 성격을 생성하는 단계; 및 using the second data set to create a tertiary personality of the virtual NPC avatar that performs actions that mimic the user's actions in the metaverse; and

상기 가상 NPC 아바타의 성격을 생성된 3차 성격으로 업데이트하는 단계를 더 포함할 수도 있다. The step of updating the personality of the virtual NPC avatar to the generated tertiary personality may be further included.

일 실시 예에서, 상기 사용자의 활동 데이터로부터 사용자의 감정 상태를 판단하는 단계는, In one embodiment, determining the user's emotional state from the user's activity data includes:

미리 학습된 이미지 기반 감정 인식 모델를 이용하여 사용자의 이미지 데이터로부터 사용자의 제1 감정 상태를 판단하는 단계를 포함하고, A step of determining the user's first emotional state from the user's image data using a pre-trained image-based emotion recognition model,

상기 이미지 기반 감정 인식 모델은 The image-based emotion recognition model is

입력 이미지에서 얼굴 영역을 검출하는 얼굴 검출 유닛, 검출된 얼굴 영역에서 사용자의 이미지 특징을 추출하는 특징 추출 유닛, 및 모델에 미리 지정된 복수의 감정 상태 중에서 추출된 특징에 기초하여 입력 이미지 내 얼굴이 가리키는 사용자의 감정 상태를 분류하는 감정 판단 유닛을 포함한, 기계학습 모델이며, a face detection unit that detects a face area in the input image, a feature extraction unit that extracts image features of the user from the detected face area, and a face in the input image that is pointed out based on the features extracted from a plurality of emotional states pre-specified in the model. It is a machine learning model that includes an emotion judgment unit that classifies the user's emotional state.

상기 감정 판단 유닛은 사용자의 감정 유형을 판단하기 위한 제1 감정 판단 유닛, 및 사용자의 감정 종류를 판단하기 위한 제2 감정 판단 유닛을 포함하고, The emotion judgment unit includes a first emotion judgment unit for determining the user's emotion type, and a second emotion judgment unit for determining the user's emotion type,

상기 이미지 기반 감정 인식 모델은 상기 얼굴 영역에서 특징을 추출하여 사용자의 감정 유형을 제1 뎁스로 판단하고, 상기 얼굴 영역에서 특징을 추출하여 사용자의 감정 종류를 제2 뎁스로 판단하는 것일 수도 있다. The image-based emotion recognition model may extract features from the face area to determine the user's emotion type as a first depth, and extract features from the face area to determine the user's emotion type as a second depth.

일 실시 예에서, 상기 사용자의 활동 데이터로부터 사용자의 감정 상태를 판단하는 단계는, In one embodiment, determining the user's emotional state from the user's activity data includes:

미리 학습된 텍스트 기반 감정 인식 모델를 이용하여 사용자의 텍스트 데이터로부터 사용자의 제2 감정 상태를 판단하는 단계; 및 상기 텍스트 기반 감정 인식 모델 또는 미리 학습된 음성 기반 감정 인식 모델을 이용하여 사용자의 음성 데이터로부터 사용자의 제3 감정 상태를 판단하는 단계 중 하나 이상의 단계를 더 포함할 수도 있다. determining the user's second emotional state from the user's text data using a pre-trained text-based emotion recognition model; It may further include one or more steps of determining the user's third emotional state from the user's voice data using the text-based emotion recognition model or the pre-trained voice-based emotion recognition model.

일 실시 예에서, 상기 사용자의 활동 데이터로부터 사용자의 감정 상태를 판단하는 단계는,In one embodiment, determining the user's emotional state from the user's activity data includes:

사용자의 제1 내지 제3 감정 상태 중 복수의 감정 상태가 판단된 경우, 복수의 감정 상태 각각으로 분류될 확률 값에 기초하여 사용자의 최종 감정 상태를 판단하는 단계를 더 포함하고, When a plurality of emotional states are determined among the first to third emotional states of the user, determining the final emotional state of the user based on a probability value of being classified into each of the plurality of emotional states,

상기 최종 감정 상태를 판단하는 단계는, The step of determining the final emotional state is,

이미지 데이터로부터 판단된 제1 감정 상태에 대해서는 보다 높은 제1 가중치를 부여하고, 텍스트 데이터로부터 판단된 제2 감정 상태에 대해서는 보다 낮은 제2 가중치를 부여하며, 제1 가중치를 제1 감정 상태의 값에 적용하고 제2 가중치를 제2 감정 상태의 값에 적용한 연산 값에 기초해 최종 감정 상태를 판단할 수도 있다. A higher first weight is assigned to the first emotional state determined from the image data, a lower second weight is assigned to the second emotional state determined from the text data, and the first weight is set to the value of the first emotional state. The final emotional state may be determined based on the calculation value applied to and the second weight is applied to the value of the second emotional state.

일 실시 예에서, 상기 가상 NPC 아바타의 성격은 내적 요인 및 외적 요인을 포함하고, In one embodiment, the personality of the virtual NPC avatar includes internal factors and external factors,

상기 내적 요인은 감정 상태와 관련되고 상기 외적 요인은 상기 감정 상태 하에서 발현되는 신체 반응과 관련되며, The internal factor is related to the emotional state and the external factor is related to the physical response expressed under the emotional state,

상기 2차 성격을 갖는 가상 NPC 아바타의 신체 반응은 감정 상태에 대응한 얼굴 표정을 구현하거나, 정보를 사용자의 텍스트 출력 방식, 음성 출력 방식으로 정보를 출력하는 것을 포함하고, The physical response of the virtual NPC avatar with the secondary personality includes implementing facial expressions corresponding to emotional states or outputting information through the user's text output method or voice output method,

상기 제1 데이터 세트를 형성하는 단계는, Forming the first data set includes:

감정 상태의 유형이 부정의 값을 갖지 않는 나머지 감정 상태 중 적어도 일부의 감정 상태만을 포함하도록 제1 데이터 세트를 형성하는 것일 수도 있다. The first data set may be formed so that the type of emotional state includes only at least some of the remaining emotional states that do not have a negative value.

일 실시 예에서, 상기 사용자의 행동 패턴 데이터는,In one embodiment, the user's behavior pattern data is,

사용자의 메타버스에서 사용자의 아바타의 이동 동선, 이동 위치, 동선 빈도, 위치 빈도, 활동 관련 선택된 컨텐츠, 활동 결정까지 걸린 준비 시간, 활동 시작 시간, 활동 빈도, 활동 후기, 활동 내용, 활동 범위 중 하나 이상을 포함하고, In the user's metaverse, one of the following is the movement line of the user's avatar, movement location, movement frequency, location frequency, selected content related to the activity, preparation time to decide on the activity, activity start time, activity frequency, activity review, activity content, and activity scope. Including the above,

상기 활동이 관련 컨텐츠를 가질 경우, 활동 시작까지 걸린 준비 시간은 해당 컨텐츠 선택까지 걸린 준비 시간을 나타내고, 활동 시작 시간은 컨텐츠 시작 시간을 나타내고, 활동 빈도는 컨텐츠 이용 빈도를 나타내고, 활동 후기는 컨텐츠 이용 후기를 나타내고, 활동 내용은 컨텐츠 내용을 나타내고, 활동 범위는 컨텐츠 선택 범위로 나타내는 것일 수도 있다. If the activity has related content, the preparation time taken to start the activity represents the preparation time taken to select the content, the activity start time represents the content start time, the activity frequency represents the frequency of content use, and the activity review represents the content use. It may represent a review, the activity content may represent content content, and the activity scope may represent a content selection range.

일 실시 예에서, 상기 가상 NPC 아바타(201)의 성격을 생성된 3차 성격으로 업데이트하는 단계는, In one embodiment, the step of updating the personality of the virtual NPC avatar 201 to the generated tertiary personality includes,

상기 제2 데이터 세트 및 행동 모방 알고리즘을 이용하여 상기 제2 데이터 세트 내 행동 패턴 데이터를 출력으로 갖고 나머지 데이터를 입력을 갖도록 3차 성격을 모델링하는 단계; 및 modeling a tertiary personality using the second data set and a behavior imitation algorithm to have behavioral pattern data in the second data set as output and the remaining data as input; and

상기 제2 데이터 세트에 기초하여 모델링된 3차 성격을 역강화학습(IRL, Inverse Reinforcement Learning)하는 단계를 포함하는 것일 수도 있다. It may also include the step of inverse reinforcement learning (IRL) of the tertiary personality modeled based on the second data set.

일 실시 예에서, 상기 방법은, In one embodiment, the method:

사용자의 메타버스 내 활동 로그 데이터에 기초하여 가상 엔피이 아바타와 성격 및 행동 패턴 중 적어도 하나가 매칭하는 사용자에게 적합한 컨텐츠를 추천하는 보조 성격을 생성하는 단계; 및 Generating an auxiliary personality that recommends content suitable for a user whose virtual NPC avatar matches at least one of personality and behavior patterns based on activity log data within the user's metaverse; and

상기 보조 성격을 추가로 갖도록 가상 NPC 아바타를 업데이트하는 단계를 더 포함하고, further comprising updating the virtual NPC avatar to additionally have the secondary personality,

상기 보조 성격의 네트워크 구조는 제1 서브 구조 및 제2 서브 구조를 포함하고, The network structure of the auxiliary nature includes a first sub-structure and a second sub-structure,

상기 제1 서브 구조는 입력 데이터와 출력 데이터 간의 선형 상관 관계를 모델한 것이고, 상기 제2 서브 구조는 입력 데이터와 출력 데이터 간의 비선형 상관 관계를 추론하도록 모델링된 것일 수도 있다. The first sub-structure may be modeled to infer a linear correlation between input data and output data, and the second sub-structure may be modeled to infer a non-linear correlation between input data and output data.

일 실시 예에서, 상기 보조 성격을 생성하는 단계는, In one embodiment, creating the secondary personality includes:

사용자의 메타버스 내 활동과 관련된 컨텐츠 정보, 해당 컨텐츠에 대응한 활동 데이터, 감정 상태 및 행동 패턴 데이터를 포함한 제3 데이터 세트를 형성하는 단계; forming a third data set including content information related to the user's activities in the metaverse, activity data corresponding to the content, emotional state, and behavior pattern data;

상기 제3 데이터 세트 내 활동 데이터, 감정 상태 및 행동 패턴 데이터 중에서 컨텐츠와 관련된 데이터 및 컨텐츠와 관련되지 않은 데이터를 분류하는 단계; Classifying data related to content and data not related to content among activity data, emotional state, and behavior pattern data in the third data set;

상기 컨텐츠와 관련된 데이터 및 상기 컨텐츠 정보로 이루어진 제1 서브 세트를 형성하는 단계; forming a first subset of data related to the content and the content information;

상기 컨텐츠와 관련되지 않은 데이터 및 상기 컨텐츠 정보로 이루어진 제2 서브 세트를 형성하는 단계; 및 forming a second subset consisting of data unrelated to the content and the content information; and

상기 제1 서브 세트를 이용하여 상기 보조 성격 내 제1 서브 구조를 학습하는 단계, 상기 제2 서브 세트를 이용하여 상기 보조 성격 내 제2 서브 구조를 학습하는 단계를 포함하는 것일 수도 있다. It may include learning a first sub-structure within the auxiliary personality using the first subset, and learning a second sub-structure within the auxiliary personality using the second subset.

일 실시 예에서, 상기 방법은 상기 보조 성격을 갖도록 업데이트된 가상 NPC 아바타가 사용자의 아바타와 메타버스 내 일정 거리에 접근한 경우에, 접근 상황 하에서 자신의 활동 데이터, 감정 상태 및 행동 패턴 중 적어도 일부에 기초하여 사용자에게 적합한 컨텐츠를 예측하고 예측된 컨텐츠를 메타버스 내에서 출력하여 사용자에게 제공하는 단계를 더 포함할 수도 있다. In one embodiment, the method may be performed when the virtual NPC avatar updated to have the auxiliary personality approaches the user's avatar at a certain distance within the metaverse, at least some of its activity data, emotional state, and behavior pattern under the approaching situation. It may further include predicting content suitable for the user based on and outputting the predicted content within the metaverse to provide it to the user.

일 실시 예에서, 상기 방법은, In one embodiment, the method:

복수의 사용자 각각의 메타버스 내 활동에 따라 맞춤화되어 생성되고 성장한 복수의 가상 NPC 아바타가 메타버스 내에 존재할 경우, 특정 사용자에 맞춤화된 하나 이상의 가상 NPC 아바타를 필터링하는 단계; 및 When a plurality of virtual NPC avatars customized and created and grown according to the activities of each of the plurality of users in the metaverse exist in the metaverse, filtering one or more virtual NPC avatars customized to a specific user; and

필터링된 가상 NPC 아바타를 통해 메타버스 정보를 제공하는 단계를 더 포함할 수도 있다. A step of providing metaverse information through a filtered virtual NPC avatar may be further included.

일 실시 예에서, 상기 방법은 필터링 이후에, 상기 필터링된 가상 NPC 아바타만이 존재하도록 메타버스를 재-구성하는 단계를 더 포함할 수도 있다. In one embodiment, the method may further include, after filtering, re-configuring the metaverse so that only the filtered virtual NPC avatars exist.

본 출원의 다른 일 측면에 따른 컴퓨터 판독가능한 기록매체는 상술한 실시 예들에 따른 사용자의 메타버스 활동 로그에 기초하여 메타버스 속 가상 NPC 아바타를 성장시키는 방법을 수행하기 위한, 프로그램을 기록할 수도 있다. A computer-readable recording medium according to another aspect of the present application may record a program for performing a method of growing a virtual NPC avatar in the metaverse based on the user's metaverse activity log according to the above-described embodiments. .

본 출원의 또 다른 일 측면에 따른 사용자의 메타버스 활동 로그에 기초하여 메타버스 속 가상 NPC 아바타를 성장시키는 시스템은 상기 시스템은 서비스 서버를 포함한다. 상기 서비스 서버는, According to another aspect of the present application, a system for growing a virtual NPC avatar in the metaverse based on a user's metaverse activity log includes a service server. The service server is,

사용자의 개인정보, 상기 사용자가 메타버스에서 활동하는 동안 전자 장치에 포착된 사용자의 활동 데이터 및 조작 데이터를 수신하는 데이터 수집 모듈; a data collection module that receives the user's personal information, the user's activity data and manipulation data captured on an electronic device while the user is active in the metaverse;

미리 저장된 성격 중 사용자의 개인정보에 대응한 성격을 1차 성격으로 갖는 가상 NPC 아바타를 생성하는 아바타 생성 모듈; An avatar creation module that generates a virtual NPC avatar with a personality corresponding to the user's personal information among pre-stored personalities as a primary personality;

미리 저장된 감정 인식 모델을 이용하여 사용자의 활동 데이터로부터 사용자의 감정 상태를 판단하는 감정 분석 모듈; an emotion analysis module that determines the user's emotional state from the user's activity data using a pre-stored emotion recognition model;

상기 활동 데이터 및 감정 상태에 기초하여 상기 가상 NPC 아바타의 2차 성격을 생성하고, 상기 가상 NPC 아바타의 성격을 상기 2차 성격으로 업데이트하는 아바타 성장 모듈을 포함한다. and an avatar growth module that generates a secondary personality of the virtual NPC avatar based on the activity data and emotional state, and updates the personality of the virtual NPC avatar to the secondary personality.

일 실시 예에서, 상기 서비스 서버는, In one embodiment, the service server,

수신된 활동 데이터 및 조작 데이터에 기초하여 사용자의 행동 패턴 데이터를 산출하는 행동 분석 모듈;을 더 포함하고, It further includes a behavior analysis module that calculates user behavior pattern data based on the received activity data and manipulation data,

상기 아바타 성장 모듈은, The avatar growth module is,

사용자의 활동 데이터 및 상기 활동 데이터에 대응한 감정 상태, 및 상기 활동 데이터에 대응한 사용자의 행동 패턴 데이터를 포함한 제2 데이터 세트를 형성하고, 상기 제2 데이터 세트를 이용하여 상기 사용자의 메타버스 내 행동을 모방하는 행동을 수행하는 상기 가상 NPC 아바타의 3차 성격을 생성하며, 그리고 상기 가상 NPC 아바타의 성격을 생성된 3차 성격으로 업데이트하도록 더 구성된다. Form a second data set including the user's activity data, emotional state corresponding to the activity data, and user's behavior pattern data corresponding to the activity data, and use the second data set to enter the user's metaverse. and generate a tertiary personality of the virtual NPC avatar that performs actions that mimic the behavior, and update the personality of the virtual NPC avatar with the generated tertiary personality.

본 발명의 일 측면에 따른 메타버스 속 가상 NPC 아바타를 성장시키는 시스템은 어떠한 메타버스에서도 그 도메인에 맞게 활동 중인 사용자의 행동 패턴, 활동 범위, 사용자와 메타버스 간의 상호작용 반응 등을 포함한 사용자의 메타버스 활동 로그에 기초하여 사용자에게 맞춤화된 성격을 생성하고 이미 정의된 가상 NPC 아바타의 초기 성격을 상기 맞춤화된 성격으로 업데이트할 수 있다. According to one aspect of the present invention, the system for growing a virtual NPC avatar in the metaverse includes the user's metaverse, including the behavior pattern, activity range, interaction response between the user and the metaverse, etc. of the user active in the domain in any metaverse. Based on the bus activity log, a customized personality can be created for the user and the already defined initial personality of the virtual NPC avatar can be updated with the customized personality.

그 결과, 상기 메타버스 속 가상 NPC 아바타를 성장시키는 시스템은 가상 NPC 아바타를 메타버스의 개발자들이 정의해둔 룰에서 조금은 벗어나 좀 더 차별화되도록 성장시킬 수 있다. 특히, 상기 가상 NPC 아바타를 사용자의 메타버스 활동 로그의 양이 증가할수록 사용자와 더 원활한 소통이 가능한 성격으로 성장시킬 수도 있다. As a result, the system for growing virtual NPC avatars in the metaverse can grow virtual NPC avatars to be more differentiated and deviate slightly from the rules defined by metaverse developers. In particular, the virtual NPC avatar can be developed into a personality that allows for smoother communication with the user as the amount of the user's metaverse activity log increases.

또한, 상기 메타버스 속 가상 NPC 아바타를 성장시키는 시스템은 사용자의 선호도에 적합한 추천 컨텐츠, 또는 기타 메타버스 정보를 맞춤형으로 성장한 가상 NPC 아바타를 통해 효과적으로 알릴 수도 있다. Additionally, the system for growing a virtual NPC avatar in the metaverse can effectively inform recommended content suitable for the user's preferences or other metaverse information through a custom-grown virtual NPC avatar.

본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 청구범위의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description of the claims.

본 발명 또는 종래 기술의 실시 예의 기술적 해결책을 보다 명확하게 설명하기 위해, 실시 예에 대한 설명에서 필요한 도면이 아래에서 간단히 소개된다. 아래의 도면들은 본 명세서의 실시 예를 설명하기 목적일 뿐 한정의 목적이 아니라는 것으로 이해되어야 한다. 또한, 설명의 명료성을 위해 아래의 도면들에서 과장, 생략 등 다양한 변형이 적용된 일부 요소들이 도시될 수 있다.
도 1은, 본 출원의 일 측면에 따른, 메타버스 속 가상 NPC 아바타를 성장시키는 시스템의 개략도이다.
도 2는, 본 출원의 일 실시 예에 따른, 서비스 서버의 개략도이다.
도 3a는, 본 출원의 다른 일 측면에 따른, 사용자의 메타버스 활동 로그에 기초하여 메타버스 속 가상 NPC 아바타를 성장시키는 방법의 흐름도이다.
도 3b는, 도 3a의 흐름도 내 단계들을 개략적으로 설명하는 도면이다.
도 4는, 본 출원의 일 실시 예에 따른, 이미지 기반 감정 인식 모델을 이용하여 사용자의 감정 상태를 판단하는 과정의 흐름도이다.
도 5는, 도 4의 과정의 개략도이다.
도 6은, 본 출원의 일 실시 예에 따른, 사용자의 다중 감정 상태를 판단하는 과정의 개략도이다.
도 7은, 도 6의 과정을 뎁스별로 설명한 세부 개략도이다.
도 8은, 본 출원의 일 실시 예에 따른, 텍스트 기반 감정 인식 모델을 이용하여 사용자의 감정 상태를 판단하는 과정의 흐름도이다.
도 9는, 본 출원의 일 실시 예에 따른, 음성 기반 감정 인식 모델을 이용하여 사용자의 감정 상태를 판단하는 과정의 개략도이다.
도 10은, 본 출원의 일 실시 예에 따른, 통합 감정 인식 모델을 이용하여 다양한 활동 데이터로부터 사용자의 감정 상태를 판단하는 과정의 개략도이다.
도 11은, 본 출원의 일 실시 예에 따른, 가상 NPC 아바타를 외적 측면에서 보다 중점적으로 사용자에 대해 맞춤화해 성장하는 과정의 개략도이다.
도 12는, 본 출원의 일 실시 예에 따른, 행동 트리의 개략도이다.
도 13은, 본 출원의 일 실시 예에 따른, 보조 성격의 네트워크 구조도이다.
In order to more clearly explain the technical solutions of the embodiments of the present invention or the prior art, drawings necessary in the description of the embodiments are briefly introduced below. It should be understood that the drawings below are for illustrative purposes only and not for limiting purposes of the present specification. Additionally, for clarity of explanation, some elements may be shown in the drawings below with various modifications, such as exaggeration or omission.
1 is a schematic diagram of a system for growing a virtual NPC avatar in the metaverse, according to one aspect of the present application.
Figure 2 is a schematic diagram of a service server, according to an embodiment of the present application.
FIG. 3A is a flowchart of a method for growing a virtual NPC avatar in the metaverse based on a user's metaverse activity log, according to another aspect of the present application.
FIG. 3B is a diagram schematically explaining steps in the flowchart of FIG. 3A.
Figure 4 is a flowchart of a process for determining a user's emotional state using an image-based emotion recognition model, according to an embodiment of the present application.
Figure 5 is a schematic diagram of the process in Figure 4.
Figure 6 is a schematic diagram of a process for determining a user's multiple emotional states, according to an embodiment of the present application.
Figure 7 is a detailed schematic diagram explaining the process of Figure 6 by depth.
Figure 8 is a flowchart of a process for determining a user's emotional state using a text-based emotion recognition model, according to an embodiment of the present application.
Figure 9 is a schematic diagram of a process for determining a user's emotional state using a voice-based emotion recognition model, according to an embodiment of the present application.
Figure 10 is a schematic diagram of a process for determining a user's emotional state from various activity data using an integrated emotion recognition model, according to an embodiment of the present application.
Figure 11 is a schematic diagram of the process of growing a virtual NPC avatar by customizing it to the user with more emphasis on the external aspect, according to an embodiment of the present application.
12 is a schematic diagram of an action tree, according to an embodiment of the present application.
Figure 13 is a network structure diagram of an auxiliary nature according to an embodiment of the present application.

이하에서, 도면을 참조하여 본 출원의 실시 예들에 대하여 상세히 살펴본다.Hereinafter, embodiments of the present application will be examined in detail with reference to the drawings.

그러나, 이는 본 개시(disclosure)를 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 개시의 실시 예의 다양한 변경(modification), 균등물(equivalent), 및/또는 대체물(alternative)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.However, this disclosure is not intended to limit the disclosure to specific embodiments, and should be understood to include various modifications, equivalents, and/or alternatives to the embodiments of the disclosure. . In connection with the description of the drawings, similar reference numbers may be used for similar components.

본 명세서에서, "가진다," "가질 수 있다,""포함한다," 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 단계, 부품, 요소 및/또는 성분 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재나 부가를 제외시키는 것이 아니다. In this specification, expressions such as “have,” “may have,” “includes,” or “may include” refer to the corresponding features (e.g., numerical values, functions, operations, steps, parts, elements, and/or components). It refers to the presence of components such as etc.) and does not exclude the presence or addition of additional features.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When a component is said to be "connected" or "connected" to another component, it is understood that it may be directly connected to or connected to the other component, but that other components may exist in between. It should be. On the other hand, when it is mentioned that a component is “directly connected” or “directly connected” to another component, it should be understood that there are no other components in between.

다양한 실시 예에서 사용된 "제 1", "제 2", "첫째" 또는 "둘째" 등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 해당 구성요소들을 한정하지 않는다. 상기 표현들은 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 수 있다. 예를 들면, 제1 구성요소와 제2 구성요소는, 순서 또는 중요도와 무관하게, 서로 다른 구성요소를 나타낼 수 있다. Expressions such as “first,” “second,” “first,” or “second” used in various embodiments may modify various elements regardless of order and/or importance, and limit the elements. I never do that. The above expressions can be used to distinguish one component from another. For example, the first component and the second component may represent different components, regardless of order or importance.

본 명세서에서 사용되는 단수 표현의 구성의 실시 예들은 상기 단수 표현과 관련된 문구들이 이와 명백히 반대의 의미를 나타내지 않는 한 복수 표현의 구성 들의 실시 예들도 포함한다.Embodiments of singular expressions used in this specification also include embodiments of plural expressions, unless phrases related to the singular expression clearly indicate the contrary.

본 명세서에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)," "~하는 능력을 가지는(having the capacity to)," "~하도록 설계된(designed to)," "~하도록 변경된(adapted to)," "~하도록 만들어진(made to),"또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성(또는 설정)된"은 하드웨어적으로 "특별히 설계된(specifically designed to)"것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성(또는 설정)된 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.As used herein, the expression “configured to” may mean, for example, “suitable for,” “having the capacity to,” or “having the capacity to.” ," can be used interchangeably with "designed to," "adapted to," "made to," or "capable of." The term “configured (or set) to” may not necessarily mean “specifically designed to” in hardware. Instead, in some contexts, the expression “a device configured to” may mean that the device is “capable of” working with other devices or components. For example, the phrase "processor configured (or set) to perform A, B, and C" refers to a processor dedicated to performing the operations (e.g., an embedded processor), or executing one or more software programs stored on a memory device. By doing so, it may mean a general-purpose processor (eg, CPU or application processor) capable of performing the corresponding operations.

도 1은, 본 출원의 일 측면에 따른, 메타버스 속 가상 NPC 아바타를 성장시키는 시스템의 개략도이다. 1 is a schematic diagram of a system for growing a virtual NPC avatar in the metaverse, according to one aspect of the present application.

실시예들에 따른 상기 메타버스 속 가상 NPC 아바타를 성장시키는 시스템(1)은 전적으로 하드웨어이거나, 전적으로 소프트웨어이거나, 또는 부분적으로 하드웨어이고 부분적으로 소프트웨어인 측면을 가질 수 있다. 예컨대, 시스템은 데이터 처리 능력이 구비된 하드웨어 및 이를 구동시키기 위한 운용 소프트웨어를 통칭할 수 있다. 본 명세서에서 "부(unit)", "시스템" 및 "장치" 등의 용어는 하드웨어 및 해당 하드웨어에 의해 구동되는 소프트웨어의 조합을 지칭하는 것으로 의도된다. 예를 들어, 하드웨어는 CPU(Central Processing Unit), GPU(Graphic Processing Unit) 또는 다른 프로세서(processor)를 포함하는 데이터 처리 기기일 수 있다. 또한, 소프트웨어는 실행중인 프로세스, 객체(object), 실행파일(executable), 실행 스레드(thread of execution), 프로그램(program) 등을 지칭할 수 있다.The system 1 for growing a virtual NPC avatar in the metaverse according to embodiments may be entirely hardware, entirely software, or may have aspects that are partly hardware and partly software. For example, a system may collectively refer to hardware equipped with data processing capabilities and operating software for running it. In this specification, terms such as “unit,” “system,” and “device” are intended to refer to a combination of hardware and software driven by the hardware. For example, the hardware may be a data processing device that includes a Central Processing Unit (CPU), Graphics Processing Unit (GPU), or other processor. Additionally, software may refer to a running process, object, executable, thread of execution, program, etc.

도 1을 참조하면, 상기 메타버스 속 가상 NPC 아바타를 성장시키는 시스템(1)은 사용자의 전자 장치(100), 가상 NPC 아바타(201)를 제공하는 서비스 서버(200)를 포함한다. Referring to FIG. 1, the system 1 for growing a virtual NPC avatar in the metaverse includes a user's electronic device 100 and a service server 200 that provides a virtual NPC avatar 201.

사용자는 전자 장치(100)를 통해 서비스 서버(200)가 제공하는 메타버스와 상호작용하여 다양한 활동을 경험하는 사람을 의미한다. A user refers to a person who experiences various activities by interacting with the metaverse provided by the service server 200 through the electronic device 100.

메타버스는 가공, 추상을 의미하는 메타(meta)와 현실 세계를 의미하는 유니버스(universe)의 합성어로서, 현실 세계와 동일하거나 유사한 자극을 전달하고 반응을 구현하는 가상 공간을 지칭한다. 상기 메타버스는 주제에 따라 게임이 될 수도 있고, 혹은 특정 도메인에 맞는 비즈니스 시스템이 될 수 있다. 또는, 메타버스는 형태에 따라 책을 열람하는 도서관이거나, 쇼핑몰 혹은 다양한 체감형의 박물관 형태로 구현될 수도 있다. Metaverse is a compound word of meta, meaning processing and abstraction, and universe, meaning the real world. It refers to a virtual space that delivers stimuli and implements responses that are the same or similar to the real world. Depending on the topic, the metaverse can be a game or a business system suited to a specific domain. Alternatively, the metaverse may be implemented in the form of a library for reading books, a shopping mall, or a museum with various tangible experiences, depending on its form.

상기 메타버스 속 가상 NPC 아바타를 성장시키는 시스템(1)은 서비스 서버(200)를 통해 가상 NPC 아바타(201)를 생성한다. 가상 NPC 아바타(201)는 메타버스 설계자에 의해 생성된, 사용자의 아바타와 다른 아바타이다. The system 1 for growing a virtual NPC avatar in the metaverse generates a virtual NPC avatar 201 through the service server 200. The virtual NPC avatar 201 is an avatar created by a metaverse designer that is different from the user's avatar.

상기 가상 NPC 아바타(201)는 사용자에게 정보를 제공하여 간접적으로 가이드 하거나 행동 등을 통해 보다 직접적으로 가이드 하도록 구성된다. 상기 서비스 서버(200)는 가상 NPC 아바타(201), 사용자 아바타를 포함한 메타버스를 전자 장치(100)를 통해 사용자에게 제공한다.The virtual NPC avatar 201 is configured to guide the user indirectly by providing information or more directly through actions. The service server 200 provides a metaverse including a virtual NPC avatar 201 and a user avatar to the user through the electronic device 100.

그러나, 가상 NPC 아바타(201)는 메타버스 내에 기본적으로 배치되는 일반 NPC 아바타와 다르다. 일반 NPC 아바타 역시 가상 아바타이므로 외형 측면에서 유사할 수도 있다. 그러나, 그 본질 측면에서 일반 NPC 아바타는 NPC 데이터로 미리 설정된 내용을 기반으로 생성되는 오브젝트인 반면, 가상 NPC 아바타(201)는 유저를 모방한 형태로 행동하고, 좀 더 유저들과 자율적으로 소통하고 모방 중인 다른 유저들의 정보를 공유하는 공감하는 아바타이다. However, the virtual NPC avatar 201 is different from the regular NPC avatar basically placed in the metaverse. Regular NPC avatars are also virtual avatars, so they may be similar in appearance. However, in terms of its essence, a general NPC avatar is an object created based on content preset as NPC data, while a virtual NPC avatar 201 behaves in a form that imitates a user, communicates more autonomously with users, and It is an empathetic avatar that shares information about other users it is imitating.

전기 통신 네트워크를 통해 상기 전자 장치(100)와 서비스 서버(200)가 연결된다. The electronic device 100 and the service server 200 are connected through a telecommunication network.

전기 통신 네트워크는, 전자 장치(100)와 서비스 서버(200)가 서로 데이터를 송수신할 수 있는 유/무선의 전기 통신 경로를 제공한다. 전기 통신 네트워크는 특정한 통신 프로토콜에 따른 통신 방식에 한정되지 않으며, 구현 예에 따라 적절한 통신 방식이 사용될 수 있다. 예를 들어, 인터넷 프로토콜(IP) 기초의 시스템으로 구성되는 경우, 전기 통신 네트워크는 유선 및/또는 무선 인터넷 망으로 구현될 수 있다. 또는 전자 장치(100)와 서비스 서버(200)가 이동 통신 단말로서 구현되는 경우 전기 통신 네트워크는 셀룰러 네트워크 또는 WLAN(wireless local area network) 네트워크와 같은 무선망으로 구현될 수 있다.The telecommunication network provides a wired/wireless telecommunication path through which the electronic device 100 and the service server 200 can transmit and receive data with each other. A telecommunication network is not limited to a communication method according to a specific communication protocol, and an appropriate communication method may be used depending on the implementation example. For example, when configured as an Internet Protocol (IP)-based system, the telecommunication network may be implemented as a wired and/or wireless Internet network. Alternatively, when the electronic device 100 and the service server 200 are implemented as mobile communication terminals, the telecommunication network may be implemented as a wireless network such as a cellular network or a wireless local area network (WLAN) network.

상기 전자 장치(100)는 서비스 서버(200)와 통신하는 클라이언트 단말 장치로서, 데이터를 처리할 수 있는 적어도 하나의 프로세서, 데이터를 저장하는 메모리, 데이터를 송/수신하는 통신부를 포함한다. 이러한 전자 장치(100)는 예를 들어, 랩탑 컴퓨터, 기타 컴퓨팅 장치, 태블릿, 셀룰러 폰, 스마트 폰, 스마트 워치, 스마트 글래스, 헤드 마운트 디스플레이(HMD), 기타 모바일 장치, 기타 웨어러블 장치로 구현될 수도 있다. The electronic device 100 is a client terminal device that communicates with the service server 200 and includes at least one processor capable of processing data, a memory for storing data, and a communication unit for transmitting/receiving data. This electronic device 100 may be implemented as, for example, a laptop computer, other computing device, tablet, cellular phone, smart phone, smart watch, smart glasses, head-mounted display (HMD), other mobile device, or other wearable device. there is.

상기 메타버스 속 가상NPC아바타를 성장시키는 시스템(1)에서 사용자는 메타버스에 접속하여 메타버스와 상호작용하면서 메타버스 내 다양한 활동을 경험한다. 사용자는 메타버스 내 자신의 아바타를 조작하여 메타버스와 상호작용할 수도 있다. 상기 사용자와 메타버스 간의 상호작용은 상기 사용자의 아바타를 통해 다른 사용자의 아바타, 상기 가상 NPC 아바타(201)와 상호작용하는 것을 포함한다. 상호작용 동안의 입력 데이터, 출력 데이터 및 그 사이의 연산 데이터는 활동 내역으로 관리할 수도 있다. 상기 활동 내역은 메타버스 활동 로그로 기록 및 저장될 수도 있다.In the system (1) for growing a virtual NPC avatar in the metaverse, users access the metaverse, interact with the metaverse, and experience various activities within the metaverse. Users can also interact with the metaverse by manipulating their avatar within the metaverse. Interaction between the user and the metaverse includes interacting with another user's avatar and the virtual NPC avatar 201 through the user's avatar. Input data, output data, and computational data during interaction can also be managed as activity details. The activity details may be recorded and stored as a metaverse activity log.

특정 실시 예들에서, 상기 전자 장치(100)는 입력 장치를 통해 메타버스에 접속한 사용자의 개인정보를 획득하여 서비스 서버(200)로 전송하도록 구성된다. In certain embodiments, the electronic device 100 is configured to obtain personal information of a user accessing the metaverse through an input device and transmit it to the service server 200.

또한, 상기 전자 장치(100)는 입력 장치를 통해 메타버스 내 사용자가 활동하는 동안 유저 인터페이스 조작 명령, 컨텐츠 상호작용 조작 명령을 포함한 사용자의 조작 데이터를 획득하여 서비스 서버(200)로 전송하도록 구성된다. In addition, the electronic device 100 is configured to acquire the user's manipulation data, including user interface manipulation commands and content interaction manipulation commands, while the user is active in the metaverse through an input device and transmit it to the service server 200. .

또한, 상기 전자 장치(100)는 카메라, 마이크, 및 입력 장치를 통해 메타버스 내 사용자가 활동하는 동안 사용자의 이미지, 텍스트, 음성을 포함한 활동 데이터를 획득하여 서비스 서버(200)로 전송하도록 구성된다. In addition, the electronic device 100 is configured to acquire activity data including the user's image, text, and voice while the user is active in the metaverse through a camera, microphone, and input device and transmit it to the service server 200. .

상기 전자 장치(100)는 조작 데이터 및 활동 데이터에 기초한 사용자의 메타버스 활동 로그 데이터가 반영된, 사용자 맞춤형 성격을 갖는 가상 NPC 아바타(201)를 수신하여 표시하도록 구성될 수도 있다. The electronic device 100 may be configured to receive and display a virtual NPC avatar 201 with a user-customized personality that reflects the user's metaverse activity log data based on manipulation data and activity data.

또한, 일부 실시 예들에서, 상기 전자 장치(100)는 사용자의 선호도에 적합한 추천 컨텐츠, 또는 기타 메타버스 정보를 상기 가상 NPC 아바타(201)를 통해 제공하도록 구성될 수도 있다. Additionally, in some embodiments, the electronic device 100 may be configured to provide recommended content suitable for the user's preferences or other metaverse information through the virtual NPC avatar 201.

이러한 전자 장치(100)의 동작에 대해서는 아래의 도 3을 참조해 보다 상세히 서술한다. The operation of this electronic device 100 will be described in more detail with reference to FIG. 3 below.

서비스 서버(200)는 네트워크 서버로 구현되는 다수의 컴퓨터 시스템 또는 컴퓨터 소프트웨어이다. 여기서, 네트워크 서버란, 사설 인트라넷 또는 인터넷과 같은 컴퓨터 네트워크를 통해 다른 네트워크 서버와 통신할 수 있는 하위 장치와 연결되어 작업 수행 요청을 접수하고 그에 대한 작업을 수행하여 수행 결과를 제공하는 컴퓨터 시스템 및 컴퓨터 소프트웨어(네트워크 서버 프로그램)를 의미한다. 그러나 이러한 네트워크 서버 프로그램 이외에도, 네트워크 서버 상에서 동작하는 일련의 응용 프로그램과 경우에 따라서는 내부에 구축되어 있는 각종 데이터베이스를 포함하는 넓은 개념으로 이해되어야 할 것이다. 상기 서비스 서버(200)는 네트워크 서버, 웹 서버, 파일 서버, 슈퍼컴퓨터, 데스크탑 컴퓨터 등과 같은 컴퓨팅 장치들의 임의의 유형 또는 유형들의 조합으로 구현될 수도 있다. 이를 위해, 서비스 서버(200)는 데이터를 처리할 수 있는 적어도 하나의 프로세서, 데이터를 저장하는 메모리, 데이터를 송/수신하는 통신부를 포함한다.The service server 200 is a plurality of computer systems or computer software implemented as network servers. Here, a network server is a computer system and computer that is connected to a sub-device that can communicate with other network servers through a computer network such as a private intranet or the Internet, receives a request to perform a task, performs the task, and provides a performance result. Refers to software (network server program). However, in addition to these network server programs, it should be understood as a broad concept that includes a series of application programs operating on a network server and, in some cases, various databases built within it. The service server 200 may be implemented as any type or combination of types of computing devices, such as a network server, web server, file server, supercomputer, desktop computer, etc. For this purpose, the service server 200 includes at least one processor capable of processing data, a memory for storing data, and a communication unit for transmitting/receiving data.

도 2는, 본 출원의 일 실시 예에 따른, 서비스 서버의 개략도이다. Figure 2 is a schematic diagram of a service server, according to an embodiment of the present application.

도 2를 참조하면, 상기 서비스 서버(200)는 데이터 수집 모듈(210), 아바타 생성 모듈(220), 감정 분석 모듈(240), 아바타 성장 모듈(250), 및 행동 분석 모듈(260)을 포함한다. 일부 실시 예들에서, 상기 서비스 서버(200)는 아바타 DB(221), 및/또는 활동 내역 DB(230)를 더 포함할 수도 있다. 상기 활동 내역 DB(230)는 감정 분석 DB(234), 및 행동 분석 DB(236)를 포함한다. 또한, 일부 실시 예들에서, 상기 서비스 서버(200)는 추천 모듈(280), 및 메타버스 관리 모듈(290)을 더 포함할 수도 있다. Referring to FIG. 2, the service server 200 includes a data collection module 210, an avatar creation module 220, an emotion analysis module 240, an avatar growth module 250, and a behavior analysis module 260. do. In some embodiments, the service server 200 may further include an avatar DB 221 and/or an activity history DB 230. The activity history DB 230 includes an emotion analysis DB 234 and a behavior analysis DB 236. Additionally, in some embodiments, the service server 200 may further include a recommendation module 280 and a metaverse management module 290.

도 2의 구성요소들은 서비스 서버(200)의 하드웨어들(프로세서, 메모리 등)의 동작에 따라 소프트웨어 관점에서 기능적으로 구현된 구성요소들을 의미한다. 예를 들어, 데이터 수집 모듈(210)은 통신부, 프로세서에 의해 구현될 수도 있다. 또한 나머지 모듈(220, 240, 250, 260, 280, 290)은 프로세서에 의해 구현될 수도 있다. 또한, 아바타 DB(221), 활동 내역 DB(230)는 메모리에 의해 구현될 수도 있다. The components in FIG. 2 refer to components functionally implemented from a software perspective according to the operation of hardware (processor, memory, etc.) of the service server 200. For example, the data collection module 210 may be implemented by a communication unit or a processor. Additionally, the remaining modules 220, 240, 250, 260, 280, and 290 may be implemented by a processor. Additionally, the avatar DB 221 and the activity history DB 230 may be implemented by memory.

서비스 서버(200)는 메타버스를 생성 및 제공하는 서비스를 운영하는 서버이다. 서비스 서버(200)는 접속한 사용자의 전자 장치(100)에 메타버스 공간 및 객체를 표시하기 위한 메타버스 데이터를 생성 및 제공한다. The service server 200 is a server that operates a service that creates and provides a metaverse. The service server 200 generates and provides metaverse data for displaying metaverse spaces and objects on the connected user's electronic device 100.

상기 메타버스 데이터는 2차원 또는 3차원 가상 공간 상에 객체 모델을 렌더링하여 생성되는 데이터이다. 상기 객체는 가상 공간이 제공하는 장소와 관련된 객체(예컨대, 상품, 설치물 등), 사용자의 아바타, 가상 NPC 아바타(201)를 포함한다. The metaverse data is data created by rendering an object model in a two-dimensional or three-dimensional virtual space. The objects include objects related to places provided by the virtual space (eg, products, installations, etc.), a user's avatar, and a virtual NPC avatar 201.

데이터 수집 모듈(210)은 사용자의 개인정보를 수신하도록 구성된다. 또한, 상기 데이터 수집 모듈(210)은, 서비스 서버(200)가 메타버스 환경 및 사용자의 아바타를 구현한 메타버스 데이터를 제공하여 상기 메타버스 환경에서 사용자가 활동하는 동안에 상기 전자 장치(100)에 의해 포착된, 사용자의 조작 데이터 및 활동 데이터를 전자 장치(100)로부터 수신하도록 구성될 수도 있다. The data collection module 210 is configured to receive the user's personal information. In addition, the data collection module 210 allows the service server 200 to provide metaverse data embodying the metaverse environment and the user's avatar to the electronic device 100 while the user is active in the metaverse environment. It may be configured to receive the user's manipulation data and activity data captured by the electronic device 100.

상기 아바타 생성 모듈(220)은 사용자의 메타버스 내 활동에 따라 성장할 가상 NPC 아바타(201)를 생성하도록 구성된다. 일부 실시 예들에서, 상기 아바타 생성 모듈(220)은 시스템에 미리 지정된 복수의 성격 중 사용자의 개인정보에 대응한 성격을 1차 성격으로 갖는 가상 NPC 아바타를 생성하도록 구성될 수도 있다. The avatar creation module 220 is configured to create a virtual NPC avatar 201 that will grow according to the user's activities in the metaverse. In some embodiments, the avatar creation module 220 may be configured to generate a virtual NPC avatar whose primary personality is a personality corresponding to the user's personal information among a plurality of personalities pre-specified in the system.

본 명세서에서 성격은 외부 환경에 대해 특정한 행동을 구현하는 것을 정의한 개인의 심리적 체계이다. 상기 성격은 외부의 환경에 따라 감정이 발생되고 그 감정 하에서 반응을 출력하는 것으로 구조화할 수도 있다. 상기 반응의 출력은 행동, 또는 텍스트, 음성, 얼굴 표정 등을 포함한다. In this specification, personality is an individual's psychological system that defines the implementation of specific behaviors in relation to the external environment. The personality may be structured in such a way that emotions are generated depending on the external environment and responses are output under those emotions. The output of the response may include an action, text, voice, facial expression, etc.

즉, 상기 성격은 감정의 발현이란 내적 요인, 및 신체 반응의 출력이란 외적 요인의 조합으로 표현될 수도 있다.In other words, the personality may be expressed as a combination of internal factors such as the expression of emotions and external factors such as the output of physical reactions.

상기 감정 분석 모듈(240)은 수신된 사용자의 활동 데이터에 기초하여 사용자의 감정 상태를 판단하도록 구성된다. The emotion analysis module 240 is configured to determine the user's emotional state based on the received user's activity data.

상기 아바타 성장 모듈(250)은 사용자의 메타버스 내 활동이 진행되면 가상 NPC 아바타(201)의 새로운 성격을 생성하고 가상 NPC 아바타(201)의 기존 성격을 상기 새로운 성격으로 업데이트할 수도 있다.The avatar growth module 250 may generate a new personality for the virtual NPC avatar 201 and update the existing personality of the virtual NPC avatar 201 with the new personality as the user's activities in the metaverse progress.

상기 새로운 성격은 상기 메타버스 내 활동 도중에 획득된, 활동 데이터, 및 행동 패턴 데이터에 기초하여 생성된다. 상기 아바타 성장 모듈(250)은 내적 요인(예컨대, 감정), 외적 요인(예컨대, 반응, 행동 패턴) 에서 사용자의 메타버스 내 활동에 맞춤화되도록 가상 NPC 아바타(201)를 성장시킬 수도 있다. The new personality is created based on activity data and behavior pattern data acquired during activities within the metaverse. The avatar growth module 250 may grow the virtual NPC avatar 201 to be customized to the user's activities in the metaverse in terms of internal factors (eg, emotions) and external factors (eg, reactions, behavior patterns).

일부 실시 예들에서, 아바타 성장 모듈(250)은 사용자가 메타버스에서 활동하는 동안의 사용자의 행동 패턴 데이터에 기초하여 가상 NPC 아바타(201)를 보다 외적 요인을 중심으로 사용자에 대해 맞춤화되도록 성장시킬 수도 있다. In some embodiments, the avatar growth module 250 may grow the virtual NPC avatar 201 to be more customized to the user around external factors based on data on the user's behavior patterns while the user is active in the metaverse. there is.

또한, 일부 실시 예들에서, 상기 아바타 성장 모듈(260)은 상기 가상 NPC 아바타(201)에 아래에서 서술하는 보조 성격을 추가로 갖도록 업데이트할 수도 있다. Additionally, in some embodiments, the avatar growth module 260 may update the virtual NPC avatar 201 to have additional auxiliary personalities described below.

상기 행동 분석 모듈(260)은 사용자의 조작 데이터, 활동 데이터에 기초하여 사용자의 메타버스 내 활동을 행동 측면에서 분석한 행동 패턴 데이터를 산출하도록 구성된다. The behavior analysis module 260 is configured to calculate behavior pattern data by analyzing the user's activities within the metaverse in terms of behavior, based on the user's manipulation data and activity data.

상기 추천 모듈(280)은 사용자의 메타버스 활동 로그 데이터 내 사용자의 활동 데이터, 감정 상태 및 행동 패턴 데이터에 기초하여 사용자의 취향에 대응한 컨텐츠를 추천하는 보조 성격을 생성하도록 더 구성될 수도 있다. The recommendation module 280 may be further configured to create an auxiliary personality that recommends content corresponding to the user's tastes based on the user's activity data, emotional state, and behavior pattern data in the user's metaverse activity log data.

상기 메타버스 관리 모듈(290)은 메타버스 내 NPC 아바타 중에서 사용자에 맞춤화되어 성장한 하나 이상의 가상 NPC 아바타(201)를 필터링할 수도 있다. 또한, 상기 메타버스 관리 모듈(290)은 해당 사용자에게 제공되는 메타버스 내 적어도 일부 공간, 또는 전용 공간에는 필터링된 상기 하나 이상의 가상 NPC 아바타(201)만이 제공되도록 메타버스를 재-구성할 수도 있다. The metaverse management module 290 may filter one or more virtual NPC avatars 201 that have been customized and grown for the user among NPC avatars in the metaverse. In addition, the metaverse management module 290 may re-configure the metaverse so that only the one or more filtered virtual NPC avatars 201 are provided in at least some space or a dedicated space in the metaverse provided to the user. .

서비스 서버(200)는 사용자의 메타버스 내 활동이 발생할 경우 사용자의 메타버스 활동 로그를 생성할 수도 있다. The service server 200 may generate a user's metaverse activity log when activity within the user's metaverse occurs.

상기 메타버스 활동 로그는 상기 메타버스 환경에서 사용자가 활동한 내역을 서술하는 데이터이다. 상기 메타버스 활동 로그는 활동 동안에 상기 전자 장치(100)에 제공된 메타버스 데이터, 상기 전자 장치(100)에 의해 포착된, 사용자의 조작 데이터 및 활동 데이터, 이로부터 판단된 감정 상태, 분석된 행동 패턴을 포함할 수도 있다. The metaverse activity log is data that describes the user's activity details in the metaverse environment. The metaverse activity log includes metaverse data provided to the electronic device 100 during activity, user manipulation data and activity data captured by the electronic device 100, emotional state determined therefrom, and analyzed behavior patterns. It may also include .

상기 서비스 서버(200)는 상기 메타버스 활동 로그를 시계열 순서로 저장할 수도 있다. The service server 200 may store the metaverse activity log in time series order.

이러한 서비스 서버(200), 및 도 2에 도시된 구성요소들의 동작에 대해서는 아래의 도 3등을 참조해 보다 상세히 서술한다. The operation of the service server 200 and the components shown in FIG. 2 will be described in more detail with reference to FIG. 3 below.

도 3a는, 본 출원의 다른 일 측면에 따른, 사용자의 메타버스 활동 로그에 기초하여 메타버스 속 가상 NPC 아바타를 성장시키는 방법의 흐름도이고, 도 3b는, 도 3a의 흐름도 내 단계들을 개략적으로 설명하는 도면이다. FIG. 3A is a flowchart of a method of growing a virtual NPC avatar in the metaverse based on a user's metaverse activity log, according to another aspect of the present application, and FIG. 3B schematically explains the steps in the flowchart of FIG. 3A. This is a drawing.

도 3의 사용자의 메타버스 활동 로그에 기초하여 메타버스 속 가상 NPC 아바타를 성장시키는 방법은 도 2의 서비스 서버(200)와 같은, 하나 이상의 컴퓨팅 장치에 의해 수행될 수도 있다. The method of growing a virtual NPC avatar in the metaverse based on the user's metaverse activity log of FIG. 3 may be performed by one or more computing devices, such as the service server 200 of FIG. 2.

도 3을 참조하면, 상기 메타버스 속 가상 NPC 아바타를 성장시키는 방법은, 사용자의 개인정보를 수신하는 단계(S100); 및 시스템에 미리 지정된 복수의 성격 중 사용자의 개인정보에 대응한 성격을 1차 성격으로 갖는 가상 NPC 아바타(201)를 생성하는 단계(S200)를 포함한다. Referring to FIG. 3, the method of growing a virtual NPC avatar in the metaverse includes receiving the user's personal information (S100); and a step (S200) of generating a virtual NPC avatar 201 having as its primary personality a personality corresponding to the user's personal information among a plurality of personalities pre-specified in the system.

상기 단계(S100)에서 데이터 수집 모듈(210)은 사용자의 개인정보를 수신할 수도 있다. In step S100, the data collection module 210 may receive the user's personal information.

상기 사용자의 개인정보는 메타버스 서비스에 가입하기 위해 시스템에 입력되는 정보를 나타낸다. 상기 사용자의 개인정보는, 예를 들어 사용자의 나이, 성별, 지리적 위치(예컨대, 주소, 지역), 기타 개인정보를 포함할 수도 있다. 상기 사용자의 개인정보는 아바타 생성 모듈(220)에 공급되어 가상 NPC 아바타(201)의 1차 성격을 생성하는데 이용될 수도 있다. The user's personal information represents information entered into the system to subscribe to the Metaverse service. The user's personal information may include, for example, the user's age, gender, geographic location (eg, address, region), and other personal information. The user's personal information may be supplied to the avatar creation module 220 and used to create the primary personality of the virtual NPC avatar 201.

상기 단계(S200)에서 아바타 생성 모듈(220)은 시스템에 미리 지정된 복수의 성격 중 사용자의 개인정보에 대응한 성격을 1차 성격으로 갖는 가상 NPC 아바타를 생성할 수도 있다. In the step S200, the avatar creation module 220 may generate a virtual NPC avatar whose primary personality is a personality corresponding to the user's personal information among a plurality of personalities pre-specified in the system.

상기 1차 성격을 갖는 가상 NPC 아바타(201)는 사용자의 아바타와 다른 외형을 갖도록 생성될 수도 있다. The virtual NPC avatar 201 with the primary personality may be created to have a different appearance from the user's avatar.

1차 캐릭터 생성으로 일단 상기 아바타 생성 모듈(220)은 외형적인 측면의 조합을 시작한다. 해당 조합은 기본적인 템플릿이 존재하고 사용자의 정보와 초기 성격에 따라서 눈, 코, 입 위치 및 체형, 또는 성별, 기타 외형 요소를 먼저 결정하게 된다. 결정된 정보는 아바타 DB(221)에 저장되고 클라이언트를 통해 접속 시 기본적으로 랜덤하게 데이터를 받아 메타버스 세계 내에 가상 NPC 아바타(201)를 생성한 후 사용자에게 제공된다. When creating the first character, the avatar creation module 220 begins combining external aspects. For this combination, there is a basic template, and the eyes, nose, mouth position and body shape, gender, and other external factors are first determined according to the user's information and initial personality. The determined information is stored in the avatar DB 221, and when accessed through a client, data is basically randomly received, a virtual NPC avatar 201 is created within the metaverse world, and then provided to the user.

상기 아바타 생성 모듈(220)은 시스템에 미리 지정된 복수의 성격 중 사용자의 개인정보에 대응한 성격을 1차 성격으로 갖는 가상 NPC 아바타를 생성하도록 구성된다. 개인정보의 항목에 따라 형성되는 복수의 집단 각각을 대표하는 성격이 상기 복수의 성격으로 지정될 수도 있다. The avatar creation module 220 is configured to create a virtual NPC avatar whose primary personality is the personality corresponding to the user's personal information among the plurality of personalities pre-specified in the system. A personality representing each of a plurality of groups formed according to items of personal information may be designated as the plurality of personalities.

상기 아바타 생성 모듈200은, 예를 들어, 30세 남자의 개인정보가 수신되면, 30세 남자 집단을 대표하는 성격을 1차 성격으로 갖는 가상 NPC 아바타(201)를 생성할 수도 있다. For example, when personal information of a 30-year-old man is received, the avatar creation module 200 may generate a virtual NPC avatar 201 whose primary personality is representative of a group of 30-year-old men.

이러한 1차 성격은 가상 NPC 아바타(201)를 성장시킬 사용자의 성격을 반영하지 않은 성격이다. This primary personality is a personality that does not reflect the personality of the user who will develop the virtual NPC avatar 201.

1차 성격을 갖는 가상 NPC 아바타(201)는 주요 위치에서 배회를 하는 것과 같은 간단한 행동 패턴을 유지한다.The virtual NPC avatar 201 with a primary personality maintains a simple behavior pattern such as wandering around a key location.

상기 가상 NPC 아바타(201)는 처음에는 사용자의 성격, 및 그에 따른 취향이 전혀 다르지만, 사용자의 메타버스 내 활동을 점차 반영하여 성격 및 그 취향이 점차 닮아지도록 사용자의 성격 및 그 취향을 학습하는 동작에 의해 성장할 수도 있다. The virtual NPC avatar 201 initially has a completely different personality and tastes from the user, but gradually reflects the user's activities in the metaverse and learns the user's personality and tastes so that the personality and tastes gradually become similar. It can also grow by.

일부 실시 예들에서, 상기 단계(S200)에서 가상 NPC 아바타(201)가 생성될 경우, 가상 NPC 아바타(201)를 서술하는 정보(예컨대, 외형, 1차 성격 등) 및 가상 NPC 아바타(201)를 성장시키는 사용자의 개인정보를 포함한 가상 NPC 아바타 정보를 아바타 DB(221)에 저장할 수도 있다. In some embodiments, when the virtual NPC avatar 201 is created in step S200, information describing the virtual NPC avatar 201 (e.g., appearance, primary personality, etc.) and the virtual NPC avatar 201 are provided. Virtual NPC avatar information, including personal information of the growing user, may be stored in the avatar DB 221.

또한, 상기 메타버스 속 가상 NPC 아바타를 성장시키는 방법은, 서비스 서버(200)가 메타버스 환경 및 사용자의 아바타를 구현한 메타버스 데이터를 제공하여 상기 메타버스 환경에서 사용자가 활동하는 동안에 상기 전자 장치(100)에 의해 포착된, 사용자의 조작 데이터 및 반응 데이터를 전자 장치(100)로부터 수신하는 단계(S300)를 포함한다. In addition, the method of growing a virtual NPC avatar in the metaverse is that the service server 200 provides metaverse data embodying the metaverse environment and the user's avatar, so that the electronic device can be used while the user is active in the metaverse environment. It includes receiving the user's manipulation data and reaction data captured by 100 from the electronic device 100 (S300).

상기 단계(S300)에서 상기 사용자의 메타버스 내 활동은 메타버스와 사용자의 상호작용을 포함한다. 상기 메타버스와 사용자의 상호작용은 사용자의 아바타를 제어하는 것, 다른 아바타와 상호작용하는 것, 메타버스 내 컨텐츠를 시청하거나 평가하는 것과 같은 메타버스 내 컨텐츠와 상호작용하는 것을 포함한다. 다른 아바타와 상호작용하는 것은 텍스트 채팅, 음성 채팅 및/또는 화상 채팅을 포함한다. In step S300, the user's activities within the metaverse include interaction between the metaverse and the user. A user's interaction with the metaverse includes controlling the user's avatar, interacting with other avatars, and interacting with content within the metaverse, such as watching or evaluating content within the metaverse. Interacting with other avatars includes text chat, voice chat, and/or video chat.

상기 사용자의 조작 데이터는 유저 인터페이스 조작 명령, 컨텐츠 상호작용 조작 명령을 나타낸 데이터이다. 사용자의 메타버스 내 활동은 상기 조작 데이터에 따라 정의될 수도 있다. 상기 사용자의 조작 데이터는, 예를 들어 사용자의 아바타 관리를 위한 유저 인터페이스 조작 명령, 아바타의 이동을 위한 유저 인터페이스 조작 명령, 컨텐츠 진행 또는 시청을 위한 컨텐츠 상호작용 조작 명령을 나타낸 데이터를 포함한다. The user's manipulation data is data representing user interface manipulation commands and content interaction manipulation commands. The user's activities within the metaverse may be defined according to the manipulation data. The user's manipulation data includes, for example, data representing user interface manipulation commands for managing the user's avatar, user interface manipulation commands for moving the avatar, and content interaction manipulation commands for progressing or viewing content.

사용자의 조작 데이터는 사용자의 활동 정보를 정의할 수도 있다. 예를 들어, 예를 들어, 사용자의 전자 장치(100)가 채팅을 선택해 실행할 경우 사용자의 메타버스 내 활동 정보는 채팅으로 정의된다. 또는, 사용자의 전자 장치(100)가 메타버스 세계에서 이동하는 동작을 실행할 경우, 활동 정보는 메타버스 세계의 이동으로 정의될 수도 있다.The user's operation data may define the user's activity information. For example, when the user's electronic device 100 selects and executes chat, the user's activity information in the metaverse is defined as chat. Alternatively, when the user's electronic device 100 performs an operation to move in the metaverse world, the activity information may be defined as movement in the metaverse world.

예를 들어, 상기 데이터 수집 모듈(210)은 다음의 조작 데이터를 수신할 수도 있다.For example, the data collection module 210 may receive the following manipulation data.

행동action 내용detail kk 키누름 시간 (반응 속도)Key press time (response speed) pp 대상을 가리키는 포인팅 시간 (호버)Pointing time (hover) to target plpl 포인팅 후 클릭 시간Click time after pointing mm 다음 행동까지 걸린 시간Time until next action ww 대기 시간waiting time

상기 사용자의 활동 데이터는, 사용자가 메타버스와 상호작용하는 사용자의 메타버스 내 활동 과정에서 발현된 사용자의 다양한 신체 정보를 포함한다. 상기 사용자의 활동 데이터는 사용자의 이미지, 음성, 및 텍스트 데이터 중 하나 이상의 데이터를 포함할 수도 있다. The user's activity data includes various body information of the user expressed during the user's activity within the metaverse when the user interacts with the metaverse. The user's activity data may include one or more of the user's image, voice, and text data.

본 명세서에서 상기 컨텐츠는 일반적으로 지칭되는, 문서, 비디오와 같은 미디어 데이터로 제한되지 않는다. 상기 컨텐츠는 텍스트 및/또는 그래픽으로 제공되는 메타버스 환경, 및 채팅, 놀이, 게임과 같이 사용자가 이용할 수 있는 메타버스가 제공하는 다양한 기능을 포함한다. 메타버스 환경을 감상하는 것, 또는 메타버스 환경을 여행하는 것 또한 컨텐츠 활동으로 지칭될 수도 있다. 상기 사용자의 활동 데이터 중 일부 또는 전부는 해당 활동의 내용 정보를 포함할 수도 있다. In this specification, the content is not limited to commonly referred to as media data such as documents and videos. The content includes a metaverse environment provided in text and/or graphics, and various functions provided by the metaverse that can be used by users, such as chatting, play, and games. Appreciating the metaverse environment or traveling the metaverse environment may also be referred to as content activities. Some or all of the user's activity data may include content information about the activity.

상기 사용자의 이미지는 사용자의 메타버스 내 활동 동안에 사용자의 얼굴을 촬영한 이미지이다. 상기 사용자의 이미지는 사용자의 메타버스 내 활동이 있을 때 반응하여 촬영되거나, 또는 메타버스의 개별 접속 이후에 메타버스 내 활동하는 전체 시간 중 일부 또는 전부의 시간 동안 촬영된 것일 수도 있다. The user's image is an image taken of the user's face during the user's activities in the metaverse. The user's image may be taken in response to the user's activity in the metaverse, or may be taken during part or all of the total time of the user's activity in the metaverse after individual access to the metaverse.

상기 이미지는 동영상과 같은 연속 이미지 내 개별 이미지, 또는 정지 이미지일 수도 있다. 예를 들어, 상기 사용자의 이미지는 정지 이미지일 수도 있다. 상기 정지 이미지는 메타버스 내 컨텐츠를 시청하는 것에 반응하여 촬영된 것일 수도 있다. 또는, 상기 사용자의 이미지는 메타버스의 개별 접속 이후에 메타버스 내 활동하는 전체 시간 중 일부 또는 전부의 시간 동안 촬영된 비디오의 프레임 이미지일 수도 있다. The image may be an individual image within a series of images, such as a video, or a still image. For example, the user's image may be a still image. The still image may have been taken in response to viewing content within the metaverse. Alternatively, the user's image may be a frame image of a video taken during some or all of the total time of activity in the metaverse after individual access to the metaverse.

상기 사용자의 음성은, 음성 채팅, 감탄사, 메타버스 정보의 낭독 등과 같은, 메타버스 내 발생한 사용자의 활동과 관련된 음성을 포함한다. The user's voice includes voice related to the user's activities occurring within the metaverse, such as voice chatting, exclamations, and recitation of metaverse information.

또한, 상기 사용자의 텍스트는, 텍스트 채팅 등과 같은, 메타버스 내 발생한 사용자의 활동과 관련된 텍스트를 포함한다. Additionally, the user's text includes text related to the user's activities that occurred within the metaverse, such as text chat.

일부 실시 예들에서, 상기 활동 데이터는 사용자의 메타버스 내 활동에 이용된 활동 데이터와 사용자의 메타버스 내 활동에 이용되지 않은 활동 데이터로 분류될 수도 있다. In some embodiments, the activity data may be classified into activity data used for activities in the user's metaverse and activity data not used for activities in the user's metaverse.

사용자의 메타버스 내 활동에 이용된 활동 데이터는 사용자의 메타버스 내 활동이 진행되는데 명령, 및 그 활동 내용을 위한 데이터이다.The activity data used for the user's activities within the metaverse is data for commands and the contents of the activity while the user's activities within the metaverse are progressing.

활동 데이터가 사용자의 메타버스 내 활동에 이용된 활동 데이터인지 여부는 그 활동에 따라 달라질 수도 있다. Whether the activity data is activity data used in the user's activities within the metaverse may vary depending on the activity.

예를 들어, 메타버스 내 활동이 텍스트 채팅일 경우, 사용자의 메타버스 내 활동에 이용된 활동 데이터는 텍스트 채팅의 내용을 이루는 텍스트 데이터를 포함할 수도 있다. For example, when the activity within the metaverse is text chatting, the activity data used for the user's activity within the metaverse may include text data that constitutes the content of the text chat.

메타버스 내 활동이 음성 채팅일 경우, 사용자의 메타버스 내 활동에 이용된 활동 데이터는 음성 채팅의 내용을 이루는 음성 데이터를 포함할 수도 있다. If the activity within the metaverse is voice chatting, the activity data used in the user's activity within the metaverse may include voice data that constitutes the content of the voice chat.

메타버스 내 활동이 텍스트 채팅일 경우, 사용자의 메타버스 내 활동에 이용되지 않은 활동 데이터는 사용자의 이미지, 음성 데이터를 포함한다. If the activity within the metaverse is a text chat, activity data not used in the user's activity within the metaverse includes the user's image and voice data.

반면, 메타버스 내 활동이 화상 채팅일 경우, 사용자의 메타버스 내 활동에 이용된 활동 데이터는 사용자의 이미지, 음성 데이터를 포함할 수도 있다. On the other hand, if the activity within the metaverse is a video chat, the activity data used for the user's activity within the metaverse may include the user's image and voice data.

또한, 상기 메타버스 속 가상 NPC 아바타를 성장시키는 방법은, 단계(S300)에서 수신된 사용자의 활동 데이터에 기초하여 사용자의 감정 상태를 판단하는 단계(S400)를 포함한다. Additionally, the method of growing a virtual NPC avatar in the metaverse includes a step (S400) of determining the user's emotional state based on the user's activity data received in step (S300).

상기 단계(S400)에서 감정 분석 모듈(240)은 미리 저장된 감정 인식 모델을 이용하여 사용자의 활동 데이터로부터 사용자의 감정 상태를 판단할 수도 있다. In step S400, the emotion analysis module 240 may determine the user's emotional state from the user's activity data using a pre-stored emotion recognition model.

특정 실시 예들에서, 상기 감정 인식 모델은 이미지 기반 감정 인식 모델, 텍스트 기반 감정 인식 모델, 또는 통합 감정 인식 모델일 수도 있다. 상기 통합 감정 인식 모델은 사용자의 이미지 데이터, 텍스트 데이터, 음성 데이터 중 2이상의 데이터로부터 사용자의 감정 상태를 인식하도록 구성된다. In certain embodiments, the emotion recognition model may be an image-based emotion recognition model, a text-based emotion recognition model, or an integrated emotion recognition model. The integrated emotion recognition model is configured to recognize the user's emotional state from two or more of the user's image data, text data, and voice data.

상기 단계(S400)는, 사용자의 이미지 데이터로부터 사용자의 제1 감정 상태를 판단하는 단계, 사용자의 텍스트 데이터로부터 사용자의 제2 감정 상태를 판단하는 단계, 및 사용자의 음성 데이터로부터 사용자의 제3 감정 상태를 판단하는 단계 중 하나 이상의 단계를 포함할 수도 있다. 상기 제1 내지 제3 감정 상태 각각은 판단되는데 이용된 원시 활동 데이터의 유형을 구별하기 위한 것에 불과하며, 제1 내지 제3 감정 상태 모두 사용자의 감정 상태를 예측한 결과를 나타낸다. The step (S400) includes determining the user's first emotional state from the user's image data, determining the user's second emotional state from the user's text data, and determining the user's third emotional state from the user's voice data. It may include one or more steps among the steps for determining the status. Each of the first to third emotional states is merely for distinguishing the type of raw activity data used for determination, and both the first to third emotional states represent results of predicting the user's emotional state.

상기 감정 분석 모듈(240)은 포함된 감정 인식 모델에 대응한 활동 데이터를 포함한 감정 인식 모델에 입력하여 사용자의 감정 상태를 판단할 수도 있다. The emotion analysis module 240 may determine the user's emotional state by inputting activity data corresponding to the included emotion recognition model into an emotion recognition model.

도 4는, 본 출원의 일 실시 예에 따른, 이미지 기반 감정 인식 모델을 이용하여 사용자의 감정 상태를 판단하는 과정의 흐름도이고, 도 5는, 도 4의 과정의 개략도이다. FIG. 4 is a flowchart of a process for determining a user's emotional state using an image-based emotion recognition model, according to an embodiment of the present application, and FIG. 5 is a schematic diagram of the process of FIG. 4 .

도 4 및 도 5를 참조하면, 상기 감정 분석 모듈(240)은 사용자의 이미지를 미리 학습된 이미지 기반 감정 인식 모델에 입력하여 사용자의 제1 감정 상태를 판단할 수도 있다. 상기 사용자의 감정 상태는 1차 성격을 갖고 이미 생성된 가상 NPC 아바타(201)의 성격을 2차 성격으로 성장시키기 위해 이용된다. Referring to FIGS. 4 and 5 , the emotion analysis module 240 may determine the user's first emotional state by inputting the user's image into a pre-trained image-based emotion recognition model. The user's emotional state is used to grow the personality of the virtual NPC avatar 201, which has already been created with a primary personality, into a secondary personality.

상기 이미지 기반 감정 인식 모델은, 입력 이미지에서 얼굴 영역을 검출하는 얼굴 검출 유닛, 검출된 얼굴 영역에서 사용자의 이미지 특징을 추출하는 특징 추출 유닛, 및 모델에 미리 지정된 복수의 감정 상태 중에서 추출된 특징에 기초하여 입력 이미지 내 얼굴이 가리키는 사용자의 감정 상태를 분류하는 감정 판단 유닛을 포함한, 기계학습 모델이다. 상기 기계학습 모델은 뉴럴 네트워크 구조를 가진다. The image-based emotion recognition model includes a face detection unit that detects a face area in an input image, a feature extraction unit that extracts user image features from the detected face area, and features extracted from a plurality of emotional states pre-specified in the model. It is a machine learning model that includes an emotion judgment unit that classifies the user's emotional state indicated by the face in the input image based on it. The machine learning model has a neural network structure.

상기 얼굴 검출 유닛은 다양한 얼굴 영역 검출 알고리즘을 통해 사용자의 얼굴 영역을 검출할 수도 있다. 상기 얼굴 영역 검출 알고리즘은, 예를 들어 Haar, NN(Neural Network), SVM(Support Vector Machine), Gabor, 또는 SIFT을 포함할 수도 있으나, 이에 제한되지 않으며 기타 영역 검출 알고리즘일 수도 있다. The face detection unit may detect the user's face area through various face area detection algorithms. The face area detection algorithm may include, for example, Haar, Neural Network (NN), Support Vector Machine (SVM), Gabor, or SIFT, but is not limited thereto and may be other area detection algorithms.

일부 실시 예들에서, 상기 사용자의 이미지 특징은 사용자의 얼굴 내 랜드마크(landmarks)를 포함할 수도 있다. 상기 랜드마크는 눈, 코, 입, 귀 등과 같은 얼굴 해부학적 특징에 연관된 정보이다. 상기 랜드마크는 얼굴 내에 서 일정한 상대 위치를 가지며, 얼굴 포즈에 따른 기하학적 관계의 변함이 적다. 여기서, 포즈는 얼굴의 표정, 또는 얼굴의 회전 방향, 기울임 각도 등을 나타낸다. 랜드마크를 추출하는 것은 랜드마크를 식별하고, 식별된 랜드마크의 위치 정보를 산출하는 것을 포함한다. In some embodiments, the user's image features may include landmarks within the user's face. The landmarks are information related to facial anatomical features such as eyes, nose, mouth, ears, etc. The landmark has a constant relative position within the face, and there is little change in the geometric relationship depending on the facial pose. Here, the pose represents the facial expression, or the rotation direction or tilt angle of the face. Extracting a landmark includes identifying the landmark and calculating location information of the identified landmark.

또한, 상기 사용자의 이미지 특징은 모서리, 에지로 표현 가능한 기하학적 특징을 포함한다. 상기 기학적 특징은 랜드마크 사이를 연결한 에지를 포함할 수도 있다. 상기 모서리는 상기 랜드마크로 추출되지 않은 모서리 포인트일 수도 있다. Additionally, the user's image features include geometric features that can be expressed as corners and edges. The geometric feature may include edges connecting landmarks. The edge may be a corner point that has not been extracted as the landmark.

상기 특징 추출 유닛은 다양한 특징 추출 알고리즘을 통해 사용자의 이미지 특징을 추출할 수도 있다. 상기 특징 추출 알고리즘은, 예를 들어, ACM(Active Contour Model), ASM(Active Shape Model), AAM(Active Appearance model), SDM(Supervised Descent Method), 또는 이미지 특징을 추출하도록 구성된 뉴럴 네트워크를 포함할 수도 있으나, 이에 제한되지 않으며 기타 랜드마크 추출 알고리즘일 수도 있다. 상기 이미지 특징을 추출하도록 구성된 뉴럴 네트워크는 컨볼루션 레이어, 또는 기타 저차원 필터 레이어를 포함한 뉴럴 네트워크일 수도 있다. The feature extraction unit may extract user image features through various feature extraction algorithms. The feature extraction algorithm may include, for example, Active Contour Model (ACM), Active Shape Model (ASM), Active Appearance model (AAM), Supervised Descent Method (SDM), or a neural network configured to extract image features. However, it is not limited to this and may be other landmark extraction algorithms. The neural network configured to extract the image features may be a neural network including a convolutional layer or other low-dimensional filter layer.

상기 감정 판단 유닛은 입력 이미지로부터 추출된 특징과 감정 상태 간의 상관 관계를 추론하여 사용자의 감정 상태를 판단하도록 구성된 뉴럴 네트워크 구조를 가진다. 상기 감정 판단 유닛은 입력된 특징에 대응한 사용자가 모델에 미리 지정된 복수의 감정 상태 각각에 분류될 확률을 입력된 특징에 기초하여 각각 산출하고, 산출된 확률에 기초하여 사용자의 감정 상태를 판단할 수도 있다. 산출된 확률 값이 가장 높은 감정 상태가 사용자의 감정 상태로 판단될 수도 있다. The emotion determination unit has a neural network structure configured to determine the user's emotional state by inferring the correlation between the features extracted from the input image and the emotional state. The emotion determination unit calculates the probability that the user corresponding to the input feature is classified into each of a plurality of emotional states pre-specified in the model based on the input feature, and determines the user's emotional state based on the calculated probability. It may be possible. The emotional state with the highest calculated probability value may be determined to be the user's emotional state.

상기 뉴럴 네트워크 구조는, 예를 들어 완전 연결 레이어, 또는 MLP(Multi-layer Perceptron)일 수도 있으나, 이에 제한되지 않으며 기타 NN 구조일 수도 있다. The neural network structure may be, for example, a fully connected layer or MLP (Multi-layer Perceptron), but is not limited thereto and may be other NN structures.

상기 감정 인식 모델은 복수의 트래이닝 샘플로 이루어진 트래이닝 데이터 세트를 이용하여 미리 학습될 수도 있다. 각 트래이닝 샘플은 트래이닝 데이터 및 레이블 데이터를 각각 가진다. 상기 트래이닝 데이터는 사용자의 샘플 이미지 데이터일 수도 있다. 상기 레이블 데이터는 샘플 이미지 촬영 당시 사용자의 실제 감정 상태일 수도 있다. The emotion recognition model may be trained in advance using a training data set consisting of a plurality of training samples. Each training sample has training data and label data, respectively. The training data may be user sample image data. The label data may be the user's actual emotional state at the time of capturing the sample image.

상기 감정 인식 모델은 트래이닝 샘플 각각의 트래이닝 데이터가 입력되면, 내부 파라미터로 트래이닝 데이터를 연산 처리하여 결과 값(즉, 예측된 감정 상태)을 산출한다. 상기 감정 인식 모델의 파라미터는 상기 연산 결과 값과 레이블 데이터의 값(실제 감정 상태) 간의 오차가 보다 감소하도록 학습된다. 학습 완료된 감정 인식 모델은 상기 오차가 최소화되는 파라미터를 가진다.When training data for each training sample is input, the emotion recognition model computes the training data with internal parameters and calculates a result value (i.e., predicted emotional state). The parameters of the emotion recognition model are learned so that the error between the calculation result value and the value of the label data (actual emotional state) is further reduced. The trained emotion recognition model has parameters that minimize the error.

일부 실시 예들에서, 미리 학습된 감정 인식 모델은 감정 판단 유닛이 학습된 것일 수도 있다. 얼굴 검출 유닛, 및 특징 추출 유닛 중 적어도 하나는 별도의 학습 없이 이미 공개된 알고리즘을 그대로 이용할 수도 있다. In some embodiments, a pre-trained emotion recognition model may be one in which an emotion judgment unit has been learned. At least one of the face detection unit and the feature extraction unit may use an already published algorithm without additional learning.

이 경우, 상기 감정 판단 유닛은 복수의 트래이닝 샘플로 이루어진 트래이닝 데이터 세트를 이용하여 미리 학습될 수도 있다. 트래이닝 샘플 내 트래이닝 데이터는 입력 이미지 내 얼굴 영역으로부터 추출된 샘플 특징 데이터일 수도 있다. 상기 레이블 데이터는 샘플 특징이 추출된 샘플 이미지 촬영 당시 사용자의 실제 감정 상태일 수도 있다. In this case, the emotion judgment unit may be trained in advance using a training data set consisting of a plurality of training samples. The training data in the training sample may be sample feature data extracted from the face area in the input image. The label data may be the user's actual emotional state at the time of capturing the sample image from which the sample feature is extracted.

감정 판단 유닛의 학습 과정은 감정 인식 모델의 학습과정과 유사하므로, 자세한 설명은 생략한다.Since the learning process of the emotion judgment unit is similar to the learning process of the emotion recognition model, detailed description is omitted.

이와 같이 감정 인식 모델이 산출 가능한 감정 상태는 트래이닝 데이터 세트에 의존한다. In this way, the emotional state that can be calculated by the emotion recognition model depends on the training data set.

도 6은, 본 출원의 일 실시 예에 따른, 사용자의 다중 감정 상태를 판단하는 과정의 개략도이고, 도 7은, 도 6의 과정을 뎁스별로 설명한 세부 개략도이다. FIG. 6 is a schematic diagram of a process for determining a user's multiple emotional states according to an embodiment of the present application, and FIG. 7 is a detailed schematic diagram explaining the process of FIG. 6 by depth.

도 6 및 도 7을 참조하면, 상기 감정 분석 모듈(240)은 감정 유형 및 감정 종류 중 적어도 하나를 사용자의 감정 상태로 판단할 수도 있다. 상기 감정 분석 모듈(240)은 사용자의 이미지에서 얼굴 영역을 검출하고(S411), 상기 얼굴 영역에서 특징을 추출하여 사용자의 감정 유형을 제1 뎁스로 판단하고(S413), 상기 얼굴 영역에서 특징을 추출하여 사용자의 감정 종류를 제2 뎁스로 판단(S415)하도록 구성될 수도 있다. Referring to FIGS. 6 and 7 , the emotion analysis module 240 may determine at least one of emotion type and emotion type as the user's emotional state. The emotion analysis module 240 detects a face area in the user's image (S411), extracts features from the face area, determines the user's emotion type as the first depth (S413), and extracts features from the face area. It may be configured to extract and determine the user's emotion type as the second depth (S415).

상기 감정 유형은 긍정 및 부정을 포함한다. 예를 들어, 상기 감정 유형은 긍정, 부정만을 포함하거나, 또는 도 7에 도시된 것처럼 긍정, 중립, 부정을 포함할 수도 있다. The emotion types include positive and negative. For example, the emotion type may include only positive and negative emotions, or may include positive, neutral, and negative emotions as shown in FIG. 7 .

상기 감정 종류는 상기 감정 유형 보다 감정 상태를 보다 세분화한 것이다. 예를 들어, 상기 감정 종류는, 도 7에 도시된 것처럼 7종의 종류를 포함할 수도 있다. 그러나, 도 7의 감정 종류의 수는 단지 예시적인 것으로서, 실시 예들에 따라 그 종류, 수가 변경될 수도 있다. The emotion type is a more detailed emotional state than the emotion type. For example, the emotion types may include 7 types as shown in FIG. 7. However, the number of emotion types in FIG. 7 is merely illustrative, and the types and number may change depending on embodiments.

이를 위해, 상기 감정 인식 모델은 사용자의 감정 유형을 판단하기 위한 제1 감정 판단 유닛, 및 사용자의 감정 종류를 판단하기 위한 제2 감정 판단 유닛을 포함할 수도 있다. To this end, the emotion recognition model may include a first emotion determination unit for determining the user's emotion type and a second emotion determination unit for determining the user's emotion type.

상기 제1 감정 판단 유닛 및 제2 감정 판단 유닛은 서로 다른 레이블 데이터를 포함한 트래이닝 데이터 세트를 이용하여 학습될 수도 있다. 상기 제1 감정 판단 유닛의 트래이닝 데이터 세트 내 레이블 데이터 각각은 긍정, 부정 또는 중립을 나타낼 수도 있다. 상기 제2 감정 판단 유닛의 트래이닝 데이터 세트 내 레이블 데이터는 7종의 감정 종류 중 어느 하나를 나타낼 수도 있다. The first emotion judgment unit and the second emotion judgment unit may be learned using training data sets containing different label data. Each label data in the training data set of the first emotion judgment unit may indicate positive, negative, or neutral. Label data in the training data set of the second emotion judgment unit may represent one of seven types of emotions.

이러한 트래이닝 데이터 세트를 이용하여 학습된 감정 판단 유닛에 의해 감정 유형 및/또는 감정 종류가 감정 상태로 판단되는 과정은 도 4, 도 5의 과정과 유사하므로, 자세한 설명은 생략한다. The process of determining the emotion type and/or emotion type as an emotional state by the emotion judgment unit learned using this training data set is similar to the process of FIGS. 4 and 5, and therefore detailed description will be omitted.

상기 감정 인식 모델을 이용하면 사용자의 제1 감정 상태가 판단된다. 예를 들어, 감정 분석 모듈(240)은 도 5의 이미지 기반 감정 인식 모델을 이용하여 감정 상태가 긍정으로 분류될 확률 값(예컨대, 0.9)이 가장 높을 경우, 사용자의 감정 상태를 긍정으로 판단한다. Using the emotion recognition model, the user's first emotional state is determined. For example, the emotion analysis module 240 determines the user's emotional state as positive when the probability value (e.g., 0.9) of the emotional state being classified as positive is the highest using the image-based emotion recognition model of FIG. 5. .

다시 도 3을 참조하면, 상기 단계(S400)에서 감정 분석 모듈(240)은 사용자의 음성 데이터 및/또는 사용자의 테스트 데이터로부터 제2, 제3 사용자의 감정 상태를 판단할 수도 있다. Referring again to FIG. 3, in step S400, the emotion analysis module 240 may determine the emotional state of the second and third users from the user's voice data and/or the user's test data.

도 8은, 본 출원의 일 실시 예에 따른, 텍스트 기반 감정 인식 모델을 이용하여 사용자의 감정 상태를 판단하는 과정의 흐름도이다. Figure 8 is a flowchart of a process for determining a user's emotional state using a text-based emotion recognition model, according to an embodiment of the present application.

도 8을 참조하면, 상기 감정 분석 모듈(240)은 사용자의 텍스트 데이터를 미리 학습된 텍스트 기반 감정 인식 모델에 입력하여 사용자의 제2 감정 상태를 판단할 수도 있다(S400). Referring to FIG. 8, the emotion analysis module 240 may determine the user's second emotional state by inputting the user's text data into a pre-trained text-based emotion recognition model (S400).

도 8에 도시된 것처럼 사용자의 텍스트 데이터는 활동 데이터 내 사용자의 텍스트 데이터이거나, 또는 활동 데이터 내 사용자의 음성 데이터를 텍스트 형식으로 변환한 데이터일 수도 있다. As shown in FIG. 8, the user's text data may be the user's text data within the activity data, or may be data converted from the user's voice data within the activity data into text format.

이를 위해, 상기 감정 분석 모듈(240)은 입력 음성을 텍스트로 변환하는 STT(Speech-to-text) 유닛을 포함할 수도 있다. 상기 STT 유닛은 음성 데이터에서 음성 특징을 추출하고 추출된 음성 특징에 기초하여 음성 데이트에 대응한 텍스트를 산출하도록 구성된다. 상기 STT 유닛은 인공 신경망으로 이루어질 수도 있다. 상기 STT 유닛의 파라미터는 기계학습 모델의 학습 방식에 의해 트래이닝 데이터 세트의 언어 음성을 언어 텍스트로 변환하기 위한 값을 가질 수도 있다. To this end, the emotion analysis module 240 may include a speech-to-text (STT) unit that converts input voice into text. The STT unit is configured to extract voice features from voice data and calculate text corresponding to the voice data based on the extracted voice features. The STT unit may be comprised of an artificial neural network. The parameters of the STT unit may have values for converting the language speech of the training data set into language text by the learning method of the machine learning model.

상기 텍스트 기반 감정 인식 모델은 입력 텍스트를 복수의 토큰으로 토큰화하고 복수의 토큰 각각을 임베딩 처리하여 텍스트 벡터를 산출하며, 모델에 대해 미리 지정된 복수의 감정 상태 중에서 산출된 텍스트 벡터에 기초하여 입력 텍스트가 가리키는 사용자의 감정 상태를 분류하도록 구성된, 기계학습된 자연어 처리 모델이다. The text-based emotion recognition model tokenizes the input text into a plurality of tokens, calculates a text vector by embedding each of the plurality of tokens, and calculates the input text based on the text vector calculated from a plurality of emotional states pre-specified for the model. It is a machine-learned natural language processing model configured to classify the user's emotional state indicated by .

상기 자연어 처리 모델은, 예를 들어 BERT(Bidirectional Encoder Representations from Transformers), ELECTRA(Efficiently Learning an Encoder that Classifies Token Replacements Accurately)와 같이, 입력 텍스트를 단어 단위로 각각 토큰화하고 임베딩 처리하거나, 토큰화한 단어를 보다 큰 단위의 텍스트(예컨대, 문구, 문장, 단락 등)로 세그먼트화하고 임베딩 처리하거나, 및/또는 토큰 순서대로 인코딩 처리하도록 구성될 수도 있다. 그러나, 상기 자연어 처리 모델은 전술한 모델에 제한되지 않으며, 입력 텍스트로부터 텍스트 벡터를 산출 가능한 다양한 구조를 가질 수도 있다. The natural language processing model, for example, BERT (Bidirectional Encoder Representations from Transformers), ELECTRA (Efficiently Learning an Encoder that Classifies Token Replacements Accurately), tokenizes and embeds the input text word by word, or tokenizes it. It may be configured to segment and embed words into larger units of text (e.g., phrases, sentences, paragraphs, etc.) and/or encode them in token order. However, the natural language processing model is not limited to the above-described model and may have various structures capable of calculating text vectors from input text.

상기 자연어 처리 모델의 파라미터는 대상 언어를 처리하기 위한 값을 갖도록 미리 설계된 것일 수도 있다. 예를 들어, 상기 시스템(1)이 한국어 데이터를 처리하도록 설계된 경우, 상기 전처리 유닛은 Colbert, Electra 또는 한국어를 처리하도록 설계된 기타 자연어 처리 모델을 포함할 수도 있다. The parameters of the natural language processing model may be designed in advance to have values for processing the target language. For example, if the system 1 is designed to process Korean language data, the preprocessing unit may include Colbert, Electra, or other natural language processing models designed to process Korean language.

상기 자연어 처리 모델의 학습 과정은 도 4 등을 참조해 전술한 이미지 기반 감정 인식 모델의 학습 과정과 유사하므로, 차이점을 위주로 서술한다. Since the learning process of the natural language processing model is similar to the learning process of the image-based emotion recognition model described above with reference to FIG. 4, the differences will be mainly described.

상기 텍스트 벡터는 도 4의 사용자의 이미지 특징에 대응한다. 따라서, 상기 자연어 처리 모델은 상기 텍스트 벡터를 트래이닝 데이터로 이용하여 학습된다. The text vector corresponds to the user's image features in Figure 4. Therefore, the natural language processing model is learned using the text vector as training data.

또한, 일부 실시 예들에서, 상기 감정 분석 모듈(240)은 텍스트 전처리 유닛을 더 포함할 수도 있다. 상기 감정 분석 모듈(240)은 활동 데이터 내 사용자의 텍스트 데이터이거나, 또는 활동 데이터 내 사용자의 음성 데이터를 텍스트 형식으로 변환한 데이터를 텍스트 기반 감정 인식 모델에 입력하기 이전에, 텍스트 전처리 유닛에 의해 전 처리할 수도 있다. 그러면, 전 처리된 텍스트가 상기 텍스트 기반 감정 인식 모델에 입력된다. Additionally, in some embodiments, the emotion analysis module 240 may further include a text pre-processing unit. The emotion analysis module 240 is the user's text data in the activity data, or data converted from the user's voice data in the activity data into text format by a text pre-processing unit before inputting it into the text-based emotion recognition model. You can also process it. Then, the pre-processed text is input into the text-based emotion recognition model.

상기 텍스트 전처리 유닛은, 토큰화 이전에, 전처리 대상의 텍스트의 말뭉치(corpus)에서 미리 설정된 특수 기호, 불 용어(stop word) 텍스트를 추출하여 제거하거나, 및/또는 정규화 처리를 수행하도록 구성될 수도 있으나, 이에 제한되지 않으며 기타 다양한 텍스트 전처리 동작을 수행할 수도 있다. The text pre-processing unit may be configured to extract and remove preset special symbols and stop word texts from a corpus of text to be pre-processed, and/or perform normalization processing, before tokenization. However, it is not limited to this and various other text preprocessing operations may be performed.

일 예에서, 상기 텍스트 전처리 유닛은 특수 기호, 불 용어(stop word)로 미리 등록된 참조 텍스트를 이용하여 전처리 대상의 텍스트의 말뭉치가 특수 기호, 불 용어에 해당한 텍스트를 포함하는 지 확인할 수도 있다. 상기 텍스트 전처리 유닛은 텍스트의 말뭉치에서 특수 기호, 불용어를 제거하고 토큰화 동작을 수행할 수도 있다. In one example, the text preprocessing unit may use reference texts pre-registered as special symbols and stop words to check whether the text corpus to be preprocessed includes texts corresponding to special symbols and stop words. . The text preprocessing unit may remove special symbols and stop words from the text corpus and perform a tokenization operation.

상기 정규화 처리는 갖고 잇는 말뭉치로부터 노이즈 데이터를 제거하는 정제(cleaning) 처리 및/또는 정규 표현식 처리를 포함한다. The normalization process includes a cleaning process and/or a regular expression process to remove noise data from the existing corpus.

상기 감정 분석 모듈(240)은 사용자의 텍스트 데이터를 전처리하고, 전처리된 텍스트를 미리 학습된 텍스트 기반 감정 인식 모델에 입력하여 입력 텍스트를 임베딩 처리하여 특징 벡터를 산출하고, 산출된 특징 벡터에 기초하여 상기 특징 벡터가 분류될 각각의 확률 값을 산출한 뒤, 산출된 확률 값에 기초하여 사용자의 제2 감정 상태를 판단할 수도 있다. The emotion analysis module 240 preprocesses the user's text data, inputs the preprocessed text into a pre-trained text-based emotion recognition model, processes the embedding of the input text, calculates a feature vector, and calculates a feature vector based on the calculated feature vector. After calculating the probability values for each feature vector to be classified, the user's second emotional state may be determined based on the calculated probability values.

도 9는, 본 출원의 일 실시 예에 따른, 음성 기반 감정 인식 모델을 이용하여 사용자의 감정 상태를 판단하는 과정의 개략도이다. Figure 9 is a schematic diagram of a process for determining a user's emotional state using a voice-based emotion recognition model, according to an embodiment of the present application.

도 9를 참조하면, 일부 실시 예들에서, 상기 감정 분석 모듈(240)은 사용자의 음성 데이터 내 음성 신호로부터 사용자의 감정 상태를 판단하도록 구성될 수도 있다. Referring to FIG. 9, in some embodiments, the emotion analysis module 240 may be configured to determine the user's emotional state from a voice signal in the user's voice data.

이 경우, 상기 음성 데이터로부터 사용자의 감정 산출하는 단계는, 사용자의 음성 데이터를 텍스트 데이터로 변환하고, 상기 변환된 텍스트 데이터를 미리 학습된 도 8의 텍스트 기반 감정 인식 모델을 이용하여 사용자의 제3-1 감정 상태를 판단하는 단계; 및/또는 미리 학습된 도 9의 음성 기반 감정 인식 모델을 이용하여 사용자의 음성 데이터로부터 사용자의 제3-2 감정 상태를 판단하는 단계; 및/또는 를 포함할 수도 있다. In this case, the step of calculating the user's emotion from the voice data includes converting the user's voice data into text data and using the converted text data as a pre-learned text-based emotion recognition model of FIG. 8 to identify the user's third emotion. -1 Step of determining emotional state; and/or determining the 3-2 emotional state of the user from the user's voice data using the pre-trained voice-based emotion recognition model of FIG. 9; It may also include and/or.

상기 감정 분석 모듈(240)은 사용자의 음성 데이터를 텍스트 데이터로 변환하고, 변환된 텍스트 데이터를 전처리하고, 전처리된 텍스트를 미리 학습된 텍스트 기반 감정 인식 모델에 입력하여 입력 텍스트를 임베딩 처리하여 특징 벡터를 산출하고, 산출된 특징 벡터에 기초하여 상기 특징 벡터가 분류될 각각의 확률 값을 산출한 뒤, 산출된 확률 값에 기초하여 사용자의 제3-1 감정 상태를 판단할 수도 있다. The emotion analysis module 240 converts the user's voice data into text data, pre-processes the converted text data, inputs the pre-processed text into a pre-trained text-based emotion recognition model, and embeds the input text into a feature vector. After calculating and calculating each probability value that the feature vector will be classified based on the calculated feature vector, the user's 3-1 emotional state may be determined based on the calculated probability value.

상기 음성 기반 감정 인식 모델은 입력 신호로부터 음성 특징을 추출하고, 모델에 미리 지정된 복수의 감정 상태 중에서 추출된 음성 특징에 기초하여 입력 신호가 가리키는 사용자의 감정 상태를 분류하도록 구성된, 기계학습 모델이다. 상기 기계학습 모델은 신호에서 특징을 추출하고 분류하는 뉴럴 네트워크 구조를 가진다. The voice-based emotion recognition model is a machine learning model configured to extract voice features from an input signal and classify the user's emotional state indicated by the input signal based on the voice features extracted from a plurality of emotional states pre-specified in the model. The machine learning model has a neural network structure that extracts and classifies features from signals.

상기 음성 기반 감정 인식 모델은 CNN(Convolutional Neural Network), 기타 NN 구조를 가질 수도 있다. The voice-based emotion recognition model may have a Convolutional Neural Network (CNN) or other NN structure.

상기 음성 기반 감정 인식 모델은 상기 이미지 기반 감정 인식 모델과 유사하므로, 자세한 설명은 생략한다.Since the voice-based emotion recognition model is similar to the image-based emotion recognition model, detailed description will be omitted.

일부 실시 예들에서, 일부 실시 예들에서, 상기 사용자의 제3-2 감정 상태를 판단하는 단계는, 음성 신호의 노이즈를 제거하는 단계; 및 노이즈 제거된 음성 신호를 음성 기반 감정 인식 모델에 입력하는 단계를 포함할 수도 있다. In some embodiments, in some embodiments, determining the 3-2 emotional state of the user may include removing noise from an audio signal; And it may include inputting the noise-removed voice signal into a voice-based emotion recognition model.

상기 감정 분석 모듈(240)은 음성 특징을 추출하기 이전에 음성 신호의 노이즈를 제거하는 음성 전처리 유닛을 포함할 수도 있다. 그러면 전 처리된 음성 신호가 상기 음성 기반 감정 인식 모델에 입력된다. The emotion analysis module 240 may include a voice pre-processing unit that removes noise from the voice signal before extracting voice features. Then, the pre-processed voice signal is input to the voice-based emotion recognition model.

도 7과 마찬가지로, 상기 도 8, 도 9의 감정 인식 모델 역시, 트래이닝 데이터 세트에 따라 다중 감정 상태를 판단하도록 구성될 수도 있다. 상기 다중 감정 상태는 제1 뎁스의 감정 상태 및 제2 뎁스의 감정 상태를 포함한다. Like Figure 7, the emotion recognition model of Figures 8 and 9 may also be configured to determine multiple emotional states according to a training data set. The multiple emotional states include emotional states of a first depth and emotional states of a second depth.

상기 감정 분석 모듈(240)은 사용자의 텍스트, 음성을 처리하여 사용자의 감정 유형을 제1 뎁스로 판단하고, 상기 사용자의 텍스트, 음성을 처리하여 사용자의 감정 종류를 제2 뎁스로 판단하도록 구성될 수도 있다.The emotion analysis module 240 will be configured to process the user's text and voice to determine the user's emotion type as a first depth, and to process the user's text and voice to determine the user's emotion type as a second depth. It may be possible.

상기 단계(S400)에서 제1 내지 제3 감정 상태 중 어느 하나의 감정 상태가 판단된 경우, 판단된 감정 상태가 2차 성격을 생성하기 위한 사용자의 감정 상태로 이용된다. If any one of the first to third emotional states is determined in step S400, the determined emotional state is used as the user's emotional state to create the secondary personality.

도 10은, 본 출원의 일 실시 예에 따른, 통합 감정 인식 모델을 이용하여 다양한 활동 데이터로부터 사용자의 감정 상태를 판단하는 과정의 개략도이다. Figure 10 is a schematic diagram of a process for determining a user's emotional state from various activity data using an integrated emotion recognition model, according to an embodiment of the present application.

도 10을 참조하면, 통합 감정 인식 모델은, 도 4의 이미지 기반 감정 인식 모델, 도 8의 텍스트 기반 감정 인식 모델, 및 도 9의 음성 기반 감정 인식 모델 중 2이상의 모델을 서브 모델로 포함한다. 상기 통합 감정 인식 모델은 사용자의 이미지 데이터, 텍스트 데이터, 음성 데이터 중 2이상의 데이터로부터 사용자의 감정 상태를 인식할 수도 있다. Referring to FIG. 10, the integrated emotion recognition model includes two or more models among the image-based emotion recognition model of FIG. 4, the text-based emotion recognition model of FIG. 8, and the voice-based emotion recognition model of FIG. 9 as sub-models. The integrated emotion recognition model may recognize the user's emotional state from two or more of the user's image data, text data, and voice data.

상기 감정 분석 모듈(240)은 활동 데이터 내 사용자의 이미지 데이터를 미리 학습된 이미지 기반 감정 인식 모델에 입력하여 사용자의 제1 감정 상태를 판단하고, 활동 데이터 내 사용자의 텍스트 데이터를 미리 학습된 텍스트 기반 감정 인식 모델에 입력하여 사용자의 제2 감정 상태를 판단하며, 활동 데이터 내 사용자의 음성 데이터를 텍스트 데이터로 변환하여 상기 미리 학습된 텍스트 기반 감정 인식 모델에 입력하여 제3-1 감정 상태를 판단하거나 상기 사용자의 음성 데이터를 미리 학습된 음성 기반 감정 인식 모델에 입력하여 제3-2 감정 상태를 판단할 수도 있다. 여기서 이미지 데이터, 텍스트 데이터, 음성 데이터는 동일한 활동에서 포착된 데이터로서, 단일 메타버스 활동 로그를 형성하는 활동 데이터이다. The emotion analysis module 240 inputs the user's image data in the activity data into a pre-learned image-based emotion recognition model to determine the user's first emotional state, and inputs the user's text data in the activity data into a pre-learned text-based emotion recognition model. The user's second emotional state is determined by inputting it into the emotion recognition model, and the user's voice data in the activity data is converted into text data and input into the pre-trained text-based emotion recognition model to determine the third-first emotional state. The 3-2 emotional state may be determined by inputting the user's voice data into a previously learned voice-based emotion recognition model. Here, image data, text data, and voice data are data captured from the same activity and are activity data that forms a single metaverse activity log.

상기 단계(S400)는, 사용자의 제1 내지 제3 감정 상태 중 복수의 감정 상태가 판단된 경우, 복수의 감정 상태 각각으로 분류될 확률 값(예를 들어, 판단된 제1 감정 상태로 분류될 확률 값, 판단된 제2 감정 상태로 분류될 확률 값, 및 판단된 제3 감정 상태로 분류될 확률 값)에 기초하여 사용자의 최종 감정 상태를 판단하는 단계를 포함한다. The step (S400) is a probability value of being classified into each of the plurality of emotional states (e.g., being classified into the determined first emotional state) when a plurality of emotional states are determined among the user's first to third emotional states. and determining the final emotional state of the user based on a probability value, a probability value of being classified as the determined second emotional state, and a probability value of being classified as the determined third emotional state.

이를 위해, 상기 감정 분석 모듈(240)은 감정 인식 모델에 의해 각각 판단된 감정 상태로 분류될 각각의 확률 값에 기초하여 사용자의 최종 감정 상태를 판단할 수도 있다. To this end, the emotion analysis module 240 may determine the user's final emotional state based on each probability value of being classified as an emotional state determined by the emotion recognition model.

일부 실시 예들에서, 상기 감정 분석 모듈(240)은 활동 데이터에 따라 서로 다른 가중치를 부여하여 사용자의 감정 상태를 보다 진실되게 판단할 수도 있다. In some embodiments, the emotion analysis module 240 may determine the user's emotional state more truthfully by assigning different weights according to activity data.

사람의 감정 상태는 타인에게 노출되지 않는 측면으로 보다 진실되게 나타난다. 특히, 사람은 부정적인 감정 상태를 타인에게 노출되지 않고 감추는 경향이 있다. 사용자의 메타버스 내 활동에 이용된 활동 데이터는 다른 사용자에게 노출되기 때문에, 완전히 거짓된 감정 상태를 나타내거나 진실된 감정 상태이더라도 감정 상태의 수준이 다소 억제된 것을 나타낼 수도 있다.A person's emotional state appears more truthfully in aspects that are not exposed to others. In particular, people tend to hide their negative emotional states from others. Since the activity data used in the user's activities within the metaverse is exposed to other users, it may indicate a completely false emotional state or may indicate that the level of the emotional state is somewhat suppressed even if it is a true emotional state.

상기 감정 분석 모듈(240)은 사용자의 메타버스 내 활동에 이용된 활동 데이터로부터 판단된 감정 상태에 대해서는 보다 낮은 가중치를 부여하고, 사용자의 메타버스 내 활동에 이용되지 않은 활동 데이터로부터 판단된 감정 상태에 대해서는 보다 높은 가중치를 부여하도록 구성될 수도 있다.The emotion analysis module 240 assigns a lower weight to the emotional state determined from activity data used in the user's activities in the metaverse, and the emotional state determined from activity data not used in the user's activities in the metaverse. It may be configured to give a higher weight to .

예를 들어, 상기 활동 데이터가 텍스트 채팅 활동에 의해 수신된 경우, 사용자의 메타버스 내 활동에 이용되지 않은 활동 데이터는 이미지 데이터이고, 사용자의 메타버스 내 활동에 이용된 활동 데이터는 텍스트 데이터이다. 이 경우, 상기 감정 분석 모듈(240)은 이미지 데이터로부터 판단된 제1 감정 상태에 대해서는 보다 높은 제1 가중치를 부여하고, 텍스트 데이터로부터 판단된 제2 감정 상태에 대해서는 보다 낮은 제2 가중치를 부여하며, 제1 가중치를 제1 감정 상태의 값에 적용하고 제2 가중치를 제2 감정 상태의 값에 적용한 연산 값에 기초해 최종 감정 상태를 판단할 수도 있다. 연산 값에 가장 가까운 값을 갖는 감정 상태가 최종 감정 상태로 판단될 수도 있다. For example, when the activity data is received through text chat activity, activity data not used in the user's activities in the metaverse is image data, and activity data used in the user's activities in the metaverse is text data. In this case, the emotion analysis module 240 assigns a higher first weight to the first emotional state determined from the image data and a lower second weight to the second emotional state determined from the text data. , the final emotional state may be determined based on a calculation value obtained by applying the first weight to the value of the first emotional state and the second weight to the value of the second emotional state. The emotional state with the closest value to the calculation value may be determined as the final emotional state.

또한, 일부 실시 예들에서, 상기 감정 분석 모듈(240)은 앙상블 유닛(ensemble learning)을 포함할 수도 있다. 상기 앙상블 유닛은 다수의 개별 감정 인식 모델의 판단 결과와 사용자의 감정 상태 사이의 상관 관계를 종합적으로 추론하여 사용자의 감정 상태를 산출하도록 구성된다. 상기 앙상블 유닛은, 보팅(voting), 배깅(bagging), 부스팅(boosting), 또는 스태킹(stacking) 방식을 이용하도록 구성될 수도 있다. Additionally, in some embodiments, the emotion analysis module 240 may include an ensemble unit (ensemble learning). The ensemble unit is configured to calculate the user's emotional state by comprehensively inferring the correlation between the judgment results of a plurality of individual emotion recognition models and the user's emotional state. The ensemble unit may be configured to use voting, bagging, boosting, or stacking methods.

이 경우, 상기 감정 분석 모듈(240)은 활동 데이터에 따라 부여된 가중치에 해당 감정 상태의 값을 적용한 연산 결과를 앙상블 유닛에 적용하여 사용자의 최종 감정 상태를 판단할 수도 있다. In this case, the emotion analysis module 240 may determine the user's final emotional state by applying the calculation result of applying the value of the corresponding emotional state to the weight assigned according to the activity data to the ensemble unit.

일부 실시 예들에서, 상기 감정 분석 모듈(240)은 사용자의 활동에 따른 감정 판단 결과를 각각 감정 분석 DB(234)에 저장할 수도 있다. In some embodiments, the emotion analysis module 240 may store emotion judgment results according to the user's activities in the emotion analysis DB 234.

다시 도 3을 참조하면, 상기 메타버스 속 가상 NPC 아바타를 성장시키는 방법은, 사용자의 활동 데이터 및 해당 활동 데이터로부터 판단된 사용자의 감정 상태의 쌍에 기초하여 상기 가상 NPC 아바타(201)의 2차 성격을 생성하고, 상기 가상 NPC 아바타(201)의 성격을 상기 2차 성격으로 업데이트하는 단계(S500)를 포함한다. Referring again to FIG. 3, the method of growing the virtual NPC avatar in the metaverse is to grow the virtual NPC avatar 201 based on a pair of the user's activity data and the user's emotional state determined from the activity data. It includes creating a personality and updating the personality of the virtual NPC avatar 201 to the secondary personality (S500).

상기 단계(S500)는, 시계열 순서에 따라 획득된, 사용자의 메타버스 내 활동 각각에 대한 사용자의 활동 데이터 및 해당 활동 데이터로부터 판단된 사용자의 감정 상태로 이루어진 복수의 쌍을 포함한 제1 데이터 세트를 형성하는 단계, 및 상기 제1 데이터 세트를 이용하여 가상 NPC 아바타(201)의 2차 성격을 가리키는 성격 모델을 모델링하는 단계를 포함한다. 여기서 모델링은 모델 구조를 구축하고 및/또는 파라미터 값을 설정하는 것을 포함할 수도 있다. The step (S500) includes a first data set including a plurality of pairs consisting of the user's activity data for each activity in the user's metaverse, obtained according to a time series order, and the user's emotional state determined from the activity data. It includes forming a personality model indicating the secondary personality of the virtual NPC avatar 201 using the first data set. Modeling here may include building a model structure and/or setting parameter values.

전술한 바와 같이, 상기 성격은 감정의 발현이란 내적 요인, 및 반응의 출력이란 외적 요인의 조합으로 표현될 수도 있다. 그러면, 상기 성격은 내적 요인을 입력으로 갖고 외적 요인을 출력으로 갖는 모델로 모델링할 수도 있다. As described above, the personality may be expressed as a combination of internal factors such as expression of emotions and external factors such as output of reactions. Then, the personality may be modeled as a model with internal factors as input and external factors as output.

상기 단계(S300)에서 수신된 활동 데이터는 외부 환경에 따라 출력된 반응을 포함한다. 단계(S400)에서 판단된 감정 상태는 해당 외부 환경에서 발생한 감정 상태를 나타낸다. The activity data received in step S300 includes responses output according to the external environment. The emotional state determined in step S400 represents the emotional state occurring in the relevant external environment.

상기 단계(S500)에서 아바타 성장 모듈(250)은 특정 감정 상태가 발생할 경우 적합한 얼굴 표정, 음성, 또는 텍스트를 출력하는 것을 나타내는, 내적 요인과 외적 요인 간의 관계를 사용자별로 학습하여 가상 NPC 아바타(201)의 2차 성격을 생성할 수도 있다. In the step (S500), the avatar growth module 250 learns for each user the relationship between internal and external factors, indicating output of an appropriate facial expression, voice, or text when a specific emotional state occurs, and the virtual NPC avatar (201) ) can also create a secondary personality.

구체적으로, 상기 메타버스 속 가상 NPC 아바타를 성장시키는 시스템(1)은 사용자가 메타버스 내에서 복수의 활동을 할 경우, 시계열 순서에 따라 해당 활동을 위한 활동 데이터, 감정 상태의 판단 결과를 각각 획득한다. 상기 단계(S500)에서 아바타 성장 모듈(250)은 복수의 활동에 의해 획득된 상기 제1 데이터 세트를 이용하여 2차 성격을 가리키는 성격 모델을 모델링할 수도 있다. 상기 모델링 과정은, 입력으로 취급되는, 판단된 감정 상태와 출력으로 취급되는 수신된 활동 데이터 간의 상관 관계를 정의하는 과정이다. 이러한 입/출력 간의 상관 관계가 정의됨으로써, 특정 외부 환경에서 특정 감정 상태가 발생하여 특정 반응을 출력하는 2차 성격이 생성된다. Specifically, the system (1) for growing a virtual NPC avatar in the metaverse acquires activity data and emotional state judgment results for the corresponding activities according to the time series order when the user engages in multiple activities in the metaverse. do. In the step S500, the avatar growth module 250 may model a personality model indicating a secondary personality using the first data set obtained through a plurality of activities. The modeling process is a process of defining the correlation between the determined emotional state, which is treated as input, and the received activity data, which is treated as output. By defining the correlation between these inputs and outputs, a secondary personality is created that outputs a specific response when a specific emotional state occurs in a specific external environment.

상기 2차 성격을 갖는 가상 NPC 아바타(201)는 특정 메타버스 환경에서 사용자와 동일 또는 유사한 감정 상태를 공유하며, 그 감정 상태 하에서 사용자가 발현하는 얼굴 표정을 구현하거나, 또는 사용자의 텍스트 출력 방식, 음성 출력 방식으로 정보를 출력하도록 재-구성된다. 상기 텍스트, 음성은 사용자의 텍스트 특징, 음성 특징이 반영된 결과이다. 예를 들어, 2차 성격을 갖는 가상 NPC 아바타(201)는 동일 또는 유사한 텍스트 스타일로 컨텐츠 텍스트를 제공할 수도 있다. The virtual NPC avatar 201 with the secondary personality shares the same or similar emotional state as the user in a specific metaverse environment, implements the facial expression expressed by the user under the emotional state, or uses the user's text output method, It is re-configured to output information in a voice output manner. The text and voice are the result of reflecting the user's text and voice characteristics. For example, a virtual NPC avatar 201 with a secondary personality may provide content text in the same or similar text style.

상기 텍스트 출력 방식은 텍스트 스타일, 대화 텍스트 패턴 등을 포함할 수도 있다. The text output method may include text style, conversation text pattern, etc.

상기 음성 출력 방식은 음성 스타일, 대화 음성 패턴 등을 포함할 수도 있다.The voice output method may include voice style, conversation voice pattern, etc.

상기 아바타 성장 모듈(250)은 단계(S200)에서 생성된 가상 NPC 아바타(201)의 성격을 1차 성격에서 2차 성격으로 업데이트할 수도 있다. 일부 실시 예들에서, 상기 아바타 성장 모듈(250)은 2차 성격을 상기 아바타 DB(221)에 저장할 수도 있다. The avatar growth module 250 may update the personality of the virtual NPC avatar 201 created in step S200 from the primary personality to the secondary personality. In some embodiments, the avatar growth module 250 may store secondary personality in the avatar DB 221.

상기 단계(S100 내지 S500)에 의해, 가상 NPC 아바타(201)는 내적/외적 요인 모두 사용자에 대해 맞춤화되어 성장할 수도 있다. Through the above steps (S100 to S500), the virtual NPC avatar 201 may grow by customizing both internal and external factors to the user.

일부 실시 예들에서, 제1 데이터 세트를 형성하는 단계는, 감정 상태의 유형이 부정의 값을 갖지 않는 나머지 감정 상태 중 적어도 일부의 감정 상태만을 포함하도록 제1 데이터 세트를 형성하는 것일 수도 있다. In some embodiments, forming the first data set may include forming the first data set such that the type of the emotional state includes only at least some emotional states among the remaining emotional states that do not have a negative value.

부정적이지 않은 감정 상태(긍정 또는 중립)만으로 2차 성격을 생성할 경우, 상기 가상 NPC 아바타(201)는 부정적인 대화 내용은 최대한 절제하여 습득하고, 대신 긍적인 부분 또는 공감적인 부분을 집중적으로 습득할 수 있다. 이를 통해 사용자에게 부정적인 효과는 최대한 제거한 메타버스 세계를 구축할 수도 있다. When creating a secondary personality only with non-negative emotional states (positive or neutral), the virtual NPC avatar 201 learns negative conversation content in moderation as much as possible, and instead focuses on learning positive or empathic parts. You can. Through this, it is possible to build a metaverse world that eliminates as many negative effects on users as possible.

또한, 일부 실시 예들에서, 상기 메셍법은, 가상 NPC 아바타(201)를 외적 측면에 보다 중점적으로 사용자에 대해 맞춤화하기 위해, 단계(S300)에서 수신된 활동 데이터 및 조작 데이터에 기초하여 사용자의 행동 패턴 데이터를 산출하는 단계(S600), 사용자의 활동 데이터 및 상기 활동 데이터에 대응한 감정 상태, 및 상기 활동 데이터에 대응한 사용자의 행동 패턴 데이터를 포함한 제2 데이터 세트를 이용하여 상기 사용자의 메타버스 내 행동을 모방하는 행동을 수행하는 상기 가상 NPC 아바타(201)의 3차 성격을 생성하고, 가상 NPC 아바타(201)의 성격을 생성된 3차 성격으로 업데이트하는 단계(S700)를 더 포함할 수도 있다. Additionally, in some embodiments, the mapping method may be configured to customize the virtual NPC avatar 201 to the user with a greater focus on external aspects, based on the activity data and manipulation data received in step S300. Calculating pattern data (S600), using a second data set including the user's activity data, emotional state corresponding to the activity data, and user's behavior pattern data corresponding to the activity data, the user's metaverse A step (S700) of generating a tertiary personality of the virtual NPC avatar 201 that performs actions that mimic my behavior and updating the personality of the virtual NPC avatar 201 with the generated tertiary personality may be further included. there is.

행동도 성격의 뇌적요인에 영향을 받는, 외적 요인으로 취급할 수도 있다. 성격에 따라 행동의 양상이 다르게 발현되기 때문이다. 성격이 급할 경우 이동 속도가 빠를 수도 있고 성격이 느긋할수록 이동 속도가 느릴 수도 있기 때문이다. Behavior can also be treated as an external factor that is influenced by brain factors of personality. This is because behavioral patterns are expressed differently depending on personality. This is because if your personality is impatient, your movement speed may be fast, and if your personality is more relaxed, your movement speed may be slower.

도 11은, 본 출원의 일 실시 예에 따른, 가상 NPC 아바타를 외적 측면에서 보다 중점적으로 사용자에 대해 맞춤화해 성장하는 과정의 개략도이다. Figure 11 is a schematic diagram of the process of growing a virtual NPC avatar by customizing it to the user with more emphasis on the external aspect, according to an embodiment of the present application.

상기 단계(S600)에서 행동 분석 모듈(260)은 사용자의 조작 데이터, 활동 데이터에 기초하여 사용자의 행동 패턴 데이터를 산출할 수도 있다. In step S600, the behavior analysis module 260 may calculate the user's behavior pattern data based on the user's manipulation data and activity data.

일부 실시 예들에서, 상기 사용자의 행동 패턴 데이터는, 메타버스 세계를 컨텐츠로 이용하는 활동에서 사용자 또는 그의 아바타의 행동 패턴을 서술한 정보, 및/또는 메타버스가 제공하는 세부 컨텐츠를 선택하여 진행되는 활동에서 사용자 또는 그의 아바타의 행동 패턴을 서술한 정보를 포함할 수도 있다.In some embodiments, the user's behavior pattern data includes information describing the behavior patterns of the user or his avatar in activities using the metaverse world as content, and/or activities conducted by selecting detailed content provided by the metaverse. may include information describing the behavior patterns of the user or his avatar.

예를 들어, 상기 사용자의 행동 패턴 데이터는, 사용자의 메타버스에서 사용자의 아바타의 이동 동선, 이동 위치, 동선 빈도, 위치 빈도, 활동 관련 선택된 컨텐츠, 활동 결정까지 걸린 준비 시간, 활동 시작 시간, 활동 빈도, 활동 후기, 활동 내용, 활동 범위 중 하나 이상을 포함할 수도 있다. 상기 활동이 관련 컨텐츠를 가질 경우, 활동 시작까지 걸린 준비 시간은 해당 컨텐츠 선택까지 걸린 준비 시간을 나타내고, 활동 시작 시간은 컨텐츠 시작 시간을 나타내고, 활동 빈도는 컨텐츠 이용 빈도를 나타내고, 활동 후기는 컨텐츠 이용 후기(예컨대, 리뷰)를 나타내고, 활동 내용은 컨텐츠 내용을 나타내고, 활동 범위는 컨텐츠 선택 범위로 나타낼 수도 있다. For example, the user's behavior pattern data includes the user's avatar's movement line, movement location, movement frequency, location frequency, activity-related selected content, preparation time to decide on the activity, activity start time, and activity of the user's avatar in the user's metaverse. It may include one or more of the following: frequency, activity reviews, activity content, and activity scope. If the activity has related content, the preparation time taken to start the activity represents the preparation time taken to select the content, the activity start time represents the content start time, the activity frequency represents the frequency of content use, and the activity review represents the content use. Reviews (eg, reviews) may be indicated, activity content may be indicated as content content, and activity scope may be indicated as content selection range.

상기 행동 분석 모듈(260)은 컨텐츠 클릭 회수에 기초하여 활동 빈도를 산출할 수도 있다. 또한, 상기 행동 분석 모듈(260)은 대상을 가리키는 포인팅 시간(p) 및 대상을 가리키는 포인팅 시간(pl)에 기초하여 컨텐츠 결정까지의 준비 시간을 산출할 수도 있다. The behavior analysis module 260 may calculate the activity frequency based on the number of content clicks. Additionally, the behavior analysis module 260 may calculate the preparation time to determine content based on the pointing time (p) pointing to the target and the pointing time (pl) pointing to the target.

이 외에도, 상기 행동 분석 모듈(260)은 컨텐츠 이용 시간, 컨텐츠 이용에 따른 후기, 또는 그 대화 내용을 추출할 수도 있다. In addition, the behavior analysis module 260 may extract content usage time, reviews based on content usage, or the content of the conversation.

이와 같이 단계(S600)에서 산출된 행동 패턴 데이터는 단계(S300)에서 수신된 사용자의 활동 데이터, 단계(S400)에서 판단된 사용자의 감정 상태와 연관되어 가상 NPC 아바타(201)가 사용자의 행동 패턴을 추가로 학습하도록 이용된다. In this way, the behavior pattern data calculated in step S600 is related to the user's activity data received in step S300 and the user's emotional state determined in step S400, so that the virtual NPC avatar 201 determines the user's behavior pattern. It is used for additional learning.

일부 실시 예들에서, 상기 행동 분석 모듈(260)은 사용자가 메타버스에서 다양한 활동이 지속적으로 진행할수록 각 활동 별 활동 패턴 데이터를 분석하고 이를 시계열 순서로 행동 분석 DB(236)에 저장할 수도 있다. In some embodiments, the behavior analysis module 260 may analyze activity pattern data for each activity as the user continues various activities in the metaverse and store the data in the behavior analysis DB 236 in time series order.

상기 단계(S700)는, 단계(S600)에서 산출된 행동 패턴 데이터, 단계(S300)에서 수신된 사용자의 활동 데이터, 단계(S400)에서 판단된 사용자의 감정 상태를 포함한 제2 데이터 세트를 형성하는 단계, 및 상기 제2 데이터 세트를 이용하여 사용자의 행동 패턴을 모방한 상기 가상 NPC 아바타(201)의 3차 성격을 생성하는 단계를 포함할 수도 있다. The step (S700) forms a second data set including the behavior pattern data calculated in step (S600), the user's activity data received in step (S300), and the user's emotional state determined in step (S400). It may also include generating a tertiary personality of the virtual NPC avatar 201 that imitates a user's behavior pattern using the second data set.

상기 제2 데이터 세트는 제1 데이터 세트에 해당 행동 패턴 데이터를 추가한 것이다. 상기 3차 성격은 2차 성격과 유사하게 기계학습 모델일 수도 있다. 상기 3차 성격의 모델은 모방 대상의 행동 패턴을 출력하고, 그리고 상기 제2 데이터 세트에서 행동 패턴 데이터를 제외한 나머지 데이터를 입력으로 갖도록 모델링된 것이다. The second data set is obtained by adding corresponding behavior pattern data to the first data set. The tertiary personality may be a machine learning model similar to the secondary personality. The tertiary personality model outputs the behavior pattern of the imitation target and is modeled to have as input the remaining data excluding the behavior pattern data from the second data set.

상기 아바타 성장 모듈(250)은 다양한 행동 학습 방식을 통해 가상 NPC 아바타(201)가 사용자의 행동 패턴을 모방하도록 가상 NPC 아바타(201)를 학습할 수도 있다(S700). The avatar growth module 250 may learn the virtual NPC avatar 201 to imitate the user's behavior pattern through various behavior learning methods (S700).

일 예에서, 상기 단계(S700)에서 3차 성격을 생성하는 단계는, 상기 제2 데이터 세트에 기초하여 모방 알고리즘을 통해 3차 성격을 모델링하는 단계;를 포함한다. 아바타 성장 모듈(250)은 행동 모방(behavior cloning) 학습을 할 수 있는 다양한 모방 알고리즘을 미리 저장할 수도 있다. 상기 아바타 성장 모듈(250)은 상기 모방 알고리즘을 이용하여 제2 데이터 세트 내 행동 패턴과 나머지 데이터 간의 상관 관계로부터 입/출력 모델을 구축할 수도 있다. In one example, generating the tertiary personality in step S700 includes modeling the tertiary personality through an imitation algorithm based on the second data set. The avatar growth module 250 may store in advance various imitation algorithms capable of learning behavior cloning. The avatar growth module 250 may build an input/output model from the correlation between the behavior pattern and the remaining data in the second data set using the imitation algorithm.

또한, 상기 가상 NPC 아바타(201)를 학습하는 단계는, 상기 제2 데이터 세트에 기초하여 모델링된 3차 성격을 역강화학습(IRL, Inverse Reinforcement Learning)하는 단계를 포함할 수도 있다. Additionally, the step of learning the virtual NPC avatar 201 may include the step of inverse reinforcement learning (IRL) of the tertiary personality modeled based on the second data set.

상기 일 예에서, 모방 학습, 역강화 학습하는 과정은 MLOps(Machine Learning Operations)와 같은 재-학습 프레임 워크를 학습 툴(tool)로 이용하여 수행될 수도 있다. In the above example, the process of imitation learning and inverse reinforcement learning may be performed using a re-learning framework such as MLOps (Machine Learning Operations) as a learning tool.

도 12는, 본 출원의 일 실시 예에 따른, 행동 트리의 개략도이다. 12 is a schematic diagram of an action tree, according to an embodiment of the present application.

다른 예에서, 상기 단계(S700)에서 상기 가상 NPC 아바타(201)를 학습하는 단계는, 상기 제2 데이터 세트에 기초하여 도 12의 행동 트리를 생성하는 단계; 및 상기 행동 트리에 기초하여 사용자의 행동을 상기 가상 NPC 아바타(201)에 주입하는 단계를 포함할 수도 있다. In another example, learning the virtual NPC avatar 201 in step S700 includes generating the behavior tree of FIG. 12 based on the second data set; and injecting the user's behavior into the virtual NPC avatar 201 based on the behavior tree.

도 12의 행동 트리에서 활동은 루트 노드로부터 행동 노드까지 논리 경로 중 적어도 일부일 수도 있다. 활동(behavior)이란 의도에 의해 행동(action)이 구현되는 것이기 때문이다. An activity in the action tree of FIG. 12 may be at least part of a logical path from a root node to an action node. This is because behavior is an action implemented by intention.

상기 아바타 성장 모듈(250)은 감정 상태, 활동 데이터를 이용하여 셀렉터 노드, 시퀀스 노드, 데코레이터 노드를 지정하고, 행동 패턴 데이터를 이용하여 행동 노드를 지정할 수도 있다. 또한, 상기 아바타 성장 모듈(250)은 감정 상태, 활동 상태 및 행동 패턴 간의 연관 관계에 기초하여 해당 노드 사이의 논리 연결 구조를 형성할 수도 있다. The avatar growth module 250 may designate a selector node, sequence node, and decorator node using emotional state and activity data, and may designate a behavior node using behavior pattern data. Additionally, the avatar growth module 250 may form a logical connection structure between corresponding nodes based on the correlation between emotional states, activity states, and behavior patterns.

상기 도 12의 행동 트리가 3차 성격으로 생성된다. The behavior tree of FIG. 12 is created as a tertiary personality.

단계(S700)에서 행동 학습이 완료될 경우, 상기 가상 NPC 아바타(201)는 롤모델이 된 사용자의 아바타의 주 이동 경로, 주로 위치했던 장소를 중심으로 유사한 행동 패턴을 구현할 수도 있다. 그 결과, 가상 NPC 아바타(201)는 설계자가 지정한 단일 위치를 배회하는 것과 같이 단조로운 행동 패턴을 갖지 않을 수 있다. 상기 가상 NPC 아바타(201)는 롤모델의 사용자, 또는 이 사용자와 동일 또는 유사한 행동 패턴을 갖는 다른 사용자의 아바타와 행동 패턴을 자동으로 공유할 수도 있다. When behavioral learning is completed in step S700, the virtual NPC avatar 201 may implement similar behavior patterns centered on the main movement path and main location of the avatar of the user who became the role model. As a result, the virtual NPC avatar 201 may not have a monotonous behavior pattern, such as wandering around a single location designated by the designer. The virtual NPC avatar 201 may automatically share its behavior pattern with the role model user or the avatar of another user with the same or similar behavior pattern as this user.

즉, 하나의 롤모델로부터 다수의 사용자와 행동 패턴을 적어도 부분적으로 공유하도록 가상 NPC 아바타(201)를 성장시킬 수도 있다. That is, the virtual NPC avatar 201 may be grown from one role model to share at least partially the behavior pattern with multiple users.

그 결과, 가상 NPC 아바타(201)는 특정 롤모델의 사용자의 행동 패턴과 동일 또는 유사한 행동 패턴으로 메타버스 내에서 활동하는 도중에 다수의 사용자 아바타에게 먼저 다가와 말을 거는 행동을 취할 수도 있다. 또한, 가상 NPC 아바타(201)는 상기 다수의 사용자 아바타에게 특정 위치에서 선전활동을 효과적으로 수행할 수도 있다. 상기 다수의 사용자 아바타는 롤모델의 사용자의 아바타와 행동 패턴이 부분적으로 일치하거나, 평상시엔 다른 행동 패턴을 가지나 우연히 행동이 행동 패턴과 동일 또는 유사한 사용자 아바타일 수도 있다. As a result, the virtual NPC avatar 201 may approach and talk to multiple user avatars while operating within the metaverse with the same or similar behavior pattern as that of a specific role model user. Additionally, the virtual NPC avatar 201 may effectively carry out propaganda activities to the plurality of user avatars at a specific location. The plurality of user avatars may have partially matching behavior patterns with the avatars of role model users, or may be user avatars that normally have different behavior patterns but whose behavior coincidentally is the same or similar to the behavior patterns.

이와 같이 가상 NPC 아바타(201)는 사용자 또는 사용자 아바타를 통해서 성장하는데 신규 콘텐츠 정보, 기존 이벤트 정보 등을 사용자들로부터 습득하고 피드백에 대한 내용을 학습한다. 이로 인해, 그에 대한 좀 더 포괄적이고 체계적인 정보를 전달하도록 성장할 수도 있다. In this way, the virtual NPC avatar 201 grows through users or user avatars, and learns new content information, existing event information, etc. from users and learns about feedback. Because of this, it may grow to deliver more comprehensive and systematic information about it.

그리고 이러한 측면에서 가상 NPC 아바타(201)는 전체적으로 메타버스 내에서 유기적으로 동작하는 오브젝트 이상의 생태계로 구분하고 자동화적으로 이용될 수 있다.And in this respect, the virtual NPC avatar 201 can be classified into an ecosystem that is more than an object that operates organically within the metaverse as a whole and can be used automatically.

- 제공하는 정보는 각 메타버스 환경에 따라 다를 것이다.- The information provided will vary depending on each metaverse environment.

- 어떤 콘텐츠가 좋았다, 어떤 콘텐츠에 이런 기능이 있다 등.- What content was good, what content had this function, etc.

- 해당 콘텐츠의 사용 인원 수, 콘텐츠 사용에 주로 많이 이용되는 시간 등.- The number of people using the content, the time most often used to use the content, etc.

- 콘텐츠나 이벤트 사용에 대한 자신의 소감 및 피드백 정보 등.- Your own impressions and feedback information on using content or events, etc.

- 다른 사람과 소통하면서 습득한 독특한 정보 등.- Unique information acquired while communicating with others, etc.

또한, 롤모델의 사용자가 많을수록 복수의 가상 NPC 아바타(201)가 생성될 수도 있다. 상기 가상 NPC 아바타(201)는 여러 성격을 지닐 수 있기에, 사용자는 자신에게 맞는 가상 NPC 아바타(201)들과 소통하면서 친숙한 화법을 갖는 가상 NPC 아바타(201)로부터 공감적인 대화 내용을 전달받을 수 있고, NPC 와의 채팅 시스템으로 확장을 시킨다면, 감정 공감 부분 등으로도 확장이 가능할 것이다.Additionally, as the number of role model users increases, a plurality of virtual NPC avatars 201 may be created. Since the virtual NPC avatar 201 can have various personalities, the user can communicate with the virtual NPC avatar 201 that suits the user and receive empathetic conversation content from the virtual NPC avatar 201 with a familiar speaking style. , If it is expanded into a chat system with NPCs, it will be possible to expand into the emotional empathy part, etc.

다시 도 3을 참조하면, 일부 실시 예들에서, 상기 메타버스 속 가상 NPC 아바타를 성장시키는 방법은 사용자의 메타버스 내 활동 로그 데이터에 기초하여 가상 엔피이 아바타(201)와 성격 및 행동 패턴 중 적어도 하나가 매칭하는 사용자에게 적합한 컨텐츠를 추천하는 보조 성격을 생성하고, 상기 보조 성격을 추가로 갖도록 가상 NPC 아바타(201)를 업데이트하는 단계(S800); 및/또는 단계(S500), 단계(S700) 또는 단계(S800)에서 업데이트된 성격 또는 행동 패턴에 의해 메타버스 정보를 필터링하여 사용자에게 제공하는 단계(S900)를 더 포함할 수도 있다. Referring again to FIG. 3, in some embodiments, the method of growing a virtual NPC avatar in the metaverse includes at least one of the virtual NPC avatar 201 and personality and behavior patterns based on the user's activity log data in the metaverse. Creating an auxiliary personality that recommends content suitable for a matching user and updating the virtual NPC avatar 201 to have the auxiliary personality additionally (S800); And/or it may further include a step (S900) of filtering the metaverse information according to the personality or behavior pattern updated in step (S500), step (S700), or step (S800) and providing it to the user.

상기 단계(S800)에서 상기 추천 모듈(280)은 사용자의 메타버스 내 활동과 관련된 컨텐츠 정보, 해당 컨텐츠에 대응한 활동 데이터, 감정 상태 및 행동 패턴 데이터를 포함한 제3 데이터 세트를 이용하여 보조 성격을 학습할 수도 있다. 상기 보조 성격은 활동 데이터, 감정 상태 및 행동 패턴 데이터와 활동을 위해 선택된 컨텐츠 사이의 관계를 추론하여 활동 데이터, 감정 상태 및 행동 패턴 데이터를 포함한 입력 데이터 세트가 입력될 경우, 상기 입력 데이터 세트의 사용자에게 적합한 컨텐츠를 예측하도록 학습되는 기계학습 모델일 수도 있다. In the step (S800), the recommendation module 280 determines the secondary personality using a third data set including content information related to the user's activities in the metaverse, activity data corresponding to the content, emotional state, and behavior pattern data. You can also learn. The assistant personality infers the relationship between activity data, emotional state and behavior pattern data and the content selected for the activity, so that when an input data set including activity data, emotional state and behavior pattern data is input, the user of the input data set It may be a machine learning model that is trained to predict content suitable for users.

도 13은, 본 출원의 일 실시 예에 따른, 보조 성격의 네트워크 구조도이다. Figure 13 is a network structure diagram of an auxiliary nature according to an embodiment of the present application.

도 13을 참조하면, 상기 보조 성격의 네트워크 구조는 제1 서브 구조 및 제2 서브 구조를 포함할 수도 있다. 상기 제1 서브 구조는 입력 데이터와 출력 데이터 간의 선형 상관 관계를 모델링된 것이다. 상기 제2 서브 구조는 입력 데이터와 출력 데이터 간의 비선형 상관 관계를 추론하도록 모델링된 것이다. 상기 제2 서브 구조는, 완전 연결 레이어, MLP와 같은 다양한 NN 구조를 가질 수도 있다. Referring to FIG. 13, the auxiliary network structure may include a first sub-structure and a second sub-structure. The first sub-structure models the linear correlation between input data and output data. The second sub-structure is modeled to infer a non-linear correlation between input data and output data. The second sub-structure may have various NN structures such as a fully connected layer and MLP.

상기 단계(800)에서 보조 성격을 생성하는 단계는, 사용자의 메타버스 내 활동과 관련된 컨텐츠 정보, 해당 컨텐츠에 대응한 활동 데이터, 감정 상태 및 행동 패턴 데이터를 포함한 제3 데이터 세트를 형성하는 단계; 상기 제3 데이터 세트 내 활동 데이터, 감정 상태 및 행동 패턴 데이터 중에서 컨텐츠와 관련된 데이터 및 컨텐츠와 관련되지 않은 데이터를 분류하는 단계, 상기 컨텐츠와 관련된 데이터 및 상기 컨텐츠 정보로 이루어진 제1 서브 세트를 형성하는 단계, 상기 컨텐츠와 관련되지 않은 데이터 및 상기 컨텐츠 정보로 이루어진 제2 서브 세트를 형성하는 단계, 및 상기 제1 서브 세트를 이용하여 상기 보조 성격 내 제1 서브 구조를 학습하는 단계, 상기 제2 서브 세트를 이용하여 상기 보조 성격 내 제2 서브 구조를 학습하는 단계를 포함할 수도 있다. The step of creating an auxiliary personality in step 800 includes forming a third data set including content information related to the user's activities in the metaverse, activity data corresponding to the content, emotional state, and behavior pattern data; Classifying data related to content and data not related to content among activity data, emotional state, and behavior pattern data in the third data set, forming a first subset consisting of data related to the content and the content information. forming a second subset of data unrelated to the content and the content information, and using the first subset to learn a first sub-structure within the auxiliary personality, the second sub-set It may also include learning a second sub-structure within the auxiliary personality using the set.

일부 실시 예들에서, 상기 컨텐츠와 관련된 데이터는 감정 상태, 행동 패턴 데이터의 일부 또는 전부의 데이터일 수도 있다. 예를 들어, 컨텐츠와 관련된 데이터는 감정 상태, 해당 컨텐츠 선택까지 걸린 준비 시간, 컨텐츠 시작 시간, 컨텐츠 이용 빈도, 컨텐츠 이용 후기(예컨대, 리뷰), 컨텐츠 내용, 컨텐츠 선택 범위 중 하나 이상의 데이터를 포함할 수도 있다. In some embodiments, the data related to the content may be some or all of emotional state and behavior pattern data. For example, data related to content may include one or more of the following: emotional state, preparation time for selecting the content, content start time, content usage frequency, content usage reviews (e.g., reviews), content content, and content selection range. It may be possible.

상기 제1 서브 구조는 해당 컨텐츠 선택 시 감정 상태가 긍정적일 수록 해당 컨텐츠를 사용자에게 적합한 컨텐츠로 예측할 확률이 높아지는 선형 관계, 해당 컨텐츠 선택까지 걸린 준비 시간이 짧을수록 해당 컨텐츠를 사용자에게 적합한 컨텐츠로 예측할 확률이 높아지는 선형 관계, 컨텐츠 이용 빈도가 많을수록 사용자에게 적합한 컨텐츠로 예측할 확률이 높아지는 선형 관계, 컨텐츠 이용 후기의 평가 값이 높을수록 사용자에게 적합한 컨텐츠로 예측할 확률이 높아지는 선형 관계 등과 같은 다양한 선형 관계를 학습할 수도 있다. The first sub-structure is a linear relationship in which the more positive the emotional state when selecting the content, the higher the probability of predicting the content as suitable for the user, and the shorter the preparation time for selecting the content, the probability of predicting the content as suitable content for the user. Various linear relationships can be learned, such as this increasing linear relationship, the linear relationship in which the probability of predicting content as suitable for the user increases as the frequency of content use increases, and the linear relationship in which the probability of predicting content as suitable for the user increases as the evaluation value of content usage reviews increases. It may be possible.

상기 제2 서브 구조는 선형 관계를 모델링하기 어려운 나머지 데이터와 상기 나머지 데이터에 대응한 활동에서 선택된 컨텐츠 사이의 비선형 관계를 상관 관계로 추론하여 상기 나머지 데이터가 입력될 경우 사용자에게 적합한 컨텐츠로 예측하도록 학습된다. The second sub-structure learns to predict content suitable for the user when the remaining data is input by inferring the non-linear relationship between the remaining data, which is difficult to model a linear relationship, and the content selected in the activity corresponding to the remaining data as a correlation. do.

상기 보조 성격의 네트워크 구조는 Neutral CF(Collaborative Filtering) 혹은 Wide & Deep Learning 구조를 가질 수도 있으나, 이에 제한되진 않는다. The auxiliary network structure may have a Neutral CF (Collaborative Filtering) or Wide & Deep Learning structure, but is not limited thereto.

상기 단계(S800)에서 아바타 성장 모듈(250)은 상기 보조 성격을 상기 가상 NPC 아바타(201)에 주입할 수도 있다. 그러면, 상기 가상 NPC 아바타(201)는 사용자와 취향 상태가 동일 또는 유사하게 성장한다. In the step S800, the avatar growth module 250 may inject the auxiliary personality into the virtual NPC avatar 201. Then, the virtual NPC avatar 201 grows to have the same or similar taste status as the user.

상기 가상 NPC 아바타(201)는 특정 감정 상태, 특정 행동 패턴을 구현할 경우에 그에 맞는 컨텐츠를 사용자에게 적합한 컨텐츠로 예측할 수도 있다. 상기 가상 NPC 아바타(201)는 예측된 컨텐츠를 메타버스 내에서 출력하여 사용자에게 추천할 수도 있다. When the virtual NPC avatar 201 implements a specific emotional state or specific behavior pattern, it may predict content suitable for the user. The virtual NPC avatar 201 may output predicted content within the metaverse and recommend it to the user.

일부 실시 예들에서, 상기 메타버스 속 가상 NPC 아바타를 성장시키는 방법은, 상기 보조 성격을 갖도록 업데이트된 가상 NPC 아바타가 사용자의 아바타와 메타버스 내 일정 거리에 접근한 경우에 컨텐츠를 출력하는 단계를 더 포함할 수도 있다. In some embodiments, the method of growing a virtual NPC avatar in the metaverse further includes outputting content when the virtual NPC avatar updated to have the auxiliary personality approaches a certain distance in the metaverse from the user's avatar. It may also be included.

상기 보조 성격을 갖도록 업데이트된 가상 NPC 아바타(201)는 롤모델의 사용자와 일정 거리에 접근한 경우에, 접근 상황 하에서 자신의 활동 데이터, 감정 상태 및 행동 패턴 중 적어도 일부로 상기 제3 데이터 세트에 대응한 입력 데이터 세트를 형성한다. 상기 가상 NPC 아바타(201)는 상기 보조 성격에 입력 데이터 세트를 입력하여 사용자에게 적합한 컨텐츠를 예측하고 예측된 컨텐츠를 메타버스 내에서 출력하여 사용자에게 제공할 수도 있다. 접근 상황 하에서 컨텐츠가 추천되어야 사용자의 관심을 유도할 가능성이 높기 때문이다. When the virtual NPC avatar 201 updated to have the auxiliary personality approaches the role model user at a certain distance, at least part of its activity data, emotional state, and behavior pattern corresponds to the third data set under the approaching situation. Form the input data set. The virtual NPC avatar 201 may input an input data set to the auxiliary personality to predict content suitable for the user, output the predicted content within the metaverse, and provide it to the user. This is because content is more likely to attract user interest if it is recommended under the access situation.

이와 같이, 상기 메타버스 속 가상 NPC 아바타를 성장시키는 시스템(1)은 움직이는 가상 NPC 아바타(201)를 통해 사용자에게 컨텐츠를 효과적으로 추천할 수도 있다. In this way, the system 1 for growing the virtual NPC avatar in the metaverse can also effectively recommend content to the user through the moving virtual NPC avatar 201.

상기 단계(S100 내지 S800)에 의해 상기 서비스 서버(200)는 복수의 사용자 각각을 롤모델로 이용하여 복수의 가상 NPC 아바타(201)를 생성 및 성장시킬 수도 있다. Through the steps S100 to S800, the service server 200 may create and grow a plurality of virtual NPC avatars 201 using each of the plurality of users as a role model.

상기 단계(S900)에서 상기 메타버스 관리 모듈(290)은 메타버스 내 NPC 아바타 중에서 사용자에 맞춤화되어 성장한 하나 이상의 가상 NPC 아바타(201)를 필터링할 수도 있다. 또한, 상기 메타버스 관리 모듈(290)은 해당 사용자에게 제공되는 메타버스 내 적어도 일부 공간, 또는 전용 공간에는 필터링된 상기 하나 이상의 가상 NPC 아바타(201)만이 제공되도록 메타버스를 재-구성할 수도 있다. In the step S900, the metaverse management module 290 may filter one or more virtual NPC avatars 201 that have been customized and grown for the user among NPC avatars in the metaverse. In addition, the metaverse management module 290 may re-configure the metaverse so that only the one or more filtered virtual NPC avatars 201 are provided in at least some space or a dedicated space in the metaverse provided to the user. .

이러한 메타버스 재-구성 과정에서 단계(S500), 단계(S700) 또는 단계(S800)에서 업데이트된 성격 또는 행동 패턴을 갖는 가상 NPC 아바타(201)만이 메타버스 내에 존재할 수도 있다(S900). In this metaverse re-construction process, only the virtual NPC avatar 201 with an updated personality or behavior pattern in step S500, step S700, or step S800 may exist in the metaverse (S900).

가상 NPC 아바타(201) 각각은 업데이트된 성격, 행동에 대응하는 정보를 개별적으로 제공하도록 구성될 수도 있다. 상기 정보는 컨텐츠를 추천하는 것과 유사한 것으로서, 컨텐츠 추천 이외의 메타버스 내에서 전송되는 다양한 정보를 나타낸다. Each virtual NPC avatar 201 may be configured to individually provide information corresponding to updated personality and behavior. The above information is similar to content recommendation and represents various information transmitted within the metaverse other than content recommendation.

이와 같이 가상 NPC 아바타(201)가 서로 다른 정보를 개별적으로 제공하도록 구성될 경우, 필터링된 가상 NPC 아바타(201)를 통해 메타버스 정보를 제공할 경우, 사용자에게는 자신의 취향 상태가 동일하거나 또는 유사한 메타버스 정보만을 제공받을 수도 있다. In this way, when the virtual NPC avatar 201 is configured to individually provide different information, when metaverse information is provided through the filtered virtual NPC avatar 201, the user may have the same or similar taste state. Only metaverse information may be provided.

이는 같은 성격을 지닌 가상 NPC 아바타(201)만 자신의 메타버스 공간 내에 생성함으로, 앞서 언급한 정보 제공만이 아닌 비슷한 말투, 화법, 공감 능력 등이 적용된 가상 NPC 아바타(201)들만 사용자의 아바타와 함께 소통함으로, 자신에게 걸맞는 환경을 구축하고 초개인화에 맞게 구현될 수 있다.This creates only virtual NPC avatars (201) with the same personality within one's metaverse space, and only virtual NPC avatars (201) that not only provide the information mentioned above but also have similar speaking style, speaking style, and empathy ability are applied to the user's avatar. By communicating together, you can build an environment that suits you and implement hyper-personalization.

이와 같이, 사용자의 메타버스 활동 로그에 기초하여 메타버스 속 가상 NPC 아바타를 성장시키는 시스템 및 방법은 사용자가 주로 행동한 정보로 성장된 가상 NPC 아바타(201)를 통해 다른 제3자 사용자에게 선전활동, 또는 상호작용 시에 사용자 자신이 직접 제3자 사용자의 아바타와 상호작용할 필요 없이 제3자 사용자에게 원하는 정보를 추천해주거나 사용자가 선호하는 컨텐츠, 정보를 제시할 수도 있다. In this way, the system and method for growing a virtual NPC avatar in the metaverse based on the user's metaverse activity log is used to promote propaganda to other third-party users through the virtual NPC avatar 201 grown with information on the user's main actions. , Alternatively, during interaction, the user may recommend desired information to a third-party user or present content and information preferred by the user without the need to directly interact with the avatar of the third-party user.

그러한 정보 제공은 비슷한 성향을 띄는 사용자에게는 편의성을 다른 취향의 사용자에게는 새로운 체험을 할 수 있는 기회로 적용될 것이다.Providing such information will provide convenience to users with similar tendencies and an opportunity to experience new experiences for users with different tastes.

상기 메타버스 속 가상 NPC 아바타를 성장시키는 시스템(1)이 다른 구성요소를 포함할 수도 있다는 것이 통상의 기술자에게 명백할 것이다. 예를 들어, 상기 메타버스 속 가상 NPC 아바타를 성장시키는 시스템(1)은 데이터 엔트리를 위한 입력 장치, 및 인쇄 또는 다른 데이터 표시를 위한 출력 장치를 포함하는, 본 명세서에 서술된 동작에 필요한 다른 하드웨어 요소를 포함할 수도 있다. 또한, 상기 메타버스 속 가상 NPC 아바타를 성장시키는 시스템(1)과 외부 장치(예를 들어, 사용자 단말, 또는 외부 데이터베이스 등) 사이를 연결하는 네트워크, 네트워크 인터페이스 및 프로토콜 등을 더 포함할 수 있다. It will be clear to those skilled in the art that the system 1 for growing a virtual NPC avatar in the metaverse may include other components. For example, the system 1 for growing a virtual NPC avatar in the metaverse may include other hardware required for the operations described herein, including an input device for data entry and an output device for printing or other data display. It may also contain elements. In addition, it may further include a network, network interface, and protocol connecting the system 1 for growing the virtual NPC avatar in the metaverse and an external device (eg, a user terminal, an external database, etc.).

하드웨어를 이용하여 본 발명의 실시 예를 구현하는 경우에는, 본 출원의 실시 예들을 수행하도록 구성된 ASICs(application specific integrated circuits) 또는 DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays) 등이 본 출원의 구성요소에 구비될 수 있다. When implementing embodiments of the present invention using hardware, application specific integrated circuits (ASICs) or digital signal processors (DSPs), digital signal processing devices (DSPDs), or programmable PLDs (PLDs) configured to perform the embodiments of the present application. logic devices), field programmable gate arrays (FPGAs), etc. may be included in the components of the present application.

이상에서 설명한 본 출원의 실시 예들에 따른 메타버스 속 가상 NPC 아바타를 성장시키는 시스템 및 방법에 의한 동작은 적어도 부분적으로 컴퓨터 프로그램으로 구현되어, 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. 예를 들어, 프로그램 코드를 포함하는 컴퓨터-판독가능 매체로 구성되는 프로그램 제품과 함께 구현되고, 이는 기술된 임의의 또는 모든 단계, 동작, 또는 과정을 수행하기 위한 프로세서에 의해 실행될 수 있다. The operations of the system and method for growing a virtual NPC avatar in the metaverse according to the embodiments of the present application described above may be at least partially implemented as a computer program and recorded on a computer-readable recording medium. For example, implemented with a program product comprised of a computer-readable medium containing program code, which can be executed by a processor to perform any or all steps, operations, or processes described.

상기 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등을 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 또한, 본 실시예를 구현하기 위한 기능적인 프로그램, 코드 및 코드 세그먼트(segment)들은 본 실시예가 속하는 기술 분야의 통상의 기술자에 의해 용이하게 이해될 수 있을 것이다.The computer-readable recording medium includes all types of recording devices that store data that can be read by a computer. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, and optical data storage devices. Additionally, computer-readable recording media may be distributed across computer systems connected to a network, and computer-readable codes may be stored and executed in a distributed manner. Additionally, functional programs, codes, and code segments for implementing this embodiment can be easily understood by those skilled in the art to which this embodiment belongs.

이상에서 살펴본 본 발명은 도면에 도시된 실시예들을 참고로 하여 설명하였으나 이는 예시적인 것에 불과하며 당해 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 실시예의 변형이 가능하다는 점을 이해할 것이다. 그러나, 이와 같은 변형은 본 발명의 기술적 보호범위 내에 있다고 보아야 한다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해서 정해져야 할 것이다.The present invention discussed above has been described with reference to the embodiments shown in the drawings, but these are merely illustrative examples, and those skilled in the art will understand that various modifications and modifications of the embodiments are possible therefrom. However, such modifications should be considered within the technical protection scope of the present invention. Therefore, the true technical protection scope of the present invention should be determined by the technical spirit of the attached patent claims.

Claims (16)

하나 이상의 컴퓨팅 장치에 의해 수행되는 사용자의 메타버스 활동 로그에 기초하여 메타버스 속 가상 NPC 아바타를 성장시키는 방법에 있어서,
사용자의 개인정보를 수신하는 단계;
미리 저장된 성격 중 사용자의 개인정보에 대응한 성격을 1차 성격으로 갖는 가상 NPC 아바타를 생성하는 단계 - 상기 가상 NPC 아바타는 사용자의 아바타와 상이한 형상을 가짐;
상기 사용자가 메타버스에서 활동하는 동안 전자 장치에 포착된 사용자의 활동 데이터 및 조작 데이터를 수신하는 단계 - 상기 활동 데이터는 사용자의 이미지, 텍스트, 및 음성 데이터 중 하나 이상의 데이터를 포함함;
미리 저장된 감정 인식 모델을 이용하여 사용자의 활동 데이터로부터 사용자의 감정 상태를 판단하는 단계;
상기 활동 데이터 및 감정 상태에 기초하여 상기 가상 NPC 아바타의 2차 성격을 생성하고, 상기 가상 NPC 아바타의 성격을 상기 2차 성격으로 업데이트하는 단계를 포함하고,
상기 2차 성격을 생성하는 단계는,
시계열 순서에 따라 획득된, 사용자의 메타버스 내 활동 각각에 대한 사용자의 활동 데이터 및 해당 활동 데이터로부터 판단된 사용자의 감정 상태로 이루어진 복수의 쌍을 포함한 제1 데이터 세트를 형성하는 단계; 및
상기 제1 데이터 세트를 이용하여 가상 NPC 아바타의 2차 성격을 가리키는 성격 모델을 모델링하는 단계를 포함하는 것을 특징으로 하는,
방법.
In a method of growing a virtual NPC avatar in the metaverse based on a user's metaverse activity log performed by one or more computing devices,
Receiving the user's personal information;
Creating a virtual NPC avatar having as a primary personality a personality corresponding to the user's personal information among pre-stored personalities - the virtual NPC avatar has a different shape from the user's avatar;
Receiving activity data and manipulation data of the user captured on an electronic device while the user is active in the metaverse, the activity data including one or more of the user's image, text, and voice data;
determining the user's emotional state from the user's activity data using a pre-stored emotion recognition model;
Generating a secondary personality of the virtual NPC avatar based on the activity data and emotional state, and updating the personality of the virtual NPC avatar with the secondary personality,
The step of creating the secondary personality is,
Forming a first data set including a plurality of pairs of user activity data for each activity in the user's metaverse, obtained according to a time series order, and the user's emotional state determined from the activity data; and
Characterized in that it includes the step of modeling a personality model indicating the secondary personality of the virtual NPC avatar using the first data set,
method.
청구항 제1항에 있어서, 상기 방법은,
수신된 활동 데이터 및 조작 데이터에 기초하여 사용자의 행동 패턴 데이터를 산출하는 단계;
사용자의 활동 데이터 및 상기 활동 데이터에 대응한 감정 상태, 및 상기 활동 데이터에 대응한 사용자의 행동 패턴 데이터를 포함한 제2 데이터 세트를 형성하는 단계;
상기 제2 데이터 세트를 이용하여 상기 사용자의 메타버스 내 행동을 모방하는 행동을 수행하는 상기 가상 NPC 아바타의 3차 성격을 생성하는 단계; 및
상기 가상 NPC 아바타의 성격을 생성된 3차 성격으로 업데이트하는 단계를 더 포함하는 것을 특징으로 하는,
방법.
The method of claim 1, wherein the method comprises:
calculating user behavior pattern data based on the received activity data and manipulation data;
forming a second data set including the user's activity data, an emotional state corresponding to the activity data, and the user's behavior pattern data corresponding to the activity data;
using the second data set to create a tertiary personality of the virtual NPC avatar that performs actions that mimic the user's actions in the metaverse; and
Characterized in that it further comprises the step of updating the personality of the virtual NPC avatar to the generated tertiary personality,
method.
청구항 제1항에 있어서, 상기 사용자의 활동 데이터로부터 사용자의 감정 상태를 판단하는 단계는,
미리 학습된 이미지 기반 감정 인식 모델를 이용하여 사용자의 이미지 데이터로부터 사용자의 제1 감정 상태를 판단하는 단계를 포함하고,
상기 이미지 기반 감정 인식 모델은
입력 이미지에서 얼굴 영역을 검출하는 얼굴 검출 유닛, 검출된 얼굴 영역에서 사용자의 이미지 특징을 추출하는 특징 추출 유닛, 및 모델에 미리 지정된 복수의 감정 상태 중에서 추출된 특징에 기초하여 입력 이미지 내 얼굴이 가리키는 사용자의 감정 상태를 분류하는 감정 판단 유닛을 포함한, 기계학습 모델이며,
상기 감정 판단 유닛은 사용자의 감정 유형을 판단하기 위한 제1 감정 판단 유닛, 및 사용자의 감정 종류를 판단하기 위한 제2 감정 판단 유닛을 포함하고,
상기 이미지 기반 감정 인식 모델은 상기 얼굴 영역에서 특징을 추출하여 사용자의 감정 유형을 제1 뎁스로 판단하고, 상기 얼굴 영역에서 특징을 추출하여 사용자의 감정 종류를 제2 뎁스로 판단하는 것을 특징으로 하는,
방법.
The method of claim 1, wherein determining the user's emotional state from the user's activity data comprises:
A step of determining the user's first emotional state from the user's image data using a pre-trained image-based emotion recognition model,
The image-based emotion recognition model is
a face detection unit that detects a face area in the input image, a feature extraction unit that extracts image features of the user from the detected face area, and a face in the input image that is pointed out based on the features extracted from a plurality of emotional states pre-specified in the model. It is a machine learning model that includes an emotion judgment unit that classifies the user's emotional state.
The emotion judgment unit includes a first emotion judgment unit for determining the user's emotion type, and a second emotion judgment unit for determining the user's emotion type,
The image-based emotion recognition model extracts features from the face area to determine the user's emotion type as a first depth, and extracts features from the face area to determine the user's emotion type as a second depth. ,
method.
청구항 제3항에 있어서, 상기 사용자의 활동 데이터로부터 사용자의 감정 상태를 판단하는 단계는,
미리 학습된 텍스트 기반 감정 인식 모델를 이용하여 사용자의 텍스트 데이터로부터 사용자의 제2 감정 상태를 판단하는 단계; 및 상기 텍스트 기반 감정 인식 모델 또는 미리 학습된 음성 기반 감정 인식 모델을 이용하여 사용자의 음성 데이터로부터 사용자의 제3 감정 상태를 판단하는 단계 중 하나 이상의 단계를 더 포함하는 것을 특징으로 하는,
방법.
The method of claim 3, wherein the step of determining the user's emotional state from the user's activity data comprises:
determining the user's second emotional state from the user's text data using a pre-trained text-based emotion recognition model; and determining the user's third emotional state from the user's voice data using the text-based emotion recognition model or the pre-trained voice-based emotion recognition model, characterized in that it further comprises one or more steps.
method.
청구항 제4항에 있어서, 상기 사용자의 활동 데이터로부터 사용자의 감정 상태를 판단하는 단계는,
사용자의 제1 내지 제3 감정 상태 중 복수의 감정 상태가 판단된 경우, 복수의 감정 상태 각각으로 분류될 확률 값에 기초하여 사용자의 최종 감정 상태를 판단하는 단계를 더 포함하고,
상기 최종 감정 상태를 판단하는 단계는,
이미지 데이터로부터 판단된 제1 감정 상태에 대해서는 보다 높은 제1 가중치를 부여하고, 텍스트 데이터로부터 판단된 제2 감정 상태에 대해서는 보다 낮은 제2 가중치를 부여하며, 제1 가중치를 제1 감정 상태의 값에 적용하고 제2 가중치를 제2 감정 상태의 값에 적용한 연산 값에 기초해 최종 감정 상태를 판단하는 것을 특징으로 하는,
방법.
The method of claim 4, wherein the step of determining the user's emotional state from the user's activity data comprises:
When a plurality of emotional states are determined among the first to third emotional states of the user, determining the final emotional state of the user based on a probability value of being classified into each of the plurality of emotional states,
The step of determining the final emotional state is,
A higher first weight is assigned to the first emotional state determined from the image data, a lower second weight is assigned to the second emotional state determined from the text data, and the first weight is set to the value of the first emotional state. Characterized in that the final emotional state is determined based on the calculation value applied to and the second weight is applied to the value of the second emotional state,
method.
청구항 제1항에 있어서,
상기 가상 NPC 아바타의 성격은 내적 요인 및 외적 요인을 포함하고,
상기 내적 요인은 감정 상태와 관련되고 상기 외적 요인은 상기 감정 상태 하에서 발현되는 신체 반응과 관련되며,
상기 2차 성격을 갖는 가상 NPC 아바타의 신체 반응은 감정 상태에 대응한 얼굴 표정을 구현하거나, 정보를 사용자의 텍스트 출력 방식, 음성 출력 방식으로 정보를 출력하는 것을 포함하고,
상기 제1 데이터 세트를 형성하는 단계는,
감정 상태의 유형이 부정의 값을 갖지 않는 나머지 감정 상태 중 적어도 일부의 감정 상태만을 포함하도록 제1 데이터 세트를 형성하는 것을 특징으로 하는,
방법.
The method of claim 1,
The personality of the virtual NPC avatar includes internal and external factors,
The internal factor is related to the emotional state and the external factor is related to the physical response expressed under the emotional state,
The physical response of the virtual NPC avatar with the secondary personality includes implementing facial expressions corresponding to emotional states or outputting information through the user's text output method or voice output method,
Forming the first data set includes:
Characterized in that forming the first data set such that the type of the emotional state includes only at least some emotional states among the remaining emotional states that do not have a negative value,
method.
청구항 제2항에 있어서, 상기 사용자의 행동 패턴 데이터는,
사용자의 메타버스에서 사용자의 아바타의 이동 동선, 이동 위치, 동선 빈도, 위치 빈도, 활동 관련 선택된 컨텐츠, 활동 결정까지 걸린 준비 시간, 활동 시작 시간, 활동 빈도, 활동 후기, 활동 내용, 활동 범위 중 하나 이상을 포함하고,
상기 활동이 관련 컨텐츠를 가질 경우, 활동 시작까지 걸린 준비 시간은 해당 컨텐츠 선택까지 걸린 준비 시간을 나타내고, 활동 시작 시간은 컨텐츠 시작 시간을 나타내고, 활동 빈도는 컨텐츠 이용 빈도를 나타내고, 활동 후기는 컨텐츠 이용 후기를 나타내고, 활동 내용은 컨텐츠 내용을 나타내고, 활동 범위는 컨텐츠 선택 범위로 나타내는 것을 특징으로 하는,
방법.
The method of claim 2, wherein the user's behavior pattern data is,
In the user's metaverse, one of the following is the movement line of the user's avatar, movement location, movement frequency, location frequency, selected content related to the activity, preparation time to decide on the activity, activity start time, activity frequency, activity review, activity content, and activity scope. Including the above,
If the activity has related content, the preparation time taken to start the activity represents the preparation time taken to select the content, the activity start time represents the content start time, the activity frequency represents the frequency of content use, and the activity review represents the content use. Characterized in that the review is indicated, the activity content indicates content content, and the activity range is indicated by a content selection range,
method.
청구항 제2항에 있어서, 상기 가상 NPC 아바타의 성격을 생성된 3차 성격으로 업데이트하는 단계는,
상기 제2 데이터 세트 및 행동 모방 알고리즘을 이용하여 상기 제2 데이터 세트 내 행동 패턴 데이터를 출력으로 갖고 나머지 데이터를 입력을 갖도록 3차 성격을 모델링하는 단계; 및
상기 제2 데이터 세트에 기초하여 모델링된 3차 성격을 역강화학습(IRL, Inverse Reinforcement Learning)하는 단계를 포함하는 것을 특징으로 하는,
방법.
The method of claim 2, wherein the step of updating the personality of the virtual NPC avatar to the generated tertiary personality comprises:
modeling a tertiary personality using the second data set and a behavior imitation algorithm to have behavioral pattern data in the second data set as output and the remaining data as input; and
Characterized in that it includes the step of inverse reinforcement learning (IRL) on the tertiary personality modeled based on the second data set.
method.
청구항 제2항에 있어서, 상기 방법은,
사용자의 메타버스 내 활동 로그 데이터에 기초하여 가상 엔피이 아바타와 성격 및 행동 패턴 중 적어도 하나가 매칭하는 사용자에게 적합한 컨텐츠를 추천하는 보조 성격을 생성하는 단계; 및
상기 보조 성격을 추가로 갖도록 가상 NPC 아바타를 업데이트하는 단계를 더 포함하고,
상기 보조 성격의 네트워크 구조는 제1 서브 구조 및 제2 서브 구조를 포함하고,
상기 제1 서브 구조는 입력 데이터와 출력 데이터 간의 선형 상관 관계를 모델한 것이고, 상기 제2 서브 구조는 입력 데이터와 출력 데이터 간의 비선형 상관 관계를 추론하도록 모델링된 것을 특징으로 하는,
방법.
The method of claim 2, wherein the method comprises:
Generating an auxiliary personality that recommends content suitable for a user whose virtual NPC avatar matches at least one of personality and behavior patterns based on activity log data within the user's metaverse; and
further comprising updating the virtual NPC avatar to additionally have the secondary personality,
The network structure of the auxiliary nature includes a first sub-structure and a second sub-structure,
The first sub-structure models a linear correlation between input data and output data, and the second sub-structure is modeled to infer a non-linear correlation between input data and output data,
method.
청구항 제9항에 있어서, 상기 보조 성격을 생성하는 단계는,
사용자의 메타버스 내 활동과 관련된 컨텐츠 정보, 해당 컨텐츠에 대응한 활동 데이터, 감정 상태 및 행동 패턴 데이터를 포함한 제3 데이터 세트를 형성하는 단계;
상기 제3 데이터 세트 내 활동 데이터, 감정 상태 및 행동 패턴 데이터 중에서 컨텐츠와 관련된 데이터 및 컨텐츠와 관련되지 않은 데이터를 분류하는 단계;
상기 컨텐츠와 관련된 데이터 및 상기 컨텐츠 정보로 이루어진 제1 서브 세트를 형성하는 단계;
상기 컨텐츠와 관련되지 않은 데이터 및 상기 컨텐츠 정보로 이루어진 제2 서브 세트를 형성하는 단계; 및
상기 제1 서브 세트를 이용하여 상기 보조 성격 내 제1 서브 구조를 학습하는 단계, 상기 제2 서브 세트를 이용하여 상기 보조 성격 내 제2 서브 구조를 학습하는 단계를 포함하는 것을 특징으로 하는,
방법.
The method of claim 9, wherein creating the auxiliary personality comprises:
forming a third data set including content information related to the user's activities in the metaverse, activity data corresponding to the content, emotional state, and behavior pattern data;
Classifying data related to content and data not related to content among activity data, emotional state, and behavior pattern data in the third data set;
forming a first subset of data related to the content and the content information;
forming a second subset consisting of data unrelated to the content and the content information; and
Characterized in that it comprises learning a first sub-structure in the auxiliary personality using the first subset, and learning a second sub-structure in the auxiliary personality using the second subset.
method.
청구항 제9항에 있어서,
상기 보조 성격을 갖도록 업데이트된 가상 NPC 아바타가 사용자의 아바타와 메타버스 내 일정 거리에 접근한 경우에, 접근 상황 하에서 자신의 활동 데이터, 감정 상태 및 행동 패턴 중 적어도 일부에 기초하여 사용자에게 적합한 컨텐츠를 예측하고 예측된 컨텐츠를 메타버스 내에서 출력하여 사용자에게 제공하는 단계를 더 포함하는,
방법.
The method of claim 9,
When the virtual NPC avatar updated to have the auxiliary personality approaches the user's avatar at a certain distance within the metaverse, content suitable for the user is provided based on at least some of the user's activity data, emotional state, and behavior pattern under the access situation. Further comprising the step of predicting and outputting the predicted content within the metaverse and providing it to the user.
method.
청구항 제2항에 있어서, 상기 방법은,
복수의 사용자 각각의 메타버스 내 활동에 따라 맞춤화되어 생성되고 성장한 복수의 가상 NPC 아바타가 메타버스 내에 존재할 경우, 특정 사용자에 맞춤화된 하나 이상의 가상 NPC 아바타를 필터링하는 단계; 및
필터링된 가상 NPC 아바타를 통해 메타버스 정보를 제공하는 단계를 더 포함하는 것을 특징으로 하는,
방법.
The method of claim 2, wherein the method comprises:
When a plurality of virtual NPC avatars customized and created and grown according to the activities of each of the plurality of users in the metaverse exist in the metaverse, filtering one or more virtual NPC avatars customized to a specific user; and
Characterized by further comprising providing metaverse information through a filtered virtual NPC avatar,
method.
청구항 제12항에 있어서,
필터링 이후에, 상기 필터링된 가상 NPC 아바타만이 존재하도록 메타버스를 재-구성하는 단계를 더 포함하는 것을 특징으로 하는,
방법.
The method of claim 12,
After filtering, the step of re-constructing the metaverse so that only the filtered virtual NPC avatars exist,
method.
청구항 제1항 내지 청구항 제13항 중 어느 하나의 청구항에 따른 사용자의 메타버스 활동 로그에 기초하여 메타버스 속 가상 NPC 아바타를 성장시키는 방법을 수행하기 위한, 프로그램을 기록한 컴퓨터 판독가능한 기록매체. A computer-readable recording medium recording a program for performing a method of growing a virtual NPC avatar in the metaverse based on the user's metaverse activity log according to any one of claims 1 to 13. 사용자의 메타버스 활동 로그에 기초하여 메타버스 속 가상 NPC 아바타를 성장시키는 시스템에 있어서,
상기 시스템은 서비스 서버를 포함하고,
상기 서비스 서버는,
사용자의 개인정보, 상기 사용자가 메타버스에서 활동하는 동안 전자 장치에 포착된 사용자의 활동 데이터 및 조작 데이터를 수신하는 데이터 수집 모듈;
미리 저장된 성격 중 사용자의 개인정보에 대응한 성격을 1차 성격으로 갖는 가상 NPC 아바타를 생성하는 아바타 생성 모듈;
미리 저장된 감정 인식 모델을 이용하여 사용자의 활동 데이터로부터 사용자의 감정 상태를 판단하는 감정 분석 모듈;
상기 활동 데이터 및 감정 상태에 기초하여 상기 가상 NPC 아바타의 2차 성격을 생성하고, 상기 가상 NPC 아바타의 성격을 상기 2차 성격으로 업데이트하는 아바타 성장 모듈을 포함하는 것을 특징으로 하는,
시스템.
In a system that grows a virtual NPC avatar in the metaverse based on the user's metaverse activity log,
The system includes a service server,
The service server is,
a data collection module that receives the user's personal information, the user's activity data and manipulation data captured on an electronic device while the user is active in the metaverse;
An avatar creation module that generates a virtual NPC avatar with a personality corresponding to the user's personal information among pre-stored personalities as a primary personality;
an emotion analysis module that determines the user's emotional state from the user's activity data using a pre-stored emotion recognition model;
Characterized in that it includes an avatar growth module that generates a secondary personality of the virtual NPC avatar based on the activity data and emotional state, and updates the personality of the virtual NPC avatar to the secondary personality,
system.
청구항 제15항에 있어서, 상기 서비스 서버는,
수신된 활동 데이터 및 조작 데이터에 기초하여 사용자의 행동 패턴 데이터를 산출하는 행동 분석 모듈;을 더 포함하고,
상기 아바타 성장 모듈은,
사용자의 활동 데이터 및 상기 활동 데이터에 대응한 감정 상태, 및 상기 활동 데이터에 대응한 사용자의 행동 패턴 데이터를 포함한 제2 데이터 세트를 형성하고, 상기 제2 데이터 세트를 이용하여 상기 사용자의 메타버스 내 행동을 모방하는 행동을 수행하는 상기 가상 NPC 아바타의 3차 성격을 생성하며, 그리고 상기 가상 NPC 아바타의 성격을 생성된 3차 성격으로 업데이트하도록 더 구성되는 것을 특징으로 하는,
시스템.
The method of claim 15, wherein the service server:
It further includes a behavior analysis module that calculates user behavior pattern data based on the received activity data and manipulation data,
The avatar growth module is,
Form a second data set including the user's activity data, emotional state corresponding to the activity data, and user's behavior pattern data corresponding to the activity data, and use the second data set to enter the user's metaverse. generating a tertiary personality of the virtual NPC avatar that performs actions that mimic the behavior, and further configured to update the virtual NPC avatar's personality with the generated tertiary personality,
system.
KR1020220095039A 2022-07-29 2022-07-29 System and method for growing non-player character avatar within metaverse based on metaverse behavior log of user KR20240016817A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220095039A KR20240016817A (en) 2022-07-29 2022-07-29 System and method for growing non-player character avatar within metaverse based on metaverse behavior log of user

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220095039A KR20240016817A (en) 2022-07-29 2022-07-29 System and method for growing non-player character avatar within metaverse based on metaverse behavior log of user

Publications (1)

Publication Number Publication Date
KR20240016817A true KR20240016817A (en) 2024-02-06

Family

ID=89858716

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220095039A KR20240016817A (en) 2022-07-29 2022-07-29 System and method for growing non-player character avatar within metaverse based on metaverse behavior log of user

Country Status (1)

Country Link
KR (1) KR20240016817A (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102199843B1 (en) 2019-10-12 2021-01-07 동서대학교 산학협력단 Virtual pet providing system in augmented reality

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102199843B1 (en) 2019-10-12 2021-01-07 동서대학교 산학협력단 Virtual pet providing system in augmented reality

Similar Documents

Publication Publication Date Title
US11276216B2 (en) Virtual animal character generation from image or video data
CN110785767B (en) Compact linguistics-free facial expression embedding and novel triple training scheme
CN109844741A (en) Response is generated in automatic chatting
Tinwell et al. The uncanny wall
CN115769234A (en) Template-based generation of 3D object mesh from 2D images
CN111260754B (en) Face image editing method and device and storage medium
CN109789550A (en) Control based on the social robot that the previous role in novel or performance describes
US20130262114A1 (en) Crowdsourced, Grounded Language for Intent Modeling in Conversational Interfaces
US11458409B2 (en) Automatic classification and reporting of inappropriate language in online applications
WO2015153878A1 (en) Modeling social identity in digital media with dynamic group membership
KR20190089451A (en) Electronic device for providing image related with text and operation method thereof
KR102354592B1 (en) Method, server and computer program for recommending video editing point based on streaming data
CN116704085B (en) Avatar generation method, apparatus, electronic device, and storage medium
JP2017037601A (en) Dialog interface
CN117203675A (en) Artificial intelligence for capturing facial expressions and generating mesh data
CN113902989A (en) Live scene detection method, storage medium and electronic device
CN113383345A (en) Method and system for defining emotion machine
CN117216234A (en) Artificial intelligence-based speaking operation rewriting method, device, equipment and storage medium
CN109961152B (en) Personalized interaction method and system of virtual idol, terminal equipment and storage medium
KR20240016817A (en) System and method for growing non-player character avatar within metaverse based on metaverse behavior log of user
JP2017037603A (en) Dialog interface
CN114712862A (en) Virtual pet interaction method, electronic device and computer-readable storage medium
KR20230103671A (en) Method and apparatus for providing a metaverse virtual reality companion animal capable of forming a relationship based on a user's emotions in a communication system
KR102120936B1 (en) System for providing customized character doll including smart phone
US20230154093A1 (en) Method for analyzing personality or aptitude based on metaverse and artificial intelligence