기계학습(4)
-
[밑바닥딥러닝] 7. 경사하강법(gradient descent)
본 게시글은 한빛미디어 『밑바닥부터 시작하는 딥러닝, 사이토 고키, 2020』의 내용을 참조하였음을 밝힙니다. 지금까지 퍼셉트론의 개념을 통해 입력값(input)과 가중치(weigth) 그리고 편향(bias)를 통해 결과를 도출하고, 손실함수를 통해 예측값과 실제(타깃)값과의 괴리를 측청하여 이를 가중치 업데이트에 반영하는 방법을 알아보았다. 이번에는 경사 하강법이라는 개념을 통해 실제로 가중치를 업데이트하는 방법을 알아보도록 하자. 경사하강법(gradient descent) 산에 조난자가 있다고 가정하자. 이 조난자는 눈이 다치는 바람에 앞을 볼 수 없고, 다시 베이스 캠프로 돌아가기 위해 경사를 더듬에서 원래 출발점이 있던 곳으로 내리막길을 따라 내려가야한다. 내려가다보면 내리막을 멈추고 어느 순간 ..
2021.10.01 -
[밑바닥딥러닝] 4. 신경망 구현 - 손글씨 인식
본 게시글은 한빛미디어 『밑바닥부터 시작하는 딥러닝, 사이토 고키, 2020』의 내용을 참조하였음을 밝힙니다. 이번 장에서는 손글씨 이미지를 인식하는 신경망을 구현하여 신경망의 순전파(forward propagation)가 실제로 어떻게 이루어지는지 알아보도록 하자. 출처:https://ko.wikipedia.org/wiki/MNIST_%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4 MNIST 데이터셋은 훈련용 이미지 60000개, 테스트용 이미지 10000개로 이루어진 손글씨 이미지 집합이다. 이미지 하나당 (28, 28)의 크기이며 각 픽셀은 0 ~ 255까지의 값을 취한다. import os import pickle from dataset.mnist..
2021.09.12 -
[밑바닥딥러닝] 1.퍼셉트론
본 게시글은 한빛미디어 『밑바닥부터 시작하는 딥러닝, 사이토 고키, 2020』의 내용을 참조하였음을 밝힙니다. 퍼셉트론 퍼셉트론(Perceptron)의 정의는 다음과 같다. In machine learning, the perceptron is an algorithm for supervised learning of binary classifiers. A binary classifier is a function which can decide whether or not an input, represented by a vector of numbers, belongs to some specific class. It is a type of linear classifier, i.e. a classification a..
2021.09.10 -
4-2. 소프트맥스 회귀(Softmax Regression)
4.1장의 로지스틱 회귀는 양성 클래스/음성 클래스만을 분류하는 이진 분류기였다. 하지만 로지스틱 회귀 역시 다중 클래스를 분류할 수 있는데, 이를 소프트맥스 회귀 혹은 다항 로지스틱 회귀라고 한다. 먼저 샘플 x에 대해서 각 클래스별로 가진 파라미터 행렬을 곱한 뒤, 각 클래스 k에 대한 점수를 계산한다. 이를 소프트맥스 함수에 통과시켜 표준화시킨다. 그렇게 출력된 값이 각 클래스에 속할 확률이다. 크로스 엔트로피 비용함수 소프트맥스 회귀에서 사용하는 비용함수는 이진 분류기의 비용함수를 다항으로 확장한 것과 같다. k번째 클래스에 속할 확률 pk를 낮게 측정했는데(log값이 -∞에 가까운데), 실제 타깃확률인 yk가 1일 경우 비용함수가 매우 커지게 된다. 반대의 경우 역시 마찬가지이다. 크로스 엔트로..
2021.05.02