분석시각화 대회 코드 공유 게시물은
내용 확인 후
좋아요(투표) 가능합니다.
대회와 별개로 코드파일 관리방법에 대해 공유해주세요!
안녕하세요! 대회와 관련없는 내용이지만 여러분들의 의견을 듣고싶습니다.
경진대회, 실무 등에서 각종 모델 실험/개발을 하실 때 파일들을 어떻게 관리하는지 궁금합니다!
저는 git으로 관리를 시도해봤는데, git이 익숙치않아서 브랜치별로 여러 방법론을 실험하면서 왔다갔다하는게 아직은 힘드네요..ㅎ
그래서 파일명으로 방법론을 구분지어 별도의 파일로 백업해놓곤 합니다.
혹시 조언을 얻을 수 있을까요?!
아하, 한 번 살펴봐야겠네요 공유감사드립니다 :)
저는 하나의 notebook 파일에 여러 모델과 설정을 테스트 할 수 있게 구성하고,
설정값을 변경하면서 최적모델을 찾아가는 방식을 사용합니다.
파일을 구분해서 관리하면, 한쪽에서 수정한 내용이 다른 파일에서는 반영하지 않고,
테스트되는 경우가 많아, 이렇게 하는 편입니다. 계속 추가하다가 notebook내용이
커지면, 코드를 정리하거나 일부 공용함수를 만들어서 분리하기도 하는데,
그렇게 길게 만드는 경우가 많지는 않았던 것 같습니다.
GPU가 장착된 Linux서버에 jupyterlab 서버를 띄우고, 브라우저로 접속하여 사용합니다.
notebook이 버전업되서 git등에 손쉽게 연동되면 좋을 것 같은데, 아직은 어쩔수 없이
수동으로 복사해 놓습니다.
또한 notebook의 단점이 접속이 끊긴후 연결하면 출력 내용을 알기 어려운데,
출력함수에서 화면과 파일 양쪽에 저장하도록 구성하여 사용하고 있습니다.
더 좋은 방안이 있으신 분 의견도 부탁드리고 싶습니다.
좋은 의견 감사합니다!
저도 초창기에 ipynb하나를 활용하여 여러 실험을 돌렸었는데,
초기와 다른점이 단순 model변경 optimizer변경 등의 단순 설정이 아니라
지식이 풍부해짐에 따라 방법론 자체의 실험 비중이 많아진 것 같습니다.
현재는 py파일로 각 역할을 파일분할하고 ipynb로 해당 파일들을 불러와 사용하고 있는데,
또 추상화는 추상화 나름대로 단점이 존재하더군요. 이건 아마 클린코딩의 영역같습니다.
여하간 방법론에 따라 Dataset 클래스, train 코드 자체를 거의 갈아엎다시피 변경해야하고
이걸 한 파일에 넣자니 너무 복잡해져서 결국엔 파일을 복제하여 방법론별로 저장을 하게 되었네요.
삭제된 댓글입니다
데이콘(주) | 대표 김국진 | 699-81-01021
통신판매업 신고번호: 제 2021-서울영등포-1704호
서울특별시 영등포구 은행로 3 익스콘벤처타워 901호
이메일 dacon@dacon.io | 전화번호: 070-4102-0545
Copyright ⓒ DACON Inc. All rights reserved
aws sagemaker
mlflow
local file
정도 될 것 같습니다.