분류 전체보기 36

텐서플로우: tf.GradientTape.watch() 설명

설명 텐서가 GradientTape(미분 계산 값을 기록하는 객체)에 의해 추적되도록 합니다. 인자 값으로는 텐서 또는 텐서가 담긴 리스트를 받습니다. 만약, 텐서가 아닐 경우, valueError를 띄웁니다. Ensures that tensor is being traced by this tape. g.watch(y)가 없는 경우 x = tf.constant(3.0) y = tf.constant(3.0) with tf.GradientTape(persistent=True) as g: g.watch(x) z0 = x ** 2 z1 = y ** 2 dz_dx = g.gradient(z0, x) # x^2의 미분값은 2*x (x는 위에서 3이기에 결과는 6) print(dz_dx) # tf.Tensor(6.0,..

Tensorflow 2020.11.06

텐서플로우 Dataset: from_generator 설명

사용 이유 1. 메모리 용량의 한계 때문에 - 이미지, 텍스트 데이터 등을 메모리에 올려 놓은 후 작업을 진행할 수 있지만, 수많은 파일이 있을 경우 이를 모두 메모리에 올려놓지 못하기에, generator로부터 1개 또는 배치단위만큼 파일을 불러와야 합니다. 2. 다양한 가공 처리를 위해서 - 간혹 이미지 채널을 기존 RGB 3채널에서 4,5 채널로 늘리는 경우 또는 이미지의 특정 부분을 자른다거나 겹치게 하는 등의 다양한 처리를 generator를 통해서 할 수 있기 때문입니다. 필수 사항 1. 모델의 Input shape, Output shape 2. generator: 이미지와 해당 라벨을 추출하는 제너레이터 3. 모델에 넣을 데이터의 자료형과 라벨의 자료형(Int, Float, String 등)..

Tensorflow 2020.11.03

pillow 에러 해결: OS Error: image file is truncated

문제 상황 OSError: image file is truncated from PIL import Image img = Image.open('dog.png') # 잘린 이미지를 img에 담는 것 까진 됩니다. img = np.asarray(img) # 하지만 이미지를 띄우거나, np.array로 변환시 에러가 발생합니다. 해결 방법 # 옵션을 선언해주면 에러가 발생하지 않습니다. from PIL import ImageFile ImageFile.LOAD_TRUNCATED_IMAGES = True from PIL import Image img = Image.open('dog.png') img = np.asarray(img) 문제 이유 위처럼 이미지가 잘려있는 경우에 해당 에러가 발생합니다.

Error 2020.11.03

케라스 Conv-LSTM을 활용한 영상 예측 예제

Keras 예제 번역: Next-frame prediction with Conv-LSTM Next-frame prediction with Conv-LSTM Author: jeammimi Date created: 2016/11/02 Last modified: 2020/05/01 Description: Conv-LSTM을 활용해, sequence의 다음 프레임을 예측해봅시다. Source: keras.io/examples/vision/conv_lstm/ colab.research.google.com/github/keras-team/keras-io/blob/master/examples/vision/ipynb/conv_lstm.ipynb github.com/keras-team/keras-io/blob/maste..

Tensorflow 2020.11.03

케라스 예제 번역: Simple MNIST convnet

Simple MNIST convnet 간단한 Convolutional Network를 활용하여 MNIST 데이터셋 분류 모델 만들기 Author: fchollet Date created: 2015/06/19 Last modified: 2020/04/21 Description: A simple convnet that achieves ~99% test accuracy on MNIST. Setup # 라이브러리 로드 import numpy as np from tensorflow import keras from tensorflow.keras import layers Prepare the data # 클래스 개수 및 input_shape 지정하기 num_classes = 10 input_shape = (28, 2..

Tensorflow 2020.11.03

Tensorflow 에러 해결: ERROR: After October 2020 you may experience errors when installing or updating packages.

해결방법 pip install tensorflow --use-feature=2020-resolver pip install tensorflow 뒤에 --use-feature=2020-resolver 를 붙인다. 문제 이유 pip를 업그레이드하면서 발생한 문제입니다. This is because pip will change the way that it resolves dependency conflicts. 에러를 보면, pip가 앞으로 dependency 충돌 문제를 해결하는 방법을 바꿨기 때문이라고 합니다. 해결방법은 간단합니다. pip install tensorflow --use-feature=2020-resolver 위를 입력하시면 문제가 해결됩니다. 문제 내용 ERROR: After October 2..

Error 2020.10.29

Keras 이미지 Extract features 및 Feature map 그리기

1. 이미지 features 추출하고, Feature map을 그리기. (with VGG16) keras.io/api/applications/#extract-features-with-vgg16 from tensorflow.keras.applications.vgg16 import VGG16 from tensorflow.keras.preprocessing import image from tensorflow.keras.applications.vgg16 import preprocess_input import matplotlib.pyplot as plt model = VGG16(weights='imagenet', include_top=False) # include_top = False를 하면 Flatten하기 전..

Tensorflow 2020.10.29

Tensorflow 케라스 EfficientNet Finetuning 예제 - 1

Image classification via fine-tuning with EfficientNet Author: Yixing_Fu Date created: 2020/06/30 Last modified: 2020/07/16 Description: imagenet으로 pretrained된 EfficientNet의 Weights를 활용한 Stanford Dogs Classification - Keras - Colab - Github Introduction: what is EfficientNet 2019년 [Tan_and_Le]에 의해 처음 소개된 EfficientNet은 imagenet 분류와 전이학습을 통한 보통의 이미지 분류 모두에서 가장 높은 정확도에 도달한 효율적인 모델입니다. (i.e. requiri..

Tensorflow 2020.10.28