1. 인공지능(Artificial Intelligence)
사람처럼 생각하고 계산할 수 있는 시스템
- 강한 인공지능(사람과 같은 지능으로, 마음을 가지고 사람처럼 느끼며 지능적으로 행동하는 기계),
- 약한 인공지능(대부분의 인공지능 접근 방향으로, 특정 문제를 해결하는 지능적 행동)이 있음.
인공지능 > 머신러닝 > 딥러닝
2. 인공신경망(Aritificial Neural Network, ANN)
사람의 신경망 원리와 구조를 모방해 만든 머신러닝(기계학습) 알고리즘
뇌에서 받는 자극=입력 데이터, 임계값=가중치, 뇌의 판단에 따른 행위=출력 데이터
3. 심층신경망(Deep Neural Network, DNN)
입력층과 출력층 사이에 여러 개의 은닉층들로 이루어진 인공신경망(ANN)
복잡한 비선형 관계들을 모델링할 수 있다.
4. 합성곱신경망(Convolutional Neural Network, CNN)
이미지 분석을 위해 사용되는 딥러닝 알고리즘
이미지의 패턴을 분석하는 것
- 채널(Channel): 컬러 사진은 각 픽섹을 R, G, B 세 개의 실수로 나타낸 3차원 데이터. 컬러 사진은 3차원, 흑백 사진은 1차원임.
- 스트라이드(Stride): 스트라이드 값에 따라 필터를 적용하는 윈도우가 이동하는 거리가 달라짐. 스트라이드 값이 1이면 1칸씩 이동
- 필터(Filter): 스트라이드 값에 따라 움직이는 가중치의 집합(윈도우)으로, 이미지의 특징을 추출하는데 사용됨. 컨볼루션 연산을 적용할 필터의 개수 = 입력 피쳐맵의 채널 수, 컨볼루션 연산 적용한 필터의 개수 = 출력 피쳐맵의 채널 수. 필터의 채널 수 = 커널의 개수. "채널=커널" 이라고 생각하면 됨
- 커널사이즈(Kernel Size): 필터의 크기
- 패딩(Padding): 출력 크기가 감소하는 걸 방지하기 위해 사용. 입력 데이터 외각을 0으로 둘러쌈(제로패딩). 일정 간격의 픽셀을 둘러싸서 필터로 인해 출력 데이터의 크기가 1로 되는 문제를 방지하기 위해 사용함.
- 풀링(Pooling): 컨볼루션 레이어의 출력 데이터를 입력으로 받아 크기를 줄이거나 특정 데이터가 이미지 내의 위치 변화에 영향을 덜 받게 함. -> 과적합 방지 위함.
- 맥스 풀링(Max Pooling): 컨볼루션 연산이 적용된 데이터에 스트라이드만큼 윈도우를 이동시켜 가장 큰 값으로만 출력값을 나타냄.
- 평균 풀링(Avrage Pooling): 맥스풀링과 다르게 값들의 평균으로 출력값을 나타냄. ReLU, Softmax, Sigmoid 등이 있음. Softmax는 다중분류, Sigmoid는 이진분류에 주로 사용함.
- 활성화 함수(Activation Function): 선형함수인 컨볼루션에 비선형성을 추가하기 위해 사용
- 플래튼(Flatten): 데이터를 1차원 벡터화시킴. Shape은 (x, 1)이 나옴.
- Fully Connected Layer: 분류 작업을 하는 계층. 플래튼, 활성화함수, 분류를 포함한 계층을 통틀어 일컫는 말.
'딥러닝' 카테고리의 다른 글
아나콘다 설치 (0) | 2024.01.26 |
---|---|
GPU 사용위한 CUDA, cuDNN 설치 (0) | 2024.01.26 |
자연어처리 간단 정리 (1) | 2024.01.10 |