컴퓨터과학과

컴퓨터과학과 학생 게시판

[일반]
🕰️ 2021.10.20 07:57
CNN
조회 수 57 추천 수 0 댓글 0

단축키

Prev이전 문서

Next다음 문서

convolution (컨볼루션 연산, 합성곱신경망), Filter, Max pooling, Fully Connected Layer
=> CNN(convolution neural network)

CNN 모델 중 VGG 모델 많이 사용

PC에서는 Dot product과정이 Convolution Operation이지만,
모바일에선 Convolution Operation이 아니라 Matrix Multiplication으로 변환해서 수행

#GEMM기반의 매트릭스 연산을 Convolution 연산으로 바꿔서 푼 이유가
   GEMM이 굉장히 빠르고 좋다는 가정 하에 했지만 모바일에서는 그리 좋지 않음. 
     => 합성곱이 아닌 다른게 필요함.
#메모리 운영이 병목되는 상황에서 여러번 카피하여 새로운 매트릭스에 들어가는 것은 효율적이지 않음
    => 여러번 읽어야하며, 이는 실행 속도에 큰 영향을 줌

# 연속된 이미지의 경우에는 크게 변하지 않는 경우가 많은데, 그런 경우 프레임 간의 중복이 많아짐.
    => 크게 바뀌지 않는 이미지에서도 Deep Neural Network(DNN)를 해야하기 때문
        =>이를 해결하기 위한 기술들이 많이 등장하고 있으니 알아보자.

ex)
    
Mobile GPU-Aware Processing
{Convolution operations directly on input     //GEMM을 거치지 않고, 직접 컨볼루션 수행
- No matrix building overhead
- Less memory consumption

FFT-based convolution approximation        //FFT를 기반으로 기존과 근사하게 하여 가속화하는 기술

Leverage local memory (high performaance cache inside GPU)        //로컬캐쉬를 활용하여 연산을 빠르게 함
- Store reusable convolutional kernels inside the local memory
- It will be shared across multiple threads

Use half floating point (32bits -> 16bit)        // 수의 표현 정확도를 32bit에서 16bit로 줄임으로서 연산을 가속시킴
}


Convolution Caching    
- 2개의 연이은 이미지가 있을때, 컨볼루션 섬이 비슷하면 기존의 컨볼루션 이미지 재활용
- 다르면 그 부분만 컨볼루션 연산 수행


Matrix Decomposition
- 하나의 큰 매트릭스 연산을 여러개의 작은 매트릭스 연산으로 나눠서 수행하면 훨씬 더 빠른 속도로 가속화 가능
- 정확도의 저하가 생김

결론

딥러닝 기술의 많은 연구에 경우 정확도가 중요한 경우가 많지만,
다른 요소로 시스템에 잠재된 문제, 파워소모 등 고려해야함.
    => 자원의 제약이 큰 모바일 환경을 고려하여 딥러닝 기술을 IOT 기기에 활용해야함

accuracy의 문제 뿐만 아니라, latency, execution의 속도, power 소모 등 여러 시스템 문제에 대해서도
관심을 가지고 최적화 해주는 과정이 필요함


컴퓨터과학과

컴퓨터과학과 학생 게시판

List of Articles
번호 분류 제목 글쓴이 조회 수 날짜
909 일반 2013학년도1학기 컴퓨터과학과 지역별 오리엔테이션 일정 2 file 조민현 2815 2014.02.08
908 정보 컴퓨터학과 학년별 교육과정이예요. 참고하세요~ 8 조민현 4817 2014.02.08
907 정보 2008-2학기 자료구조 기말시험기출문제(2007) 풀이(장종성튜터) 3 조민현 3509 2014.02.08
906 일반 1학기 과제 정보 공유 하실분 계세요? 5 김지윤 3469 2014.02.11
905 정보 C 언어 변수 file 이한솔 2797 2014.02.14
904 정보 2011_동계-_C프로그래밍 시험풀이 11 file 게시판관리 2518 2014.02.20
903 일반 제가 3학년 이번에 들어가야하는데 휴학을 냈네요. 게시판관리 2442 2014.02.24
902 일반 안녕하세요~ 조민현 1925 2014.03.08
901 일반 안녕하세요. 1 짱구민이 2037 2014.03.11
900 일반 반갑습니다. 1 총모아 1921 2014.03.13
899 일반 천안사는 30살 1학년생입니다. 3 컴과1학년 3568 2014.03.16
898 일반 안녕하세요 1 아코 2009 2014.03.19
897 정보 [컴파일러] 초보자를 위한 C,C++컴파일러 추천 -이은석님이 작성한 글입니다. 공용자료실에서 펌 3 게시판관리 3050 2014.03.25
896 일반 오늘 날씨가 참 좋네요 게시판관리 1337 2014.04.01
895 일반 64비트 운영체제에서 강의 못보는건가요 ㅠㅜ 2 그냥바보형 2559 2014.04.03
894 일반 망한건가요!? 2 루사이트 1928 2014.04.04
893 일반 안녕하세요 1 줌마렐라 1596 2014.04.05
892 일반 이번 소프트웨어 경진대회 참여해보고자 하는데 1 완봉 1586 2014.04.09
891 정보 유비쿼터스 컴퓨팅 개론 과제물 자체해설. 2 티알피지 2250 2014.04.13
890 정보 프로그램 무료다운로드 안내(Visual Studio 등) 5 file 게시판관리 1773 2014.05.02
목록
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 46 Next
/ 46