사람의 키 분포나이가 같은 사람 키의 분포를 그려보면 좌우 대칭인 산 모양이 나온다. 이런 형태를 '종 모양'이라고 한다. 그리고 생성 모델의 목표는 이러한 분포를 수학적으로 표현하는 것이다. 시작은 정규 분포부터세상에는 종 모양의 정규 분포로 표현할 수 있는 대상이 아주 많다. 키 분포처럼 말이다. 그리고 정규 분포의 형태는 평균(\(\mu\))과 표준 편차(\(\sigma\)) 라는 두 매개변수에 의해 결정된다. 최대 가능도 추정정규 분포를 사용해서 어떤 현상을 표현하려면 정규 분포의 매개변수를 조율해서 데이터에 맞추는 작업을 해야 한다. 그 방법이 '최대 가능도 추정'이다. 최대 가능도 추정은 어떤 데이터 x가 관측될 확률 p(x)를 가장 커지게 하는 매개변수를 추정하는 기법이다. 중규 분포의 ..
https://www.anthropic.com/news/constitutional-classifiers(google notebook-lm으로 작성)핵심 요약대규모 언어 모델(LLM)은 모델 안전 장치를 우회하여 유해한 정보를 추출할 수 있는 유니버설 jailbreak 공격에 취약합니다. 이러한 공격에 대응하기 위해 본 연구에서는 헌법 분류기(Constitutional Classifiers)라는 새로운 보호 방법을 제시합니다헌법 분류기는 허용 및 제한된 콘텐츠를 명시하는 자연어 규칙(헌법)을 사용하여 LLM이 생성한 합성 데이터를 기반으로 훈련됩니다. 이러한 헌법은 새로운 위협 모델에 맞춰 유연하게 업데이트할 수 있으며, 방대한 양의 훈련 데이터를 생성할 수 있도록 합니다.본 연구에서는 입력 전용 분류기와..
RLTrader 설계모듈 구조디렉터리 구조클래스 다이어그램환경 모듈 개요환경 모듈(environment.py)에는 환경 클래스(Environment)가 있다. 환경 클래스는 에이전트가 투자할 종목의 차트 데이터를 관리한다. 에이전트가 과거로 돌아가서 투자하며 그 결과에 따라 학습하려는 것이 목적이므로 환경 클래스에 전체 차트 데이터가 있지만, 과거 시점부터 가장 최근 시점까지 순차적으로 데이터를 제공한다. 즉, 과거로 돌아간 에이전트가 미래의 차트 데이터는 알 수 없다.에이전트 모듈 개요에이전트 모듈(agent.py)에는 에이전트 클래스(Agent)가 있다. 에이전트 클래스는 주식을 매수하거나 매도하는 투자자 역할을 하며 초기 자본금, 현금 잔고, 주식 잔고라는 상태가 있다. 현금 잔고와 주식 잔고의 평..
원본: https://blog.quantylab.com/stock_rl_differ.html강화학습은 주로 게임용 인공지능에 적용되어 왔으나, 강화학습이 적용될 수 있는 분야는 무궁무진하다. 이번 장에서는 주식투자에 강화학습을 적용하는 방법에 대해서 알아보자.직관적으로 강화학습 전략 알아보기강화학습으로 무작정 주식투자를 해보고 경험을 쌓아 잘한 경우에 긍정적으로 보상하고 잘못한 경우엔 부정적으로 보상함으로써, 일일이 학습 데이터를 만드는 수고를 없애면서도 효과적으로 주식투자 머신러닝을 수행할 수 있는 전략을 알아보자. 강화학습을 이용한 주식투자 구조주식투자도 어떠한 환경에서 매수(buy), 매도(sell), 관망(hold) 등을 판단하는 문제로서 강화학습을 적용할 수 있다. 주식투자에 강화학습을 적용했을..
엔비디아 주가를 20%나 폭락시킨 중국 DeepSeek-R1 모델을 파헤쳐보고자 한다.DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning Abstract이 논문에서는 DeepSeek(중국 스타트업)의 첫 번째 reasoning model인 DeepSeek-R1-Zero와 DeepSeek-R1을 공개한다. 이 말에서부터 Reasoning이 아닌 다른 타입의 model은 이미 공개 된 상태란 것을 알 수 있다. 특히 R1-Zero는 지도 학습 없이 순수한 강화학습으로만 학습 되었음을 강조하고 있다(ChatGPT류의 시작인 InstructGPT, LLaMa 등은 대부분 지도 학습 이후 강화학습을 이어서 진행하는 방..
* 본 논문 요약은 Notebook LM을 활용하였습니다.전체 요약이 논문은 임베딩 공간을 이해하기 위해 대규모 언어 모델(LLM)을 활용하는 새로운 프레임워크인 ELM(Embedding Language Model)을 제안합니다. ELM은 도메인 임베딩을 LLM에 통합하여 추상적인 벡터를 사람이 이해할 수 있는 설명으로 변환합니다. 이 모델은 어댑터 레이어를 통해 도메인 임베딩 벡터를 LLM의 토큰 임베딩 공간으로 매핑하여 임베딩 데이터에 대한 쿼리 및 탐색을 가능하게 합니다. ELM은 영화 추천 시스템에서 개념 활성화 벡터 개선, 새로운 임베딩 엔티티 설명, 사용자 선호도 해석과 같은 다양한 작업에서 그 유용성을 입증합니다. 실험 결과는 ELM이 테스트 데이터에서 잘 일반화되고, 인간 평가와도 일치하며..
강화학습(reinforcement learning)은 머신러닝의 한 종류로 에이전트(AI 모델)가 어떠한 환경에서 어떠한 행동을 했을 때 그것이 잘 된 행동인지 잘못된 행동인지를 나중에 판단하고 보상(또는 벌칙)을 통해 스스로 학습하게 하는 분야이다.에이전트는 행동을 하고 환경은 행동에 대한 보상을 내린다. 이 보상은 행동 즉시 결정되기보다는 여러 행동을 취한 후에 한꺼번에 결정되는 경우가 많다.강화학습의 기초가 된 마르코프 의사 결정 과정강화학습은 마르코프 의사 결정 과정(Markov decision process, MDP)에 학습의 개념을 넣은 것이라 할 수 있다. 그러므로 MDP를 이해하는 것이 강화학습 시스템 개발에 있어서 가장 중요하고 할 수 있다.마르코프 가정마르코프 가정은 상태가 연속적인 시..
24년 하반기부터 휴직을 하게 되면서, AI 업계의 변화의 흐름을 잠시 떨어져서 바라볼 기회를 얻게 되었다.휴직은 6개월의 짧은 기간이었지만, 돌아보니 OpenAI-O 시리즈, Agent 시대의 개막, 로봇(Phisical) AI의 재조명 등 눈여겨 볼만한 많은 변화가 있었다고 생각하여 그 내용들을 얕고 넓게 정리해보고자 함.OverviewLLMs24년 하반기에도 역시나 많은 Opensource LLM들이 등장하였다. 그 중에서 눈여겨볼 만한 LLM들을 정리하면 다음과 같다.1. QWEN 2.5(10월)알리바바에서 공개한 opensource LLM한국어 포함 29개 언어 지원32K~128K context lengthQWEN 72B 모델은 Llama-3-405B, Mixtral8-22B을 뛰어넘는 성능유료..
이번 장에서는 현대적인 심층 강화 학습으로 한 걸음 더 들어간 알고리즘들을 살펴보자. 또한 심층 강화 학습에서 중요한 연구 사례도 소개한다.심층 강화 학습 알고리즘 분류먼저 가장 큰 분류 기준은 환경 모델(상태 전이 함수, 보상 함수)의 사용 여부이다. 모델 기반 기법은 다시 환경 모델이 주어지는 경우와 학습하는 경우로 나뉜다. 환경 모델이 주어지면 에이전트는 행동 없이 계획(Planning)만으로 문제를 해결할 수 있다. 바둑이나 장기 같은 보드 게임도 환경 모델이 알려져 있기 때문에 이 기법을 사용 가능하다. 환경 모델이 주어지지 않으면 환경에서 얻은 경험을 토대로 환경 모델을 학습하는 방법을 생각해볼 수 있다. 학습한 환경 모델은 계획 수립뿐 아니라 정책의 평가와 개선에도 활용할 수 있다. 현재 활..
이전까지 배운 Q 러닝, SARSA, 몬테카를로 법 등은 크게 보면 가치 기반(value-based method)로 분류된다. 여기서 말하는 '가치'는 행동 가치 함수(Q 함수)나 상태 가치 함수(V)를 뜻한다. 가치 기반 기법은 가치 함수를 모델링하고 가치 함수를 학습한다. 그리고 가치 함수를 경유하여 정책을 얻는다.이번 장에서는 가치 기반 기법과는 다른 '정책 경사법(Policy Gradient)'에 의한 알고리즘에 대해서 알아보고자 한다.가장 간단한 정책 경사법정책 경사법은 경사, 즉 기울기(gradient)를 이용하여 정책을 갱신하는 기법들의 총칭이다. 가장 간단한 알고리즘부터 살펴보자.정책 경사법 도출이번 장에서는 정책을 신경망 모델로 표현한다. 신경망의 매개변수 전체를 \(\theta\)로 표..
이번 장에서 다룰 DQN(Deep Q Network)는 Q 러닝과 신경망을 결합하고 '경험 재생'과 '목표 신경망'을 더한 기법이다.DQN의 핵심 기술Q 러닝에서는 추정치를 사용하여 추정치를 갱신한다(부트스트래핑). 아직 정확하지 않은 추정치를 사용하여 현재의 추정치를 갱신하기 대문에 Q러닝(넓게 보면 TD법)은 불안정해지기 쉽다는 성질이 있다. 여기에 신경망처럼 표현력이 높은 함수 근사화 기법이 더해지면 결과는 더욱 불안정해진다.이런 단점을 극복하기 위해 DQN에서는 '경험 재생'과 '목표 신경망' 기술을 사용한다. 이러한 기술을 통해 DQN은 처름으로 비디오 게임과 같은 복잡한 문제를 성공적으로 풀어내었다.경험 재생2013년 DQN이 발표되기 전까지 신경망으로 강화 학습 문제를 해결한 사례는 거의 없..
지금까지는 상태와 행동의 가짓수가 적은 문제만 다루었으나, 예를 들어 체스판만 해도 배열 패턴이 \(10^{123}\)개나 될 정도로 많다. 이 많은 상태를 테이블로 관리 할 수 없을 뿐더러 일일이 개선할 수는 없다.이번 장에서는 Q 함수를 딥러닝을 통해 통해 근사하고 학습하는 과정을 살펴볼 차례다.Q 러닝과 신경망이번 절의 주제는 Q 러닝과 신경망의 결합이다.Q 함수를 표현하는 신경망Q 함수를 신경망의 입력과 출력으로 규정하기 위해 두 가지 구조를 살펴보자.첫 번째는 상태와 행동이 입력이고 출력이 Q 함수 값이다.두 번째는 상태를 입력 받고 가능한 행동의 개수만큼 Q 함수의 값을 출력하는 신경망이다.첫 번째 구조는 계산 비용 측면에서 문제가 있다. Q 러닝에서는 \(\underset{a}{\operat..
5장에서 배운 몬테카를로법은 에피소드가 종료가 되고 수익이 확정돼야 가치 함수를 갱신할 수 있는 방법이었다. 따라서 에피소드에 끝이 없는 지속적 과제에는 적용하기 힘들다. 또한 일회성 과제라고 해도 완료 시간이 오래 걸리는 에피소드는 가치 함수를 갱신하는데 오랜 시간이 소요되므로 비효율적이다. 에이전트가 초반에는 무작위인 경우가 많기 때문이다.이번 장에서는 환경 모델을 사용하지 않을 뿐 아니라 행동을 한 번 수행할 때마다 가치 함수를 갱신하는 TD(Temporal Difference, 시간차) 법을 설명한다.TD법으로 정책 평가하기TD법은 MC와 DP를 합친 기법이다. 먼저 이 두 방법을 복습해보자.TD법 도출수익과 가치 함수에 대해서 복습해보자.$$\begin{equation} \begin{split}..
Intro4장에서는 동적 프로그래밍으로 최적 가치 함수와 최적 정책을 찾았다. DP를 이용하려면 '환경 모델(상태 전이 확률과 보상 함수)'을 알아야 한다. 하지만 실제로 환경 모델을 알 수 있는 경우는 많지 않다. 혹은 알 수 있더라도 DP 방식으로는 계산량이 너무 많아서 사실상 풀 수 없는 경우가 많다. 이런 상황에서 문제를 풀려면 에이전트가 실제로 행동하여 얻은 경험을 토대로 학습해야 한다.몬테카를로법(monte carlo method, MC)가 바로 그런 방법 중 하나이다. 데이터를 반복적으로 샘플링하여 그 결과를 토대로 추정하는 방법을 일컫는다. 강화 학습에서는 MC를 통해 경험으로부터 가치 함수를 추정할 수 있다. 여기서 말하는 경험이란 환경과 에이전트가 실제로 상호작용하여 얻은 (상태, 행동..
이전 장에서 벨만 방정식에 대해 배웠다. 상태 전이 확률, 보상 함수, 정책이라는 세 가지 정보와 벨만 방정식을 이용하면 가치 함수에 대한 연립 방정식을 얻을 수 있고 이를 풀 수 있다면 가치 함수를 구할 수 있다. 하지만 연립 방정식을 직접 푸는 경우는 간단한 문제에 대해서만 가능하다. 상태와 행동 패턴의 수가 많아지면 감당할 수 없게 된다. 이런 경우에 적용할 수 있는 것이 동적 프로그래밍(Dynamic Programming(DP)) 혹은 동적 계획법이다.동적 프로그래밍과 정책 평가동적 프로그래밍을 활용해서 벨만 방정식을 다시 써보자. 기존 벨만 방정식$$v_\pi(s) = \sum_{a, s'} \pi(a|s) p(s'|s,a) \{r(s,a,s') + \gamma v_\pi(s')\}$$벨만 방정..
만약 환경이 결정적이고 에이전트의 행동도 결정적이라면 백업 다이어그램은 위 그림의 왼쪽처럼 하나의 직선으로 뻗어 있다. 그렇다면 2장에서처럼 수식을 이용해서 상태 가치 함수를 구할 수 있다. 하지만 마르코프 결정 과정에서 환경과 에이전트의 행동이 확률적으로 변한다면 2장의 수식 계산으로는 구할 수 없다.위 그림의 오른쪽과 같은 상황에서도 상태 가치를 구하기 위해 핵심이 되는 벨만 방정식(bellman equation)을 알아보자. 벨만 방정식은 마르코프 결정 과정에서 성립하는 가장 중요한 방정식이다.벨만 방정식 도출앞서 '수익(return')은 다음과 같이 정의했다.$$G_t = R_t + \gamma R_{t+1} + \gamma^2 R_{t+2} + \cdots$$ (3.2)이번 절에서는 보상을 무한..
밴디트 문제에서는 에이전트가 어떤 행동을 취하든 다음에 도전할 문제의 설정은 변하지 않는다. 하지만 현실은 그렇지 않다. 2장에서는 에이전트의 행동에 따라 상태가 변하는 문제를 다룬다. 이러한 문제의 대표적인 예로 마르코프 결정 과정(Markov Decision Process(MDP))가 있다.마르코프 결정 과정(MDP)란?마르코프 결정 과정에서 '결정 과정'이란 '에이전트가 환경과 상호작용하면서 행동을 결정하는 과정'을 의미한다.구체적인 예위와 같이 격자로 구분되어 있고 그 안에 로봇(에이전트)가 있는 '그리드 월드'를 생각해보자. 에이전트는 오른쪽으로 이동하거나 왼쪽으로 이동할 수 있다. 폭탄과 사과는 에이전트가 얻을 수 있는 보상이다. 그림과 같이 에이전트의 행동에 따라 에이전트가 처하는 상황이 달..
사람은 가르치는 선생님이 없어도 스스로 시행착오를 겪으면서 자연스럽게 배우는 것들이 있다. 이것처럼 가르치는 사람 없이도 환경과 상호작용하며 더 나은 해결책을 스스로 학습하는 것을 강화학습이라고한다.이번 장에서 다룰 문제는 강화 학습에서 가장 기본이 되는 '밴디트 문제'이다.머신러닝 분류와 강화 학습머신러닝은 말 그대로 기계를 학습시키는 기법이다. 규칙을 사람이 프로그래밍 하여 알려주는 것이 아니라 컴퓨터가 데이터를 통해서 스스로 찾아 학습하는 것이다. 머신러닝 기법들은 대표적으로 '지도 학습', '비지도 학습', '강화 학습'으로 나뉜다.지도 학습과 비지도 학습지도 학습은 머신러닝에서 가장 전통적인 기법이다. 지도 학습에서는 입력(문제)와 출력(정답)을 쌍으로 묶은 데이터를 사용한다. 지도 학습의 특징..
사전 지식 - 밴딧 모델지금까지 살펴보았던 model-free 계열의 알고리즘은 이전에 누군가가 진행했던 학습 상황을 이용하는 데 상당한 애로 사항이 있는 알고리즘이다. 인공 신경망은 블랙박스와 같기 때문에 필요한 지식을 직접적으로 추출하거나 전달하는 것이 현실적으로 불가능하다. 하지만 알파고는 적절한 사전 지식(고수의 기보)을 이용하고 받아들이는 것에 성공했는데 어떤 알고리즘 덕분이었을까?지금까지 살펴본 강화 학습을 적용할 수 있는 환경에 대해서 생각해보자. 에이전트와 환경이 주어진 에피소드 동안에 계속해서 상호 작용하여 학습이 된다. 하지만 에이전트-환경 간의 피드백이 단 한 번으로 끝나는 에피소드 환경에서는 이야기가 달라진다.위 그림을 보면 에이전트에 상태를 주면 에이전트는 이를 통해 적절한 행동을..