본문 바로가기
Study/MLops

[MLops] 220210 패스트캠퍼스 챌린지 18일차 - DVC 실습(2)

by 후이 (hui) 2022. 2. 10.
728x90
반응형

 

지난 시간에 이어서 DVC 추가 실습을 진행하겠다. 

https://huidea.tistory.com/254?category=999869 

 

[MLops] 220209 패스트캠퍼스 챌린지 17일차 - DVC 실습

이전 수업에 이어서 DVC 환경 설정을 해보겠다 ! DVC (data version control) https://dvc.org/ Data Version Control · DVC Open-source version control system for Data Science and Machine Learning project..

huidea.tistory.com

 

1) dvc pull

  • 데이터를 remote storage 로부터 다운로드합니다.
cd dvc-tutorial

# dvc 캐시를 삭제합니다.
rm -rf .dvc/cache/
# dvc push 했던 데이터를 삭제합니다.
rm -rf data/demo.txt

# dvc pull 로 google drive 에 업로드했던 데이터를 다운받습니다.
dvc pull

# 방금 다시 다운받은 데이터가 이전 데이터와 동일한지 확인합니다.
cat data/demo.txt

 

2) dvc checkout

  • data 의 버전 변경하는 명령어입니다.
  • 버전 변경 테스트를 위해, 새로운 버전의 data 를 dvc push 합니다.
# 데이터를 변경합니다. (새로운 데이터를 같은 이름으로 copy 해와도 좋습니다.)
vi data/demo.txt

# 변경되었는지 확인합니다.
cat data/demo.txt

# dvc add (data/demo.txt.dvc 를 변경시켜주는 역할) **** 
dvc add data/demo.txt

# git add and commit
git add data/demo.txt.dvc   #dvc 파일을 git에 add
git commit -m "update demo.txt"

# dvc push (and git push)
dvc push # 새로운 버전의 data 파일을 remote storage 에 업로드

(git push) # .dvc 파일을 git repository 에 업로드
  • 구글 드라이브로 이동하여 new 파일이 정상적으로 업로드되었는지 확인합니다.
    • 새로운 폴더가 추가로 생성되었고, 폴더 내부에 긴 이름의 파일이 하나 업로드된 것을 확인하실 수 있습니다.
    • 이 파일을 다운로드받은 뒤 열어보면 방금 변경한 파일이 업로드 된 것을 확인할 수 있습니다.
  • 이전 버전의 data 로 되돌아가보겠습니다.

 

 

1) 번 과정 진행 이후에 2번을 시도했는데 구글 드라이브에 새 파일이 생성되지 않았다. 

 

 

+) 진행 과정에서 아래와 같은 에러가 발생했다. 

 

문제 원인은 파악하지 못했음, 다시 하니까 됨... ;;;

 

터미널에서 우분투 단축키 참고하기

https://blog.naver.com/salmenia/100158855138

 

리눅스 파일 편집 cat, vi

cat 명령어는 파일의 내용을 보거나 간단한 텍스트 파일 또는 스크립트 파일을 만들 때 사용되는 명령어 '&...

blog.naver.com

리눅스를 사용하면서 vi 에디터쯤은 사용할 줄 알아야겠죠?
좀 특이한 이 에디터의 간략한 사용방법을 정리했습니다. 



● vi의 동작 모드 - 명령/입력/ex

● 입력
vi 에디터에서 글자를 입력하기 위해서는 i(insert)를 타이핑해야한다.
그러면 입력을 할 수가 있다.  
입력모드를 벗어나려면 ESC키를 누르면 빠져나온다. 

저장하기/끝내기
저장하는 방법은 :w라고 하면 된다. 
저장하지 않고 끝내는 방법은 :q!

● 커서이동
입력모드가 아닌 상태에서 이동을 할 수 있다. 리눅스에선 일반 방향키로도 이동이 가능하다. 
좀더 빠른 입력을 위해서는 h(왼쪽), j(아래쪽), k(위쪽), l(오른쪽)를 이용해서 움직일 수 있다. 
그래서 능숙한 숙련자는 키보드중심에서 손이 벗어나지 않고 빠른 속도로 에디팅 작업을 할 수 있다.
한 단어씩 이동하려면 w(오른쪽), b(왼쪽)을 이용하면 된다.
행의 처음으로 이동하려면 0을 행의 마지막으로 이동하려면 $을 입력한다.

● 텍스트 교체 명령
텍스트를 교체하려면 R(커서가 있는 자리부터 여러 문자를 교체)명령을 사용하고, 한글자만 바꾸려면 r을 사용한다.
R명령은 삽입에서 수정으로 바꾸는 것과 같은 효과를 낸다. 

● 삭제 명령
dw : 한 단어씩 삭제
dd : 한 줄 삭제
D : 커서 위치에서부터 행 끝가지 삭제
x : 한 글자 삭제

● Cut & paste (자르고 붙이기)
y : 텍스트를 복사한다. 주로 yy를 사용해서 한줄을 복사하는 명령을 사용한다. 
p : 커서 뒤에 임시 버퍼 내용 붙이기
P : 커서 앞에 임시 버퍼 내용 붙이기

● 행번호 붙이기
:set nu라고 하면 되고, 해제하려면 :set nonu라고 하면 된다. 

● 범위 지정하기
특정 행번호로 이동하기 
:30  --> 이렇게 하면 30행으로 이동한다. 
:$  --> 이렇게 하면 행의 마지막으로 이동한다. 
:$=  --> 이렇게 하면 현재 편집중인 텍스트 내용이 총 몇 줄인지 알 수 있다. 
범위 지정하기
:1,10d  --> 이렇게 하면 1행부터 10행까지 지운다. 
:10,20y  --> 이렇게 하면 10행에서 20행까지를 임시버퍼에 저장해논다.  

 

 

 

 

참고할 만한 링크 : 

https://ichi.pro/ko/mlopsui-gicho-2bu-dvcleul-sayonghan-deiteo-mich-model-gwanli-118621311880900

 

MLOps의 기초 — 2부 | DVC를 사용한 데이터 및 모델 관리

이 4개 블로그 시리즈의 1부에서는 MLOps 관행을 채택한 동기를 이해하고 MLOps의 기본 원칙 중 일부를 살펴보았습니다. 또한 ML 워크플로 수명 주기의 다양한 단계에서 MLOps를 구현하는 데 사용되는

ichi.pro

 


필수 링크: https://bit.ly/37BpXiC

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr

 

 

18 일차 학습 인증샷 : 

dvc, git 을 활용해서 구글 드라이브에 추가로 수정된 파일을 올려봤다.

더 추가적인 작업을 해보고 싶으나, 수업 강의는 여기까지다... 

시간날때 코드도 올려보고 이것저것 시도해봐야겠다. 

 

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.

 

728x90
반응형

댓글