새 학습 마법사
태스크 선택부터 검토·시작까지, 학습 실행을 구성하는 11단계
필요 권한: 개발DEVELOPER · OPERATOR · ADMIN
학습 실행을 11단계로 구성해 시작. 학습 목록의 새 학습 으로 열며 develop 권한(DEVELOPER·OPERATOR·ADMIN) 필요. 데이터셋 상세의 이 데이터셋으로 학습 으로 열면 ④ 데이터셋이 미리 선택됨. 학습 상세의 이 설정으로 다시 학습 으로 열면 모든 값이 채워진 상태로 ⑪ 검토 단계가 열림. 이때 실험 이름은 비워지고, 그사이 선택할 수 없게 된 런타임 변형은 기본 변형으로, 삭제되었거나 준비 상태가 아닌 업로드 시작 가중치는 카탈로그 가중치로 대체되며, 변경 내용은 알림으로 표시.
| 번호 | 영역 | 설명 |
|---|---|---|
| ① | 단계 목록 | 11단계. 지나온 단계만 클릭해 복귀 가능. 서버가 오류를 반환한 단계에는 빨간 표시. |
| ② | 현재 단계 | 단계 제목과 설명, 입력 영역. |
| ③ | 다음 | 이 단계의 필수 값이 채워지면 활성화. 마지막 단계에서는 학습 시작 으로 변경. |
| ④ | 취소 | 작성 내용을 폐기하고 목록으로 복귀(한 번의 확인 창 표시). |
이전 은 한 단계 앞으로 복귀. 입력은 저장되지 않으므로, 작성 중 다른 메뉴로 이동하려 하면 "학습 설정을 두고 나갈까요?" 확인 창 표시.
앞 단계를 변경하면 그 단계에 종속된 뒤 단계 값 초기화. 태스크 변경 시 프레임워크·모델·클래스·하이퍼파라미터, 프레임워크 변경 시 모델·하이퍼파라미터·시작 가중치·런타임 변형, 모델 변경 시 하이퍼파라미터·시작 가중치, 데이터셋 변경 시 클래스 초기화.
단계별 설명
① 태스크
학습할 컴퓨터 비전 태스크 선택. 기본값은 Object Detection. 카드 오른쪽 위 숫자는 이 테넌트에서 실행 가능한 프레임워크 수. 학습 런타임 변형이 게시되지 않아 실행할 프레임워크가 없는 태스크는 목록에 표시되지 않음. 숨겨지는 태스크 중 복제로 이미 선택된 태스크만 흐리게 표시. 표시할 태스크가 없으면 "학습할 수 있는 태스크가 없습니다" 안내 표시.
| 태스크 | 설명 |
|---|---|
| Object Detection | 바운딩 박스로 객체를 찾고 클래스 라벨 부여. |
| Instance Segmentation | 객체별 픽셀 마스크까지 예측. 포인트클라우드는 물체별로 점을 묶어 구분. |
| Semantic Segmentation | 모든 픽셀(포인트클라우드는 모든 점)을 카테고리별로 분류. |
| Classification | 입력 하나를 정해진 클래스 중 하나로 분류. |
② 프레임워크
태스크를 지원하는 프레임워크 카드. 카드에 배지(real-time, pointcloud 등), 모델 수, 라이선스, 연도, 추가 변환 형식(예: onnx, tensorrt) 표시. Object Detection 의 기본은 YOLO. 태스크와 마찬가지로 학습 런타임 변형이 없는 프레임워크는 표시되지 않음. 표시할 카드가 하나도 없으면 "학습할 수 있는 프레임워크가 없습니다" 안내 표시. 이때는 학습 런타임 화면에서 변형을 게시하거나 시스템 관리자에게 공유 이미지 요청.
③ 모델
프레임워크의 모델 변형(크기·정확도가 다른 버전) 선택. 위 검색 칸으로 변형 검색. 표의 Params(M) 는 파라미터 수, mAP 는 공개 벤치마크 정확도, 사전학습은 카탈로그 체크포인트(파일 이름과 크기). 변형 선택 후 아래 시작 가중치 에서 카탈로그 가중치(기본)나 직접 업로드한 가중치 선택. 직접 업로드한 가중치는 선택한 변형용이면서 확인이 끝난 가중치만 표시. 없으면 사전학습 가중치 화면을 새 탭으로 여는 링크 표시.
④ 데이터셋
학습용 파일(이미지·PLY·표 형식)이 있는 데이터셋만 표시. 행마다 유형, 에셋 수, 마지막 갱신 시각 표시. 포인트클라우드 데이터셋은 모델이 요구하는 라벨이 없으면 흐리게 표시, 이유는 행 안에 주황색으로 표시. 클래스가 필수인 시맨틱 분할은 클래스 라벨, 인스턴스 분할(PointGroup)은 인스턴스 속성 필요. 라벨은 데이터셋 개요의 포인트 라벨 해석에서 지정. 아래 데이터셋 캐시 사용(기본 활성화)은 같은 데이터셋으로 다시 학습 시 내려받기 생략.
⑤ 클래스
데이터셋의 어노테이션에서 수집한 클래스와 객체 수, 도형 종류 표시. 표 형식 모델은 라벨 열의 값을 클래스로 표시. 모델 변형에 따라 필수(하나 이상 선택해야 함, 호환 클래스가 모두 미리 선택됨)·선택(아무것도 선택하지 않으면 전체 학습)·해당 없음(선택할 축이 없음)으로 구분. 모델이 다룰 수 없는 도형의 클래스는 이유와 함께 흐리게 표시. 목록 위에 선택한 개수(N / M개 선택됨)와 호환 클래스 전체 선택·선택 해제 버튼 있음. 포인트클라우드 인스턴스 분할은 클래스를 선택하지 않으면 모든 물체를 단일 클래스 object 로 간주, 물체의 개별 분리만 학습. 인스턴스마다 클래스를 할당하는 데이터셋에서 할당이 완료되지 않았으면 "미할당 인스턴스 N개(점 x%)는 학습에서 무시됩니다" 경고 표시. 학습은 차단하지 않음.
⑥ Train/Val 분할
분할 방식, Train 비율(1~99%, 기본 80%), Seed(기본 0, 같은 값이면 같은 분할 재현) 지정. 분할 방식은 Random(비율에 따른 무작위 분할), Stratified(라벨 비율을 유지한 분할) 등, 프레임워크가 지원하는 방식만 활성화. Datasets·Collections 는 준비 중이라 선택 불가.
⑦ 하이퍼파라미터
모델 변형의 기본 하이퍼파라미터를 YAML 로 채워 표시. 수정한 내용은 그대로 저장, 허용 키와 범위는 제출 시 서버가 검증. YAML 을 비우면 프레임워크 기본값으로 학습. 기본값으로 재설정 으로 복원. 일부 프레임워크는 YAML 대신 입력 칸으로 표시, 칸 아래에 범위와 기본값 표시. 이때 YAML 보기 로 YAML 직접 수정 가능.
⑧ 평가 · ⑨ Export
| 단계 | 항목 | 설명 |
|---|---|---|
| ⑧ 평가 | 모델 평가 실행 | 학습 종료 후 등록될 체크포인트를 검증 세트로 평가(mAP, mIoU 등). 기본 활성화. |
| ⑧ 평가 | 속도 테스트 | 학습 장치에서 배치 1로 추론 지연(p50, p95)과 처리량 측정. 서빙 환경의 속도와는 다를 수 있음. 기본 비활성화. |
| ⑨ Export | PyTorch (.pt) | 항상 저장. |
| ⑨ Export | ONNX (.onnx) | 학습 종료 후 ONNX 로 변환해 Run 아티팩트로 업로드. 기본 비활성화. 지원하지 않는 프레임워크에서는 선택 불가. |
| ⑨ Export | TensorRT (.engine) | GPU·드라이버 환경에 따라 다름. 기본 비활성화. 지원하지 않는 프레임워크에서는 선택 불가. |
평가와 속도 테스트는 모델을 MLflow 에 기록한 다음에 실행. 둘 중 하나가 실패해도 학습 실행은 완료 상태로 종료, 모델도 유지. 결과는 학습 상세의 후처리 결과 카드에서 확인. 중지한 실행은 평가와 속도 테스트를 수행하지 않음.
⑩ 실행 환경
학습은 컨테이너(Kubernetes Job) 로 실행. 학습 런타임 변형 에서 학습 이미지 선택. 선택한 프레임워크용 변형과 프레임워크 제한이 없는 변형만 표시, 이미지가 없는 변형(미게시)은 선택 불가. 선택하지 않으면(자동) 테넌트의 기본 변형 사용. GPU 자원 에서 CPU 실행 여부 또는 사용할 GPU 슬롯(배선된 공유 풀 또는 전용 예약) 수 지정. 선택 가능한 슬롯 수는 현재 여유 슬롯 수까지. 테넌트에 GPU 가 배선되지 않았으면 경고 표시, CPU 로만 실행.
GPU 슬롯은 제출 시 한 번, 대기열에서 시작 직전에 한 번 더 확인. 대기 중 다른 작업이 슬롯을 점유하면 실행은 "GPU 를 확보하지 못했습니다" 로 실패. 대기열은 GPU 가 아니라 서버 전체의 동시 학습 수(기본 1, 모든 테넌트가 공유) 때문에 발생.
⑪ 검토·시작
| 번호 | 영역 | 설명 |
|---|---|---|
| ① | 실험 이름 (선택) | 같은 이름으로 제출한 실행은 MLflow 의 한 실험 아래 Run 으로 그룹화. 입력하지 않으면 {프리셋 또는 모델}-{날짜-시각} 으로 자동 생성되어 실행마다 새 실험 생성. |
| ② | 모델 레지스트리 등록 | 활성화하면 학습 종료 후 best.pt 를 새 모델 버전으로 등록(기본 비활성화), 등록 모델 이름 필수 입력. 같은 이름으로 실행 시마다 버전 누적, 새 버전은 Staging 으로 등록. |
| ③ | 학습 시작 | 제출. 성공하면 학습 실행 상세로 이동. |
아래 요약에서 모든 단계의 값 확인.
제출이 거부되는 경우
서버 검증에서 문제가 발견되면 "설정을 확인하세요" 알림과 함께 문제가 있는 첫 단계로 돌아가고, 그 단계에 오류 목록을 빨간색으로 표시. 어느 단계인지 알 수 없는 오류(하이퍼파라미터 키, YAML 형식 등)는 ⑦ 에 표시. 값을 수정하면 그 단계의 빨간 표시 해제. 대표적인 경우:
- GPU 전용 프레임워크(Pointcept 등)에 GPU 슬롯을 배정하지 않음(⑩, 1개 이상 필요).
- 포인트클라우드 시맨틱 분할에서 클래스를 1개만 선택함(⑤, 2개 이상 필요).
- 포인트클라우드 인스턴스 분할 데이터셋에 인스턴스 속성이 지정되지 않음(④).