전체 글 179

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

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

[Docker] 자주 사용하는 명령어

1. image # docker images - docker 목록 보기 # docker search - docker 이미지 검색 # docker pull - 도커 허브에 있는 이미지를 받아 옴 이미지 이름 뒤에 : 태그를 붙여 원하는 버전을 받아올 수 있다. 태그를 붙이지 않으면 가장 최근 버전을 받아온다 (:latest) # docker rmi - 도커 이미지 삭제 # docker rmi -f - 도커 이미지 강제 삭제 #sudo system prune[option] - [-a | -f] - 불필요한 image/container 일괄 삭제 2. Container # docker ps - 실행 중인 container 리스트 출력 # docker start # docker restart #docker st..

Infra 2022.01.11

[airflow] Dag간 연결 하기 (Connecting between Dags) ⏰

dag를 설계할 때, dag 끼리 종속성을 갖지 않는 것이 가장 좋지만 어쩔 수 없이 종속성을 만들어야 하는 경우가 있다. 아래와 같은 상황일 때, dag의 종속성을 갖는 것이 유용하게 사용 된다. 두 dag는 종속되지만 일정이다름 두 dag는 종속 되지만 서로 다른 팀에서 소유 task는 다른 task에 종속되지만 execution_date가 다름 여기서는 dag에서 다른 dag를 호출하는 방법을 설명한다. -> subDAG를 사용하여 dag 종속성을 처리할 수도 있지만, subDAG가 성능 문제를 일으킬 수도 있으므로 dag 종속성으로 처리하는 것을 권장 -> airflow2.0에서는 subdag 사용을 권장 하지 않음. TriggerDagRunOperator -> 해당 operator를 사용하면 동..

Infra/MLops 2022.01.10

[airflow] mysql연결하기

airflow2.0 관련하여 자료가 부족하여, 기록 겸 정리 중입니당 > mysql_conn_id : 이부분이 airflow Connections Id 와 일치 해야함 with DAG(dag_id="daily_dagtest", default_args=default_args, schedule_interval="0 10 * * *" ) as dag_instance: t1_mysql_get = ReturningMySqlOperator( task_id='t1_mysql_get', sql=r''' SELECT * FROM Table_name ''', dag=dag_instance ) dag 안에서 ReturningMySqlOperator 호출 후 사용 sql=r''' 이곳에 쿼리 작성 '''

Infra/MLops 2022.01.10
반응형