Overview
-
Artificial Intelligence (인공지능)
- 인간의 지능을 필요로 하는 작업을 처리할 수 있는 기계를 만드는 연구 분야
-
Machine Learning (머신러닝)
- 컴퓨터가 학습할 수 있도록 하는 알고리즘과 기술을 개발하는 분야
-
Deep Learning (딥러닝)
-
컴퓨터가 학습할 수 있도록 하는 알고리즘(처리 방법)과 기술을 개발하는 분야
-
알고리즘을 이용해 데이터를 분석하고, 분석을 통해 학습하며, 학습한 내용을 기반으로 판단이나 예측
-
[출처] : 혼자 공부하는 머신러닝+딥러닝
-
DNN(Deep Neural Network)
-
입력층(input layer)과 출력층(output layer) 사이에 여러 개의 은닉층(hidden layer)들로 이뤄진 인공신경망
-
컴퓨터가 스스로 분류레이블을 만들어 내고 공간을 왜곡하고 데이터를 구분짓는 과정을 반복하여 최적의 구분선을 도출
-
많은 데이터와 반복학습이 필요하며 사전학습과 오류역전파 기법을 통해 현재 널리 사용
-
[출처] : 혼자 공부하는 머신러닝+딥러닝
-
CNN(Convolutional Neural Network, 합성곱 신경망)
-
사람의 시신경 구조를 모방한 것으로, 데이터를 feature로 추출하여 이 feature들의 패턴을 파악하는 구조
-
Feature Learing Layer와 Classification Layer로 구성
- Feature Learing Layer는 이미지의 특징을 추출하는 역할
- convolution layer
- pooling layer
- activation function
- Classification Layer는 추출된 특징을 바탕으로 이미지를 분류하는 역할
- flatten layer
- fully connected layer
- softmax layer
-
[그림] Convolution Neural Network의 구조
Study Plan
1. CNN (Convolutional Neural Network)
- CNN의 기본적인 구조에 대해 이해
- Convolution Layer
- Pooling Layer
- Fully Connected Layer
- Softmax Layer
- Activation Function의 이해
- ReLU
- Sigmoid
- Tanh
-
Stride, Padding, Filter의 이해
- Backpropagation 알고리즘의 이해
2. C Modeling
- Convolution Layer 알고리즘의 이해
- Convolution 연산의 이해
- MAC(Multiply Accumulate) 연산의 이해
- CNN Model의 구현
- LeNet-5
- AlexNet
- etc..
3. RTL 구현
- … 추후 구체화 예정
4. FPGA 구현
- … 추후 구체화 예정