pullwall
Well done! 코딩
pullwall
전체 방문자
오늘
어제
  • 분류 전체보기 (151)
    • 개발환경 (2)
    • java study (21)
    • 백준 단계별 (51)
    • 알고리즘 (3)
    • AI (43)
    • 클라우드 (3)
      • Kubernetes in Google (3)
    • 논문 (5)
    • 리눅스 (1)
    • AWS (4)
    • 수학 (15)
    • 기타 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • AWS
  • 백준
  • 선택정렬
  • 정렬알고리즘
  • Java
  • LLM
  • Kubernetes
  • 백준 단계별
  • pytorch
  • 자바
  • dataset
  • 단계별
  • 자바독학
  • Google
  • 쿠버네티스
  • Ai
  • 논문리뷰
  • 수학
  • 정렬
  • 알고리즘

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
pullwall

Well done! 코딩

CNN (Convolution Neural Network)
AI

CNN (Convolution Neural Network)

2024. 9. 10. 22:47
728x90
해당 게시물은 "혁펜하임의 AI DEEP DIVE"를 수강하고 작성되었습니다.

이미지가 입력으로 들어왔을 때 Fully Connected한 신경망은 모든 노드를 활성화 시켜서 이미지를 보려고 한다.

 

하지만 CNN은 위치별 특징(패턴) 을 Convolution을 통해 찾는다. 즉, 패턴을 통해 이미지가 무엇인지 알아내는 것이다. (인간처럼..)

 

https://towardsdatascience.com/intuitively-understanding-convolutions-for-deep-learning-1f6f42faee1

 

CNN은 스캔하듯이 같은 weight와 bias를 가지는 kernel (filter)이라는 스캔기로 입력 데이터를 쭉 스캔한다.

 

위 과정은 가까이 있는 데이터들만 connection하여 하나의 노드를 구성하는 과정을 반복하게 되는데,

 

이를 통해 위치 정보를 유지할 수 있게 된다. (새롭게 태어난 노드는 그 구역의 담당 일진 느낌..)

 

 

 


 

 

그렇다면 convolution이 어떻게 특징을 추출하는 것일까?

 

https://saturncloud.io/blog/a-comprehensive-guide-to-convolutional-neural-networks-the-eli5-way/

 

위 사진과 같은 filter를 가졌을 때, convolution을 거치면 filter의 weight와 그 구역의 weight가 비슷할 때는 convolution 값이 커지고, 비슷하지 않다면 작아진다.

 

즉, filter의 weight와 같은 특징을 가지는게 어디에 얼만큼 있는지를 표현할 수 있다.

 

 

https://serokell.io/blog/introduction-to-convolutional-neural-networks

 

만약 여러 개의 필터를 사용해서 내가 원하는 특징을 뽑았다면, 이는 깊이로 쌓아서 첫번째 필터를 거친 정보, 두번째 필터를 거친 정보... 이렇게 위치 정보를 유지한 채로 나타낼 수 있다. 이것을 feature map이라고 부른다.

 

filter에서 사용되는 weight와 bias는 AI가 알아내야 하는 학습 파라미터이다.

728x90

'AI' 카테고리의 다른 글

VGGnet  (0) 2024.09.12
Padding, Stride, Pooling  (0) 2024.09.11
Regularization (Overfitting 방지 방법)  (0) 2024.09.10
Overfitting 방지를 위한 Dropout  (1) 2024.09.09
Overfitting, Data augmentation  (0) 2024.09.09
    'AI' 카테고리의 다른 글
    • VGGnet
    • Padding, Stride, Pooling
    • Regularization (Overfitting 방지 방법)
    • Overfitting 방지를 위한 Dropout
    pullwall
    pullwall

    티스토리툴바