간단한 책 소개
이 책은 신경망과 딥러닝의 기본을 직접 만들면서 그 개념을 소개하고 있습니다.
일반적으로 잘 알려진 딥러닝 프레임워크인 TensorFlow나 PyTorch가 잘 되어 있긴 하지만,
밑바닥부터 딥러닝의 모델을 직접 만들어보는 것
은 매우 중요하다고 생각합니다.
그런 부분에 대한 니즈가 항상 있었는데, 프로그래머스 부트캠프를 하면서 팀원들과 같이
스터디 교재로 이 책을 선정하여 기록하고, 공부해보려고 합니다.
Chapter | Title | Main Topics |
---|---|---|
1강 | 헬로 파이썬 | 파이썬 기초 문법 소개, numpy, matplotlib |
2강 | 퍼셉트론 | AND, NAND, OR 게이트 |
3강 | 신경망 | 활성화 함수, 다차원 배열 계산, 출력층 설계, MNIST |
4강 | 신경망 학습 | 손실 함수, 경사 하강법 |
5강 | 오차역전파법 | 역전파, 활성화 함수 구현 |
6강 | 학습 관련 기술들 | 매개변수 갱신, 배치 정규화, 하이퍼파라미터 값 찾기 |
7강 | 합성곱 신경망 (CNN) | 합성곱 계층, 풀링 계층, CNN 구현 |
8강 | 딥러닝 (Deep learning) | 초기 역사, 딥러닝 활용 |
Appendix | Softmax with loss 계층의 계산 그래프 | - |
Chapter 1. 헬로 파이썬
1.1 파이썬이란?
- 파이썬은 간단하고 배우기 쉬운 프로그래밍 언어
- 오픈소스로 무료로 자유롭게 사용 가능
- 영어와 유사한 문법으로 프로그램 작성 가능
- 불편한 컴파일 과정이 따로 필요 없음
- 기계학습 같은 데이터 과학 분야에 널리 사용되고 있음
1.2 파이썬 설치하기
1.3 파이썬 인터프리터
- 산술 연산 (덧셈, 뺄셈, 나눗셈, 곱셈 등)
- 자료형 (int, float, str 등)
- 변수
- 파이썬은 동적 언어로 분류
- 동적이라는 것은 변수의 자료형을 상황에 맞게 자동으로 결정하는 것
- 자동 형변환
- 리스트 (indexing, slicing)
- 딕셔너리 (key & value)
- bool (True & False)
- if/else 문
- for, while 문
- 함수
1.4 파이썬 스크립트 파일
- 클래스 (생성자 - init)
- 인스턴스 변수
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class Man:
def __init__(self, name):
self.name = name
print("Initialized!")
def hello(self):
print("Hello " + self.name + "!")
def goodbye(self):
print("Good-bye " + self.name + "!")
m = Man("David")
m.hello()
m.goodbye()
1
2
3
Initialized!
Hello David!
Good-bye David!
1.5 넘파이
- numpy 패키지 공식 Documentation
- 배열이나 행렬 계산에 용이한 numpy 패키지
- numpy 패키지 불러오기 -
import numpy as np
- 배열 생성, 산술 연산, 브로드캐스트
1.6 matplotlib
- matplotlib 패키지 공식 Documentation
- 시각화에 용이한 matplotlib 패키지
1.7 정리
- 파이썬 소개
- 딥러닝 (신경망)을 구현하는데 필요한 프로그래밍 기본 학습
출처: 밑바닥부터 시작하는 딥러닝1 책 리뷰 -> 강의 내용 정리 깃허브 링크