게임 개발에서 인공지능을 사용할 수 있는 부분은 생각보다 다양합니다. 게임 기능, 게임 개발, 게임 사용자 영역에서 관련된 다양한 사례들을 알아봅니다. 실제 게임 회사 내에서 궁금증을 가질만한 스토리를 가정하여 AWS의 다양한 인공지능 서비스를 활용할 수 있는 가이드를 드립니다. 또한 한국 게임 사의 Abnormal detection 적용 사례를 간략히 설명해 드립니다. 평소 인공 지능을 게임에 적용하길 원하시는 분들에게 손쉬운 시작점을 제공해 드립니다.
8. FRAMEWORKS INTERFACES INFRASTRUCTURE
AI services
VISION SPEECH LANGUAGE CHATBOTS FORECASTING RECOMMENDATIONS
ML services
ML frameworks + infrastructure
P O L L Y T R A N S C R I B E T R A N S L A T E C O M P R E H E N D
& C O M P R E H E N D
M E D I C A L
L E X F O R E C A S TR E K O G N I T I O N
I M A G E
R E K O G N I T I O N
V I D E O
T E X T R A C T P E R S O N A L I Z E
Ground Truth Notebooks Algorithms + marketplace Reinforcement learning Training Optimization Deployment HostingAmazon SageMaker
F P G A SE C 2 P 3
& P 3 D N
E C 2 G 4 E C 2 C 5 I N F E R E N T I AG R E E N G R A S S
E L A S T I C
I N F E R E N C E
D L C O N T A I N E R S
& A M I s
AWS는 가장 위에 AI
Services로 이미지, 언어, 음성,
자주 사용되는 추천 및
포케스팅 서비스는 API 요청만
주시면 바로 응답을 줍니다.
9. 전자동 번역 가능
#!/usr/bin/python
# -*- coding: utf-8 -*-
import boto3
translate = boto3.client("translate")
translate = boto3.client(service_name='translate',
region_name='us-east-1', use_ssl=True)
resp = translate.translate_text(
Text="Je suis très excité pour Amazon Traduire",
SourceLanguageCode="auto",
TargetLanguageCode="en"
)
print(resp['TranslatedText'])
Amazon Translate
Neural machine translation service
알아보니 지금 55개
언어를 지원하고
있으니, 글로벌 버전
만들거나 다국적 채팅
기능 구현에 쉽게
적용될 것 같아요.
10. 커뮤니티에 불편한 사진들 좀…
Amazon Rekognition
Image and Video Recognition & Analysis
커스텀 프로필 사진
지원하는 게임인데 불편한
사진들이나, 우리
커뮤니티에도 종종 이상한
사진들 자동으로 걸러 줄 수
있겠어요. 사진 말고 동영상도
가능합니다. Custom
label도 가능해서 원하는
Object 찾아주는 것도 할 수
있습니다.
11. $ aws polly synthesize-speech --text ”Which word
is defined as; psychological suffering" --output-
format "mp3" --voice-id "Ivy" quest1-3.mp3 --
region us-east-1
Amazon Polly
Text-to-Speech
API 요청 한 번으로 텍스트를 음성으로~
성우까지는 아니고
음성 지원 기능이
필요한데, 글로벌
런치도 해야하고,
쉬운 방법이 없을까?
Arabic
Chinese, Mandarin
Danish
Dutch
English, Australian
English, British
English, Indian
English, US
English, Welsh
French
French, Canadian
Hindi
German
Icelandic
Italian
Japanese
Korean
Norwegian
Polish
Portuguese, Brazilian
Portuguese, European
Romanian
Russian
Spanish, European
Spanish, Mexican
Spanish, US
Swedish
Turkish
Welsh
Sep-2020
12. 인공지능을 이용해서 게임 유저
분들 분위기 파악을 해줄 수
있다고 하던데...
출처: Yes24
13. 게임 유저 감정 분석을 아키텍처
Comprehend라는
서비스는 텍스트에서
감정, 인사이트,
상관관계 등을 찾아내
줍니다.
게임 내 이슈나 불만이
발생하고 있다면 머신 러닝
서비스가 캐치해서
알려준다는 거군요.
16. 게임 내 채팅 내용 분석 (Audit game chats)
오호, 채팅 창에서
버그나, 해킹, 또는
게임 유저 불만 등을
찾아낼 수도
있겠군요.
Comprehend 서비스는
custom classification 도
지원합니다. 원하는
주제로 자동으로 구분해
낼 수 있어요. DB로
차곡차곡 쌓아서 분석도
쉽습니다.
Amazon Comprehend
Amazon Redshift
Amazon Elasticsearch
Service
Amazon Simple Storage
Service
17. 인공지능에서 추천은 기본인데, 우리는?
Item의 판매가 곧
매출인데, 혹시
인공지능을 이용한
추천 시스템을
게임에서는 쉽게
적용할 수 없을까?
많은 모든 고객분들이
원하는 기능이라, 당연히 AI
Service로 이미 만들어져
있습니다. E-commerce
에서는 이미 잘 사용하고
있습니다.
18. 추천, 개인화 Amazon Personalize
세 가지 정도는 쉽게 바로 구현
가능할 것 같아요.
• 각각 게임 유저만의 아이템
추천
• 빠르고 즉각적으로 추천
아이템 리스트 변경 반영
• 개인화된 추천 내용으로
마케팅 활용
‘아키텍처는 간단하니 개발팀에 Forwarding’ ☺
Amazon.com과 같은
ML기술이고 실시간 배치
추천 모두 지원합니다.
19. 20 억 다운로드 기록과 월 4억 MAU(Monthly active users) 를
가진 Voodoo 게임 사가 말하길…
21. 뭔가 인공지능을 활용할 수 있는 부분이 더
있을 것 같은데...
게임 개발 쪽에서는 활용할 곳이 없나요?
찾아봅시다.
22. 1. AI 매치매이킹 • 기존 매치메이킹 시스템 알고리즘은 게임
스탯에 대한 수치와 직접 개발자가 튜닝을
하여 제공 했었죠.
• 머신 러닝을 이용하여 보다 최적화된
매치메이킹 시스템을 제공하여 게임
유저에게 보다 즐거운 게임 환경을 제공할 수
있지 않을까요?
• 매칭 시에 오래 기다리게 되거나, 스킬 차이가
크게 발생하거나, 팀 구성이 효과적으로
되거나 하는 등의 조건을 모델링 한다면?
• 머신 러닝 모델은 원하면 쉽게 보다 나은 매칭
알고리즘을 갖도록 업데이트가 쉽다고
합니다.
23. 2. AI 게임 QA 테스팅
• 단순한 Dummy bot들로 QA
테스트를 해왔는데….
• 머신 러닝을 이용하여 보다 다양한
Bot을 생성하고 여러가지 새로운
시나리오를 쉽게 테스트 해 볼 수
있다고 합니다.
• 시간, 리소스도 절약하고 게임의
안정성도 더 높이길 기대할 수 있지
않을까요?
24. 3. AI NPCs
• 기존 NPC들은 정해진
시나리오나 룰에 맞춰서 같은
행동을 반복하도록 디자인
되어 있는데요.
• 머신 러닝을 사용하면 이러한
NPC들의 반응이나 행동을
실시간으로 다양하게 만들 수
있지 않을까요?
• 게임 유저들은 보다 상황에
맞는 또는 다양한 연출을 경험
할 수도 있을 겁니다.
25. 4. AI 게임 레벨링, 또는 난이도 조정
• 몇 가지 정해진 난이도나
레벨이 아닌 머신 러닝을
이용한 다양한 난이도를
제공하면 어떨까?
• 게임 유저들이 보다
게임을 오래 즐기 수 있는
요소를 제공해 줄 수 있을
것 같은데?오, 고인물 인걸
알아 봤나?
26. 5. 게임 내 이상 탐지 (Abnormal detection)
“I like this game. ☺"
• 어뷰징, 애임 봇, 해킹, 월핵
등이 비지니스에 영향을
주고 다른 게임 유저들에게
피해를 주고 있음.
• 머신 러닝을 통해서 이러한
이상 을 쉽게 탐지할 수
있다고 함.
• Krafton PUBG 같은 이미
적용 사례도 있음.
28. The AWS 머신러닝 스택
가장 다양하고 폭 넓은 머신 러닝 서비스 제공
VISION SPEECH TEXT SEARCH CHATBOTS PERSONALIZATION FORECASTING FRAUD DEVELOPMENT CONTACT CENTERS
Ground
Truth
AWS
Marketplace
for ML
Neo Augmented
AIBuilt-in
algorithms
Notebooks Experiments Processing
Model
training &
tuning
Debugger Autopilot
Model
hosting
Model Monitor
Deep Learning
AMIs & Containers
GPUs &
CPUs
Elastic
Inference
Inferentia FPGA
Amazon
Rekognition
Amazon
Polly
Amazon
Transcribe
+Medical
Amazon
Comprehend
+Medical
Amazon
Translate
Amazon
Lex
Amazon
Personalize
Amazon
Forecast
Amazon
Fraud Detector
Amazon
CodeGuru
AI SERVICES
ML SERVICES
ML FRAMEWORKS & INFRASTRUCTURE
Amazon
Textract
Amazon
Kendra
Contact Lens
For Amazon
Connect
SageMaker Studio IDE
Amazon SageMaker
DeepGraphLibrary
30. 머신 러닝 모델 생성을 위한 과정, 복잡하고
반복적인 학습
Prepare Build Train & Tune Deploy & Manage
101011010
010101010
000011110
Collect and
prepare
training data
Choose or build an
ML algorithm
Set up and manage
environments
for training
Train, debug, and
tune models
Deploy
model in
production
Manage training runs Monitor
models
31. Amazon SageMaker
Amazon SageMaker는 모든 개발자 및 데이터 과학자가 기계 학습(ML) 모델을 빠르게 구축, 훈련 및 배포할 수
있도록 하는 완전 관리형 서비스
Fully managed data
processing jobs and
data labeling
workflows
One-click collaborative
notebooks and built-in,
high performance
algorithms and models
One-click
training Debugging and optimization
One-click
deployment and
autoscaling
Visually track and
compare experiments
Automatically
spot
concept drift
Fully
managed with
auto-scaling
for 75% less
준비,레이블 구축 학습 & 튜닝 배포 & 관리
101011010
010101010
000011110
Choose or bring your
own
ML algorithm
Set up and manage
environments
for training
Train, debug, and
tune models
Deploy
model in
production
Manage training runs Monitor models
Add human
review of
predictions
Web-based IDE for machine learning
Automatically build and train models
Collect and
prepare
training data
38. 머신 러닝 모델 학습 아키텍처 #1
Classification
models
Self
similarity
method
NEW
type abusers
Game
action logs
KNOWN
type abusers
Unsupervised
deep learning
models
39. 머신 러닝 모델 학습 아키텍처 #2
DAGMM
SCRIPT
API
HUE
AWS
SageMaker
P3
GPU instance
CUSTOM
MODEL
IMAGE
AWS SAGEMAKER
SageMaker Call
Training/prediction
JOB
ECR
TENSORFLOW
YARN CLUSTER
Boto / SageMaker
API
40. 머신 러닝 모델 학습 아키텍처 #3
Classification
models
Self
similarity
method
NEW
type
abusers
Game
action
logs
KNOWN
type
abusers
Unsupervised
deep learning
models
RDS
WEB
(Tableau)
41. 머신 러닝 도입 결과 | Krafton
• 기존에는 확인되지 않던 12개의 새로운 Abusing 종류를 머신 러닝을 통한
모델을 통해 발견.
• 250 개의 Abusing 케이스를 감지하여 보완하고 이슈 해결
42. Amazon Fraud Detector 사용 사례
• 결제 관련 Fraud가 현재 발생하고 있으며, 현재는 Fraud를 잡아낼 방법이 없는 상태
• Amazon Fraud Detector 를 통하여 Fraud를 감지하거나 예방함
• 직접적으로 모든 것을 개발하기엔 시간이 부족하고 이미 AWS Managed Service 사용 경험이 많이 있어 개발
공수에 시간이 너무 많이 투자될 것으로 예상되어 최근 Amazon Fraud Detector를 이용하기로 함.
• 지난 3년 여간의 결제 데이터 셋을 가지고 있으며 Fraud Detector 의 Learning에 적용하기 위한 최근 6개월
Fraud 결제 데이터 셋을 정제하여 모델링 사용
43. 복잡하고 시간이 드는 부분은
AWS로 해결하고 새로운
게임과 머신 러닝 적용과
활용을 고민할 시간이군요.
☺
AWS는 다양한 서비스
제공 뿐만 아니라 여러
인공지능 전문가들과
같이 협업할 수
있습니다.