【Python/기계 학습】왜 Deep Learning #1 퍼셉트론·뉴럴 네트워크

소개



기계 학습 엔지니어가되기 위해 학습 기록을 남깁니다. 콘스턴트에 쓴다.

이번에는 딥 러닝의 기본이 되는 퍼셉트론과 신경망을 설명해 나간다.

주의



이 기사는 '제로부터 만드는 딥 러닝'(저 : 사이토 야스히로 씨)을 읽으면서 학습해 온 메모이다.
내용을 삼키지 않고 질리기까지 참고 정도로 읽어 주셨으면 한다. (지적·질문은 대환영입니다. 단, 상냥한 말에 한한다.)
링크 : 처음부터 만드는 Deep Learning

목차



・퍼셉트론이란
· 신경망이란?

이 기사의



퍼셉트론이란?



복수의 입력에 대해 하나의 출력을 반환하는 알고리즘입니다.
논리 회로의 AND·OR·NAND와 같은 것이다.
신경망에 기초한 딥 러닝은이 알고리즘을 기반으로 만들어졌습니다.


# 入力数2のAND回路をパーセプトロンで書く
def AND(x1,x2,bias=0.5):
    tmp = w1*x1 +w2*x2 - bias
    if tmp <= 0:
        return 0
    elif tmp > 0:
        return 1   

출력에 영향을주는 변수는 입력 값, 가중치, 바이어스입니다. 이것들을 파라미터라고 부른다.
신경망은 파라미터를 조정하여 학습한다.

신경망이란?




그림을 보면 다층 퍼셉트론과 다르지 않은 것처럼 보입니다.
하지만 퍼셉트론과 큰 차이가 있다.

비선형 활성화 함수 사용



활성화 함수란?



입력 신호 (입력 값, 바이어스 및 가중치)의 합은 임계 값을 경계로 출력 값을 변경합니다. (발화)
퍼셉트론도 아무것도 변하지 않는 활성화 함수를 가지고 있지만,
신경망에서는 분류 문제나 회귀 문제에 따라 활성화 함수의 종류도 달라진다.

왜 활성화 함수가 필요한가?



활성화 함수가 있으면 더 많은 다양한 값을 출력 할 수 있습니다.
입력 값, 가중치, 바이어스를 조정할뿐만 아니라 함수를 변경하여 출력 값을 변경할 수 있습니다.

비선형 함수



분류 문제·회귀 문제일지라도, 밀어 넣으면 기계 학습의 목적은, 정밀도를 좋게 하는 것이다.
이를 위해 가중치와 바이어스를 조정하면서 매개 변수를 최적의 값을 찾아야합니다.
그 미세 조정은 선형 함수로 해결할 수 없습니다. (조금 값을 바꾸는 것만으로 크게 바뀌어 버리기 때문에)
비선형 함수를 사용하여이를 해결할 수 있습니다.

좋은 웹페이지 즐겨찾기