전체 글 14

Banilla Policy Gradient를 Pytorch로 구현해 보자

지난 글에서 강화학습의 기본 알고리즘 중 하나인 Multi Armed Bandit을 Pytorch로 구현해 보았다. 이번 시간에는 Policy Gradient를 Pytorch로 구현해볼 예정이다. 밴딧 알고리즘에서 갑자기 Policy + Gradient 라는 새로운 개념이 어려울 수 있지만, 코드를 보면서 천천히 따라가보자. Banilla Policy Gradient 코드 # vanilla policy gradient는 앞의 두 bandit 문제에서 고려한 것을 포함해 총 3가지를 고려해야 함 # 1. 액션 의존성 :MAB에서 사용된 것처럼 각각의 액션이 보상을 가져다 줄 확률은 다름 # 2. 상태 의존성 :MAB와 달리, CB에서 각 액션을 취할 때의 보상은 그 액션을 취할 당시의 상태와 관계가 있음 ..

Multi-Armed Bandit을 Pytorch로 구현해 보자

ChatGPT와 강화학습 ChatGPT는 기존의 GPT-3를 고품질의 데이터로 fine-tune 시킨 뒤, RLHF(Reinforcement Learning from Human Feedback)를 시킨 것이다. ChatGPT가 정확히 어떤 방식으로 학습 시켰는지에 대한 논문은 나와 있지 않으나 거의 유사한 방식으로 학습시켰다고 알려진 InstructGPT의 데이터셋 및 학습 방법에 대한 논문은 있기에, 이를 바탕으로 설명하고자 한다. GPT-3와 InstructGPT가 생성하는 답변의 차이는 다음 예시를 보면 직관적으로 이해할 수 있다. GPT-3가 생성시킨 Output을 보면 Input과 유사한 느낌은 있지만, 사용자가 원하는 Output은 아니다. 반면에 InstructGPT가 생성한 Output을 ..

[밑바닥부터 시작하는 딥러닝 3] 후기

부스트 캠프를 약 6개월 간 진행하며 인공지능 전반에 대해서 배웠다. PyTorch를 활용한 첫 과제가 custom model을 제작하는 것으로 기억이 나는데, 일주일동안 거의 매일 밤 새면서 했었던 기억이 난다. 당시 forward, backward, loss 등 다양한 기능들이 어떻게 동작하는지 정확히 이해도 하지 못한 채 사용하다보니 항상 아쉬움이 남았다. 또 Python에 대한 이해도도 높지 않았는데, PyTorch를 다루며 모델을 만드는 과정 자체가 고역이었던 기억도 있다. 언젠가 딥러닝 기초를 코드로 직접 구현해 보고, 간단하더라도 프레임워크를 직접 구현해 보고 싶다는 생각을 하고 있던 찰나에, [밑바닥부터 시작하는 딥러닝 3] 책 공부 스터디를 알게 되었고, 책을 읽어나가게 되었다. 책의 목..

책 읽기 2023.02.26

글또 8기 시작 : 개발자 글쓰기 모임 참여 후기

글또 8기에 참여하게 되었다. 글또는 개발자 글쓰기 모임으로 현재 기수엔 300명이 넘는 사람들이 참여하고 있다. 주 소통 창구는 슬랙인데, 많은 인원이 모여있는 만큼 다양한 관심사 및 취미에 관련된 채널이 생성됐다. 최근에 바쁜 일이 너무 많이 생겨나서 나는 아직 제대로 소통하고 참여하지는 못했지만, 벌써부터 오프라인 모임을 한 분들도 계셨다. 온라인 상황에서라도 이렇게 다양한 분야에 있는 개발자분들과 소통하고, 이야기 나눌 수 있는 환경이 있다는 게 너무 좋다는 생각이 들었다. 조금 여유가 생기면 슬랙 활동에도 조금 더 열심히 참여해볼 생각이다. 내가 글또 활동을 하면서 얻고자 하는 것은 다음과 같다. 1) 꾸준히 블로그에 글 기록하기 2) 다양한 사람들과 소통하며 견문 넓히기 3) 글쓰기를 좋아하는..

일상·생각 2023.02.12