2017-11-13 4 views
-2

R 패키지와 함께 제공되는 mnist 데이터 세트로 작업하고 있습니다. 아시다시피, 그것은 다음과 같은 방식으로 나뉘어 :KNN on mnist dataset in R

  1. mnist의 $ 기차 $의 X를 : 60,000 행을 784 열로. 나는 우리가 분석하고있는 이미지라고 생각합니다.
  2. mnist $ train $ y : 60,000 개의 행 x 10 개의 열. 각 열은 인식하려는 숫자 중 하나를 나타내는 대상입니다. 특정 행이 예를 들어 6 일 경우 해당 행의 여섯 번째 열은 을 가지게됩니다.
  3. mnist $ test $ x : 10,000 행 x 784 열.
  4. mnist $ test $ y : 10,000 행 × 10 열.

이 데이터 세트에는 라벨이없고이 4 개의 매트릭스 만 있습니다. 나는 knn이 라벨이 지정되지 않았고 감독 학습을위한 기술이기 때문에이 데이터 세트에서 수행 될 수 있는지 궁금합니다. 그렇다면 매개 변수 (train, test 및 cl = 교육 집합의 실제 분류 요인)는 무엇입니까?

+1

정말로 혼란 스럽습니다. 'mnist $ train $ y'에는 원 핫 코드로 레이블이 포함되어 있습니다. 관련 Keras 튜토리얼을 자세히 읽어 보면 문제가 * 감독 된 * 학습자로서 접근한다는 것을 알 수 있습니다 ... – desertnaut

답변

0

여기에는 혼란이 있다고 생각합니다.

데이터 세트에는 레이블 (!!)이 있습니다. - mnist $ train $ x는 교육용 28 * 28 이미지를 병합합니다. mnist $ train $ y는 해당 레이블입니다.
당신이 말했듯이 mnist $ train $ y의 행 i는 mnist $ train $ x의 이미지 i에 대한 하나의 핫 인코딩 레이블입니다.
데이터에 레이블이 지정됩니다.

이 데이터 세트에서 KNN을 수행 할 수 있습니다 (단, 결과의 상태를 제공하지는 않음).
먼저 각 핫 라벨을 정수로 변환하십시오 (행에 argmax 사용).
그런 다음 mnist $ train $ x를 x로, 정수 라벨을 y로, K (하이퍼 매개 변수)를 사용하여 KNN 알고리즘을 실행하십시오.