딥러닝(8)
-
[ 딥러닝 ] RNN 기초
1. 순환 신경망(Recurrent Neural Network) 입력과 출력을 시퀀스 단위로 처리하는 시퀀스 모델 시퀀스 : 번역하고자 하는 단어의 문장 연속적인 데이터를 NN에 하나씩 순차적으로 넣어 처리하는 모델 1-1. RNN 동작 방식 은닉층의 노드에서 활성화 함수를 통해 나온 결과값을 다시 출력층 방향으로 보내면서 은닉층 노드의 다음 계산의 입력으로 보내는 특징 셀(cell): 은닉층에서 활성화 함수를 통해 결과를 내보내는 역할을 하는 노드, 이전의 값을 기억하려고 하는 일종의 메모리 역할을 수행 은닉 상태( hidden state): 셀이 출력층 방향 또는 다음 시점인 t+1의 자신에게 보내는 값 1-2. RNN의 유형 One to Many Many to One Many to Many 1-3...
2023.09.11 -
[ 딥러닝 ] 전이학습
1. 에일리언 VS 프레데터 데이터셋 https://www.kaggle.com/datasets/pmigdal/alien-vs-predator-images 케글 로그인 -> 계정 클릭 -> Your Profile -> Account -> API항목에 Create New Token -> kaggle.json 다운로드 import os os.environ['KAGGLE_USERNAME'] =#username os.environ['KAGGLE_KEY']=#key !kaggle datasets download -d pmigdal/alien-vs-predator-images !unzip -q alien-vs-predator-images.zip ----------------------------------------..
2023.09.11 -
[ 딥러닝 ] CNN 기초
1. CNN(Convolutional Neural Networks) 합성곱 인공 신경망 전통적인 뉴럴 네트워크에 컨볼루셔널 레이어를 붙인 형태 컨볼루셔널 레이어를 통해 입력 받은 이미지에 대한 특징(Feature)을 추출하게 되고, 추출한 특징을 기반으로 기존의 뉴럴 네트워크에 이용 1-1. CNN을 사용하는 이유 이미지 분류할 때 DNN(Deep Neural Network)의 문제점 일반적인 DNN은 1차원 형태의 데이터를 사용 -> 2차원 이상의 데이터가 입력되는 경우는 flatten 시켜서 한줄로 데이터를 변환 후 넣음 이미지의 공간적/지역적 정보가 손실됨 DNN의 문제점을 해결하기 위해 이미지를 그대로(Raw Input) 발음으로 공간적/ 지역적 정보를 유지 1-2. 이미지 데이터 컬러 이미지는 ..
2023.09.11 -
[ 딥러닝 ] 활성화 함수
1. 활성화 함수(Activation Functions) 신경망의 성능을 향상시키기 위해 사용 선형 함수는 입력값과 가중치를 곱한 결과를 그대로 출력하기 때문에 신경망에서 여러 개의 선형 활성화 함수를 사용한다면 최종 출력값은 입력값과 가중치의 선형 조합으로 표현되므로 이는 입력 데이터의 비선형 관계를 표현할 수 없음 신경망이 입력 데이터의 비선형 관계를 잘 학습할 수 있도록 하기 위해서 비선형 활성화 함수를 사용 import numpy as np import matplotlib.pyplot as plt 1-1. 시그모이드 def sigmoid(x): return 1/(1+np.exp(-x)) x= np.arange(-5.0,5.0,0.1) y=sigmoid(x) plt.plot(x,y) plt.plot..
2023.09.11 -
[ 딥러닝 ] 딥러닝
1. 퍼셉트론(Perceptron) 1-1. 생물학적 뉴런 인간의 뇌는 수십억 개의 뉴런을 가지고 있음 뉴런은 화학적, 전기적 신호를 처리하고 전달하는 연결된 뇌신경 세포 1-2. 인공 뉴런(Perceptron) 1943년에 워렌 맥컬록, 월터 피츠 단순화된 뇌세포 개념을 발표 신경 세포를 이진 출력을 가진 단순한 논리 게이트라고 설명 생물학적 뉴런의 모델에 기초한 수학적 기능으로, 각 뉴런이 입력을 받아 개별적으로 가중치를 곱하여 나온 합계를 비선형 함수를 전달하여 출력을 생성 1-3. 논리 회귀(단층 퍼셉트론)로 OR, AND 문제 풀기 # OR 게이트 (하나라도 True면 True) import torch import torch.nn as nn import torch.optim as optim X ..
2023.09.11 -
[ 딥러닝 ] 데이터로더
1. 손글씨 인식 모델 만들기 import torch import torch.nn as nn import torch.optim as optim import torchvision.transforms as tranforms import matplotlib.pyplot as plt from sklearn.datasets import load_digits device = 'cuda' if torch.cuda.is_available() else 'cpu' print(device) -------------------------------------------------------- # 결과 cuda --------------------------------------------------------- digits ..
2023.09.11