일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 스위치
- TensorFlow
- function call
- 펌웨어
- 신경망
- GPIO
- 리눅스
- LED 제어
- 인터럽트
- 모두를 위한 딥러닝
- demultiplexing
- Transport layer
- 밑바닥부터 시작하는 딥러닝
- Switch
- Linux
- Router
- Generalized forward
- Class Activation Map
- 텐서플로우
- 신경망 첫걸음
- 운영체제
- 디바이스 드라이버
- Interrupt
- RDT
- 모두를 위한 딥러닝]
- 딥러닝
- LED
- Network layer
- file descriptors
- 3분 딥러닝
- Today
- Total
목록공부 기록/모두를 위한 딥러닝 (RL) (15)
건조젤리의 저장소

김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io 지난 강의에서 설명한 알고리즘을 구현해보자! 그대로 구현하면 된다! * env.action_sapce.sample(): 랜덤한 행동을 한다. 노이즈 값을 추가하는 방법의 구현 dis는 1보다 작은 값으로 설정한다. 결과가 잘 나오는 것을 확인! e-greedy방법으로 확인해 보자! 이전의 노이즈 값 추가 방법보다 더 다양한 길을 찾아냈다. 구현 코드 (환경: ubuntu:16.04 python 3.6) Exploit vs Exploration 방법 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20..

김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io 이전 시간에 배운 Dummy Q-learning은 학습한 경로가 고정되어 효율적이지 못한 단점이 있다. * Exploit: 현재 값을 이용 * Exploration: 새로운 시도 Exploit과 Exploration을 적절하게 사용하면 최적의 값을 찾을 수 있을까? E-greedy 방법을 사용하자! 랜덤한 값을 뽑았을 때 e보다 작은 경우: 랜덤한 값(Exploration) 그 외: 기존에 알고있는 최대값(Exploit) 학습이 진행될수록 랜덤값의 영향력을 줄이기 위해, e값을 점차적으로 줄여간다. 또다른 Exploit VS Explor..

김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io Q-learning 알고리즘의 구현 * 0으로 채워진 Q 배열을 선언한다. 이때 env.observation_space.n = 16, env.action_space.n = 4 이므로 이를 이용한다. * rargmax(): 값이 모두 동일하다면 랜덤하게 하나를 선택한다. * Q 업데이트 코드 확인. rargmax의 구현 코드 확인! 보상값(0 or 1)을 저장하는 rList를 추가하였다. H (구덩이) 에 빠질경우는 0, G (목표지점) 에 도착할 경우는 1이다. 95%의 성공 확률을 보인다. 앞부분은 거의 0이지만 약 100회 반복부터는..

김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io Agent가 a 방향으로 이동하게 되면 현재 상태가 바뀌게 된다. (S1, S2) 그리고 이 행동에 대한 보상을 받게되는데 목표지점에 갔을 경우에만 1점을 얻게된다. (그 외: 0점) 하나의 행동이 아닌 전체적인 결과로 보상을 받기 때문에 Agent가 목표를 찾아가기 어려울 수 있다. Agent의 움직임을 결정할 때 랜덤하게 결정하는 방법보다 더 나은 방법은 무엇일까? 진행 방향을 선택했을 경우 얻을 수 있는 점수를 알려주는 함수가 있으면? Q에게 상태와 행동을 입력으로 주게되면 받을 수 있는 보상을 알려준다. 위의 경우, RIGHT방향..

김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io 파이썬에서 키 입력을 받아오기 위해 _Getch() 클래스를 만들고, Gym에서 사용하는 매크로를 설정한다. 그리고 각각의 매크로와 키를 연결해주자. * 높은 버전에서는 문제가 생긴다고 한다! -> 맨 밑의 코드를 참고하자 액션값을 넣어준 다음 .render()를 통해 확인하자. 실행을 하게 되면 위와 같이 실행이 가능하다. 액션값을 넣어주게 되면 4개의 출력값을 얻을 수 있게 된다. 기존 코드는 문제가 발생하므로 이 코드를 사용하세요! 구현 코드 (환경: ubuntu:16.04 python 3.6) 1 2 3 4 5 6 7 8 9 10..

김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io 강화학습을 사용하여 Frozen Lake 게임을 학습해 보자. S: 시작 지점 / F: 안전한 구역 / H: 위험한 구역(구덩이) / G: 목표 지점 Agent는 S에서 시작하여 G로 가는 길을 찾아야 한다. Agent는 상하좌우로 움직이게 되고 환경에서 현재 상태와 보상을 받게된다. 만약 오른쪽으로 한칸 움직였을 경우 상태는 1, 보상은 0 이 된다. 이 방법을 일반화 하게되면 모든 게임에 적용이 가능하다. Agent가 행동을 취한다. -> 현재 상태와 보상을 받는다. 이를 구현하기 위해 OpenAI에서 제공하는 Gym이라는 라이브러리..

김성훈 교수님의 강의내용을 정리한 내용입니다. 출처 : http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io 강아지를 훈련시킬 때 보상을 기반으로 한 방법이 효율적이다. 강화학습은 이러한 방법을 사용한다. 우리들이 긍정적인 칭찬과 부정적인 비평에서 배움을 얻듯이 강화학습은 이러한 상호작용으로 학습한다. Actor는 Enviroment을 관찰하며 행동을 취하고 보상을 받는다. 강화학습은 위와같은 다양한 분야에서 이용이 가능하다.