오늘도 어제처럼
취소

MLflow 사용하기 (2)

MLflow Tracking Server (UI) MLflow Tracking server를 활용하면 로컬에서 로깅한 여러 정보들을 웹 화면에서 한눈에 볼 수 있습니다. 아직 기능들이 세밀한 조절이 불가능하기는 하지만 충분히 좋은 성능을 보여줍니다. MLflow server를 동작하기 위해서는 아래의 명령어를 입력하면 됩니다. mlflow ui...

MLflow 사용하기 (1)

MLflow 많은 학습을 반복해서 수행하고, 모델 구조를 변경하고 하다보면 체계화된 학습 관리의 필요성이 느껴집니다. 이전에는 직접 모델 구조를 디렉터리 별로 나눠서 관리하고, 출력 weight를 저장하고, 결과들을 수기로 기록하는 방식을 많이 이용했습니다. 물론 이에따라서 관리 리소스가 너무 많아지기도 했습니다. 이를 쉽게 관리하기 위해서 찾아...

data pipeline (workflow scheduler)

data pipeline (workflow scheduler) ML 관련 프로세스 작업을 하다보니 주기적으로 데이터를 처리해아할 일이 발생하게 되었다. 예를 들어 한없이 쌓이는 데이터를 미리 학습용 데이터 구조로 변경시켜둔다면 나중에 학습할때 손쉽게 이용할 수 있다. 데이터 사이언스에서는 보통 이를 ETL (Extract, Transform, Lo...

DVC 사용해서 데이터 관리하기

DVC 비슷한 라이브러리: Pachyderm git을 통해서 데이터의 버전을 관리하고 실제 데이터는 cloud나 로컬에서 관리할 수 있다. git에 큰 용량을 저장하지 않고도 데이터의 버저닝을 관리할 수 있어서 유연하게 활용할 수 있다. dvc doc을 보면 자세한 설명이 되어있고 여기서는 간단하게 AWS s3와 연동시켜서 관리하는 방법을 테스트...

Deep Unsupervised Learning using Nonequilibrium Thermodynamics

Abstract 머신러닝에서는 많은 데이터들을 통해 예측 모델을 만들게 되는데 이때 얼마나 유연하게(flexibility) 데이터에 맞추는지와 다루기 쉬운지(tractability)가 중요하다. non-equilibrium statistical physics에서 영감을 받아서 generative 모델을 만들었다. 천천히 체계적으로 데이터의 분포를...

github actions, AWS ECS를 통한 배포 (1)

github actions 란? github에서 제공하는 CI/CD 툴이다. CI/ CD란 Continuous Integration, Continuous Delivery(Deployment) 로 지속적으로 통합하고 배포하는 프로세스를 의미한다. ML 프로젝트를 production에서 운용하기 위해서 유지보수 및 업데이트를 하기 위해서는 다음과 같은...

포스트 작성시 Typora 이미지 업로드 기능 이용하기

Typora Typora는 유료 마크다운 에디터이다. 간결하고 깔끔하며 미리 결과를 보면서 작성할 수 있어서 사용하기 좋다. 일반적으로 마크다운에서 이미지를 추가하려면 특정 path에 이미지를 추가하고 다음과 같은 구문을 이용해서 이미지를 로딩한다. ![image_name](/image/path) 일반적인 문서작성 용도라면 작성하기 크게 어렵...

AWS Athena 사용기 (1)

AWS Athena AI 모델에서 나온 추론 데이터를 AWS RDS로 즉석으로 넣어주고 있었다. RDS서버가 scale-out으로 인한 연결 수 증가와 입력 데이터량이 커짐에 따라 모니터링이 필요해지고 RDS 자체도 스케일링이 필요해지자 많은 추론데이터를 관리할 방법이 필요해졌다. 데이터 발생 상황은 아래와 같았다. 1초당 30Mb 정도의...

Docker container에서 cron을 이용한 스케줄링

cron은 유닉스 계열에서 사용가능한 잡 스케쥴러이다. 정기적으로 또는 특정 주기를 따라서 동작을 하고 싶을때 이용할 수 있다. docker-compose를 이용하여 컨테이너 실행시 바로 cron을 등록하고 스케줄링을 하고 싶었는데 대부분 아래와 같은 방법으로 알려주고 있었다. $ crontab -e # 등록 (에디터를 이용해서 작성) $ cro...

openvpn 원격으로 켜고 끄기

PRD의 데이터를 가져오기 문제를 해결할 키가 되는 데이터인데 중요도는 낮은 데이터를 가져와야 하는데 보안상 외부에서 DB에 접속하기 너무 번거로웠다. (vpn 켜고, ssh tunneling 하고..) 작업환경이 로컬 맥에서 서버에 접속해서 작업하는 방식인데 (tensorflow, torch의 세팅이 m1에서 너무 번거롭다…) 외부에서 작업시에...