Feature 라벨 생성(Feature 라벨링)

라벨은 사용자가 생성한 입력 데이터로 도구의 ground truth를 확립합니다. Ground truth란 어플리케이션의 이미지에 대한 논란의 여지가없는 사실, 즉 인간이 이미지 내의 주요 정보 (feature, 글자, 결함, 클래스)로 결정한 것을 말합니다. 라벨은 ground truth를 확립하며, 이는 트레이닝 및 성과 분석에 모두 이용됩니다. 그러므로, 라벨을 정확하게 지정하는 것이 극히 중요합니다.

 

라벨링이란

Deep Learning 소프트웨어는 학습에 기초하고 있으므로, 네트워크가 이미지에 대해 무엇을 학습하는가가 매우 중요합니다. 딥러닝 용어 내에서 이 프로세스를 "라벨 지정"이라고합니다. 라벨링은 사용자가 기능이나 결함을 식별하여 이미지에 그래픽으로 표시하는 프로세스입니다. 라벨은 도구에 대한 ground truth를 나타내며 도구를 학습하고 그 성능을 검증하기 위해 사용됩니다.

라벨은 도구의 ground truth입니다. 즉, 도구에게 "이것이 학습해야 할 것"이라고 말하는 것이 라벨링입니다. 도구 프로그래밍에서 가장 중요한 부분은 트레이닝에 이용되는 이미지에 완전하고 정확하게 라벨이 지정되어야 한다는 것입니다. 이미지의 ground truth 데이터를 알지 못하면 도구가 적절히 작동하는지 여부를 알 수 없습니다. 또한, 정확한 라벨이 없다면, 도구의 트레이닝도 작동하지 않을 것입니다.

도구 및 응용 프로그램의 성능을 평가할 때, 성능은 언제나 사용자가 제공한 라벨을 기준으로 측정됩니다. 라벨 지정이 이미지에 대한 실제의 ground truth를 반영하지 않는다면, 정확하고 반복적인 도구의 성능은 아무 의미가 없습니다. Deep Learning 도구를 트레이닝할 때의 목표(비용 함수)는 사용자가 제공한 라벨 지정에 정확히 일치하는 응답을 생성하도록 도구를 트레이닝하는 것입니다.

모든 도구에서 라벨 지정은 수작업입니다(각 도구에서 라벨 지정이 작동하는 구체적인 내용은 아래를 참조하십시오). 라벨 지정이 잘 되려면, 이미지 간에, 또한 관찰자 및 라벨 지정을 수행하는 사람 간에 일관성이 있어야 합니다. 이미지 Set를 여러 명에게 제공하여 라벨을 지정하게 했는데, 라벨들이 일치하지 않는다면, 도구도 제대로 작동하지 않을 가능성이 큽니다.

 

도구마다 절차는 조금 다르지만, 원칙은 동일합니다. 라벨 지정이 완료되면, 사용자는 도구를 학습하고 도구가 제공한 마킹을 검토할 준비가 된 것입니다. Alt + 왼쪽 화살표 및 Alt + 오른쪽 화살표 키를 사용하거나 이미지의 우클릭 메뉴에서 전환 할 수 있습니다.

 

오버레이 체크박스에서 "라벨"을 활성화하면 라벨 오버레이를 나타낼 수 있습니다.

 

Blue 위치 라벨링

Blue 위치 도구는 이미지 안의 feature를 찾고 식별합니다. Blue 위치 도구에서 라벨을 지정 과정에는 이미지 내의 feature 위치 및 이름 식별이 포함됩니다. 트레이닝 이미지 내 feature의 중심을 식별하고, feature 위에 feature 라벨 그래픽을 놓음으로써 feature에 라벨을 지정합니다. 방향 및/또는 스케일 변화이 활성화되어 있다면, 방향 또는 크기도 지정할 수 있습니다. feature 이름은 140자까지 지정 가능합니다.

Note: 이 그림은 사각형 feature 그래픽을 보여줍니다. 원형 feature 그래픽을 이용할 수도 있습니다. 이는 '도구 > 디스플레이' 메뉴에서 원하는 feature 그래픽 구조를 선택함으로써 변경할 수 있습니다. 자세한 내용은 원형 또는 사각형 Feature 라벨 항목을 참조하십시오.
그래픽 설명

1

Feature 그래픽의 방향을 나타냅니다. Feature 그래픽의 방향을 변경하려면, 방향 체크박스가 활성화되어야 합니다.

디스플레이가 원형 feature 그래픽으로 전환되면, 방향은 원형 그래픽의 중앙에 표시됩니다.

2

Feature의 경계

3

Feature의 중심.

4

색상과 함께 feature 그래픽의 상태를 나타냅니다.

5

Feature 그래픽의 이름(140자).

 

이미지의 feature에 라벨을 지정하고, 도구를 학습하고 나면, 도구가 feature와 일치한다고 생각되는 이미지의 영역에 마킹을 적용합니다. 라벨과 마킹은 모양이 다릅니다.

Note: 라벨 그래픽은 표시를 위한 것이며, 네트워크 모델의 트레이닝에는 영향이 없습니다.

 

Blue 위치 도구에서 feature를 라벨링할 때 중요한 세 가지 사항은 정확하게 배치하기, 라벨 그래픽 크기 조정하기, 그리고 feature에 의미있는 명칭 부여하기입니다.

 

라벨 배치

Blue 위치 도구에서는 식별하고자 하는 feature에 마우스를 클릭하여 라벨링 하는데, 이렇게 하면 이미지의 feature 위에 feature 라벨 그래픽이 오버레이로 배치됩니다. 정보가 많은 feature를 뜻하는 interesting(관심 대상) feature에 feature 라벨 그래픽이 배치될 때, Deep Learning의 성과가 가장 좋습니다. 예컨대, 하나의 모서리에 있는 무작위 점이 아니라, 여러 개의 모서리가 교차하는 지점에 feature 라벨 그래픽을 배치하는 경우입니다.

 

라벨 크기 조정

라벨 크기는 feature 크기 매개변수와 스케일 변화 매개변수의 활성화 여부에 따라 결정됩니다. 자세한 내용은 라벨 크기 조정: Feature 크기(샘플링 매개변수)와 스케일 변화(Feature 매개변수) 항목을 확인하십시오.

 

라벨 이름 설정

Feature를 클릭하면 feature 라벨 그래픽이 표시되며, 사용자가 feature의 이름을 지정해야 합니다. 이름은 유니코드로 140자까지 쓸 수 있습니다.

 

Feature 라벨 그래픽에 이름을 지정하는 방법은 두 가지가 있습니다.

  1. Feature를 클릭한 후 편집 커서가 나타나면, 140자까지의 이름을 키보드로 입력하거나 붙여넣기 할 수 있습니다.
  2. 데이터베이스 개요에서 feature 이름에 해당하는 텍스트를 선택한 후, 연필 아이콘을 눌러 이름을 키보드로 입력하거나 붙여넣기 할 수 있습니다.

이름을 추가한 후 <Enter> 키를 누르십시오.

 

여러 Feature에 라벨 지정

Deep Learning 소프트웨어는 라벨 지정 속도를 높일 수 있도록, 마지막 생성된 라벨을 기억합니다. 이를 통해, 라벨을 지정하는 feature들에 따라 몇 가지 옵션을 이용할 수 있습니다.

  • 이미지 내에 라벨을 지정할 feature의 수가 최소한이라면, 첫 번째 이미지에 라벨을 배치하고 해당 라벨을 다른 이미지 모두에 배치한 후, 새로운 feature 라벨 그래픽을 생성하십시오. 이미지에서 라벨을 지정해야 할 모든 feature에 대해 이 절차를 반복하십시오.
  • 이미지 내에 라벨을 지정할 feature가 작지만, 많이 있다면, 하나의 feature에 라벨을 지정하고 해당 feature의 모든 인스턴스에 라벨을 지정한 후, feature마다 이 절차를 반복하십시오.

 

"Copy + Paste"로 여러 Feature에 라벨 지정

하나의 이미지에서 feature에 라벨을 지정하면, SHIFT 키를 누른 채 마우스를 끌어 다수의 feature를 선택하거나 SHIFT 키를 누른 채 원하는 feature를 클릭해 선택할 수 있습니다. Feature들을 선택했으면, 복사/붙여넣기 단축키(CTRL + C, CTRL + V)를 이용하거나, 마우스 우클릭 메뉴를 이용해 복사할 수 있습니다.

Note: 새 이미지에 라벨을 복사하면, 모든 라벨이 하나의 그룹으로 움직입니다. 개별 라벨을 선택하여 이동하려면, 먼저 이미지 바깥의 아무 영역이나 클릭한 후, 원하는 feature를 클릭하고 이동하면 됩니다.

 

원형 또는 사각형 Feature 라벨

Blue 위치에서 Feature 라벨 그래픽은 사각형이나 원형으로 표시할 수 있습니다. 어플리케이션에 정사각형 또는 직사각형 feature가 포함되어 있다면, 사각형 feature 그래픽을 이용해야 합니다. 어플리케이션에 원형 또는 타원형 feature가 포함되어 있다면, 원형 feature 그래픽을 이용해야 합니다.

Tip: Feature가 밀집한 경우(예: 개수를 세는 응용 프로그램)의 경우에도 원형 feature 그래픽이 유용합니다.

 

Feature 라벨 그래픽의 형태를 변경할 때는 도구 메뉴에서 디스플레이 하위 메뉴를 이용하십시오.

Note: 라벨 그래픽은 표시를 위한 것이며, 네트워크 모델의 트레이닝에는 영향이 없습니다.
Note: Feature 그래픽은 한 가지만 이용할 수 있습니다. 사각형 feature 그래픽을 선택하면, 사각형만 이용할 수 있습니다.

 

Rectangular Feature Graphic(사각형 feature 그래픽)

 

Circular Feature Graphic(원형 feature 그래픽)

 

Feature 라벨 그래픽

아래에서는 feature 라벨 그래픽의 개요와 Blue 위치 도구에서 이용하는 라벨 상태를 살펴봅니다.

라벨 지정된 Feature

  선택되지 않음 선택됨

라벨 feature 그래픽

 

 

라벨 크기 조정: Feature 크기(샘플링 매개변수)와 스케일 변화(Feature 매개변수)

Blue 위치 도구 Feature 크기 설정은 Features 도구 매개변수 설정에 따라 다릅니다.

  • 응용 프로그램이 하나의 feature를 대상으로 하거나, 크기와 종횡비가 같은 다수의 feature를 대상으로 하는 경우, 조절점 혹은 feature 크기 필드를 이용해 feature의 크기와 종횡비를 독립적으로 구성하여 이미지 내의 feature 크기와 일치시킬 수 있습니다. 모든 feature 라벨은 사용자가 지정한 feature 크기의 크기 및 형태와 정확히 일치할 것입니다.

    이 도구의 feature 크기 표시상자는 이미지의 좌측 하단 모서리에 표시됩니다(아래 참조).

    이 표시기 조절점은 이미지 내에서 끌 수 있어, 이미지 내의 feature에 기초해 크기를 정할 수 있습니다. 나아가, 이 표시상자는 크기 변경 핸들(표시기 위로 마우스를 가져가면)을 끌어 크기를 변경할 수 있습니다. 표시상자 크기를 변경하면, feature 크기 매개변수도 변경됩니다.

  • 크기나 종횡비가 다른 feature들을 대상으로 하는 응용 프로그램의 경우, 스케일 변화 매개변수를 활성화하는 것이 좋습니다.

    • 개별 feature 라벨의 크기는 다르게 설정할 수 있지만, 종횡비가 모두 같은 경우, 스케일 변화 매개변수를 균일로 설정하십시오.
    • Feature마다 종횡비가 다르다면 스케일 변화 매개변수를 비균일로 지정하십시오.
Note: 균일 또는 비균일 크기가 조정이 활성화되면, 도구의 feature 크기 및 종횡비는 도구의 작동에 영향이 없습니다. 대신, 이 도구는 사용자가 라벨을 지정한 feature 크기 및 종횡비를 이용해 트레이닝 및 런타임 샘플링을 모두 수행합니다. 하지만, 여전히 사용자가 feature 크기를 구성할 수 있습니다.
Note: 더 자세한 내용은 Feature 매개변수와 샘플링 매개변수 설정 항목을 확인하십시오.

 

빠른 라벨링: 부트스트랩 라벨링

부트스트랩 이미지 라벨링은 각 도구 라벨링을 더 빠르게 수행하는 방법입니다. "부트스트랩" 라벨 지정은 이미지 중 소수의 샘플에 라벨을 지정하고 도구를 학습한 후, 결과를 검토하면서, 정확하게 마킹된 뷰는 라벨로 전환하도록 수락하고, 정확하지 않은 마킹은 삭제하고 정확한 라벨로 교체하는 방식입니다. 이미지를 다수의 뷰로 나누고 하나의 뷰에만 라벨을 지정함으로써 이 과정의 속도를 더욱 빠르게 할 수도 있습니다. 또한, 일시적으로 학습 매개변수에 있는 Epoch 횟수 매개변수를 줄이면 학습 속도가 더욱 빨라집니다.

 

  1. 학습 세트 내의 몇 개 이미지에 라벨을 지정합니다.
  2. 해당 도구를 학습합니다.
  3. 이미지와 결과를 검토합니다.
  4. 도구의 마킹이 정확한 위치에서 보기를 수락합니다(마우스 우클릭 후 보기 수락 선택 또는 CTRL + SHIFT + A). 이렇게 하면 마킹이 라벨로 변경됩니다. 지도 모드의 Red 분석 도구에서는 결함 영역을 편집해야 하는 경우도 있습니다. 정확하지 않은 마킹은 이미지에서 삭제하십시오(마우스 우클릭 후 마킹 삭제 선택 또는 CTRL + C).