0602 - 인공신경망 이론(1)

zln·2022년 6월 2일
0

학습한 내용

머신러닝이란 ?

- Representation learning 은 데이터에서 중요한 특징(Feature)을 알고리즘이 감지하는 것을 의미

실제 서비스에서 사용되는 다양한 신경망

1. 이미지 인식

  • 이미지 처리와 관련된 대부분의 알고리즘은 CNN(Convolution Neural Networks)를 기반으로 함
  • DNN의 경우 망이 깊어질 수록 weights가 많아지며 이는 Computation Power에 큰 영향을 미침
  • CNN은 Convolution 및 Pooling 연산을 반복적으로 수행하여 이미지 좌우 크기의 차원을 축소하고, 3차원 volume을 넓혀가면서 이미지에서 중요한 특징을 추출함 -> 이를 통해 DNN보다 획기적으로 weights를 줄임.

2. 이미지 합성, 이미지 생성

  • Texture가 되는 이미지를 학습하고 여기에 새로운 사진을 입력하여, 두 개의 이미지 패턴이 서로 합성된 새로운 이미지를 만들어냄 -> 이러한 딥러닝 모형: Neural Styler Transfer
  • 이걸 가능하게 해주는 모형이 GAN(Generative Adversarial Networks)
    -> 생성자(Generator)와 판별자(Discriminator)가 서로 경쟁하여 생성자는 자신이 입력받은 데이터와 최대한 유사한 분포를 가진 데이터를 생성하려 하고, 판별자는 생성자가 만든 데이터가 진짜인지 가짜인지 판별
    -> 위의 두 가지 네트워크가 서로 경쟁하여 학습함

3. 자율주행

  • 카메라를 통해 입력된 이미지에서 자율주행에 필요한 정적인 환경정보를 수집하고, 구별함
    -> 정적인 정보: 차선, 표지판, 교통신호, 운전가능도로 등
  • 매우 빠르고 정확한 CNN 모형이 필요, 카메라 정보 뿐 아니라 레이더, LiDAR, 각종 센서들이 감각 기관의 역할 수행
    -> 동적인 정보: 주변 보행자, 차량 등

인공 지능 신경망

퍼셉트론

  • 다수의 입력값을 연산 처리하여 하나의 값을 반환함
  • 인공신경망의 초기 형태

퍼셉트론 동작 방식

  • 각 노드의 입력치 Xn, 가중치 Wn를 곱한 값을 모두 합함
    -> 합한 값을 활성함수로 판단하여 임계치 이상인 경우 1, 그렇지 않으면 0 출력

  • 가중치의 크기는 입력값의 중요도를 나타냄
    -> 해당하는 특징값과 가중치를 곱한 결과를 모두 더하여 output을 구하고 activation function을 적용하여 최종 출력 y = +1 or -1이 됨.

다층 퍼셉트론(Multi Layer Perceptron, MLP)

  • 단층 퍼셉트론: 데이터 입력층(input layer)와 출력층(output layer)만 존재

  • 다층 퍼셉트론: 입력층과 출력층 사이에 하나 이상의 은닉층(hidden layer) 존재

  • 심층 신경망: 입력층과 출력층 사이 여러개의 은닉층으로 구성된 인공신경망(ANN)
    -> 복잡한 문제를 해결하기 위해 다층 퍼셉트론 내의 은닉층 개수가 많아짐(깊어짐)

실습 1 - and, nand, or gate

실습 2 - pytorch로 다충 퍼셉트론 구현, 다충 퍼셉트론을 이용한 xor 게이트 구현

결과 >>

실습 3 - 사이킷런 패키지에서 제공하는 분류용 예제 데이터를 이용한 다충 퍼셉트론으로 손글씨 분류

결과

학습한 내용 중 어려웠던 점 또는 해결못한 것들

딱히 없었다.

해결방법 작성

학습 소감

오늘은 이론 위주의 강의와 쉬운 실습을 해서 어려웠던 것은 없었다.

0개의 댓글