New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Data Version Control (DVC) 적용하기 #33
Comments
버전 컨트롤해야하는 디렉토리
|
주의사용자의 컴퓨터에 설치해둬야 dvc사용이 가능하다. 반드시 설치! 설치 방법공홈 링크에 설명되어 있는 것처럼 그냥 각 OS에 맞게 설치하면 될것 같다. 난 pip으로 해보고 안되면 공홈에 있는 MacOS용 .pkg파일을 다운받아 설치해보려한다. pip으로 설치된다! XD
파이썬에서 지우고 pkg로 다시 설치해야겠다... (brew로도 된다!)
|
사용법dvc init |
구글 드라이브로 설정하려면 공유폴더를 특정사람들과만 공유해야한다. 고한다. (anybody with link는 불확실하다고 한다 - 공홈 -) 구글 드라이브에 push 성공! 추가하는 방법!
폴더 ID는 해당 폴더를 공유할 때 생기는 링크에서 가장 마지막 path명이다. 추후에 수정도 가능하다 dvc remote list 로 등록된 remote의 목록 확인이 가능하다. |
오 오 신기하다 dvc add 로 추가한 파일은 더이상 git에 트래킹 안되게 gitignore에 파일이 추가된다. |
주의사항git push를 한다고 해서 데이터셋이나 모델이 푸시되지 않는다. dvc push를 해야 리모트 저장소로 푸시된다.
위에 쓴 코맨트처럼 dvc pull로 데이터 가져오기, dvc checkout으로 특정 커밋으로 체크아웃 모두 가능하다.
|
리모트 저장소 목록
|
파이참 (IntelliJ 기반)에 dvc 플러그인이 있다! |
dvc status로 현재 트래킹 상태 확인 가능하다. |
+ α오 DVC에 생각보다 다양한 기능이 많다. pipeline 해당 프로젝트 밖에서도 dvc get으로 파일 가져올 수 있고 (파이썬에서 dvc.api로 해당 api를 사용할 수 있다.) Experiment |
일단 위에 있는 기능들을 말그대로 플러스 알파적인 요소라 여기까지만! |
Why?
파이썬 파일, 설정 json등의 간단한 파일들은 git을 통해 버전 트레킹이 가능하며 Github에 업로드가 가능하다.
하지만 용량이 큰 파일 (약 2GB이상)의 경우 git에서는 트레킹이되지만 Github에 업로드가 불가능하다.
깃헙에 대용량 파일 업로드가 불가한 정책이 있기 때문이다. (아마도 용량이 큰 하나의 파일로 인해 전체 프로젝트의 깃 부피가 지나치게 커지는 것을 막기 위함인 것 같다.)
최근 딥러닝, 머신러닝등 기계 학습 기반의 모델들(serialised되었을 때 부피가 큼)을 연구하고 produce하는 society가 늘어남에 따라 위와 같은 큰 volume의 파일을 트레킹하는 데에 유용한 툴들이 개발되었다.
우리의 프로젝트의 경우, 데이터셋이 꾸준히 업데이트 되고, 모델 또한 개선책을 마련하여 버전이 올라갈것이다. 그렇기 때문에 효과적으로 히스토리를 기록할 수 있으면 좋은데 사람이 직접하기엔 귀찮음과 부정확함이 생길 수 있다.
그래서 git과 같은 버전 컨트롤 도구를 추가하려 하는데 그중, 최근 Github에서 start개수가 많고 실제 ML프로젝트에서 많이 적용되는 것으로 보이는 DVC를 우리 프로젝트에 적용하려한다.
What?
DVC를 이용해 데이터셋, 모델 (serialised file)의 버전컨트롤을 해보자.
일단은 Version_0만 적용.
remote 저장소는 최근에 만든 wisdomify.project의 구글 드라이브로.
The text was updated successfully, but these errors were encountered: