파이썬 11

블랙박스 최적화 알고리즘 이해하기

EA: 강화학습 작업에 적용할 수 있는 생물학적 진화에서 영감을 얻은 새로운 블랙박스 알고리즘 EA 는 강화학습과 다른 관점에서 해당 문제를 해결함 강화학습 알고리즘을 설계할 떄 다뤄야 하는 많은 특성은 진화방법에서 필요없음 두가지 방법의 차이는 본질적 최적화 방법과 기본 가정에 있음 ex. EA는 블랙박스 알고리즘이므로 강화학습에서와 같이 미분 가능한 함수를 더 이상 사용 하지 않아도 돼 원하는 함수가 뭐든지 최적화 할 수 있음. 두가지 진화 알고리즘 : 1. 유전자 알고리즘 genetic algorithms 교차 crossover와 돌연변이 mutation를 이용해 부모로 부터 자손을 생성하므로 더 복잡 2. 진화 전략 evolution stategies 이전 세대의 돌연변이를 통해 만들어진 개체군에..

DAgger알고리즘으로 모방 학습하기

모방 학습이라는 새로운 학습 방법을 알아봄 -> 신규 패러다임의 특징은 전문가의 행동을 흉내내는 학습 방법에 있음. 모방학습은 보상 신호가 없다는 점과 전문가가 제공하는 많은 정보를 사용 할 수 있다는 점에서 강화학습과 다름 새로운 상태에서 학습자의 행동 신뢰도를 높이기 위해 학습자가 학습에사용하는 데이터 집합을 상태 행동 집합에 추가해 확장할 수 있다. -> 이 프로세스를 데이터 집계라고 한다. 새로운 데이터는 새로운 학습 폴리시에서 발생하며 이 경우 동일한 학습 폴리시에서 발생하는 온-폴리시 데이터를 언급 온-폴리시 상태와 전문가 피드백의 통합은 학습 품질을 높이는 매우 좋은 접근법이다. 모방학습 알고리즘은 전문가의 행동을 따라하기만 하므로 전문가 보다 좋은 성능을 달성 할 수 없다는 한계가 있다. ..

모델 -기반 강화학습

모델-프리 알고리즘에서 벗어나 환경 모델을 학습하는 알고리즘을 알아봤다. 이러한 종류의 알고리즘을 개발하도록 영감을 준 패러다임 변화릐 주요 원일을 살펴봤다. 모델을 다룰 떄 발견 할 수 있는 두 가지 주요 사례를 구분 모델을 사용해 다음 행동을 계획하거나 폴리시를 학습하는 방법을 알아봤다. 이 방법을 선택하는데 정해진 규칙은 없지만 일반적으로 행동의 복잡도, 관측공간, 추론 속도와 관련 있다. 다음으로 모델-프리 알고리즘의 장,단점을 조사하고 모델-프리 알고리즘과 모델-기반 학습을 결합해 모델-프리 알고리즘으로 폴리시를 학습하는 방법을 상세하게 알아봤다. 이방법은 이미지 같은 고차원 관측 공간에서 모델을 사용하는 새로운 방법을 보여줌 모델-기반 알고리즘과 관련된 모든 자료를 더 잘 파악하기 위해 ME-..

DDPG와 TD3 애플리케이션

두가지 강화학습 문제 해결 방법의 장점을 결합한 방법을 알아봤다. 첫번째, Q-러닝 알고리즘 : 상태-행동 값을 추정해 최고의 다음 행동을 선택 두번째, 폴리시 그래디언트 알고리즘 : 그래디언트를 통해 예상 보상 폴리시를 최대화 두 접근법의 장,단점을 살펴봤고 대부분의 방법이 상호보완적이라는 것을 알게 됐다. 예를 들어 q-러닝 알고리즘은 샘플을 효율적으로 이용하지만 연속형 행동을 처리할 수 없다는 단점이 있다. 반면 폴리시 그래디언트 알고리즘은 더 많은 데이터가 필요해 샘플을 비효율적으로 이용하지만 연속형 행동을 처리할 수 있다는 장점이 있다. DPG메서드: q-러닝과 폴리시 그래디언트 기술을 결합 DPG 메서드는 결정론적 폴리시 deterministic policy를 예측해 q-러닝 알고리즘의 전역 ..

TRPO와 PRO 구현

- 연속행동으로 에이전트를 제어하기 위해 폴리시 그래디언트 알고리즘을 로보스쿨이라는 환경이 적용 두가지 폴리시 그래디언트 알고리즘: TRPO, PPO 이알고리즘은 환경에서 샘플링한 데이터를 더 잘 활용하고 2개의 순차적 폴리시 분포의 차이를 제한하는 기술을 사용한다. 샘플효율성,견고함 robustness, 신뢰성 덕분에 TRPO와 PPO는 DOta 같은 매우 복잡한 환경에서도 사용할 수 있다. AC와 Reinforce뿐만 아니라 PPO와 TRPO는 확률적 그래디언트 알고리즘 이다. 폴리시 신경망은 연속형 에이전트를 어떻게 제어하는가? 그래디언트외의 함수 곡률을 사용하는것. 곡률 정보는 2차 미분을 계산해 구할 수 있다. 곡률값이 클수록 두 점 사이의 그레디언트가 급격하게 변화한다는 뜻이며, 예방책으로 상..

확률 기반 PG최적화 학습

- 폴리시 그래디언트 메서드 - Reinforce 알고리즘 PG메서드의 더 간단한 버전을 Reinforce라고 함 Reinforce는 완전한 궤도로부터 실제 리턴true return을 계산하는 MC리턴의 특성으로 편향이 없는 unbiased 좋은 특성을 가지고있다. 하지만, 이러한 불편 추정unbiased estimate은 궤도의 길이에 따라 값이 증가하는 특성을 갖는 분산에는 바람직 하지 않다. 간단한 reinforce는 편향이 없다는 장점이 있지만, 분산variance이 상대적으로 크다는 단점이 있다. - 베이스라인이 있는 Reinforce 베이스라인을 추가하면 불편 특성을 유지하는 동안(근사적으로 이알고리즘은 로컬 최소값에 수렴한다.) 분산을 낮출 수 있다. 하지만 베이스라인이 있는 Reinforc..

확률 기반 PG최적화 학습

- 폴리시 그래디언트 메서드 - Reinforce 알고리즘 PG메서드의 더 간단한 버전을 Reinforce라고 함 Reinforce는 완전한 궤도로부터 실제 리턴true return을 계산하는 MC리턴의 특성으로 편향이 없는 unbiased 좋은 특성을 가지고있다. 하지만, 이러한 불편 추정unbiased estimate은 궤도의 길이에 따라 값이 증가하는 특성을 갖는 분산에는 바람직 하지 않다. 간단한 reinforce는 편향이 없다는 장점이 있지만, 분산variance이 상대적으로 크다는 단점이 있다. - 베이스라인이 있는 Reinforce 베이스라인을 추가하면 불편 특성을 유지하는 동안(근사적으로 이알고리즘은 로컬 최소값에 수렴한다.) 분산을 낮출 수 있다. 하지만 베이스라인이 있는 Reinforc..

Q-러닝과 SARSA 애플리케이션

환경과 상호작용해 경험을 통해 학습하는 새로운 강화학습 알고리즘을 소개했다. 이방법은 환경 모델에 의존하지 않고 폴리시와 가치함수를 학습한다는 점에서 동적 프로그래밍과는 다르다. 몬테카를로 방법이 환경에서 간단하게 샘플링하는 방법이지만 학습하기 위해서는 완전한 궤도가 필요하므로 많은 실제 환경에 적용 할 수 없다는 것을 알게 됐다. 이러한 단점을 극복하기 위해 부트스트레핑을 몬테카를로 방법과 결합한 TD학습 방법을 사용했다. 이 알고리즘은 부트스트레핑 기술을 이용해 온라인으로 학습하고 분산을 줄이면서 최적의 폴리시에 수렴하게 하는 방법이다. 강화학습에 사용 되는 몬테카를로 메서드의 주요 특징은? 몬테카를로 메서드가 오프라인인 이유는? TD학습의 두 가지 주요 아이디어는? 부트스트레핑을 몬테카를로 방법과 ..

동적 프로그래밍으로 문제 해결하기

MDP란? - 가치함수와 기대보상으로 이루어짐. - Markov 특성은 MDP에 내재돼 있으며, 미래의 상태는 과거의 이력이 아닌 현재 상태로부터만 영향을 받는다. - MDP정의를 사용해 폴리시, 리턴함수, 예상리턴(Expected return), 행동-가치함수, 가치함수의 개념을 정의했다. 강화학습 알고리즘은 모델-기반과 모델-프리 방법으로 구분할 수 있다. 모델-기반은 다음 행동을 계획하기 위해 환경 모델이 필요하며 모델-프리는 모델과는 독립적이며 환경과 직접 상호 작용해 학습할 수 있다. 폴리시 그래디언트 알고리즘은 그래디언트 상승을 통해 폴리시에서 직접 학습 하므로 온-폴리시 on-policy라고 한다, 가치함수 알고리즘은 오프-폴리시 off-policy이며 폴리시를 만들기 위해 행동-가치함수나 ..

강화학습 사이클과 openAI Gym 구현하기

대부분의 최신 강화학습 알고리듬은 딥러닝과 관련 있으므로 책전반에 걸쳐 사용할 딥러닝 프레임 워크인 텐서플로우를 살펴봤다. 텐서플로우를 사용하면 역전파 backpropagation 같은 심층신경망의 복잡한 부분을 처리할 때 딥강화학습 알고리듬의 개발 속도를 높여 준다. 또한 tensorflow는 알고리듬 디버깅 과정을 모니터링하고 지원하는 tensorBoard를 제공한다. Gym에서 step()함수의 출력은 무엇인가? step() : 실행 // render() : 결과를 표시 OpenAI Gym 인터페이스를 이용한 액션을 어떻게 샘플링 할 수 있는가? 에이전트에서 환경 : 액션 환경에서 에이전트 : 관측, 보상, 종료여부, 정보 관측: 환경에 대한 새로운 관측을 나타내는 객체 보상 : 마지막 액션에서 얻..

반응형