본문 바로가기

반응형

머신러닝공부

(45)
CNN-Convolution Neural Network (합성곱 신경망)간단 정리 컨볼루션이라는 것은 두개의 함수 f, g가 있을 때 1. 적분변수에 대해서 2. 하나의 함수를 반전(reverse)하고 시간 t만큼 전이(shift)시킨 후에, 3. 다른 하나의 함수와 곱한 결과를 4. 전체 구간에서 적분하는 것을 의미함 데이터 관점에서 곱셈연산은 원본 데이터 또는 입력데이터에 변화를 주어 출력 데이터를 만들어내는 역할을 수행하고 덧셈 연산은 데이터의 평균을 구한다는 의미를 내포한다. 즉, 컨볼루션 수식은 원본 데이터 또는 입력 데이터에 변화를 주어서, 그 변화된 값들의 평균을 구한다는 의미를 나타낸다. 데이터 관점 시간에 따른 이동 -> 곱셈 -> 덧셈 해석1: 시간의 흐름에 따라 데이터 g(x)가 이동하면서, 입력 데이터 f(x)를 평균적으로 얼마나 변화 시키는지 나타내는 것을 co..
Fashion MNIST 딥러닝 스크립트 예제 Fashion MNIST 손글씨가 아닌 옷과 신발 등의 흑백 이미지로서 MNIST보다는 좀 더 어려운 문제로 평가되고 있음 데이터 정의 -> 데이터 전처리 -> 모델 구축 -> 모델 컴파일 -> 학습 -> 모델 평가 # 데이터정의 (데이터 불러오기 및 확인) import tensorflow as tf import numpy as np from tensorflow.keras.datasets import fashion_mnist (x_train, t_train), (x_test, t_test) = fashion_mnist.load_data() print(학습데이터 정답) print(테스트 데이터 정답) import matplotlib.pyplot as plt plt.figure(figsize = (6,6))..
MNIST를 활용한 이미지 데이터 딥러닝 개발 프로세스2 Deep Learning MNIST Example # 데이터 불러오기 import tensorflow as tf import numpy as np from tensorflow.keras.datasets import mnist (x_train, t_train), (x_test, t_test) = mnist.load_data() print('\ntrain shape = ', x_train.shape, ', Train label shape = ', t_train.shape) print('\ntest shape = ', t_train.shape,', test label shape = ', t_train.shape) print('\ntrin label = ', t_train) # 학습 데이터 정답 출력 print..
MNIST를 활용한 이미지 데이터 딥러닝 개발 프로세스 MNIST MNIST 데이터는 28 x 28 크기의 숫자 이미지와 0~9까지의 정답으로 이루어져 있으며, 총 60000개의 학습데이터와 10000개의 테스트 데이터로 구성되어 있다. MNIST는 딥러닝을 배울 때 처음 배우는 'Hello, World'같은 존재임 Architecture 입력층 : 입력층에는 28x28 크기를 가지는 2차원 이미지 데이터를 1차원 벡터로 변환해야 함, Flatten() 함수를 이용해서 28x28 크기의 2차원 이미지를 784개(28x28)의 길이를 갖는 1차원 벡터로 변환해서 은닉층으로 전달함 은닉층 : 딥 러닝 아키텍처는 일반적으로 1개 이상의 은닉층으로 이루어져 있으며 각각의 은닉층은 내부에 많은 노드(node)로 구성됨. 이러한 은닉층 개수와 노드 개수는 전형적인 하이..
이항 분류 Binary Classification 딥러닝 예제 # 데이터 생성 import tensorflow as tf import numpy as np x_data = np.array([...]).astype('float32') t_data = np.array([...]).astype('float32') # 모델 구축 model = tf.keras.models.Sequential() model.add(tf.keras.layers.Dense(8, input_shape(1,), activation = 'sigmoid') # 은닉층 8개 노드, 입력층 노드 1개 model.add(tf.keras.layers.Dense(1, activation = 'sigmoid') # 출력층 1개 노드 # 모델 컴파일 model.compile(tf.keras.optimizers.SG..
Logistic Regression / DeepLearning 간단 비교 인공지능 Artificial Inteligence 인공적으로 만들어진 지능, 인간의 학습/추론 능력 등을 컴퓨터를 통해 구현하는 추상적인 개념 머신러닝 Machine Learning 데이터를 이용하여 데이터 특성과 패턴을 학습하고, 그 결과를 바탕으로 미지의 데이터에 대한 결과를 예측 딥러닝 Deep Learning 머신러닝의 한 분아로서, 인공신경망(ANN, Aritificial Neural Network)을 이용하여 데이터 특성과 패턴을 학습한 후에 그 결과를 바탕으로 학습되지 않은 미지의 데이터에 대한 미래 결과를 예측 Deep Learning Basic Architecture는 기본 Machine Learning Architecture에 은닉층이 추가된 형태이다. # Logistic Regress..
(Linear Regression Classification)피마 인디언 부족의 당뇨병 발병 여부를 예측하는 데이터 실습 - 머신러닝에서 Logistic Regression을 학습하는 일반적인 데이터 - Colab에서 실행 시 local 또는 Google Drive에서 파일을 읽어들인 후 학습 데이터와 테스트 데이터 등을 분리하여야 함 마운트 Mount 저장장치를 사용할 수 있도록 특정 디렉토리에 연결하는 것 Google Drive에 학습 데이터가 저장되어 있고 Colab에서 이러한 학습데이터를 이용하여 딥러닝 개발을 하는 경우 Google Drive --- Mount ---> Colab, Colab의 특정 디렉토리에 Google Drive를 Mount 시켜야 함 # Colab에 GoogleDrive Mount import tensorflow as tf from tensorflow.keras.models import Seq..
Logistic Regression - Classfication 요약 정리 분류 Classfication Training Data 특서과 관계등을 파악한 후에, 미지의 입력 데이터에 대해서 결과가 어떤 종류의 값으로 분류할 수 있는지를 예측하는 것 1. input 2. learning 3. ask 4. predict Logistic Regression 알고리즘 1. Training Data 특성과 분포를 나타내는 최적의 직선을 찾는다. 2. 최적의 직선을 기준으로 데이터 (1) 또는 (0) (위/아래 or 왼쪽/오른쪽)등으로 분류해주는 알고리즘을 classfication이라고 한다. -> 이러한 Logistic Regression은 Classfication 알고리즘 중에서도 정확도가 높은 알고리즘으로 알려져 있어서 Deep Learning에서 기본 Component로 사용되고 ..

반응형