DL(Deep-Learning)/개념

    활성화 함수 activation function

    활성화 함수 activation function

    신경망모델의 각 layer에서는 input 값과 W(가중치)를 곱하고 b(편향)를 더하는 연산을 통해 a=WX+b를 계산하고 마지막에 활성화 함수를 거쳐 h(a)를 출력한다. 이렇게 각 layer마다 활성화 함수를 거쳐 출력하는 이유가 무엇일까? XOR문제 - 선형분류기의 한계 인공신경망에 대한 연구가 한계를 맞게된 첫 과제는 바로 XOR문제였다. 아래 그림에서 확인할 수 있듯이 기존의 퍼셉트론은 AND와 OR문제는 해결할 수 있었지만 선형 분류기라는 한계에 의해 XOR과 같은 non-linear한 문제는 해결할 수 없었다. 그리고 이를 해결하기 위해 나온 개념이 hidden layer이다. 그러나 이 hidden layer도 무작정 쌓기만 한다고 해서 퍼셉트론을 선형분류기에서 비선형분류기로 바꿀 수 있..

    [실습] numpy로 만드는 단층 신경망  -  회귀 문제

    [실습] numpy로 만드는 단층 신경망 - 회귀 문제

    Tensorflow 없이 numpy를 이용해서 단층 신경망을 만들어 보자. 우라는 Abalone 데이터를 가지고 전복의 나이를 예측하는 신경망을 구축해 볼 예정이다. 데이터 셋은 Kaggle에 있는 Abalone Dataset 에서 받아서 사용 할 수 있다. ✔︎ 데이터 살펴보기 import pandas as pd df = pd.read_csv('data/abalone.csv') df.head() ◼ 변수 설명 독립변수는 Sex ~ Shell weight 까지 8개로 구성되어 있고, 종속변수는 Rings 이다. 데이터는 총 4177개로 준비되어 있다. 📌 단층 신경망을 만들기 위한 설계도 우리는 위의 설계도 순서대로 함수를 하나하나 만들어 볼 것이다. 1. 모듈 불러오기 import numpy as np..

    [DL] 오차 역전파 Error Backpropagation

    [DL] 오차 역전파 Error Backpropagation

    순전파 (Feedforward) Input에서 Output으로 가중치를 업데이트하면서 활성화 함수를 통해서 결과값을 가져오는 것을 순전파(foward)라고 한다. 역전파 (Backpropagation) 역전파 알고리즘은 input과 output 값을 알고 있는 상태에서 신경망을 학습 시키는 방법이다. 역전파 방법은 결과 값을 통해서 다시 역으로 input 방향으로 오차를 다시 보내며 가중치를 재업데이트 하는 것이다. 결과에 영향을 많이 미친 노드(뉴런)에 더 많은 오차를 돌려준다. 계산 그래프 (computational graph) 계산 그래프(computational graph)는 계산 과정을 그래프로 나타낸 것 그래프는 복수의 노드 node 와 에지 edge 로 표현된다. 문제 현빈 군은 슈퍼에서 사..

    [DL] 신경망 Neural Network

    [DL] 신경망 Neural Network

    신경망 학습 학습이란 학습 데이터로부터 가중치 매개변수의 최적값을 자동으로 찾는것을 말한다. ✔︎ 훈련 데이터와 시험 데이터 데이터를 훈련 데이터(training data)와 테스트 데이터(test data)로 나눠 학습과 테스트를 진행한다. 먼저, 훈련 데이터만 사용하여 학습하면서 최적의 파라미터(가중치, 편향)를 찾는다. 그런 다음 테스트 데이터를 이용하여 훈련된 모델의 성능을 평가한다. 과적합을 방지하기 위해 전체 데이터를 학습데이터, 검증데이터, 테스트데이터로 나누며 보통 비율은 5:3:2로 정한다. 학습데이터(training data) : 모형 f를 추정하는데 필요함 검증데이터(validation data) : 추정한 모형 f가 적합한지 검증함 테스트데이터(testing data) : 최종적으로..