본문 바로가기

분류 전체보기54

전체 인공신경망 code 구현하기 이전에 Forward pass 코드 구현 이후로 역전파 개념과 학습에 필요한 작업들을 포함해서 코드를 작성해보았다. 이전 글은 여기서 볼 수 있고, 오늘은 최종적으로 인공신경망(Linear하게 쌓아올린 모델) 코드를 작성해보았다. 이전에 작성한 코드는 크게 3가지를 구현했고, 오늘은 추가로 4가지를 구현해보려고 한다. weight 초기화 신경망 구조 구성하기 활성화 함수 넣어주기 신경망을 통한 추론하기 loss 계산하기 역전파 구현하기 gradient 업데이트 신경망 학습 기존 code는 우선 여기서 정리해보았고, 추가할 함수는 빈칸으로 놔두었다. 하나씩 채워보려고 한다. #캐글 데이터셋에서 노트북 열기를 했을 때, 나오는 기본 설정 import numpy as np import pandas as pd .. 2023. 9. 22.
[RLHF] Deep Reinforcement Learning from Human Preference 논문 리뷰 오늘은 ChatGPT라는 InstructGPT 모델을 만들 수 있었던 원인 중 하나인 RLHF(Reinforcement Learning by Human Feedback)에 대해서 정리해보려고 한다. 최근 유튜브 보다가 이 개념에 대해서 헷갈려서 정리 차원에서 2번째 논문 리뷰로 정리해보았다. 논문 링크 : https://arxiv.org/pdf/1706.03741.pdf Learned 강화학습의 기본적인 메커니즘에 대해서 이해할 수 있었다. 강화학습, 지도학습, 비지도학습 각자가 따로 발전하기보다는 서로 단점들을 다른 학습들이 활용하면서 발전해가는 것이 보이고 역시나 어떤 데이터를 학습시키고 활용할지가 중요하다는 것을 알 수 있었다. 데이터 Cost 역시도 점차 중요해지고 잇음을 알 수 있어싿. Summ.. 2023. 9. 19.
딥러닝 학습 - parameter와 hyper-parameter 지금까지 실제 모델이 추론 - 학습을 하는데 필요한 전체적인 프로세스를 정리해보았다. 이제 실제 인공신경망 코드를 처음부터 끝까지 완성하기 전에 마지막으로 딥러닝 훈련(Training)에 필요한 옵션들에 대해서 얘기해보려고 한다. 파라미터와 하이퍼 파라미터 지금까지 우리는 인간이 학습하는 것처럼 기계에게 여러 Case들을 보여주고 스스로 기계가 인공신경망의 "가중치"를 배우는 과정을 딥러닝이라고 했다. 이 때 우리가 학습시키려는 대상을 parameter라고 부르곤 했다. 하지만 모델을 학습시키는데 있어서 추가적으로 파라미터가 필요한데 이는 기계가 학습시키는 것이 아니라 인간이 수동으로 설정해줘야하는 지표이다. 우리는 이걸 hyper-parameter라고 하고, 아래는 우리가 지정해줘야하는 하이퍼 파라미터.. 2023. 9. 18.
LoRA: Low-Rank Adaptation of Large Language Models 논문 리뷰 의미있는 논문을 해야하나 어떤 것을 할까 생각하다가, 우선은 최근에 알게 된 논문부터 해보기로 했다. 논문 리뷰 목적은 기본적으로 나중에 내가 다시 영어 논문을 찾아보지 않아도 바로 이 블로그만 봐도 전체적인 내용을 파악할 수 있게 하기 위함이고, 논문별 인사이트, 논문간의 연결점들은 따로 스프레드 시트로 정리하려고 하고 있는데 이건 어떻게 블로그에 공유할 수 있을지는 좀 더 고민해보려고 한다. Learned 최근 LLM 모델들의 대부분은 결국 Cost - Efficiency 문제를 해결하는데 집중하는 것으로 보인다.(Parameter, Computation Cost) LLM을 만드는 기업은 소수의 빅테크 기업이 독점할 것이고, 대부분의 개발자나 회사는 그 모델을 파인튜닝해서 사용할텐데 그 관점에서 다양.. 2023. 9. 16.