<commit_before># 5장 다중 계층 신경망 (Multi-Layer Neural Network)
작성일 : 20170510
작성자 : 전성욱
TEXT : 텐서플로 첫걸음 (First Contact with TensorFlow)

## 목표
- MINST 손 글씨 숫자를 인식하는 문제 -> 간단한 Deep Learning Neural network을 만든다.
- Deep Learning의 전형적인 예인 합성곱 신경망(CNN:Convolution Neural Network) 사용
- CNN은 1998년 얀 르쿤 등의 몇몇 사람들에 의해 처음 소개
- CNN은 이미지 인식 분야에 성능 좋음

## 중요 개념
- 합성곱 (Convolution)
- 폴링 (Pooling)

## 5.1 합성곱 신경망(CNN:Convolution Neural Network)

특성 : 거의 항상 입력데이터로 이미지를 받는다.
장정 : 신경망(Neural Network)을 효율적으로 구성 가능, 매개변수 수를 줄일 수 있다.

### 데이터 로드
~~~
from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets('MNIST_data', one_hot=True)
~~~

### 플레이스홀더 정의
~~~
import tensorflow as tf

x = tf.placeholder("float", shape=[None, 784])
y_ = tf.placeholder("float", shape=[None, 10])
~~~

### 입력 데이타를 원래 이미지 구조 재구성
~~~
x_image = tf.reshape(x, [-1,28,28,1])

28X28크기의 2차원 공간의 뉴런들

~~~
[-1,너비,높이,컬러채널]

![그림 5-1 신경망(Neural Network)의 입력 데이터](images/Img5-1.png =300x)
그림 5-1 신경망(Neural Network)의 입력 데이터

### 5.1.1 합성곱(Convolution) 계층
- CNN의 주요 목적 : 테두리, 선, 색 등 이미지의 시각적 특징이나 특성을 감지하는 것이다.
- 이런 부분은 입력 계층과 연결된 은닉 계층(Hiden Layer)에서 처리
- CNN은 입력데이타가 첫 번째 은닉 계층(Hiden Layer)의 뉴런에 완전히 연결(Fully Connected)되어 있지 않다.<commit_msg>image link test<commit_after># 5장 다중 계층 신경망 (Multi-Layer Neural Network)
작성일 : 20170510
작성자 : 전성욱
TEXT : 텐서플로 첫걸음 (First Contact with TensorFlow)

## 목표
- MINST 손 글씨 숫자를 인식하는 문제 -> 간단한 Deep Learning Neural network을 만든다.
- Deep Learning의 전형적인 예인 합성곱 신경망(CNN:Convolution Neural Network) 사용
- CNN은 1998년 얀 르쿤 등의 몇몇 사람들에 의해 처음 소개
- CNN은 이미지 인식 분야에 성능 좋음

## 중요 개념
- 합성곱 (Convolution)
- 폴링 (Pooling)

## 5.1 합성곱 신경망(CNN:Convolution Neural Network)

특성 : 거의 항상 입력데이터로 이미지를 받는다.
장정 : 신경망(Neural Network)을 효율적으로 구성 가능, 매개변수 수를 줄일 수 있다.

### 데이터 로드
~~~
from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets('MNIST_data', one_hot=True)
~~~

### 플레이스홀더 정의
~~~
import tensorflow as tf

x = tf.placeholder("float", shape=[None, 784])
y_ = tf.placeholder("float", shape=[None, 10])
~~~

### 입력 데이타를 원래 이미지 구조 재구성
~~~
x_image = tf.reshape(x, [-1,28,28,1])

28X28크기의 2차원 공간의 뉴런들

~~~
[-1,너비,높이,컬러채널]

![](images/Img5-1.png =300x)

그림 5-1 신경망(Neural Network)의 입력 데이터

### 5.1.1 합성곱(Convolution) 계층
- CNN의 주요 목적 : 테두리, 선, 색 등 이미지의 시각적 특징이나 특성을 감지하는 것이다.
- 이런 부분은 입력 계층과 연결된 은닉 계층(Hiden Layer)에서 처리
- CNN은 입력데이타가 첫 번째 은닉 계층(Hiden Layer)의 뉴런에 완전히 연결(Fully Connected)되어 있지 않다.
{'fraction_non_alphanumeric': 0.12939231087226127, 'fraction_numerical': 0.035551880942538236, 'mean_word_length': 3.859437751004016, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1365113', 'n_tokens_mistral': 1681, 'n_tokens_neox': 1938, 'n_words': 342}