2024년 8월 25일 일요일

Thomson sampling이란?

 최적화 문제가 어려운 이유는 탐색(Exploration)과 활용(Exploitation)간의 균형을 맞추는 것이다. 이를 위해 다양한 방법들이 있지만 Thomson Sampling이라는 방법이 있다.

One armed bandit라는 문제를 살펴보자.

image

 

외팔이 강도가 (one-armed bandit이) 우연한 기회로 눈 앞에 여러 개의 슬롯머신을 공짜로 H시간 동안 플레이 할 수 있는 기회를 얻었다고 생각해보자. 이때 강도는 한 번에 한 개의 슬롯머신의 arm만 당길 수 있으며 (즉 총 H번 시도할 수 있다) 각각의 슬롯머신에서 얻을 수 있는 reward는 다르다고 가정한다.

또한 reward는 어떤 probabilistic distribution에 의해 draw되는 random variable이라고 했을 때, 이때 강도가 가장 수익을 최대화하기 위해서는 arm을 어떤 순서대로, 어떤 policy대로 당겨야할까?

이 문제에서 가장 큰 난점은, 슬롯머신마다 보상이 다르고, 한 번에 한 슬롯머신의 reward만 관측할 수 있다는 점이다.

예를 들어 한 슬롯머신을 골라서 계속 그 슬롯머신만 당길 수도 있겠지만, 이 경우 다른 슬롯머신에서 더 좋은 reward를 얻었을 수도 있기 때문에 가장 최적의 전략은 아닐 것이다.

혹은 모든 슬롯머신을 동일한 횟수만큼 반복할 수도 있을 것이다. 그러나 슬롯머신 중에서 가장 좋은 reward를 보이는 머신은 오직 하나 뿐 일 것이므로, 이런 전략은 마찬가지로 최종 reward를 최적화하는 방법은 아닐 것이다.

혹은 일부 시간만 슬롯머신을 랜덤하게 당겨보고, 그 시간 동안 제일 좋았던 슬롯머신만 계속 당겨보는 수도 있을 것이다.

이와 같은 사례에서 Exploitation과 Exploration을 정의해보도록 하자.

이때 기존 경험 혹은 관측값을 토대로 가장 좋은 arm을 선택하는 것을 exploitation이라 하며 더 많은 정보를 위하여 새로운 arm을 선택하는 것을 exploration이라고 한다.

결국 시간이 제한되어있기 때문에 이 둘 사이에는 trade-off관계가 성립하게 된다. 만약 exploration를 너무 하지 않게 될 경우, 잘못된 정보를 토대로 exploitation을 하게 되기 때문에 최종 결과가 좋을 거라는 보장을 하기가 힘들 것이다. 그렇다고 해서 너무 exploration을 많이 하게 되면, 충분히 정보를 가지고 있음에도 불구하고 더 정보를 얻기 위해 쓸데 없는 비용이 발생할 것이다. 따라서 이런 측면에서 exploration과 exploitation은 서로 trade-off 관계가 있다고 할 수 있고, 이런 상황에서 우리가 이 둘을 어떻게 조절하느냐가 Multi-armed Bandit problem의 핵심이 되는 것이다.

Thompson sampling이란 그럼 무엇인가?
Thompson sampling이란?
one of oldest heuristic to address the exploration / exploitation trade-off.

Thompson sampling의 기본 생각은 부분적인 정보를 가지는 입력/행위들에 대해서 실제 모수에 근사한 값을 계산해서 최적해를 찾는 것이다.
이를 위해서 우도 함수(likelihood function, 알고리즘에서 P(θ|D))이 사용된다. 알고리즘은 다음과 같다.

clip_image001

T는 전체 round 횟수.
a는 전체 행위 집합에 속하는 한 액션. a ∈ А.
r은 보상(reward), 즉 결과 값.
D는 과거 관찰 결과, (x, a, r).
x는 행위 당시의 상황(context).
P(r|a, x, θ)는 θ에 기반한 우도 함수.
이전의 분포 P(θ)는 사전에 주어진다. (초기값)

clip_image003는 보상(reward)을 최대화하는 행위 a를 찾는 것이다.

알고리즘을 설명하면 다음과 같다.

1. T번 동안 단계(round)를 돌면서,
2. 주어진 환경(x_t)과 기존 관측 결과(확률)에 기반해서 모든 행위(A)에 대해서 우도함수를 계산하고,
3. 우도함수 결과들 중에서 최대의 기대값을 갖는 행위(a)를 선택하고,
4. 선택된 행위를 수행한다.
5. 행위 선택의 결과를 관측하고
6. 관측된 결과를 기존 관측 결과들과 함께 보존한다.

이때 exploration과 exploitation은 확률에 기반한 우도 함수에 의해서 결정되는 것이다. 만약, 해결해야될 문제가 처음에 이야기한 것처럼 2가지의 경우(성공/실패)를 가지는 multi-armed bandit 문제라면 우도함수로 베타 분포를 사용할 수 있다.
베타 분포를 사용하면, 매우 빠르게 기대치를 계산할 수 있다.

image

K는 총 슬롯머신(행위)의 숫자.
S는 성공 횟수.
F는 실패 횟수.

알고리즘 2에서 베타 분포를 계산할 때, α와 β 형태로 context(환경 값)이 반영되고, Si와 Fi 형태로 기존 확률값이 반영된다. 그리고 베타 분포의 결과 중에서 최대값을 갖는 것을 선택해서 수행하고 결과를 관측한다.
여기서 결과의 보존은 성공 회수와 실패 회수의 합 형태로 보존된다.
모든 행위에 대해서 실제 기대치를 계산할 수 없다고 하더라도 자원소모가 크기 때문에 실제적으로 불가능한 문제의 경우 유사 예측치를 사용해야 한다.
Thompson sampling은 이 유사 예측치로 우도 함수(likelihood)를 사용함으로써 적은 자원으로 빠르게 계산을 할 수 있는 알고리즘이다.
또한 계속적으로(round가 지날 때마다) 예전 확률이 갱신되고 이것을 새로운 단계에서 사용하기 때문에 온라인상의 반응을 적용하기에 좋다.
Thompson sampling은 성능과 정확도 면에서 우수한 편이기에 활용도가 매우 높다.
하지만 우도 함수(likelihood)를 만들고 수학적으로 증명하는 것이 어려운 것이 단점이다.
이항 변수를 가지는 문제(multi-armed bandit)에서는 베타 분포를 사용할 수 있기에, 이항 변수 문제를 가지는 도메인에서는 사용해봄직한 알고리즘이다.

댓글 없음:

댓글 쓰기

태그

2025년 가열재생방식 가치기반 가치기반학습 가치이터레이션 강화학습 강화학습기초이론 강화학습방법 강화학습종류 개나리 개념 개발업무 최적화 건강 건식전극코팅 검사 검사기 검사장비 검사장비 양산라인 투입 절차 검색엔진최적화 검색키워드 검출율 경쟁력 경험재플레이 고체전해질적용 공부방법 공정간 에너지 흐름 공정내 에너지 절감 기술 과검율 관절 구글검색키워드 군마트 극초박형 셀제조 기계학습 기내반입 기대값 기초용어 나스닥 남녀사랑 냉각시스템 네이버 네이버 검색 키워드 분석 단백질 답변거부능력 더 원씽 덕담 동적계획법 듀얼브레인 드로스 딥시크 레이저노칭 문제점 로봇산업 롤투롤 생산공정 리액트히터 리튬산업 마르코프과정 마르코프의사결정 막걸리 말을 잘하는 방법 멀티 스텝 모델링 메모리 메인내용 메주콩 메주콩파종 멧돌호박 모델기반학습 모델종류 모델프리학습 모듈 모바일 몬테카를로 방법 몬테카를로방법 물류 및 공급망 최적화 물성의 성질 미국 오하이오 미국주가 미국주식 미래기술전망 미래전망 미세플라스틱 미중경쟁 밀도범함수이론 반도체 가격 상승 반사율 방수 배터리 배터리 주요불량 배터리공정 배터리기술 배터리불량 배터리소재 배터리신뢰성 배터리와인공지능 배터리정책 배터리제조 배터리제조신기술 백주 뱀때 버거체인 벨만방정식 병역명문가 보조배터리 보조배터리 기내반입 분석솔루션 불량원인분석 비례적분미분제어 비전 비지도학습 사랑 삼성반도체 새피해 새해인사 새해인사말 생각정리 생각정리기술 생마늘 생산계획 생수 생수페트병 설계최적화 설날인사말 설비고장예측 성심당 성심당온라인 구매 성심당추천빵 셀 스웰링 셀스웰링 셀투팩 소매업 소재개발 소프트뱅크 쇠뜨기 수명예측 수요예측 스마트팩토리 스웰링불량 시간차학습 시계열분석 시뮬레이션 신뢰성 액터-크리틱 양배추 양자컴퓨터 어텐션 어텐션메커니즘 에너지 절감 에너지 절감방법 에너지사용최적화 에너지절감 에너지절감방안 에어드라이어 에피소드 기반 학습 엘지전자 영어 영어 리스닝 예제 오버행불량 오버행불량원인 오프폴리시 온누리상품권 온폴리시 용접 워런버핏 원달러 변화패턴 원달러 환율전망 원엔환율 원인 원자간 상호작용 학습 및 예측 웬디스버거 을사 인간피드백을 통한 강화학습 인공지능 인공지능경쟁 인생 일본금리 일본환율 자발적DR 자이가르닉 효과 장마 재고관리 재생시스템 재활용소재활용 저전압 저축 전자분포 전자의 움직임 전자의분포 전자의움직임 전통시장통통 정식방법 정책기반 정책기반 이터레이션 정책기반학습 정책이터레이션 제사상 제습공조설비 제습효율 제조업 제조에너지절감 제품개발 젠슨황 조합최적화 주식 중국공급과잉 중요샘플링 지도학습 지도학습미세조정 지붕방수 지수평활법 창신메모리테크놀로지 책줄거리 청주 최신배터리기술 최신이슈 최적제어 추정 추천빵 코스모스 콜드 스타트 키워드 분석 탁주 통계적 방법 투자 투자가 투자철학 트럼프2.0 트루시니스 파종 패키징공정 페트병 페트병두께 푸른뱀때 품질관리 피엑스 필요기술 필요지식 하이닉스 학습항목 한국반도체 행복 행위적인공지능 현대차 화합물 물성 확률 효능 효율적인 업무방법 휴머노이드로봇 흡착식 에너 드라이어 흡착식에어드라이어 흡착제 힘의교환 Actor Actor-Critic 강화학습 Actor-Critic학습 Agentic AI AI AI기반품질관리 Air Dryer ARIMA AS재고관리 Attention Attention Algorithm Battery Manufacturing Battery Manufaturing Battery Material Books Books for Beginners to Learn About LLM CATL Cell to Pack confusion matrix Critic CTC CTP CXMT DDR5 Deep Learning Deep Seek DeepSeek Demand Response DFT DIO Double DQN DP DPO DQN Dross DSO Dueling DQN dumplings Dynamic Programming ESS ESS솔루션 EV FFC FFC체결여부 검사 garlic genesis Gongi Graph Enhanced RAG Health Horsetail Hot Areas how to speak well Human Feedback importance sampling Kitchen hoods Korean dumplings Korean Rice Cake Soup Korean Traditional Game Large Language Models LLM LSTM Machine Learning Interatomic Potential Mandy Material Development MDP MLIP MMFF94 Multi-step Modeling New Battery Materials NMP Recovery Nuts PCU Physical AI PID제어 ppm PPO Pre Cooling Unit pre training Precooling Unit Prophet Protein Q-Learning Quality Inspection Data Quality Management RAG Raw Garlic RCU React Heater REINFORCE REINFORCE학습 Reinforcement Learning Reliability Return cooling Unit RL RLHF RORL RUL방법 SARIMA SARSA SCM SCM 핵심 재무 지표 SEO SFT SHAP SHAP로직 small kitchen hoods squd Squid Game Stacking TD학습 Temporal Difference Tener Stack Time Difference Learning truthiness Ttakji Tteokguk VAR ventilations for small spaces Vision Water Z-Stacking