728x90
위스콘신 유방암 데이터 세트(Wisconsin breast cancer dataset)이용
유방암 데이터 세트는 유방암 세포의 특징 10개에 대한 평균, 표준오차, 최대 이상치 기록
해결과제) 샘플이 악성(True)인지 정상(False)인지 구분하는 이진 분류 문제
의학 | 이진 분류 | |
좋음 | 양성 종양(정상 종양) | 음성 샘플 |
나쁨 | 악성 종양 | 양성 샘플(해결과제) |
- load_breast_cancer() 함수 호출
- 사이킷 런의 datasets 모듈 아래 load_breast_cancer() 함수를 사용
- Bunch 클래스 객체 호출
from sklearn.datasets import load_breast_cancer
import matplotlib.pyplot as plt
import numpy as np
cancer = load_breast_cancer()
- 입력 데이터 확인
- cancer의 data와 target을 살펴보기
print(cancer.data.shape, cancer.target.shape)
- 박스 플롯으로 특성의 사분위 관찰
- 박스 플롯은 1사분위와 3사분위의 값으로 상자를 그리고 2사분위(중간값을 표시)
- 1사분위와 3사분위 사이의 거리(interquartile range)의 1.5배 만큼 위아래 거리에서 가장큰 값과 가장 작은 값 까지 수염 그리기
plt.boxplot(cancer.data)
plt.xlabel('feature')
plt.ylabel('value')
plt.show()
- 눈에 띄는 특성 살펴보기
- 4, 14, 24번째 특성이 다른 값보다 분포가 큰것을 확인
- 4, 14, 24번째 특성의 인덱스를 리스트로 묶어 전달하면 특성 확인가능
cancer.feature_names[[3,13,23]]
- 타깃 데이터 확인
- 음성 샘플(정상 종양) 과 양성 샘플(악성종양)을 구분하는 이진 분류 문제 해결이 목표
- cancer.target은 0과 1만 포함 (0은 음성, 1은 양성)
- 넘파이의 unipue()함수를 이용해 고유한 값을 찾아 반환
- return_counts 매개변수를 True로 지정하여 고유값 등장 횟수까지 반환
np.unique(cancer.target, return_counts=True)
- 훈련 데이터 세트 저장
- 예제 데이터 세트를 x, y변수에 저장
x = cancer.data
y = cancer.target
728x90
'AI' 카테고리의 다른 글
4-6 로지스틱 회귀 뉴런으로 단일층 신경망 제작 (0) | 2020.11.18 |
---|---|
4-5 로지스틱 회귀를 위한 뉴런 만들기 (0) | 2020.11.18 |
4-3 로지스틱 손실 함수를 경사 하강법에 적용 (0) | 2020.11.18 |
4-2 시그모이드 함수로 확률 만들기 (0) | 2020.11.18 |
4-1 초기 인공지능 알고리즘, 로지스틱 회귀 (0) | 2020.11.18 |