분류 전체보기38 How to Train Deep Neural Networks and Prevent Overfitting # Training Deep Neural Networks- 현실에서는 데이터가 너무 크기때문에 전체데이터를 가지고 gredient를 계산하지 못한다. GPU의 메모리로는 한계가 있기때문이다. 대신에 데이터셋을 쪼개서 진행한다.- 예를들면, 데이터셋이 1000개라면 200개씩 나뉘어 로스함수를 여러번 돌려서 파라미터를 업데이트 한다. 이런식으로 데이터를 나누는 과정을 mini-batch라 한다. 데이터의 일부로 하는것이라 정확도가 떨어지지만 일정 수준만 적절하게 샘플링하면 굉장히 효과적으로 잘 작동을 하고 실제로 전체 데이터 통째로 하는 사람은 없다.- Batch 사이즈에 따라 정확도가 달라지는데 사이즈가 일정 수준에서는 무조건 크다고 좋은것은 아니다. 보통 batch 사이즈를 8, 16, 32, 64, .. 2024. 6. 14. Mathematical Background of Backpropagation # Backpropagation을 위한 수학적 배경지식- 변수가 2개일때 모든 변수에 대해서 미분하는것이 아니라 하나의 변수로 미분하는것을 편미분이라고 한다. 미분하고자 하는 변수가 아닌 변수는 상수취급한다. - 3차원에서는 예를들어 f(x,y) = x^2 + y^2일때 (x,y) = (1,1)에서의 미분값은 (2,2)이고 모두 양수이므로 마이너스를 붙여주게되면 x와 y를 마이너스 방향으로 이동하여 이때 f의 값이 줄어들게 된다.- 예를들어, y=x^2에서 x=2일때 미분값이 4인데 여기서 마이너스를 붙여주면 왼쪽으로 움직이도록 만들어주는것이기에 gradient가 작아지게 할 수 있다.- 위 예시처럼 y=ax+b에서 input값인 x = -2, 0, 1을 넣었을때의 타겟값 y = -1, 1, 2가 될때 .. 2024. 6. 12. Regression and Classification # Softmax Classifier와 Logistic Regression- 예측값과 실제값의 차이가 줄어들도록 웨이트를 업데이트하면 된다. 차이가 0일때는 정확한것이기에 차이를 작게 만들기 위해서 제곱을 하는 이유는 다음과 같다. 예측값에서 실제값을 빼서 모두 더할때 음수와 양수를 더하게되면 상쇄되어 실제 차이보다 작게 나오는 문제가 발생하기에 부호를 모두 플러스로 만들기 위해서 하는것이며 절댓값도 사용할 수 있지만 서로의 특성이 약간 다르다. 절댓값과 제곱의 차이는 데이터의 오류의 값을 조절할때 제곱의 차이가 더 커진다. - 만약 제곱을 하여 모두 더한값이 1.3이라면 학습을하면서 이 값이 0으로 가까이 가도록 웨이트들을 계속 업데이트한다. (예측값 - 실제값)의 제곱을 이 task의 목적함수(obj.. 2024. 6. 11. Forward Propagation & 예시 MNIST Classification Model # review- 비선형함수는 선형(직선)이 아닌 모든 함수를 뜻하며 그 중에 활성화 함수가 있는거지만 거의 같은 의미로 사용하고 있다. 하지만 딥러닝에서는 비선형함수 용어가 조금 더 맞는 표현이다. 참고로 선형함수는 linear regression에서 이 데이터는 선하나로 표현이 가능할때 사용한다. - 극단적인 예시로 선형일때는 위 그림에서 w1, w2인 2 layer로 이루어진 연산을 w3인 싱글 레이어로 연산을 해도 결과는 동일하다. 따라서, 선형연산한 후에 활성함수처럼 비선형성을 넣어주면 정확하게 치환이 어렵다. 선형으로만 이루어질경우 아무리 많은 레이어를 쌓더라도 선형연산의 특성상 치환이 되어 하나의 레이어 연산과 큰 차이가 없기에 중간에 비선형성인 활성화 함수를 넣어주면 이 문제는 해결이 된다.. 2024. 6. 11. Perceptron & Multi-layer Perceptron and Neural Network # Perceptron의 이해- 퍼셉트론은 logistic regression과 모양은 거의 비슷하며 선형곱과 합에 어떤 함수를 씌어준거라고 보면 된다.- 예를들면 키, 몸무게, 신발사이즈를 위와같이 logistic regression하는것과 동작방식은 동일하나 logistic function대신에 여러가지의 선택지가 있다.- logistic function대신에 여러가지의 선택지 중 하나가 위 그림처럼 선형 곱과 합의 값을 기준(기준은 0이나 다른값으로 정할 수 있다)으로 1과 0으로 출력하는 step function이 있다. 따라서, 특정조건을 만족하면 활성화와 만족하지 못하면 비활성화되도록 작동한다고하여 활성화 함수(activation function)라고 말한다. - 지금은 step functio.. 2024. 6. 11. Deep Learning Intro # Deep Learning이란?- 원래는 AI분야 안에 머신러닝이 있고 그안에 딥러닝이 있는데 요즘 AI라고 부르는건 대부분 머신러닝을 통칭하며 사용된다. 자동화시키는 그 모든것들이 AI였고, 그 안에서 데이터를 통해 무언가 알고리즘을 배우는것을 머신러닝이라했으며 그 머신러닝 여러 알고리즘 중에 한 분야를 딥러닝이라고 한다.- 딥러닝은 무언가 쌓아올려서 깊게 만드는것을 말한다. 뉴럴네트워크의 특성을 살려서 잘 만들면 그것이 딥러닝이 된다. 뉴럴네트워크는 머신러닝의 일부다. 시초는 사람의 뇌의 뉴런을 본따서 만들었으나 지금은 이부분을 잘 지켜서 활용은 거의 없다.- 사람의 뇌에 있는 뉴런이 서로서로 연결되는 것을 본따서 만들었던것이 뉴럴네트워크인데 지금은 그 의미가 크게 살아있지는 않다. 하지만 뇌과학적.. 2024. 6. 11. 이전 1 2 3 4 ··· 7 다음