KR102234069B1 - 캠페인 노출 여부 판단 방법, 서버 및 컴퓨터 프로그램 - Google Patents

캠페인 노출 여부 판단 방법, 서버 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR102234069B1
KR102234069B1 KR1020180077633A KR20180077633A KR102234069B1 KR 102234069 B1 KR102234069 B1 KR 102234069B1 KR 1020180077633 A KR1020180077633 A KR 1020180077633A KR 20180077633 A KR20180077633 A KR 20180077633A KR 102234069 B1 KR102234069 B1 KR 102234069B1
Authority
KR
South Korea
Prior art keywords
campaign
game
exposure
time
user
Prior art date
Application number
KR1020180077633A
Other languages
English (en)
Other versions
KR20190045043A (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 KR1020180077633A priority Critical patent/KR102234069B1/ko
Publication of KR20190045043A publication Critical patent/KR20190045043A/ko
Application granted granted Critical
Publication of KR102234069B1 publication Critical patent/KR102234069B1/ko

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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0255Targeted advertisements based on user history
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/61Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor using advertising information
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/85Providing additional services to players
    • 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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0269Targeted advertisements based on user profile or attribute
    • G06Q30/0271Personalized advertisement
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/55Details of game data or player data management
    • A63F2300/5506Details of game data or player data management using advertisements

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Multimedia (AREA)
  • Strategic Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명은 복수의 게임 유저들의 게임 로그들을 활용하여 각 게임 유저에게 맞춤화된 캠페인 노출 빈도를 조절할 수 있는 방법, 서버 및 컴퓨터 프로그램에 관한 것이다. 이를 위한 본 발명의 일 실시예에 따른 캠페인 노출 여부 판단 방법은 캠페인 그룹 별로 복수의 게임 유저들의 과거 시점 게임 로그들을 수집하는 단계; 과거 시점 게임 로그들을 학습하는 단계; 학습 결과를 근거로, 캠페인 그룹 별로 반응 확률 예측 모델을 생성하는 단계; 사용자 단말기로부터 노출 여부 질의 신호를 수신하고, 사용자 단말기의 게임 유저에 대한 과거 시점 게임 로그에서 대상 캠페인에 대한 반응 확률 판단 인자를 추출하는 단계; 대상 캠페인이 속한 캠페인 그룹의 반응 확률 예측 모델에 게임 유저의 반응 확률 판단 인자를 적용함으로써 대상 캠페인에 대한 상기 게임 유저의 반응 확률을 산출하는 단계; 및 반응 확률을 이용하여 대상 캠페인의 노출 여부를 결정하는 단계를 포함하는 것을 특징으로 한다.

Description

캠페인 노출 여부 판단 방법, 서버 및 컴퓨터 프로그램{METHOD, SERVER AND COMPUTER PROGRAM FOR DETERMINING EXPOSURE OF CAMPAIGN}
본 발명은 캠페인 노출 여부 판단 방법, 서버 및 컴퓨터 프로그램에 관한 것이고, 보다 상세하게 복수의 게임 유저들의 게임 로그들을 활용하여 각 게임 유저에게 맞춤화된 캠페인 노출 빈도를 조절할 수 있는 방법, 노출 제어 서버 및 컴퓨터 프로그램에 관한 것이다.
스마트 TV, 스마트 폰과 같은 스마트 디바이스가 대중화 되고 있으며, 이러한 스마트 디바이스를 이용하여 게임을 즐기는 사용자의 수도 점차 증가하고 있다. 특히, 인터넷 통신이 가능한 스마트 폰을 이용하는 사용자들은 스마트 폰의 이동성 및 휴대성을 통해 언제 어디서나 인터넷을 통해 게임을 즐길 수 있다.
게임 유저의 흥미를 높이고 게임의 지속 가능성을 높이기 위해, 모바일 게임 제공자는 주기적으로 또는 간헐적으로 다양한 이벤트를 하고, 모바일 게임 제공자가 원하는 행동을 게임 유저가 하도록 캠페인을 통해 다양한 제안을 할 수 있다. 여기서, 캠페인이란 게임 유저가 게임에서 게임 제공자가 원하는 행동을 요구하는 하나의 방법으로서, 이에 대한 예시는 도 1a 및 도 1b에 도시된다.
캠페인은 게임 유저가 게임에 접속할 때, 그리고 게임 도중 특정 조건에 도달할 때 발생될 수 있다. 여기서, 캠페인의 종류로는 도 1a 및 도 1b에 도시된 이벤트 알림 캠페인 및 구매 제안 캠페인 등이 있다. 예를 들어, 캠페인에는 도 1a 및 도 1b에 도시된 캠페인 외에도 다양한 게임 정보를 알리는 정보 제공 캠페인, 게임 내 재화 소비 방법 가이드 캠페인 등이 포함될 수 있으나, 캠페인의 종류는 이에 제한되지 않는다.
이러한 캠페인들은 모든 게임 유저들에게 공통적으로 제공되는데, 게임 유저마다 그 성향과 게임 패턴이 다르므로, 모든 게임 유저들을 충족시키기는 어렵다. 예를 들어, 초보자를 위한 초보자 게임 가이드 캠페인의 경우, 해당 모바일 게임을 한지 얼마 되지 않은 게임 유저에게는 도움이 될 수 있지만, 반대로 일정 기간 이상 플레이한 게임 유저에게는 해당 캠페인의 제안이 불필요하다. 뿐만 아니라, 특정 캠페인들은 게임 어플리케이션에 접속할 때마다 미리 설정된 기간 동안 반복적으로 게임 유저들에게 제공될 수 있다. 이 경우, 해당 캠페인들에 관심이 없는 게임 유저는 이 캠페인들을 닫고 게임을 진행해야 한다. 다시 말해서, 해당 캠페인들에 관심이 있는 게임 유저더라도 캠페인의 개수가 많고, 그 노출 빈도가 잦기 때문에, 게임을 진행할 때, 불편한 경우가 생기는 문제가 있다.
이러한 문제점에 관련하여, 도 1a에 도시된 것처럼 한 번 노출된 캠페인의 하단 또는 상단에 특정 영역을 두고, 이 영역을 통한 게임 유저의 선택에 따라 해당 캠페인이 미리 설정된 기간(예를 들어, 하루) 동안 노출되지 않게 제어하는 방식을 채택할 수 있다. 다만, 이 방식도 해당 캠페인이 미리 설정된 기간 마다 적어도 한 번은 게임 유저들에게 반복적으로 제공되므로, 해당 캠페인에 관심이 없는 게임 유저들을 귀찮게 하는 문제점을 완전하게 해소하지 못하고 있다.
따라서, 게임 유저들의 관심도에 따라 캠페인을 선택적으로 제공하는 새로운 기법이 요구된다.
한국공개특허 제2013-0131845호
본 발명은 상기와 같은 문제점을 해결하기 위해 창안된 것으로, 게임 유저들의 관심도에 따라 캠페인을 선택적으로 제공함으로써, 게임 유저의 관심도에 따라 맞춤형으로 캠페인을 제공할 수 있는 캠페인 노출 여부 판단 방법, 노출 제어 서버 및 컴퓨터 프로그램을을 제공하는데 그 목적이 있다.
상기와 같은 과제를 해결하기 위한 본 발명의 노출 제어 서버가 게임 어플리케이션이 설치된 사용자 단말기에 제공될 대상 캠페인의 노출 여부를 판단하는 방법은 캠페인 그룹 별로 복수의 게임 유저들의 과거 시점 게임 로그들을 수집하는 단계; 과거 시점 게임 로그들을 학습하는 단계; 학습 결과를 근거로, 캠페인 그룹 별로 반응 확률 예측 모델을 생성하는 단계; 사용자 단말기로부터 노출 여부 질의 신호를 수신하고, 사용자 단말기의 게임 유저에 대한 과거 시점 게임 로그에서 대상 캠페인에 대한 반응 확률 판단 인자를 추출하는 단계; 대상 캠페인이 속한 캠페인 그룹의 반응 확률 예측 모델에 게임 유저의 반응 확률 판단 인자를 적용함으로써 대상 캠페인에 대한 상기 게임 유저의 반응 확률을 산출하는 단계; 및 반응 확률을 이용하여 대상 캠페인의 노출 여부를 결정하는 단계를 포함하는 것을 특징으로 한다.
또한, 과거 시점 게임 로그는 게임 유저에게 제공된 과거 캠페인의 캠페인 노출 시간을 포함하고, 과거 시점 게임 로그들을 학습하는 단계는 복수의 게임 유저들에게 제공된 과거 캠페인의 캠페인 노출 시간들을 이용하여 이루어질 수 있다.
또한, 과거 시점 게임 로그들을 학습하는 단계는 과거 캠페인의 캠페인 노출 시간들을 시간의 크기에 따라 정렬하는 단계; 정렬 결과를 분석함으로써 제1 시간 및 제2 시간을 결정하는 단계; 및 제1 시간 미만이거나 제2 시간을 초과하는 과거 캠페인의 캠페인 노출 시간들을 필터링하는 단계를 포함할 수 있다.
또한, 캠페인 그룹 별 반응 확률 예측 모델에서 반응 확률은 캠페인 노출 시간이 제1 시간에 가까워질수록 작아지고, 캠페인 노출 시간이 제2 시간에 가까워질수록 커지도록 모델링될 수 있다.
또한, 캠페인 그룹 별 반응 확률 예측 모델을 생성하는 단계는, 제1 시간 미만이거나 제2 시간을 초과하는 캠페인 노출 시간들에 대한 반응 확률은 0으로 모델링할 수 있다.
또한, 반응 확률 판단 인자는 사용자 단말기의 게임 유저에게 제공된 과거 캠페인들의 캠페인 노출 시간들을 근거로 도출될 수 있다.
또한, 과거 시점 게임 로그는 각 게임 유저에게 제공된 과거 캠페인에 따른 제안 수락 여부 정보를 포함하고, 과거 시점 게임 로그들을 학습하는 단계는 복수의 게임 유저들의 제안 수락 여부 정보들을 이용하여 이루어질 수 있다.
또한, 과거 시점 게임 로그들을 학습하는 단계는 과거 시점 게임 로그들에서 각 게임 유저의 특징 값들 및 제안 수락 여부 정보를 추출하는 단계; 및 각 게임 유저의 특징 값들 및 제안 수락 여부 정보를 학습하는 단계를 포함할 수 있다.
또한, 특징값 들은 게임 유저들의 미리 정의된 특징들에 대한 값들을 나타내고, 특징들은 게임 유저 레벨, 게임 내 재화량, 게임 내 재화 사용량, 구매 확률, 유저의 상태 정보, 캠페인 노출 시간, 게임 플레이 패턴 중 적어도 하나를 포함할 수 있다.
또한, 대상 캠페인의 노출 여부를 결정하는 단계는 노출 여부 판단값을 결정하는 단계; 및 게임 유저의 반응 확률이 노출 여부 판단 값을 초과할 때 대상 캠페인을 노출할 것으로 결정하는 단계를 포함할 수 있다.
또한, 노출 여부 판단 값을 결정하는 단계는, 전체 게임 유저들 중 미리 설정된 상위 퍼센트에 해당하는 게임 유저의 반응 확률을 노출 여부 판단 값으로 결정함으로써 이루어질 수 있다.
또한, 게임 유저의 반응 확률이 노출 여부 판단 값을 초과하고, 현재 시각과 최근 노출 시각 간의 차가 최소 노출 빈도 시간을 초과할 때 대상 캠페인을 노출할 것으로 확정하는 단계를 더 포함하고, 최근 노출 시각은 대상 캠페인이 포함된 캠페인 그룹 중 사용자 단말기에 마지막으로 제공된 캠페인의 제공 시각일 수 있다.
또한, 게임 유저의 반응 확률이 상기 노출 여부 판단 값 이하이고, 현재 시각과 최근 노출 시각 간의 차가 최대 노출 빈도 시간을 초과할 때 대상 캠페인을 노출할 것으로 확정하는 단계를 더 포함할 수 있다.
또한, 대상 캠페인의 노출 여부를 결정하는 단계는, 랜덤 함수를 통해 0에서 1 사이의 랜덤 값을 도출하는 단계; 및 게임 유저의 반응 확률이 랜덤 값을 초과할 경우 대상 캠페인을 노출할 것으로 결정하는 단계를 포함할 수 있다.
상기와 같은 과제를 해결하기 위한 본 발명의 노출 제어 서버는 캠페인 그룹 별로 복수의 게임 유저들의 과거 시점 게임 로그들을 수집하는 게임 로그 수집부; 과거 시점 게임 로그들을 학습하는 학습부; 학습 결과를 근거로, 캠페인 그룹 별로 반응 확률 예측 모델을 생성하는 모델 생성부; 사용자 단말기로부터 노출 여부 질의 신호를 수신하는 요청 수신부; 사용자 단말기의 게임 유저에 대한 과거 시점 게임 로그에서 대상 캠페인에 대한 반응 확률 판단 인자를 추출하고, 대상 캠페인이 속한 캠페인 그룹의 반응 확률 예측 모델에 게임 유저의 반응 확률 판단 인자를 적용함으로써 대상 캠페인에 대한 게임 유저의 반응 확률을 산출하는 반응 확률 산출부; 및 반응 확률을 이용하여 대상 캠페인의 노출 여부를 결정하는 노출 여부 결정부를 포함하고, 상술한 방법에 따른 각 단계를 실행하는 것을 특징으로 한다.
또한, 상술한 방법을 컴퓨터에서 실행시키기 위하여 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램이 제공된다.
또한, 상술한 방법을 수행하는 컴퓨터 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체가 제공된다.
본 발명의 캠페인 노출 여부 판단 방법, 노출 제어 서버 및 컴퓨터 프로그램은 복수의 게임 유저들의 과거 시점 게임 로그뿐만 아니라, 캠페인의 노출 여부를 확인 요청한 게임 유저의 게임 로그를 활용하여 해당 게임 유저에게 최적화된 캠페인 노출 빈도 조절이 가능한 효과가 있다.
또한, 본 발명의 캠페인 노출 여부 판단 방법, 노출 제어 서버 및 컴퓨터 프로그램은 사용자 단말기가 아닌 별도의 노출 제어 서버를 통해 이루어질 수 있어서, 사용자 단말기의 부하를 최소화시킬 수 있고, 이에 따라 사용자 단말기를 통해 진행되는 게임 플레이가 원활해지는 장점이 있다.
또한, 본 발명의 캠페인 노출 여부 판단 방법, 노출 제어 서버 및 컴퓨터 프로그램은 게임 유저에게 제공 예정인 대상 캠페인에 대해, 대상 캠페인이 속한 캠페인 그룹의 제공에 따른 데이터를 활용하므로, 해당 캠페인에 대한 게임 유저의 관심도를 보다 정확히 파악할 수 있다. 물론, 이러한 관심도 파악은 캠페인의 그룹 단위가 아닌 캠페인 단위로 확장이 가능하다.
또한, 본 발명의 캠페인 노출 여부 판단 방법, 노출 제어 서버 및 컴퓨터 프로그램은 과거 시점의 게임 로그를 이용하되, 현재 시점을 기준으로 미리 설정된 기간 내의 게임 로그만 이용하여, 비교적 최근 게임 유저들의 행동을 기반으로 최신성을 유지할 수 있고, 캠페인의 노출 빈도도 게임 유저의 최근 행동을 기반으로 결정되므로 유저 행동 변화에 적응적으로 변화될 수 있는 효과가 있다.
도 1a 및 도 1b는 캠페인의 개념을 설명하기 위한 예시들의 도면이다.
도 2는 본 발명의 일 실시예에 따른 캠페인 노출 여부 판단 시스템에 대한 개념도이다.
도 3은 캠페인 그룹의 개념을 설명하기 위한 개념도이다.
도 4는 본 발명의 일 실시예에 따른 사용자 단말기에 대한 블록도이다.
도 5는 본 발명의 일 실시예에 따른 노출 제어 서버에 대한 블록도이다.
도 6 및 도 7은 본 발명의 일 실시예에 따른 노출 제어 서버를 통해 캠페인 그룹 별 반응 확률 예측 모델을 생성하는 방법을 설명하기 위한 도면이다.
도 8a 및 도 8b는 본 발명의 일 실시예에 따른 노출 제어 서버를 통해 캠페인 그룹 별 반응 확률 예측 모델을 생성하는 방법을 설명하기 위한 도면이다.
도 9는 본 발명의 일 실시예에 따른 노출 제어 서버를 통해 이루어지는 캠페인 노출 여부 판단 방법에 대한 흐름도이다.
도 10은 본 발명의 일 실시예에 따른 학습 단계에 대한 흐름도이다.
도 11은 본 발명의 다른 실시예에 따른 학습 단계에 대한 흐름도이다.
도 12는 본 발명의 일 실시예에 따른 대상 캠페인의 노출 여부를 결정하는 단계에 대한 흐름도이다.
도 13은 본 발명의 다른 실시예에 따른 대상 캠페인의 노출 여부를 결정하는 단계에 대한 흐름도이다.
본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
이하, 본 발명의 실시예에 따른 캠페인 노출 여부 판단 시스템에 대하여 설명하도록 한다.
도 2는 본 발명의 일 실시예에 따른 캠페인 노출 여부 판단 시스템(1000)에 대한 개념도이다. 도 2에 도시된 것처럼, 본 발명의 일 실시예에 따른 캠페인 노출 여부 판단 시스템(1000)은 사용자 단말기(100, 200)와 노출 제어 서버(300)를 포함할 수 있다. 도 2에서 사용자 단말기와 게임 유저의 수는 각각 2개인 것으로 도시되었으나, 이는 본 발명의 이해를 돕기 위해 축약되어 도시되었다는 점이 이해되어야 한다. 또한, 각 사용자 단말기(100, 200)를 통해 동작되는 흐름은 실질적으로 동일하므로, 아래에서는 사용자 단말기(100)를 중심으로 그 동작에 대한 설명이 이루어진다.
사용자 단말기(100)는 게임 유저가 가지고 있고, 게임 어플리케이션이 설치된 단말기를 나타낸다. 예를 들어, 사용자 단말기(100)는 스마트 폰이나 태블릿 PC 등의 모바일 디바이스이나 게임 어플리케이션을 설치하여 실행할 수 있는 기기라면 어떠한 종류의 디바이스라도 가능하다. 그리고, 게임 어플리케이션은 컴퓨터, 랩탑 컴퓨터, 콘솔 게임기 등과 같은 디바이스에서 실행되는 게임과, 휴대용 단말기(예를 들어, 스마트폰이나 태블릿 PC 등)에서 실행되는 모바일 게임을 포함할 수 있다.게임 유저로부터 게임 어플리케이션의 실행 입력이 수신되면, 사용자 단말기(100)는 해당 게임 어플리케이션을 실행하고, 네트워크(20)를 통해 게임 서버(10)에 접속하는 과정이 이루어진다.
여기서, 게임 어플리케이션에는 게임과 함께 배경기술 항목에서 언급된 복수의 캠페인들이 포함될 수 있다. 캠페인들은 게임 어플리케이션의 설치 시 미리 사용자 단말기에 저장될 수 있다. 또한, 모바일 게임 제공자는 주기적으로 또는 간헐적으로 해당 게임 어플리케이션에 대한 업데이트를 제공할 수 있는데, 이 업데이트에도 상기 캠페인들이 추가되어 사용자 단말기에 저장될 수 있다. 또한, 캠페인은 사용자 단말기(100)와 게임 서버(10)간 접속이 이루어질 때, 게임 서버(10)에서 직접적으로 송신되어 사용자 단말기(100)에 저장될 수 있다.
사용자 단말기(100)와 게임 서버(10)간 접속이 완료되면, 사용자 단말기(100)는 사용자 단말기(100)에 저장된 또는 게임 서버(10)로부터 송신된 캠페인의 캠페인 노출 시점이 도래하였는지 판단한다. 판단 결과, 캠페인 노출 시점이 도래한 것으로 판단된 경우 사용자 단말기(100)는 저장된 또는 수신된 캠페인들 중 적어도 하나의 대상 캠페인을 선택하고, 선택한 대상 캠페인의 노출 여부를 질의하는 과정을 수행한다.
위에서 설명한 것처럼 본 발명의 일 실시예에 따른 캠페인 노출 여부 판단 시스템(1000)은 동일한 캠페인을 각 게임 유저에게 제공하는 것이 아닌, 각 게임 유저에게 맞춤화된 캠페인을 제공하는 것을 특징으로 한다. 이러한 맞춤화 과정을 위해 본 발명의 일 실시예에 따른 캠페인 노출 여부 판단 시스템(1000)은 노출 제어 서버(300)를 포함하고, 노출 제어 서버(300)는 각 사용자 단말기(100, 200)에서 질의한 대상 캠페인의 노출 여부를 결정하는 기능을 한다.
노출 제어 서버(300)는 게임 서버(10)와 구분되는 것으로, 게임 서버(10)가 게임이 진행되는 동안 게임이 플레이될 수 있도록 데이터를 처리 및 반환하는 역할을 하는 반면, 노출 제어 서버(300)는 게임 어플리케이션으로부터 게임 플레이 상황을 나타내는 게임 로그를 이용하여 각 사용자 단말기(100, 200)에서 질의한 대상 캠페인의 노출 여부를 결정하는 기능을 한다. 여기서 게임 로그란 게임 유저의 사용자 단말기에 게임 어플리케이션을 설치, 실행, 제거하는 과정 등에서 생성되는 모든 원시 데이터(raw data)를 의미한다. 일 실시예에서, 후술할 캠페인에 대한 게임 유저의 반응 정보도 게임 로그에 포함될 수 있다.
도 3은 캠페인 그룹의 개념을 설명하기 위한 개념도이다.
노출 제어 서버(300)는 복수의 게임 유저들의 과거 시점 게임 로그를 이용하여 대상 캠페인의 노출 여부를 결정한다. 구체적으로, 노출 제어 서버(300)는 대상 캠페인과 동일한 캠페인 그룹에 속한 과거 캠페인들의 제공에 따른 복수의 게임 유저들의 과거 시점 게임 로그를 이용하여 대상 캠페인의 노출 여부를 결정할 수 있다. 여기서, 과거 시점 게임 로그(즉, 대상 캠페인과 동일한 캠페인 그룹에 속한 과거 캠페인들의 제공에 따른 과거 시점 게임 로그)를 이용하는 이유는 각 게임 유저가 게임 유저마다 그 성향과 게임 패턴이 다르기 때문이다. 예를 들어, 어떤 게임 유저는 이벤트 알림 캠페인에 관심이 있지만 다른 캠페인들에는 전혀 관심이 없을 수 있고, 다른 어떤 게임 유저는 구매 제안 캠페인에는 관심이 있지만 다른 캠페인들에는 전혀 관심이 없을 수 있다. 따라서, 대상 캠페인의 노출 여부를 결정할 때, 대상 캠페인과 동일한 또는 유사한 목적을 갖는 참고 데이터를 활용하는 것이 바람직하다.
도 3을 참고하면, 본 발명의 일 실시예에 따른 노출 제어 서버(300)는 캠페인을 그 목적에 따라 복수의 캠페인 그룹(cg1, cg2, cgm)들로 그룹화할 수 있다. 도 3에 도시된 것처럼, 각 캠페인 그룹(cg1, cg2, cgm)에는 목적이 유사한 복수의 캠페인들이 포함된다. 예를 들어, 제1 캠페인 그룹(cg1)은 목적이 이벤트 알림인 캠페인들의 그룹일 수 있고, 제2 캠페인 그룹(cg2)은 목적이 구매 제안인 캠페인들의 그룹일 수 있으며, 제m 캠페인 그룹(cgm)은 목적이 게임 가이드인 캠페인들의 그룹일 수 있다.
그 후, 노출 제어 서버(300)는 각 캠페인 그룹(cg1, cg2, cgm)에 포함된 과거 캠페인들의 제공에 따른 과거 시점 게임 로그들을 학습함으로써 캠페인 그룹 별 반응 확률 예측 모델을 생성한다. 예를 들어, 캠페인 그룹의 개수가 3개인 경우 노출 제어 서버(300)는 캠페인 그룹 별로 적어도 하나의 반응 확률 예측 모델을 생성할 수 있으며, 이 예시에서 노출 제어 서버(300)는 제1 캠페인 그룹의 반응 확률 예측 모델, 제2 캠페인 그룹의 반응 확률 예측 모델, 그리고 제3 캠페인 그룹의 반응 확률 예측 모델을 생성할 것이다. 물론, 복수의 캠페인 그룹들이 존재하는 경우, 캠페인 그룹의 개수만큼 반응 확률 예측 모델들의 개수도 변경될 수 있다.
노출 제어 서버(300)는 과거 시점 게임 로그들을 학습할 때, 과거 시점 게임 로그들에 포함된 정보들에서 캠페인 노출 시간 및 제안 수락 여부 정보 중 적어도 하나를 이용할 수 있다. 구체적으로, 노출 제어 서버(300)는 캠페인 그룹 별로 각 캠페인 그룹에 속한 과거 캠페인들의 제공에 따른 복수의 게임 유저들의 과거 시점 게임 로그들을 수집하고, 과거 시점 게임 로그들에서 수집한 캠페인 노출 시간 및 제안 수락 여부 정보 중 적어도 하나를 이용하여 반응 확률 예측 모델을 생성 또는 갱신할 수 있다. 노출 제어 서버(300)는 생성 또는 갱신한 반응 확률 예측 모델을 활용하여 대상 캠페인의 노출 여부를 결정할 수 있다. 여기서, 반응 확률 예측 모델은 미리 설정된 학습 기법을 통해 생성된 모델로서, 대상 캠페인에 대한 게임 유저의 관심도(즉, 반응 확률)를 예측하는 기능을 한다.
그 후, 노출 제어 서버(300)는 노출 여부 질의 신호를 송신한 사용자 단말기(100)의 게임 유저에 대한 게임 로그에서 대상 캠페인에 대한 반응 확률 판단 인자를 추출한다. 이어서, 노출 제어 서버(300)는 추출한 반응 확률 판단 인자를 대상 캠페인이 속한 캠페인 그룹의 반응 확률 예측 모델에 적용함으로써 게임 유저의 해당 대상 캠페인에 대한 반응 확률을 산출한다. 예를 들어, 대상 캠페인이 제2 캠페인 그룹에 속한 캠페인일 경우, 노출 제어 서버(300)는 반응 확률 판단 인자를 복수의 반응 확률 예측 모델들 중 제2 캠페인 그룹의 반응 확률 예측 모델에 적용함으로써 반응 확률을 산출 할 수 있다. 이렇게 반응 확률의 산출이 완료되면, 노출 제어 서버(300)는 산출된 반응 확률을 이용하여 대상 캠페인의 노출 여부를 결정할 수 있다.
노출 여부가 질의된 대상 캠페인은 노출 제어 서버(300)에 관하여 상술한 동작들을 통해 노출 여부가 결정되고, 그 노출 여부에 따라 사용자 단말기(100)에 선택적으로 디스플레이될 수 있다. 또한, 위에서는 하나의 대상 캠페인에 대해 그 설명이 이루어졌으나, 상기 동작들은 복수의 대상 캠페인들에 각각 이루어질 수 있어서, 도 2에 도시된 것처럼 사용자 단말기(100)와 사용자 단말기(200)에 노출되는 대상 캠페인은 서로 다를 수 있다.
예를 들어, 사용자 단말기(100)와 사용자 단말기(200)에는 동일한 2개의 대상 단말기들이 존재하는 상황을 가정한다. 여기서, 노출 제어 서버(300)의 판단 결과, 사용자 단말기(100)에는 제1 대상 캠페인을 노출시키되 제2 대상 캠페인을 노출시키지 않는 것으로 결정하고, 사용자 단말기(200)에는 제1 대상 캠페인을 노출시키지 않되 제2 대상 캠페인을 노출시키는 것으로 결정한 경우, 도 2에 도시된 것처럼 2개의 사용자 단말기들(100, 200)에는 서로 다른 대상 캠페인들이 노출 될 수 있다. 물론, 2개의 사용자 단말기들(100, 200)의 게임 유저들이 비슷한 성향 및 비슷한 수준을 갖는다면, 2개의 사용자 단말기들(100, 200)에 동일한 대상 캠페인들이 노출되는 것도 가능하다. 물론, 상황에 따라서는 사용자 단말기에는 어떠한 대상 캠페인도 노출되지 않는 상황도 존재할 수 있다.
이처럼, 본 발명의 일 실시예에 따른 캠페인 노출 여부 판단 시스템(1000)에 따르면, 각 게임 유저의 관심도(예를 들어, 반응 확률)에 따라 캠페인이 각 게임 유저에게 선택적으로 제공될 수 있다. 이로 인해, 본 발명의 캠페인 노출 여부 판단 시스템(1000)에 따르면 보다 효율적인 정보 제공 또는 상품 제안이 가능해지는 장점이 있다. 뿐만 아니라, 각 게임 유저에 대해 관심이 없는 캠페인들의 양을 획기적으로 줄일 수 있어서, 게임을 이용하는 모든 게임 유저의 요구를 충족시킬 수 있는 장점이 있다.
도 4는 본 발명의 일 실시예에 따른 사용자 단말기(100)에 대한 블록도이다. 위에서 설명한 것처럼, 사용자 단말기(100)는 캠페인의 노출 시점이 도래할 때, 대상 캠페인의 노출 여부를 노출 제어 서버(300)에 질의하여, 질의 결과에 따라 대상 캠페인의 노출하는 것을 특징으로 한다. 이를 위해, 본 발명의 일 실시예에 따른 사용자 단말기(100)는 캠페인 노출 시점 판단부(110), 노출 대상 캠페인 선택부(120), 노출 여부 질의부(130), 단말 통신부(140), 캠페인 노출부(150) 및 단말 저장부(160)를 포함할 수 있다. 여기서, 상술한 구성들은 본 발명의 이해를 돕기 위해 기능별로 서술된 것이고, 상기 구성들 중 단말 통신부(140) 및 단말 저장부(160)를 제외한 나머지 구성들은 CPU 및 MPU와 같은 하나의 처리 장치를 통해 구현되는 것도 가능하다.
캠페인 노출 시점 판단부(110)는 사용자에게 제공될 캠페인의 노출 시점을 판단하는 기능을 한다. 게임에서의 캠페인은 특정 조건에 충족될 때 게임 유저에게 제공될 수 있다. 여기서 조건은 예를 들어, 게임 접속 시, 특정 횟수 이상 콘텐츠를 이용하거나, 특정 횟수 이상 모험을 실패하거나 대전에서 패배할 때 등을 포함할 수 있다. 물론, 상기 조건은 상술한 것들 외에도 다양한 상황이 포함될 수 있다.
노출 대상 캠페인 선택부(120)는 단말 저장부(160)에 저장된 복수의 캠페인들 중 게임 유저에게 제공될 대상 캠페인들을 선택하는 기능을 한다.
한편, 캠페인 노출 시점에 도래하면, 노출 대상 캠페인 선택부(120)를 통해 선택된 대상 캠페인이 즉각적으로 게임 유저에게 노출될 수 있다. 다만, 이 방식은 위에서 설명한 것처럼 캠페인이 너무 자주 노출되거나 또는 특정 캠페인에 관심이 없는 특정 게임 유저들에게, 그 종류에 관계 없이 캠페인을 지속적으로 노출시켜, 대부분의 게임 유저들에게 불편함을 주는 문제점이 있다. 따라서, 본 발명의 일 실시예에 따른 사용자 단말기(100)는 상기 시점에 캠페인을 즉각적으로 노출시키는 것이 아닌, 노출 제어 서버(300)를 통해 각 게임 유저에 따라 노출 여부를 판단하고, 그 판단 결과에 기초하여 생성된 노출 제어 신호를 이용하여 캠페인을 노출시키는 것을 특징으로 한다.
이를 위해, 사용자 단말기(100)는 노출 여부 질의부(130)를 포함하고, 노출 여부 질의부(130)를 통해 노출 여부 질의 신호를 생성하며, 이를 단말 통신부(140)를 통해 노출 제어 서버(300)로 송신할 수 있다. 여기서, 노출 여부 질의 신호는 사용자 단말기(100)의 식별자와, 대상 캠페인의 종류(캠페인 그룹) 또는 식별자에 대한 정보를 포함할 수 있다.
노출 여부 질의 신호의 송신 이후, 노출 제어 서버(300)로부터 대상 캠페인에 대한 노출 제어 정보가 수신되면, 캠페인 노출부(150)는 노출 제어 정보를 기초로 대상 캠페인을 선택적으로 노출시킬 수 있다. 앞서 설명한 것처럼 노출 제어 정보는 게임 유저의 관심도(예를 들어, 반응 확률)가 고려된 것이므로, 본 발명의 일 실시예에 따른 사용자 단말기(100)는 게임 유저에 따라 선택적인 캠페인의 제공이 가능하다.
도 5는 본 발명의 일 실시예에 따른 노출 제어 서버(300)에 대한 블록도이다. 본 발명의 일 실시예에 따른 노출 제어 서버(300)는 게임 유저가 대상 캠페인에 얼마나 관심이 있는지를 판단하는 것을 특징으로 한다. 이를 위해, 노출 제어 서버(300)는 과거 데이터(즉, 과거 캠페인 제공에 따른 복수의 게임 유저들의 과거 시점 게임 로그)들을 이용하여 캠페인 그룹 별 반응 확률 예측 모델을 생성할 수 있다. 그리고, 노출 제어 서버(300)는 사용자 단말기(100)로부터 노출 여부 질의 신호를 수신할 때, 캠페인 그룹 별 반응 확률 예측 모델을 이용하여 사용자 단말기(100)에서의 대상 캠페인의 노출 여부를 결정하고, 이에 따른 노출 제어 정보를 생성하는 것을 특징으로 한다.
이를 위해, 본 발명의 일 실시예에 따른 노출 제어 서버(300)는 게임 로그 수집부(310), 서버 저장부(320), 학습부(330), 모델 생성부(340), 요청 수신부(350), 서버 통신부(360), 반응 확률 산출부(370) 및 노출 여부 결정부(380)를 포함할 수 있다. 여기서, 노출 제어 서버(300)에 포함된 각 구성들은 본 발명의 이해를 돕기 위해 기능별로 각 구성을 구분한 것이고, 서버 저장부(320)와 서버 통신부(360)를 제외한 나머지 구성들은 CPU 및 MPU와 같은 하나의 처리 장치를 통해 구현되는 것도 가능하다. 이제, 노출 제어 서버(300)에 포함된 각 구성에 대한 설명이 이루어진다.
서버 저장부(320)는 복수의 게임 유저들의 게임 진행에 따른 게임 로그들을 저장하는 기능을 한다. 상술한 것처럼, 게임 로그는 게임 유저의 사용자 단말기에 게임 어플리케이션을 설치, 실행, 제거하는 과정 등에서 생성되는 모든 원시 데이터를 의미한다. 또한, 아래에서 설명되는 것처럼 게임 로그는 각 게임 유저에게 제공된 과거 캠페인의 캠페인 노출 시간, 각 게임 유저 별로 설정된 특징들에 따른 특징 값들, 그리고 과거 캠페인의 제공에 따른 게임 유저의 반응 여부 중 적어도 하나에 대한 정보를 포함할 수 있다.
여기서, 게임 로그는 서버 통신부(360)를 통한 사용자 단말기(100)와 통신을 통해 서버 저장부(320)에 저장될 수 있다. 예를 들어, 사용자 단말기(100)는 주기적으로 또는 특정 상황의 발생시마다 발생된 게임 로그를 노출 제어 서버(300)로 송신할 수 있고, 노출 제어 서버(300)는 수신한 게임 로그를 게임 유저 별로 서버 저장부(320)에 저장할 수 있다. 또한, 다른 방식으로서, 게임 서버에서 게임 유저의 게임 로그를 별도로 관리하는 경우, 게임 서버와의 통신을 통해 게임 로그를 수집할 수 있다.
게임 로그 수집부(310)는 서버 저장부(320)에 저장된 게임 로그들을 수집하는 기능을 한다. 구체적으로, 게임 로그 수집부(310)는 캠페인 그룹 별로 구분된 과거 캠페인들의 제공에 따른 복수의 게임 유저들의 과거 시점 게임 로그들을 수집하는 기능을 한다. 여기서, 과거 캠페인은 본 발명의 이해를 돕기 위해 복수의 게임 유저들 중 적어도 한 명에게 한 번이라도 제공된 적이 있는 캠페인으로 정의된다. 또한, 과거 시점 게임 로그들은 상기 과거 캠페인의 제공에 따라 발생된 과거 시점의 게임 로그들로 정의된다.
아래에서 설명되는 바와 같이 본 발명의 일 실시예에 따른 노출 제어 서버(300)는 캠페인 그룹 별로 반응 확률 예측 모델을 생성한다. 여기서, 반응 확률 예측 모델은 크게 3개의 방식 중 하나를 이용해서 생성될 수 있다. 구체적으로, 제1 방식은 캠페인 노출 시간을 이용한 방식이고, 제2 방식은 캠페인의 제안에 따른 게임 유저의 반응 여부를 이용한 방식이며, 제3 방식은 제1 방식 및 제2 방식 모두를 이용한 방식일 수 있다. 상기 방식들을 고려하여 캠페인 그룹 별 반응 확률 예측 모델을 생성하기 위해, 노출 제어 서버(300)는 학습부(330)와 모델 생성부(340)를 포함하여 구성될 수 있다.
학습부(330)는 과거 시점 게임 로그들을 학습하는 기능을 하고, 모델 생성부(340)는 학습 결과를 근거로, 캠페인 그룹 별 반응 확률 예측 모델을 생성하는 기능을 한다.
제1 방식의 경우, 학습부(330)는 과거 시점 게임 로그들을 분석함으로써 캠페인 그룹 별로 과거 캠페인들을 게임 유저에게 제공했을 때 측정된 캠페인 노출 시간들을 추출하고, 이를 학습할 수 있다. 여기서, 캠페인 노출 시간들을 활용하는 이유는 통상적으로 어느 하나의 캠페인이 게임 유저에게 제공될 때 게임 유저가 해당 캠페인에 관심이 많다면 캠페인의 노출 시간이 길지만, 반대로 해당 캠페인에 관심이 없으면 캠페인의 노출 시간이 짧기 때문이다.
예를 들어, 게임 유저에게 정보 전달을 위한 가이드 캠페인을 제공한 상황을 가정한다. 이 경우, 게임 유저에게 캠페인 창을 팝업 한 시각과 캠페인 창을 닫은 시각의 차이를 이용하여 캠페인 노출 시간의 측정이 가능하며, 이러한 측정은 각 게임 유저 별로 이루어질 수 있다. 이렇게 측정된 게임 유저 별 캠페인 노출 시간을 시그모이드 함수(Sigmoid function)에 적용함으로써 캠페인 노출 시간에 따른 관심도(예를 들어, 반응 확률)를 도출할 수 있다.
예를 들어, 게임 유저마다 제안된 캠페인의 노출 시간을 측정하고, 캠페인 노출 시간들을 내림차순으로 정렬하고, 모든 게임 유저들 중 상위 10~20%의 게임 유저에게는 레이블 1을 할당하며, 상위 80~90%의 유저에게는 레이블 0을 할당할 수 있다. 그리고 상위 10% 미만 및 상위 90% 초과에 해당하는 데이터들은 모두 노이즈로 처리할 수 있다. 이렇게 하면 캠페인 노출 시간과 레이블이 정의될 수 있어서 로지스틱 회귀(logistic regression) 문제로 풀 수 있다.
도 6의 그래프는 로지스틱 회귀를 통한 결과의 예시를 보여준다. 도 6의 그래프에서 x축은 캠페인 노출 시간을 나타내고, y축은 반응 확률을 나타낸다. 또한, 도 6의 그래프에서 검은색 점은 전체 게임 유저의 캠페인 노출 시간을 나타내고, 적색 점은 상위 80~90%에 해당하는 유저를 나타내며, 청색 점은 상위 10~20%에 해당하는 유저를 나타낸다. 또한, 도 6의 그래프에서 S형 커브는 적색 점과 청색 점만을 이용하여 로지스틱 회귀를 통해 얻은 결과를 나타낸다.
도 6의 그래프에 따르면, 캠페인 노출 시간이 3초인 게임 유저는 반응 확률이 0.05로 할당되고, 캠페인 노출 시간이 5초인 게임 유저는 반응 확률이 0.98로 할당되며, 캠페인 노출 시간이 4초인 게임 유저는 반응 확률이 0.5로 할당될 수 있다. 따라서, 모델 생성부(340)는 상기 방식을 통해 모든 게임 유저에 대해, 관심도 즉, 반응 확률을 0에서 1 사이의 값으로 표현할 수 있는 반응 확률 예측 모델을 생성할 수 있다. 이러한 생성은 각 캠페인 그룹에 대해 별도로 수행될 수 있어서, 모델 생성부(340)는 캠페인 그룹 별로 반응 확률 예측 모델을 생성할 수 있다.
위의 설명에서는 게임 유저가 제안된 캠페인의 노출 시간에 비례하여 관심도 즉, 반응 확률이 높을 것으로 가정하였다. 하지만, 모바일 게임의 특성 상 이러한 가정이 맞지 않을 수도 있다. 예를 들어, 게임 유저들이 사용자 단말기의 디스플레이부(즉, 화면)를 보지 않은 상태로 게임을 진행하는 상황이 존재할 수 있는데, 이 경우 상대적으로 게임 유저들의 팝업을 닫는 시간이 길어질 수 있다. 반대로 캠페인의 팝업을 빨리 닫는 것은 관심도가 적은 것을 의미할 수 있다. 따라서 캠페인을 너무 빨리 닫거나, 너무 늦게 닫는 유저의 경우 관심도가 낮다고 생각할 수 있다.
본 발명의 일 실시예에 따른 노출 제어 서버(300)는 상술한 문제점을 해결하기 위해, 도 7에 도시된 것처럼 캠페인 노출 시간에 대해 분석적 방법 또는 휴리스틱(heuristics)한 방법으로 제1 시간(t1) 및 제2 시간(t2)을 더 결정할 수 있다. 즉, 학습부(330)는 과거 캠페인의 캠페인 노출 시간들을 시간의 크기에 따라 정렬하고, 정렬 결과를 분석함으로써 제1 시간(t1) 및 제2 시간(t2)을 결정할 수 있다. 여기서, 제2 시간은 제1 시간보다 크다.
그 후, 학습부(330)는 제1 시간(t1) 미만이거나 제2 시간(t2)을 초과하는 캠페인 노출 시간들을 필터링함으로써, 신뢰도가 떨어지는 영역을 제거할 수 있다. 또한, 학습부(330)는 제1 시간(t1)과 제2 시간(t2) 사이의 캠페인 노출 시간들에 대해서만 학습을 진행할 수 있어서 학습에 이용되는 처리량을 감소시킬 수 있다.
모델 생성부(340)는 상기 특성을 고려하여 캠페인 그룹 별 반응 확률 예측 모델을 생성할 수 있다. 즉, 모델 생성부(340)는 제1 시간 미만이거나 제2 시간을 초과하는 캠페인 노출 시간이 입력되면 반응 확률이 0 또는 0에 근접하도록 반응 확률 예측 모델을 생성할 수 있다. 또한, 모델 생성부(340)는 캠페인 노출 시간이 제1 시간에 근접할수록 반응 확률이 0에 가까워지고, 캠페인 노출 시간이 제2 시간에 근접할수록 반응 확률이 1에 가까워지도록 반응 확률 예측 모델을 생성할 수 있다.
또한, 학습부(330)는 상술한 캠페인 노출 시간 대신, 제2 방식으로 언급된 것처럼 과거 캠페인의 제공에 따른 게임 유저들의 제안 수락 여부에 대한 정보를 이용하여 학습을 수행하는 것도 가능하다. 여기서, 제안 수락 여부에 대한 정보는 0과 1로 표현될 수 있다. 예를 들어, 게임에서 게임 유저에게 어떤 행위 또는 구매를 제안했을 때, 해당 게임 유저가 행위 또는 구매를 하면, 제안을 수락한 것으로 판단할 수 있다.
상기 개념을 복수의 게임 유저들로 확장하고, 각 게임 유저의 유저 상태를 특징 벡터로 하여 기계 학습을 수행하면 위에서 설명된 캠페인 그룹 별 반응 확률 예측 모델 생성이 가능하다. 여기서, 기계 학습은 예를 들어, SVM(Support Vector Machine), 부스팅(boosting) 및 랜덤 포레스트(random forest) 등을 통해 이루어질 수 있다.
구체적으로, 학습부(330)는 적어도 하나의 특징들을 정의하고, 서버 저장부(320)에서 복수의 게임 유저들에 대해, 정의한 특징들에 따른 특징 값들과, 과거 캠페인의 제공에 따른 제안 수락 여부 정보를 추출하여 생성된 레이블로 테이블을 구성할 수 있다. 예를 들어, 학습부(330)를 통해 정의된 특징은 게임 유저 레벨, 게임 내 재화량, 게임 내 재화 사용량, 구매 확률, 유저의 상태 정보, 캠페인 노출 시간, 게임 플레이 패턴 등이 될 수 있으나, 학습부(330)를 통해 정의되는 특징은 이에 제한되지 않는다.
그 후, 학습부(330)는 SVM, 부스팅 또는 랜덤 포레스트 기계 학습법을 이용하여 학습을 수행하고, 모델 생성부(340)는 학습 결과를 이용하여 반응 확률 예측 모델을 생성할 수 있다.
예를 들어, 학습부(330)를 통해 도 8a에 도시된 것처럼 동일한 캠페인 그룹에 속한 캠페인들 중 적어도 하나가 5명의 게임 유저(A1, B2, C1, A2, D2)들에게 제공된 상황을 가정한다. 이때, 학습부(330)는 각 게임 유저(A1, B2, C1, A2, D2)의 게임 로그에서 설정된 특징들에 대한 특징 값들을 추출한다. 물론, 도 8a에 도시된 게임 유저의 수는 설명을 위해 5명만이 개시된 것이고 실제로는 더 많은 수의 게임 유저들에 대해 동일한 과정이 수행될 수 있다.
학습부(330)를 통해 이루어지는 학습은 과거 시점의 게임 로그를 이용한 것을 특징으로 한다. 그 중에서 게임 유저의 상태 정보를 나타내는 특징들은 t-2 시점의 게임 로그이거나 또는 t-n 시점에서 t-2 시점까지의 특정 기간에 대한 게임 로그로부터 획득될 수 있다. 그리고, 제안 수락 여부 정보는 t-2 시점 보다 이후인 t-1 시점이거나 또는 t-n+1 시점에서 t-1 시점까지의 기간에 대한 게임 로그로부터 획득될 수 있다.
학습부(330)에서 이용되는 과거 시점의 게임 로그들 중 너무 오래된 게임 로그들은 사용되지 않는 것이 바람직한데, 이는 모바일 게임 특성상 게임 유저들의 선호도가 급격히 변할 수 있기 때문이다. 따라서, 학습부(330)에서 이용되는 과거 시점의 게임 로그는 현재 시점을 기준으로 미리 설정된 기간 내의 게임 로그인 것이 바람직하다.
본 예시에서 특징들의 개수는 설명을 위해 3개인 것으로 가정되나 이의 개수는 3개 외에 다양한 개수로 적용될 수 있다. 이어서 학습부(330)는 해당 게임 유저(A1, B2, C1, A2, D2)에게 상기 캠페인을 제공했을 때 게임 유저의 제안 수락 여부 정보를 추출할 수 있다. 본 예시에서, 게임 유저(A1, B2, D2)는 제안을 수락한 반면, 게임 유저(C1, A2)는 제안을 수락하지 않은 것으로 가정한다.
그 후, 학습부(330)는 위에서 설명한 기계 학습(ml)을 이용한 감독 학습(Supervised learning)을 수행할 수 있다. 그 후, 모델 생성부(340)는 학습 결과를 이용하여 해당 캠페인 그룹의 반응 확률 예측 모델을 생성할 수 있다.
위의 설명에서 학습부(330)와 모델 생성부(340)는 캠페인 노출 시간을 이용하거나 또는 제안 수락 여부를 이용하여 캠페인 그룹의 반응 확률 예측 모델을 생성하는 것으로 설명하였다. 다만 이는 예시일 뿐이고, 위에서 제3 방식으로 언급된 것처럼 2개의 매개 변수 모두를 활용하여 반응 확률 예측 모델을 생성할 수도 있다.
이처럼 학습부(330)와 모델 생성부(340)는 하나의 캠페인 그룹에 대한 반응 확률 예측 모델을 생성할 수 있고, 상기 방법을 다른 캠페인 그룹에도 적용함으로써 전체 캠페인 그룹에 대한 반응 확률 예측 모델을 생성할 수 있다.
다시, 도 5를 참조하면, 요청 수신부(350)는 사용자 단말기(100)와의 통신을 통해 사용자 단말기(100)로부터 노출 여부 질의 신호를 수신한다. 도 4를 참조로 설명한 것처럼, 노출 여부 질의 신호에는 사용자 단말기(100)의 식별자와 대상 캠페인의 식별자가 포함될 수 있다. 이때, 게임 로그 수집부(310)는 아래에서 설명되는 제어 과정의 수행을 위해 서버 저장부(320)에서 해당 게임 유저의 과거 시점 로그 정보를 수집하고, 수집된 과거 시점 로그 정보를 반응 확률 산출부(370)에 전달할 수 있다. 여기서, 게임 유저의 과거 시점 로그 정보는 현재 시점을 기준으로 미리 설정된 기간 내의 로그 정보일 수 있다.
게임 유저의 과거 시점 로그 정보는 아래에서 설명되는 것처럼 캠페인 노출 시간을 포함할 수 있다. 게임 유저의 과거 시점 로그 정보는 미리 설정된 특징들에 따라 도출된 특징 값들과, 캠페인의 제안에 따른 제안 수락 여부 정보를 포함할 수 있다. 그리고, 게임 유저의 과거 시점 로그 정보는 해당 게임 유저에게 노출된 캠페인 그룹 별 최근 노출 시각 정보를 더 포함할 수 있다.
반응 확률 산출부(370)는 노출 여부 질의 신호를 송신한 사용자 단말기(100)의 게임 유저의 반응 확률을 산출하는 기능을 한다. 이를 위해, 반응 확률 산출부(370)는 사용자 단말기(100)의 게임 유저에 대한 과거 시점 게임 로그에서 대상 캠페인에 대한 반응 확률 판단 인자를 추출하는 과정을 수행한다. 이어서, 반응 확률 산출부(370)는 대상 캠페인이 속한 캠페인 그룹의 반응 확률 예측 모델을 호출한다. 여기서, 대상 캠페인이 속한 캠페인 그룹은 대상 캠페인의 식별자를 이용하여 탐색할 수 있다.
그 후, 반응 확률 산출부(370)는 대상 캠페인이 속한 대상 캠페인 그룹의 반응 확률 예측 모델에 게임 유저의 반응 확률 판단 인자를 적용함으로써 대상 캠페인에 대한 상기 게임 유저의 반응 확률을 산출할 수 있다(도 8b 참조). 예를 들어, 반응 확률 예측 모델이 캠페인 노출 시간에 기초하여 생성된 경우, 반응 확률 산출부(370)는 게임 유저의 과거 시점 게임 로그에서 과거 캠페인들의 캠페인 노출 시간들을 호출하고, 이를 반응 확률 예측 모델의 입력으로 하여 대상 캠페인에 대한 반응 확률을 산출할 수 있다. 예를 들어, 반응 확률 예측 모델이 캠페인 노출 시간을 이용하여 생성된 경우, 반응 확률 예측 모델에 입력되는 입력 값은 해당 게임 유저의 과거 캠페인들에 따른 캠페인 노출 시간들의 평균 시간일 수 있다. 물론 이러한 입력 값은 다양하게 변경되어 적용되는 것도 가능하다.
노출 여부 결정부(380)는 반응 확률 산출부(370)를 통해 산출한 반응 확률을 이용하여 대상 캠페인의 노출 여부를 결정하는 기능을 한다.
예를 들어, 노출 여부 결정부(380)는 랜덤 함수를 통해 0에서 1 사이의 랜덤 값을 도출하고, 게임 유저의 반응 확률이 랜덤 값을 초과할 경우 대상 캠페인을 노출할 것으로 결정할 수 있다. 여기서 랜덤 함수는 프로그래밍 언어(예를 들어, c 언어, Java)에서 제공되는 함수일 수 있고, c 언어의 경우 rand(), srand() 등이 이용될 수 있으며, Java의 경우 Random 클래스, Math.random() 등이 이용될 수 있다.
예를 들어, 게임 유저의 대상 캠페인에 대한 반응 확률이 0.7이라고 가정하고, 노출 여부 결정부(380)를 통해 도출된 랜덤 값이 0.5라면 대상 캠페인을 노출할 것으로 결정할 수 있다. 반대로, 노출 여부 결정부(380)를 통해 도출된 랜덤 값이 0.8이라면 이를 노출하지 않을 것으로 결정할 수 있다.
하지만, 이 방식은 관심도(예를 들어, 반응 확률)가 낮은 캠페인의 노출 빈도수를 감소시키는 점에서 본 발명의 목적을 달성할 수 있지만, 특정 캠페인 그룹에 대한 반응 확률이 너무 낮은 경우(예를 들어, 반응 확률이 0.1 이하인 경우), 거의 대부분의 게임 유저들에게 해당 캠페인이 아예 노출되지 않는 문제점이 발생할 수 있다.
따라서, 본 예시에 따른 일 실시예에서는, 노출 여부 결정부(380)는 랜덤 값을 활용하는 방식 보다는 노출 여부 판단 값을 결정하고 반응 확률과 노출 여부 판단 값을 비교함으로써 노출 여부를 결정할 수 있다. 다시 말해서, 노출 여부 결정부(380)는 반응 확률이 일정 크기 이상일 때에는 무관하나, 반응 확률이 일정 크기 미만일 때에는 노출 여부 판단 값을 결정하고 이를 이용하여 노출 여부를 결정할 수 있다. 예를 들어, 노출 여부 결정부(380)는 게임 유저의 반응 확률이 노출 여부 판단 값을 초과할 때 상기 대상 캠페인을 노출할 것으로 결정할 수 있다.
여기서, 노출 여부 판단 값은 다양한 방식으로 결정될 수 있다. 예를 들어, 노출 여부 판단 값의 결정은 전체 게임 유저들 중 미리 설정된 상위 퍼센트에 해당하는 게임 유저의 반응 확률을 노출 여부 판단 값으로 결정함으로써 이루어질 수 있다.
Figure 112018065828282-pat00001
예를 들어, 표 1과 같이 노출 제어 서버(300)에 3개의 사용자 단말기들에서 각각 2개의 대상 캠페인들에 대한 노출 여부 질의 신호를 송신한 상황을 가정한다. 표 1에서, User Key는 사용자 단말기에 대한 각 게임 유저의 식별자를 나타내고, 반응확률A는 제1 대상 캠페인에 대한 반응확률을 나타내고, 반응확률B는 제2 대상 캠페인에 대한 반응확률을 나타내고, 노출여부A는 제1 대상 캠페인에 대한 노출 여부를 나타내며, 노출여부B는 제2 대상 캠페인에 대한 노출 여부를 나타낸다. 또한, 노출 여부의 열에서 1은 대상 캠페인을 노출할 것으로 결정된 상황을 나타내고, 0은 대상 캠페인을 노출하지 않을 것으로 결정된 상황을 나타낸다.
위에서 설명한 것처럼 반응 확률 산출부(370)를 통해 3명의 게임 유저에 대해 제1 대상 캠페인과 제2 대상 캠페인에 대한 반응 확률이 계산될 수 있다. 이렇게 반응 확률의 계산이 완료되면, 노출 여부 결정부(380)를 통한 판단(예를 들어, 랜덤 값 또는 노출 여부 판단 값)을 통해 3명의 게임 유저들에 대해 제1 대상 캠페인과 제2 대상 캠페인에 대한 노출 여부가 결정되어 그 결과가 기록될 수 있다.
또한, 본 발명의 다른 실시예에서 노출 여부 결정부(380)는 상술한 판단을 통한 노출 여부 결정 방식 외에, 추가적인 판단 과정을 더 수행함으로써 노출 여부 결정을 수행할 수 있다. 이는 게임 유저에 보다 맞춤화하여 대상 캠페인의 노출 여부를 결정하기 위함이다. 즉, 본 발명의 다른 실시예에 따른 노출 여부 결정부(380)는 상술한 판단 방식에 더하여, 대상 캠페인과 동일한 캠페인 그룹 중 해당 게임 유저에게 마지막으로 노출된 캠페인의 최근 노출 시각을 고려하는 것을 특징으로 한다.
구체적으로 노출 여부 결정부(380)는 해당 게임 유저의 과거 시점 게임 로그에서 마지막으로 노출된 캠페인의 최근 노출 시각을 추출한다. 그 후, 노출 여부 결정부(380)는 앞선 판단에서 대상 캠페인을 노출할 것으로 결정한 경우, 현재 시각과 최근 노출 시각 간의 차가 최소 노출 빈도 시간을 초과하는지의 판단을 더 수행할 수 있다. 예를 들어, 반응 확률이 랜덤 값을 초과할 때, 또는 반응 확률이 노출 여부 판단 값을 초과할 때, 현재 시각과 최근 노출 시각 간의 차와 최소 노출 빈도 시간 간의 비교를 수행하고, 비교 결과 상기 차가 최소 노출 빈도 시간을 초과하면 대상 캠페인을 노출할 것으로 확정할 수 있다.
또한, 위의 판단에서는 대상 캠페인을 노출하지 않을 것으로 결정하였으나(즉, 반응 확률이 랜덤 값 이하이거나 또는 반응 확률이 노출 여부 판단 값 이하일 때), 너무 오랜 시간 동안 해당 게임 유저에게 캠페인을 제공하지 않는 것은 바람직하지 않다. 이에 따라, 노출 여부 결정부(380)는 반응 확률이 랜덤 값 이하이거나 반응 확률이 노출 여부 판단 값 이하이더라도, 현재 시각과 최근 노출 시각 간의 차가 최대 노출 시간을 초과하면, 해당 대상 캠페인을 노출할 것으로 확정할 수 있다.
노출 여부 결정부(380)를 통해 이루어지는 노출 여부 결정 과정은 아래의 표 2를 참조로 더 설명된다.
Figure 112018065828282-pat00002
표 1을 참조로 설명한 것처럼, 표 2는 3명의 게임 유저가 존재하고, 서로 다른 캠페인 그룹을 나타내는 반응확률A와 반응확률B를 이용하여 각 대상 캠페인에 대한 노출 여부가 결정된 상황을 가정한다. 즉, 반응 확률A 및 반응 확률B를 이용한 판단 결과, 제1 게임 유저에게는 제1 대상 캠페인을 노출하되 제2 대상 캠페인을 노출하지 않는 것으로 결정된 상황을 가정한다. 제2 게임 유저에게는 제1 대상 캠페인을 노출하되 제2 캠페인을 노출하지 않는 것으로 결정된 상황을 가정한다. 그리고 제3 게임 유저에게는 제1 및 제2 대상 캠페인을 노출할 것으로 결정된 상황을 가정한다.
표 2를 참조하면, 식별자가 a9d98afb2인 제1 게임 유저의 제1 캠페인 그룹에 대한 최근 노출 시각은 2017년 2월 7일 12시 29분 51초이고, 제2 캠페인 그룹에 대한 최근 노출 시각은 2017년 2월 1일 14시 52분 1초인 것으로 가정한다. 식별자가 bc98dnd18인 제2 게임 유저의 제1 캠페인 그룹에 대한 최근 노출 시각은 2017년 2월 6일 18시 52분 35초이고, 제2 캠페인 그룹에 대한 최근 노출 시각은 2017년 2월 5일 15시 35분 23초인 것으로 가정한다. 식별자가 c972gfk2a인 제3 게임 유저의 제1 캠페인 그룹에 대한 최근 노출 시각은 2017년 2월 7일 9시 23분 24초이고, 제2 캠페인 그룹에 대한 최근 노출 시각은 2017년 2월 7일 11시 18분 33초인 것으로 가정한다.
또한, 본 예시에서 현재 시각은 2017년 2월 8일 0시 0분 0초이고, 최소 노출 빈도 시간은 1일, 최대 노출 빈도 시간은 3일 인 것으로 가정한다.
이 경우, 원래의 판단에서 제1 게임 유저에 대해서는 제1 대상 캠페인은 노출하되 제2 대상 캠페인은 노출하지 않는 것으로 결정할 수 있다. 최소 노출 빈도 시간과 최대 노출 빈도 시간을 고려하지 않고 상기 판단 결과에 따라 그대로 캠페인을 제공하게 되면, 제1 게임 유저는 이미 어제도 받았던 캠페인 또는 이와 유사한 캠페인을 또 받게 되어, 해당 게임 유저에게 좋지 않은 경험을 남길 수 있다. 뿐만 아니라, 제1 게임 유저는 제2 캠페인 그룹에 속한 캠페인들을 오랜 시간 동안 받지 못하였었으나, 제2 대상 캠페인도 받지 못하게 되므로, 이는 바람직하지 않은 상황일 수 있다. 이에 따라, 해당 게임 유저에게는 비교적 오랜 기간 동안 제공되지 않은 제2 캠페인 그룹에 속한 캠페인을 제공하는 것이 오히려 바람직할 수 있다.
반면, 위에서 설명한 최소 노출 빈도 시간과 최대 노출 빈도 시간을 이용한 추가적인 판단을 적용하게 되면 제1 게임 유저는 비교적 짧은 기간 전에 제공된 제1 대상 캠페인 대신, 비교적 오랜 기간 동안 받지 못한 제2 대상 캠페인을 받을 수 있게 된다. 만약 본 예시에서 현재 시각이 2017년 2월 9일 0시 0분 0초라면, 제1 게임 유저는 2개의 대상 캠페인들 모두를 제공받는 것으로 변경될 수 있다.
또한, 현재 시각이 2017년 2월 8일 0시 0분 0초인 경우, 제2 게임 유저는 현재 시각과 제1 캠페인 그룹의 최근 노출 시각간의 차가 최소 노출 빈도 시간을 초과하므로, 제1 대상 캠페인의 노출이 확정될 수 있다. 또한, 제2 게임 유저는 현재 시각과 제2 캠페인 그룹의 최근 노출 시각 간의 차가 최대 노출 빈도 시간 이하이므로, 제2 대상 캠페인이 노출되지 않는 것으로 결정될 수 있다.
그리고, 제3 게임 유저는 현재 시각과 제1 캠페인 그룹 및 제2 캠페인 그룹의 최근 노출 시각간의 차가 최소 노출 빈도 시간 이하이므로, 제1 및 제2 대상 캠페인은 노출되지 않는 것으로 변경될 수 있다.
이처럼, 노출 여부 결정부(380)는 단순히 반응 확률만을 고려하는 것이 아닌, 각 게임 유저에게 제공된 캠페인 그룹의 최근 노출 시각을 더 고려함으로써 게임 유저에 보다 맞춤화된 캠페인의 빈도 조절이 가능한 장점이 있다.
위의 설명에서 대상 캠페인에 대한 노출 여부 판단은 노출 제어 서버(300)에서 이루어지는 것으로 설명되었다. 다만, 이는 예시일 뿐이고 노출 제어 서버(300)를 통해 이루어지는 노출 여부 판단 과정이 사용자 단말기(100)에서 이루어지는 것도 생각해볼 수 있다. 하지만, 게임 어플리케이션은 그래픽이나 코딩의 복잡도가 높은 모바일 게임의 특성에 기인하여, 사용자 단말기의 부하가 높다. 여기서, 캠페인의 노출 제어 여부 판단을 위해 사용자 단말기에서 추가적인 과정을 수행할 경우, 사용자 단말기의 과부하를 초래할 우려가 있으므로, 상술한 판단 과정은 노출 제어 서버(300)에서 이루어질 수 있다.
도 9는 본 발명의 일 실시예에 따른 노출 제어 서버를 통해 이루어지는 캠페인 노출 여부 판단 방법에 대한 흐름도이다. 도 10 및 도 11은 본 발명의 학습 단계에 대한 흐름도이다. 도 12 및 도 13은 본 발명의 대상 캠페인의 노출 여부를 결정하는 단계에 대한 흐름도이다.
상술한 것처럼, 본 발명의 일 실시예에 따른 캠페인 노출 여부 판단 방법은 캠페인 그룹 별로 반응 확률 예측 모델을 생성하고, 사용자 단말기로부터 노출 여부 질의 신호를 수신할 때, 반응 확률 예측 모델을 이용하여 대상 캠페인의 제공에 따른 해당 게임 유저의 관심도(예를 들어, 반응 확률)를 산출할 수 있다. 또한, 본 발명의 일 실시예에 따른 노출 여부 판단 방법은 산출한 반응 확률과 해당 게임 유저의 게임 로그에 포함된 다양한 정보들을 고려하여 해당 게임 유저에 더 맞춤화된 캠페인의 빈도 조절을 제공하는 것을 특징으로 한다. 이제, 도 9를 참조로 본 발명의 일 실시예에 따른 노출 여부 판단 방법에 대한 설명이 이루어진다. 아래에서는 위에서 언급된 부분과 중복되는 사항은 생략하여 그 설명이 이루어진다.
S110 단계는 게임 로그 수집부에 의해 수행되는 단계로서, 서버 저장부에 저장된 게임 로그들을 수집하는 단계이다. 구체적으로, S110 단계는 캠페인 그룹 별로 과거 캠페인들의 제공에 따른 복수의 게임 유저들의 과거 시점 게임 로그들을 수집하는 단계이다. 위에서 설명한 것처럼 본 발명의 일 실시예에 따른 캠페인 노출 여부 판단 방법에서 반응 확률 예측 모델은 캠페인의 노출 시간과 과거 캠페인의 제공에 따른 제안 수락 여부 정보 중 적어도 하나를 이용하여 생성된다. 이에 따라, 과거 시점 게임 로그는 각 게임 유저에게 제공된 과거 캠페인의 캠페인 노출 시간과, 각 게임 유저에게 제공된 과거 캠페인에 따른 제안 수락 여부 정보 중 적어도 하나를 포함할 수 있다.
또한, 위에서 설명한 것처럼 S110 단계를 통해 수집되는 과거 시점 게임 로그는 현재 시점을 기준으로 기설정된 기간 내의 과거 시점 게임 로그이다. 왜냐하면, 너무 오래된 게임 로그는 신뢰도가 떨어지기 때문에, 기설정된 기간을 벗어나는 게임 로그는 수집되지 않는 것이 바람직하다. 따라서, S110 단계를 통해 수집되는 과거 시점 게임 로그는 예를 들어, t-2 시점 또는 t-n 시점에서 t-2 시점 사이의 기간들의 게임 로그일 수 있다.
S120 단계는 학습부에 의해 수행되는 단계로서, 과거 시점 게임 로그들을 학습하는 단계이다. 위에서 설명한 것처럼, S120 단계를 통해 이루어지는 학습은 캠페인 노출 시간과 과거 캠페인에 따른 각 게임 유저의 제안 수락 여부 정보 중 적어도 하나를 이용하여 이루어질 수 있다. 여기서, S120 단계는 캠페인 노출 시간을 이용하여 수행될 경우, 도 10에 도시된 흐름에 따라 진행될 수 있다.
도 10에서, S121 단계는 과거 캠페인의 캠페인 노출 시간들을 시간의 크기에 따라 정렬하는 단계이고, S122 단계는 정렬 결과를 분석함으로써 제1 시간 및 제2 시간을 결정하는 단계이다.
상술한 것처럼, 통상적으로 캠페인 노출 시간이 짧을수록 해당 캠페인에 대한 관심도가 낮고, 캠페인 노출 시간이 길수록 해당 캠페인에 대한 관심이 높다. 하지만, 모바일 게임의 관점에서 볼 때, 게임 유저는 게임 어플리케이션을 동작시킨 후, 사용자 단말기를 조작하는 것이 아닌 다른 행동을 할 수 있다. 이에 따라, 캠페인 노출 시간은 점차 증가하지만, 게임 유저는 캠페인을 보는 것이 아닌 다른 행위를 하는 것이므로 이러한 데이터가 적용되면 아래에서 설명되는 캠페인의 노출 여부 판단의 신뢰도에 악영향을 미칠 수 있다.
이에 따라, 본 발명의 일 실시예에 따른 캠페인 노출 여부 판단 방법은 S121 단계를 통해 캠페인 노출 시간들을 분석하고, 분석 결과를 기반으로 S122 단계를 통해 제1 시간과 제2 시간을 결정한다. 여기서, 제2 시간은 제1 시간보다 크다.
S123 단계는 제1 시간 미만이거나 상기 제2 시간을 초과하는 과거 캠페인의 캠페인 노출 시간들을 필터링하는 단계이다. 즉, S123 단계는 S122 단계를 통해 제1 시간과 제2 시간을 설정하고, 제1 시간과 제2 시간 사이의 범위를 벗어나는 캠페인 노출 시간들을 필터링하는 단계이다.
S124 단계는 제1 시간과 제2 시간 사이의 과거 캠페인의 제공에 따른 캠페인 노출 시간들을 학습하는 단계이다.
위에서 설명한 것처럼, S120 단계는 캠페인 노출 시간을 이용한 방식 외에, 과거 캠페인의 제공에 따른 게임 유저의 제안 수락 여부를 이용하여 이루어지는 것도 가능하다. 이렇게 S120 단계가 게임 유저의 제안 수락 여부 정보들을 이용하여 이루어질 때의 동작은 도 11에 도시된다.
S221 단계는 게임 유저 별로 특징들을 정의하는 단계이다. 여기서, 유저 별특징은 게임 유저 레벨, 게임 내 재화량, 게임 내 재화 사용량, 구매 확률, 유저의 상태 정보, 캠페인 노출 시간, 게임 플레이 패턴 중 적어도 하나를 포함할 수 있다.
S222 단계는 과거 시점 게임 로그들에서 각 게임 유저의 특징 값들 및 제안 수락 여부 정보를 추출하는 단계이고, S223 단계는 각 게임 유저의 특징 값들 및 제안 수락 여부 정보를 학습하는 단계이다. 여기서, S222 단계 및 S223 단계에 대한 설명은 도 8a를 참조로 상세히 언급하였으므로 중복되는 설명은 생략한다.
S130 단계는 학습 결과를 근거로, 캠페인 그룹 별로 반응 확률 예측 모델을 생성하는 단계이다. 위에서 설명한 것처럼, 반응 확률 예측 모델은 S120 단계를 통한 학습 방식에 따라 캠페인 노출 시간과 제안 수락 여부 정보 중 적어도 하나를 통해 생성될 수 있고, 입력 값에 따라 상이한 반응 확률을 출력하는 모델이다.
또한, 위에서 설명한 것처럼 반응 확률 예측 모델이 캠페인 노출 시간을 이용하여 생성될 경우, 반응 확률 예측 모델에서 반응 확률은 캠페인의 노출 시간이 제1 시간에 가까워질수록 작아지고, 캠페인 노출 시간이 제2 시간에 가까워질수록 커지도록 모델링될 수 있다. 또한, 반응 확률 예측 모델이 캠페인 노출 시간을 이용하여 생성될 경우, 반응 확률 예측 모델에서 제1 시간 미만이거나 제2 시간을 초과하는 캠페인 노출 시간에 대한 반응 확률은 0이거나 0에 근접한 값으로 모델링될 수 있다.
S140 단계는 요청 수신부에 의해 수행되는 단계로서, 사용자 단말기로부터 노출 여부 질의 신호를 수신하는 단계이다.
S150 단계는 게임 로그 수집부 또는 반응 확률 산출부에 의해 수행되는 단계로서, 사용자 단말기의 게임 유저에 대한 과거 시점 게임 로그를 수집하고, 수집한 과거 시점 게임 로그에서 대상 캠페인에 대한 반응 확률 판단 인자를 추출하는 단계이다. 위에서 설명한 것처럼 사용자 단말기의 게임 유저에 대한 게임 로그는 서버 저장부에 존재하고, S140 단계를 통해 노출 여부 질의 신호를 수신할 때, 노출 여부 질의 신호에 포함된 게임 유저의 식별자를 근거로 서버 저장부에서 호출될 수 있다.
또한, S150 단계를 통해 이루어지는 반응 확률 판단 인자의 추출은 반응 확률 예측 모델이 어떠한 정보를 이용하여 생성되었는지에 따라 캠페인 노출 시간과 제안 수락 여부 정보 중 적어도 하나에 대해 이루어질 수 있다.
S160 단계는 반응 확률 산출부에 의해 수행되는 단계로서, 대상 캠페인에 대한 게임 유저의 반응 확률을 산출하는 단계이다. 구체적으로, S160 단계는 대상 캠페인이 속한 캠페인 그룹의 반응 확률 예측 모델에 게임 유저의 반응 확률 판단 인자를 적용함으로써 대상 캠페인에 대한 상기 게임 유저의 반응 확률을 산출하는 단계이다.
반응 확률 예측 모델이 캠페인 노출 시간들을 근거로 생성된 경우, S160 단계에서, 반응 확률 예측 모델로의 입력 값인 반응 확률 판단 인자는 사용자 단말기의 게임 유저에게 제공된 과거 캠페인들의 캠페인 노출 시간들을 근거로 도출될 수 있다. 예를 들어, 반응 확률 예측 모델로 입력되는 반응 확률 판단 인자는 해당 게임 유저의 캠페인 노출 시간들의 평균값이나, 별도의 다른 방식을 통해 연산된 값일 수 있다.
S170 단계는 노출 여부 결정부에 의해 수행되는 단계로서, 반응 확률을 이용하여 대상 캠페인의 노출 여부를 결정하는 단계이다. 상술한 것처럼, S170 단계는 크게 2개의 방식으로 이루어질 수 있다. 이들 방식 중 제1 방식은 랜덤 값을 이용한 방식이고, 제2 방식은 노출 여부 판단 값을 이용한 방식이다. 먼저, 도 12를 참조로 제1 방식에 따른 대상 캠페인의 노출 여부의 결정 단계에 대한 설명이 이루어진다.
S171 단계는 랜덤 값을 도출하는 단계이다. 구체적으로, S171 단계는 랜덤 함수를 통해 0에서 1 사이의 랜덤 값을 도출하는 단계이다. 여기서, 랜덤 값은 0.xxx와 같이 소수의 값으로 도출될 수 있고, 소수의 자릿수는 특정 개수로 제한되지 않는다.
S172 단계는 S160 단계를 통해 산출된 대상 캠페인에 대한 게임 유저의 반응 확률과 S171 단계를 통해 산출한 랜덤 값을 비교하는 단계이다. 구체적으로, S172 단계는 반응 확률이 랜덤 값을 초과하는지 판단하는 단계이다. 즉, S172 단계는 S160 단계를 통해 도출된 반응 확률을 기준 크기로 두고, 랜덤 값이 이 기준 크기 내에 들어오면 대상 캠페인을 노출할 것으로 결정하는 것이고(S173 단계), 반대로 랜덤 값이 이 기준 크기를 벗어나는 경우 대상 캠페인을 노출하지 않을 것으로 결정하는 것이다(S176 단계).
다만 S172 단계를 통한 판단만으로 대상 캠페인의 노출 여부를 결정할 경우 해당 게임 유저와, 이 게임 유저에 유사한 성향을 가진 다른 게임 유저들의 특성만이 반영된 것이므로, 해당 게임 유저만을 생각해보면 그 맞춤화가 덜 된 것으로 볼 수 있다. 또한, 위에서 설명한 것처럼 각 게임 유저는 특정 캠페인 그룹에만 반응 확률(예를 들어, 관심도)이 높은 것으로 판단되어, 해당 캠페인 그룹들에 포함된 캠페인들만 너무 잦은 빈도로 게임 유저에 노출되는 상황이 존재할 수 있고, 또한 다른 캠페인 그룹의 반응 확률이 너무 낮을 때에는, 해당 캠페인 그룹에 포함된 캠페인들은 해당 게임 유저에 너무 노출되지 않는 상황이 발생할 수 있다.
이에 따라, 본 발명의 일 실시예에 따른 캠페인 노출 여부 판단 방법은 대상 캠페인의 노출 여부를 결정할 때, 반응 확률뿐만 아니라, 대상 캠페인이 속한 캠페인 그룹 중 해당 게임 유저에게 마지막으로 노출된 캠페인의 최근 노출 시각을 더 고려하는 것을 특징으로 한다.
이에 따라, S173 단계를 통해 대상 캠페인을 노출할 것으로 결정하였더라도, S174 단계를 통해 현재 시각과 최근 노출 시각 간의 차가 최소 노출 빈도 시간을 초과하는지 판단하는 과정을 더 수행할 수 있다. 마찬가지로, S176 단계를 통해 대상 캠페인을 노출하지 않을 것으로 결정하였더라도, S177 단계를 통해 현재 시각과 최근 노출 시각 간의 차가 최대 노출 빈도 시간을 초과하는지 판단하는 과정을 더 수행할 수 있다.
S174 단계와 S177 단계를 통한 판단 과정을 더 수행함으로써, 대상 캠페인의 노출은 해당 게임 유저의 성향과, 해당 게임 유저에게 제공된 캠페인의 최근 노출 시점을 고려함으로써 보다 맞춤화되어 이루어질 수 있다.
즉, S173 단계를 통해 대상 캠페인을 노출할 것으로 결정하였더라도, S174 단계를 통한 판단 결과 현재 시각과 최근 노출 시각 사이의 차가 최소 노출 빈도 시간 이하라면(즉, 대상 캠페인 또는 이의 캠페인 그룹에 포함된 캠페인이 특정 기간 이내에 제공되었다면), S175b 단계가 수행되어 해당 대상 캠페인을 노출하지 않을 것으로 변경할 수 있다. 물론, S173 단계에서 대상 캠페인을 노출할 것으로 결정하였고, S174 단계에서도 현재 시각과 최근 노출 시각 사이의 차가 최소 노출 빈도 시간을 초과하면 S175a 단계가 수행되어, 대상 캠페인을 노출할 것으로 확정할 수 있다.
마찬가지로, S176 단계를 통해 대상 캠페인을 노출하지 않을 것으로 결정하였더라도, S177 단계를 통한 판단 결과 현재 시각과 최근 노출 시각 사이의 차가 최대 노출 빈도 시간을 초과하면(즉, 대상 캠페인 또는 이의 캠페인 그룹에 포함된 캠페인이 특정 기간을 초과하여 제공되지 않았다면), S178a 단계가 수행되어 대상 캠페인을 노출할 것으로 변경할 수 있다. 물론, S176 단계에서 대상 캠페인을 노출하지 않을 것으로 결정하였고, S177 단계에서도 현재 시각과 최근 노출 시각 사이의 차가 최대 노출 빈도 시간 이하이면, S178b 단계가 수행되어, 대상 캠페인을 노출하지 않을 것으로 확정할 수 있다.
도 5를 참조로 설명한 것처럼, 랜덤 값을 이용한 방식은 관심도(예를 들어, 반응 확률)가 낮은 캠페인은 그 빈도수를 낮출 수 있는 점에서, 본 발명의 목적을 달성할 수 있다. 하지만, 특정 캠페인 그룹에 대한 반응 확률이 너무 낮은 경우, 거의 대부분의 게임 유저들에게 해당 캠페인이 아예 노출되지 않는 문제점이 발생할 수 있다.
따라서, S170 단계는 도 13에 도시된 것처럼 랜덤 값 대신 노출 여부 판단 값을 결정하고, 반응 확률과 노출 여부 판단 값을 비교하며, 이 비교 결과를 이용하여 이루어지는 것이 바람직하다. 이를 위해, S170 단계는 노출 여부 판단 값을 결정하는 단계(S271 단계)를 포함할 수 있다. S271 단계에서 노출 여부 판단 값은 다양한 방식으로 결정될 수 있다. 예를 들어, S271 단계는 전체 게임 유저들 중 미리 설정된 상위 퍼센트에 해당하는 게임 유저의 반응 확률을 노출 여부 판단 값으로 결정함으로써 이루어질 수 있다.
그리고, S272 단계 내지 S278 단계는 도 12에 도시된 S172 단계 내지 S178 단계와 비교 대상에서만 일부 차이가 있을 뿐 실질적으로 동일한 동작이 이루어진다. 이에 따라, S272 단계 내지 S278 단계에 대한 설명은 생략한다.
다시 도 9를 참조하면, S180 단계는 S170 단계를 통해 결정된 대상 캠페인의 노출 여부에 따라 노출 제어 정보를 생성하고, 이를 사용자 단말기로 송신하는 단계이다.
이처럼, 본 발명의 일 실시예에 따른 캠페인 노출 여부 판단 방법 및 서버를 이용하면, 게임 유저 별로 게임 유저에 맞춤화된, 캠페인 노출 빈도 조절이 가능하다. 각 게임 유저의 반응 확률에 따라 캠페인들의 빈도수가 조절되므로 각 게임 유저는 자신이 관심이 있어하는 캠페인들을 제공받을 수 있어, 게임 유저들을 귀찮게 하는 상황을 벗어날 수 있다.
뿐만 아니라, 본 발명의 일 실시예에 따른 캠페인 노출 여부 판단 방법 및 서버에 따르면, 각 게임 유저에게 제공된 캠페인 그룹 별로, 캠페인의 최근 노출 시각 정보를 활용하여, 동일한 그룹에 속한 캠페인들이 너무 잦게 노출되는 상황, 그리고 특정 캠페인 그룹에 속한 캠페인들이 너무 오랫동안 노출되지 않는 상황 모두를 고려할 수 있다. 이에 따라, 모바일 게임 제공자와 게임 유저 모두가 만족할 수 있는 게임 진행이 가능할 것으로 기대된다.
또한, 위에서는 본 발명의 일 실시예에 따른 캠페인 노출 여부 판단 방법 및 서버가 캠페인 그룹에 포함된 복수의 캠페인들에 따른 게임 로그들을 활용하는 것으로 설명하였다. 하지만 이는 예시일 뿐이고, 캠페인 그룹 단위가 아닌 캠페인 단위로 확장하여 운영할 수 있다.
본 발명에 따른 상기 예시적인 방법들은 프로세서에 의해 실행되는 프로그램 명령들, 소프트웨어 모듈, 마이크로 코드, 컴퓨터(정보 처리 기능을 갖는 장치를 모두 포함함)로 읽을 수 있는 기록 매체에 기록된 컴퓨터 프로그램 제품, 애플리케이션, 논리 회로들, 주문형 반도체, 또는 펌웨어 등 다양한 방식으로 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD, DVD, 자기 테이프, 하드 디스크, 플로피 디스크, 하드 디스크, 광데이터 저장 장치 등이 있으며, 이에 제한되는 것은 아니다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이상의 설명은 본 발명을 예시적으로 설명한 것에 불과하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술적 사상에서 벗어나지 않는 범위에서 다양한 변형이 가능할 것이다.
100 : 사용자 단말기 110 : 캠페인 노출 시점 판단부
120 : 노출 대상 캠페인 선택부 130 : 노출 여부 질의부
140 : 단말 통신부 150 : 캠페인 노출부
300 : 노출 제어 서버 310 : 게임 로그 수집부
320 : 서버 저장부 330 : 학습부
340 : 모델 생성부 350 : 요청 수신부
360 : 서버 통신부 370 : 반응 확률 산출부
380 : 노출 여부 결정부
1000 : 캠페인 노출 여부 판단 시스템

Claims (16)

  1. 노출 제어 서버가 게임 어플리케이션이 설치된 사용자 단말기에 제공될 대상 캠페인의 노출 여부를 판단하는 방법으로서,
    캠페인 그룹 별로 복수의 게임 유저들의 과거 캠페인의 캠페인 노출 시간들을 포함하는 과거 시점 게임 로그들을 수집하는 단계;
    상기 캠페인 노출 시간들을 분석하여 결정된 적어도 하나의 시간을 이용하여, 상기 과거 시점 게임 로그에 포함된 상기 캠페인 노출 시간들 중 적어도 하나의 특정 캠페인 노출 시간을 필터링함으로써 상기 과거 시점 게임 로그들을 학습하는 단계;
    상기 학습의 결과를 근거로, 상기 캠페인 그룹 별로 반응 확률 예측 모델을 생성하는 단계; 및
    상기 반응 확률 예측 모델을 통해 산출된 상기 게임 유저의 반응 확률을 이용하여, 상기 대상 캠페인의 노출 여부를 결정하는 단계를 포함하는 것을 특징으로 하는 캠페인 노출 여부 판단 방법.
  2. 제1항에 있어서,
    상기 반응 확률 예측 모델을 통해 획득된 상기 게임 유저의 반응 확률을 이용하여, 상기 대상 캠페인의 노출 여부를 결정하는 단계는,
    상기 사용자 단말기로부터 상기 대상 캠페인의 노출 여부 질의 신호를 수신하고, 상기 사용자 단말기의 게임 유저에 대한 과거 시점 게임 로그에서 상기 대상 캠페인에 대한 반응 확률 판단 인자를 추출하는 단계;
    상기 대상 캠페인이 속한 캠페인 그룹의 반응 확률 예측 모델에 상기 게임 유저의 반응 확률 판단 인자를 적용함으로써 상기 대상 캠페인에 대한 상기 게임 유저의 상기 반응 확률을 산출하는 단계를 포함하는 것을 특징으로하는 캠페인 노출 여부 판단 방법.
  3. 제1항에 있어서,
    상기 캠페인 노출 시간들을 분석하여 결정된 적어도 하나의 시간을 이용하여, 상기 과거 시점 게임 로그에 포함된 상기 캠페인 노출 시간들 중 적어도 하나의 특정 캠페인 노출 시간을 필터링함으로써 상기 과거 시점 게임 로그들을 학습하는 단계는,
    상기 과거 캠페인의 캠페인 노출 시간들을 시간의 크기에 따라 정렬하는 단계;
    상기 정렬 결과를 분석함으로써 제1 시간 및 제2 시간을 결정하는 단계; 및
    상기 제1 시간 미만이거나 상기 제2 시간을 초과하는 상기 과거 캠페인의 캠페인 노출 시간들을 제거하는 단계를 포함하는 것을 특징으로 하는 캠페인 노출여부 판단 방법.
  4. 제3항에 있어서,
    상기 캠페인 그룹 별 반응 확률 예측 모델에서 반응 확률은 상기 캠페인 노출 시간이 상기 제1 시간에 가까워질수록 작아지고, 상기 캠페인 노출 시간이 상기 제2 시간에 가까워질수록 커지도록 모델링되는 것을 특징으로 하는 캠페인 노출 여부 판단 방법.
  5. 제3항에 있어서,
    상기 캠페인 그룹 별로 반응 확률 예측 모델을 생성하는 단계는,
    상기 제1 시간 미만이거나 상기 제2 시간을 초과하는 캠페인 노출 시간들에 대한 반응 확률을 0으로 모델링하는 것을 특징으로 하는 캠페인 노출 여부 판단 방법.
  6. 제2항에 있어서,
    상기 반응 확률 판단 인자는 상기 사용자 단말기의 게임 유저에게 제공된 과거 캠페인들의 캠페인 노출 시간들을 근거로 도출되는 것을 특징으로 하는 캠페인 노출 여부 판단 방법.
  7. 제1항에 있어서,
    상기 과거 시점 게임 로그들을 학습하는 단계는,
    상기 과거 시점 게임 로그들에서 각 게임 유저의 특징 값들 및 제안 수락 여부 정보를 추출하는 단계; 및
    상기 각 게임 유저의 특징 값들 및 제안 수락 여부 정보를 학습하는 단계를 포함하는 것을 특징으로 하는 캠페인 노출 여부 판단 방법.
  8. 제7항에 있어서,
    상기 특징 값들은 게임 유저들의 미리 정의된 특징들에 대한 값들을 나타내고, 상기 특징들은 게임 유저 레벨, 게임 내 재화량, 게임 내 재화 사용량, 구매 확률, 유저의 상태 정보, 캠페인 노출 시간, 게임 플레이 패턴 중 적어도 하나를 포함하는 캠페인 노출 여부 판단 방법.
  9. 제1항에 있어서,
    상기 대상 캠페인의 노출 여부를 결정하는 단계는,
    노출 여부 판단 값을 결정하는 단계; 및
    상기 게임 유저의 반응 확률이 상기 노출 여부 판단 값을 초과할 때 상기 대상 캠페인을 노출할 것으로 결정하는 단계를 포함하는 것을 캠페인 노출 여부 판단 방법.
  10. 제9항에 있어서,
    상기 노출 여부 판단 값을 결정하는 단계는,
    전체 게임 유저들 중 미리 설정된 상위 퍼센트에 해당하는 게임 유저의 반응 확률을 노출 여부 판단 값으로 결정함으로써 이루어지는 캠페인 노출 여부 판단 방법.
  11. 제9항에 있어서,
    상기 게임 유저의 반응 확률이 상기 노출 여부 판단 값을 초과하고, 현재 시각과 최근 노출 시각 간의 차가 최소 노출 빈도 시간을 초과할 때 상기 대상 캠페인을 노출할 것으로 확정하는 단계를 더 포함하고, 상기 최근 노출 시각은 상기 대상 캠페인이 포함된 캠페인 그룹 중 상기 사용자 단말기에 마지막으로 제공된 캠페인의 제공 시각인 캠페인 노출 여부 판단 방법.
  12. 제9항에 있어서,
    상기 게임 유저의 반응 확률이 상기 노출 여부 판단 값 이하이고, 현재 시각과 최근 노출 시각 간의 차가 최대 노출 빈도 시간을 초과할 때 상기 대상 캠페인을 노출할 것으로 확정하는 단계를 더 포함하는 캠페인 노출 여부 판단 방법.
  13. 제1항에 있어서,
    상기 대상 캠페인의 노출 여부를 결정하는 단계는,
    랜덤 함수를 통해 0에서 1 사이의 랜덤 값을 도출하는 단계; 및
    상기 게임 유저의 반응 확률이 상기 랜덤 값을 초과할 경우 상기 대상 캠페인을 노출할 것으로 결정하는 단계를 포함하는 캠페인 노출 여부 판단 방법.
  14. 캠페인 그룹 별로 복수의 게임 유저들의 과거 캠페인의 캠페인 노출 시간들을 포함하는 과거 시점 게임 로그들을 수집하는 게임 로그 수집부;
    상기 캠페인 노출 시간들을 분석하여 결정된 적어도 하나의 시간을 이용하여, 상기 과거 시점 게임 로그에 포함된 상기 캠페인 노출 시간들 중 적어도 하나의 특정 캠페인 노출 시간을 필터링함으로써 상기 과거 시점 게임 로그들을 학습하는 학습부;
    상기 학습의 결과를 근거로, 상기 캠페인 그룹 별로 반응 확률 예측 모델을 생성하는 모델 생성부;
    상기 반응 확률 예측 모델을 이용하여 상기 게임 유저의 반응 확률을 산출하는 반응 확률 산출부;
    상기 게임 유저의 반응 확률을 이용하여, 상기 대상 캠페인의 노출 여부를 결정하는 노출 여부 결정부를 포함하고,
    제1항 내지 제13항 중 어느 한 항에 따른 방법의 각 단계를 실행하는 노출 제어 서버.
  15. 제1항 내지 제13항 중 어느 한 항에 따른 방법을 컴퓨터에서 실행시키기 위하여 컴퓨터 판독가능한 기록 매체에 저장된 컴퓨터 프로그램.
  16. 제1항 내지 제13항 중 어느 한 항에 따른 방법을 수행하는 컴퓨터 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체.
KR1020180077633A 2018-07-04 2018-07-04 캠페인 노출 여부 판단 방법, 서버 및 컴퓨터 프로그램 KR102234069B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180077633A KR102234069B1 (ko) 2018-07-04 2018-07-04 캠페인 노출 여부 판단 방법, 서버 및 컴퓨터 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180077633A KR102234069B1 (ko) 2018-07-04 2018-07-04 캠페인 노출 여부 판단 방법, 서버 및 컴퓨터 프로그램

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020170137604A Division KR101877688B1 (ko) 2017-10-23 2017-10-23 캠페인 노출 여부 판단 방법, 서버 및 컴퓨터 프로그램

Publications (2)

Publication Number Publication Date
KR20190045043A KR20190045043A (ko) 2019-05-02
KR102234069B1 true KR102234069B1 (ko) 2021-03-31

Family

ID=66581435

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180077633A KR102234069B1 (ko) 2018-07-04 2018-07-04 캠페인 노출 여부 판단 방법, 서버 및 컴퓨터 프로그램

Country Status (1)

Country Link
KR (1) KR102234069B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102579203B1 (ko) 2019-12-31 2023-09-15 한국전자통신연구원 게임 결과 예측 장치 및 방법

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110067390A (ko) * 2009-12-14 2011-06-22 주식회사 플레이버프로젝트 사용자의 행위에 기초하여 광고 컨텐츠를 제공하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체
KR20130131845A (ko) 2012-05-25 2013-12-04 주식회사 엔씨소프트 데스크탑관리방법 및 데스크탑관리시스템
KR20160062382A (ko) * 2014-11-25 2016-06-02 삼성전자주식회사 전자 장치 및 전자 장치의 광고 서비스 제공 방법

Also Published As

Publication number Publication date
KR20190045043A (ko) 2019-05-02

Similar Documents

Publication Publication Date Title
US11161044B2 (en) Adaptive gaming tutorial system
US11369880B2 (en) Dynamic difficulty adjustment
US8775332B1 (en) Adaptive user interfaces
CN108369665B (zh) (移动)应用程序使用流失的预测
WO2010010653A1 (ja) ユーザモデル処理装置
CN108985638A (zh) 一种用户投资风险评估方法和装置以及存储介质
US11278801B2 (en) Management of provisioning of video game during game preview
CN111859114A (zh) 推荐系统的优化方法、装置、设备和计算机存储介质
CN114392560B (zh) 虚拟场景的运行数据处理方法、装置、设备及存储介质
CN109522482B (zh) 游戏应用分类页面显示方法、装置、存储介质及终端
KR101877688B1 (ko) 캠페인 노출 여부 판단 방법, 서버 및 컴퓨터 프로그램
KR102234069B1 (ko) 캠페인 노출 여부 판단 방법, 서버 및 컴퓨터 프로그램
CN114832385A (zh) 一种游戏动态调整方法和系统
CN113222073B (zh) 训练广告推荐模型的方法及装置
CN106682054B (zh) 一种终端应用推荐方法、装置和系统
CN110196805B (zh) 数据处理方法、装置、存储介质和电子装置
KR102260535B1 (ko) 노년층을 대상으로 하는 화상대화 시스템 및 화상대화 방법
US20210252402A1 (en) Streaming channel personalization
KR20130089741A (ko) 애플리케이션을 추천하는 방법, 서버 및 단말
KR101996034B1 (ko) 게임 프로그램의 친구 추천 방법 및 서버
JP2002163279A (ja) 推奨情報提供方法、推奨情報送信システム、推奨情報送信装置及び記録媒体
KR102627642B1 (ko) 사용자 맞춤형으로 자동사냥 예측값을 제공하고, 자동사냥 장소를 추천하는 게임 서버 및 이의 동작 방법
CN113807403B (zh) 模型训练的方法、装置、计算机设备及存储介质
KR20130113689A (ko) 피씨방 등급 관리 방법 및 장치
KR20150016660A (ko) 게임 플레이를 위한 스킬 구현 방법 및 서버

Legal Events

Date Code Title Description
A107 Divisional application of patent
E701 Decision to grant or registration of patent right
GRNT Written decision to grant