일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 3분 딥러닝
- Class Activation Map
- 모두를 위한 딥러닝
- 텐서플로우
- GPIO
- 리눅스
- RDT
- LED
- Linux
- 펌웨어
- 신경망 첫걸음
- 밑바닥부터 시작하는 딥러닝
- file descriptors
- LED 제어
- 모두를 위한 딥러닝]
- Interrupt
- 딥러닝
- TensorFlow
- Router
- 디바이스 드라이버
- 신경망
- Transport layer
- function call
- 인터럽트
- demultiplexing
- 스위치
- Generalized forward
- Switch
- Network layer
- 운영체제
- Today
- Total
목록모두를 위한 딥러닝 (49)
건조젤리의 저장소
김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io 기존 7장에서 구현하였던 MNIST 예제이다. 계층을 늘리게 된다면 정확도가 증가하게 된다. Xavier 초기값으로 설정하게 된다면 정확도가 더욱 증가한다. 계층을 증가시켰음에도 정확도가 더 나아지지 않은 모습이다. (Overfitting) Overfitting문제를 해결하기 위해 Dropout기법을 사용하여 정확도가 더욱 증가하였다. 경사하강법 외에 더욱 다양한 최적화 알고리즘이 존재한다.
김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io 지금까지 배운 네트워크를 레고처럼 조합해서 다양한 구조의 모델을 구성할 수 있다. 신호를 레이어를 통과하지 않고 앞으로 전달하는 구조를 추가하였다. 신호를 나누고 합하여 새로운 네트워크 구조를 만들었다. (ex. CNN) 네트워크를 앞으로 쌓는 방법 외에 옆으로 쌓는 방법을 이용하였다.
김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io 오버 피팅이란 학습 데이터에 모델이 과도하게 적응하여 새로운 데이터에 대한 분별력을 잃어버리는 현상을 말합니다. 모델이 오버 피팅인지 알 수 있는 방법은 학습 데이터와 테스트 데이터의 정확도 차이를 보면 알 수 있습니다. 지난 시간에는 오버 피팅을 해결하기 위해 Regularization(일반화) (7장 참고) 를 이용했습니다. 이번 시간에는 Dropout기법을 알아보도록 하겠습니다. Dropout이란 학습 시 임의의 노드를 0으로 설정하는 방법입니다. 이 방법을 이용하면 특정노드에 모델이 의존적으로 바뀌는 것을 억제할 수 있다. 또한 ..
김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io 지난 시간에는 Vanishing gradient문제를 해결할 수 있는 방법으로 새로운 활성화 함수, ReLU를 알아보았습니다. 또다른 방법은 무엇이 있을까요? 모델의 가중치를 초기화 할 때 설정하는 값에 따라 결과는 아래 그림과 같이 달라질 수 있습니다. 같은 ReLU함수를 사용했음에도 초기값을 어떻게 설정하는지에 따라 결과가 달라진다. 만약 초기값을 0으로 주게되면 역전파시 미분값이 0이되므로 학습이 이루어 지지 않습니다. 이러한 결과를 막기 위해 어떠한 방법을 써야 할까요? 방법중 하나인 RBM이라는 방법이 있습니다. 간단하게 설명하..
김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io 지난 시간에는 XOR를 구현 해보았습니다. 만약 계층이 더 깊고 넓어진다면 어떤일이 일어날까요? 50%의 정확도가 나오게 되었습니다. 이유는 무엇일까요? 지난 시간에 배운 오차역전파법을 살펴보자. y의 값이 이전 노드에서 Sigmoid노드를 거쳐서 온 값이라면 0과 1사이의 값이 될 것이고 x의 편미분값은 앞에서 전달받은 미분값에 0~1 값을 곱한값이 된다. 이 값은 뒤로 역전파 되고 0~1값이 곱해지게 될 것이다. 이러한 절차가 반복이되어 0에 가까워지게 될 것이다. 이러한 현상을 Vanishing gradient라고 한다. (제 2의..
김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io TensorBoard는 Tensorflow 그래프를 시각화 할 수 있는 툴이다. 5가지 단계를 추가하면 TensorBoard를 사용할 수 있다. 스칼라 값과 히스토그램 값을 시각화 할 수 있다. Scope를 이용하면 좀더 깔끔한 Graph 구성이 가능하다. (Like 서랍장) merge_all()를 이용하여 모두 합친 후 세션을 이용하여 Summary를 저장한다. 터미널에 명령어를 입력하여 TensorBoard를 볼 수 있는 주소를 얻을 수 있다. * 원격 서버로 TensorBoard를 사용할 수 있다. 같은 폴더 안에 여러 log들을 ..
김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io 경사 하강법을 이용해 모델을 학습하기 위해서는 각 가중치의 미분값이 필요하다. XOR을 구현한 모델은 2개의 레이어로 구성되어있다. 어떻게 해야할까? 먼저 편미분에 대한 기본 지식이 있어야 한다. 교수님의 설명 동영상 링크를 참고하자. 동영상: https://www.youtube.com/watch?v=oZyvmtqLmLo&list=PLlMkM4tgfjnLSOjrEJN31gZATbcj_MpUm&index=26 Chain rule를 이용해 각 노드의 미분값을 구할 수 있다. 레이어가 깊어도 계산은 간단하다. 결국 앞에서 전달받은 미분값에 로..
김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io 단일 로지스틱 회귀 유닛은 XOR문제를 해결하지 못한다. 하지만 다중 로지스틱 회귀 유닛은 가능하다. 위의 그림을 한번에 나타내면 아래의 구조가 된다. * 이때 W의 조합은 다양하게 설정할 수 있다. 행렬구조를 사용하면 더 간단히 나타낼 수 있다.