SlideShare une entreprise Scribd logo
1  sur  17
Image Classification
How to Image Classify
How to Image Classify
CNN( Convolutional neural network )
CNN은 전통적인 뉴럴 네트워크에 컨볼루셔널 레이어를 부착한 모양.
컨볼루셔널 레이어의 특징 추출 결과를 뉴럴 네트워크로 분류.
How to Image Classify
컨볼루셔널 레이어
입력 데이터로부터 특징을 추출하는 역할.
특징을 추출하는 필터와 필터 값을 비선형 값으로 바꾸는 액티베이션 함수로 구성
How to Image Classify
필터
정의된 특징이 데이터에 있는지 없는지 검출해주는 함수
특징을 가지고 있으면 큰 값이 나오고 아니면 0에 가까운 작은 값이 나온다.
How to Image Classify
필터 적용 방법
큰 이미지에 대하여 필터는 다음과 같이 1픽셀씩 옮겨가면서 적용한다.
필터를 적용한 Feature map은 원본보다 작아지기 때문에 적절한 처리를 해야한다.
How to Image Classify
원본 크기 유지하기( Padding )
32x32x3에 대한 이미지에 대해 5x5x3 필터를 적용하면 28x28x3이 되는데,
Padding을 적용하면 32x32x3의 결과를 얻을 수 있다.
Padding은 특징 유실을 막고, 오버 피팅을 방지한다.
How to Image Classify
액티베이션 함수
필터링된 결과값은 액티베이션 함수를 통해 특징이 있는지 없는지를 판단한다.
이전에는 왼쪽의 sigmoid 함수를 사용했지만,
계산값을 재활용하는 Back propagation에서 문제가 발생해서 ReLU를 많이 사용한다.
How to Image Classify
풀링
앞선 과정을 거쳐 나온 결과를 필요에 따라 sub sampling하는 과정을 거친다.
주요한 특징 몇 개를 가지고 인식 할 수 있다면 크기를 줄인다는 것이다.
그 중에서 그림의 Max polling을 가장 많이 쓴다.
컴퓨팅 리소스를 줄이고 오버피팅을 방지한다.
How to Image Classify
전체 예시
How to Image Classify
소프트 맥스
앞선 과정을 몇번 거친 결과값은 뉴럴 네트워크에 의해 다음과 같이 표현된다.
Pn(x)는 특징 x에 대해 Pn일 확률이다. Pn은 0 ~ 1 값을 가지고
P1 + … + Pn = 1이다.
어떤 동물 그림을 넣었을 때 고양이 0.8 강아지 0.2식으로 표현된다.
How to Image Classify
드롭아웃 계층
뉴럴 네트워크와 소프트맥스 함수 중간에 드롭아웃 계층을 둔다.
오버피팅을 막기위한 방법으로, 랜덤한 뉴럴 네트워크를 꺼서 학습을 방해한다.
How to make
How to make
텐서플로우
구글에서 만든 머신러닝용 프로그래밍 프레임워크
추상화된 머신러닝에 필요한 대부분의 함수를 구현 하여 제공
How to make
모델?
데이터 과학자가 아닌 사람은 모델을 만들기 힘듬.
이미 만들어져 공개된 모델을 사용해야함.
머신러닝에 대한 이해만 있으면 가능
How to make
텐서플로우로 모델 사용하기
이미지 전 처리
(TFRecord)
모델 다운로드
환경설정 및 학습
학습결과 파일
덤프
추론 스크립트
생성
학습결과 정확도
평가
서비스 서버 생성
(TensorFlow Serving)
참고 자료
http://bcho.tistory.com/1149
https://medium.com/@jongdae.lim/%EA%B8%B0%EA%B3%84-
%ED%95%99%EC%8A%B5-machine-learning-%EC%9D%80-
%EC%A6%90%EA%B2%81%EB%8B%A4-part-1-9a0297198ad8
http://cs231n.github.io/classification/#intro
https://norman3.github.io/papers/docs/google_inception.html
http://gusrb.tistory.com/category/%EA%B3%B5%EB%B6%80/Tensorflow

Contenu connexe

Tendances

Tendances (20)

머신러닝 프로젝트 - UNET을 이용한 이미지 화소 높이기
머신러닝 프로젝트 - UNET을 이용한 이미지 화소 높이기머신러닝 프로젝트 - UNET을 이용한 이미지 화소 높이기
머신러닝 프로젝트 - UNET을 이용한 이미지 화소 높이기
 
Image net classification with deep convolutional neural networks
Image net classification with deep convolutional neural networks Image net classification with deep convolutional neural networks
Image net classification with deep convolutional neural networks
 
Deep learning seminar_snu_161031
Deep learning seminar_snu_161031Deep learning seminar_snu_161031
Deep learning seminar_snu_161031
 
PR-203: Class-Balanced Loss Based on Effective Number of Samples
PR-203: Class-Balanced Loss Based on Effective Number of SamplesPR-203: Class-Balanced Loss Based on Effective Number of Samples
PR-203: Class-Balanced Loss Based on Effective Number of Samples
 
DL from scratch(4~5)
DL from scratch(4~5)DL from scratch(4~5)
DL from scratch(4~5)
 
[컴퓨터비전과 인공지능] 8. 합성곱 신경망 아키텍처 3 - GoogLeNet
[컴퓨터비전과 인공지능] 8. 합성곱 신경망 아키텍처 3 - GoogLeNet[컴퓨터비전과 인공지능] 8. 합성곱 신경망 아키텍처 3 - GoogLeNet
[컴퓨터비전과 인공지능] 8. 합성곱 신경망 아키텍처 3 - GoogLeNet
 
DL from scratch(6)
DL from scratch(6)DL from scratch(6)
DL from scratch(6)
 
keras 빨리 훑어보기(intro)
keras 빨리 훑어보기(intro)keras 빨리 훑어보기(intro)
keras 빨리 훑어보기(intro)
 
Learning by association
Learning by associationLearning by association
Learning by association
 
3.unsupervised learing
3.unsupervised learing3.unsupervised learing
3.unsupervised learing
 
Infra as a model service
Infra as a model serviceInfra as a model service
Infra as a model service
 
Transfer learning usage
Transfer learning usageTransfer learning usage
Transfer learning usage
 
Create a solution including deep learning models
Create a solution including deep learning modelsCreate a solution including deep learning models
Create a solution including deep learning models
 
DL from scratch(1~3)
DL from scratch(1~3)DL from scratch(1~3)
DL from scratch(1~3)
 
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2
 
PR-339: Maintaining discrimination and fairness in class incremental learning
PR-339: Maintaining discrimination and fairness in class incremental learningPR-339: Maintaining discrimination and fairness in class incremental learning
PR-339: Maintaining discrimination and fairness in class incremental learning
 
"From image level to pixel-level labeling with convolutional networks" Paper ...
"From image level to pixel-level labeling with convolutional networks" Paper ..."From image level to pixel-level labeling with convolutional networks" Paper ...
"From image level to pixel-level labeling with convolutional networks" Paper ...
 
[컴퓨터비전과 인공지능] 8. 합성곱 신경망 아키텍처 2 - ZFNet, VGG-16
 [컴퓨터비전과 인공지능] 8. 합성곱 신경망 아키텍처 2 - ZFNet, VGG-16 [컴퓨터비전과 인공지능] 8. 합성곱 신경망 아키텍처 2 - ZFNet, VGG-16
[컴퓨터비전과 인공지능] 8. 합성곱 신경망 아키텍처 2 - ZFNet, VGG-16
 
파이썬(Python) 으로 나만의 딥러닝 API 만들기 강좌 (Feat. AutoAI )
파이썬(Python) 으로 나만의 딥러닝 API 만들기 강좌 (Feat. AutoAI ) 파이썬(Python) 으로 나만의 딥러닝 API 만들기 강좌 (Feat. AutoAI )
파이썬(Python) 으로 나만의 딥러닝 API 만들기 강좌 (Feat. AutoAI )
 
[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝
[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝
[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝
 

Similaire à Image classification

[Paper Review] Image captioning with semantic attention
[Paper Review] Image captioning with semantic attention[Paper Review] Image captioning with semantic attention
[Paper Review] Image captioning with semantic attention
Hyeongmin Lee
 

Similaire à Image classification (20)

Convolutional neural network
Convolutional neural networkConvolutional neural network
Convolutional neural network
 
밑바닥부터 시작하는딥러닝 8장
밑바닥부터 시작하는딥러닝 8장밑바닥부터 시작하는딥러닝 8장
밑바닥부터 시작하는딥러닝 8장
 
[데이터 분석 소모임] Convolution Neural Network 김려린
[데이터 분석 소모임] Convolution Neural Network 김려린[데이터 분석 소모임] Convolution Neural Network 김려린
[데이터 분석 소모임] Convolution Neural Network 김려린
 
Deep Learning Into Advance - 1. Image, ConvNet
Deep Learning Into Advance - 1. Image, ConvNetDeep Learning Into Advance - 1. Image, ConvNet
Deep Learning Into Advance - 1. Image, ConvNet
 
HistoryOfCNN
HistoryOfCNNHistoryOfCNN
HistoryOfCNN
 
03.12 cnn backpropagation
03.12 cnn backpropagation03.12 cnn backpropagation
03.12 cnn backpropagation
 
[Paper] shuffle net an extremely efficient convolutional neural network for ...
[Paper] shuffle net  an extremely efficient convolutional neural network for ...[Paper] shuffle net  an extremely efficient convolutional neural network for ...
[Paper] shuffle net an extremely efficient convolutional neural network for ...
 
네트워크 경량화 이모저모 @ 2020 DLD
네트워크 경량화 이모저모 @ 2020 DLD네트워크 경량화 이모저모 @ 2020 DLD
네트워크 경량화 이모저모 @ 2020 DLD
 
파이썬으로 익히는 딥러닝 기본 (18년)
파이썬으로 익히는 딥러닝 기본 (18년)파이썬으로 익히는 딥러닝 기본 (18년)
파이썬으로 익히는 딥러닝 기본 (18년)
 
[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
 
Anomaly detection practive_using_deep_learning
Anomaly detection practive_using_deep_learningAnomaly detection practive_using_deep_learning
Anomaly detection practive_using_deep_learning
 
LeNet & GoogLeNet
LeNet & GoogLeNetLeNet & GoogLeNet
LeNet & GoogLeNet
 
Automl
AutomlAutoml
Automl
 
History of Vision AI
History of Vision AIHistory of Vision AI
History of Vision AI
 
[Paper Review] Image captioning with semantic attention
[Paper Review] Image captioning with semantic attention[Paper Review] Image captioning with semantic attention
[Paper Review] Image captioning with semantic attention
 
Naive ML Overview
Naive ML OverviewNaive ML Overview
Naive ML Overview
 
인공지능, 기계학습 그리고 딥러닝
인공지능, 기계학습 그리고 딥러닝인공지능, 기계학습 그리고 딥러닝
인공지능, 기계학습 그리고 딥러닝
 
Deep learning framework 제작
Deep learning framework 제작Deep learning framework 제작
Deep learning framework 제작
 
Image Deep Learning 실무적용
Image Deep Learning 실무적용Image Deep Learning 실무적용
Image Deep Learning 실무적용
 
Nationality recognition
Nationality recognitionNationality recognition
Nationality recognition
 

Plus de 종현 김 (9)

Software Engineering and DDD
Software Engineering and DDDSoftware Engineering and DDD
Software Engineering and DDD
 
Angular vs react
Angular vs reactAngular vs react
Angular vs react
 
Pwa ppt
Pwa pptPwa ppt
Pwa ppt
 
Travis ci ppt
Travis ci pptTravis ci ppt
Travis ci ppt
 
Gitflow ppt
Gitflow pptGitflow ppt
Gitflow ppt
 
330 booking system
330 booking system330 booking system
330 booking system
 
엘라스틱 서치 세미나
엘라스틱 서치 세미나엘라스틱 서치 세미나
엘라스틱 서치 세미나
 
angular 세미나
angular 세미나angular 세미나
angular 세미나
 
Sourgrape 주제 제안
Sourgrape 주제 제안Sourgrape 주제 제안
Sourgrape 주제 제안
 

Image classification

  • 2. How to Image Classify
  • 3. How to Image Classify CNN( Convolutional neural network ) CNN은 전통적인 뉴럴 네트워크에 컨볼루셔널 레이어를 부착한 모양. 컨볼루셔널 레이어의 특징 추출 결과를 뉴럴 네트워크로 분류.
  • 4. How to Image Classify 컨볼루셔널 레이어 입력 데이터로부터 특징을 추출하는 역할. 특징을 추출하는 필터와 필터 값을 비선형 값으로 바꾸는 액티베이션 함수로 구성
  • 5. How to Image Classify 필터 정의된 특징이 데이터에 있는지 없는지 검출해주는 함수 특징을 가지고 있으면 큰 값이 나오고 아니면 0에 가까운 작은 값이 나온다.
  • 6. How to Image Classify 필터 적용 방법 큰 이미지에 대하여 필터는 다음과 같이 1픽셀씩 옮겨가면서 적용한다. 필터를 적용한 Feature map은 원본보다 작아지기 때문에 적절한 처리를 해야한다.
  • 7. How to Image Classify 원본 크기 유지하기( Padding ) 32x32x3에 대한 이미지에 대해 5x5x3 필터를 적용하면 28x28x3이 되는데, Padding을 적용하면 32x32x3의 결과를 얻을 수 있다. Padding은 특징 유실을 막고, 오버 피팅을 방지한다.
  • 8. How to Image Classify 액티베이션 함수 필터링된 결과값은 액티베이션 함수를 통해 특징이 있는지 없는지를 판단한다. 이전에는 왼쪽의 sigmoid 함수를 사용했지만, 계산값을 재활용하는 Back propagation에서 문제가 발생해서 ReLU를 많이 사용한다.
  • 9. How to Image Classify 풀링 앞선 과정을 거쳐 나온 결과를 필요에 따라 sub sampling하는 과정을 거친다. 주요한 특징 몇 개를 가지고 인식 할 수 있다면 크기를 줄인다는 것이다. 그 중에서 그림의 Max polling을 가장 많이 쓴다. 컴퓨팅 리소스를 줄이고 오버피팅을 방지한다.
  • 10. How to Image Classify 전체 예시
  • 11. How to Image Classify 소프트 맥스 앞선 과정을 몇번 거친 결과값은 뉴럴 네트워크에 의해 다음과 같이 표현된다. Pn(x)는 특징 x에 대해 Pn일 확률이다. Pn은 0 ~ 1 값을 가지고 P1 + … + Pn = 1이다. 어떤 동물 그림을 넣었을 때 고양이 0.8 강아지 0.2식으로 표현된다.
  • 12. How to Image Classify 드롭아웃 계층 뉴럴 네트워크와 소프트맥스 함수 중간에 드롭아웃 계층을 둔다. 오버피팅을 막기위한 방법으로, 랜덤한 뉴럴 네트워크를 꺼서 학습을 방해한다.
  • 14. How to make 텐서플로우 구글에서 만든 머신러닝용 프로그래밍 프레임워크 추상화된 머신러닝에 필요한 대부분의 함수를 구현 하여 제공
  • 15. How to make 모델? 데이터 과학자가 아닌 사람은 모델을 만들기 힘듬. 이미 만들어져 공개된 모델을 사용해야함. 머신러닝에 대한 이해만 있으면 가능
  • 16. How to make 텐서플로우로 모델 사용하기 이미지 전 처리 (TFRecord) 모델 다운로드 환경설정 및 학습 학습결과 파일 덤프 추론 스크립트 생성 학습결과 정확도 평가 서비스 서버 생성 (TensorFlow Serving)