일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- 프로그래밍
- c
- 코딩
- Windows 10
- 리눅스
- 백준알고리즘
- C언어
- TensorFlow
- 영상처리
- Windows10
- CV
- 딥러닝
- shell
- 공부
- error
- Computer Vision
- C++
- 시스템프로그래밍
- 회귀
- 턱걸이
- python
- 쉘
- 백준
- 알고리즘
- linux
- OpenCV
- 운영체제
- 프로세스
- 텐서플로우
- 학습
- Today
- Total
목록공부/tensorflow (28)
줘이리의 인생적기

데이터 증식(Data Augmentation)이라는 단어를 들어보셨나요? 데이터 증식 즉, 이미지 보강을 통해 가지고 있는 데이터를 새롭게 훈련 데이터에 보강하는 것으로 정확도를 개선해볼 수 있습니다. 기존 훈련데이터를 회전시키거나, 기울이거나, 확대하거나, 평행 이동시키거나, 뒤집어서 다양한 이미지를 만들어낼 수 있습니다. tf.keras에 있는 ImageDataGenerator를 통해 쉽게 이미지 보강 작업을 할 수 있습니다. import tensorflow as tf import matplotlib.pyplot as plt from tensorflow.keras.preprocessing.image import ImageDataGenerator import numpy as np fashion_mnis..

더 높은 정확도를 나오게 하려면 어떻게 해야할까요? 딥러닝의 발전은 컨볼루션 레이어가 중첩된 더 깊은 구조에서 나타났습니다. 정확도가 개선되었다는 말이죠 이번에는 VGG의 스타일로 모델을 생성해보도록 하겠습니다. import tensorflow as tf import matplotlib.pyplot as plt fashion_mnist = tf.keras.datasets.fashion_mnist (train_X, train_Y), (test_X, test_Y) = fashion_mnist.load_data() train_X = train_X / 255.0 test_X = test_X / 255.0 # print("reshape 이전 => ", train_X.shape, test_X.shape) train..

정확도를 좀 더 올리기 위해, 과적합을 막기 위해 MaxPooling 레이어와 Dropout레이어를 추가해보도록 하겠습니다. 레이어 추가 부분을 주의하여 봐주세요. import tensorflow as tf import matplotlib.pyplot as plt fashion_mnist = tf.keras.datasets.fashion_mnist (train_X, train_Y), (test_X, test_Y) = fashion_mnist.load_data() train_X = train_X / 255.0 test_X = test_X / 255.0 # print("reshape 이전 => ", train_X.shape, test_X.shape) train_X = train_X.reshape(-1, 28..

[tensorflow 19]에서 Fashion MNIST를 Dense 레이어를 사용하여 분류하였습니다. 이번에는 새롭게 공부한 컨폴루션, 풀링 레이어를 이용하여 분류해보겠습니다. [tensorflow 19]와 동일하게 정규화를 진행하고, 컨볼루션 연산을 진행하겠습니다. Conv2D 연산을 하기 위해서는 채널을 가진 데이터의 형태로 Shape를 변경해야 합니다. Shape 변경 후 모델 구성을 해보도록 하겠습니다. import tensorflow as tf fashion_mnist = tf.keras.datasets.fashion_mnist (train_X, train_Y), (test_X, test_Y) = fashion_mnist.load_data() train_X = train_X / 255.0 te..

이제까지 사용했었던 레이어들을 다시 한번 상기시켜 볼까요? 첫 번째, 제일 많이 사용했었던 Dense layer 입니다. 신경망에서 가장 기본 레이어 이며, 각 뉴런이 서로 완전히 연결되는 Fully connected layer라고도 합니다. 두 번째, Fashion MNIST에서 사용했었던 Flatten layer 입니다. 다차원의 이미지를 1차원으로 평평하게 바꿔주는 레이어 입니다. 이제부터 컨볼루션 신경망의 구조를 살펴보고, 여러 레이어에 대해서 알아보겠습니다. 이미지 분류에서는 Feature Extractor를 거친 후 Classifier를 거치게 되는데 Convolution layer, Pooling layer가 Feature Extractor에 해당하며, Dense layer가 Classifi..

이번에는 특징 추출(Feature Extraction) 기법 중 하나인 컨볼루션 신경망 CNN(Convolutional Neural Network)에 대해 공부해보도록 하겠습니다. 데이터셋에는 특징들이 있습니다. 앞서 공부했던 보스턴 주택 가격 데이터셋에는 범죄율, 주택당 방의 수, 고속도로 접근성, 학생/교사 비율 등과 같은 특징들이 있었고, 와인 데이터셋에는 당도, 품질, 도수 등의 특징들이 있었습니다. 하지만 Fashion MNIST와 같은 이미지 데이터는 특징을 스스로 찾아야 합니다. 결론부터 말씀드리자면, 컨볼루션 신경망은 네트워크가 특징을 추출하는 필터를 자동으로 생성합니다. 필터가 무엇이냐? 컨볼루션 연산은 필터(filter) 또는 커널(kernel)이라는 작은 행렬을 통해 픽셀들을 본래 픽..

이제 또 다른 다항분류 Fashion MNIST를 공부해보겠습니다. MNIST란 손으로 쓴 숫자들로 이루어진 대형 데이터베이스이며, 머신러닝의 고전적인 문제입니다 이 영향을 받아 만들어진 Fashion MNIST는 옷, 신발, 가방의 이미지 데이터베이스입니다. Fashion MNIST의 특징은 그레이스케일 이미지이며, 10개의 범주, 28 * 28 크기의 픽셀을 가지고 있다는 점입니다. Fashion MNIST 데이터셋은 tf.keras에 탑재되어 있으니 바로 시작해보겠습니다. 데이터를 먼저 불러오고, 정규화를 한 다음 첫 번째 데이터를 먼저 확인해보겠습니다. import tensorflow as tf fashion_mnist = tf.keras.datasets.fashion_mnist (train_X,..

앞서 공부했던 이항 분류는 범주의 수가 2개 였었죠 이번에는 다항분류를 공부해볼텐데, 다항 분류는 범주의 수가 3개 이상인 경우입니다. wine 데이터셋에서 quality를 가지고 다항분류를 해보겠습니다. import pandas as pd #white wine, red wine 데이터 받아오기 red = pd.read_csv('http://archive.ics.uci.edu/ml/machine-learning-databases/wine-quality/winequality-red.csv', sep=';') white = pd.read_csv('http://archive.ics.uci.edu/ml/machine-learning-databases/wine-quality/winequality-white.csv..