머신러닝을 위한 효율적 데이터 레이블링 [인간 중심 AI를 위한 능동학습과 어노테이션]
- 원서명Human-in-the-Loop Machine Learning: Active learning and annotation for human-centered AI (ISBN 9781617296741)
- 지은이로버트 (먼로) 모나크(Robert (Munro) Monarch)
- 옮긴이김택구, 제갈호준
- ISBN : 9791161758084
- 40,000원
- 2023년 12월 28일 펴냄
- 페이퍼백 | 564쪽 | 188*235mm
- 시리즈 : 데이터 과학
책 소개
소스 코드 파일은 여기에서 내려 받으실 수 있습니다.
https://github.com/AcornPublishing/HITL-ML
요약
알고리듬 중심의 머신러닝 시대에서 데이터 중심의 머신러닝 시대로의 전환을 알리는 책이다. 머신러닝 알고리듬에 대한 상세한 설명보다는 데이터 관점에서 머신러닝 모델의 성능을 향상시키기 위해 취해야 하는 어노테이션 전략과 방법론을 광범위하게 다룬다. 다양한 샘플링 기법과 프로세스를 알고리듬 유형에 따라 소개하며, 효율적인 데이터 레이블링을 위한 사용자 인터페이스 및 조직의 관점을 저자의 경험에 비추어 제시한다. 적절한 데이터를 확보해 머신러닝 문제를 풀고자 하는 개인이나 기업에게 더없이 좋은 길잡이가 될 것이다.
추천의 글
“능동학습을 이론과 실무 관점에서 배울 수 있는 최고의 참고서다.”
“개발 주기에서 능동학습을 통합하고자 하는 모든 실무자가 반드시 봐야 한다. 완성도가 높은 책으로, 적절한 범위를 다루고 있으며 실무적인 예제로 가득 차 있다.”
“매우 적절하고 현실적인 예제로 가득하다. 동료들에게 이 책을 추천한다.”
“진정한 전문가이자 실무자가 쓴 머신러닝 지도학습에 대한 최고의 참고서다.”
이 책에서 다루는 내용
◆ 적절한 학습 데이터와 평가 데이터 식별
◆ 적절한 데이터 어노테이터 탐색과 관리
◆ 어노테이션 품질 관리 전략 선정
◆ 정확도와 효율성을 개선하기 위한 인터페이스 설계
이 책의 대상 독자
데이터 과학자, 소프트웨어 개발자와 머신러닝을 이제 막 시작한 (또는 최근 데이터 분야에서 자신의 커리어를 시작한) 학생을 위한 책이다. 지도학습과 비지도학습 머신러닝, 머신러닝 모델의 학습과 검증, PyTorch, TensorFlow 같은 라이브러리에 어느 정도 익숙한 사람이면 더 좋겠지만, 이 분야의 전문가일 필요는 없다.
여러분이 더 많은 경험을 하게 됐을 때 이 책이 여러 기법에 관한 유용한 참고서가 되길 희망한다. 또한 어노테이션, 능동학습과 어노테이션을 위한 인터페이스 설계와 같은 가장 보편적인 전략을 담은 첫 번째 책이기도 하다.
이 책의 구성
크게 4부로 나눠져 있다. 도입부, 능동학습에 관한 심층 분석, 어노테이션에 관한 심층 분석 그리고 최종 부분이다. 최종 부분에서는 인터페이스 설계 전략과 3개의 구현 예제도 포함해 이 책의 전반적인 내용을 종합했다.
1부에서는 어노테이션, 능동학습 그리고 사람과 기계가 지능을 가장 효과적으로 결합할 수 있도록 도움을 주는 인간-컴퓨터 상호작용과 같은 개념을 포함해 학습 데이터와 평가 데이터 생성을 위한 구성 요소를 소개한다. 2장의 마지막에는 뉴스 헤드라인을 레이블링하는 인간 참여 머신러닝 애플리케이션을 구축해 새로운 데이터의 어노테이션부터 모델을 재학습하는 주기를 완료한 후, 어떤 데이터가 다음에 어노테이션돼야 하는지 결정하는 데 도움을 주는 모델을 이용할 수 있게 될 것이다.
2부에서는 능동학습, 즉 사람이 검토해야 하는 가장 중요한 데이터를 샘플링하는 기법을 다룬다. 3장에서는 모델의 불확실성을 이해하기 위해 가장 널리 사용되는 기법을 다루며, 4장에서는 과소 샘플링됐거나 대표성이 부족한 데이터로 인해 신뢰도와 무관하게 모델의 잘못된 지점을 식별하는 다소 복잡한 문제를 다룬다. 5장에서는 다양한 전략을 종합적 능동학습 시스템으로 결합하는 방법을 소개하고, 6장에서는 능동학습 기법을 다양한 유형의 머신러닝 과제에 적용하는 법을 안내한다.
3부에서는 학습 및 평가 데이터에 대한 정확하고 대표성 있는 레이블을 얻는 중요한 주제임에도 때때로 과소평가받고 있는 어노테이션에 대해 다룬다. 7장에서는 데이터에 어노테이션을 달 수 있는 적합한 사람을 찾고 관리하는 방법을 다룬다. 8장에서는 어노테이션에 대한 품질 관리의 기본 사항을 다루고, 정확도와 일치도를 계산하는 가장 일반적인 방법을 소개한다. 9장에서는 주관적인 작업에 대한 어노테이션과 규칙 기반 시스템, 검색 기반 시스템, 전이학습, 준지도학습, 자가 지도학습을 비롯해 합성 데이터 생성을 포함한 광범위한 방법을 포함한 어노테이션 품질 관리에 관한 고급 기법을 다룬다. 10장에서는 다양한 종류의 머신러닝 작업에 대해 어노테이션을 관리하는 방법을 배운다.
4부의 11장에서는 효과적인 어노테이션을 위한 인터페이스를 심층 분석하고, 12장에서 인간 참여 머신러닝 애플리케이션의 3개의 예제를 소개한다.
이 책 전반에 걸쳐 이미지와 문서 수준의 레이블링, 연속 데이터, 객체 검출, 의미 분할, 시퀀스 레이블링, 언어 생성, 정보 검색과 같은 다양한 종류의 머신러닝 작업 예제와 함께한다. 내부 표지는 책 전체에서 각 작업의 위치를 찾을 수 있는 빠른 참조를 포함하고 있다.
목차
목차
- 1부. 첫걸음
- 1장. 인간 참여 머신러닝 소개
- 1.1 인간 참여 머신러닝의 기본 원리
- 1.2 어노테이션에 대한 소개
- 1.2.1 간단한 어노테이션과 복잡한 어노테이션 전략
- 1.2.2 데이터 과학 지식의 간극 메우기
- 1.2.3 왜 수작업 어노테이션의 품질 확보가 어려울까?
- 1.3 학습 데이터 생성을 위해 속도는 향상시키고 비용은 줄이는 능동학습 소개
- 1.3.1 세 가지 일반적인 능동학습 샘플링 전략: 불확실성, 다양성, 임의성
- 1.3.2 평가 데이터의 랜덤 선택은 무얼 말하는 것일까?
- 1.3.3 언제 능동학습을 사용해야 할까
- 1.4 머신러닝과 인간 - 컴퓨터 상호작용
- 1.4.1 사용자 인터페이스: 어떻게 학습 데이터를 생성할까?
- 1.4.2 프라이밍: 무엇이 사람의 인지에 영향을 줄까?
- 1.4.3 머신러닝 예측값을 평가하면서 레이블을 생성하는 방법의 장단점
- 1.4.4 어노테이션을 위한 인터페이스 설계의 기본 원리
- 1.5 머신러닝의 보조를 받는 사람 vs 사람의 보조를 받는 머신러닝
- 1.6 전이학습으로 모델 시작하기
- 1.6.1 컴퓨터 비전 분야의 전이학습
- 1.6.2 자연어 처리 분야에서의 전이학습
- 1.7 이 책에서 배울 수 있는 것들
- 요약
- 2장. 인간 참여 머신러닝 시작하기
- 2.1 임시적인 방법(핵티브 학습)을 넘어서: 여러분의 첫 번째 능동학습 알고리듬
- 2.2 첫 번째 시스템의 아키텍처
- 2.3 능동학습을 위한 모델 예측값과 데이터 해석
- 2.3.1 신뢰도 순위
- 2.3.2 아웃라이어 찾아내기
- 2.3.3 이터레이션을 통해 기대하는 것들
- 2.4 수작업 레이블링을 위한 사용자 인터페이스 만들기
- 2.4.1 텍스트 레이블링을 위한 간단한 인터페이스
- 2.4.2 머신러닝 데이터 관리하기
- 2.5 첫 번째 인간 참여 머신러닝 시스템 배포하기
- 2.5.1 항상 평가 데이터를 먼저 선택하라
- 2.5.2 모든 데이터 포인트가 기회를 가진다
- 2.5.3 데이터에 따라 알맞은 전략 선택하기
- 2.5.4 모델을 재학습시키고 반복하기
- 요약
- 2부. 능동학습
- 3장. 불확실성 샘플링
- 3.1 머신러닝 모델의 불확실성에 대한 해석
- 3.1.1 왜 모델의 불확실성을 봐야 할까?
- 3.1.2 소프트맥스와 확률분포
- 3.1.3 능동학습의 성공 해석
- 3.2 불확실성 샘플링 알고리듬
- 3.2.1 최소 신뢰도 샘플링
- 3.2.2 신뢰도 마진 샘플링
- 3.2.3 비율 샘플링
- 3.2.4 엔트로피(분류 엔트로피)
- 3.2.5 엔트로피 심층 분석
- 3.3 여러 종류의 모델이 혼동되는 경우의 식별
- 3.3.1 로지스틱 회귀 및 MaxEnt 모델을 사용한 불확실성 샘플링
- 3.3.2 SVM을 사용한 불확실성 샘플링
- 3.3.3 베이지안 모델을 사용한 불확실성 샘플링
- 3.3.4 의사 결정 트리와 랜덤 포레스트를 사용한 불확실성 샘플링
- 3.4 여러 예측에 대한 불확실성 측정
- 3.4.1 앙상블 모델을 사용한 불확실성 샘플링
- 3.4.2 위원회 질의와 드롭아웃
- 3.4.3 우발적 불확실성과 인식적 불확실성의 차이
- 3.4.4 다중 레이블 및 연속 값 분류
- 3.5 수작업 검토를 위한 적절한 항목 수 선택
- 3.5.1 제한된 예산에서의 불확실성 샘플링
- 3.5.2 제한된 시간에서의 불확실성 샘플링
- 3.5.3 시간이나 예산이 제한되지 않은 경우 언제 중지할까?
- 3.6 능동학습의 성공 여부 평가
- 3.6.1 새로운 테스트 데이터가 필요할까?
- 3.6.2 새로운 검증 데이터가 필요할까?
- 3.7 불확실성 샘플링 치트시트
- 3.8 더 읽을 거리
- 3.8.1 최소 신뢰도 샘플링에 대한 더 읽을 거리
- 3.8.2 신뢰도 마진 샘플링에 대한 더 읽을 거리
- 3.8.3 신뢰도 비율 샘플링에 대한 더 읽을 거리
- 3.8.4 엔트로피 기반 샘플링을 위한 더 읽을 거리
- 3.8.5 다른 머신러닝 모델에 대한 더 읽을 거리
- 3.8.6 앙상블 기반의 불확실성 샘플링을 위한 더 읽을 거리
- 요약
- 4장. 다양성 샘플링
- 4.1 무엇을 모르는지 알아내기: 모델의 지식 속 틈을 찾아내기
- 4.1.1 다양성 샘플링을 위한 예제 데이터
- 4.1.2 다양성 샘플링을 위해 신경망 모델 해석하기
- 4.1.3 PyTorch의 은닉층에서 정보 추출하기
- 4.2 모델 기반의 아웃라이어 샘플링
- 4.2.1 활성화 값을 순위화하기 위해 검증 데이터 사용하기
- 4.2.2 모델 기반의 아웃라이어를 계산하려면 어느 층을 사용해야 할까?
- 4.2.3 모델 기반 아웃라이어의 한계
- 4.3 클러스터 기반의 샘플링
- 4.3.1 클러스터의 구성원, 중심체, 아웃라이어
- 4.3.2 우주 속의 클러스터링 알고리듬
- 4.3.3 코사인 유사도로 k-평균 클러스터링하기
- 4.3.4 임베딩 또는 PCA로 특성 차원 줄이기
- 4.3.5 그밖의 클러스터링 알고리듬
- 4.4 대표 샘플링
- 4.4.1 대표 샘플링은 단독으로는 거의 사용되지 않는다
- 4.4.2 단순 대표 샘플링
- 4.4.3 적응형 대표 샘플링
- 4.5 실세계 다양성을 위한 샘플링
- 4.5.1 학습 데이터 다양성의 공통적인 문제
- 4.5.2 인구통계학적 다양성 확보를 위한 계층화 샘플링
- 4.5.3 표현된 것과 대표된 것 중 어느 것이 중요한가?
- 4.5.4 인구통계당 정확도
- 4.5.5 실세계 다양성을 위한 샘플링의 제약들
- 4.6 다양한 유형의 모델로 다양성 샘플링하기
- 4.6.1 다양한 유형의 모델로 모델 기반의 아웃라이어 찾기
- 4.6.2 다양한 유형의 모델로 클러스터링하기
- 4.6.3 다른 종류의 모델로 대표 샘플링하기
- 4.6.4 다른 종류의 모델로 실세계 다양성 샘플링하기
- 4.7 다양성 샘플링에 대한 치트시트
- 4.8 더 읽을 거리
- 4.8.1 모델 기반 아웃라이어에 대한 더 읽을 거리
- 4.8.2 클러스터 기반 샘플링에 대한 더 읽을 거리
- 4.8.3 대표 샘플링에 대한 더 읽을 거리
- 4.8.4 실세계 다양성 샘플링에 대한 더 읽을 거리
- 요약
- 5장. 고급 능동학습
- 5.1 불확실성 샘플링과 다양성 샘플링 기술의 결합
- 5.1.1 클러스터 기반 샘플링을 적용한 최소 신뢰도 샘플링
- 5.1.2 모델 기반 아웃라이어를 이용한 불확실성 샘플링
- 5.1.3 모델 기반 아웃라이어와 클러스터링을 사용한 불확실성 샘플링
- 5.1.4 대표 샘플링과 클러스터 기반 샘플링
- 5.1.5 최상위 엔트로피 클러스터로부터의 샘플링
- 5.1.6 능동학습 전략의 다른 조합들
- 5.1.7 능동학습 점수의 결합
- 5.1.8 예상 오류 감소 샘플링
- 5.2 불확실성 샘플링을 위한 능동 전이학습
- 5.2.1 모델 자체의 오류를 예측하는 모델 만들기
- 5.2.2 능동 전이학습의 구현
- 5.2.3 더 많은 층의 능동 전이학습
- 5.2.4 능동 전이학습의 장단점
- 5.3 대표 샘플링에 능동 전이학습 적용하기
- 5.3.1 알지 못하는 것이 무엇인지 예측하도록 모델 만들기
- 5.3.2 적응형 대표 샘플링을 위한 능동 전이학습
- 5.3.3 대표 샘플링을 위한 능동 전이학습의 장단점
- 5.4 적응형 샘플링을 위한 능동 전이학습
- 5.4.1 불확실성 예측을 통해 불확실성 샘플링을 적응형으로 만들기
- 5.4.2 ATLAS의 장단점
- 5.5 능동학습용 고급 치트시트
- 5.6 능동 전이학습을 위한 더 읽을 거리
- 요약
- 6장. 여러 머신러닝 작업에 능동학습 적용하기
- 6.1 객체 검출에 능동학습 적용하기
- 6.1.1 객체 검출에 대한 정확도: 레이블 신뢰도와 위치 지정
- 6.1.2 객체 검출에서 레이블 신뢰도와 위치 지정을 위한 불확실성 샘플링하기
- 6.1.3 객체 검출에서 레이블 신뢰도와 위치 지정을 위한 다양성 샘플링하기
- 6.1.4 객체 검출을 위한 능동 전이학습
- 6.1.5 지속적인 편향을 위해 낮은 객체 검출 임계치 설정하기
- 6.1.6 예측값과 유사한 대표 추출 샘플링을 위한 학습 데이터 샘플 생성하기
- 6.1.7 객체 검출에서 다양성을 위한 이미지 수준의 샘플링하기
- 6.1.8 다각형을 사용해 더 타이트한 마스킹 고려하기
- 6.2 의미 분할에 능동학습 적용하기
- 6.2.1 의미 분할의 정확도
- 6.2.2 의미 분할을 위한 불확실성 샘플링
- 6.2.3 의미 분할을 위한 다양성 샘플링
- 6.2.4 의미 분할을 위한 능동 전이학습
- 6.2.5 의미 분할에서 이미지 수준의 다양성 샘플링
- 6.3 시퀀스 레이블링에 능동학습 적용하기
- 6.3.1 시퀀스 레이블링에 대한 정확도
- 6.3.2 시퀀스 레이블링을 위한 불확실성 샘플링
- 6.3.3 시퀀스 레이블링을 위한 다양성 샘플링
- 6.3.4 시퀀스 레이블링을 위한 능동 전이학습
- 6.3.5 신뢰도와 토큰에 의한 계층화 샘플링
- 6.3.6 예측과 유사한 대표 샘플링을 위해 학습 데이터 샘플 생성하기
- 6.3.7 완전 시퀀스 레이블링
- 6.3.8 시퀀스 레이블링에서 문서 수준의 다양성을 위한 샘플링
- 6.4 자연어 생성에 능동학습 적용하기
- 6.4.1 자연어 생성 시스템에 대한 정확도 계산하기
- 6.4.2 자연어 생성에 대한 불확실성 샘플링하기
- 6.4.3 언어 생성을 위한 다양성 샘플링하기
- 6.4.4 언어 생성을 위한 능동 전이학습
- 6.5 다른 유형의 머신러닝 작업에 능동학습 적용하기
- 6.5.1 정보 검색을 위한 능동학습
- 6.5.2 동영상을 위한 능동학습
- 6.5.3 음성을 위한 능동학습
- 6.6 수작업 리뷰를 위한 적절한 항목 수 고르기
- 6.6.1 완전히 또는 부분적으로 레이블링된 데이터에 대해 능동 레이블링하기
- 6.6.2 어노테이션과 머신러닝을 결합하기
- 6.7 더 읽을 거리
- 요약
- 3부. 어노테이션
- 7장. 데이터 어노테이터와 일하기
- 7.1 어노테이션에 대한 소개
- 7.1.1 좋은 데이터 어노테이션의 세 가지 원리
- 7.1.2 데이터 어노테이션과 모델 예측 검토
- 7.1.3 머신러닝의 보조를 받은 사람의 어노테이션
- 7.2 사내 전문가
- 7.2.1 내부 인력의 급여
- 7.2.2 사내 인력의 고용 안정성
- 7.2.3 사내 인력의 주인 의식
- 7.2.4 팁: 사내 어노테이션 세션을 항상 진행하기
- 7.3 외주 인력
- 7.3.1 외주 인력을 위한 급여
- 7.3.2 외주 인력의 고용 안정
- 7.3.3 외주 인력의 주인 의식
- 7.3.4 외주 직원과 소통하는 팁
- 7.4 크라우드소싱 작업자
- 7.4.1 크라우드소싱 인력의 급여
- 7.4.2 크라우드소싱 작업자의 고용 안정성
- 7.4.3 크라우드소싱 작업자의 주인 의식
- 7.4.4 팁: 고용 안정과 경력 발전을 위한 경로 조성
- 7.5 다른 유형의 인력
- 7.5.1 최종 사용자
- 7.5.2 자원봉사자
- 7.5.3 게이머
- 7.5.4 모델의 예측값을 어노테이션으로 활용
- 7.6 어노테이션 양 추정하기
- 7.6.1 필요 어노테이션 양에 대한 자릿수 공식
- 7.6.2 1~4주 정도의 어노테이션 교육과 작업 정제 예상하기
- 7.6.3 비용 추정을 위해 파일럿 어노테이션과 정확도 목표 사용하기
- 7.6.4 여러 인력 유형의 결합
- 요약
- 8장. 데이터 어노테이션에 대한 품질 관리
- 8.1 준거 정답과 어노테이션의 비교
- 8.1.1 준거 데이터에 대한 어노테이터 일치도
- 8.1.2 예상 정확도를 위해 어떤 기준선을 사용해야 하는가?
- 8.2 어노테이터 간 일치도
- 8.2.1 어노테이터 간 일치도에 대한 소개
- 8.2.2 어노테이터 간 일치도 계산의 이점
- 8.2.3 크리펜도르프 알파와 데이터셋 레벨 일치도
- 8.2.4 레이블 외의 크리펜도르프 알파 계산
- 8.2.5 개별 어노테이터 일치도
- 8.2.6 레이블당 일치도 및 인구통계학적 일치도
- 8.2.7 실세계 다양성을 위해 확장된 정확도를 일치도로 사용하기
- 8.3 학습 데이터를 생성하기 위한 여러 어노테이션의 취합
- 8.3.1 모든 사람의 결과가 일치하는 어노테이션의 집계
- 8.3.2 다양한 어노테이션과 낮은 일치도에 대한 수학적 사례
- 8.3.3 어노테이터가 불일치하는 경우의 어노테이션 집계
- 8.3.4 어노테이터가 보고한 신뢰도
- 8.3.5 어떤 레이블을 신뢰할지 결정하기: 어노테이션의 불확실성
- 8.4 전문가 검토에 의한 품질 관리
- 8.4.1 적합한 인력 모집 및 교육
- 8.4.2 전문가 양성
- 8.4.3 머신러닝이 보조하는 전문가
- 8.5 다단계 워크플로우와 검토 작업
- 8.6 더 읽을 거리
- 요약
- 9장. 고급 데이터 어노테이션과 증강 기법
- 9.1 주관적 작업에 대한 어노테이션 품질
- 9.1.1 어노테이터 기대치 요청하기
- 9.1.2 주관적 작업에 대해 유효 레이블 평가하기
- 9.1.3 다양한 반응을 이해하는 어노테이터 신뢰하기
- 9.1.4 주관적 판단을 위한 베이지안 진실 자백제
- 9.1.5 간단한 작업을 더 복잡한 작업에 포함시키기
- 9.2 어노테이션 품질 관리를 위한 머신러닝
- 9.2.1 최적화 작업으로 어노테이션 신뢰도를 계산하기
- 9.2.2 어노테이터들이 일치하지 않을 때 레이블 신뢰도 수렴하기
- 9.2.3 단일 어노테이션이 옳은지 예측하기
- 9.2.4 단일 어노테이션의 일치 여부 예측하기
- 9.2.5 어노테이터가 봇인지 예측하기
- 9.3 어노테이션 예측 모델
- 9.3.1 높은 신뢰도의 모델 예측에 의한 어노테이션 신뢰하기
- 9.3.2 모델 예측을 1명의 어노테이터처럼 다루기
- 9.3.3 잘못 레이블링된 데이터를 찾기 위해 교차 검증하기
- 9.4 임베딩과 맥락 표현
- 9.4.1 기존 모델에서 전이학습 적용하기
- 9.4.2 어노테이션하기 쉬운 유사 작업의 표현 활용하기
- 9.4.3 자가 지도학습: 데이터 고유의 레이블 사용하기
- 9.5 검색 기반 및 규칙 기반 시스템
- 9.5.1 규칙을 사용해 데이터 필터링하기
- 9.5.2 학습 데이터 검색
- 9.5.3 마스킹으로 특징 필터링
- 9.6 비지도학습 모델에 기반한 가벼운 지도학습
- 9.6.1 비지도학습 모델을 지도학습 모델에 적응시키기
- 9.6.2 사람이 안내하는 탐색 데이터 분석
- 9.7 합성 데이터, 데이터 생성 그리고 데이터 증강
- 9.7.1 합성 데이터
- 9.7.2 데이터 생성
- 9.7.3 데이터 증강
- 9.8 어노테이션 정보를 머신러닝 모델에 통합하기
- 9.8.1 레이블에 대한 신뢰도에 따라 항목을 필터링하거나 가중치 부여하기
- 9.8.2 입력에 어노테이터 ID 포함하기
- 9.8.3 불확실성을 손실 함수에 통합하기
- 9.9 고급 어노테이션을 위한 더 읽을 거리
- 9.9.1 주관적 데이터에 대한 더 읽을 거리
- 9.9.2 어노테이션 품질 관리 머신러닝에 대한 더 읽을 거리
- 9.9.3 임베딩 또는 문맥 표현에 대한 추가 읽을 거리
- 9.9.4 규칙 기반 시스템에 대한 더 읽을 거리
- 9.9.5 어노테이션의 불확실성을 다운스트림 모델에 통합하기 위한 더 읽을 거리
- 요약
- 10장. 여러 가지 머신러닝 작업을 위한 어노테이션 품질 관리
- 10.1 연속값 작업을 위한 어노테이션 품질
- 10.1.1 연속값 작업을 위한 준거 데이터
- 10.1.2 연속값 작업에 대한 일치도
- 10.1.3 연속값 작업의 주관성
- 10.1.4 학습 데이터를 생성하기 위해 연속적 판단 집계하기
- 10.1.5 연속값 데이터를 집계해 학습 데이터를 만들기 위한 머신러닝
- 10.2 객체 검출에서의 어노테이션 품질
- 10.2.1 객체 검출을 위한 준거 데이터
- 10.2.2 객체 검출을 위한 일치도
- 10.2.3 객체 검출에서 차원 수와 정확도
- 10.2.4 객체 검출에 대한 주관성
- 10.2.5 학습 데이터 생성을 위해 객체 어노테이션 집계하기
- 10.2.6 객체 어노테이션을 위한 머신러닝
- 10.3 의미 분할을 위한 어노테이션 품질
- 10.3.1 의미 분할 어노테이션을 위한 준거 데이터
- 10.3.2 의미 분할에서 일치도
- 10.3.3 의미 분할 어노테이션의 주관성
- 10.3.4 학습 데이터를 생성하기 위한 의미 분할 집계하기
- 10.3.5 학습 데이터 생성을 위한 의미 분할 작업 집계에 머신러닝 적용하기
- 10.4 시퀀스 레이블링을 위한 어노테이션 품질
- 10.4.1 시퀀스 레이블링을 위한 준거 데이터
- 10.4.2 연속 데이터의 시퀀스 레이블링을 위한 준거 데이터
- 10.4.3 시퀀스 레이블링에 대한 일치도
- 10.4.4 시퀀스 레이블링을 위한 머신러닝과 전이학습
- 10.4.5 시퀀스 레이블링을 위한 규칙 기반, 검색 기반 및 합성 데이터
- 10.5 언어 생성을 위한 어노테이션 품질
- 10.5.1 언어 생성을 위한 준거 데이터
- 10.5.2 언어 생성에서의 어노테이터의 일치도와 집계
- 10.5.3 자연어 생성을 위한 머신러닝과 전이학습
- 10.5.4 자연어 생성을 위한 합성 데이터
- 10.6 다른 종류의 머신러닝 작업을 위한 어노테이션 품질
- 10.6.1 정보 검색을 위한 어노테이션
- 10.6.2 다중 필드 작업을 위한 어노테이션
- 10.6.3 비디오를 위한 어노테이션
- 10.6.4 오디오 데이터를 위한 어노테이션
- 10.7 다양한 머신러닝 작업을 위한 어노테이션 품질에 대한 더 읽을 거리
- 10.7.1 컴퓨터 비전 분야에 대해 더 읽을 거리
- 10.7.2 자연어 처리 어노테이션을 위한 더 읽을 거리
- 10.7.3 정보 검색에 대한 어노테이션 관련 더 읽을 거리
- 요약
- 4부. 머신러닝을 위한 인간 - 컴퓨터 상호작용
- 11장. 데이터 어노테이션을 위한 인터페이스
- 11.1 인간 - 컴퓨터 상호작용의 기본 원리
- 11.1.1 행동유도성, 피드백과 주체성
- 11.1.2 어노테이션을 위한 인터페이스 설계
- 11.1.3 안구 움직임과 스크롤링 최소화하기
- 11.1.4 단축키와 입력 기기
- 11.2 설계 규칙 깨기
- 11.2.1 일괄 어노테이션을 위한 스크롤
- 11.2.2 페달
- 11.2.3 오디오 입력
- 11.3 어노테이션 인터페이스 내의 프라이밍
- 11.3.1 반복적 프라이밍
- 11.3.2 프라이밍이 도움이 안 되는 상황
- 11.3.3 프라이밍이 도움이 되는 상황
- 11.4 사람과 인공지능 결합하기
- 11.4.1 어노테이터와 피드백
- 11.4.2 다른 사람이 어노테이션하려는 내용을 확인해 객관성 극대화하기
- 11.4.3 연속값 문제를 순위 문제로 재변환하기
- 11.5 인간의 능력을 극대화하는 스마트 인터페이스
- 11.5.1 의미 분할을 위한 스마트 인터페이스
- 11.5.2 객체 검출을 위한 스마트 인터페이스
- 11.5.3 자연어 생성을 위한 스마트 인터페이스
- 11.5.4 시퀀스 레이블링을 위한 스마트 인터페이스
- 11.6 수작업 프로세스를 보조하는 머신러닝
- 11.6.1 효율성 향상에 대한 인식
- 11.6.2 효율성 증가를 위한 능동학습
- 11.6.3 완전성을 극대화하기 위한 부재보다 오류가 나을 수도 있다
- 11.6.4 어노테이션 인터페이스를 일상 업무 인터페이스와 구분하기
- 11.7 더 읽을 거리
- 요약
- 12장. 인간 참여 머신러닝 제품
- 12.1 인간 참여 머신러닝 애플리케이션 제품 정의하기
- 12.1.1 직면한 문제부터 시작하라
- 12.1.2 문제 해결을 위한 시스템 설계
- 12.1.3 Python과 HTML의 연결
- 12.2 예제 1: 뉴스 헤드라인을 위한 탐색적 데이터 분석
- 12.2.1 몇 가지 가정
- 12.2.2 설계와 구현
- 12.2.3 확장 가능성
- 12.3 예제 2: 식품 안전 사건에 대한 데이터 수집하기
- 12.3.1 가정
- 12.3.2 설계와 구현
- 12.3.3 확장 가능성
- 12.4 예제 3: 이미지에서 자전거 식별하기
- 12.4.1 가정
- 12.4.2 설계와 구현
- 12.4.3 확장 가능성
- 12.5 인간 참여 머신러닝 제품 구축을 위한 더 읽을 거리
- 요약
- 부록 A. 머신러닝 기초 복습하기
- A.1 모델의 예측값 해석하기
- A.1.1 확률분포
- A.2 소프트맥스 파고들기
- A.2.1 소프트맥스로 모델의 출력값을 신뢰도로 변환하기
- A.2.2 소프트맥스 기저 또는 온도 선택
- A.2.3 지수 나누기의 결과
- A.3 인간 참여 머신러닝 시스템 평가하기
- A.3.1 정밀도, 재현율, F-점수
- A.3.2 마이크로/매크로 정밀도, 재현율, F-점수
- A.3.3 무작위 기회를 고려하기: 기회 보정 정확도
- A.3.4 신뢰도를 고려하기: ROC 곡선의 면적
- A.3.5 발견된 모델 오류 수
- A.3.6 인건비 줄이기
- A.3.7 이 책에서 다루는 그 외의 정확도 계산 방법