ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [9주차 - Day1] 신경망 기초
    교육/프로그래머스 인공지능 데브코스 2021. 6. 23. 14:14
    728x90

    Deep Learning: 신경망의 기초 - 다층퍼셉트론

    인공신경망 : 오래된 기계 학습 모델

    퍼셉트론(인공두뇌학, cybernetics)->다층 퍼셉트론(결합설, connectionism)->깊은 인공신경망(심층학습, deep learning)

    1. 신경망의 기초

    1.1. 인공신경망과 생물신경망

    사람의 신경망의 핵심적인 단위 : 뉴런(neuron)->두뇌의 가장 작은 정보처리 단위

    뉴런의 구조 : 연산+수신+전송

    뇌의 정보처리(뉴런의 동작)를 모방하여 지능적 행위를 할 수 있는 인공지능(인공 신경망)을 도전->퍼셉트론 고안

    인공신경망의 구조

    1.2. 신경망의 종류

    1. 전방(forward) 신경망/순환(recurrent) 신경망
    2. 얕은(shallow) 신경망/깊은(deep) 신경망
    3.결정론(deterministic)신경망 : 모델의 매개변수와 조건에 의해 출력결정 /확률론적(stochastic)신경망 : 고유의 임의성을 가지고 매개변수, 조건이 같아도 다른 출력을 가짐

    2. 퍼셉트론

    퍼셉트론의 구조 : 절(node), 가중치(weight), 층(layer)

    제시된 퍼셉트론 구조의 학습 알고리즘 제안

    2.1. 구조

    입력->연산->출력

    항상 1이 입력되는 편향(bias)노드가 입력층에 포함이 되는데 그 이유는 입력값(x)*연산(w), 벡터의 내적을 통해 하나의 스칼라값이 나오게 되는데 이 스칼라값이 임계값에 의해 크다 작다가 결정이 되는데 이걸 통해 결정면이 생성됨 임계값이 0에 있으면 편리하니까 0으로 옮기고 싶은데 이걸 해주는 게 bias wx+b를 생각하면 편함

    2.2. 동작

    선형 연산(입력(특징)값과 가중치를 곱하고 모두 더해 s를 구함)->비선형 연산(활성함수 적용)

    ex)2차원 특징 벡터로 표현되는 샘플을 4개 가진 훈련집합 X={x1, x2, x3, x4}, Y={y1,y2,y3,y4}를 생각하자

    ->모든 샘플을 제대로 분류한 것을 알 수 있음 즉, 이 퍼셉트론은 훈련집합을 100%성능으로 분류!

    행렬 표기(matrix vector notation)

    편향(bias)항 추가
    퍼셉트론의 동작

    ex)의 퍼셉트론에 해당하는 결정직선->특징 공간을 두 부분공간으로 이분할하는 분류기 역할을 함

    2.3. 학습

    w가 어떤 값을 가져야 옳게 분류할까?

    일반적인 분류기의 학습 과정

    1. 과업의 정의와 분류과정의 수학적 정의(가설 설정)
    2. 해당 분류기의 목적함수 J(θ) 정의
    3. J(θ)를 최소화하는 θ를 찾기 위한 최적화 방법 수행

    1. 단계1+단계2 : 목적함수 J(θ)정의퍼셉트론의 매개변수를 W라 표기하면 매개변수 집합은 θ={W}로 표기, 목적함수를 J(θ) 또는 J(W)로 표기퍼셉트론 목적함수의 상세 조건

    • J(W)>=0
    • W가 최적이면 즉, 모든 샘플을 맞히면 J(W)=0
    • 틀리는 샘플이 많은 W일수록 J(W)는 큰 값을 가짐

    2. 목적함수 상세 설계

    위 식이 퍼셉트론의 목적함수라고 가정해보고 퍼셉트론 목적함수의 상세 조건을 만족하는 지 살펴보자

    • J(W)>=0? 임의의 샘플이 Y에 속한다면 퍼셉트론의 예측값과 실제값은 부호가 다르므로 목적함수는 항상 양수
    • W가 최적이면 즉, 모든 샘플을 맞히면 J(W)=0? Y가 공집합일때(모든 샘플을 맞췄을 때), J(W)=0
    • 틀리는 샘플이 많은 W일수록 J(W)는 큰 값을 가짐? Y가 클수록(틀린 샘플이 많을수록), J(W)는 큰 값을 가짐

    3. 단계3 : 경사 하강법(gradient descent)

    최소 J(θ) 기울기를 이용하여 반복 탐색하여 극값을 찾음

    경사하강법 예시

    퍼셉트론 목적함수에 경사 하강법을 적용하려고 함

    그러려면 경사도를 계산해야함

    일반화된 가중치 갱신 규칙 θ=θ(현재의 가중치)-ρ(학습률)g(경사)를 적용하기 전 경사도 g부터 계산

    델타 규칙(delta rule) : 퍼셉트론의 학습 방법

    ρ(학습률, learning rate)의 중요성

    • 학습률이 너무 크면 진동함
    • 학습률이 너무 작으면 정확한 값을 가질 수 있으나 오래 걸림

    퍼셉트론 학습 알고리즘(확률론적(stochastic)형태) : 샘플 순서를 섞고 틀린 샘플이 발생하면 즉시 갱신

    퍼셉트론 학습 알고리즘(무리(batch)형태) : 훈련집합의 샘플을 모두 맞출 때까지(Y가 공집합이 될 때까지) 세대(epoch) 반복(3~9번째 줄)

    Deep Learning: 신경망의 기초 - 실습II PT-TF 기본연산

     

    댓글

Designed by Tistory.