분류 전체보기
-
[PyTorchZerotoAll 내용정리] 05 Linear Regression in pytorch(pytorch Project 개발순서 익히기)ML&DL 이야기/Pytroch 2023. 8. 23. 15:20
Pytorch Project Rhythm pytroch 모델을 개발하고 학습하는 사이클을 크게 위의 3단계를 거친다. 위에 1에 우선시 되는 단계도 있어서(강의에서도 간단히 언급하고 넘어감) 이를 토대로 정리하고 각 코드가 어떻게 대치되는지 확인해보자. 0. Data 다루기 torch.autograd.Variable는 2021.01.12 기준 1.7 version에서는 더 이상 사용되지 않습니다. 현재는 모든 tensor가 자동적으로 Variable의 성질을 가지기 때문에 굳이 사용할 필요가 없으나(즉, autograd 설정이 가능합니다) 과거 버전의 코드를 수행함에 있어 Variable을 사용하는 경우가 있습니다 import torch 이후에 여러 패키지를 import하고, 이후 학습에 필요한 데이터를..
-
[파인만 기법과 개념의 이해] 23.08.22그리고/일상 이야기 및 회고 2023. 8. 22. 03:33
https://www.youtube.com/watch?v=qrpyswoATQ8 1. 알고 싶은 주제를 골라 공부한다. 일단 무엇이든 관심 있는 주제를 골라 그에 대한 조사를 하고 관련 내용을 찾고 공부한다 2. 알게 된 내용을 가르쳐 본다 7살 어린아이, 혹은 비전문가에게 가르친다고 생각하고 알고 있는 것을 정리해서 적어보자. 이때 상상 속의 배우는 아이에게 최대한 일반적인 단어로 설명하려고 하자. 복잡한 용어를 썼을 때 내가 그것을 진정으로 이해하고 사용했는지, 혹은 단순히 해당 단어를 암기한건지 의심해보자. 3. 설명하기 어려운 부분을 골라낸다 설명하기 어려운 부분이 바로 내 지식의 빈틈이다. 해당 빈틈들을 찾아보자. 너무 복잡한 단어, 혹은 전문적인 용어가 있다면 이를 쉽게 문장으로 바꿔보자. 이것..
-
[PyTorchZerotoAll 내용정리] 04 Back propagationML&DL 이야기/Pytroch 2023. 8. 16. 10:10
Why Backpropagation? Neural Network 학습의 최종적인 목표는 Cost를 최소화시키는 Neural Network 내의 모든 Unit의 가중치 W 를 찾는 것이다. 우리가 익히 아는 Gradient Descent Algorithm을 이용해 이를 최적화한다고 하다. 이를 위해서는 간단히 인공지능의 역사를 알아야하는데, 간단하게 말하면, 이전에 우리가 흔히 아는 퍼셉트론(NN의 한 unit)으로 문제를 해결하려고 했지만, 1969년, MIT의 마빈 민스키와 시모어 패퍼트는 저서 에서, 퍼셉트론이 선형 분리가 불가능한 데이터들을 분류할 수 없음을 증명하면서 인공지능의 겨울이 찾아왔다. 해당 저서에서 다층 퍼셉트론으로는 XOR 연산을 할 수 있다고 밝혔지만, ‘지구 상의 그 누구도 이를 ..
-
[PyTorchZerotoAll 내용정리] 03 Gradeint DescentML&DL 이야기/Pytroch 2023. 8. 15. 15:52
우리는 가중치 값에 따라서 에러를 가장 줄이는 w를 찾아보고 싶다. 이를 알기 위해서는 물론 미분을 해서 최적값을 찾아도 되지만, 우리가 앞으로 다룰, 또 대다수의 함수들은 여러가지 변수로 구성되어있기에 이런 방법으로는 최적값을 찾는 것이 불가하다. 그럼으로 적용가능한 알고리즘이 필요한데, 그 이름도 유명한 gradient desecent 알고리즘이다. 이 알고리즘은 산을 타면서 한 step마다 가장 가파른 방향으로 이동한다라고 생각하면 된다. 왜 Gradient 방향이 가장 가파른가? gradient와 방향도함수의 정의를 각각 먼저 살펴보자. Gradient란? f(x,y,z)의 기울기 벡터 또는 gradeint는 다음과 같이 정의된다. $$ \nabla f = \frac{\partial f}{\par..
-
[PyTorchZerotoAll 내용정리] 02 Linear ModelML&DL 이야기/Pytroch 2023. 8. 15. 14:36
Supervised Learning supervised learning이란 지도학습으로 답이 이미 존재하는 labled dataset으로 모델을 훈련시키는 경우를 의미한다. 지도 학습 알고리즘의 일반 유형 지도 학습 알고리즘에는 크게 두 가지 유형이 있다. 1. 분류 기법(Classification techniques) 분류 기법은 입력 데이터를 특정 클래스 또는 그룹의 구성원으로 식별하기 위해 알고리즘에 이산 값을 예측하도록 요청한다. 다음과 같은 알고리즘의 예시가 있다 1.1) 로지스틱 회귀 1.2) 선형 분류 1.3) KNN 알고리즘 1..4) 트리 1.5) SVM 2. 선형 회귀 (Linear regression) 선형 회귀분석은 연속 데이터를 사용한다. 대수학 문제처럼 x의 값을 알고 있다면, ..
-
[PyTorchZerotoAll 내용정리] 01 OverviewML&DL 이야기/Pytroch 2023. 8. 10. 15:23
출처: 본 내용은 아래의 Sung Kim(HKUST)님의 PyTorchZerotoAll의 내용을 기반으로 Pytorch 공식문서의 내용과 함께 정리한 것입니다. 영상: https://youtu.be/SKq-pmkekTk Code: https://github.com/hunkim/PyTorchZero... Slides: http://bit.ly/PyTorchZeroAll What is ML? ML에 관해 알아보기 전에 Human Intelligence에 관해 알아보자. 사람들은 결정을 내릴 때, information(정보)에서 output을 생각해낸다. 예를 들어 점심에 무엇을 먹을지 결정할때(내가 항상 고민하는 거다), 우리는 우리가 무엇을 좋아하는지, 싫어하는지, 오늘 점심 메뉴는 뭔지 등 여러 정보를 ..
-
LSTM(Long short term memory)개발 이야기/TIL 2023. 8. 7. 16:00
LSTM이 나오게 된 배경 RNN의 경우 상태와 현재 상태의 거리가 멀어질 경우 vanishing(exploding) gradient problem(거리가 멀 수록 gradient가 크게 줄어(증가) 학습에 영향을 주지 못하는 상태), 장기 의존성 문제(the problem of Long-Term Dependencies)가 발생하는데 이를 극복하기 위해 hidden state에 cell state를 추가한 구조이다. LSTM Long short term memory, LSTM은 이런 문제를 해결하기 위해 gate 구조를 추가하였다. LSTM 셀에서는 상태(state)가 크게 두 개의 벡터로 나누어집니다. $h_t$를 단기 상태(short-term state), $c_t$를 장기 상태(long-term s..
-
RNN(recurrent neural network)개발 이야기/TIL 2023. 8. 7. 14:13
Transformer: Attention is all you need를 읽기 전에 그 전에 나왔던 NLP 아키텍쳐 구조인 Recurrent Neural Networks(RNN)과 RNN의 일종인 Long Short-Term Memory models(LSTM)에 관해 간단히 리뷰해보려고 한다. First Order System 현재 시간의 상태는 이전 시간의 상태와만 관련이 있다. x: 상태(시세, 날씨, 숫자 등) t: 시간 u: 현재의 입력 이라고 하면 $$ x_t = f(x_{t-1},u_t) $$ 해당 시스템은 어떤 외부 입력 없이(초기조건을 제외하고), 잘 돌아간다, 즉, autonomus system이다 Q) 모든 시간 대 t에서 모든 상태 $ x_t $가 관측 가능한가? 보이지 않는 변수가 있..