Artificial Neural Network

monzheld·2022년 2월 22일
0

AIB_4-1) Neural Networks

목록 보기
1/4

🗝 Keyword




Warm-up

  1. 퍼셉트론(Percepron)이란?
    : 인간의 신경세포(뉴런)을 모델링 해 기계를 학습하는 방법 (1958)

  2. XOR 문제? 예시
    : 배타적 논리합 - 기호 학습

ex) 물고기의 사냥
인풋: 통통함(1), 난이도(1_쉬움) => 아웃풋: 사냥개시(0)

사냥감이 통통하고, 난이도도 쉽다면 당연히 사냥개시(1)이겠다고 생각하겠지만 실제로는 미끼일 수 있으니 사냥하면 안됨
=> 이론적으로 당연한 상황에서 실제로는 그렇지 않은 경우가 많음

  1. 퍼셉트론을 어떤 형태로 개선?
    -> 다층 퍼셉트론 - 히든 레이어
    신경망에서 히든 레이어 층을 늘리면 XOR 문제를 포함한 더욱 복잡한 문제까지 해결 가능
    -> 역전파법 - 신경망을 쭉 따라가다가 결과를 본 다음, 다시 뒤로 가면서 가중치를 조절하는 방법

  • 사전 훈련법 (2000 ~ )
    레이어와 뉴런들의 초기값만 잘 잡아준다면 더욱 깊은 신경망 훈련 가능 -> 넘쳐나는 데이터를 이용해 신경망 사전 훈련

인공지능의 종류
  • 약인공지능
    : 사람과 비슷한 수준으로 정보를 조합하고 이해하는 정도 (스스로 규칙을 찾아 문제를 해결할 능력이 있는 정도) - ex) 알파고
  • 강인공지능
    : 사람과 동일하거나 그 이상의 지능 수준을 가진 정도 (자아나 의식이 있을 수도 있는 정도) - ex) 터미네이터의 SKYNET
  • 초인공지능
    : 기계가 모든 면에서 인간의 능력을 초월한 단계

전문용어 없이 듣는 딥러닝의 모든 것




딥러닝의 발전

  • 하드웨어 상향

    • 메모리
    • GPU 연산
  • 빅데이터
    -> 데이터의 양 증가

  • 알고리즘 향상




퍼셉트론(Perceptron)

  • 신경망가장 기본적인 단위 (신경망을 이루는 가장 기본 단위)
    => 신경망은 퍼셉트론을 여러 층으로 쌓아 만듦

  • 다수의 신호를 입력받아 하나의 신호 출력


퍼셉트론의 기본 구조

퍼셉트론의 기본 개념과 학습 규칙, 한계점

  1. 가중치-편향 연산 (= 가중합)
    : 입력된 여러 개의 신호에 각각의 가중치와 곱한 후 그 결과를 더함
    ex) input(입력 신호): [1, 1, 2]
    weight(가중치): [0.2, 0.4, 0.3]
    -> 1 x 0.2 + 1 x 0.4 + 2 x 0.3
    => 1.2
  1. 활성화 함수(Activation function)
    : 계산된 가중합을 얼마 만큼의 신호로 출력할지 결정



활성화 함수

계단 함수(Step function)

계단 함수

  • 가장 간단한 활성화 함수
  • 입력값이 임계값(0)을 넘으면 1, 아니면 0
  • 단점: 임계값 지점에서 미분 불가, 나머지 지점 -> 미분값:0
    => 계단 함수를 활성화 함수로 사용하면 학습이 제대로 이뤄지지 X (신경망이 경사 하강법을 통해 학습하기 위해서는 미분이 필요하기 때문)

시그모이드 함수(Sigmoid function)

시그모이드 함수

  • 전 지점 미분 가능 (미분값도 0이 아님)
    -> 계단 함수처럼 임계값(0)보다 작은 부분은 0, 큰 부분은 1에 가까워지지만 부드럽게 연결되어 있어서 미분이 가능함
  • 단점: 기울기 소실 문제

렐루 함수(ReLU function)

렐루 함수

  • 기울기 소실 문제를 해결하기 위해 등장
  • 입력값이 양의 값 -> 그대로, 음의 값 -> 0
  • 주로 은닉층에서 사용

소프트맥스 함수(Softmax function)

  • 모든 클래스의 값의 합 -> 1
  • 다중 클래스 분류에 용이
    -> 다중 분류 문제에 적용할 수 있도록 시그모이드 함수를 일반화한 활성화 함수
  • 주로 출력층에서 사용




논리 게이트로 본 퍼셉트론

AND

  • 입력 신호 모두 1(True) -> 1

NAND

  • NAND: Not AND (AND와 반대)
  • 입력 신호 모두 0(False) -> 1

OR

  • 입력 신호가 하나라도 1 -> 1

XOR

  • 배타적 논리합
  • 입력 신호가 서로 다를 때 -> 1
  • 퍼셉트론의 한계로 지적




인공 신경망

  • 실제 신경계를 모사해 만들어진 계산 모델
  • ANN (Artificial Neural Networks)
  • 뉴럴넷 (Neural-Net)

딥러닝(Deep Learning)

  • 인공 신경망의 층을 깊게 쌓은 것
  • 은닉층2개 이상

0개의 댓글