랜덤 분류 데이터셋 시각화

Beginner

This tutorial is from open-source community. Access the source code

소개

이 실험실에서는 파이썬의 scikit-learn 라이브러리를 사용하여 여러 개의 무작위로 생성된 분류 데이터셋을 플롯하는 방법을 보여줍니다. 모든 데이터셋은 두 개의 특징을 사용하여 x 축과 y 축에 플롯되며, 각 점의 색상은 해당 클래스 레이블을 나타냅니다.

VM 팁

VM 시작이 완료되면 왼쪽 상단 모서리를 클릭하여 Notebook 탭으로 전환하여 연습을 위한 Jupyter Notebook에 접근할 수 있습니다.

때때로 Jupyter Notebook 이 완전히 로드되기까지 몇 초 정도 기다려야 할 수 있습니다. Jupyter Notebook 의 제한으로 인해 작업의 유효성 검사를 자동화할 수 없습니다.

학습 중 문제가 발생하면 Labby 에 문의하십시오. 세션 후 피드백을 제공하면 문제를 신속하게 해결해 드리겠습니다.

라이브러리 가져오기

먼저 필요한 라이브러리를 가져와야 합니다. matplotlib 과 scikit-learn 을 사용할 것입니다.

import matplotlib.pyplot as plt
from sklearn.datasets import make_classification
from sklearn.datasets import make_blobs
from sklearn.datasets import make_gaussian_quantiles

그림 크기 설정 및 서브플롯 조정

그림 크기를 설정하고 서브플롯을 조정하여 더욱 읽기 쉽게 만듭니다.

plt.figure(figsize=(8, 8))
plt.subplots_adjust(bottom=0.05, top=0.9, left=0.05, right=0.95)

하나의 정보 특징, 클래스당 하나의 클러스터

하나의 정보 특징과 클래스당 하나의 클러스터를 가진 데이터셋을 생성하고 플롯합니다.

plt.subplot(321)
plt.title("하나의 정보 특징, 클래스당 하나의 클러스터", fontsize="small")
X1, Y1 = make_classification(n_features=2, n_redundant=0, n_informative=1, n_clusters_per_class=1)
plt.scatter(X1[:, 0], X1[:, 1], marker="o", c=Y1, s=25, edgecolor="k")

두 개의 정보 특징, 클래스당 하나의 클러스터

두 개의 정보 특징과 클래스당 하나의 클러스터를 가진 데이터셋을 생성하고 플롯합니다.

plt.subplot(322)
plt.title("두 개의 정보 특징, 클래스당 하나의 클러스터", fontsize="small")
X1, Y1 = make_classification(n_features=2, n_redundant=0, n_informative=2, n_clusters_per_class=1)
plt.scatter(X1[:, 0], X1[:, 1], marker="o", c=Y1, s=25, edgecolor="k")

두 개의 정보 특징, 클래스당 두 개의 클러스터

두 개의 정보 특징과 클래스당 두 개의 클러스터를 가진 데이터셋을 생성하고 플롯합니다.

plt.subplot(323)
plt.title("두 개의 정보 특징, 클래스당 두 개의 클러스터", fontsize="small")
X2, Y2 = make_classification(n_features=2, n_redundant=0, n_informative=2)
plt.scatter(X2[:, 0], X2[:, 1], marker="o", c=Y2, s=25, edgecolor="k")

다중 클래스, 두 개의 정보 특징, 하나의 클러스터

여러 클래스, 두 개의 정보 특징, 그리고 하나의 클러스터를 가진 데이터셋을 생성하고 플롯합니다.

plt.subplot(324)
plt.title("다중 클래스, 두 개의 정보 특징, 하나의 클러스터", fontsize="small")
X1, Y1 = make_classification(n_features=2, n_redundant=0, n_informative=2, n_clusters_per_class=1, n_classes=3)
plt.scatter(X1[:, 0], X1[:, 1], marker="o", c=Y1, s=25, edgecolor="k")

세 개의 블롭

세 개의 블롭으로 구성된 데이터셋을 생성하고 플롯합니다.

plt.subplot(325)
plt.title("세 개의 블롭", fontsize="small")
X1, Y1 = make_blobs(n_features=2, centers=3)
plt.scatter(X1[:, 0], X1[:, 1], marker="o", c=Y1, s=25, edgecolor="k")

가우시안을 세 개의 사분위수로 나눈 데이터

가우시안 분포를 세 개의 사분위수로 나눈 데이터셋을 생성하고 플롯합니다.

plt.subplot(326)
plt.title("가우시안을 세 개의 사분위수로 나눈 데이터", fontsize="small")
X1, Y1 = make_gaussian_quantiles(n_features=2, n_classes=3)
plt.scatter(X1[:, 0], X1[:, 1], marker="o", c=Y1, s=25, edgecolor="k")

플롯 표시

최종 플롯을 표시합니다.

plt.show()

요약

이 실험에서는 파이썬의 scikit-learn 라이브러리를 사용하여 여러 개의 무작위로 생성된 분류 데이터셋을 플롯하는 방법을 보여줍니다. 모든 데이터셋은 두 개의 특징을 사용하여 x 축과 y 축에 플롯되며, 각 점의 색상은 해당 클래스 레이블을 나타냅니다.