소속: 대학 학부/학과 학번: ( 학년) 이름:
- 1 -
중 간 고 사
과 목 명: MGT4019 경영인공지능 2019/10/22
담당교수: 송 용 욱
* 앞 화면의 주의사항을 확인하시오. 주의사항을 지키지 못한 경우 0 점으로 처리되거나 불이익을 받을 수 있습니다.
1. 다음 프로그램을 이용하여 cancer 데이터 세트를 엑셀로 만드시오. [제출: 1.xlsx 파일]
import numpy
import sklearn.datasets
cancer = sklearn.datasets.load_breast_cancer() print(cancer.data.shape)
f_data = open("cancer.csv", 'w') f_data.write("S/N")
for j in range(cancer.data.shape[1]):
f_data.write(",{}".format(cancer.feature_names[j])) f_data.write(",Target")
f_data.write("\n")
for i in range(cancer.data.shape[0]):
f_data.write("{}".format(i)) for j in range(cancer.data.shape[1]):
f_data.write(",{:.5f}".format(cancer.data[i][j])) f_data.write(",{}".format(cancer.target[i]))
f_data.write("\n") f_data.close()
(Hint) 출력 파일 = cancer.csv
소속: 대학 학부/학과 학번: ( 학년) 이름:
- 2 -
2. 다음 분류 대상 데이터가 주어졌을 때, 엑셀을 이용하여 cancer 데이터(1.xlsx 파일)에 대한 k-NN 분류를 수행하시오.
A. k 가 1 인 경우에 대하여 해 보시오. [제출: 2A.xlsx]
B. k 가 3 인 경우에 대하여 해 보시오. [제출: 2B.xlsx]
C. k 가 5 인 경우에 대하여 해 보시오. [제출: 2C.xlsx]
D. k 가 7 인 경우에 대하여 해 보시오. [제출: 2D.xlsx]
11.42 20.38 77.58 386.1 0.1425 0.2839 0.2414 0.1052 0.2597 0.09744 0.4956 1.156 3.445 27.23 0.00911 0.07458 0.05661 0.01867 0.05963 0.00921 14.91 26.5 98.87 567.7 0.2098 0.8663 0.6869 0.2575 0.6638 0.173
소속: 대학 학부/학과 학번: ( 학년) 이름:
- 3 -
3. Python 을 이용하여 cancer 데이터 세트에 대하여 k-NN 분류를 적용하여 가장 정확도가
높은 k 를 찾으시오. 단, 데이터 분리는 다음 명령어를 사용하고, 기타의 경우에
‘random_state=0’으로 하시오.
X_train, X_test, y_train, y_test = sklearn.model_selection.train_test_split(cancer.data, cancer.target, stratify=cancer.target, random_state=42)
k = 정확도 =
4. Python 을 이용하여 cancer 데이터 세트에 대하여 Logistic Regression 을 적용하고, 정확도를 구하시오. 단, 데이터 분리는 다음 명령어를 사용하고, 기타의 경우에
‘random_state=0’으로 하시오.
X_train, X_test, y_train, y_test = sklearn.model_selection.train_test_split(cancer.data, cancer.target, stratify=cancer.target, random_state=42)
정확도 =
5. Python 을 이용하여 cancer 데이터 세트에 대하여 Gaussian Naive Bayes 분류를 적용하고, 정확도를 구하시오. 단, 데이터 분리는 다음 명령어를 사용하고, 기타의 경우에
‘random_state=0’으로 하시오.
X_train, X_test, y_train, y_test = sklearn.model_selection.train_test_split(cancer.data, cancer.target, stratify=cancer.target, random_state=42)
정확도 =
6. Python 을 이용하여 cancer 데이터 세트에 대하여 결정 트리를 적용하여 가장 정확도가 높은 max_depth 를 찾으시오. 단, 데이터 분리는 다음 명령어를 사용하고, 기타의 경우에
‘random_state=0’으로 하시오.
X_train, X_test, y_train, y_test = sklearn.model_selection.train_test_split(cancer.data, cancer.target, stratify=cancer.target, random_state=42)
max_depth = 정확도 =