Connect with us

AI 101

머신 러닝이란 무엇인가요?

mm

머신 러닝은 가장 빠르게 성장하는 기술 분야 중 하나이지만, “머신 러닝”이라는 단어가 자주 사용됨에도 불구하고 머신 러닝이 정확히 무엇인지 이해하기는 어려울 수 있습니다. 머신 러닝은 단 하나의 것을 지칭하는 것이 아니라, 다양한 개념과 기술에 적용될 수 있는 포괄적인 용어입니다. 머신 러닝을 이해한다는 것은 다양한 형태의 모델 분석, 변수, 알고리즘에 익숙해지는 것을 의미합니다. 머신 러닝이 무엇을 포함하는지 더 잘 이해하기 위해 자세히 살펴보겠습니다.

머신 러닝이란 무엇인가요?

머신 러닝이라는 용어는 많은 다른 것들에 적용될 수 있지만, 일반적으로 이 용어는 컴퓨터가 명시적인 줄 단위 지시를 받지 않고도 작업을 수행할 수 있도록 하는 것을 의미합니다. 머신 러닝 전문가는 문제를 해결하는 데 필요한 모든 단계를 작성할 필요가 없습니다. 컴퓨터가 데이터 내 패턴을 분석하고 이러한 패턴을 새로운 데이터에 일반화함으로써 “학습”할 수 있기 때문입니다. 머신 러닝 시스템에는 세 가지 기본 부분이 있습니다:

  • 입력
  • 알고리즘
  • 출력

입력은 머신 러닝 시스템에 공급되는 데이터이며, 입력 데이터는 레이블과 특성으로 나눌 수 있습니다. 특성은 관련 변수, 즉 패턴을 학습하고 결론을 도출하기 위해 분석될 변수들입니다. 반면, 레이블은 데이터의 개별 인스턴스에 부여된 클래스/설명입니다. 특성과 레이블은 두 가지 다른 유형의 머신 러닝 문제, 즉 지도 학습과 비지도 학습에 사용될 수 있습니다.

비지도 학습 vs. 지도 학습

지도 학습에서는 입력 데이터에 정답이 함께 제공됩니다. 지도 학습 문제는 데이터셋의 일부로 정확한 출력 값을 가지므로 예상되는 클래스가 사전에 알려져 있습니다. 이는 데이터 과학자가 테스트 데이터셋에서 데이터를 테스트하고 항목의 몇 퍼센트가 올바르게 분류되었는지 확인함으로써 알고리즘의 성능을 점검할 수 있게 합니다. 반면, 비지도 학습 문제에는 정답 레이블이 첨부되어 있지 않습니다. 비지도 학습 작업을 수행하도록 훈련된 머신 러닝 알고리즘은 데이터의 관련 패턴을 스스로 추론할 수 있어야 합니다. 지도 학습 알고리즘은 일반적으로 분류 문제에 사용되며, 이는 많은 다른 클래스 중 하나로 분류되어야 하는 인스턴스로 가득 찬 대규모 데이터셋을 다룹니다. 또 다른 유형의 지도 학습은 회귀 작업으로, 알고리즘에 의해 출력되는 값이 범주형이 아닌 연속적인 성질을 가집니다. 한편, 비지도 학습 알고리즘은 밀도 추정, 클러스터링, 표현 학습과 같은 작업에 사용됩니다. 이 세 가지 작업은 머신 러닝 모델이 데이터의 구조를 추론해야 하며, 모델에 미리 정의된 클래스가 주어지지 않습니다. 비지도 학습과 지도 학습 모두에서 가장 일반적으로 사용되는 알고리즘 중 일부를 간략히 살펴보겠습니다.

지도 학습의 유형

일반적인 지도 학습 알고리즘에는 다음이 포함됩니다:

  • 나이브 베이즈
  • 서포트 벡터 머신
  • 로지스틱 회귀
  • 랜덤 포레스트
  • 인공 신경망

서포트 벡터 머신은 데이터셋을 다른 클래스로 나누는 알고리즘입니다. 데이터 포인트는 클래스를 서로 분리하는 선을 그려 클러스터로 그룹화됩니다. 선의 한쪽에 있는 점은 하나의 클래스에 속하고, 선의 다른 쪽에 있는 점은 다른 클래스가 됩니다. 서포트 벡터 머신은 선과 선 양쪽에 있는 점 사이의 거리를 최대화하는 것을 목표로 하며, 거리가 클수록 분류기는 해당 점이 다른 클래스가 아닌 하나의 클래스에 속한다고 더 확신하게 됩니다. 로지스틱 회귀는 데이터 포인트가 두 클래스 중 하나에 속하는 것으로 분류되어야 하는 이진 분류 작업에 사용되는 알고리즘입니다. 로지스틱 회귀는 데이터 포인트에 1 또는 0의 레이블을 붙여 작동합니다. 데이터 포인트의 인지된 값이 0.49 이하이면 0으로 분류되고, 0.5 이상이면 1로 분류됩니다. 의사결정 트리 알고리즘은 데이터셋을 점점 더 작은 조각으로 나누어 작동합니다. 데이터를 나누는 데 사용되는 정확한 기준은 머신 러닝 엔지니어에게 달려 있지만, 궁극적인 목표는 데이터를 단일 데이터 포인트로 나눈 다음 키를 사용하여 분류하는 것입니다. 랜덤 포레스트 알고리즘은 본질적으로 많은 단일 의사결정 트리 분류기가 함께 연결되어 더 강력한 분류기를 형성한 것입니다. 나이브 베이즈 분류기는 사전 사건이 발생할 확률을 기반으로 주어진 데이터 포인트가 발생했을 확률을 계산합니다. 이는 베이즈 정리를 기반으로 하며 계산된 확률에 따라 데이터 포인트를 클래스에 배치합니다. 나이브 베이즈 분류기를 구현할 때는 모든 예측 변수가 클래스 결과에 동일한 영향을 미친다고 가정합니다. 인공 신경망 또는 다층 퍼셉트론은 인간 뇌의 구조와 기능에서 영감을 받은 머신 러닝 알고리즘입니다. 인공 신경망은 많은 노드/뉴런이 연결되어 구성된다는 사실에서 그 이름을 얻었습니다. 모든 뉴런은 수학적 함수로 데이터를 조작합니다. 인공 신경망에는 입력층, 은닉층, 출력층이 있습니다. 신경망의 은닉층은 데이터가 실제로 해석되고 패턴을 분석하는 곳입니다. 즉, 알고리즘이 학습하는 곳입니다. 더 많은 뉴런이 연결되면 더 복잡한 패턴을 학습할 수 있는 더 복잡한 네트워크가 만들어집니다.

비지도 학습의 유형

비지도 학습 알고리즘에는 다음이 포함됩니다:

  • K-평균 클러스터링
  • 오토인코더
  • 주성분 분석

K-평균 클러스터링은 비지도 분류 기법으로, 데이터 포인트를 해당 특성에 기반하여 클러스터 또는 그룹으로 분리하는 방식으로 작동합니다. K-평균 클러스터링은 데이터 포인트에서 발견된 특성을 분석하고, 주어진 클래스 클러스터에 있는 데이터 포인트가 다른 데이터 포인트를 포함하는 클러스터보다 서로 더 유사하도록 만드는 패턴을 구별합니다. 이는 데이터 그래프에 클러스터의 가능한 중심 또는 중심점을 배치하고, 중심점의 클래스에 속하는 점과 중심점 사이의 거리를 최소화하는 위치를 찾을 때까지 중심점의 위치를 재할당함으로써 달성됩니다. 연구자는 원하는 클러스터 수를 지정할 수 있습니다. 주성분 분석은 많은 수의 특성/변수를 더 작은 특성 공간/더 적은 특성으로 줄이는 기법입니다. 데이터 포인트의 “주성분”은 보존을 위해 선택되고, 다른 특성들은 더 작은 표현으로 압축됩니다. 원본 데이터 부분 간의 관계는 보존되지만, 데이터 포인트의 복잡성이 더 단순해지기 때문에 데이터를 정량화하고 설명하기가 더 쉬워집니다. 오토인코더는 비지도 학습 작업에 적용할 수 있는 신경망의 변형입니다. 오토인코더는 레이블이 없고 자유 형식의 데이터를 가져와 신경망이 사용할 수 있는 데이터로 변환할 수 있으며, 기본적으로 자체 레이블이 지정된 훈련 데이터를 생성합니다. 오토인코더의 목표는 입력 데이터를 변환하고 가능한 한 정확하게 재구성하는 것이므로, 네트워크는 어떤 특성이 가장 중요한지 결정하고 추출하도록 유도됩니다.

Blogger and programmer with specialties in Machine Learning and Deep Learning topics. Daniel hopes to help others use the power of AI for social good.