TensorFlow Softmax - softmax 함수는 logits 또는 logit score라고 하는 입력을 0에서 1사이 값으로 채우고 - 그 모든 logits의 합이 1이 되도록 output을 정규화 한다. - 즉, softmax 함수의 출력은 범주형 확률분포(categorical probability distribution)와 같다. - 이 softmax 함수는 다중 클래스들을 예측할 때 output activation으로 사용하기 적절하다. - 텐서플로우를 사용하여 softmax 함수를 쓰려면 다음과 같이 해주면 된다. - tf.nn.softmax() 함수는 logits을 받아서 softmax activation을 리턴해준다. 1234567891011121314import tensorflow..
Linear functions in TensorFlow - neural network를 설계함에있어 가장 흔히 사용되는 연산은 - input, weight 그리고 bias의 linear function을 계산하는것이다. - 선형 연산의 output은 다음과 같이 쓸 수 있다. - W 는 두 레이어를 연결해주는 가중치 행렬 - y 는 output, x 는 input, b는 바이어스 벡터이다. Weights and Bias in TensorFlow - 신경망을 훈련시키는 목표는 label을 가장 잘 예측할 수 있도록 가중치와 바이어스를 수정하는것이다. - 가중치와 바이어스를 사용하려면 수정 가능한 텐서가 필요하다. - tf.placeholder(), tf.constant() 이 두 텐서는 수정될 수 없으므로..
TensorFlow - 앞으로의 네트워크엔 Keras와 TensorFlow를 교대로 사용하며 설계하게 될 것이다. - Keras는 신경망 네트워크를 빠르고 간편하게 구축하는데에 적합하다. - 하지만, 그렇기 때문에 세부적으로 설계하는데엔 제한적이다. - 텐서플로우는 신경망 네트워크를 low-level 단에서 작동하는 방식을 이해하는데 유용하다. - refresh를 위한 링크 - Linear Functions - Softmax - Cross Entropy - Batching and Epochs - notMNIST 데이터셋으로부터 이미지를 분류하는 네트워크를 설계해보자. - 네트워크는 A부터 J까지의 알파벳을 나타내는 이미지들을 적절하게 분류한다. - 이미지에 따라 자동으로 알파벳을 감지하고, 분류한다. I..
Mini Project: Using Keras to analyze IMDB Movie Data · The dataset - 25000개의 IMDB 데이터셋을 이용 - Movie Data의 각 review에는 label이 붙어있음 - Negative : 0 / Positive : 1 - review의 단어를 기반으로 review의 sentiment를 예측하는 모델을 만드는 프로젝트를 진행해보자. - 이미 사전에 처리된 input data를 기반으로 네트워크 설계. - 각 review의 단어에 해당하는 인덱스로 접근이 가능하다. - 단어는 빈도수에 비례하게 정렬되므로, 예를들어 가장 빈도수가 높은 "the"에 인덱스 1이 대응됨 - 인덱스 0은 알 수 없는 단어에 해당 - sentence는 이 인덱스와 연결..
Keras Optimizers - Keras엔 다양한 Optimizer들이 있다. 상세 - Optimizer들의 세부 구현 설명 - 그중에 가장 많이쓰이는것들을 다뤄보면 · SGD - Stochastic Gradient Descent 를 지칭, 다음과같은 인자를 취함 - Learning rate - Momentum : local minima에 빠지지 않기위해 이전 단계에서의 가중치가 적용된 평균을 사용 - Nesterov Momentum : solution에 가까워 질 수록 gradient를 slow down시킴 · ADAM - Adaptive Moment Estimation 을 지칭 - 이전 step에서의 평균뿐 아니라 분산까지 고려한 복잡한 지수 감쇠(exponential decay)를 사용 · RM..
Predicting Student Admissions with Neural Networks in Keras · Loading the data123456789# Importing pandas and numpyimport pandas as pdimport numpy as np # Reading the csv file into a pandas DataFramedata = pd.read_csv('student_data.csv') # Printing out the first 10 rows of our datadata[:10]Colored by Color Scriptercs >> · Plotting the data1234567891011121314151617# Importing matplotlibimport mat..
Neural Networks in Keras - 이전에 NumPy를 이용하여 네트워크를 설계하였다면, 이번엔 좀 더 실무적인 툴을 사용하여 - 네트워크를 설계하는 방법에 대해 알아보자. - 툴을 사용하는 이유로는, activation function 이나 gradient descent 등을 직접 구현하지 않고 - 가져다 쓰기만 해도 되는것이 단적인 예가 될 수 있겠다. - Keras, TensorFlow, Caffe, Theano, Scikit-learn 등의 툴이 이에 해당된다. - 이번시간에는 Keras를 다루는 법에대해 알아보자. Building a Neural Networks in Keras - Keras를 사용하여 네트워크를 만들어가기 전에 알아야할 몇가지를 짚고 넘어가자. · Sequentia..
Sentiment Classification & How To "Frame Problems" for a Neural Network · Curate a Dataset12345678910def pretty_print_review_and_label(i): print(labels[i] + "\t:\t" + reviews[i][:80] + "...") g = open('reviews.txt','r') # What we know!reviews = list(map(lambda x:x[:-1],g.readlines()))g.close() g = open('labels.txt','r') # What we WANT to know!labels = list(map(lambda x:x[:-1].upper(),g.readlines..
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148import numpy as np class NeuralNetwork(object): def __init__(s..
GPU Workspaces for iterator wrapper - GPU 사용 환경에서 지속적으로 세션을 유지할 경우 아래의 두 명령어를 이용하여 유지할 수 있음. import signal from contextlib import contextmanager import requests DELAY = INTERVAL = 4 * 60 # interval time in seconds MIN_DELAY = MIN_INTERVAL = 2 * 60 KEEPALIVE_URL = "https://nebula.udacity.com/api/v1/remote/keep-alive" TOKEN_URL = "http://metadata.google.internal/computeMetadata/v1/instance/attribu..