{ "cells": [ { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "(ch:building_blocks)=\n", "# 신경망 기본 구성 요소" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**감사의 글**\n", "\n", "아래 내용은 프랑소와 숄레의 \n", "[Deep Learning with Python(2판)](https://github.com/fchollet/deep-learning-with-python-notebooks)의 \n", "소스코드 내용을 참고해서 작성되었습니다.\n", "자료를 공개한 저자에게 진심어린 감사를 전합니다." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**소스코드**\n", "\n", "여기서 언급되는 코드를\n", "[(구글 코랩) 신경망 구성 요소](https://colab.research.google.com/github/codingalzi/dlp2/blob/master/notebooks/NB-building_blocks_of_NN.ipynb)에서 \n", "직접 실행할 수 있다." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**슬라이드**\n", "\n", "본문 내용을 요약한 [슬라이드](https://github.com/codingalzi/dlp2/raw/master/slides/slides-building_blocks_of_NN.pdf)를 다운로드할 수 있다." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "**주요 내용**\n", "\n", "아래 요소들을 직관적으로 살펴본다.\n", "\n", "- 신경망 모델 구성, 훈련, 활용\n", "- 신경망 모델 훈련의 핵심 요소" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "(sec:nn-mnist)=\n", "## 신경망 모델 기초 훈련법" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "케라스 라이브러리를 이용하여 \n", "MNIST 손글씨 데이터셋을 대상으로 분류를 학습하는\n", "신경망 모델을 구성, 훈련, 활용하는 방법을 소개한다." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 훈련셋 준비" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "MNIST 데이터셋을 제공하는 많은 사이트가 있지만 여기서는\n", "케라스 라이브러리가 자체로 제공하는 데이터셋을 활용한다.\n", "\n", "```python\n", "from tensorflow.keras.datasets import mnist\n", "(train_images, train_labels), (test_images, test_labels) = mnist.load_data()\n", "```" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "- 손글씨 숫자 인식 용도 데이터셋. 28x28 픽셀 크기의 사진 70,000개의 샘플로 구성\n", " 라벨: 0부터 9까지 10개의 클래스 중 하나\n", "- 훈련셋: 샘플 60,000개 (모델 훈련용)\n", " - `train_images`\n", " - `train_labels`\n", "- 테스트셋: 샘플 10,000개 (훈련된 모델 성능 테스트용)\n", " - `test_images`\n", " - `test_labels`" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "