CS/Deep Learning

    [Deep Learning] 손실 함수(Cost function)

    [Deep Learning] 손실 함수(Cost function) 손실 함수(Cost function)란 가중치 W와 편향 b가 entire training set에서 얼마나 잘 맞는지, 일치하는지 측정하는 함수이다. Loss function과 비슷하지만 Cost function 은 entire data set을 대상으로 하고 Loss function은 single data set을 다룬다는 점에서 차이가 있다. 손실 함수에는 여러 종류가 있다. 1. tf.squre로 거리의 제곱을 손실함수로 적용 cost = tf.reduce_mean(tf.square(y - model)) 2. tensorflow가 기본 제공하는 cross entropy 함수를 손실함수로 적용 자세히 보기 : [Deep Learnin..

    [Deep Learning] Cross-entropy

    Entropy 란 확률적으로 발생하는 사건에 대한 정보량의 평균을 의미한다. 정보량은 식으로 나타내면 인데 이것은 놀람의 정도를 말한다. 사건의 발생확률이 낮을수록 놀람의 정도는 커진다. 즉 높은 정보량을 갖고 있음을 의미한다. 여기서 로그 함수를 취하는 이유는 놀람의 정도를 표현하는데 최소한의 자원을 나타낼 수 있기 때문이다. Cross-entropy는 두개의 확률 분포 p와 q에 대해서 하나의 사건 X가 갖는 정보량을 의미한다. 다시 말하면 q에 대한 정보량을 p에 대해서 평균 낸 것을 말하는데 식으로 나타내면 이다. Cross-entropy는 손실함수를 정의하는데 사용되곤 한다. 이때 p는 true probability로써 true label에 대한 분포를, q는 현재 예측모델의 추정값에 대한 분포..

    [Deep Learning] 활성화 함수(Activation function)

    [Deep Learning] 활성화 함수(Activation function) 활성화 함수(Activation Function)란 입력 신호의 총합을 출력 신호로 변환하는 함수이다. 즉 입력 값들을 받아서 출력값의 활성화를 일으키게 할 것이냐를 결정하고 그 값을 부여하는 함수이다. 활성화 함수를 사용하는 이유는 data를 비선형으로 바꾸기 위해서이다. 선형 시스템을 망에 적용하면 망이 깊어지지 않는다(=layer 층이 많아지지 않는다.). 다시 말해 망이 아무리 깊어지더라도, 1층의 hidden layer로 구현이 가능하다. 망이 깊어지는 것의 장점은 아래와 같다. 매개 변수가 줄어진다는 것 : 망이 깊어지면 같은 수준의 정확도의 망을 구현하더라도 매개변수가 더 적게 필요하다. 필요한 연산의 수가 줄어든..

    [Deep Learning] MLP(Multi-layer perceptrons)

    [Deep Learning] 인공 신경망 순서 1. Linear regression 2. Single Layer Perceptron 3. Multi Layer Perceptron to slove XOR 신경망 모델 뉴런을 수학적으로 모델링 한 것. 뉴런이 다른 여러개의 뉴런으로부터 입력값을 받아서 외부로 출력값을 내보내는 것처럼, 인공신경망 모델은 여러 입력값을 받아서 일정 수준이 넘어서면 활성화되어 출력값을 내보낸다. 신경망 모델 학습 프로세스 데이터 processing: 데이터 전처리하는 과정 (ex 784차원 --(reshape)-->28X28) model 디자인: layer 종류, 개수 및 뉴런 개수 설정 + 각 layer마다의 activation function 설정 Loss function 설..

    [Deep Learning] MNIST

    MNIST - 손으로 쓴 숫자들로 이루어진 대형 데이터베이스. 이미지 + 이미지에 해당하는 라벨로 구성되어 있다. 여기서 라벨이란 해당 이미지가 의미하는 숫자다. - 이미지 하나당 28X28 = 784차원의 픽셀로 이루어져 있다. 각각 픽셀 하나는 0-1사이의 값인데 0에 가까우면 흰색으로 칠해서 이미지를 보여주고 1에 가까우면 검은색으로 칠한다. 이를 통해 컴퓨터가 어떤 이미지인지 인식하게 된다. 여기서 픽셀을 표현하는 벡터는 [ 0, 0, 0, 1, 0 ,... 0] -> 이와 같이 linear하게 표현된다. - 라벨은 0부터 9까지 할당된다. 라벨도 [0, 0, 1, 0,...,0] -> 이와 같이 one-hot방식으로 표현된다. MNIST data 7만개의 데이터가 있다. Training Data..

    [Deep Learning] Tensorflow 설치 및 기본 사용법

    Tensorflow 설치 텐서플로우란 데이터 플로우 그래프를 사용하여 수치 연산을 하는 오픈소스 소프트웨어 라이브러리 (참고 https://tensorflowkorea.gitbooks.io/tensorflow-kr/content/g3doc/) Anaconda 설치 - 가상환경 만들어줌 - https://www.anaconda.com/distribution/ Anaconda Python/R Distribution - Free Download Anaconda Distribution is the world's most popular Python data science platform. Download the free version to access over 1500 data science packages an..

    [Deep Learning] Introduction

    용어 Artificial Intelligence(인공지능) : 인간의 지능이 갖고 있는 기능을 갖춘 컴퓨터 시스템. 인간의 지능을 기계 등에 인공적으로 구현한 것. Machine Learning(기계학습) : 인공지능에 포함된 개념으로 충분한 Data(Big data)가 있을 때 data Modeling을 통해 새로운 data를 도출해 내서 decision을 만들어 내는 것. 즉 컴퓨터가 학습할 수 있도록 하는 알고리즘과 기술을 개발하는 분야 Deep Learning(딥러닝) : 기계학습의 한 분야로 인공 신경망 기술을 이용함. 기계학습 알고리즘의 집합. What you'll learn in this course 1. (Artificial) Neural Networks and Deep Learning -..