SlideShare a Scribd company logo
1 of 45
Download to read offline
도정찬
컴퓨터 비전을 위한 합성곱 신경망 설계
Convolution Networks Arcitectures 5
- Others
Michigan Online, Justin Johnson, Computer Vision, 2021. 02. 15
▪ 이번에는 오늘날 다양한 신경망들의 계산 복잡도를 비교해 봅시다. 오른쪽에 보면 아주 잘그려진 그래프가 있는데 x축은 소수점 연
산량이고, y축은 이미지넷 대회에서의 정확도를 그리고 원의 크기는 학습할 파라미터의 수로 우리가 학습한 내용을 한번에 볼수 있게
정말 잘 만들었습니다.
복잡도 비교
▪ 이제 왼쪽을 보면 구글에서 인셉션 v2, v3,v4를 만들었는데 인셉션 v4는 ResNet을 추가시킨거구 여기에 대해서 자세하게는 얘기하진
않을게요.
복잡도 비교
▪ 이번에 오른쪽 그래프에서 VGG를 보면 메모리 사용량도 많고 연산량도 아주 많죠. 그래서 이건 매우 비효율적인 신경망 설계법이라
고 볼수 있겠습니다.
복잡도 비교
▪ 이번에 GoogLeNet은 매우 작고 효율적인 모델이에요 하지만 이후에 나온 신경망들 만큼 성능이 좋지는 않죠.
복잡도 비교
▪ AlexNet은 여기 구석에 있는데, 계산량이 다른 방법들에 비해 많고, 여러 완전 연결 계층들 때문에 많은 파라미터가 필요해요.
복잡도 비교
복잡도 비교
▪ ResNet은 간단하면서도 꽤 효율적인데, 거기다 이 잔류 신경망을 더 깊게 만들수록 정확도가 더 높아지게 되요.
▪ 이제 2016년으로 넘어가면
이미지넷 분류 대회
이미지넷 분류 대회
▪ 2016년 우승자는 그렇게 주목할만한건 없었어요.
이미지넷 2016 우승자 : 모델 앙상블
▪ 2016년 우승자는 모델 앙상블을 사용했어요. 여러분들이 캐글 대회에 참여 해본지는 모르겠지만 최근 몇년간 우승한 아키텍처들은
약간씩 성능이 좋아지기는 했지만 크게 중요한 일은 없었습니다.
향상된 ResNets: ResNeXt
▪ 하지만 최근 몇년간 잔류 신경망을 개선하기위한 노력들이 있어왔는데, 이 병목 잔류 블록이 152 계층의 잔류 신경망을 만드는데 사
용됬었었죠.
향상된 ResNets: ResNeXt
▪ 그럼 하나의 병목 가지만으로도 좋았는데 이걸 병렬로 한다면 어떨까요? 이 아이디어가 잔류 신경망의 다음세대인 ResNeXt에서 사
용됩니다. ResNeXt는 각각의 병목블록이 평행하게 G개 만큼 있어요.
향상된 ResNets: ResNeXt
▪ 한번 각 병렬 병목 블록의 안의 채널 차원을 상수 c라고 합시다. 그러면 이 병렬 병목 블록 전체 FLOP을 계산할 수가 있는데, 모든 평
행 병목 블록의 출력을 계산한 후에 이 출력들을 모두 더 할 거에요.(출력에 관한 내용 : 각 통로의 출력을 계산하여 합치겠다.)
▪이제 이 특이한 다중 통로 디자인의 전체 연산량 비용을 계산할수 있는데, 각각의 병목 블록/가지들의 연산비용은 (8Cc + 9c^2)HW가
되겠죠.
▪ * FLOP 연산 횟수 : 전체 출력 원소의 개수 * 출력 원소 하나당 연산 횟수 = (출력 채널 x H' x W') x (입력 채널 x 커널 크기 x 커널 크기 )
향상된 ResNets: ResNeXt
▪ 여기서 신기한 점은 우린 위의 이차식을 세울수 있는데, 채널의 차원 C와 평행 통로의 개수 G를 지정하여 이차식을 풀면 c의 값을 구
할 수 있고, 이런 G개의 평행 가지 G parallel branches를 가진 다중 통로 multi path 아키텍처를 원래의 병목 구조와 동일한 계산 비용으
로 연산을 할 수 있어요.
향상된 ResNets: ResNeXt
▪ 위 계산 과정을 정리하자면 입력 채널의 개수 C와 평행 통로의 개수 G가 있으면, 원래의 병목 블록에서 하던 만큼 연산량을 각 평행
병목 블록 G개로 병렬로 처리하는 대신 각 통로당 채널의 크기를 원래의 방법(4C -> C)보다 훨씬 줄여 (4C -> c) 실제 소수점 연산은 동일
하다.
▪ 다시 말하면 한줄이 여러 채널을 처리하던걸 여러 줄로 나눠서 처리하는대신 각 줄이 처리할 채널 수를 줄였다.
(원래의 병목 블록) (평행 평목 블록)
17HWC^2 (8Cc + 9c^2)HWG
17C^2 = (8Cc + 9c^2)G
0 = 9Gc^2 + 8GCc - 17C^2
(C=64, G=32의 경우) 위 식은 c = 4로 정리된다
향상된 ResNets: ResNeXt
▪ 이걸 통해서 신경망을 설계할때 채널의 갯수를 조정할 뿐만이 아니라 평행 통로의 개수를 설정할수도 있는걸 배울수 있었습니다. 위
방정식을 풀어서 평행 통로의 개수를 설정하고 계산량을 그대로 유지시킬수도 있었죠.
(원래의 병목 블록) (평행 평목 블록)
17HWC^2 (8Cc + 9c^2)HWG
17C^2 = (8Cc + 9c^2)G
0 = 9Gc^2 + 8GCc - 17C^2
(C=64, G=32의 경우) 위 식은 c = 4로 정리된다
그룹 합성곱
▪ 그리고 이 평행 통로의 개념을 활용한 기법인 그룹 컨볼루션이 있습니다.
그룹 합성곱
그룹 합성곱
그룹 합성곱
파이토치에서의 그룹 합성곱
향상된 ResNets: ResNeXt
▪ 제가 여기에 대해서 자세히 이야기할 시간이 없긴 하지만 ResNeXt의 디자인을 그룹에 대한 축을 추가하는것으로 바꿔서 효율적으로
다중 평행 통로를 처리할수 있도록 만들었습니다.
ResNeXt : 계산량은 그대로 더 많은 그룹!
▪ 이렇게 ResNeXt의 구조가 바뀌었음에도 계산량이 증가하지는 않았지만, 각 블록에서 평행 통로의 개수를 증가 시킬수록 더 좋은 성
능이 나왔습니다. 50 계층 ResNet을 베이스라인모델로 사용했을때 평행 통로의 개수를 증가시켰을때 실제로 정확도가 증가하였으며,
101 계층 ResNet의 평행통로를 증가시켰을떄도 똑같이 성능이 향상되는 추세를 보입니다. 신경망의 계산복잡도가 같음에두요.
▪ 2017년에 있었던 일은
이미지넷 대회
압착-자극 신경망
▪ ResNeXt에다가 압착과 자극 squeeze and excitation을 추가시켰는데 약간 더 성능을 개선 시킬수가 있었습니다.
▪ 2017년 이후에는 이 대회가 종료되어 현재는 캐글에서 관련된 대회가 이뤄지고 있습니다.
이미지넷 대회
▪ 이미지넷 대회가 끝나긴 했지만 사람들은 여전히 더 크고 효과적인 신경망 아키텍처를 설계하려고 시도하고 있습니다. 여러분은 앞
으로 신경망 아키텍처에 대해 강의 들으면서 계산량을 조절하기 위한 방법인 집중적 다운 샘플링 aggressive downsapling을 신경망을
효율적으로 만들고 동작시킬수 있도록 계속 사용할 거에요.
이미지넷 대회
이미지넷 대회
▪ 계산량을 그대로 유지하거나 줄이기 위한 방법으로 신경망 전체에 반복 블록 구조를 만드는 경우도 있는데, 이렇게 하면 모든 계층
의 파라미터를 튜닝할 필요 없이 신경망을 설계 할 수 있겠습니다. 이런 다양한 설계 방법들이 이후 신경망 설계 과정에서 사용되고 있
어요.
밀집 연결 신경망
▪ 이후에 나온 신경망들중 하나로 밀집 연결 신경망(완전 연결 fully connected 신경망과 구분하기 위해 밀집 연결 densely connecte라
함)이 있는데, 이 신경망은 스킵 커낵션, 연결 지름길을 조금 다르게 사용하고 있어요. 잔류 신경망에서는 잔류 블록의 지름길 덕분에
그라디언트가 잘 역전파 될수 있었는데 연결이 많다보니 더 잘 역전파를 할 수 있고,
밀집 연결 신경망
▪ 밀집 연결 신경망에서는 잔류 블록처럼 이전 특징/입력을 더하여 이전 값이 이후 값을 바꾸는게 아니라, 이 지름길로 온 특징을 나
중에 재사용할수 있도록 순차 연결 concatenation 시켜요. 이 밀집 블록을 신경망 전체에 여러 단계에서 반복하구요.
▪ 정리하자면 밀집 연결 신경망의 장점은 1. 그라디언트 소멸을 완화, 2. 특징 전파를 강화, 3. 특징 재사용
모바일넷 : 가벼운 신경망(모바일 기기용)
▪ 최근에 있었던 중요한 추세는 지금까지 우리는 이미지넷 데이터를 가지고 더 높은 정확도를 얻기 위해 아주 많은 파라미터를 가지고
연산을 했었고, FLOP도 줄이려고 했었어요. 하지만 좋은 모델일 수록 매우 정확하고 무거웠죠.
▪ 그래서 정확도는 조금 떨어지더라도, 최소한의 연산으로 모바일 기기나 임베디드 제품에서 동작할 수 있는 가능한 작은 신경망이 필
요하다고 합시다. 매우 효율적으로 동작하는 합성곱 신경망이있기는 한데, 이런 모델들은 정확도는 떨어져 ResNet를 이길수는 없고
대신 계산비용은 매우 적어요. 대표적인 예시로 모바일 넷이 있습니다.
모바일넷 : 가벼운 신경망(모바일 기기용)
▪ 모바일넷도 블록을 반복시켜 만드는데, 왼쪽의 기본적인 3 x 3 합성곱 블록을 보면 합성곱-배치정규화-ReLU순으로 되어있어요. 이
블록의 계산 비용을 구하면 9C^2HW가 되겠죠. 이번에는 이 합성곱 연산을 2개의 합성곱 연산으로 바꿀건데, 하나는 깊이 단위 합성곱
depthwise convolution이에요. 지금 시간이 없다보니 넘어가고,
모바일넷 : 가벼운 신경망(모바일 기기용)
▪ 모바일넷도 블록을 반복시켜 만드는데, 왼쪽의 기본적인 3 x 3 합성곱 블록을 보면 합성곱-배치정규화-ReLU순으로 되어있어요. 이
블록의 계산 비용을 구하면 9C^2HW가 되겠죠. 이번에는 이 합성곱 연산을 2개의 합성곱 연산으로 바꿀건데, 하나는 깊이 단위 합성곱
depthwise convolution이에요. 지금 시간이 없다보니 넘어가고,
▪ 그리고 모바일 기기에서도 돌릴수 있는 효율적인 신경망을 어떻게 설계하기 위한 노력들로 이런 논문들도 있어요. 이런걸 보면 다양
한 신경망 아키텍처를 만든다고 아주 많은 활동들이 있어왔고, 여전히 필요 많은 노력을 필요로 하고 있어요.
모바일넷 : 가벼운 신경망(모바일 기기용)
신경망 아키텍처 탐색
▪ 최근 몇년간 많이 사용되어지고 있는 일이 있는데, 신경망 설계와 신경망 학습 과정이 자동화되고 있어요. 이 내용에 대해서도 시간
이 없다보니 넘어가고 차후 강의에서 자세히 살펴보겠습니다. 기본 개념은 우리가 컨트롤러라고 부르는 한 신경망을 가지고 있다고
할께요. 그리고 이 컨트롤러는 다른 신경망 구조를 출력합니다.
신경망 아키텍처 탐색
▪ 훈련 과정에서는 컨트롤러로부터 만들어낸 여러 아키텍처들을 데이터셋으로 하여, 이 자식 신경망들을 학습 시킵니다. 그리고 이
신경망들이 얼마나 잘 동작하는지를 보고, 컨트롤러 신경망의 그라디언트를 계산하는데 사용해요. 그라디언트를 계산하는데 필요한
매커니즘은 그라디언트 계산 정책은 조금 있다가 얘기하겠습니다.
신경망 아키텍처 탐색
▪ 아무튼 자식 신경망들의 배치를 학습한 후에는 경사를 내려갈수 있도록 컨트롤러에 대해 하나하나 그라디언트를 계산할수 있겠습
니다. 하지만 계산 비용이 엄청 엄청 클거에요. 하지만 시간이 지나면 이 컨트롤러는 좋은 신경망 구조를 찾아넬거에요. 이 신경망 아
키텍처 탐색 방법의 초기 버전은 아이디어는 좋았으나 계산 비용이 정말 크다는 문제가 있었습니다. 컨트롤러의 그라디언트를 계산
하는 한 단계가 이 방법의 초기 버전에서 학습하는데 800GPU를 사용해서 28일이나 걸렸거든요.
신경망 아키텍처 탐색
▪ 그래서 여러분한태 숙제를 줄수 없어 아쉽지만, 여러분이 구글에 있고 GPU를 마음대로 쓸수 있다면 한번 해볼수 있겠죠. 하지만 다
음 연구 덕분에 이 논문은 그냥 농담거리가 되었습니다. 이 논문에서는 필요한 자원량이 매우 많았었지만 다음 논문에서 사용한 아키
텍처 탐색 방법은 이 탐색 시간을 크게 줄였기도 하고, 이후 연구에서 수천배 이상 빨라지다보니 사람들이 자주 이 논문이랑 비교하곤
합니다. 논문 통과하는데 좋은거든요.
▪ 신경망 탐색에 사용할 자원이 충분하다면, 신경망 아키텍처를 효율적으로 찾아낼수 있어요. 이 그래프는 이번 강의에서 지금까지본
다양한 아키텍처들을 정리한건데 x축에는 우리가 봤던 계산비용과 y축에는 이미지넷 데이터셋에서의 정확도가 있습니다. 그리고 서
로 다른 신경망 아키텍처들을 나타내는 점들이 있는데, 빨간 선은 신경망 탐색 방법을 통해 찾은 다음 아키텍처들을 보여주고 있어요.
▪ 정리하면 신경망 아키텍처 탐색 방법으로 다양한 신경망 아키텍처를 학습을 해서 더 정확하고 계신 비용이 적은 모델을 찾아 낼 수
있겠습니다.
신경망 아키텍처 탐색
CNN 아키텍처 정리
▪ 이제 오늘 본 내용들을 정리하자면 초기 합성곱 신경망에 대해서 살펴보았습니다. AlexNet부터 ZFNet, VGG를 보면서 사람들이 정확
도를 높이기 위해 신경망을 더 크게 만들었었고, GoogLeNet은 가장 먼저 효율성을 위주로 한 신경망 모델 중 하나로 계산 비용을 고려
하면서도 높은 정확도도 가질수 있었습니다.
CNN 아키텍처 정리
▪ 잔류 신경망을 보면서 신경망의 크기를 조절하는 방법을 알수 있었는데 덕분에 엄청 큰 신경망을 만들 수 있었고, 배치 정규화를 사
용하여 100층이 넘어가는 신경망을 학습할수 있게 되었습니다. ResNet 이후에는 사람들이 효율성에 더 집중하기 시작하였고, 이 신경
망 모델이 다른 수많은 아키텍처 설계의 기반이 되었습니다.
CNN 아키텍처 정리
▪ ResNet 이후에 나온 다양한 신경망 아키텍처들을 보았고, 더 적은 계산비용으로 정확도가 그대로이거나 더 높도록 하는 가벼운 신
경망인 모바일넷이나 셔플넷같은 모델도 나왔습니다. 그리고 신경망 아키텍처 탐색을 통해서 신경망 설계도 자동화 되는걸 볼수 있
었어요.
어떤 아키텍처를 사용해야할까요?
▪ 마지막 질문은 어떤 아키텍처를 실제로 써야할까요? 제가 조언을 하자면 영웅이 되려고 하지 마세요. 자신 만의 신경망 아키텍처를
만들고자 한다면 아주 힘들거고, 한달 동안 800개의 GPU를 돌리기도 어려울거에요. 여러분들은 이미 나온 신경망 아키텍처를 가지고
여러분의 문제에 적합하게 고치는걸 추천해요.
어떤 아키텍처를 사용해야할까요?
▪ 지금까지 다양한 모델들을 봤지만 ResNet-50이나 ResNet-101이 정말 좋은 베이스라인 모델로 사용할 수 있을거에요. 여러분이 계산
비용 문제를 고려하고 있다면 모바일 넷이나 셔플넷을 사용할수 있을 겁니다. 하지만 되도록이면 스스로 신경망 모델을 설계하려고
하지는 마세요. 다음 시간에는 이런 신경망들을 학습하는데 사용하는 소프트웨어와 하드웨어에 대해서 이야기해봅시다.
감사합니다

More Related Content

What's hot

[컴퓨터비전과 인공지능] 5. 신경망
[컴퓨터비전과 인공지능] 5. 신경망[컴퓨터비전과 인공지능] 5. 신경망
[컴퓨터비전과 인공지능] 5. 신경망jdo
 
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 1
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 1[컴퓨터비전과 인공지능] 7. 합성곱 신경망 1
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 1jdo
 
논문-정규분포변환
논문-정규분포변환논문-정규분포변환
논문-정규분포변환jdo
 
제어-물리적시스템의 수학적모델링
제어-물리적시스템의 수학적모델링제어-물리적시스템의 수학적모델링
제어-물리적시스템의 수학적모델링jdo
 
밑바닥부터 시작하는딥러닝 8장
밑바닥부터 시작하는딥러닝 8장밑바닥부터 시작하는딥러닝 8장
밑바닥부터 시작하는딥러닝 8장Sunggon Song
 
텐서플로우로 배우는 딥러닝
텐서플로우로 배우는 딥러닝텐서플로우로 배우는 딥러닝
텐서플로우로 배우는 딥러닝찬웅 주
 
keras 빨리 훑어보기(intro)
keras 빨리 훑어보기(intro)keras 빨리 훑어보기(intro)
keras 빨리 훑어보기(intro)beom kyun choi
 
딥러닝 기본 원리의 이해
딥러닝 기본 원리의 이해딥러닝 기본 원리의 이해
딥러닝 기본 원리의 이해Hee Won Park
 
A Beginner's guide to understanding Autoencoder
A Beginner's guide to understanding AutoencoderA Beginner's guide to understanding Autoencoder
A Beginner's guide to understanding AutoencoderLee Seungeun
 
랩탑으로 tensorflow 도전하기 - tutorial
랩탑으로 tensorflow 도전하기 - tutorial랩탑으로 tensorflow 도전하기 - tutorial
랩탑으로 tensorflow 도전하기 - tutorialLee Seungeun
 
Denoising auto encoders(d a)
Denoising auto encoders(d a)Denoising auto encoders(d a)
Denoising auto encoders(d a)Tae Young Lee
 
Image Deep Learning 실무적용
Image Deep Learning 실무적용Image Deep Learning 실무적용
Image Deep Learning 실무적용Youngjae Kim
 
합성곱 신경망
합성곱 신경망합성곱 신경망
합성곱 신경망Sunggon Song
 
Chapter 6 Deep feedforward networks - 2
Chapter 6 Deep feedforward networks - 2Chapter 6 Deep feedforward networks - 2
Chapter 6 Deep feedforward networks - 2KyeongUkJang
 
알아두면 쓸데있는 신비한 딥러닝 이야기
알아두면 쓸데있는 신비한 딥러닝 이야기알아두면 쓸데있는 신비한 딥러닝 이야기
알아두면 쓸데있는 신비한 딥러닝 이야기Kwangsik Lee
 
Ai 그까이거
Ai 그까이거Ai 그까이거
Ai 그까이거도형 임
 
인공 신경망 구현에 관한 간단한 설명
인공 신경망 구현에 관한 간단한 설명인공 신경망 구현에 관한 간단한 설명
인공 신경망 구현에 관한 간단한 설명Woonghee Lee
 
Chapter 7 Regularization for deep learning - 3
Chapter 7 Regularization for deep learning - 3Chapter 7 Regularization for deep learning - 3
Chapter 7 Regularization for deep learning - 3KyeongUkJang
 
딥러닝의 기본
딥러닝의 기본딥러닝의 기본
딥러닝의 기본deepseaswjh
 

What's hot (20)

[컴퓨터비전과 인공지능] 5. 신경망
[컴퓨터비전과 인공지능] 5. 신경망[컴퓨터비전과 인공지능] 5. 신경망
[컴퓨터비전과 인공지능] 5. 신경망
 
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 1
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 1[컴퓨터비전과 인공지능] 7. 합성곱 신경망 1
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 1
 
논문-정규분포변환
논문-정규분포변환논문-정규분포변환
논문-정규분포변환
 
제어-물리적시스템의 수학적모델링
제어-물리적시스템의 수학적모델링제어-물리적시스템의 수학적모델링
제어-물리적시스템의 수학적모델링
 
밑바닥부터 시작하는딥러닝 8장
밑바닥부터 시작하는딥러닝 8장밑바닥부터 시작하는딥러닝 8장
밑바닥부터 시작하는딥러닝 8장
 
텐서플로우로 배우는 딥러닝
텐서플로우로 배우는 딥러닝텐서플로우로 배우는 딥러닝
텐서플로우로 배우는 딥러닝
 
keras 빨리 훑어보기(intro)
keras 빨리 훑어보기(intro)keras 빨리 훑어보기(intro)
keras 빨리 훑어보기(intro)
 
딥러닝 기본 원리의 이해
딥러닝 기본 원리의 이해딥러닝 기본 원리의 이해
딥러닝 기본 원리의 이해
 
A Beginner's guide to understanding Autoencoder
A Beginner's guide to understanding AutoencoderA Beginner's guide to understanding Autoencoder
A Beginner's guide to understanding Autoencoder
 
랩탑으로 tensorflow 도전하기 - tutorial
랩탑으로 tensorflow 도전하기 - tutorial랩탑으로 tensorflow 도전하기 - tutorial
랩탑으로 tensorflow 도전하기 - tutorial
 
Denoising auto encoders(d a)
Denoising auto encoders(d a)Denoising auto encoders(d a)
Denoising auto encoders(d a)
 
Image Deep Learning 실무적용
Image Deep Learning 실무적용Image Deep Learning 실무적용
Image Deep Learning 실무적용
 
합성곱 신경망
합성곱 신경망합성곱 신경망
합성곱 신경망
 
Chapter 6 Deep feedforward networks - 2
Chapter 6 Deep feedforward networks - 2Chapter 6 Deep feedforward networks - 2
Chapter 6 Deep feedforward networks - 2
 
알아두면 쓸데있는 신비한 딥러닝 이야기
알아두면 쓸데있는 신비한 딥러닝 이야기알아두면 쓸데있는 신비한 딥러닝 이야기
알아두면 쓸데있는 신비한 딥러닝 이야기
 
Ai 그까이거
Ai 그까이거Ai 그까이거
Ai 그까이거
 
인공 신경망 구현에 관한 간단한 설명
인공 신경망 구현에 관한 간단한 설명인공 신경망 구현에 관한 간단한 설명
인공 신경망 구현에 관한 간단한 설명
 
Chapter 7 Regularization for deep learning - 3
Chapter 7 Regularization for deep learning - 3Chapter 7 Regularization for deep learning - 3
Chapter 7 Regularization for deep learning - 3
 
DL from scratch(1~3)
DL from scratch(1~3)DL from scratch(1~3)
DL from scratch(1~3)
 
딥러닝의 기본
딥러닝의 기본딥러닝의 기본
딥러닝의 기본
 

Similar to [컴퓨터비전과 인공지능] 8. 합성곱 신경망 아키텍처 5 - Others

History of Vision AI
History of Vision AIHistory of Vision AI
History of Vision AITae Young Lee
 
딥러닝 논문읽기 efficient netv2 논문리뷰
딥러닝 논문읽기 efficient netv2  논문리뷰딥러닝 논문읽기 efficient netv2  논문리뷰
딥러닝 논문읽기 efficient netv2 논문리뷰taeseon ryu
 
Exploring Deep Learning Acceleration Technology Embedded in LLMs
Exploring Deep Learning Acceleration Technology Embedded in LLMsExploring Deep Learning Acceleration Technology Embedded in LLMs
Exploring Deep Learning Acceleration Technology Embedded in LLMsTae Young Lee
 
[한국어] Neural Architecture Search with Reinforcement Learning
[한국어] Neural Architecture Search with Reinforcement Learning[한국어] Neural Architecture Search with Reinforcement Learning
[한국어] Neural Architecture Search with Reinforcement LearningKiho Suh
 
CNN Architecture A to Z
CNN Architecture A to ZCNN Architecture A to Z
CNN Architecture A to ZLEE HOSEONG
 
AlexNet, VGG, GoogleNet, Resnet
AlexNet, VGG, GoogleNet, ResnetAlexNet, VGG, GoogleNet, Resnet
AlexNet, VGG, GoogleNet, ResnetJungwon Kim
 
[Paper Review] Visualizing and understanding convolutional networks
[Paper Review] Visualizing and understanding convolutional networks[Paper Review] Visualizing and understanding convolutional networks
[Paper Review] Visualizing and understanding convolutional networksKorea, Sejong University.
 
네트워크 경량화 이모저모 @ 2020 DLD
네트워크 경량화 이모저모 @ 2020 DLD네트워크 경량화 이모저모 @ 2020 DLD
네트워크 경량화 이모저모 @ 2020 DLDKim Junghoon
 
스마트폰 위의 딥러닝
스마트폰 위의 딥러닝스마트폰 위의 딥러닝
스마트폰 위의 딥러닝NAVER Engineering
 
deep encoder, shallow decoder reevaluating non-autoregressive machine transl...
deep encoder, shallow decoder  reevaluating non-autoregressive machine transl...deep encoder, shallow decoder  reevaluating non-autoregressive machine transl...
deep encoder, shallow decoder reevaluating non-autoregressive machine transl...taeseon ryu
 
Deep learningwithkeras ch3_1
Deep learningwithkeras ch3_1Deep learningwithkeras ch3_1
Deep learningwithkeras ch3_1PartPrime
 
"Learning transferable architectures for scalable image recognition" Paper Re...
"Learning transferable architectures for scalable image recognition" Paper Re..."Learning transferable architectures for scalable image recognition" Paper Re...
"Learning transferable architectures for scalable image recognition" Paper Re...LEE HOSEONG
 
순환신경망(Recurrent neural networks) 개요
순환신경망(Recurrent neural networks) 개요순환신경망(Recurrent neural networks) 개요
순환신경망(Recurrent neural networks) 개요Byoung-Hee Kim
 
Xception mhkim
Xception mhkimXception mhkim
Xception mhkimKIMMINHA3
 
딥뉴럴넷 클러스터링 실패기
딥뉴럴넷 클러스터링 실패기딥뉴럴넷 클러스터링 실패기
딥뉴럴넷 클러스터링 실패기Myeongju Kim
 

Similar to [컴퓨터비전과 인공지능] 8. 합성곱 신경망 아키텍처 5 - Others (20)

History of Vision AI
History of Vision AIHistory of Vision AI
History of Vision AI
 
AUTOML
AUTOMLAUTOML
AUTOML
 
Automl
AutomlAutoml
Automl
 
딥러닝 논문읽기 efficient netv2 논문리뷰
딥러닝 논문읽기 efficient netv2  논문리뷰딥러닝 논문읽기 efficient netv2  논문리뷰
딥러닝 논문읽기 efficient netv2 논문리뷰
 
LeNet & GoogLeNet
LeNet & GoogLeNetLeNet & GoogLeNet
LeNet & GoogLeNet
 
HistoryOfCNN
HistoryOfCNNHistoryOfCNN
HistoryOfCNN
 
Exploring Deep Learning Acceleration Technology Embedded in LLMs
Exploring Deep Learning Acceleration Technology Embedded in LLMsExploring Deep Learning Acceleration Technology Embedded in LLMs
Exploring Deep Learning Acceleration Technology Embedded in LLMs
 
[한국어] Neural Architecture Search with Reinforcement Learning
[한국어] Neural Architecture Search with Reinforcement Learning[한국어] Neural Architecture Search with Reinforcement Learning
[한국어] Neural Architecture Search with Reinforcement Learning
 
CNN Architecture A to Z
CNN Architecture A to ZCNN Architecture A to Z
CNN Architecture A to Z
 
AlexNet, VGG, GoogleNet, Resnet
AlexNet, VGG, GoogleNet, ResnetAlexNet, VGG, GoogleNet, Resnet
AlexNet, VGG, GoogleNet, Resnet
 
[Paper Review] Visualizing and understanding convolutional networks
[Paper Review] Visualizing and understanding convolutional networks[Paper Review] Visualizing and understanding convolutional networks
[Paper Review] Visualizing and understanding convolutional networks
 
네트워크 경량화 이모저모 @ 2020 DLD
네트워크 경량화 이모저모 @ 2020 DLD네트워크 경량화 이모저모 @ 2020 DLD
네트워크 경량화 이모저모 @ 2020 DLD
 
스마트폰 위의 딥러닝
스마트폰 위의 딥러닝스마트폰 위의 딥러닝
스마트폰 위의 딥러닝
 
deep encoder, shallow decoder reevaluating non-autoregressive machine transl...
deep encoder, shallow decoder  reevaluating non-autoregressive machine transl...deep encoder, shallow decoder  reevaluating non-autoregressive machine transl...
deep encoder, shallow decoder reevaluating non-autoregressive machine transl...
 
Deep learningwithkeras ch3_1
Deep learningwithkeras ch3_1Deep learningwithkeras ch3_1
Deep learningwithkeras ch3_1
 
"Learning transferable architectures for scalable image recognition" Paper Re...
"Learning transferable architectures for scalable image recognition" Paper Re..."Learning transferable architectures for scalable image recognition" Paper Re...
"Learning transferable architectures for scalable image recognition" Paper Re...
 
순환신경망(Recurrent neural networks) 개요
순환신경망(Recurrent neural networks) 개요순환신경망(Recurrent neural networks) 개요
순환신경망(Recurrent neural networks) 개요
 
Deep learning overview
Deep learning overviewDeep learning overview
Deep learning overview
 
Xception mhkim
Xception mhkimXception mhkim
Xception mhkim
 
딥뉴럴넷 클러스터링 실패기
딥뉴럴넷 클러스터링 실패기딥뉴럴넷 클러스터링 실패기
딥뉴럴넷 클러스터링 실패기
 

More from jdo

[컴퓨터비전과 인공지능] 6. 역전파 1
[컴퓨터비전과 인공지능] 6. 역전파 1[컴퓨터비전과 인공지능] 6. 역전파 1
[컴퓨터비전과 인공지능] 6. 역전파 1jdo
 
[컴퓨터비전과 인공지능] 5. 신경망 2 - 신경망 근사화와 컨벡스 함수
[컴퓨터비전과 인공지능] 5. 신경망 2 - 신경망 근사화와 컨벡스 함수[컴퓨터비전과 인공지능] 5. 신경망 2 - 신경망 근사화와 컨벡스 함수
[컴퓨터비전과 인공지능] 5. 신경망 2 - 신경망 근사화와 컨벡스 함수jdo
 
[리트코드 문제 풀기] 연결 리스트
[리트코드 문제 풀기] 연결 리스트[리트코드 문제 풀기] 연결 리스트
[리트코드 문제 풀기] 연결 리스트jdo
 
[리트코드 문제 풀기] 배열
[리트코드 문제 풀기] 배열[리트코드 문제 풀기] 배열
[리트코드 문제 풀기] 배열jdo
 
[컴퓨터비전과 인공지능] 4. 최적화
[컴퓨터비전과 인공지능] 4. 최적화[컴퓨터비전과 인공지능] 4. 최적화
[컴퓨터비전과 인공지능] 4. 최적화jdo
 
[컴퓨터비전과 인공지능] 3. 선형 분류기 : 손실 함수와 규제
[컴퓨터비전과 인공지능] 3. 선형 분류기 : 손실 함수와 규제[컴퓨터비전과 인공지능] 3. 선형 분류기 : 손실 함수와 규제
[컴퓨터비전과 인공지능] 3. 선형 분류기 : 손실 함수와 규제jdo
 
[컴퓨터비전과 인공지능] 3. 선형 분류 : 선형 분류기 일부
[컴퓨터비전과 인공지능] 3. 선형 분류 : 선형 분류기 일부[컴퓨터비전과 인공지능] 3. 선형 분류 : 선형 분류기 일부
[컴퓨터비전과 인공지능] 3. 선형 분류 : 선형 분류기 일부jdo
 
Titanic kaggle competition
Titanic kaggle competitionTitanic kaggle competition
Titanic kaggle competitionjdo
 
1 2. 직선과 평면에서의 벡터 방정식
1 2. 직선과 평면에서의 벡터 방정식1 2. 직선과 평면에서의 벡터 방정식
1 2. 직선과 평면에서의 벡터 방정식jdo
 
1-1. 공학과 수학에서 벡터/ 내적 직교
1-1. 공학과 수학에서 벡터/ 내적 직교1-1. 공학과 수학에서 벡터/ 내적 직교
1-1. 공학과 수학에서 벡터/ 내적 직교jdo
 
소형 무인 비행체 5장-선형 모델 설계
 소형 무인 비행체 5장-선형 모델 설계 소형 무인 비행체 5장-선형 모델 설계
소형 무인 비행체 5장-선형 모델 설계jdo
 
소형 무인 비행체 4장-힘과 모멘트
소형 무인 비행체 4장-힘과 모멘트소형 무인 비행체 4장-힘과 모멘트
소형 무인 비행체 4장-힘과 모멘트jdo
 
소형 무인 비행체 3장-기구학과 동역학
소형 무인 비행체 3장-기구학과 동역학소형 무인 비행체 3장-기구학과 동역학
소형 무인 비행체 3장-기구학과 동역학jdo
 
소형 무인 비행체 2장-좌표계
소형 무인 비행체 2장-좌표계소형 무인 비행체 2장-좌표계
소형 무인 비행체 2장-좌표계jdo
 
소형 무인 비행기 1장-소개
소형 무인 비행기 1장-소개소형 무인 비행기 1장-소개
소형 무인 비행기 1장-소개jdo
 
소형 무인 비행기-서론
소형 무인 비행기-서론소형 무인 비행기-서론
소형 무인 비행기-서론jdo
 
Improved techniques for grid mapping with rao blackwellized particle filters 번역
Improved techniques for grid mapping with rao blackwellized particle filters 번역Improved techniques for grid mapping with rao blackwellized particle filters 번역
Improved techniques for grid mapping with rao blackwellized particle filters 번역jdo
 
Slam algorithms
Slam algorithmsSlam algorithms
Slam algorithmsjdo
 
영상 기반 SLAM 알고리즘 시험
영상 기반 SLAM 알고리즘 시험영상 기반 SLAM 알고리즘 시험
영상 기반 SLAM 알고리즘 시험jdo
 
논문-특징점 기반 단안 영상 SLAM의 최적화 기법 및 필터링 기법의 성능 연구
논문-특징점 기반 단안 영상 SLAM의 최적화 기법 및 필터링 기법의 성능 연구논문-특징점 기반 단안 영상 SLAM의 최적화 기법 및 필터링 기법의 성능 연구
논문-특징점 기반 단안 영상 SLAM의 최적화 기법 및 필터링 기법의 성능 연구jdo
 

More from jdo (20)

[컴퓨터비전과 인공지능] 6. 역전파 1
[컴퓨터비전과 인공지능] 6. 역전파 1[컴퓨터비전과 인공지능] 6. 역전파 1
[컴퓨터비전과 인공지능] 6. 역전파 1
 
[컴퓨터비전과 인공지능] 5. 신경망 2 - 신경망 근사화와 컨벡스 함수
[컴퓨터비전과 인공지능] 5. 신경망 2 - 신경망 근사화와 컨벡스 함수[컴퓨터비전과 인공지능] 5. 신경망 2 - 신경망 근사화와 컨벡스 함수
[컴퓨터비전과 인공지능] 5. 신경망 2 - 신경망 근사화와 컨벡스 함수
 
[리트코드 문제 풀기] 연결 리스트
[리트코드 문제 풀기] 연결 리스트[리트코드 문제 풀기] 연결 리스트
[리트코드 문제 풀기] 연결 리스트
 
[리트코드 문제 풀기] 배열
[리트코드 문제 풀기] 배열[리트코드 문제 풀기] 배열
[리트코드 문제 풀기] 배열
 
[컴퓨터비전과 인공지능] 4. 최적화
[컴퓨터비전과 인공지능] 4. 최적화[컴퓨터비전과 인공지능] 4. 최적화
[컴퓨터비전과 인공지능] 4. 최적화
 
[컴퓨터비전과 인공지능] 3. 선형 분류기 : 손실 함수와 규제
[컴퓨터비전과 인공지능] 3. 선형 분류기 : 손실 함수와 규제[컴퓨터비전과 인공지능] 3. 선형 분류기 : 손실 함수와 규제
[컴퓨터비전과 인공지능] 3. 선형 분류기 : 손실 함수와 규제
 
[컴퓨터비전과 인공지능] 3. 선형 분류 : 선형 분류기 일부
[컴퓨터비전과 인공지능] 3. 선형 분류 : 선형 분류기 일부[컴퓨터비전과 인공지능] 3. 선형 분류 : 선형 분류기 일부
[컴퓨터비전과 인공지능] 3. 선형 분류 : 선형 분류기 일부
 
Titanic kaggle competition
Titanic kaggle competitionTitanic kaggle competition
Titanic kaggle competition
 
1 2. 직선과 평면에서의 벡터 방정식
1 2. 직선과 평면에서의 벡터 방정식1 2. 직선과 평면에서의 벡터 방정식
1 2. 직선과 평면에서의 벡터 방정식
 
1-1. 공학과 수학에서 벡터/ 내적 직교
1-1. 공학과 수학에서 벡터/ 내적 직교1-1. 공학과 수학에서 벡터/ 내적 직교
1-1. 공학과 수학에서 벡터/ 내적 직교
 
소형 무인 비행체 5장-선형 모델 설계
 소형 무인 비행체 5장-선형 모델 설계 소형 무인 비행체 5장-선형 모델 설계
소형 무인 비행체 5장-선형 모델 설계
 
소형 무인 비행체 4장-힘과 모멘트
소형 무인 비행체 4장-힘과 모멘트소형 무인 비행체 4장-힘과 모멘트
소형 무인 비행체 4장-힘과 모멘트
 
소형 무인 비행체 3장-기구학과 동역학
소형 무인 비행체 3장-기구학과 동역학소형 무인 비행체 3장-기구학과 동역학
소형 무인 비행체 3장-기구학과 동역학
 
소형 무인 비행체 2장-좌표계
소형 무인 비행체 2장-좌표계소형 무인 비행체 2장-좌표계
소형 무인 비행체 2장-좌표계
 
소형 무인 비행기 1장-소개
소형 무인 비행기 1장-소개소형 무인 비행기 1장-소개
소형 무인 비행기 1장-소개
 
소형 무인 비행기-서론
소형 무인 비행기-서론소형 무인 비행기-서론
소형 무인 비행기-서론
 
Improved techniques for grid mapping with rao blackwellized particle filters 번역
Improved techniques for grid mapping with rao blackwellized particle filters 번역Improved techniques for grid mapping with rao blackwellized particle filters 번역
Improved techniques for grid mapping with rao blackwellized particle filters 번역
 
Slam algorithms
Slam algorithmsSlam algorithms
Slam algorithms
 
영상 기반 SLAM 알고리즘 시험
영상 기반 SLAM 알고리즘 시험영상 기반 SLAM 알고리즘 시험
영상 기반 SLAM 알고리즘 시험
 
논문-특징점 기반 단안 영상 SLAM의 최적화 기법 및 필터링 기법의 성능 연구
논문-특징점 기반 단안 영상 SLAM의 최적화 기법 및 필터링 기법의 성능 연구논문-특징점 기반 단안 영상 SLAM의 최적화 기법 및 필터링 기법의 성능 연구
논문-특징점 기반 단안 영상 SLAM의 최적화 기법 및 필터링 기법의 성능 연구
 

Recently uploaded

(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?Jay Park
 
JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!JMP Korea
 
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석JMP Korea
 
데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법JMP Korea
 
공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화JMP Korea
 
JMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement MethodologyJMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement MethodologyJMP Korea
 
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개JMP Korea
 
JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례JMP Korea
 

Recently uploaded (8)

(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
 
JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!
 
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
 
데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법
 
공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화
 
JMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement MethodologyJMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
 
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
 
JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례
 

[컴퓨터비전과 인공지능] 8. 합성곱 신경망 아키텍처 5 - Others

  • 1. 도정찬 컴퓨터 비전을 위한 합성곱 신경망 설계 Convolution Networks Arcitectures 5 - Others Michigan Online, Justin Johnson, Computer Vision, 2021. 02. 15
  • 2. ▪ 이번에는 오늘날 다양한 신경망들의 계산 복잡도를 비교해 봅시다. 오른쪽에 보면 아주 잘그려진 그래프가 있는데 x축은 소수점 연 산량이고, y축은 이미지넷 대회에서의 정확도를 그리고 원의 크기는 학습할 파라미터의 수로 우리가 학습한 내용을 한번에 볼수 있게 정말 잘 만들었습니다. 복잡도 비교
  • 3. ▪ 이제 왼쪽을 보면 구글에서 인셉션 v2, v3,v4를 만들었는데 인셉션 v4는 ResNet을 추가시킨거구 여기에 대해서 자세하게는 얘기하진 않을게요. 복잡도 비교
  • 4. ▪ 이번에 오른쪽 그래프에서 VGG를 보면 메모리 사용량도 많고 연산량도 아주 많죠. 그래서 이건 매우 비효율적인 신경망 설계법이라 고 볼수 있겠습니다. 복잡도 비교
  • 5. ▪ 이번에 GoogLeNet은 매우 작고 효율적인 모델이에요 하지만 이후에 나온 신경망들 만큼 성능이 좋지는 않죠. 복잡도 비교
  • 6. ▪ AlexNet은 여기 구석에 있는데, 계산량이 다른 방법들에 비해 많고, 여러 완전 연결 계층들 때문에 많은 파라미터가 필요해요. 복잡도 비교
  • 7. 복잡도 비교 ▪ ResNet은 간단하면서도 꽤 효율적인데, 거기다 이 잔류 신경망을 더 깊게 만들수록 정확도가 더 높아지게 되요.
  • 8. ▪ 이제 2016년으로 넘어가면 이미지넷 분류 대회
  • 9. 이미지넷 분류 대회 ▪ 2016년 우승자는 그렇게 주목할만한건 없었어요.
  • 10. 이미지넷 2016 우승자 : 모델 앙상블 ▪ 2016년 우승자는 모델 앙상블을 사용했어요. 여러분들이 캐글 대회에 참여 해본지는 모르겠지만 최근 몇년간 우승한 아키텍처들은 약간씩 성능이 좋아지기는 했지만 크게 중요한 일은 없었습니다.
  • 11. 향상된 ResNets: ResNeXt ▪ 하지만 최근 몇년간 잔류 신경망을 개선하기위한 노력들이 있어왔는데, 이 병목 잔류 블록이 152 계층의 잔류 신경망을 만드는데 사 용됬었었죠.
  • 12. 향상된 ResNets: ResNeXt ▪ 그럼 하나의 병목 가지만으로도 좋았는데 이걸 병렬로 한다면 어떨까요? 이 아이디어가 잔류 신경망의 다음세대인 ResNeXt에서 사 용됩니다. ResNeXt는 각각의 병목블록이 평행하게 G개 만큼 있어요.
  • 13. 향상된 ResNets: ResNeXt ▪ 한번 각 병렬 병목 블록의 안의 채널 차원을 상수 c라고 합시다. 그러면 이 병렬 병목 블록 전체 FLOP을 계산할 수가 있는데, 모든 평 행 병목 블록의 출력을 계산한 후에 이 출력들을 모두 더 할 거에요.(출력에 관한 내용 : 각 통로의 출력을 계산하여 합치겠다.) ▪이제 이 특이한 다중 통로 디자인의 전체 연산량 비용을 계산할수 있는데, 각각의 병목 블록/가지들의 연산비용은 (8Cc + 9c^2)HW가 되겠죠. ▪ * FLOP 연산 횟수 : 전체 출력 원소의 개수 * 출력 원소 하나당 연산 횟수 = (출력 채널 x H' x W') x (입력 채널 x 커널 크기 x 커널 크기 )
  • 14. 향상된 ResNets: ResNeXt ▪ 여기서 신기한 점은 우린 위의 이차식을 세울수 있는데, 채널의 차원 C와 평행 통로의 개수 G를 지정하여 이차식을 풀면 c의 값을 구 할 수 있고, 이런 G개의 평행 가지 G parallel branches를 가진 다중 통로 multi path 아키텍처를 원래의 병목 구조와 동일한 계산 비용으 로 연산을 할 수 있어요.
  • 15. 향상된 ResNets: ResNeXt ▪ 위 계산 과정을 정리하자면 입력 채널의 개수 C와 평행 통로의 개수 G가 있으면, 원래의 병목 블록에서 하던 만큼 연산량을 각 평행 병목 블록 G개로 병렬로 처리하는 대신 각 통로당 채널의 크기를 원래의 방법(4C -> C)보다 훨씬 줄여 (4C -> c) 실제 소수점 연산은 동일 하다. ▪ 다시 말하면 한줄이 여러 채널을 처리하던걸 여러 줄로 나눠서 처리하는대신 각 줄이 처리할 채널 수를 줄였다. (원래의 병목 블록) (평행 평목 블록) 17HWC^2 (8Cc + 9c^2)HWG 17C^2 = (8Cc + 9c^2)G 0 = 9Gc^2 + 8GCc - 17C^2 (C=64, G=32의 경우) 위 식은 c = 4로 정리된다
  • 16. 향상된 ResNets: ResNeXt ▪ 이걸 통해서 신경망을 설계할때 채널의 갯수를 조정할 뿐만이 아니라 평행 통로의 개수를 설정할수도 있는걸 배울수 있었습니다. 위 방정식을 풀어서 평행 통로의 개수를 설정하고 계산량을 그대로 유지시킬수도 있었죠. (원래의 병목 블록) (평행 평목 블록) 17HWC^2 (8Cc + 9c^2)HWG 17C^2 = (8Cc + 9c^2)G 0 = 9Gc^2 + 8GCc - 17C^2 (C=64, G=32의 경우) 위 식은 c = 4로 정리된다
  • 17. 그룹 합성곱 ▪ 그리고 이 평행 통로의 개념을 활용한 기법인 그룹 컨볼루션이 있습니다.
  • 22. 향상된 ResNets: ResNeXt ▪ 제가 여기에 대해서 자세히 이야기할 시간이 없긴 하지만 ResNeXt의 디자인을 그룹에 대한 축을 추가하는것으로 바꿔서 효율적으로 다중 평행 통로를 처리할수 있도록 만들었습니다.
  • 23. ResNeXt : 계산량은 그대로 더 많은 그룹! ▪ 이렇게 ResNeXt의 구조가 바뀌었음에도 계산량이 증가하지는 않았지만, 각 블록에서 평행 통로의 개수를 증가 시킬수록 더 좋은 성 능이 나왔습니다. 50 계층 ResNet을 베이스라인모델로 사용했을때 평행 통로의 개수를 증가시켰을때 실제로 정확도가 증가하였으며, 101 계층 ResNet의 평행통로를 증가시켰을떄도 똑같이 성능이 향상되는 추세를 보입니다. 신경망의 계산복잡도가 같음에두요.
  • 24. ▪ 2017년에 있었던 일은 이미지넷 대회
  • 25. 압착-자극 신경망 ▪ ResNeXt에다가 압착과 자극 squeeze and excitation을 추가시켰는데 약간 더 성능을 개선 시킬수가 있었습니다.
  • 26. ▪ 2017년 이후에는 이 대회가 종료되어 현재는 캐글에서 관련된 대회가 이뤄지고 있습니다. 이미지넷 대회
  • 27. ▪ 이미지넷 대회가 끝나긴 했지만 사람들은 여전히 더 크고 효과적인 신경망 아키텍처를 설계하려고 시도하고 있습니다. 여러분은 앞 으로 신경망 아키텍처에 대해 강의 들으면서 계산량을 조절하기 위한 방법인 집중적 다운 샘플링 aggressive downsapling을 신경망을 효율적으로 만들고 동작시킬수 있도록 계속 사용할 거에요. 이미지넷 대회
  • 28. 이미지넷 대회 ▪ 계산량을 그대로 유지하거나 줄이기 위한 방법으로 신경망 전체에 반복 블록 구조를 만드는 경우도 있는데, 이렇게 하면 모든 계층 의 파라미터를 튜닝할 필요 없이 신경망을 설계 할 수 있겠습니다. 이런 다양한 설계 방법들이 이후 신경망 설계 과정에서 사용되고 있 어요.
  • 29. 밀집 연결 신경망 ▪ 이후에 나온 신경망들중 하나로 밀집 연결 신경망(완전 연결 fully connected 신경망과 구분하기 위해 밀집 연결 densely connecte라 함)이 있는데, 이 신경망은 스킵 커낵션, 연결 지름길을 조금 다르게 사용하고 있어요. 잔류 신경망에서는 잔류 블록의 지름길 덕분에 그라디언트가 잘 역전파 될수 있었는데 연결이 많다보니 더 잘 역전파를 할 수 있고,
  • 30. 밀집 연결 신경망 ▪ 밀집 연결 신경망에서는 잔류 블록처럼 이전 특징/입력을 더하여 이전 값이 이후 값을 바꾸는게 아니라, 이 지름길로 온 특징을 나 중에 재사용할수 있도록 순차 연결 concatenation 시켜요. 이 밀집 블록을 신경망 전체에 여러 단계에서 반복하구요. ▪ 정리하자면 밀집 연결 신경망의 장점은 1. 그라디언트 소멸을 완화, 2. 특징 전파를 강화, 3. 특징 재사용
  • 31. 모바일넷 : 가벼운 신경망(모바일 기기용) ▪ 최근에 있었던 중요한 추세는 지금까지 우리는 이미지넷 데이터를 가지고 더 높은 정확도를 얻기 위해 아주 많은 파라미터를 가지고 연산을 했었고, FLOP도 줄이려고 했었어요. 하지만 좋은 모델일 수록 매우 정확하고 무거웠죠. ▪ 그래서 정확도는 조금 떨어지더라도, 최소한의 연산으로 모바일 기기나 임베디드 제품에서 동작할 수 있는 가능한 작은 신경망이 필 요하다고 합시다. 매우 효율적으로 동작하는 합성곱 신경망이있기는 한데, 이런 모델들은 정확도는 떨어져 ResNet를 이길수는 없고 대신 계산비용은 매우 적어요. 대표적인 예시로 모바일 넷이 있습니다.
  • 32. 모바일넷 : 가벼운 신경망(모바일 기기용) ▪ 모바일넷도 블록을 반복시켜 만드는데, 왼쪽의 기본적인 3 x 3 합성곱 블록을 보면 합성곱-배치정규화-ReLU순으로 되어있어요. 이 블록의 계산 비용을 구하면 9C^2HW가 되겠죠. 이번에는 이 합성곱 연산을 2개의 합성곱 연산으로 바꿀건데, 하나는 깊이 단위 합성곱 depthwise convolution이에요. 지금 시간이 없다보니 넘어가고,
  • 33. 모바일넷 : 가벼운 신경망(모바일 기기용) ▪ 모바일넷도 블록을 반복시켜 만드는데, 왼쪽의 기본적인 3 x 3 합성곱 블록을 보면 합성곱-배치정규화-ReLU순으로 되어있어요. 이 블록의 계산 비용을 구하면 9C^2HW가 되겠죠. 이번에는 이 합성곱 연산을 2개의 합성곱 연산으로 바꿀건데, 하나는 깊이 단위 합성곱 depthwise convolution이에요. 지금 시간이 없다보니 넘어가고,
  • 34. ▪ 그리고 모바일 기기에서도 돌릴수 있는 효율적인 신경망을 어떻게 설계하기 위한 노력들로 이런 논문들도 있어요. 이런걸 보면 다양 한 신경망 아키텍처를 만든다고 아주 많은 활동들이 있어왔고, 여전히 필요 많은 노력을 필요로 하고 있어요. 모바일넷 : 가벼운 신경망(모바일 기기용)
  • 35. 신경망 아키텍처 탐색 ▪ 최근 몇년간 많이 사용되어지고 있는 일이 있는데, 신경망 설계와 신경망 학습 과정이 자동화되고 있어요. 이 내용에 대해서도 시간 이 없다보니 넘어가고 차후 강의에서 자세히 살펴보겠습니다. 기본 개념은 우리가 컨트롤러라고 부르는 한 신경망을 가지고 있다고 할께요. 그리고 이 컨트롤러는 다른 신경망 구조를 출력합니다.
  • 36. 신경망 아키텍처 탐색 ▪ 훈련 과정에서는 컨트롤러로부터 만들어낸 여러 아키텍처들을 데이터셋으로 하여, 이 자식 신경망들을 학습 시킵니다. 그리고 이 신경망들이 얼마나 잘 동작하는지를 보고, 컨트롤러 신경망의 그라디언트를 계산하는데 사용해요. 그라디언트를 계산하는데 필요한 매커니즘은 그라디언트 계산 정책은 조금 있다가 얘기하겠습니다.
  • 37. 신경망 아키텍처 탐색 ▪ 아무튼 자식 신경망들의 배치를 학습한 후에는 경사를 내려갈수 있도록 컨트롤러에 대해 하나하나 그라디언트를 계산할수 있겠습 니다. 하지만 계산 비용이 엄청 엄청 클거에요. 하지만 시간이 지나면 이 컨트롤러는 좋은 신경망 구조를 찾아넬거에요. 이 신경망 아 키텍처 탐색 방법의 초기 버전은 아이디어는 좋았으나 계산 비용이 정말 크다는 문제가 있었습니다. 컨트롤러의 그라디언트를 계산 하는 한 단계가 이 방법의 초기 버전에서 학습하는데 800GPU를 사용해서 28일이나 걸렸거든요.
  • 38. 신경망 아키텍처 탐색 ▪ 그래서 여러분한태 숙제를 줄수 없어 아쉽지만, 여러분이 구글에 있고 GPU를 마음대로 쓸수 있다면 한번 해볼수 있겠죠. 하지만 다 음 연구 덕분에 이 논문은 그냥 농담거리가 되었습니다. 이 논문에서는 필요한 자원량이 매우 많았었지만 다음 논문에서 사용한 아키 텍처 탐색 방법은 이 탐색 시간을 크게 줄였기도 하고, 이후 연구에서 수천배 이상 빨라지다보니 사람들이 자주 이 논문이랑 비교하곤 합니다. 논문 통과하는데 좋은거든요.
  • 39. ▪ 신경망 탐색에 사용할 자원이 충분하다면, 신경망 아키텍처를 효율적으로 찾아낼수 있어요. 이 그래프는 이번 강의에서 지금까지본 다양한 아키텍처들을 정리한건데 x축에는 우리가 봤던 계산비용과 y축에는 이미지넷 데이터셋에서의 정확도가 있습니다. 그리고 서 로 다른 신경망 아키텍처들을 나타내는 점들이 있는데, 빨간 선은 신경망 탐색 방법을 통해 찾은 다음 아키텍처들을 보여주고 있어요. ▪ 정리하면 신경망 아키텍처 탐색 방법으로 다양한 신경망 아키텍처를 학습을 해서 더 정확하고 계신 비용이 적은 모델을 찾아 낼 수 있겠습니다. 신경망 아키텍처 탐색
  • 40. CNN 아키텍처 정리 ▪ 이제 오늘 본 내용들을 정리하자면 초기 합성곱 신경망에 대해서 살펴보았습니다. AlexNet부터 ZFNet, VGG를 보면서 사람들이 정확 도를 높이기 위해 신경망을 더 크게 만들었었고, GoogLeNet은 가장 먼저 효율성을 위주로 한 신경망 모델 중 하나로 계산 비용을 고려 하면서도 높은 정확도도 가질수 있었습니다.
  • 41. CNN 아키텍처 정리 ▪ 잔류 신경망을 보면서 신경망의 크기를 조절하는 방법을 알수 있었는데 덕분에 엄청 큰 신경망을 만들 수 있었고, 배치 정규화를 사 용하여 100층이 넘어가는 신경망을 학습할수 있게 되었습니다. ResNet 이후에는 사람들이 효율성에 더 집중하기 시작하였고, 이 신경 망 모델이 다른 수많은 아키텍처 설계의 기반이 되었습니다.
  • 42. CNN 아키텍처 정리 ▪ ResNet 이후에 나온 다양한 신경망 아키텍처들을 보았고, 더 적은 계산비용으로 정확도가 그대로이거나 더 높도록 하는 가벼운 신 경망인 모바일넷이나 셔플넷같은 모델도 나왔습니다. 그리고 신경망 아키텍처 탐색을 통해서 신경망 설계도 자동화 되는걸 볼수 있 었어요.
  • 43. 어떤 아키텍처를 사용해야할까요? ▪ 마지막 질문은 어떤 아키텍처를 실제로 써야할까요? 제가 조언을 하자면 영웅이 되려고 하지 마세요. 자신 만의 신경망 아키텍처를 만들고자 한다면 아주 힘들거고, 한달 동안 800개의 GPU를 돌리기도 어려울거에요. 여러분들은 이미 나온 신경망 아키텍처를 가지고 여러분의 문제에 적합하게 고치는걸 추천해요.
  • 44. 어떤 아키텍처를 사용해야할까요? ▪ 지금까지 다양한 모델들을 봤지만 ResNet-50이나 ResNet-101이 정말 좋은 베이스라인 모델로 사용할 수 있을거에요. 여러분이 계산 비용 문제를 고려하고 있다면 모바일 넷이나 셔플넷을 사용할수 있을 겁니다. 하지만 되도록이면 스스로 신경망 모델을 설계하려고 하지는 마세요. 다음 시간에는 이런 신경망들을 학습하는데 사용하는 소프트웨어와 하드웨어에 대해서 이야기해봅시다.