인접는 클래스(k-NN 분류의 경우) 또는 개체 속성 값(k-NN 회귀의 경우)이 알려진 개체 집합에서 가져온 것입니다. 명시적 학습 단계가 필요하지 않지만 알고리즘에 대한 학습 집합으로 생각할 수 있습니다. 원시 데이터의 값 범위는 매우 다양하기 때문에 일부 기계 학습 알고리즘에서는 정규화 없이는 객관적인 함수가 제대로 작동하지 않습니다. 예를 들어, 대부분의 분류자는 유클리드 거리로 두 점 사이의 거리를 계산합니다. 피처 중 하나에 광범위한 값이 있는 경우 거리는 이 특정 피쳐에 의해 제어됩니다. 따라서 각 피쳐가 최종 거리에 거의 비례하여 기여하도록 모든 피처의 범위를 정규화해야 합니다. 제이슨, 왜 파이썬과 처음부터 다운로드 기계 학습 Algorthms에서 온라인 예제를 찾을 수 없습니다. 다음 예제에서는 철자가 매우 잘못 입력된 단어를 사용합니다. 우리는 우리의 간단한 vote_prob 함수가 두 가지 경우에 잘 하고 있음을 알 수 있습니다 : “무력”과 “blagrufoo”를 “맨발”로 수정합니다. 우리의 거리 투표는 모든 경우에 잘하고 있는 반면. 우리가 “자유”를 썼을 때 우리는 “자유”를 염두에 두고 있음을 인정해야하지만 “자유주의”를 제안하는 것은 좋은 선택입니다. 당신은 푸른 별 (BS)의 클래스를 찾을 계획이다.
BS는 RC 또는 GS 일 수 있으며 다른 것은 없습니다. “K”는 KNN 알고리즘이 우리가 투표를 하고자 하는 가장 가까운 이웃입니다. K = 3이라고 가정해 봅시다. 따라서 이제 BS를 기준으로 평면에 세 개의 데이터 포인트만 둘러싸는 것만큼 큰 중심을 가진 원을 만들 것입니다. 자세한 내용은 다음 다이어그램을 참조하십시오: 이 섹션에서는 KNN 알고리즘사용의 장단점중 일부를 소개합니다. KNN(K-Nearest Neighbor)은 새 데이터 포인트에 클래스를 할당하는 데 사용할 수 있는 간단한 감독된 분류 알고리즘입니다. 그것은 뿐만 아니라 회귀에 대 한 사용할 수 있습니다., KNN 데이터 분포에 어떤 가정을 하지 않습니다., 따라서 그것은 비 파라메트릭. 입력 샘플과 각 학습 인스턴스 간의 유사성을 계산하여 모든 학습 데이터를 유지하여 향후 예측을 합니다. KNN을 규모로 배치하는 몇 가지 예를 들어 보겠습니다 : 모든 피드백은 매우 감사합니다. 또한 내가 본 골랑 최고의 알고리즘 튜토리얼에서 가능한 한 많은 알고리즘을 구현할 계획! 정말 고마워요! 이 섹션에서는 파이썬의 Scikit-Learn 라이브러리를 사용하여 20줄 미만의 코드로 KNN 알고리즘을 구현하는 방법을 살펴보겠습니다.
Scikit 학습 라이브러리에 대한 다운로드 및 설치 지침은 여기에서 확인할 수 있습니다.