2023. 3. 31. 11:40ㆍ_Study/AI
#0331
최적화 방법
Adam : 가장 적합
컨볼루션 신경망
딥러닝에서 가장 성공한 모델
컴퓨터 비전은 인간의 시각 기능 모방: 컴퓨터도 인간처럼
딥러닝 이후 컴퓨터 비전 연구 패러다임 변화: 수작업 규칙 기반 -> 대용량 영상 데이터로 기계 학습
컴퓨터 비전(문제)과 딥러닝(해결 도구)은 상호작용을 통해 공진화
가장 위에 있는 Fully 한 노드에 mapping (모든 픽셀에 가중치)
CNN은 다름
사람의 시간과 비슷하게 구성 : 보고싶은 부분만 보도록
수용장(receptive field) : 작은 영역만 하나의 노드에 넣어준다.
ILSVRC2012 우승한 AlexNet
- 자연 영상을 1000개 class 부류로 분류하는 문제
- 5순위 오류울 15.3%로 우승 (이전 해 대회는 고전적인 컴퓨터비전 기술로 25.8% 우승)
- 이후 대부분 컴퓨터 비전 연구자가 고전적 방법에서 딥러닝으로 전환
컨볼루션 신경망이 순환 신경망 또는 강화 학습과 결합
- 자연 영상 내용을 파악하여 10단어 정도로 설명하는 시스템
- 비디오 게임을 하는 인공지능
컨볼루션 연산
receptive field(파란부분)을 3으로 정함
커널과 곱하고 모두 더함 = - 2+0+9 = 7
한 칸 테두리가 생기는 이유 : 계산할 값이 없다. 따라서 컨볼루션 연산시 가장자리 값은 한칸씩 지워진다.
2차원 컨볼루션
sigma(width-1) sigma(h-1) x * y
퍼셉트론 : 전체적인 배경에 영향을 받음
CNN: 보고싶은 부분만 골라서 가중치를 받기 때문에 더 정확함
특징 맵이 작아지는 문제 해결을 위해서 덧대기 (0값으로 빈칸을 채우는 padding)을 진행함.
따라서 해상도를 유지할 수 있음.
영상 크기를 축소할 수 있는 보폭(보폭을 k로 설정하면 특징 맵은 1/k로 줄어듬)
바이어스 추가
stride : 보폭 : 0번째, 2번째, 값이 중복해서 겹치기 때문에 두 칸에 한 번 계산을 할 수 있음. 따라서 특징맵이 줄어들고 값이 사라짐.
다중 커널을 사용
첫번째 커널은 첫번째 layer에 곱해서 나온다. k -> k' 만큼, 커널 개수 만큼 특징맵이 나온다.
더하기 연산을 하면 하나의 특징맵만 나오기 때문에 줄어든다.
풀링층 pooling layer
모든 detail을 가지고 있을 필요가 없음
대부분의 값이 검정, 흰색인데
resolution 값을 계속 유지해야할까
해상도를 줄일 수 있음
퍼셉트론은 fully connection 이다.
부분연결성 : 컨볼루션층은 중요부분만 찾아서 본다.
마지막 dense layer을 추가해주면 10개의 output만 출력가능
여기서 학습해야할 파라미터는 feature map이 아닌 kernel
커널만 학습하면 된다. 특징맵은 나오는 값이라 계속 바뀐다.
LeNet-5 사례 [LeCun 1998]
- 자기가 만든 Network
- layer가 5개라서 5
padding을 쓰지 않아 계속 해상도가 줄어들고 있다.
pulling layer을 사용하여 반으로 줄어들었다.
1차원으로 변형해서 perceptron 후 output 10개
숫자에 집중하지 말고 예전에는 이런 방법을 사용했다 까지만 알기.
핵심: (컨벌션 레이어 -> 풀링) -> 풀리 커넥트 레이어
파라미터 개수가 이해가 안된다면
컨볼루션 신경망의 학습
손실함수
옵티마이저
딥러닝 (end to end) 통째 학습
: 개발자의 개입없이 알아서 학습함.
사람이 수작업으로 미리 데이터를 만들어 줘서 특징을 추출해줬어야 했었다. (hand-craft)
좋은 feature을 넘겨줘야 분류 정확도가 올라가기 때문에 사람이 수작업으로 했었다.
그와 다르게 딥러닝은 알아서 feature을 만든다.
컨볼루션 신경망의 성능이 월등한 이유
- 통째 학습
- 특징 학습
- 신경망 깊이를 깊게하여 풍부한 특징을 추출 : 수십~수백 층 사용
- 데이터의 원래 구조를 유지한 채 특징 추출
'_Study > AI' 카테고리의 다른 글
[인공지능] chatgpt를 활용한 기계 학습과 인식1 #AI #SVC #SVM #chatgpt (0) | 2023.04.05 |
---|---|
[인공지능] CNN(Convolution neural network)2 #CNN (0) | 2023.04.05 |
[인공지능] Intro to AI, MIT OCW 2021, 머신러닝 모델 3가지 (0) | 2023.04.03 |
[인공지능] 인공지능의 기초 #인공지능 #overview (0) | 2023.04.03 |
딥러닝 학습전략 (0) | 2023.03.29 |