전체 글 152

[Mlflow] MLflow 란?

mlflow란 머신러닝 모델의 실험을 tracking하고 model을 공유 및 deploy할 수 있도록 지원하는 라이브러리. 머신러닝 학습과 관련된 전반적인 lifecycle을 지원해주는 라이브러리 mlflow의 논리적 컴포넌트 구성은 4개로 구성되어 있다. mlflow는 단독 파이썬 패키지로 구성되어 있어 가볍고 빠르게 Workflow지원 가능하다. MLflow Tracking : Record and query experiments: code, data, config, and results 머신러닝 모델을 학습시킬 때 생기는 각종 파라미터, 그리고 머신러닝 모델 training이 끝난 후 metric의 결과 등을 logging 하고 실행할 수 있도록 코드 패키지 형식으로 지원해준다. 이러한 형식으로 만..

Infra/MLops 2022.01.19

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

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

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

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

모델 -기반 강화학습

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

DDPG와 TD3 애플리케이션

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

[MLOps][Infra]MLOps에 jenkins CI/CD 적용 가능한 구조 고르기

고객의 가치를 빠르고 안정적으로 전달하는 것 DevOps의 목적이고, 이를 위해 CICD를 사용한다. CI = 지속적인 통합 + 자동화 CD = 지속적인 배포 + 자동화 https://secrethub.io/blog/decouple-application-secrets-from-ci-cd-pipeline/ MLOps flow 데이터 준비 -> 모델 구현 -> 모델 배포 MLOps에 jenkins CI/CD 적용 하기 1,2 두가지에 적용이 가능하다. -> 2의 빌드에 1을 걸고, 1,2 의 트리거는 2를 바라보게 만들..면 되...나? 그림 1의 1. 1. jenkins -> (seldom) -> mlfolw https://ichi.pro/ko/lokeol-meosin-ui-gandanhan-mlops-p..

Infra/MLops 2022.01.18

jenkins CI/CD

1. jenkins -> mlfolw model ( seldom 사용 ) https://ichi.pro/ko/lokeol-meosin-ui-gandanhan-mlops-paipeu-lain-241425055604529 로컬 머신의 간단한 MLOps 파이프 라인 클라우드로 전환하지 않고는 기업 외부에서 어떤 종류의 운영 경험도 얻는 것이 어려울 수 있습니다. 간단한 이유는 클라우드로 전환하지 않는 것이 거의 이점이 없기 때문입니다. ichi.pro 2. jenkins -> ?Model (flask 사용 ) https://cloud-oky.tistory.com/249 Python, Docker, Flask, GitLab, Jenkins를 사용하여 NLP 모델 빌드 및 배포 (CI/CD 구현 완료) www.y..

Infra 2022.01.18

[airflow][crontab] 시간 설정

airflow DAG안에 schedule_interval 에서 시간 설정을 할 수 있다. schedule_interval의 스크립트는 crontab 서식과 같다. ex ) # 매일 9시 30분에 동작 schedule_interval="30 09 * * *", Airflow = schedule_interval =" * * * * * " crontab = * * * * * " * * * * * " 순서대로 * 분 : 1분단위로 가능 (0 ~59) // * 일때 : 1분 단위로 실행 * 시 : 매 시간 가능 (0~23) // * 일때 : 매시간 실행 * 일 : 일 (1~31) // * 일때 : 매일 실행 * 월 : 월 (1~12) // * 일때 : 매달 실행 * 요일 : 요일 (0~7)가능 // * 일때 : ..

Infra/MLops 2022.01.18

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..

반응형