머신 러닝 모델 훈련
지금까지, 기대한 결과를 내려면 머신 러닝(ML) 모델을 '훈련'시켜야 한다는 사실을 암시했었습니다. 이 단원에서는 특정 사례 연구라는 렌즈를 통해 훈련 과정에 어떤 단계가 포함되어 있는지 살펴보겠습니다.
기계가 학습하는 방식을 이해할 수 있게 하는 것이 목표이지만 아직은 기계가 프로세스를 스스로 복제할 수 없습니다.
머신 러닝을 사용하기로 결정하기 전에 스스로에게 자문해 보십시오. 어떤 질문에 대한 해답을 찾으려고 하는가? 그리고 그 해답을 찾는 데 머신 러닝이 필요한가?
어떤 질문에 답하시겠습니까?
귀하의 웹 사이트에서 독자들에게 기사에 대해 댓글을 올릴 기회를 준다고 상상해 보십시오. 매일 수천여 건의 의견들이 게시되며, 그에 따라 때로는 대화의 내용이 약간 불쾌해집니다.
자동화 시스템이 플랫폼에 게시된 모든 댓글을 분류하고 '악성'인 가능성이 있는 댓글을 식별한 후 검토를 통해 대화의 질을 향상시킬 수 있는 인간 평가자에게 깃발 표시로 알릴 수 있다면 정말 멋질 것입니다.
이것이 바로 머신 러닝이 도움을 줄 수 있는 문제의 한 유형입니다. 그리고 실제로는 그러한 시스템이 이미 존재합니다. 자세한 내용은 Jigsaw's Perspective API를 참조하십시오.
이것은 머신 러닝 모델이 훈련을 받는 원리를 습득하는 데 사용하게 될 예제이지만, 같은 프로세스라도 여러 건의 다양한 사례 연구로 확장할 수 있습니다.
사용 사례 평가
악성 댓글을 인식하도록 모델을 훈련시키려면 데이터가 필요한데, 이 경우 귀하의 웹 사이트에서 받는 댓글의 예를 의미합니다. 그러나 데이터 세트를 준비하기 전에 원하는 결과가 무엇인지 생각해 보는 것이 중요합니다.
인간의 경우에도 댓글이 악성인지 여부를 평가하는 것이 항상 쉽지는 않기 때문에 온라인에 게시해서는 안 됩니다. 두 명의 중재자에게 댓글의 '악성'에 대해 다른 견해가 있을 수 있습니다. 따라서 알고리즘이 항상 마법처럼 "올바르게" 얻어질 것으로 기대해서는 안 됩니다.
머신 러닝은 몇 분 만에 다량의 댓글을 처리할 수 있지만, 자신이 학습한 내용에 따라 단지 '추측'하는 데 그친다는 점을 명심해야 합니다. 때로는 잘못된 답변을 제공하고 일반적으로 실수를 저지릅니다.
데이터 얻기
이제 데이터 세트를 준비할 차례입니다. 우리는 사례 연구를 위해 필요한 데이터 종류와 위치를 이미 알고 있습니다. 바로 웹 사이트에 댓글이 게시되어 있기 때문입니다.
머신 러닝에게 댓글의 악성을 인식하라고 요청했기 때문에 (댓글)을 분류하려는 텍스트 항목의 종류 및 머신 러닝(ML) 시스템이 예측하기를 원하는 범주 또는 레이블("악성" 또는 "비악성")에 대한 예제를 제공해야 합니다.
그러나 다른 사용 사례의 경우 데이터를 쉽게 사용하지 못할 수도 있습니다. 이것은 해당 조직에서 수집한 내용이나 타사에서 제공한 내용으로부터 소싱해야 합니다. 두 경우 모두 해당 지역 및 애플리케이션이 담당하게 될 위치에서 데이터 보호에 대한 규정을 반드시 검토해야 합니다.
데이터 정리하기
데이터를 수집한 후 기계에 넣기 전에 데이터를 깊이 분석해야 합니다. 머신 러닝 모델의 결과물은 데이터만큼 우수하고 공정합니다(다음 단원에서 '공정성'이라는 개념에 대해 자세히 살펴보겠습니다). 해당 사용 사례가 모델이 제안한 조치에 영향을 받는 사람들에게 얼마나 부정적인 영향을 줄 수 있는지를 반영해야 합니다.
무엇보다도, 모델을 성공적으로 훈련시키려면 레이블이 지정된 예제를 충분히 포함시키고 범주에 균등하게 배분해야 합니다. 모델이 해당 문제 공간의 변동을 캡처할 수 있도록 문맥과 사용된 언어를 고려하는 폭 넓은 예제 세트도 주어야 합니다.
알고리즘의 선택
데이터 세트 준비가 끝나면 훈련시킬 머신 러닝 알고리즘을 선택해야 합니다. 알고리즘마다 고유의 목적이 있습니다. 따라서, 얻고자 하는 결과에 따라 올바른 알고리즘을 선택해야 합니다.
이전 단원에서는 머신 러닝에 대한 다양한 접근법에 대해 살펴보았습니다. 본 사례 연구에서는 의견을 "악성" 또는 "비악성"으로 분류하려면 레이블이 지정된 데이터를 필요로 하기 때문에 우리가 하려는 것은 지도 학습입니다.
Google Cloud AutoML Natural Language는 원하는 결과물을 얻을 수 있게 해주는 많은 알고리즘들 중의 하나입니다. 그러나 어떤 알고리즘을 선택하든 훈련 데이터 세트의 형식 지정 방법에 대한 구체적인 지침을 따라야 합니다.
모델 훈련, 검증 및 테스트
이제 적절한 훈련 단계로 넘어갑니다. 여기서는 주어진 댓글이 악성인지 예측하는 모델의 능력을 점진적으로 향상시키는 데이터를 사용합니다. 보유한 데이터의 대부분을 알고리즘에 넣고, 아마 몇 분 정도 기다리면 모델이 훈련되었을 것입니다.
하지만 왜 데이터의 “대부분”만 넣을까요? 모델이 올바르게 학습하게 하려면 데이터를 세 가지로 나눠야 합니다.
- 훈련 세트는 모델이 "보고" 처음부터 배우는 것입니다.
- 검증 세트는 훈련 과정의 일부이기도 하지만 모델의 구조를 지정하는 변수인 하이퍼파라미터를 조정하기 위해 별도로 유지됩니다.
- 테스트 세트는 훈련 프로세스가 끝난 후에만 단계에 들어갑니다. 이것은 이 모델이 아직 보지 않은 데이터에 대한 모델의 성능을 테스트하는 데 사용합니다.
결과 평가
모델이 잠재적으로 악성이 있는 댓글을 찾는 법을 올바로 학습했는지 어떻게 알 수 있을까요?
훈련이 완료되면, 알고리즘은 모델 성능에 대한 개요를 제공합니다. 이미 살펴보았던 것처럼, 이 모델이 그 시간의 100%를 올바로 사용했다고 기대할 수는 없습니다. 상황에 따라 ‘충분하다’고 판단하는 것은 여러분의 몫입니다.
모델을 평가할 때 고려할 주요 사항은 정탐(false positive)과 미탐(false negative)입니다. 이 경우 정탐은 악성이 아니지만 그러하다고 표시된 댓글입니다. 이것은 빨리 무시하고 다음 단계로 진행할 수 있습니다. 미탐은 악성인 댓글이 되겠지만 시스템은 그렇게 표시하지 않습니다. 모델이 어떤 실수를 피해야 하게 할지 이해하기가 쉬울 것입니다.
언론 평가
훈련 프로세스의 결과를 평가하는 것은 기술 분석에서 멈추지 않습니다. 이 시점에서 언론의 가치와 가이드라인은 알고리즘이 제공하는 정보의 사용 여부와 방법을 결정하는 데 도움이 됩니다.
시작하기 전에 전에는 사용할 수 없었던 정보가 지금은 있는지 여부와 해당 정보가 뉴스가 될 가치를 먼저 생각하십시오. 기존 가설을 검증하시겠습니까? 아니면 전에 고려하지 않았던 새로운 관점과 이야기의 시각을 조명하시겠습니까?
이제 머신 러닝의 원리에 대해 더 잘 이해하셨을테니, 머신 러닝의 잠재력을 시험해 보고 싶으실 수 있을 것입니다. 그러나 우리는 아직 준비가 되지 않았습니다. 다음 단원에서는 머신 러닝이 가져 올 가장 큰 관심주제인 편향에 대해 살펴보겠습니다.
-
-
Introduction to AI for News Business Teams
강의Learn about Google's approach to AI and how our products can support news business teams. -