본문 바로가기
728x90
반응형

전체 글50

[MLOps][딥러닝][실험] Wandb 간단한 사용법 안녕하세요. 오늘은 머신러닝/딥러닝을 하는데 많은 도움이 될 수 있는 Wandb에 대해 간단히 알아보고 실질적으로 제가 사용한 경험을 토대로 간단한 사용법에 대해 얘기해보도록 하겠습니다. 1. wandb란? wandb는 머신러닝/딥러닝 작업을 하는데 다양한 서비스를 제공하는 MLOps 플랫폼입니다. 저는 엔지니어쪽과는 거리가 있어 MLOps라는 단어를 많이 듣기는 했지만 관심을 가지고 알아본 적은 없었습니다. 하지만 저는 이미 wandb를 사용하고 있었고 MLOps도 이미 많이 상용화된 것을 보고 놀랐습니다. 그렇다면 MLOps는 무엇이고 wandb에서 제공하는 서비스는 무엇일까요?? MLOps는 머신러닝 작업 프로세스를 간소화하고 이후 유지관리 및 모니터링을 하는 작업을 도와주는 서비스이며, 협업이 가.. 2022. 12. 12.
가상환경 생성 및 주피터 연동 안녕하세요. 오늘은 가상환경 세팅하는 법에 대해 다뤄보겠습니다. 가상환경이란, 기존의 저희 노트북이나 컴퓨터의 로컬 환경이 아닌 새로운 환경을 말합니다. 머신러닝/딥러닝을 위해 구글코랩을 사용하는 분이 많은데, 구글코랩도 하나의 가상환경이라고 얘기할 수 있습니다. 그렇다면 왜 가상환경을 사용하는 것 일까요? 우리가 머신러닝/딥러닝 코드를 실행할 때, 현재 내 노트북 혹은 컴퓨터 환경에 해당 모듈가 없다면, 에러가 발생합니다. 그리고 보통은 필요한 모듈는 설치하여 코드를 실행합니다. 하지만 매번 다른 작업을 위해 필요한 모듈을 설치하다보면, 이미 설치된 다른 모듈과 버전이나 호환성의 문제로 충돌이 일어나며, 재현을 하는 코드라면 결과도 달라질 수 있습니다. 그리고 주관적으로는 그냥 로컬환경을 좀 깔끔하게 .. 2022. 12. 9.
Transformer 정리 [Transformer] 배경 - 기존의 seq2seq는 context vector에 소스문장 압축 - 병목 현상이 발생 - Attention is all you need -> 기존의 rnn, lstm 등을 사용하지 않고 attention만을 사용한 아키텍처를 사용해보자 아키텍처 인코더 - 입력 :Input Embedding + positional Encoding rnn은 순차적으로 데이터가 입력되어 위치정보가 포함되어있지만, Transformer는 입력이 한번에 들어가기 때문에 위치정보를 따로 지정해줘야함 - Layer : Multi head Attention -> add&Norm -> Feed Forward -> add&Norm - 인코더는 N개의 Layer로 구성 - 각 Layer는 서로 다른 파라.. 2022. 10. 10.
Pretrained Language Model 정리2 [RoBerta] Roberta는 한마디로 Bert를 최적화시킨 모델이라고 할 수 있다. Bert가 under-trained 되었다는 가정하에 크게 네 가지의 변화를 준다. 1. 더 많은 데이터로, 더 긴 시간 , 더 큰 배치사이즈로 학습 2. NSP 제거 3. 긴 input sequence로 일정하게 학습 4. 동적 마스킹 1. Roberta는 Bert에 사용된 데이터보다 더 다양한 도메인의 데이터를 추가하여 더 긴 시간동안 학습했다. 이때 배치사이즈를 더 크게하고, 배치사이즈에 영향을 받는 파라미터들을 변경했다. 2. Bert는 크게 두 가지 학습 체계가 있다. 첫 번째는 MLM, 두 번째는 NSP 이다. 여기서 NSP가 과연 유용한가에 대한 의문을 제기하며 RoBerta에서는 NSP를 제거한다. 따.. 2022. 10. 9.
Pretrained Language Model 정리1 [BERT] Bidirectional Encoder Representations from Transformer -2018, google 방대한 양의 unlabeled data를 pretrained 한 후 여러 downstream task에 fine-tuning을 통해 발표 당시 여러 downstream task에 대해 성능을 개선함 - input 문장과 mask token을 예측하므로 양방향성을 가지는게 특징 model Architecture - base : encoder block(12) , hidden size(768), attention head(12) -> total params : 110M - Large : encoder block(24) , hidden size(1024), attention .. 2022. 9. 28.
Loss Function and Gradient Descent(손실함수와 경사하강법) 1. 손실함수와 경사하강법의 개념 손실함수와 경사하강법은 딥러닝 학습과 최적화의 핵심적인 개념입니다. 예를 들어, 주어진 데이터에 관하여 Y = w*X + b 라는 방정식으로 모델을 만든다고 가정한다면 저희는 데이터를 잘 표현할 수 있는 가중치 w 와 편차 b를 찾는 것이 목표입니다. 그리고 최적의 가중치와 편차(=파라미터)를 찾는 척도가 손실함수가 되며, 최적의 파라미터를 찾는 방법이 경사하강법이 됩니다. 우리는 손실함수를 통해 평균적인 예측값과 실제값의 차이(오차)를 계산하며 오차를 최소화하는 방향으로 모델을 학습시킵니다. 그리고 오차를 최소화하는 방향으로 파라미터를 업데이트하기 위해 경사하강법을 사용합니다. Gradient Descent라는 단어에서도 알 수 있듯이, 기울기를 보면서 파라미터를 업데.. 2022. 5. 27.
728x90
반응형