- Author: Hee-Seung Moon, Antti Oulasvirta, Byungjoo Lee
- Conference/Journal: CHI
- Year: 2023
Summary
-
a. Interface를 사용하는 user의 behavior를 simulate하고,

-
b. simulate한 데이터를 통해 학습시킨 density estimator를 통해 실제 user behavior만 보고 user-specific parameter/behavior를 추론할 수 있도록 하자!

A. Background
”Almost every HCI study ends up with Human Experiment”

Problem Definition ➡️ System/Interface Modeling ➡️ Human Validation(How the system affects human?)
Human validation is expensive and inevitable, yet hardly generalizable.
-
1. Human perception/control mechanism을 다 알지 못하니까
-
2. 사람마다 차이가 있으니까

So, goal of User Simulation/modeling is:
Interface(Hardware/Sofware)를 만들었을 때 User Validation 과정까지도 계산 가능하게 할 수는 없을까?
➡️이러한 문제(unknown mechanism)에서 취할 수 있는 접근법은 크게 두 가지
1. Black-box modeling

-
Data-driven method가 impactive
-
하지만 사람 데이터는 대규모로 모을 수가 없음
2. White-box modeling

이거를 하려면,
사람이 감각을 인지하거나(Perception), 동작하거나(Motor control), 두개를 동시에 하는 과정(Sensorimotor control)을 plausible하게 모델링 해야함.
➡️이미 꽤 많은 task에 대한 모델이 나와있음(not a concern)

+ 사람 간의 차이를 반영하는 Optimization을 위해서는, 특정 user-specific characteristic/parameter를 알 수 있어야 함
B. Key Idea
Q. “Specific user의 behavior data(trajectory, performance metric)를 보고 user-specific parameter를 어떻게 찾아내지?“
1. 결국 data-driven method가 powerful
2. 모든 variability를 span하는 사람 데이터를 모은다는 건 현실적으로 불가능함
3. user-specific parameter를 반영할 수 있는 User simulation model이 있다면 다양한 user-specific parameter를 반영한 synthetic data를 만들어낼 수 있음
4. 이를 simulation을 통한 synthetic data를 활용하는 아이디어를 제안
-
user-specific parameter를 반영할 수 있는 User simulation model이 있다면 합성데이터를 만들어내서 Data-driven으로 접근할 수 있음.
-
이렇게 학습한 모델이 실제 사람의 behavior에도 robust하다면 data scarcity 문제를 효과적으로 mitigate할 수 있음
C. Research Question
A. variability를 span하는 synthetic data를 simulation으로 만들어낼 수 있나?
➡️ 이미 사용가능한 모델들이 있음. (Biomechanically plausible model+ RL simulation)
B. 이러한 synthetic data를 통해 behavior data - model parameter 간의 mapping을 찾아낼 수 있나?
➡️ Normalizing Flow with Conditional INN
D. Model Overview
”Given user behavior data, find the most probable model parameter”

E. Core Methodology
User Behavior Encoder

-
관측한 user behavior 데이터(trajectory/performance metric …)을 fixed-size feature vector로 변환
Conditional INN with Normalizing Flow

-
Goal of network
-
user-behavior 데이터 가 주어졌을 때, plausible한 model parameter의 분포 를 구하는 것이 목적
-
를 구한다는 것은 단순히 하나의 point를 추정하는 것을 넘어, 여러 개의 modal(극대값)과 신뢰도를 구한다는 뜻’
-
-
Mechanism
-
복잡한 의 지점이 어디인지를 바로 구하기는 어려우니까,
‘내가 아는 분포(Unit Normal)의 아는 point’를 변환하여
’알고자 하는 posterior 분포의 point’가 되도록 하는
”Normalizing Flow”를 neural net으로 학습시킴
-
그러면 수많은 point에 대해 학습된 Normalizing flow 기반으로 transformation하여 posterior 분포를 approximate할 수 있게 됨.
-
approximate한 posterior에서 현재 관측한 Behavior일 때 가장 확률이 높은 model parameter modal(극대값)과 해당 값의 신뢰도를 계산할 수 있음
-
Training

Training Procedure
1. Model Parameter Sampling:
-
사전에 정의된 plausible model parameter space에서 model parameter 를 sampling
2. User Simulation model:
-
sampling한 model parameter 를 통해 behavior 를 simulate
3. Encoder Network:
-
behavior 를 encoder에 넣어 feature vector 추출
4. Conditional INN:
-
(a) Sampling한 Model parameter 를 inverse process(Normalizing flow) 를 적용하여 latent variable 로 보냄
-
(b) inverse process layer(Input/Hidden Layers)의 입력에 feature vector를 concat하여 condition 반영
-
(c) Loss 계산 후 weight 업데이트
-
(1) model parameter를 변환한 latent variable 가 0으로 가도록, (GT model parameter는 표준정규분포 상에서 가장 확률이 높은 곳, 평균에 위치해야 함)
-
(2) 정규분포의 형태를 유지하도록 하는 Jacobian term(모든 지점이 0으로 떨어져버리면 최종 latent variable 분포가 Unit normal이 아닐테니까)
-
(1,2)의 과정은 예측한 posterior 분포와 실제 posterior(sample point가 속한) 간의 KL Divergence를 최소화 하는 것과 수학적으로 동일
Inference

1. Latent space의 Unit Normal Distribution으로부터 point들을 sampling()
2. 각 Latent point들에 대해 forward transformation 수행
3. transformation layer 입력에 behavior feature vector concat하여 condition반영
4. 변환된 model parameter space 상의 point들로 posterior distribution 형성
F. Validation
-
Task: 3D Target Selection task(Moon2024)
-
User Modeling & Simulation

-
Inter/Intra-user Variability

-
Amortized Inference of user-specific parameter/behavior

-
Synthetic data가 Real-world 에 적용해도 될 정도로 Plausible 한가?

-
Synthetic data로 학습한 모델이 기존 data-driven/rule-based method만큼/보다 좋은가?

-
1. Data Aquire Cost(↔️ Human-data-based)
-
Synthetic data(Pretraining 2시간)로 사람 데이터(16명, 1020 target selection trials, 약 1시간소요 /per user)로 학습한 거 만큼의 성능을 냈다!
-
Q. 결국 사람 데이터로 학습하는게 더 성능이 좋은거 아니야?
-
A. 사람 데이터로 학습한 모델은 competent가 아닌 upper bound로 설정하는게 적절
-
Synthetic data는 사람의 behavior 기작을 “근사”한 모델로부터 나옴
-
따라서 사람 데이터 모델은 In-distribution (학습 데이터와 테스트 데이터가 같은 분포) 학습이고, 시뮬레이션 모델은 Out-of-distribution (가상 분포에서 학습하여 현실 분포에 적용/Sim-to-Real) 학습
-
시뮬레이션 모델이 인간 모델을 ‘이기기 위해서’가 아니라, **‘데이터 없이(Zero-shot) 얼마나 인간 모델에 근접했는가(Fidelity)‘**를 보여주는 것
-
성능 차이의 미미함: Study 3의 결과에 따르면, 인간 데이터 모델과 시뮬레이션 모델을 사용했을 때 사용자의 타겟 선택 속도나 에러율에는 통계적으로 유의미한 차이가 없었음
-
-
Q. 16명 데이터만으로도 unseen 4명에 대한 성능이 이 정도면 amortized inference 안써도 되는거 아니야?
-
A. 근데 Meta 에서 16명으로 실험한 데이터로 target selection 추론한 데이터로 CD gain 최적화 패치를 deploy할 수 있을까?
-
16명에 대한 실험 수행(1020 target selection trials, 약 1시간소요 /per user) v.s. 2시간 pretraining ➡️ 비슷한 성능이면 당연히 후자
-
만약 Meta가 엄청난 돈과 시간을 써서 populational scale 데이터를 모았다 하더라도,
-
만약 실험했던 것과 target 사이즈가 달라지면? 다시 테스팅해야함
-
만약 실험했던 것과 다른 피드백(UI, visual effect, gain)으로 바뀌면? 다시 테스팅해야함
-
만약 실험했던 것과 다른 task에 대해서도 하려면? 다시 테스팅해야함
-
-
Overfitting(not large-scale data)
-
실험 participants(대학생)와 다른 나이(신경처리속도, 감각민감도, …), 팔 길이, 환자 등에 대해서 하게 되면?
-
인간 운동 기작의 수많은 parameter space를 다 span하는 데이터를 모으려면 N=?
-
나이가 들수록 motor capability of finger가 낫다는 밝혀진 현상을 설명하는 결과
-
-
-
-
2. Scalability(↔️ Human-data-based, Proximity-based)
-
새로운 task/환경에서도 Simulation model만 있으면 적용 가능
-
-
3. Confidence(↔️ Proximity-based)
-
Deterministic하게 추론하는 것이 아니라 추론값의 Confidence를 함께 내놓기 때문에, Confidence가 높은 상황에서만 Optimization을 수행/개입할 수 있음
-
-
G. Contribution&Limitation
-
Synthetic data의 domain에서 학습된 모델이 real-human observation에서도 robust하게 동작한다는 건 새로운 paradigm을 뚫는 의의를 가짐
-
between-user variability는 분야를 막론하고 missing link이고 그걸 추론할 수 있다는 건 의미가 큼(e.g. 새로운 interface를 사람의 특성에 맞게 optimization하는 문제 imitation learning에서 expert demostration이 사람마다 다 달라서 생기는 문제, human noise와 core trajectory를 분리하는 문제, generated image에 대한 선호도 기반 최적화 문제)
-
너무 큰 문제, 그리고 밝혀지지 않은 사람 내부의 기작을 모델링하려하기 때문에
-
1. 여전히 User modeling/simulation과정에서 많은 assumption이 있고
➡️ User simulation의 복잡한 mechanism, 특히 peceptual one에 대한 detailed/realistic modeling의 필요성(e.g. 감각 정보를 어떻게 처리하여 motor control에 필요한 정보로 가공하나?)
-
2. task가 달라지면 simulation 환경구축과 학습을 다시 해야하는 문제
-
-
Application-level에서 이 방법론이 얼마나 효과적인지(scalable)더 보여줘야할 필요성
-
Note
- 확률 적분 변환(Probability Integral Transform)‘에 따르면, 어떤 연속적인 확률 변수라도 그 누적 분포 함수(CDF)를 통해 균등 분포(Uniform Distribution)로 변환할 수 있고, 이를 다시 역변환하여 정규 분포(Normal Distribution)로 만들 수 있음
- 기존에도 model parameter inference 방법론은 있었지만(ABC) infernece당 hours to days(e.g. Point and click은 30시간)
Quote
“If you can’t explain it to a six-year-old, you don’t understand it yourself.” - Richard Feynman

