본문으로 건너뛰기
FactoryLens Lab

학습 과정

데이터 검증부터 교사 설명 생성, 탐지기 학습과 증류, 학생 VLM 학습, 평가까지 실제 산출물로 순서대로 따라갑니다. 기록된 학습 곡선은 처음부터 다시 재생할 수 있습니다.

  1. 1단계: 데이터 준비·검증

    검사 이미지와 템플릿 짝, 결함 박스 좌표를 확인하고 학습·검증·시험 분할을 고정합니다.
    데이터셋
    —
    train 이미지
    측정 전
    val 이미지
    측정 전
    test 이미지
    측정 전
    분할 기준
    —

    DeepPCB의 각 검사 이미지는 결함 없는 기준 템플릿과 짝을 이룹니다. 같은 보드 설계·스캔 세션이 학습과 시험에 동시에 들어가지 않도록 묶음 단위로 나눴습니다.

    검증 항목 자세히

    시험 분할 정답 결함 0개

    • 단선0
    • 단락0
    • 마우스바이트0
    • 스퍼0
    • 잔동0
    • 핀홀0
  2. 2단계: 교사 설명 생성·자동 검증

    Qwen3-VL-8B 교사에게 결함 영역 크롭(검사 이미지 + 템플릿)과 정답 유형을 주고 한국어 설명과 판단 근거를 쓰게 합니다. 모든 답변은 형식·유형 일치·설명 일관성을 자동으로 검사하고, 통과한 답변만 학생 V2의 학습 자료가 됩니다.
  3. 3단계: YOLO Large / Nano 학습

    YOLO11 Large(교사 탐지기)와 Nano V0(기본 학생)를 같은 정답 박스로 지도학습합니다. 손실과 검증 mAP가 에폭마다 어떻게 변했는지 재생해 보세요.

    기록된 학습 곡선이 아직 없습니다

    학습이 진행되면 training.json에 곡선이 기록되고, 여기서 처음부터 다시 재생할 수 있습니다. 지금 진행 중인 학습은 실시간 모니터에서 볼 수 있습니다.
  4. 4단계: YOLO 지식 증류

    Nano KD는 지도 손실에 더해 고정된 Large 교사의 소프트 출력을 따라 하도록 학습합니다.

    학생 손실 (ml/factorylens/yolo_distill.py)

    L = Lsup(학생, 정답)
    + λcls · BCE(σ(scls), σ(tcls)) / Σσ(tcls)
    + λdfl · T² · Σa wa · KL(softmax(tdfl/T) ‖ softmax(sdfl/T)) / Σa wa
    wa = maxc σ(tcls) · 기본값 λcls = λdfl = 1, T = 2
    소프트 클래스
    교사가 각 앵커에서 낸 클래스 확률을 그대로 목표로 삼습니다. 정답 박스가 없는 곳의 ‘애매함’까지 배웁니다.
    박스 경계 분포
    DFL 분포를 온도 T로 부드럽게 한 뒤 KL로 맞춥니다. 교사가 확신하는 앵커(w)에 더 큰 가중치를 줍니다.
    의사 라벨과의 차이
    교사 박스로 다시 학습시키는 것이 아니라 교사의 출력 분포 자체를 전달합니다. 그 밖의 조건은 Nano V0와 같습니다.

    기록된 학습 곡선이 아직 없습니다

    학습이 진행되면 training.json에 곡선이 기록되고, 여기서 처음부터 다시 재생할 수 있습니다. 지금 진행 중인 학습은 실시간 모니터에서 볼 수 있습니다.
  5. 5단계: 학생 VLM V1 / V2 학습

    SmolVLM2-500M에 LoRA를 붙여 V1은 정답 라벨로, V2는 정답 + 검증된 교사 설명으로 학습합니다. 데이터 수·학습 예산·시험 조건은 같게 맞춥니다.

    기록된 학습 곡선이 아직 없습니다

    학습이 진행되면 training.json에 곡선이 기록되고, 여기서 처음부터 다시 재생할 수 있습니다. 지금 진행 중인 학습은 실시간 모니터에서 볼 수 있습니다.
  6. 6단계: 평가·비교

    같은 시험 분할에서 교사와 학생을 평가합니다. 학생 VLM은 정답 박스가 아니라 Nano KD가 찾은 영역에 대해 답합니다.
    • Macro F1
      교사 VLM
      측정 전
    • Macro F1
      V0
      측정 전
    • Macro F1
      V1
      측정 전
    • Macro F1
      V2
      측정 전
    • mAP50-95
      YOLO Large
      측정 전
    • mAP50-95
      Nano V0
      측정 전
    • mAP50-95
      Nano KD
      측정 전