Etc 49

6장 합성곱 신경망Ⅱ(3) - 이미지 분류를 위한 신경망(VGGNet, GoogLeNet, ResNet)

6.1.3 VGGNet 등장 배경 : 합성곱층의 파라미터 개수를 줄이고, 훈련 시간 개선을 위해 VGG16 네트워크의 구조적 세부 사항 * 모든 합성곱 커널의 크기 : 3×3 * 모든 최대 풀링 커널 크기 : 2×2 + 스트라이드 : 2 VGGNet16 구조 상세 층 유형 특성 맵 크기 커널 크기 스트라이드 활성화 함수 이미지 1 224×224 – – – 합성곱층 64 224×224 3×3 1 렐루(ReLU) 합성곱층 64 224×224 3×3 1 렐루(ReLU) 최대 풀링층 64 112×112 2×2 2 – 합성곱층 128 112×112 3×3 1 렐루(ReLU) 합성곱층 128 112×112 3×3 1 렐루(ReLU) 최대 풀링층 128 56×56 2×2 2 – 합성곱층 256 56×56 3×3 1 ..

Etc/Deep Learning 2021.08.11

6장 합성곱 신경망Ⅱ(2) - 이미지 분류를 위한 신경망(AlexNet)

복습 - CNN 구조(3차원 구조) * 이미지를 다루므로 기본적으로 3차원 데이터(너비, 높이, 깊이)를 다룸 AlexNet 구성 : 합성곱층 5개 + 완전연결층 3개 //맨 마지막 완전연결층 : 카테고리 1,000개로 분류(소프트맥스 활성화 함수 사용) 특징 : GPU 2개를 기반으로 한 병렬 구조(⇒ 연산 속도가 빨라짐) AlexNet의 합성곱층에서 사용된 활성화 함수 : 렐루 각 계층의 구조적 세부 사항 입력 : 227×227×3 크기의 RGB 이미지 출력 : 각 클래스(혹은 카테고리)에 해당하는 1000×1 확률 벡터 계층 유형 특성 맵 크기 커널 크기 스트라이드 활성화 함수 이미지 1 227×227 – – – 합성곱층 96 55×55 11×11 4 렐루(ReLU) 최대 풀링층 96 27×27 3..

Etc/Deep Learning 2021.08.10

6장 합성곱 신경망Ⅱ(1) - 이미지 분류를 위한 신경망(LeNet-5) + 실습 : 🔜파이썬 개념 추가 정리하기

6.1 이미지 분류를 위한 신경망 입력 데이터로 '이미지'를 사용한 분류 : 특정 대상이 영상 내에 존재하는지 판단 - 이미지 분류에서 주로 사용되는 합성곱 신경망 유형 : LeNet-5, AlexNet, VGGNet, GoogLeNet, ResNet 6.1.1 LeNet-5 합성곱과 풀링(다운 샘플링)을 반복적으로 거치며 마지막 완전연결층에서 분류 수행 C1 : 5×5 합성곱 연산 → 28×28 크기의 특성맵 6개 생성 S2 : 다운샘플링 → 특성 맵 크기를 14×14로 줄임 C3 : 5×5 합성곱 연산 → 10×10 크기의 특성맵 16개 생성 S4: 다운 샘플링 → 특성 맵 크기를 5×5로 줄임 C5 : 5×5 합성곱 연산 → 1×1 크기의 특성맵 120개 생성 F6 : 완전연결층. C5의 결과를 u..

Etc/Deep Learning 2021.08.09

5장 합성곱 신경망Ⅰ(4) - 그래프 합성곱 네트워크

5.5 그래프 합성곱 네트워크 5.5.1 그래프란? 방향성이 있거나 없는 edge로 연결된 node(verticals)의 집합 node, edge : 풀고자 하는 문제에 대한 전문가 지식/직관으로 구성됨 노드(node, vertex) : 그림에서 원, 즉 원소 엣지(edge) : 두 노드를 연결한 선, 즉 결합 방법(single, double, triple, aromatic) 5.5.2 그래프 신경망 그래프 신경망이란? 그래프 구조에서 사용하는 신경망 그래프 데이터 표현 단계 1단계. 인접 행렬 - 그림에서 왼쪽 네트워크를 노드 n개를 n×n 행렬로 표현 - 인접 행렬 내의 값 : ‘Aij는 i와 j의 관련성 여부’를 만족하는 값으로 채움 ∴ 인접 행렬 과정 = 컴퓨터가 이해하기 쉽게 그래프로 표현하는 ..

Etc/Deep Learning 2021.08.09

5장 합성곱 신경망Ⅰ(+) - 이미지를 255로 나누는 이유(ELLIPSIS 객체, np.newaxis, 다차원 배열 슬라이싱, 255)

1. 이미지 정보를 보여주는 함수 정의 def print_image_summary(image, labels): print('--------------') print('Image Details:') print('--------------') print(f'Image dimensions: {image.shape}') print('Channels:') if len(labels) == 1: image = image[ ... , np.newaxis ] ------ ⓐ for i, lab in enumerate(labels): min_val = np.min(image[:,:,i]) ------ ⓑ max_val = np.max(image[:,:,i]) print(f'{lab} : min={min_val:.4f}, ..

Etc/Deep Learning 2021.08.08

5장 합성곱 신경망Ⅰ(3) 실습 - 특성맵 시각화

1. 새로운 모델 생성 합성곱층, 최대풀링층 쌍을 4개 쌓고, 완전연결층을 순차적으로 쌓음 model = tf.keras.models.Sequential([ tf.keras.layers.Conv2D(input_shape=(100, 100, 3), activation='relu', kernel_size=(5, 5), filters=32), tf.keras.layers.MaxPooling2D(), tf.keras.layers.Conv2D(activation='relu', kernel_size=(5, 5), filters=64), tf.keras.layers.MaxPooling2D(), tf.keras.layers.Conv2D(activation='relu', kernel_size=(5, 5), filters..

Etc/Deep Learning 2021.08.08

5장 합성곱 신경망Ⅰ(3) - 미세조정기법(전이학습), 설명 가능한 CNN

5.3.2 미세 조정 기법 미세 조정 기법이란? 특성 추출 기법에서 더 나아가 사전 훈련된 모델, 합성곱층, 데이터 분류기의 가중치를 업데이트하여 훈련시킴 '사전 학습된 모델'을 목적에 맞게 재학습시키거나 '학습된 가중치의 일부'를 재학습시키는 것 미세 조정하여 분석하려는 데이터셋에 잘 맞도록 모델의 파라미터를 조정하는 기법 (파라미터에 큰 변화줌 → 과적합 발생 가능 ⇒ 정교, 미세한 파라미터 업데이트 必) + 연산량 多 → CPU보단 GPU 사용을 권장 특성 추출 기법 VS 미세 조정 기법 · 특성 추출 기법 : 목표 특성을 잘 추출했다는 전제하에 좋은 성능이 나옴 · 미세 조정 기법 : 특성 추출 기법에서 특성이 잘못 추출되었다면 미세 조정 기법으로 이미지 데이터를 사용해, 네트워크의 가중치를 업데..

Etc/Deep Learning 2021.08.06

5장 합성곱 신경망Ⅰ(2) 실습- 전이학습- 특성 추출 기법(+ 텐서플로 허브)

1단계. 필요한 라이브러리 호출 2단계. 사전 훈련된 모델 내려받기 - 해당 예제에서 사용할 모델 : 사전 훈련된 ResNet50 model = ResNet50(include_top=True, weights="imagenet", input_tensor=None, input_shape=None, pooling=None, classes=1000) ⓐ include_top : 네트워크(사전 훈련된 모델) 상단에 '완전연결층을 포함'할지의 여부를 지정(기본값: True) //완전연결층 : 합성곱층, 풀링층을 거쳐 차원이 축소된 특성맵을 전달받음, 이미지를 3차원 벡터에서 1차원 벡터로 펼침 ⓑ weights : 가중치 None(무작위 초기화)과 'imagenet'(ImageNet에서 사전 훈련된 값)을 지정 가..

Etc/Deep Learning 2021.08.04

5장 합성곱 신경망Ⅰ(2) - 전이 학습

5.3 전이 학습 합성곱 신경망 기반의 딥러닝 모델을 제대로 훈련시키려면 '많은 양의 데이터가 필요' BUT 큰 데이터셋을 확보하기 어려움(많은 돈, 시간을 필요로 함) 해결 방법 : 전이 학습(Transfer learning) 전이학습이란? '이미지넷처럼 아주 큰 데이터셋을 써서 훈련된 모델의 가중치'를 가져와, 해결하려는 과제에 맞게 보정해서 사용하는 방법 효과 : '비교적 적은 수의 데이터'로, 우리가 원하는 과제 해결 가능 ✔ 아주 큰 데이터셋을 사용해 훈련된 모델 = 사전 훈련된 모델(네트워크) //이미지넷 : 영상 인식 기술의 성능을 평가하는 이미지 데이터셋 전이 학습을 위한 방법 ① 특성 추출 ② 미세 조정 기법 5.3.1 특성 추출 기법 특성 추출 과정 ① 이미지넷 데이터셋으로 사전 훈련된..

Etc/Deep Learning 2021.08.04

5장 합성곱 신경망(1) - 합성곱 신경망의 구조(입력층, 합성곱층, 풀링층, 완전연결층, 출력층) (수정, 보완必)

5.1 합성곱 신경망 딥러닝의 역전파 : 복잡한 계산과정, 많은 자원을 요구 → 해결방안 : 합성곱 신경망 (이미지 전체를 한 번에 계산X, 이미지의 국소적 부분을 계산 → 시간과 자원을 절약 ⇒ 이미지의 세밀한 부분까지 분석 가능) 5.1.1 합성곱층의 필요성 이미지 · 영상 처리에 유용 합성곱층의 원리 예) 3×3 흑백 이미지가 있다고 가정 이미지 분석 : 왼쪽 그림의 3×3 배열을 오른쪽 그림과 같이 펼침(flattening) → 각 픽셀에 가중치를 곱한 후 은닉층으로 전달 문제점 : 이미지를 펼쳐서 분석하면 데이터의 공간적 구조를 무시하게 됨 해결 방법 : 합성곱층 5.1.2 합성곱 신경망 구조 음성/이미지/영상 인식에서 주로 사용되는 신경망 다차원 배열 데이터를 처리하도록 구성됨(→ 컬러 이미지..

Etc/Deep Learning 2021.08.04