본문 바로가기
반응형

DeepLearning18

Deep Learning | Autoencoder Autoencoder 머신러닝 학습 방법은 지도 학습과 비지도 학습으로 나눌 수 있다. 지도 학습은 프로그램에게 원하는 결과를 알려주고 학습하게 하는 방법이다. X와 Y가 둘 다 있는 상태에서 학습하는 것. 비지도 학습은 입력값으로부터 데이터의 특징을 찾아내는 학습 방법이다. X만 있는 상태에서 학습하는 것. 비지도 학습 중 가장 널리 쓰이는 신경망으로 Autoencoder가 있다. What is Autoencoder? 입력값과 출력값을 같게 하는 신경망으로, 가운데 계층의 노드 수가 입력값보다 적다. 입력 데이터를 압축하는 효과를 얻을 수 있고, 이 과정은 노이즈 제거에 효과적이다. 오토인코더의 핵심 기능 입력층으로 들어온 데이터를 인코더를 통해 은닉층으로 보내고, 은닉층의 데이터를 디코더를 통해 출력.. 2021. 7. 5.
Deep Learning | CNN (Convolutional Neural Network) Convolutional Neural Network (합성곱 신경망) 1998년 얀 레쿤 교수가 소개한 신경망, 이미지 인식 분야에서 강력한 성능을 냄. 음성인식이나 자연어 처리 등에도 사용가능하고 활용성이 매우 뛰어남. What is Convolution? 영상 처리 분야에서 convoulution(합성곱)이라는 것은 주로 filter 연산에 사용된다. 영상으로부터 특정 feature들을 추출하기 위한 필터를 구현할 때 사용한다. 즉, 3 by 3 또는 그 이상의 window 혹은 mask를 영상 전체에 대해 반복적으로 수행하면, 그 mask의 계수 값들에 따라 적절한 결과를 얻을 수 있다. 쉽게 이야기하면 평면 행렬에서 지정한 영역의 값들을 하나의 값으로 압축한다고 생각하면 된다. CNN이란? 합성곱.. 2021. 7. 5.
Deep Learning | MNIST import tensorflow as tf import numpy as np import matplotlib.pyplot as plt from tensorflow.examples.tutorials.mnist import input_data mnist = input_data.read_data_sets("./mnist/data/", one_hot=True) X = tf.placeholder(tf.float32, [None, 784]) Y = tf.placeholder(tf.float32, [None, 10]) keep_prob = tf.placeholder(tf.float32) W1 = tf.Variable(tf.random_normal([784, 256], stddev=0.01)) L1 = tf.nn.re.. 2021. 6. 30.
Deep Learning | Learning Model 재사용 & 텐서보드 사용 Learning Model 저장 후 재사용 & TensorBoard 사용하기. 발표 내용 2021. 6. 30.
Computer Vision Summary | 컴퓨터 비전 총정리 -2 11. Homography, Affine warping Affine transformation은 직선, 길이(거리)의 비, 평행성(parallelism)을 보존하는 변환이며 그 일반 식은 다음과 같고, homogeneous 형태로 표현한 식은 그 오른쪽에 나타냈다. 즉, Affine 변환은 회전, 평행이동, 스케일 뿐만 아니라 shearing, reflection까지 포함한 변환이다. Affine 변환의 자유도는 6이고, 3쌍의 매칭 쌍이 있으면 affine 변환을 유일하게 결정할 수 있다. 임의의 세 점 (x1, y1), (x2, y2), (x3, y3)를 (x1’ y1’), (x2’, y2’), (x3’, y3’)로 매핑시키는 affine 변환은 위의 식을 전개하여 a,b,c,d,e,f 에 대해 묶은.. 2021. 6. 30.
Computer Vision Summary | 컴퓨터 비전 총정리 -1 1.Support Vector Machine SVM(Support Vector Machine)은 Linear classifier(초평면을 이용하는 분류기)들 중에 하나이다. 분류상으로는 supervised Learning에 속한다. SVM에서 중요한 요소 3가지는 Margin, Support Vector, Kernel 이다. 1) 마진(margin) 마진은 하나의 데이터 포인트와 hyper plane 사이의 거리를 말한다. 정확히는 각각의 클래스의 데이터 벡터들로 부터 주어진 Hyper plane 까지의 거리중 가장 짧은 것을 말한다. 마진이 클수록 분별을 잘하는 분류기. 2) 서포트벡터(Support Vector) Hyper Plane 까지의 거리가 가장 짧은 데이터 벡터를 서포트 벡터라 한다. 이것으.. 2021. 6. 29.
Deep Learning | 기본 인공 신경망 구현 기본 신경망 구현 1. 인공 신경망 Artificial Neural Network란? 생물학의 신경망(뇌)에서 영감을 얻은 통계학적 학습 알고리즘. 뉴런의 원리와 같다. 입력 신호에 weight를 곱하고, bias를 더한 후, neurons이 활성화 함수를 거쳐, 결과 y를 만들어 낸다. Y = Sigmonid( X * W + b) 출력 = 활성화함수 ( 입력 * weight + bias) == 최적의 Weight와 bias를 찾아내는 것이 학습이다. Activation function 이란 ? 인공신경망을 통과해 온 값을 최종적으로 어떤 값으로 만들지 결정하는 함수. Activation function 종류 ? - Sigmoid - ReLU - tanH 최근에는 ReLU를 많이 사용한다. 입력값이 0보.. 2021. 6. 24.
Deep Learning | Linear regression(선형 회귀 모델 구현) Linear regression 선형 회귀 모델 구현. 선형 회귀란? = 주어진 x와 y의 값을 가지고 서로 간의 관계를 파악하는 것. 새로운 x 값이 주어졌을 때, y값을 예측 하는 것. x_data = [1,2,3] y_data = [1,2,3] 이라고 하자. X와 y의 상관 관계를 설명하기 위한 변수를 -1.0부터 1.0까지 균등분포 uniform distribution을 가진 무작위 값으로 초기화 한다. W = tf.Variable(tf.random_uniform([1], -1.0, 1.0)) b = tf.variable(tf.random_uniform([1], -1.0, 1.0)) 자료를 입력받을 플레이스 홀더를 설정한다. X = tf.placeholder(tf.float32, name = ”X.. 2021. 6. 17.
Deep Learning & Tensorflow 사용 기초 1. 골빈해커의 3분 딥러닝 텐서플로맛 교재와 함께 강의를 듣게 되었다. 우연히 교수님께서 책 저자인 김진중님을 모시고 와주셨고, 김진중님께 대략 두시간 정도 강의를 들었다. 원래는 야놀자 전략기술연구소장이셨고, 지금은 네이버 CLOVA에 계신다고했다. (블로그 폐쇄 후 다시 쓰느라 3년전 기준..) 2시간 정도 딥러닝을 처음 접하는데 쉽게 설명을 해주셨고, 이제 처음부터 책과 함께 쭉 따라가 보려고한다. 딥러닝과 텐서플로우 (MAC OS X 환경에서 python 3.6, tensorflow 1.2 버전 설치 후 실행하였습니다. ) 텐서플로우를 사용하기 위해 텐서플로 라이브러리를 임포트한다. $ import tensor flow as tf tf.constant 로 문자열 ‘Hello, TensorFlow!’ .. 2021. 6. 17.
반응형