How To Integrate With Service
Service Side
Mapping
Provider
Data
Provider
Redis
Cluster
HDFS
User1, News_A
User2, News_B
Smart Channel
Importer
Get News
Title, URL,
Image
2-Sided Features
User side
> Age
> Gender
Content side
> Time
> Id
> Type
> etc..
Slide 27
Slide 27 text
Bandit Arms: News
Contents
20-24 25-29 30-34 35-39 40-44
M F M F M F M F M F
4af3e1d 0.57 0.52 0.59 0.57 0.64 0.65 0.68 0.64 0.76 0.73
2ulf3a4 0.73 0.38 0.67 0.39 0.61 0.40 0.58 0.40 0.51 0.41
1a0ew3 0.42 0.71 0.46 0.66 0.48 0.61 0.54 0.54 0.58 0.50
w2ag67 0.51 0.61 0.53 0.67 0.51 0.68 0.56 0.69 0.57 0.70
xr02h1 0.65 0.55 0.61 0.58 0.63 0.59 0.59 0.60 0.58 0.60
age x gender x id
Slide 28
Slide 28 text
Bandit Arms: Weather
Contents
20-24 25-29 30-34 35-39 40-44
M F M F M F M F M F
Weather
0.48 0.56 0.47 0.58 0.51 0.57 0.52 0.58 0.55 0.59
0.53 0.51 0.51 0.52 0.55 0.53 0.55 0.57 0.54 0.54
0.61 0.62 0.62 0.63 0.62 0.66 0.62 0.64 0.62 0.66
0.68 0.67 0.65 0.67 0.67 0.67 0.66 0.67 0.68 0.67
0.72 0.73 0.71 0.72 0.71 0.75 0.74 0.72 0.73 0.74
age x gender x type x hour
Slide 29
Slide 29 text
Bandit Arms: Weather
Contents
20-24 25-29 30-34 35-39 40-44
M F M F M F M F M F
Weather
0.48 0.56 0.47 0.58 0.51 0.57 0.52 0.58 0.55 0.59
0.53 0.51 0.51 0.52 0.55 0.53 0.55 0.57 0.54 0.54
0.61 0.62 0.62 0.63 0.62 0.66 0.62 0.64 0.62 0.66
0.68 0.67 0.65 0.67 0.67 0.67 0.66 0.67 0.68 0.67
0.72 0.73 0.71 0.72 0.71 0.75 0.74 0.72 0.73 0.74
age x gender x type x hour
Slide 30
Slide 30 text
Bandit Arms
Contents
20-24 25-29 30-34 35-39 40-44
M F M F M F M F M F
0.52 0.53 0.51 0.54 0.52 0.54 0.53 0.54 0.53 0.54
0.53 0.52 0.55 0.51 0.56 0.54 0.57 0.53 0.58 0.54
0.58 0.59 0.57 0.58 0.55 0.54 0.54 0.54 0.51 0.52
0.58 0.56 0.57 0.56 0.55 0.54 0.55 0.54 0.52 0.53
0.58 0.57 0.58 0.56 0.52 0.54 0.51 0.52 0.52 0.51
Slide 31
Slide 31 text
Ideas for Learning
Huge Traffic Stability
Learning Efficiency
Distributed Architecture
Slide 32
Slide 32 text
For Huge Traffic
CRS
Engine
Imp/Click
Joined Kafka
Model
Parameter
Redis
Ranker
Learning
Dispatcher
Slide 33
Slide 33 text
Load Balancing
> Store data for each arm
Arms
> Split every K into Partition
P=1
P=2
P=3
> Always use the same instance for
arm and partition id pairs
> Consistent hash by Proxy(NGINX)
1 2 3 4 5 6 7
Arm=3
Partition=3
Arm=2
Partition=1
Slide 34
Slide 34 text
For Huge Traffic
CRS
Engine
Imp/Click
Joined Kafka
Learning
Worker
Worker
Proxy
Parameter
Proxy
Parameter
Server
Model
Parameter
Redis
Trainer
Ranker
Learning
Dispatcher
Slide 35
Slide 35 text
Hetero-Architecture
CRS
Engine
Imp/Click
Joined Kafka
Learning
Worker
Worker
Proxy
Parameter
Proxy
Parameter
Server
Model
Parameter
Redis
Learning
Dispatcher
Realtime Async
Slide 36
Slide 36 text
Hetero-Architecture
CRS
Engine
Imp/Click
Joined Kafka
Learning
Worker
Worker
Proxy
Parameter
Proxy
Parameter
Server
Model
Parameter
Redis
Learning
Dispatcher
Java Python
Test Problem
> Test with limited users in the Production environment
> Verify the performance of recommendation
> Hard to test recommendation on test environment
Slide 40
Slide 40 text
Gradual Rollout
> A/B test support tool called
Libra
> Exposure is limited to n%
users
> ID can also be specified
Slide 41
Slide 41 text
Health Check of Service
Mute
Click
Click / Mute = Score
Slide 42
Slide 42 text
A/B Test
> A/B test also uses Libra
> Easy to configure
Slide 43
Slide 43 text
A/B Analysis
> A/B result is analyzed by Data scientist
Slide 44
Slide 44 text
Disadvantages of Bandit
> Bandit arms are only age x gender.
> Should optimize by user basis
> It takes a certain time(10min~) to learn
Content B
Content C
Content a
Personalize??
Slide 45
Slide 45 text
2-Sided Features+
User side
> Age
> Gender
Contents side
> Time
> Id
> Score
> etc..
> Past CTR
> Past xCTR
Personalize by User
User A User B User C
User D User E
Slide 48
Slide 48 text
Future
Slide 49
Slide 49 text
Life Information
Slide 50
Slide 50 text
Life Information
Slide 51
Slide 51 text
Bandit API
Slide 52
Slide 52 text
Bandit API Flow
Bandit API
Other Service
Event Tracker Learning
Worker
UserID, IDs
A,B,C,D
UserID, Ranked IDs
C,D,B,A
Imp/Click
Log
Parameter
Slide 53
Slide 53 text
Recommend 2 Other Services
Slide 54
Slide 54 text
Recommend 2 Other Service
CRS
Talk Tab
Home Tab
Wallet Tab
Sticker
News
Manga
Slide 55
Slide 55 text
Location & Beacon
Slide 56
Slide 56 text
Location & Beacon
>Limited content in specific places
> Make LINE Beacon experience mach more fun
> Show local weather by user location
Slide 57
Slide 57 text
> Day2: C2-1 12:00-12:40
> LINE-Like Product Development Using Smart Channel as an Example
"LINE-Like" Product Management
> Poster Session 13:40-14:20/15:30-16:10 (2days)
> Case Studies on Smart Channel Platforms and How To Improve Content
> Day1: C1-7 18:10-18:50
> Explanation of SmartChannel From the Perspective of ML / DA Engineer
Building a Smart Recommender System Across LINE Services
Continuous Improvements in Smart Channel Platform/Contents
Related Presentation