진주당의 기계 학습 엔지니어는 잠시comet.ml 사용

TL; DR

  • comet.ml라는 기계 학습의 실험 데이터를 저장할 수 있는 서비스가 있습니다
  • 1~2분 정도면 학습 과정의 계기판을 만들 수 있다
  • 네트워크의 도표와 로그 출력을 마음대로 기록합니다
  • 과거에 했던 실험을 잊어도 재현할 수 있다
  • 실험마다 기록이 귀찮으신 분들은 이걸로 편하게 기록하세요.

    comet.ml


    기계 학습의github를 목표로 기계 학습 실험을 저장하는 서비스입니다.
    https://comet.ml
    comet.ml에서 모든 실험에서 학습 곡선과 데이터의 입력과 출력의 가시화
    사용된 초파라미터와 그 값을 기록할 수 있고 학습 코드도 기록할 수 있다.
    사용 방법은 공식 문서에 던져라.Quickstart부터 순서대로 읽어서 예시대로 쓰면 쉽게 가져올 수 있습니다.
    https://www.comet.ml/docs/

    왜 편리한가


    먼저 열거해 보겠지만 분위기도 모르고 이걸 읽으면서 공식적인 개요설명 애니메이션을 보는 것을 추천합니다(아래)
    https://www.youtube.com/watch?v=xaybRkapeNE

    comet_mlapi를 통해서만 도표와 로그를 저장할 수 있습니다


    tensorboard에서 도표 구조를 시각화할 때 때때로 시간이 걸린다
    굳이 기술하지 않아도 도표를 출력할 수 있어서 기쁩니다.
    특히pytorch는 스타일을 몰라서 포기해서 기쁩니다.
    단, 텍스트 기반의 출력이기 때문에 주의해야 한다.
    또한 프로그램의 로그 출력도cometml에서 볼 수 있습니다
    기록 기구를 만드는 번거로움도 덜었다.일일이 ssh로 CLI를 볼 필요도 없습니다.

    대시보드 사용자 정의 가능


    (2/3 추기) 학습 곡선의 도표를 그룹화할 수도 있다.화면은 아래 그림과 같습니다Charts->요약할 지표(예를 들어train과validation의accuracy)를 선택할 때 같은 도표에서 학습 곡선을 요약할 수 있습니다.

    총괄적인 학습 곡선은 이런 느낌이에요.

    재현 학습 가능


    나는 개인이kaggle에 참가하는 상황에서 진주당의 사람들이git에 코드와 파라미터를 일일이 기록하지 않을 것이라고 생각한다.나는 이런 사람이 반드시 있다고 생각한다. 과거의 학습 후회를 재현할 수 없는 일이다.
    comet.ml라면 API를 코드에 끼우면 학습할 때마다 학습 과정을 자동으로 저장하고 게으른 사람이라도 과거의 학습을 재현할 수 있다.코드만 쓰기 때문에 각각의 실험의 지점을git로 표시할 필요가 없습니다.

    추천자


    머신 맨


    개인적으로 하면 로그 기구와 계기판을 일일이 만들 시간도 없고 특별히 다른 사람에게 시킬 이유도 없어 편리하다.cometml라면 최근 10개의 실험을 무료로 기록할 수 있다.실험기록이 어느 정도public가 될 수 있다면 추천합니다.

    대시보드 서버 만드는 게 귀찮은 사람.


    나 이거 맞았어.
    GCP에서 계산을 했기 때문에tensorboard 서버를 만들었습니다.nginx로 6006 포트의basic인증을 통과하려고 했지만 귀찮아서 하지 않았습니다.
    만약cometml의 API를 사용한다면cometml에 각 EPOCK의 손실 등을 기술하여 대시보드를 마음대로 제작하는 것이 편리하다.

    fluentd 등 기록 기구를 만드는 게 귀찮은 사람.


    위와 비슷한 동기.인프라 엔지니어가 아니면 힘들지 않을까요?
    개인이 기계 학습을 하는 상황에서 예를 들어 stdout와 stderr의 원시 출력에도 저항력이 없는 사람은 프로그램이 뱉은 stdout와 stderr를 마음대로 기록할 수 있다.

    상술한 지식이 없는 사람


    기계에서 엔지니어가 된 사람들은 인프라 시설에 대한 지식이 전혀 없다.카글 등 개인적으로 기계 학습을 하는 사람에게도 편리하죠.

    추천하지 않는 사람


    (무료) 작업 처리 데이터


    무료 버전의 모든 계기판은 공공이므로 작업 중에 사용할 때 주의해야 한다

    학습 곡선이 못생긴 사람.


    예를 들어tensorboard처럼 훈련 데이터 분실 검증 데이터 손실
    하나의 도표로 정리할 수 있는 기능이 없다.확인이 안 돼서 아마 없을 거예요.
    (2/3 추기) 거짓말했어.위에서 말한 바와 같이 하나의 도표로 정리하는 기능이 있다.

    네트워크 출력은 보기 어렵다


    위의 동기와 비슷하지만, 나는 텐서보드보다 못한 점이 있다고 생각한다.
    인터넷 도표의 출력은 텍스트를 바탕으로 하기 때문에 인상에서 잡기 어렵다.
    그러나 각 층의 초 파라미터가 모두 잘 출력되었기 때문에 심각하게 무의미하지 않을까 생각합니다.

    주의사항


    코드가 무단으로 노출되기 때문에 신용카드를 코드에 직접 쓰지 마세요.힘들기 때문에 게으른 사람은 주의하세요.

    마지막


    아직 사용을 시작하지 않았기 때문에 자주 수정하고 싶어요.

    좋은 웹페이지 즐겨찾기