목록MLOPS (12)
rueki
https://dvc.org/doc/start/data-and-model-versioning Get Started: Data and Model Versioning Get started with data and model versioning in DVC. Learn how to use a regular Git workflow for datasets and ML models, without storing large files in Git. dvc.org data versioning 할 때 사용하는 툴로써, 코드나 모델에만 버전을 매기는 것이 아니라 학습에 사용하는 데이터에 대해 버전을 매기는 툴이다. 1. 설치 pip install dvc 설치는 위 명령어만 입력하면 간단하게 설치가 된다. 2. 예시 데이터..
1. Unsupervised Learning Supervised learning은 학습방법 중에 지금까지 학습이 제일 잘 되는 방법이지만, 그에 따라 레이블이 된 데이터가 많이 필요하기에 레이블이 안 되있는 경우 적용할 수 없으며 레이블링 하는 데에도 비용이 많이 든다. 이를 해결해보고자 Semi-supervised learning과 Unsupervised learning이 나왔다. - Semi-supervised 레이블링이 되어있지 않은 데이터에 대해서 레이블링을 해보자라는 개념에서 나온 것으로서, 임의의 데이터가 라벨링 된 데이터와 유사하다면 같은 레이블로 가정하는 것이다. 다양한 방법론 중에 하나인 Noisy-student를 설명한다. 1) 레이블된 이미지로 teacher 모델을 학습 2) 레이블되..
Model Monitoring 모델을 배포하고 나면 다 끝난 줄 알았는데, 더 중요한 작업이 있었다. Monitoring인데 이것을 왜 해줘야 할까? 이유는 배포하고도 배포할 당시의 성능을 계속 유지하기 위해서이다. 배포하고나서 성능이 계속 떨어지는 경우가 있는데 이에 대한 예시가 아래의 그림에 설명이 자세히 되어 있다. - Data drift : upstream process의 변경과 같이 모델 성능 저하를 일으키는 입력 데이터의 변경. - Model drift : 모델의 변화로 인한 입출력 사이의 관계가 변화하게 됨. - Concept drift : 모델링 대상의 통계적 특성이 바뀌는 현상. - Domain shift : 데이터 셋 분포와 훈련 데이터 셋 간의 변화. Data drift의 종류 - I..
이전 주차에서도 계속 강조되어서 나오는 내용이지만, ML System은 데이터가 차지하는 중요성의 비중이 매우 높다. 데이터에 따라서 모델의 성능이 좌지우지 되기때문이다. 그렇다면 Data에 대해 정의 및 설정은 어떻게 해야할까? 한 가지 예시를 들어보면 Detection task에서 데이터를 구축하려면 일일히 labeling을 해야하는데 아래의 사진처럼 사람마다 bounding box를 치는 기준이 다 다르기 때문에, 일관성이 떨어지게 된다. 그래서 이로인해 성능이 다르게 나올 수 있다. 위와 같은 예제말고도 label ambiguity한 예제를 하나 더 봐보자. 음성인식에서 sound가 Umm, i don't want to do that 이라 했을 때, 사람들은 이것에 대해서 라벨링을 Umm... 이..