프로그래밍 공부

알고리즘 40

카테고리 설명
  • 파라미터 저장tf.train.Chackpoint 클래스의 인자값으로 저장하고자 하는 tf.kears.Model 인스턴스와 전역 반복횟수를 지정해서 선언한다.ckpt = tf.train.Checkpoint(step=.tf.Variable(0), model=CNN_model) tf.train.ChackpointManager에 인자값으로 선언한 tf.train.Chackpoint 인스턴스와 중간 파라미터를 저장할 경로를 설정한다.ckpt_manager=tf.train.CheckpointManager(ckpt, directory=SAVER_DIR, max_to_keep=5) 파라미터를 저장하고자 하는 시점에 해당 시점의 전역 반복횟수를 인자값으로 선언한tf.train.ChackpointManager의 save ..

  • from __future__ import absolute_import, division, print_function, unicode_literalsfrom absl import appimport tensorflow as tfimport numpy as npimport osimport time# input 데이터와 input 데이터를 한글자씩 뒤로 민 target 데이터를 생성하는 utility 함수를 정의합니다.def split_input_target(chunk): input_text = chunk[:-1] target_text = chunk[1:] return input_text, target_text# 학습에 필요한 설정값들을 지정합니다.data_dir = tf.keras.utils.get_fi..

  • 임베딩 (Embedding)개념 임베딩은 머신러닝, 특히 자연어 처리 문제에서 데이터를 효율적으로 표현하기 위해 사용되는 기법이다.이는 고차원의 희소 벡터를 저차원의 밀집 벡터로 변환하여 단어 간의 유사성을 반영할 수 있도록한다. 임베딩은 One-Hot Encoding 을 보완하기 위해 생성된 것 이기 때문에,임베딩에 대해 알려면 One-Hot Encoding의 문제점 에 대해 알아야 한다.One-Hot Encoding 의 문제점 머신러닝에서 데이터를 표현하는 일반적인 방법 중 하나는 One-Hot Encoding이다. 그러나, 이 방법에는 몇 가지 문제가 있다. 데이터 표현형태가 Sparse하다.데이터 표현 형태가 희박(Sparse)하다는 문제점인데예를들어 10,000개의 단어사전에 있는 단어들 중 단..

  • 경사도 사라짐 문제(Vanishing Gradient Problem)정의경사도 사라짐 문제는 딥러닝 모델을 훈련할 때, 역전파 과정에서 아웃풋 레이어의 에러값이 이전 레이어로 전달될 때기울기(Gradient)가 점점 작아져서 거의 사라지는 현상을 말한다. 이는 특히 깊은 신경망이나 RNN(순환 신경망) 에서 두드러진다.RNN에서의 경사도 사라짐 문제RNN은 시간 축을 따라 시계열 데이터를 처리하는데,시간이 지남에 따라 초기 데이터의 영향력이 감소하여 장기적인 패턴을 학습하는 데 어려움을 겪는다. 이는 RNN이 장기 기억을 유지하지 못하고, 현재 시간과 가까운 데이터만을 고려하게 만들어 모델 성능을 저하시킨다.LSTM ( Long Short-Term Memory Networks )정의 및 목적LSTM은 R..

  • 순환신경망 (RNN)[Recurrent Neural Network]은 자연어 처리문제와 시계열 데이터를 다루기에 최적화된 인공신경망이다. 시계열 데이터시간 축을 중심으로 현재 시간의 데이터가 이전 및 이후 시간의 데이터와 연관관계를 가지는 데이터.예 : 주식 가격, 음성 데이터, 자연어 데이터 등.. 주식을 예로 들면오늘의 주식 가격은 어제의 주식 가격과 연관되어있고,내일의 주식 가격은 오늘의 주식 가격과 연관관계가 있다. 따라서 주식 가격은 시계열 데이터로 볼수 있다. RNN 구조 기본 개념기본적인 인공신경망(ANN) 구조에 이전 시간의 은닉층 출력값을 현재 시간의 입력값으로 사용하는 경로가 추가된 형태이다.이러한 순환 구조는 시간에 따라 데이터를 처리하고 이전 상태의 정보가 현재와 미래 상태에 영향을..

  • CIFAR-10 데이터셋은 10개의 클래스, 50,000개의 traing images, 10,000 개의 testing images로 구성되어있다. 이미지크기 : 32x32x3 pixels(Color Image) 레이블 : airplane, automobile, bird, cat, deer, dog, frog, horse, ship, truck. import tensorflow as tf# CIFAR-10 데이터를 다운로드하고 데이터를 불러옵니다.(x_train, y_train), (x_test, y_test) = tf.keras.datasets.cifar10.load_data()# 이미지들을 float32 데이터 타입으로 변경합니다.x_train, x_test = x_train.astype('float..