머신 러닝을 위한 데이터 라벨링에 대한 확실한 가이드

게시 됨: 2019-11-18
목차
누가 데이터 라벨링을 수행해야 합니까?
저품질 데이터의 수많은 문제
데이터 레이블 지정 시 피해야 할 몇 가지 일반적이고 중요한 실수
공백, 구두점 및 대소문자 구분
중첩 태그
목록에 새 레이블 추가, 중간에
마스터 목록에 긴 레이블 목록이 있는 경우
데이터 라벨링 시작

대부분의 기계 학습 프로젝트에 대한 데이터는 데이터 스크래핑, 설문조사 양식 작성 등과 같은 여러 소스를 통해 수집됩니다. 일반적으로 이 데이터의 높은 비율은 레이블이 지정되지 않거나 잘못 지정되어 있습니다. 레이블이 지정되지 않은 데이터는 특성, 분류 또는 속성을 지정하는 레이블로 태그가 지정되지 않은 데이터를 말합니다. 그러나 ML 프로젝트를 진행하기 전에 이 모든 데이터에 올바르게 레이블을 지정해야 합니다. 그리고 이 작업은 시간이 많이 걸립니다. 분석 회사인 Cognilytica의 보고서에 따르면 기계 학습 프로젝트에 할당된 시간의 최대 25%가 데이터 레이블 지정에 소요됩니다. <a href=에 대한 기계 학습에 할당된 시간 데이터 라벨링” 너비=”1200″ 높이=”742″ />

누가 데이터 라벨링을 수행해야 합니까?

팀의 데이터 과학자가 원시 데이터에 레이블을 지정하도록 하는 것은 좋은 생각이 아닐 수 있습니다. 첫째, 그들은 해야 할 일이 많고 알고리즘 작업과 문제 해결 방안을 찾는 데 시간을 보내는 것이 가장 좋습니다. 대신 1. 데이터 레이블링 팀 구성 2. 품질 및 보증 팀의 두 부분으로 구성된 별도의 팀이 있어야 합니다.

첫 번째는 자명하지만 두 번째는 레이블이 제대로 지정되지 않은 데이터가 전체 연구 프로젝트를 망치거나 결과를 왜곡하는 것을 원하지 않기 때문에 훨씬 더 중요합니다. 레이블이 지정된 데이터를 계속 확인하려면 두 가지 요소를 고려해야 합니다.

  1. 정확도 - 레이블링이 실제 기준에 얼마나 가까운지를 측정합니다. 즉, 모든 말은 말로 표시되고 모든 고양이는 고양이로 표시됩니다.
  2. 품질 - 대규모 데이터 라벨링 팀과 함께 작업할 때 이것은 매우 중요합니다. 여러 사람이 동일한 데이터 세트의 일부를 분류할 때 모두가 동일한 기준을 사용해야 합니다. 2 BHK 플랫을 소형으로, 3 BHK를 중형, 4+ BHK를 대형 레이블로 지정하면 모두 동일하게 따라야 합니다.

저품질 데이터의 수많은 문제

첫째, 모델을 훈련할 때 잘못된 모델을 얻게 됩니다. 다시 모델을 검증할 때 부정확한 데이터의 분노에 직면하게 될 것입니다. 데이터에 레이블을 지정하는 사람은 도메인 지식과 컨텍스트 지식이 모두 있어야 합니다. 이렇게 하면 기계 학습 프로젝트를 위한 고품질의 구조화된 데이터 세트를 만드는 데 도움이 됩니다. 특정 시나리오에서는 두 개 이상의 단어가 같은 것을 의미할 수 있습니다. 레이블을 지정하는 사람들에게 컨텍스트가 없으면 다른 태그로 항목에 레이블을 지정할 수 있습니다. 최고 품질의 데이터 라벨링을 위해 사람들은 도메인 지식은 물론 데이터가 제공되는 산업에 대한 기본적인 이해를 갖고 있어야 합니다.

기계 학습은 우리 모두가 알고 있듯이 반복적인 프로세스입니다. 데이터 레이블 지정은 모델을 테스트하고 결과에서 학습하면서 변경되거나 발전할 수 있습니다. 따라서 향후 반복을 위해 새 레이블을 준비하거나 기존 레이블을 개선해야 할 수 있습니다. 따라서 데이터 레이블 지정 팀은 ML 알고리즘의 변경 사항에 대해 레이블을 향상시킬 수 있는 유연성을 가져야 합니다.

레이블이 지정되는 데이터가 많을 때 계속 주시하고 유지해야 하는 특정 항목이 있습니다.

  1. Gold standard – 모든 라벨링 질문에는 정답이 있습니다. 올바른 레이블과 잘못된 레이블을 측정하여 데이터가 얼마나 좋은지 확인할 수 있습니다.
  2. 샘플 검토 – 레이블이 지정된 데이터의 작은 샘플을 수집하고 정확성을 확인할 수 있습니다. 정확도 백분율은 전체 데이터 세트 자체에 분산될 것으로 예상됩니다.
  3. 합의 – 논쟁이 가능한 특정 데이터에 레이블을 지정하는 동안 논쟁이 있을 때 가장 인기 있는 의견이 무엇이든 공통된 합의로 받아들여야 합니다.

데이터 레이블 지정 시 피해야 할 몇 가지 일반적이고 중요한 실수

머신 러닝 프로젝트를 위한 데이터 라벨링에 대해 탐구할 때, 허공에 성을 짓는 것은 매우 쉽습니다. 당신은 당신의 라벨링 사업을 할 때 발을 땅에 고정하고 현실적으로 생각하고 제한적이고 고정된 라벨 세트를 가지고 특정 규칙을 따라야 합니다.

공백, 구두점 및 대소문자 구분

데이터에 레이블을 지정할 때 공백 및 기타 구두점을 주의해서 처리해야 합니다. 한 사람이 이미지에 "아프리카 코끼리"라는 태그를 지정했다고 가정해 보겠습니다. 다른 누군가는 "아프리카 코끼리"라고 태그를 지정했지만 다른 누군가는 "아프리카 코끼리"라고 태그를 지정했습니다. 이제 우리가 어디로 가고 있는지 알 수 있습니다. 따라서 사용할 태그와 해당 형식을 미리 완료하고 추가되는 새 태그를 모두에게 전달해야 합니다. 동시에 단일 공백은 둘 이상의 공백이 되어서는 안 되며 이는 간단한 Python 스크립트로 처리할 수 있습니다.

중첩 태그

발생할 수 있는 또 다른 문제는 중첩 태그 시나리오입니다. "영국 왕, 에드워드 3세 ..."라는 문장이 있다고 가정해 보겠습니다. 이제 로 태그를 지정할 수 있습니다. {1: "왕", 2: "영국", 3: "에드워드 3세"}

다음과 같이 태그가 지정될 수도 있지만-

비. {1: "영국", 2: "왕", 3: "에드워드 3세"}

첫 번째 것은 문장에 나타난 순서대로 태그를 사용했기 때문에 정확합니다. 그러나 같은 단어가 다른 순서로 나타날 수 있습니다. 즉, 같은 것을 의미하고 완전히 다른 태그 순서로 끝날 수 있습니다. 이것이 모든 시나리오에서 두 번째 형식을 사용하는 것이 더 나은 이유입니다. 이러한 종류의 결정은 주제와 주제에 대한 이해가 필요합니다. 데이터 세트에 레이블을 지정하는 다른 사람들은 중첩 레이블을 사용할 때 동일한 형식을 사용해야 합니다.

목록에 새 레이블 추가, 중간에

레이블 지정 작업의 중간에 마스터 목록에 없는 새 레이블이 필요하다는 것을 알게 될 수 있습니다. 계속해서 마스터 목록에 추가하고 필요할 때 뿐만 아니라 이 레이블을 사용하도록 모든 사람에게 알릴 수 있습니다. 이것은 매우 권장하지 않습니다. 간단한 이유는 레이블이 이미 처리된 데이터에 포함되어 있는지 확인하기 위해 사용자와 다른 사용자가 이미 레이블을 지정한 데이터도 다시 확인해야 하기 때문입니다. 데이터 세트의 레이블 지정을 시작하기 전에 레이블 목록을 준비하는 것이 항상 가장 좋습니다.

마스터 목록에 긴 레이블 목록이 있는 경우

프로젝트 비용을 늘리고 데이터 품질을 낮추는 좋은 방법은 레이블 목록을 길게 만드는 것입니다. 데이터를 파충류와 포유류로 분류한다고 가정해 보겠습니다. 간단하고 빨라야 합니다. 이제 100개의 파충류와 포유류의 이름이 있고 레이블을 지정하는 데 사용한다고 가정해 보겠습니다. 표기에 오류가 있을 수 있습니다. 또한 느리고 오류가 발생한 후에만 문제가 복잡해집니다. 태그 목록을 작게 유지하고 별도의 데이터 세트에 대해 별도의 연구를 수행하는 것이 항상 권장됩니다.

데이터 라벨링 시작

인공 지능과 관련된 문제를 다룰 때 놀라운 데이터 과학자와 기계 학습 엔지니어가 있는 것만으로는 충분하지 않습니다. 지능적인 데이터 정리 시스템과 궁극적으로 ML 모델의 음식이 될 데이터에 레이블을 지정하는 경험 많은 손을 갖는 것만큼 효율적인 데이터 수집 팀을 갖는 것이 중요합니다.