AI
mini-batch SGD
해당 게시물은 "혁펜하임의 AI DEEP DIVE"를 수강하고 작성되었습니다.https://welldonecode.tistory.com/126 SGD (Stochastic Gradient Descent)해당 게시물은 "혁펜하임의 AI DEEP DIVE"를 수강하고 작성되었습니다. 2차식인 loss fuction의 Gradient Descent 과정을 contour plot(등고선 그래프)으로 그려보면 위 그림과 같다. SGD는 데이터 중 임의로welldonecode.tistory.com GD(Gradient Descent)는 방향을 너무 신중하게 (모든 데이터를 전부 고려해서) 결정해서 문제이고, SGD는 데이터를 하나씩만 보기 때문에 너무 성급하게 방향을 결정한다는 문제점이 있다. 이 둘의 절충안이..

SGD (Stochastic Gradient Descent)
해당 게시물은 "혁펜하임의 AI DEEP DIVE"를 수강하고 작성되었습니다. 2차식인 loss fuction의 Gradient Descent 과정을 contour plot(등고선 그래프)으로 그려보면 위 그림과 같다. SGD는 데이터 중 임의로 하나만 뽑아서 loss fucntion을 만드는 과정을 데이터의 개수가 소진될 때 까지 반복한다. (비복원추출)데이터를 다 뽑았다면, 다시 주머니에 전부 넣고 처음부터 이 과정을 반복한다. 데이터 하나만 보고 방향을 빠르게 결정하는 방법이다 (연산 cost가 적다). 해당 방법은 local minimum을 찾는 문제를 해결할 수 있는 가능성이 있다.
가중치 초기화 기법 (Weight Initialization)
해당 게시물은 "혁펜하임의 AI DEEP DIVE"를 수강하고 작성되었습니다.https://welldonecode.tistory.com/124 경사하강법 (Gradient descent)해당 게시물은 "혁펜하임의 AI DEEP DIVE"를 수강하고 작성되었습니다.https://welldonecode.tistory.com/123 선형 회귀 (Linear Regression)해당 게시물은 "혁펜하임의 AI DEEP DIVE"를 수강하고 작성되었습니다.딥러welldonecode.tistory.com 이전 게시물에서 언급했듯이, 경사하강법에서 처음에 a와 b, (weight와 bias)를 임의로 잡고 시작하는데, 이를 초기화 하는 기법에 대해서 설명한다. 1. Lecun 초기화Lecun Uniform Init..
경사하강법 (Gradient descent)
해당 게시물은 "혁펜하임의 AI DEEP DIVE"를 수강하고 작성되었습니다.https://welldonecode.tistory.com/123 선형 회귀 (Linear Regression)해당 게시물은 "혁펜하임의 AI DEEP DIVE"를 수강하고 작성되었습니다.딥러닝을 하다 보면 "회귀"라는 말이 굉장히 많이 사용된다. 회귀란, "입력과 출력 간의 관계를 추정하는 것" 이다. 선형 회welldonecode.tistory.com 지난 게시물에서 loss function을 최소화 하는 weight, bias 즉, a와 b를 경사하강법을 이용하여 찾는다고 했다. 경사 하강법은, 처음 a와 b는 아무렇게나 잡은 뒤, 조금씩 loss를 줄이는 방향으로 나아간다. Gradient는 항상 가장 가파른 방향으로..

선형 회귀 (Linear Regression)
해당 게시물은 "혁펜하임의 AI DEEP DIVE"를 수강하고 작성되었습니다.딥러닝을 하다 보면 "회귀"라는 말이 굉장히 많이 사용된다. 회귀란, "입력과 출력 간의 관계를 추정하는 것" 이다. 선형 회귀는 "입력과 출력 간의 관계를 선형으로 놓고 추정하는 것" 이다. 대표적인 선형 방정식인 에서 는 weight(곱해지는 것, 중요도)이며 는 bias(더해지는 것, 민감도)이다. 이때 weight와 bias 즉, a와 b를 잘 추정한다면 내가 모르는, 새롭게 들어오는 입력 x에 대해서도 적절한 출력을 낼 수 있지 않을까? 하는 것이다. 선형 회귀는 ML에 속하는 지도학습 방법이다. 인공지능과 ML의 경계를 구분하는 것은 데이터 기반인가? 이므로 선형 회귀는 데이터를 기반으로 ..

인공신경망, weight, bias
해당 게시물은 "혁펜하임의 AI DEEP DIVE"를 수강하고 작성되었습니다. 인공 신경망은, 입력 신호에 대해서 weight(중요도)를 곱하고 bias(민감도)를 더한 후 Activation function을 통과해는 것을 반복하는 신경망이다. 이때, DNN (Deep Neural Network)이란, Hidden Layer가 여러 층으로 이루어진 Network이다. 위 사진 처럼 노드끼리 전부 연결되어 있는 층은 Fully-Connected Layer이라고 한다. 마찬가지로 위 사진처럼 모든 layer가 Fully-Connected Layer인 신경망을 multilayer perceptron (MLP)라고 부른다.
강화 학습
해당 게시물은 "혁펜하임의 AI DEEP DIVE"를 수강하고 작성되었습니다.강아지가 배변패드에 용변을 보면 간식을 주고, 배변패드에 용변을 보지 않으면 간식을 주지 않으면, 배변패드에 용변을 보는 행위가 강화되는, 이러한 원리가 강화학습의 원리이다. 대표적인 예로 알파고가 강화학습을 사용한다. 용어를 몇 가지 정리한다. Agent : 강아지Reward : 간식Enviroment : 견주Action : 배변패드에 용변보기State : 현재 강아지가 놓여있는 상황Q-Fuction : -> t시점의 State에서 Action은 몇 점인지?Episode : 시도 : 이 값을 0.1로 준다면, 0.1의 확률로 Q를 믿지 말라는 것.Di..

자기지도 학습
해당 게시물은 "혁펜하임의 AI DEEP DIVE"를 수강하고 작성되었습니다.정답을 알고 있는 데이터가 너무 적을 때 사용할 수 있는 학습 방법이 "자기지도 학습"이다. 자기지도 학습은 원래 풀려고 했던 문제 말고 다른 문제(어느정도 도움을 주는 문제)를 먼저 풀게끔 하는 방식이다. 데이터 안에서 자기 스스로 정답(lable)을 만들기 때문에 자기지도 학습 이라고 명칭한다. 먼저 풀게끔 하는 문제 (pretext task)학습으로 pre training을 시킨다.downstream task를 풀기 위해 pre training 시킨 모델의 출력층을 downstream task에 맞는 출력층으로 바꾸어, 적은 량의 정답을 알고 있는 데이터로 다시 training을 시키면... 내가 원했던 classifica..
지도 학습 vs 비지도 학습
해당 게시물은 "혁펜하임의 AI DEEP DIVE"를 수강하고 작성되었습니다.1.지도 학습정답(lable)을 미리 알고 있는 경우이다. 이 사진은 강아지 사진인데, 이제 사진을 보여줄게. 하고 학습시키는 것이다. 지도 학습의 예시로 회귀(regression)와 분류 (classification)이 있다. 지도 학습을 통해 classification 뿐만 아니라 classification+localizationObject DetectionInstance Segmentation (픽셀별로 해당 픽셀이 무엇인지 분류) (누끼따기)Pose Estimation와 같은 작업을 할 수 있다. 당연하지만, 정답 데이터셋이 반드시 필요하다. 2.비지도 학습정답(lable)을 모르는 경우이다. 비지도 학습은 아래와 ..
CNN, RNN, GAN
해당 게시물은 "혁펜하임의 AI DEEP DIVE"를 수강하고 작성되었습니다.https://welldonecode.tistory.com/117 Artificial Intelligence vs Machine Learning vs Deep Learning해당 게시물은 "혁펜하임의 AI DEEP DIVE"를 수강하고 작성되었습니다. AI와 ML의 차이점은 "데이터를 기반으로 하는지"이다.ML과 DL의 차이는 "Deep Neural Network를 사용하는지"이다. 대표적인 예시는welldonecode.tistory.com이전 게시물에서 Deep Learning의 종류에는 CNN, DNN, GAN이 있다고 했다. 그 내용에 대해 더 자세히 살펴보자. 1.CNN (Convolution Neural Network..