전체 글 152

확률 기반 PG최적화 학습

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

Deep Q-Network

DQN알고리즘 3가지 주요 부분으로 구성 - 데이터 수집과 저장 : 데이터는 행동 폴리시 behavior에 의해 수집한다. - 신경망 최적화(버퍼에서 샘플링한 미니 배치에 대해 SGD를 수행한다.) - 타깃 업데이트 DQN 구현 DQN코드안 네가지 주요 구성 요소 - DNN - 경험 버퍼 - 계산 그래프 - 훈련 및 평가 루프 Q-러닝과 결합해 심층 신경망을 사용할 수 있었던 최초의 알고리즘은 DQN이다. 이 알고리즘은 두가지 핵심 요소를 통합해 학습 안정화와 아타리 2600게임 같은 복잡한 작업을 제어할 수 있었다. 사용한 두 가지 핵심 요소는 기존 경험을 저장하는데 사용한 리플레이 버퍼replay buffer와 온라인 네트워크 online network 보다 업데이트 빈도가 낮은 별도의 타깃 네트워크..

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 인터페이스를 이용한 액션을 어떻게 샘플링 할 수 있는가? 에이전트에서 환경 : 액션 환경에서 에이전트 : 관측, 보상, 종료여부, 정보 관측: 환경에 대한 새로운 관측을 나타내는 객체 보상 : 마지막 액션에서 얻..

강화학습

강화학습은 의사결정을 위한 목표 지향 접근법이다. 이방법은 환경과 직접 상호작용 하고 지연된 보상 메커니즘을 이용한다는 점에서 기존 패러다임과 차이가 있다 강화학습에서 딥러닝을 사용하면 고차원 상태 공간 문제와 인지 데이터 분석 문제를 해결하는데 도움이 된다. 강화학습에서 환경 모델은 필요 없지만 추가 정보를 제공해 폴리시의 품질을 개선하는데 도움이 된다. 강화학습이란 무엇인가? 의사 결정을 위한 목표 지향 접근법 에이전트의 최종 목표는 무엇인가? 살아 있는 동안 누적된 총 보상을 최대화 하는 것 지도학습과 강화학습의 주요 차이는 무엇인가? 지도학습과 강화학습은 데이터를 이용해 학습하는 유사하지만 다른 패러다임을 가짐. 지도학습 : 예제를 구성하는 제한된 데이터 양을 갖는 고정된 데이터셋으로 일반화 방법..

[Ubuntu] ubuntu에 vim 설치하기

vim 설치 # root 권한으로 들어감 sudo su # 설치 전 업데이트 먼저 apt-get update # vim 설치 apt-get install vim # vim의 편리한 기능 활성화 vim ~/.vimrc vimrc에 추가하면 편리한 기능들 set number : 줄 번호 표시 set tabstop : tab시 4칸 이동 set ignorecase : 검색시 대소문자 구별하지 않음 set hlsearch : 검색시 하이라이트 set bs=indent,eol,start : backspace 키 사용 set ruler : 상태 표시줄 커서 위치 표시 set title : 제목 표시 set showmatch : 매칭 되는 괄호 표시 set wmnu : tab 자동 완성시 가능한 목록 표시 synta..

Infra 2022.01.13

[Conda] 가상환경에서 R 설치하기

가상환경에서 R 설치하기 # conda prompt 실행 $ conda info —envs # 현재 존재하는 아나콘다 환경 확인 $ activate cuda # cuda라는 이름을 가진 아나콘다 환경 활성(Windows) $ conda install -c r r-essentials # R 패키지 설치 R package 설치 하기 ~anaconda3/envs/renv/bin 경로에서 R 실행 (명령어 : R ) R 접속 후 install.packages("패키지 명") Ubuntu install R https://jjeongil.tistory.com/1335 Ubuntu 18.04 : R 설치하는 방법, 예제, 명령어 R은 빠르게 성장하고 있는 오픈 소스 프로그래밍 언어이며, 통계 컴퓨팅과 그래픽 표현을..

Infra 2022.01.12

[Docker] docker-compose 부터 가상환경 설치까지

docker-compose 적용하기 docker-compose.yaml 파일 있는 경로에서 # docker-compose up -d # docker ps > 를 통해서 이미지가 제대로 올라와있는지 확인할것 docker image 안에서 가상환경 만들기 # docker exec -u -it bash 1.아나콘다 설치하기 cd /tmp curl -O https://repo.anaconda.com/archive/Anaconda3-2021.11-Linux-x86_64.sh -> 아나콘다 버전은 repo.anaconda.com/ 접속해서 최신버전으로 적용할 것 스크립트의 데이터 무결성을 확인합니다. sha256sum 명령을 사용하여 스크립트의 데이터 무결성을 확인 sha256sum Anaconda3-2021.11..

Infra 2022.01.12
반응형