일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- GPIO
- 리눅스
- 스위치
- 텐서플로우
- 디바이스 드라이버
- 3분 딥러닝
- 모두를 위한 딥러닝]
- Router
- 인터럽트
- demultiplexing
- file descriptors
- Switch
- 운영체제
- Interrupt
- 딥러닝
- 펌웨어
- Class Activation Map
- function call
- 모두를 위한 딥러닝
- LED
- 신경망 첫걸음
- TensorFlow
- 신경망
- Linux
- Generalized forward
- 밑바닥부터 시작하는 딥러닝
- RDT
- LED 제어
- Transport layer
- Network layer
- Today
- Total
목록전체보기 (65)
건조젤리의 저장소
김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io 앞의 내용에서는 길이가 매우 긴 문장의 경우 결과값이 제대로 나오지 않는다고 하였다. 이를 해결하기 위해서는 어떻게 해야할까? RNN구조를 더 쌓아 깊은 구조로 만들게 된다면 성능이 더 좋아질 것이다. MultiRNNCell 명령어를 이용하면 여러개의 층을 쌓을 수 있다. CNN구조의 끝 부분에는 FC 레이어가 존재한다. 이를 RNN에도 적용시켜보자. softmax를 RNN에 붙여 결과를 출력하는 형태이다. 이를 위해서 RNN의 출력 결과를 reshape를 통해 나열한 뒤 FC 구조를 통과시킨다, 이후 다시 원래의 모양으로 되돌려준다. ..
김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io 위와 같은 language 모델을 구현해보자. RNN cell을 생성할때 원하는 종류를 선택할 수 있다. cell을 생성하였으면 cell을 동작시키는 코드가 필요하다. 총 5개의 문자로 이루어진 단어이므로 hidden size는 5로 설정한다. 마찬가지로 input_dim또한 5로 설정한다. 하나의 단어만 학습할 것 이기 때문에 batch 크기는 1로 설정한다. 단어에서 마지막 부분은 들어갈 필요가 없으므로 6으로 설정한다. one_hot 형식으로 데이터를 만든다. * x_data는 여기서 아직 쓰이지 않음 (다음장 참고) cell을 생..
김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io Tensorflow에서 RNN을 사용하기 위해서는 1. Cell을 만듬 (출력크기 정하기) 2. 셀을 구동시켜 출력하기 (cell과 입력 데이터를 넣음, output: 출력 / _states: 마지막 상태값) 셀의 종류는 다양하고 우리가 원하는 셀을 선택하여 선언하면 된다. hidden_size는 출력값의 크기를 나타낸다. 하나의 입력값을 넣어 출력한 결과이다. hidden_size의 값과 출력값의 크기가 동일하다. 5개의 sequence를 가진 데이터를 입력하면 출력되는 결과이다. 배치 처리도 입력 데이터만 수정하면 되기 때문에 간단하다.
김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io 하나의 단어로는 문맥을 파악할 수 없다. 이전 단어와의 조합을 통해 우리는 문장이 의미하는 바를 알 수 있다. 연속적인 데이터들의 의미를 파악하기 위해 기존의 NN/CNN 구조를 사용하는 것은 어려운 일이다. 따라서 이전의 연산 결과가 현재의 연산 결과에 영향을 미치는 신경망 구조를 만들게 되었는데, 이를 RNN 이라고 한다. RNN의 구조는 위의 그림과 같이 풀어서 나타낼 수 있다. 연속적인 데이터들이 입력으로 들어가게 되고, 현재의 입력값에 대한 출력이 과거의 연산값에 영향을 받는 구조이다. 위의 그림은 RNN의 연산식을 나타낸 것이..
김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io 컨볼루션 연산을 테스트 하기 위한 입력 이미지를 만들었다. 모든 요소가 1이고 2x2크기를 갖는 필터를 컨볼루션 연산을 수행하면 2x2크기의 출력값이 나오게 된다. Padding을 적용하게 되면 입력 크기와 출력 크기가 동일하게 된다. 여러개의 필터를 사용하여 출력 결과의 갯수를 늘릴 수 있다. 최대 풀링을 적용하여 값을 출력한다. MNIST 이미지에서 컨볼루션 연산을 수행해보자. 5개의 필터를 적용하여 나온 출력 결과들이다. 최대 풀링을 적용한다면 위와 같은 결과가 나오게 된다. 간단한 CNN 네트워크를 구성해보자. 첫번째 레이어의 구..
김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io 강의에서 쓰인 자료 출처: http://cs231n.stanford.edu/ CNN의 등장을 알린 네트워크이다. 컨볼루션 필터의 크기는 5x5이고 stride는 1이다. 풀링 레이어를 사용하였다. Normalization layer는 최근에는 잘 사용되지 않는 레이어이다. ReLU를 처음 사용한 네트워크이다. 7개의 네트워크를 사용하여(앙상블) 성능을 향상하였다. 인셉션 모듈이라는 특이한 레이어 구조를 가지고 있는 네트워크이다. 다른 네트워크와 비교하여 네트워크가 상당히 깊어졌다. 네트워크가 깊어지면 학습이 어려워지게 되는데 ResNet..
김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io Pooling layer는 컨볼루션 레이어의 출력 값을 Sampling하는 레이어이다. (resize) 위 그림은 2x2필터를 적용한 최대 풀 처리과정이다. 상단부터 하단까지 2만큼 이동하며 최대값을 뽑아낸다. 이때 생성되는 출력의 크기는 필터의 크기와 stride에 따라 달라진다. 앞서 배운 여러 레이어를 조합하여 CNN네트워크를 구성할 수 있다. 네트워크의 말단 부분은 분류를 위한 FC layer를 붙여야한다.
김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io 강의에서 쓰인 자료 출처: http://cs231n.stanford.edu/ CNN의 기본 아이디어는 고양이 실험에서 시작되었습니다. 시각 피질 안의 많은 뉴런들이 시야의 일부 범위 안에 있는 시각 자극에만 반응을 한다는 내용입니다. 어떤 뉴런은 수직선의 이미지에만 반응하고, 다른 뉴런은 다른 각도의 선에 반응하는 뉴런이 있는 등 일부 영역에만 반응하였습니다. 자세한 내용은 링크를 참고하세요: https://excelsior-cjh.tistory.com/180 하나의 이미지를 여러개의 컨볼루션 필터를 통해 서로 다른 특징점들을 뽑아내는 ..