# data[].attributes.attachment_link.readable_text
강좌 개요

http://www.boostcourse.org/ai222

둘러보기

수강신청

교수자 소개

최성철

TEAMLAB&nbspdirector
가천대학교&nbsp산업경영공학과&nbsp교수
특허청&nbsp지식재산&nbsp정보&nbsp활용&nbsp자문위원
전&nbsp삼성전자&nbsp종합기술원&nbspCTO&nbsp전략팀

추가정보

※&nbsp네이버&nbsp커넥트재단은&nbsp교육을&nbsp통해&nbsp개인의&nbsp지속적인&nbsp성장과&nbsp발전을&nbsp돕고,&nbsp원하는&nbsp곳&nbsp어디든&nbsp배움의&nbsp기회가&nbsp열리는&nbsp세상을&nbsp만들기&nbsp위해&nbsp노력합니다.&nbsp부스트코스는&nbsp커리어&nbsp역량을&nbsp강화할&nbsp수&nbsp있도록,&nbsp네이버&nbsp커넥트재단에서&nbsp기획하고&nbsp운영하는&nbsp실무형&nbsp온라인&nbsp교육&nbsp프로그램입니다

[Publisher]&nbsp&nbspTEAMLAB&nbsp연구원:&nbsp이현주

# data[].attributes.attachment_link.keywords[]
"머신러닝을 위한 파이썬

# data[].attributes.attachment_link.title
머신러닝을 위한 파이썬

# data[].attributes.headline
(모두를 위한 딥러닝 시즌2)

# data[].attributes.body
(모두를 위한 딥러닝 시즌2)

# data[].attributes.attachment_link.readable_text
강좌 개요

http://www.boostcourse.org/ai214

둘러보기

수강신청

교수자 소개

Deep Learning Zero To All

Deep&nbspLearning&nbspZero&nbspTo&nbspAll&nbsp은&nbsp"모두를&nbsp위한&nbsp딥러닝"의&nbsp이름입니다.&nbsp커넥트재단은&nbsp모모딥&nbsp프로젝트에&nbsp참여하신&nbsp여러&nbsp재능기부자(Contributors)를&nbsp후원했습니다.

모두의연구소

모두의연구소는&nbsp하고&nbsp싶은&nbsp일을&nbsp할&nbsp수&nbsp있도록&nbsp스스로&nbsp설계하고&nbsp수행해&nbsp나갈&nbsp수&nbsp있게&nbsp하는&nbsp교육&nbsp및&nbsp연구기관&nbsp입니다.&nbsp일반적으로&nbsp연구를&nbsp하기&nbsp위해서는&nbsp대학원에&nbsp들어&nbsp가거나&nbsp취직을&nbsp해야&nbsp가능했습니다.&nbsp모두의연구소의&nbsp목표는&nbsp이러한&nbsp구조에서&nbsp벗어나&nbsp누구나&nbsp참여할&nbsp수&nbsp있는&nbsp열린&nbsp연구의&nbsp놀이터를&nbsp만드는&nbsp것&nbsp입니다.

# data[].attributes.attachment_link.keywords[]
"파이토치로 시작하는 딥러닝 기초

# data[].attributes.attachment_link.title
파이토치로 시작하는 딥러닝 기초

# data[].attributes.attachment_link.description
강좌 개요 http://www.boostcourse.org/ai214 둘러보기 수강신청 교수자 소개 Deep Learning Zero To All ...

# data[].attributes.headline
홍콩과기대 김성훈교수님의 "모두를 위

# data[].attributes.body
홍콩과기대 김성훈교수님의 "모두를 위한 딥러닝 시즌1" 입니다. 아쉽게도 Tensorflow 1.0 으로 실습과제가 되어 있습니다.

# data[].attributes.attachment_link.readable_text
모두를 위한 머신러닝과 딥러닝의 강의

알파고와 이세돌의 경기를 보면서 이제 머신 러닝이 인간이 잘 한다고 여겨진 직관과 의사 결정능력에서도 충분한 데이타가 있으면 어느정도 또는 우리보다 더 잘할수도 있다는 생각을 많이 하게 되었습니다. Andrew Ng 교수님이 말씀하신것 처럼 이런 시대에 머신 러닝을 잘 이해하고 잘 다룰수 있다면 그야말로 "Super Power"를 가지게 되는 것이 아닌가 생각합니다.

더 많은 분들이 머신 러닝과 딥러닝에 대해 더 이해하고 본인들의 문제를 이 멋진 도구를 이용해서 풀수 있게 하기위해 비디오 강의를 준비하였습니다. 더 나아가 이론에만 그치지 않고 최근 구글이 공개한 머신러닝을 위한 오픈소스인 TensorFlow를 이용해서 이론을 구현해 볼수 있도록 하였습니다.

수학이나 컴퓨터 공학적인 지식이 없이도 쉽게 볼수 있도록 만들려고 노력하였습니다.

시즌 RL - Deep Reinforcement Learning
비디오 리스트 (천천이 업데이트 예정입니다. 시즌 1 먼저 들으신 다음 들으시면 좋습니다.)

Lab 5-1: Q-learning web Demo 비디오

Lab 7-3: DQN Cart Pole Demo 비디오

Lab 7-4: DQN Simple Pacman Demo (여러분은 최고 몇점까지 갈수 있나요?) 비디오

시즌 NLP - Deep NLP
(TBA)

Bot lab1-1: API.ai의 개념 비디오

Bot lab1-2: API.ai 사용해보기 비디오

시즌 1 - 딥러닝의 기본 (TF 1.X lab 완료!) 비디오 리스트

수업에 사용하는 코드 https://github.com/hunkim/DeepLearningZeroToAll

머신러닝의 개념과 용어 비디오 (TensorFlow의 기본Lab 비디오 )강의 슬라이드 Lab 슬라이드

Linear Regression 의 개념 비디오 (TensorFlow 로 구현Lab 비디오 )강의 슬라이드 Lab 슬라이드

Linear Regression cost함수 최소화 비디오 (TensorFlow 로 구현Lab 비디오 )강의 슬라이드 Lab 슬라이드

여러개의 입력(feature)의 Linear Regression 비디오 (TensorFlow 로 구현Lab1 비디오 ) (파일 데이타 로딩Lab2 비디오 )강의 슬라이드 Lab 슬라이드

Hypothesis 함수 소개 비디오

Cost 함수 소개 비디오

TensorFlow 에서의 구현 비디오

Multinomial 개념 소개 비디오

Cost 함수 소개 비디오

Lab1: TensorFlow에서의 구현 비디오

Lab2: TensorFlow에서의 Fancy한 구현 비디오

학습 rate, Overfitting, 그리고 일반화 (Regularization) 비디오

Training/Testing 데이타 셋 비디오

Lab 1: TensorFlow에서의 구현 (학습 rate, training/test 셋으로 성능평가) 실습 비디오 1

Lab 2: Meet MNIST dataset 실습 비디오 2

딥러닝의 기본 개념: 시작과 XOR 문제 비디오

딥러닝의 기본 개념2: Back-propagation 과 2006/2007 '딥'의 출현 비디오

Lab : Tensor Manipulation 실습 비디오

XOR 문제 딥러닝으로 풀기 비디오

특별편: 10분안에 미분 정리하기 비디오

딥넷트웍 학습 시키기 (backpropagation) 비디오

실습1: XOR을 위한 텐스플로우 딥넷트웍 비디오

실습2: Tensor Board로 딥네트웍 들여다보기 비디오

XSigmoid 보다 ReLU가 더 좋아 비디오

Weight 초기화 잘해보자 비디오

Dropout 과 앙상블 비디오

레고처럼 넷트웍 모듈을 마음껏 쌓아 보자 비디오

실습: 딥러닝으로 MNIST 98%이상 해보기 비디오

ConvNet의 Conv 레이어 만들기 비디오

ConvNet Max pooling 과 Full Network 비디오

ConvNet의 활용예 비디오

실습1: TensorFlow CNN 의 기본 비디오

실습2: TensorFlow로 구현하자 (MNIST 99%) 비디오

실습3: Class, tf.layers, Ensemble (MNIST 99.5%) 비디오

Recurrent Neural Network 강의 슬라이드 실습 슬라이드

NN의 꽃 RNN 이야기 비디오

실습1: RNN의 기본 비디오

실습2: Hi Hello RNN Traning 비디오

실습3: Long Sequence RNN 비디오

실습4: Stacked RNN + Softmax Layer 비디오

실습5: Dynamic RNN 비디오

실습6: 타임시리즈 RNN 비디오

[보너스] Deep Deep Network AWS 에서 GPU와 돌려보기 (powered by AWS) 실습 슬라이드 비디오

[보너스2] AWS에서 저렴하게 Spot Instance를 터미네이션 걱정없이 사용하기 (powered by AWS) 실습 슬라이드 비디오

[보너스3] Google Cloud ML을 이용해 TensorFlow 실행하기 실습 슬라이드 비디오 (한글) 비디오 (영어)

Acknowledgement

이 비디오는 저도 인터넷등을 통해 공부하면서 만든것이며 아래 자료를 많이 사용하였습니다.

Andrew Ng's and other ML tutorials

Lecture Videos

Tensorflow

의견주기

비디오나 강의에 대한 의견이 있으시면 아래로 이메일을 보내 주시면 됩니다. 홍콩과기대 김성훈 hunkim+ml@gmail.com

# data[].attributes.attachment_link.title
모두를 위한 머신러닝/딥러닝 강의

# data[].attributes.attachment_link.description
알파고와 이세돌의 경기를 보면서 이제 머신 러닝이 인간이 잘 한다고 여겨진 직관과 의사 결정능력에서도 충분한 데이타가 있으면 어느정도 또는 우리보다 더 잘할수도 있다는 생각을 많이 하게 되었습니다. Andrew Ng 교수님이 말씀하신것 처럼 이런 시대에 머신 러닝을 잘 이해하고 잘 다룰수 있다면 그야말로 "Super Power"를 가지게 되는 것이 아닌가 생각합니다.

# data[].attributes.headline
이것도 자주 언급되는 정식으로 하는 CNN 입문 강의입니다. 워낙 유명해서 한글 자료도 많이 있습니다.

# data[].attributes.subject
이것도 자주 언급되는 정식으로 하는 CNN 입문 강의입니다. 워낙 유명해서 한글 자료도 많이 있습니다.

# data[].attributes.attachment_link.title
Lecture Collection | Convolutional Neural Networks for Visual Recognition (Spring 2017)

# data[].attributes.attachment_link.description
Computer Vision has become ubiquitous in our society, with applications in search, image understanding, apps, mapping, medicine, drones, and self-driving car...

# data[].attributes.body
파이썬을 이용한 머신러닝, 딥러닝 실전 개발 입문 - YES24

# data[].attributes.headline
이건 CNN 이해안갈때 한방에 이해되

# data[].attributes.body
이건 CNN 이해안갈때 한방에 이해되게 도와준 강의입니다~ 서울대 박사과정이실때(?) 찍으신거 같은데 설명이 엄청 좋았어요

# data[].attributes.attachment_link.readable_text
강좌 개요

http://www.edwith.org/deeplearningchoi

둘러보기

수강신청

교수자 소개

최성준

안녕하세요.&nbsp저는&nbsp현재&nbsp박사&nbsp과정&nbsp중에&nbsp있으며,&nbsp기계&nbsp학습과&nbsp로보틱스를&nbsp주로&nbsp연구하고&nbsp있습니다.&nbsp오랜&nbsp시간을&nbsp관악산에&nbsp거주하였으나&nbsp지금은&nbspLA에서&nbsp리서치&nbsp인턴을&nbsp하고&nbsp있습니다.&nbsp대부분의&nbsp시간을&nbsp이런&nbsp저런&nbsp생각을&nbsp하거나&nbsp코딩을&nbsp하면서&nbsp보내고,&nbsp종종&nbsp논문을&nbsp읽고,&nbsp또&nbsp쓰기도&nbsp합니다.&nbsp최근엔&nbsp생활비를&nbsp벌기&nbsp위해서&nbsp강의도&nbsp가끔씩&nbsp합니다.&nbsp주로&nbsp연구하는&nbsp분야는&nbsp모방&nbsp학습과&nbsp강화&nbsp학습&nbsp분야이고,&nbsp관련&nbsp연구자들을&nbsp만나서&nbsp잡담하는&nbsp것을&nbsp좋아합니다.&nbsp연구&nbsp관련&nbsp연락은&nbsp언제든&nbsp환영이에요.&nbsp:)

강의계획

강의목록

1. 딥러닝 준비하기
딥러닝 & 딥러닝 개발 도구

앞으로 우리가 다뤄볼 내용들

Convolutional Neural Network(CNN)의 기초

[실습] 기본 파이썬 문법 실습

기계 학습 용어 정리

2. 딥러닝 들어가기
4가지 CNN 살펴보기: AlexNET, VGG, GoogLeNet, ResNet

[실습] 이미지 처리 실습하기

[실습] MNIST 데이터셋 사용법 익혀보기

Overfitting을 막는 regularization

Nature 논문으로 살펴보는 AlphaGo 알고리즘

[실습] 기본 Tensorflow 문법 실습

[실습] Logistic Regression으로 숫자 분류기를 구현하기

Optimization 방법론

Restricted Boltzmann Machine

3. Convolutional Neural Network(CNN)을 이용한 Application
[실습] Multilayer Perceptron(MLP) 로 숫자 분류기 구현하기

[실습] Custom dataset 만들어보기

이미지의 각 픽셀을 분류하는 Semantic Segmentation

[실습] Convolutional Neural Network(CNN)으로 숫자 분류기 구현하기

[실습] Custom dataset을 이용한 분류기 구현하기

[실습] 99% 정확도를 넘기는 정교한 CNN 구현하기

Residual Network가 왜 잘 되는지 해석해보기

Weakly Supervised Localization

Image Detection 방법론: RCNN, SPPnet, FastRCNN, FasterRCNN

Image Detection 방법론: AttentionNet, SSD, YOLO, YOLOv2

이미지와 질문이 주어졌을 때 답을 맞추는 Visual QnA

이미지를 설명하는 문장을 만들어내는 Image Captioning

4. Advanced Topics
딥러닝을 이용한 강화학습

Recurrent Neural Network(RNN): LSTM

RNN을 이용해 손글씨를 만드는 Handwriting generation

주어진 사진을 원하는 화풍으로 만드는 Neural Style

Generative Adversarial Network

[실습] RNN 실습

추가정보

*&nbsp본&nbsp강의를&nbsp듣기&nbsp전에&nbsp미리&nbsp살펴보기를&nbsp추천하는&nbsp'모두를&nbsp위한&nbsp딥러닝'&nbsp강의입니다.
https://hunkim.github.io/ml/

*&nbsp본&nbsp강의를&nbsp진행하는&nbsp최성준님의&nbspgithub입니다.&nbsp모든&nbsp강의자료,&nbsp논문자료&nbsp및&nbsp소스코드는&nbspgithub에서도&nbsp확인할&nbsp수&nbsp있습니다.
https://github.com/sjchoi86

*&nbsp스탠포드의&nbsp유명한&nbsp딥러닝&nbsp강의도&nbsp추천합니다.(CS231n)
http://cs231n.stanford.edu

*&nbspTensorflow의&nbspblog에서도&nbsp유익한&nbsp정보가&nbsp많습니다.
https:/tensorflowkorea.wordpress.com&nbsp

# data[].attributes.attachment_link.keywords[]
"논문으로 짚어보는 딥러닝의 맥

# data[].attributes.attachment_link.title
논문으로 짚어보는 딥러닝의 맥 강좌소개 : edwith

# data[].attributes.headline
가지고 있는 책이라 공유해봅니다

# data[].attributes.body
가지고 있는 책이라 공유해봅니다

# data[].attributes.attachment_link.readable_text
원제 ゼロから作るDEEP LEARNING PYTHONで學ぶディ-プラ-ニングの理論と實裝

직접 구현하고 움직여보며 익히는 가장 쉬운 딥러닝 입문서!

『밑바닥부터 시작하는 딥러닝』은 라이브러리나 프레임워크에 의존하지 않고, 딥러닝의 핵심을 '밑바닥부터' 직접 만들어보며 즐겁게 배울 수 있는 본격 딥러닝 입문서다. 술술 읽힐 만큼 쉽게 설명하였고, 역전파처럼 어려운 내용은 '계산 그래프' 기법으로 시각적으로 풀이했다. 무엇보다 작동하는 코드가 있어 직접 돌려보고 요리조리 수정해보면 어려운 이론도 명확하게 이해할 수 있다. 딥러닝에 새롭게 입문하려는 독자들과 기초를 다시금 정리하고 싶은 현업 연구자와 개발자에게 유용한 책이 될 것이다.

새로운 지식을 배울 때 설명만 들어서는 석연치 않거나 금방 잊어버리게 된다. 그래서 무엇보다 '직접 해보는 것'이 중요하다. 이 책은 딥러닝의 기본을 '이론 설명'과 '파이썬 구현 코드'라는 투 트랙으로 설명한다. 각 장은 주제 하나를 설명한 후 그것을 실습할 수 있도록 꾸몄다. 즉, 실행되는 소스 코드를 준비했다. 소스 코드를 읽으면서 스스로 생각하고 그 생각을 반영해 실험하다 보면 확실하게 자기 것으로 만들 수 있다. 여러 실험을 해보면서 겪는 시행착오 역시 큰 자산이 될 것이다.

사이토 고키

저자 : 사이토 고키
저자 사이토 고키(藤 康毅)는 1984년 나가사키 현 쓰시마 태생. 도쿄공업대학교 공학부를 졸업하고 도쿄대학대학원 학제정보학부 석사 과정을 수료했다. 현재는 기업에서 컴퓨터 비전과 기계학습 관련 연구개발에 매진하고 있다. 오라일리재팬에서 『실천 파이썬 3』, 『컴퓨터 시스템의 이론과 구현』, 『실천 기계학습 시스템』 등을 번역했다.

역자 : 개앞맵시
역자 개앞맵시(이복연)는 고려대학교 컴퓨터학과를 졸업하고 삼성소프트웨어멤버십을 거쳐, 삼성전자 소프트웨어센터와 미디어솔루션센터에서 자바 가상 머신, 바다 플랫폼, 챗온 메신저 서비스 등을 개발했다. 주 업무 외에 분산 빌드, 지속적 통합, 앱 수명주기 관리 도구, 애자일 도입 등 동료 개발자들에게 실질적인 도움을 주는 일에 적극적이었다. 그 후 창업 전선에 뛰어들어 소셜 서비스, 금융 거래 프레임워크 등을 개발하다가, 무슨 바람이 불어서인지 책을 만들겠다며 기획ㆍ편집자(자칭 WISDOM COMPILER)로 변신했다.

『EFFECTIVE UNIT TESTING』(한빛미디어, 2013)과 『JUNIT 인 액션』(인사이트, 2011)을 번역했다.

〈개발자의 앞길에 맵핵 시전〉, 줄여서 '개앞맵시'는 역자가 어려서부터 생각한 후학 양성의 꿈을 조금 독특한 방식으로 일찍 실행에 옮긴 것이다. 현재 모습은 게임, 서버, 웹 등 주요 직군별 개발자에게 꼭 필요한 기술과 역량을 안내하는 책들을 로드맵 형태로 정리한 지도다. 필요할 때 바로 구해볼 수 있도록 판매 중인 도서만을 다룬다.

페이스북 : HTTPS://FACEBOOK.COM/DEV.LOADMAP

로드맵 모음 : HTTPS://MINDMEISTER.COM/USERS/CHANNEL/WEGRA

스카이넷도 딥러닝부터 : HTTPS://MINDMEISTER.COM/812276967/_

파이썬으로 익히는 딥러닝 이론과 구현

새로운 지식을 배울 때 설명만 들어서는 석연치 않거나 금방 잊어버리게 됩니다. 그래서 무엇보다 '직접 해보는 것'이 중요합니다.
이 책은 딥러닝의 기본을 '이론 설명'과 '파이썬 구현 코드'라는 투 트랙으로 설명합니다. 각 장은 주제 하나를 설명한 후 그것을 실습할 수 있도록 꾸몄습니다. 즉, 실행되는 소스 코드를 준비했습니다. 직접 실행해보세요! 소스 코드를 읽으면서 스스로 생각하고 그 생각을 반영해 실험하다 보면 확실하게 자기 것으로 만들 수 있습니다. 여러 실험을 해보면서 겪는 시행착오 역시 큰 자산이 될 것입니다.

_예제 소스: https://github.com/WegraLee/deep-learning-from-scratch

★ 누구를 위한 책인가?
_ 외부 라이브러리는 최소한만 이용하고 파이썬을 사용해 딥러닝 프로그램을 처음부터 구현합니다.
_ 파이썬이 처음인 사람도 이해할 수 있도록 파이썬 사용법도 간략히 설명합니다.
_ 실제 동작하는 파이썬 코드와 독자가 직접 실험할 수 있는 학습 환경을 제공합니다.
_ 간단한 기계학습 문제부터 시작하여 궁극에는 이미지를 정확하게 인식하는 시스템을 구현합니다.
_ 딥러닝과 신경망 이론을 알기 쉽게 설명합니다.
_ 오차역전파법(backpropagation)과 합성곱(convolution) 연산 등 복잡해 보이는 기술을 구현 수준에서 이해할 수 있도록 설명합니다.
_ 하이퍼파라미터 결정 방식, 가중치 초깃값 등 딥러닝을 활용하는 데 도움이 되는 실용적인 기술을 소개합니다.
_ 배치 정규화, 드롭아웃, Adam 같은 최근 트렌드를 설명하고 구현해봅니다.
_ 딥러닝이 왜 뛰어난지, 층이 깊어지면 왜 정확도가 높아지는지, 은닉층이 왜 중요한지와 같은 '왜'에 관한 문제도 다룹니다.
_ 자율 주행, 이미지 생성, 강화학습 등, 딥러닝을 응용한 예를 소개합니다.

★ 누구를 위한 책이 아닌가?
_ 딥러닝 분야의 최신 연구에 대해서는 자세히 다루지 않습니다.
_ 카페(Caffe), 텐서플로(TensorFlow), 체이너(Chainer) 등의 딥러닝 프레임워크 사용법은 설명하지 않습니다.
_ 딥러닝, 특히 신경망에 관한 아주 상세한 이론까지는 담지 않았습니다.
_ 딥러닝의 정확도를 높이기 위한 튜닝은 자세히 설명하지 않습니다.
_ 딥러닝 성능을 높여주는 GPU 기술은 구체적으로 다루지 않습니다.
_ 주로 이미지 인식을 다룹니다. 자연어 처리, 음성 인식 등의 사례는 다루지 않습니다.

밑바닥부터 시작하는 딥러닝 - 10일

2021.01.21

밑바닥부터 시작하는 딥러닝 저자 사이토 고키 출판 한빛미디어 발매 2017.01.03. 2019.05.25​5.4.2 덧셈 계층덧셈 계층의 코드 구현은 아래와 같다. class AddLayer: def __init__(self): pass def forward(self, x, y): out = x + y return out def backward(self, dout): dx = dout * 1 dy = dout * 1 return dx, dy 코드가 좀 길다.. 우선 초기화 함수인 __init__()에서 신경망의 계층을 OrderedDict로 선언해서 계층 간의 순서를 유지한다. 이를 사용하면 순전파 때 추가한 순서대로 각 계층의 forward() 메서드를 호출하기만 하면 처리가 완료된다. 역전파 때는 계층을 반대로 호출해서 사용하면 된다. 만약 신경망을 더 깊게 쌓고 싶다면 필요한 만큼 계층을 더 추가하면 된다. 여기서 신경망의 장점을 느낄 수 있었는데, 이미 계층 구조(Affine이나 Relu) 등은 국소적인, 작은 문제를 해결할 수 있게끔 잘 구현되어 있으므로 입력이나 출력 변수를 선언하고 잘 매칭해주면 되니까 신경망의 depth를 깊게 하는게 크게 어렵지 않다. ​​​

https://blog.naver.com/sky930425/221545732455 작성자명 : sky930425| 블로그명: Untitled

밑바닥부터 시작하는 딥러닝 - 9일

2021.01.20

밑바닥부터 시작하는 딥러닝 저자 사이토 고키 출판 한빛미디어 발매 2017.01.03. 2019.05.23​5.2 연쇄법칙​5.2.1 계산 그래프의 역전파계산 그래프에서 역전파의 계산 절차는 신호 E에 국소적 미분을 곱한 후, 다음 노드로 전달하는 것이다. 여기서의 국소적 미분은 순전파 때의 y=f(x) 계산의 미분을 구한다는 것이고, 이는 x에 대한 y의 미분을 구한다는 의미이다.​이러한 계산 방식을 따르면 목표로 하는 미분 값을 효율적으로 구할 수 있다는 것이 역전파의 핵심이다. 이는 연쇄법칙에 의해 설명될 수 있다.​​5.2.2 연쇄법칙이란?연쇄법칙에 앞서 우선 합성 함수에 대한 이해가 필요하다. 합성 함수란 여러 함수로 구성된 함수이다. 예를 들어 z = (x + y)^2이라는 식은 z = t^2, t = x + y처럼 두 개의 식으로 나눌 수 있다.​연쇄법칙은 합성 함수의 미분에 대한 성질이다. 연쇄 법칙의 정의는 '합성 함수의 미분은 합성 함수를 구성하는 각 함수의 미분의 곱으로 나타낼 수 있다'이다.​​5.2.3 연쇄법칙과 계산 그래프설명 생략(결국 역전파가 하는 일이 연쇄법칙의 원리와 같다는 것을 설명하고 있음)​5.3 역전파'+'와 'X'등의 연산을 예로 들어 역전파의 구조를 설명한다.​5.3.1 덧셈 노드의 역전파덧셈 노드의 역전파는 입력 값을 그대로 흘려보낸다. z = x + y라는 식으로 예를 들어본다. 우선 z = x + y의 미분은 az/ax = 1, az / ay = 1로 계산할 수 있다. 즉, 출력인 z를 각각 x와 y에 대해 미분했을 때의 결과가 1(각각 y와 x가 상수이므로)인 것이다. 이를 계산 그래프로 나타내면 아래 그림과 같다. ​ 덧셈 노드의 역전파 : 왼쪽이 순전파, 오른쪽이 역전파 위 그림처럼 역전파 때는 상류에서 전해진 미분에 1을 곱하여 하류로 흘린다. 즉, 덧셈 노드의 역전파는 1을 곱하기만 할 뿐이므로 입력된 값을 그대로 다음 노드에 전달하게 된다.​5.3.2 곱셈 노드의 역전파z = xy의 식을 각각 x와 y에 대해 미분한 식은 아래와 같다. 곱셈 노드 역전파는 상류의 값에 순전파 때의 입력 신호들을 '서로 바꾼 값'을 곱해서 하류로 보낸다. 서로 바꾼 값이란 순전파 때 x였다면 역전파에서는 y, 순전파 때 y였다면 역전파에서는 x로 바꾼다는 의미이다. 곱셈의 역전파에서는 순방향 입력 신호의 값이 필요하므로 구현할 때 순전파의 입력 신호를 변수에 저장해둬야 한다.​​5.3.3 사과 쇼핑의 예이전에 사과를 구입하는 문제에서 사과의 가격을 결정하는데 사과의 가격, 사과의 개수, 소비세라는 세 변수가 존재했다. 각 변수가 최종 금액에 어떠한 영향을 주는지 알기 위해선 '각 변수에 대한 지불 금액의 미분'을 구해야 한다. 이를 계산 그래프의 역전파를 사용해서 풀면 아래 그림과 같다. 즉, 역전파는 결과에 대해 각각의 입력 변수가 얼마나 영향력을 갖는지 살펴보기 위해 활용될 수 있다. ​5.4 단순한 계층 구현하기지금까지의 '사과 쇼핑'을 파이썬으로 구현한 코드이며, 곱셈 노드는 'MulLayer', 덧셈 노드는 'AddLayer'로 구현한다.​5.4.1 곱셈 계층모든 계층은 forward()와 backward()라는 공통의 메서드를 갖도록 구현한다. 각각의 메서드는 순전파, 역전파를 처리하게 된다.​forward()에서는 x와 y를 인수로 받고 두 값을 곱해서 반환하는 반면 backward()는 상류에서 넘어온 미분(dout)에 순전파 때의 값을 '서로 바꿔' 곱한 후 하류로 흘린다.​이전의 사과 구입 계산 그래프를 다음과 같이 구현할 수 있다. class MulLayer: def __init__(self): self.x = None self.y = None def forward(self, x, y): self.x = x self.y = y out = x * y return out def backward(self, dout): dx = dout * self.y dy = dout * self.x return dx, dy apple = 100 apple_num = 2 tax = 1.1 mul_apple_layer = MulLayer() mul_tax_layer = MulLayer() # 순전파 apple_price = mul_apple_layer.forward(apple, apple_num) price = mul_tax_layer.forward(apple_price, tax) print(int(price)) # 220 # 역전파 dprice = 1 dapple_price, dtax = mul_tax_layer.backward(dprice) dapple, dapple_num = mul_apple_layer.backward(dapple_price) print(dapple, int(dapple_num), dtax) # 2.2 110 200 ​

https://blog.naver.com/sky930425/221545712859 작성자명 : sky930425| 블로그명: Untitled

밑바닥부터 시작하는 딥러닝 - 8일

2021.01.20

밑바닥부터 시작하는 딥러닝 저자 사이토 고키 출판 한빛미디어 발매 2017.01.03. ​2019.05.22​4.4.2 신경망에서의 기울기신경망 학습에서도 기울기를 구해야 한다. 여기서 말하는 기울기는 가중치 매개변수에 대한 손실 함수의 기울기다.​아래는 실제로 신경망의 기울기를 구하는 코드다. predict(x)는 예측을 수행하고, loss(x, t)는 손실 함수의 값을 구한다. import os import sys import numpy as np sys.path.append(os.pardir) class simpleNet: def __init__(self): self.W = np.random.randn(2, 3)# 정규분포로 초기화 def predict(self, x): return np.dot(x, self.W) def loss(self, x, t): z = self.predict(x) y = softmax(z) loss = cross_entropy_error(y, t) return loss def gradient_descent(f, init_x, lr=0.01, step_num=100): x = init_x for i in range(step_num): grad = numerical_gradient(f, x) x -= lr * grad return x def cross_entropy_error(y, t): delta = 1e-7 return -np.sum(t * np.log(y + delta)) def softmax(a): exp_a = np.exp(a) sum_exp_a = np.sum(exp_a) y = exp_a / sum_exp_a return y def numerical_gradient(f, x): h = 1e-4 grad = np.zeros_like(x)# x와 형상이 같고 원소가 모두 0인 배열 생성 for idx in range(x.size): tmp_val = x[idx] # f(x+h) 계산 x[idx] = tmp_val + h fxh1 = f(x) # f(x-h) 계산 x[idx] = tmp_val - h fxh2 = f(x) grad[idx] = (fxh1 - fxh2) / (2 * h) x[idx] = tmp_val# 값 복원 return grad >>> net = simpleNet() >>> print(net.W) [[ 0.41807278 -0.43145334 -1.45405054] [-1.17777429 -0.924234270.49693652]] >>> x = np.array([0.6, 0.9]) >>> p = net.predict(x) >>> print(p) [-0.80915319 -1.09068285 -0.42518746] >>> print(np.argmax(p))# 최댓값의 인덱스 2 >>> t = np.array([0, 0, 1])# 정답 레이블 >>> print(net.loss(x, t)) 0.7862609087891671 ​​4.5 학습 알고리즘 구현하기신경망 학습의 절차는 크게 4단계로 나뉜다.​[전제]신경망에는 적응가능한 가중치와 편향이 있고, 이 가중치와 편향을 훈련 데이터에 적응하도록 조정하는 과정을 '학습'이라고 한다. 신경망 학습은 다음과 같이 4단계로 수행한다.​1단계 - 미니배치훈련 데이터 중 일부를 무작위로 가져온다. 이렇게 선별한 데이터를 미니배치라고 하고, 그 미니배치의 손실 함수 값을 줄이는 것이 목표다.​2단계 - 기울기 산출미니배치의 손실 함수 값을 줄이기 위해 각 가중치 매개변수의 기울기를 구한다. 기울기는 손실 함수의 값을 가장 작게 하는 방향을 제시한다.​3단계 - 매개변수 갱신가중치 매개변수를 기울기 방향으로 아주 조금 갱신한다.​4단계 - 반복1 ~ 3단계를 반복한다.​위는 경사 하강법으로 매개변수를 갱신하는 방법이며, 이때 데이터를 미니배치로 무작위로 선정하기 때문에 확률적 경사 하강법(Stochastic Gradient Descent, SGD)이라고 한다.​*에폭(epoch) : 하나의 단위, 1에폭은 학습에서 훈련 데이터를 모두 소진했을 때의 횟수에 해당한다. 예를 들어 훈련 데이터 10000개를 100개의 미니배치로 학습할 경우, 확률적 경사 하강법을 100회 반복하면 모든 훈련 데이터를 '소진'한게 된다. 이 경우 100회가 1에폭이다.​​4.6 정리- 기계학습에서 사용하는 데이터 셋은 훈련 데이터와 시험 데이터로 나누어 사용한다.- 훈련 데이터로 학습한 모델의 범용 능력을 시험 데이터로 평가한다.- 신경망 학습은 손실 함수를 지표로 하고, 손실 함수의 값이 작아지는 방향으로 가중치 매개변수를 갱신한다.- 가중치 매개변수를 갱신할 때는 가중치 매개변수의 기울기를 이용하고, 기울어진 방향(기울기가 가리키는 방향)으로 가중치의 값을 갱신하는 작업을 반복한다.- 아주 작은 값의 차분으로 미분하는 것을 수치 미분이라고 한다.- 수치 미분을 이용해 가중치 매개변수의 기울기를 구할 수 있다.- 수치 미분을 이용한 계산에는 시간이 걸리지만, 그 구현은 간단하다. 한편, 다음장에서 구현하는 오차역전파법은 기울기를 고속으로 구할 수 있다.​​​​​​CHAPTER 5. 오차역전파법​앞서 배운 수치 미분은 단순하고 구현도 쉽지만 계산 시간이 오래 걸린다는 단점이 있다. 이번에는 가중치 매개변수의 기울기를 효과적으로 계산하는 '오차역전파법'에 대해 배워본다.​5.1 계산 그래프계산 그래프는 계산 과정을 그래프로 나타낸 것이다. 수식으로 오차역전파법을 배울 수도 있지만 좀 더 쉽게 이해하기 위해 계산 그래프를 사용해 설명한다.​​5.1.1 계산 그래프로 풀다​Q1. 슈퍼에서 1개에 100원인 사과를 2개 구입할 경우에 지불해야 하는 금액은? 단, 소비세가 10% 부과된다. ​위 그림에는 'x2'와 'x1.1'을 각각 하나의 연산으로 취급해서 원 안에 표시했지만, 곱셈만을 연산으로 생각할 수도 있다. 그림을 보면 알 수 있듯이, 계산이 왼쪽에서 오른쪽으로 진행된다. 이를 순전파라고 하고, 이와 반대되는 전파가 바로 역전파(backward propagation)이다.​​5.1.2 국소적 계산계산 그래프의 특징은 '국소적 계산'을 전파함으로써 최종 결과를 얻는다는 것이다. 여기서 국소적이란, '자신과 직접 관계된 작은 범위'를 의미한다. 국소적 계산은 결국 전체에서 어떤 일이 벌어지든 상관없이 자신과 관계된 정보만으로 결과를 출력할 수 있다는 것이다. 이러한 특징 때문에 계산 그래프에서의 각 노드는 자신과 관련한 계산 외에는 아무것도 신경 쓸게 없다. 따라서 전체 계산이 아무리 복잡해도 각 단계에서 하는 일은 해당 노드의 '국소적 계산'이므로, 단순한 각 단계의 계산만 하면 전체를 구성하는 복잡한 계산도 할 수 있는 것이다.​​5.1.3 왜 계산 그래프로 푸는가?계산 그래프의 이점이 몇 가지 있는데 첫 번째는 앞서 언급한 국소적 계산이다. 전체가 아무리 복잡해도 각 노드에서는 단순한 계산에 집중해서 문제를 단순화할 수 있다. 또 다른 이점으로는 중간 계산 결과를 모두 보관할 수 있다. 계산 그래프를 사용하는 가장 큰 이유는 역전파를 통해 '미분'을 효과적으로 계산할 수 있기 때문이다.​그럼 계산 그래프의 역전파가 어떻게 쓰이는지?앞선 문제 중에서 사과 2개를 사서 소비세를 포함한 최종 금액을 구하는 문제가 있었다. 여기서 만약 사과 가격이 오르면 최종 금액에 어떤 영향을 미치는지 알고 싶다고 할 때, 이는 '사과 가격에 대한 지불 금액의 미분(변화량)'을 구하는 문제이다. 역전파는 순전파와 반대 방향으로 진행되고, 이 전파는 '국소적 미분'을 전달하고 그 미분 값은 화살표의 아래에 적는다. 여기서 역전파는 '1 -> 1.1 -> 2.2' 순으로 미분 값을 전달한다. 이 결과로부터 '사과 가격에 대한 지불 금액의 미분'값은 2.2라 할 수 있다. 즉, 사과가 1원 오르면 최종 금액은 2.2원 오른다는 뜻이다(정확히는 사과가 n원 오르면 최종 금액은 그에 2.2배인 2.2n원 오른다는 뜻).​여기서는 사과 가격에 대한 미분만 예로 들었지만, '소비세에 대한 지불 금액의 미분'이나 '사과 개수에 대한 지불 금액의 미분'도 가능하다. 이처럼 계산 그래프의 이점은 순전파와 역전파를 이용해서 각 변수의 미분을 효율적으로 구할 수 있다는 것이다.​​​​

https://blog.naver.com/sky930425/221544828919 작성자명 : sky930425| 블로그명: Untitled

# data[].attributes.attachment_link.title
밑바닥부터 시작하는 딥러닝

# data[].attributes.attachment_link.description
직접 구현하고 움직여보며 익히는 가장 쉬운 딥러닝 입문서!『밑바닥부터 시작하는 딥러닝』은 라이브러리나 프레임워크에 의존하지 않고, 딥러닝의 핵심을 '밑바닥부터' 직접 만들어보며 즐겁게 배울 수 있는 본격 딥러닝 입문서다. 술술 읽힐 만큼 쉽게 설명하였고, 역전파처럼 어려운 내용은 '계산 그래프' 기법으로 시각적으로 풀이했다. 무엇보다 작동하는 코드가 있어 직접 돌려보고 요리조리 수정해보면 어려운 이론도 명확하게 이해할 수 있다.

# data[].attributes.headline
이것도 가지고 있는 책이라 공유해봅니

# data[].attributes.body
이것도 가지고 있는 책이라 공유해봅니다~ ISL 이라는 약자로 불릴정도로 유명한 책입니다, 너무 통계쪽이려나요? 회사에서 이걸로 스터디하다가 흐지부지 된적이 있습니다.

# data[].attributes.attachment_link.readable_text
원제 An Introduction to Statistical Learning: with Applications in R

페이지 512| ISBN 9791186710050| 판형 규격외 변형

이 책 [가볍게 시작하는 통계학습]은 기계학습의 필수 요소인 통계적 학습의 이론적 개념과 활용 기법을 소개하고 다양한 모델링과 예측 기법을 어떻게 적용할 수 있는지를 예제와 LAB을 통해 보여준다. 각 장의 내용은 이공계 배경지식이 없어도 이해하는 데 큰 어려움이 없다. LAB은 R을 사용하여 실행하며 각 장에서 설명한 모든 통계적 방법에 대한 코드는 충분히 설명되어 있다. 실제 데이터를 사용한 R 프로그래밍 예제는 실질적인 경험을 제공하며 통계학습과 기계학습을 어떻게 구현하는지에 대한 명확하고 직관적인 가이드를 제공한다.

Gareth James

역자 : 마이클
역자 마이클은 코딩 더 매트릭스 번역, IT 번역 전문 그룹 장독대 멤버.

이 책은 10장으로 구성되어 있다.
1장은 통계적 학습의 몇 가지 응용을 보여주는 데 사용되는 실제 자료인 Wage 자료, 주식시장 자료, 그리고 유전자 발현 자료에 대해 소개하고 책 전반에 걸쳐 사용될 표기법과 간단한 행렬 대수를 살펴본다.
2장은 통계학습의 기본 개념을 살펴보고 모델의 추정방법과 예측 정확도, 그리고 모델의 정확도 평가에 대해 알아본다. 또한, R에 대한 기본적인 사용법에 대해 간략히 소개한다.
3장에서는 단순한 지도학습 기법인 선형회귀의 주요 개념과 모델의 적합에 이용되는 최소제곱법에 대해 알아보고 질적 설명변수의 처리와 선형모델의 확장에 대해 다룬다.
4장은 질적 반응변수를 예측하는 방법인 분류에 대해 다루며 광범위하게 사용되는 분류기인 로지스틱 회귀, 선형판별분석, k-최근접이웃에 대해 살펴본다.
5장은 훈련 데이터의 일부를 사용하여 동일한 통계적 방법을 여러 번 적합하여 정보를 얻는 재표본추출 방법에 대해 다룬다. 여기서는 가장 일반적으로 사용되는 2가지 재표본추출 방법인 교차검증과 붓스트랩에 대해 상세히 살펴본다.
6장은 최소제곱적합을 다른 적합절차로 바꾸어 단순선형모델을 개선할 수 있는 방법에 대해 다룬다. 여기서는 반응변수와 관련이 있는 설명변수들의 서브셋을 찾는 부분집합 선택, 계수 추정치들을 제한하여 추정치들의 분산을 줄일 수 있는 수축방법, 원래의 설명변수보다 작은 수의 변환된 변수들을 사용하는 차원축소에 대해 자세히 살펴본다.
7장에서는 선형모델의 해석력은 높게 유지하면서 선형성에 대한 가정은 완화하는 선형모델의 확장에 대해 다루며, 다항식회귀와 계단함수와 같은 단순한 선형모델의 확장뿐만 아니라 스플라인, 국소회귀, 그리고 일반화가법모델과 같은 정교한 기법에 대해서도 살펴본다.
8장은 설명변수의 공간을 다수의 영역으로 분할하는 회귀와 분류에 대한 트리 기반의 방법에 대해 다루며, 의사결정트리와 트리의 장단점에 대해 살펴보고 다중트리를 통해 예측 정확도를 개선하는 배깅, 랜덤 포리스트, 부스팅에 대해 알아본다.
9장은 다양한 설정에서 최상의 분류기 중 하나로 알려진 서포트 벡터 머신에 대해 소개하고 비선형 결정경계를 수용하도록 확장하는 것에 대해 살펴본다.
10장에서는 연관된 반응변수 없이 측정된 설명변수들만으로 데이터에서 흥미로운 것을 발견하고자 하는 비지도학습에 대해 다루며, 데이터의 시각화 또는 전처리에 사용되는 주성분분석과 관측치들의 서브그룹을 찾아내는 데 이용되는 클러스터링에 대해 자세히 알아본다.

[책 후기]가볍게 시작하는 통계학습:R로 실습하는

2020.09.14

이책은 ISLR이라고 해서 R로 머신러닝을 공부할때 보는 책의 번역판입니다. ISLR은 유명한 책이기도 하니까 많은 사람이 한번쯤은 들어보았을것입니다. 이 책은 번역판이다보니 번역이 매끄럽지 않은 부분도 있고 이책에 나와있는 사진은 흑백이라서 그림을 해석하기가 힘든부분 있습니다. 그래서 책을 읽을때 원서 PDF파일을 함께 참고 하면서 읽었습니다. 책을 읽으면서 설명이 부족하거나 이해하기 힘든 부분도 있었지만 구글에 검색하면 다른사람이 이미 깔끔하게 정리해놓은 자료가 있어서 그런것들도 참고해 가면서 책을 공부하면 좋을것 같습니다. ​책 난이도는 고급이고 다양한 머신러닝 기법들에 대한 이론이 나와있고 뒷부분에는 R로 실습하는 부분이 나와있습니다. 데이터는 ISLR이라는 패키지를 설치하고 라이브러리 하면 이 책에서 사용하는 데이터를 자동으로 사용하실수 있을 것이고, 구글에 ISLR데이터 검색하다보면 csv파일을 직접 구하실수 있을 겁니다.​머신러닝관련 책중에 처음으로 끝까지 읽은 책입니다. 그만큼 머신러닝에 대한 지식이 별로 없는 저 같은 사람도 읽을수 있을 난이도의 책인만큼 머신러닝을 공부하려는 사람에게 추천드리는 책입니다. 물론 수식같은 부분은 어려워서 잘 이해하지는 못하였지만 처음에 어느정도 난이도 있는 책을 본다면 다른 머신러닝관련 책을 읽을때 비교적 수월하게 볼수 있을것 같습니다. ​요약1. 책 난이도는 고급이고 R로 머신러닝을 공부하고자 하는 사람에게 추천2. 다양한 머신러닝 기법에 대한 이론과 R로 실습하는 내용3. 원서 PDF를 구글에 검색해서 획득가능(ISLR)4. 데이터는 ISLR패키지 또는 ISLR사이트에서 csv파일로 다운 가능5. 수식이 어느정도 있어서 이해하기 힘든 부분도 있었지만 많은 도움이 됨, 이해하기 힘든 부분은 구글에 그 부분에 대해 검색하면 다른 사람들이 이미 정리해 놓은 자료들이 있음 데이터셋 및 정오표(데이터의 경우 ISLR 패키지를 통해서도 사용 가능)http://faculty.marshall.usc.edu/gareth-james/ISL/errata.html Introduction to Statistical Learning An Introduction to Statistical Learning with Applications in R Gareth James , Daniela Witten , Trevor Hastie and Robert Tibshirani Home About this Book R Code for Labs Data Sets and Figures ISLR Package Get the Book Author Bios Errata Errata for the 1st Edition, since the 7th printing (J... faculty.marshall.usc.edu ​ 가볍게 시작하는 통계학습 저자 Gareth James, Daniela Witten, Trevor Hastie, Robert Tibshirani 출판 루비페이퍼 발매 2016.04.18. ​

https://blog.naver.com/audwls7857/221629807493 작성자명 : audwls7857| 블로그명: Rstudy_MJ

기초부터 쌓아가는 R공부 ー 『가볍게 시작하는 통계학습』

2017.11.28

가볍게 시작하는 통계학습 저자 Gareth James, Daniela Witten, Trevor Hastie, Robert Tibshirani 출판 루비페이퍼 발매 2016.04.18. 상세보기 내게 R은 온전히 계산기로서의 기능만 했다. 의학을 전공하고, 통계학에 대해서는 의예과 2학년 시절 한 학기동안 배운 것이 거의 전부인 상황에서 논문을 쓰기 위해서는 통계 독학이 필수적이었고, 기초는 거의 없었다고 보아도 무방하다. 논문 작성시 가장 도움이 되었던 책은 <R을 이용한 누구나 하는 통계분석>이었고, 좀 더 자세한 내용은 <The R Book 한국어판>으로 도움을 받았다.보다 탄탄한 기초하에서 기초적인 분석의 원리를 체득하고자 하는 이들에게 이 책을 추천한다. 앞서 이야기한 두 책 중 전자는 명령어의 엑기스를 알려주는 책이고, 후자는 보다 다양하고도 기본적인 프로그래밍 언어로서의 R을 알려주는 반면 이 책은 통계학적 기초에서 R의 명령어가 어떻게 구동되는지를 보여준다. 컴퓨터를 켜놓고 책을 보는 것 뿐만 아니라, 단순히 소파에 앉아 천천히 책을 따라가면서 머릿속에 내용을 그려보는 것만으로도 공부가 되는 책이다.

http://blog.naver.com/fourth_july/221150226680 작성자명 : fourth_july| 블로그명: 하루하루 공부일기

# data[].attributes.attachment_link.title
가볍게 시작하는 통계학습

# data[].attributes.attachment_link.description
이 책 [가볍게 시작하는 통계학습]은 기계학습의 필수 요소인 통계적 학습의 이론적 개념과 활용 기법을 소개하고 다양한 모델링과 예측 기법을 어떻게 적용할 수 있는지를 예제와 LAB을 통해 보여준다. 각 장의 내용은 이공계 배경지식이 없어도 이해하는 데 큰 어려움이 없다. LAB은 R을 사용하여 실행하며 각 장에서 설명한 모든 통계적 방법에 대한 코드는 충분히 설명되어 있다.