전체 글
-
Tensorflow Variational AutoEncoder 개념 및 코드 예시(VAE, MNIST Dataset)Data Science/Tensorflow 2022. 11. 1. 10:38
1. VAE 개념 VAE는 일반 AutoEncoding과는 다르게 입력데이터(X)를 Lantent Representation(Z)로 압축하고 이를 사용하여 기존과 유사하나 새로운 데이터를 생성하는 것을 목표로 합니다. (기존 AutoEncoder는 입력데이터(X)를 유사하게 복구하는 것이 목표이다.) 이때 Latent Representation은 생성하고자하는 결과의 평균 및 분산을 담고있다고 가정한다. \(z \ \ \ \ \rightarrow \ \ \ \ x \) \(p\theta^{*}(z) \ \ \ \ \ \ p\theta^{*}(x|z^{(i)})\) \(p(z)\) : latent vector(Z)의 확률밀도함수, 가우시안분포를 따름 \(p(x|z)\) : Z로부터 어떠한 X가 나올 조건부..
-
Tensorflow Generative Adversarial Network 예시 코드(GAN, MNIST Data Set)Data Science/Tensorflow 2022. 11. 1. 01:19
1. 기본 세팅 1.1 라이브러리 import os import numpy as np import tensorflow as tf import matplotlib.pyplot as plt import tensorflow_datasets as tfds from tensorflow.keras import Model, layers 1.2 GPU 세팅 os.environ["CUDA_VISIBLE_DEVICES"]="0" gpus = tf.config.experimental.list_physical_devices('GPU') if gpus: try: tf.config.experimental.set_memory_growth(gpus[0], True) except RuntimeError as e: print(e) # ..
-
Tensorflow LSTM 예시 코드(LSTM, RNN, ecg.csv)Data Science/Tensorflow 2022. 11. 1. 00:07
1. 기본세팅 1.1. 라이브러리 import numpy as np import pandas as pd import tensorflow as tf import matplotlib.pyplot as plt from sklearn.preprocessing import MinMaxScaler from tensorflow.keras import layers from tensorflow.keras.models import Model from sklearn.metrics import accuracy_score, precision_score, recall_score from sklearn.model_selection import train_test_split import os 1.2 GPU 세팅 os.environ[..
-
강화학습Data Science/ML&DL 모델 2022. 10. 31. 17:12
2. Sequential Process 어떠한 랜덤베리에이블들의 시퀀스 2.1 Markov chain 2.1.1 Markov property : 현재의 사건은 먼 과거와는 별로 상관이 없고 최근에 일어난 일과 상관이 있다. (q2를 알고싶을 때 q0은 이미 q1에 담겨있기 때문에 q1을 알면 q2를 알수 있다.) (실제로 q0과 q2는 연관이 있지만, q1이라는 노드가 고정되면 q0와 q2는 상관이 없다.) 현재 상태가 모든 정보를 담고 있다면 과거 정보는 필요없다. 2.1.2 Transition Matrix 2.2 Markov Reward Process ( MarkovChain + reward ) markov 가정에 의해 Memoryless한 Random process이다. passive stochas..
-
파이썬 with as문을 통한 자동 open/colse프로그래밍/파이썬 기초 2022. 10. 31. 10:53
1. with as문이란? 파이썬 코딩을 하다보면 생성한 객체를 다 사용하였으면 종료해주어야하는 경우들이 있다. 대표적인예로 file이 있으며 AI분야에서는 Tensorflow.GradientTape이 있다. 그러나 코드를 작성하다보면 일일히 해당 객체들을 종료해주는 것은 귀찮기도 하며 종종 잊기도 한다. 따라서 파이썬에서는 with as라는 문법을 제공하여 해당 구문이 끝나면 자동으로 종료해주는 기능을 제공하고 있다. 2. 활용 2.1 file open/close 기존의 file open/close 방식 # 파일을 쓰기 모드로 생성 f = open("0_test.txt","w") # 파일에 문장 삽입 f.write('hello') f.write('world') # 파일 객체 종료 f.close() wi..
-
Tensorflow 손실 함수 종류(Loss function, tf.keras.losses)카테고리 없음 2022. 10. 31. 10:11
1. 목차 2. 활용법 2.1 model compile에서 손실함수 설정 model.compile에서는 loss 파라미터에 손실함수를 지정할때 사용 가능하다. 2.1.1 Name으로 설정하기 각 손실함수는 name이라는 파라미터를 가지고 있다. default값으로 각각 name이 지정되어 있으며 이를 통해서 해당 함수를 사용 가능하다. 단, name으로 사용할 경우 내부 파라미터를 지정할수 없다.(기본 파라미터로 사용된다.) model.compile(loss = 'sparse_categorical_crossentropy', optimizer = tf.keras.optimizers.SGD(learning_rate=0.01), metrics = ['accuracy']) 2.1.2 Class 이름으로 설정하기..
-
AutoEncoder 개념 및 종류Data Science/ML&DL 모델 2022. 10. 31. 00:12
1. AutoEncoder(오토인코더) 개념 AutoEncoder는 입력된 데이터를 압축시킨 후 다시 원본과 유사하게 복구하는 모델이다. 크게 Encoder, Decoder, Latent Representation으로 이루어져있다. Encoder는 입력된 데이터를 Latent Representation으로 압축시킨다. 이때 Latent Representation의 dimension(차원)은 입력데이터보다 작다. Decoder는 Latent Representation으로 압축된 데이터를 다시 원본 데이터 사이즈로 복구한다. 이때 우리의 목적은 Dimensionality Reduction이다. 아래 그림을 통해서 더 자세히 설명한다. 28*28 이미지를 Flatten하여 784 길이의 벡터로 만들어 입력값으..
-
Transformer Model 개념 및 모델 구조Data Science/ML&DL 모델 2022. 10. 28. 00:20
1. 개요 1.1 기존 Sequence to Sequence Model의 한계 context vector에 입력 문장의 정보를 압축하여 병목현상 발생 및 성능하락이 야기됨. (하나의 context vector가 입력 문장의 모든 정보를 가지고 있어야함.) (Context Vector는 고정된 길이의 벡터) Decoder에서 매번 히든스테이트를 갱신해야함. sos : start of sentence eos : end of sentence 1.2 Attenstion 개념이 추가된 Sequence to Sequence Model RNN에서 매 입력에따라 나오는 히든스테이트 전체를 예측의 입력으로 넣어주기위한 Attention Vector 등장. (아직 Transformer가 아닙니다.) Attention Ve..