Advertisement

pythonsklearn乳腺癌数据集_【sklearn数据集】SVM之乳腺癌数据集实战

阅读量:

一、Sklearn介绍

scikit-learn作为Python语言中的机器学习库,在当前机器学习算法领域中实现较为完善。它不仅提供了多种实现算法,并且还包含丰富详实的文档和示例内容。这些文档编写得通俗易懂,在深入理解相关技术后完全可以将其当作机器学习的基础教材来使用。

二、Sklearn数据集种类

sklearn 的数据集有好多个种

自带的小数据集(packaged dataset):sklearn.datasets.load_

可在线下载的数据集(Downloaded Dataset):sklearn.datasets.fetch_

计算机生成的数据集(Generated Dataset):sklearn.datasets.make_

svmlight/libsvm格式的数据集:sklearn.datasets.load_svmlight_file(…)

从数据集中获取数据集实例:通过使用fetch_mldata()函数可以从sklearn datasets模块中加载

三、Sklearn数据集

3.1 有关数据集的工具类

clearn_data_home 清空指定目录

get_data_home 获取sklearn数据根目录

load_files 加载类目数据

dump_svmlight_file 转化文件格式为svmlight/libsvm

load_svmlight_file 加载文件并进行格式转换

load_svmlight_files 加载文件并进行格式转换

3.2 有关文本分类聚类数据集

fetch_20newsgroups 新闻文本分类数据集

fetch_20newsgroups_vectorized 新闻文本向量化数据集

fetch_rcv1 路透社英文新闻文本分类数据集

有关人脸识别的数据集 fetch_lfw_pairs 人脸数据集

fetch_lfw_people 人脸数据集

fetch_olivetti_faces 人脸数据集

3.3 有关图像的数据集

load_sample_image 图像数据集

load_sample_images 图像数据集

load_digits 手写体数据集

3.4 有关医学的数据集

load_breast_cancer 乳腺癌数据集

load_diabetes 糖尿病数据集

load_linnerud 体能训练数据集

3.5 其他数据集

load_wine 葡萄酒数据集

load_iris 鸢尾花数据集

load_boston 波士顿房屋数据集

fetch_california_housing 加利福尼亚房屋数据集

fetch_kddcup99 入侵检测数据集

fetch_species_distribution 物种分布数据集

fetch_covtype 森林植被数据集

load_mldata http://mldata.org 在线下载的数据集

四、数据集API基本使用知识

数据集划分:

机器学习一般的数据集会划分为两个部分

训练数据:

用于训练,构建模型

测试数据:

在模型检验时使用,用于评估模型是否有效

sklearn数据集划分API:sklearn.model_selection.train_test_split

scikit-learn数据集API:

获取数据集的返回类型:

数据集进行分割:

五、代码示例:

5.1 breast cancer数据集基本介绍:

乳腺癌数据集一共有569个样本,30个特征,标签为二分类

类型

个数

良性 benign

357

恶性 malignant

212

5.2 获取乳腺癌训练集和数据集

from sklearn.datasets import load_breast_cancer

from sklearn.svm import SVC

from sklearn.model_selection import train_test_split

import matplotlib.pyplot as plt

import numpy as np

from time import time

import datetime

cancers = load_breast_cancer()

X = cancers.data #获取特征值

Y = cancers.target #获取标签

print(X.shape) #查看特征形状

print(Y.shape) #查看标签形状

print(X)

print(Y)

print(data.DESCR) #查看数据集描述

print('特征名称')

print(data.feature_names) # 特征名

print('分类名称')

print(data.target_names) # 标签类别名

注意返回值: 训练集train,x_train,y_train,测试集test,x_test,y_test

x_train表示 training set 的特征向量, y_train代表 training set 的目标变量, x_test表示 testing set 的特征向量, y_test代表 testing set 的目标变量.

注意,接收参数的顺序固定

训练集占80%,测试集占20%

x_train, x_test, y_train, y_test = train_test_split(X, Y, test_size=0.2)

print('训练集的特征值和目标值:', x_train, y_train)

print('测试集的特征值和目标值:', x_test, y_test)

#dict_keys(['data', 'target', 'target_names', 'DESCR', 'feature_names', 'filename'])

print(cancers.keys())

5.3 建模训练、评价模型

model_linear = SVC(C=1.0, kernel='linear') # 线性核

model_linear.fit(x_train, y_train)

train_score = model_linear.score(x_train, y_train)

test_score = model_linear.score(x_test, y_test)

print('train_score:{0}; test_score:{1}'.format(train_score, test_score))

5.4 运用模型,进行预测

preresult=model_linear.predict(x_test)

#查看第一个样本的预测值

preresult[0]

说明:本文参考以下博客写成

1、SK数据集

2、Python的Sklearn库中的数据集

全部评论 (0)

还没有任何评论哟~