机器学习算法基础3-sklearn数据集与估计器
文章目录
- 一、sklearn数据集
- 1.数据集的划分
- 2.sklearn数据集接口介绍
- 3.sklearn分类数据集
- 4.sklearn回归数据集
- 5.数据集进行分割
- 二、转换器与预估器
- 1.转换器
- 2.估计器
一、sklearn数据集
1.数据集的划分
机器学习一般的数据集会划分为两个部分:
训练数据:用于训练,构建模型
测试数据:在模型检验时使用,用于评估模型是否有效
训练集与测试集的划分一般控制在75%-25%
2.sklearn数据集接口介绍
sklearn数据集划分API:sklearn.model_selection.train_test_splitscikit-learn数据集API介绍sklearn.datasets
# 加载获取流行数据集# 方法
datasets.load_*()
# 获取小规模数据集,数据包含在datasets里
datasets.fetch_*(data_home=None)
# 获取大规模数据集,需要从网络上下载,函数的第一个参数是data_home,表示数据集
# 下载的目录,默认是 ~/scikit_learn_data/
获取数据集返回的类型load*和fetch*返回的数据类型datasets.base.Bunch(字典格式)# 特征值
data:特征数据数组,是 [n_samples * n_features] 的二维numpy.ndarray 数组
# 目标值
target:标签数组,是 n_samples 的一维 numpy.ndarray 数组
DESCR:数据描述
feature_names:特征名,新闻数据,手写数字、回归数据集没有
target_names:标签名,回归数据集没有
3.sklearn分类数据集
# 导入数字数据集
from sklearn.datasets import load_digitsld = load_digits()
print("特征值")
print(ld.data)print('目标值')
print(ld.target)print('数据描述')
print(ld.DESCR)
用于分类的大数据集sklearn.datasets.fetch_20newsgroups(data_home=None,subset=‘train’)
# 参数
# subset: 'train'或者'test','all',可选,选择要加载的数据集.
训练集的“训练”,测试集的“测试”,两者的“全部”# 方法
datasets.clear_data_home(data_home=None)
# 清除目录下的数据
# 大数据集
from sklearn.datasets import fetch_20newsgroups
from sklearn.model_selection import train_test_splitnews = fetch_20newsgroups(subset='all')print('特征值是:\n',news.data)
print('目标值是:\n',news.target)
4.sklearn回归数据集
# 回归数据集之波士顿房价数据集
from sklearn.datasets import load_bostonlb = load_boston()
print("特征值是:\n",lb.data)
print("目标值是:\n",lb.target)
print(lb.DESCR)
5.数据集进行分割
sklearn.model_selection.train_test_split(*arrays, **options)# 参数# x 数据集的特征值
# y 数据集的标签值
# test_size 测试集的大小,一般为float
# random_state随机数种子,不同的种子会造成不同的随机采样结果。相同的种子采样结果相同。
# return 训练集特征值,测试集特征值,训练标签,测试标签
(默认随机取)
# 数据集的划分
# 乱序的拿一部分数据用作测试集
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_splitli = load_iris()
# 注意返回值 训练集train x_train y_train 测试集test x_test y_teat
# 先特征值后目标值的顺序不能改变
x_train,x_test,y_train,y_test = train_test_split(li.data,li.target,test_size=0.25)print('训练集的特征值与目标值:\n',x_train,y_train)
print('测试集的特征值与目标值:\n',x_test,y_test)
二、转换器与预估器
1.转换器
转换器类(Transformer)---实现了特征工程的APIfit_transform() # 输入数据直接转换
调用fit_transform(对于文档建立分类词频矩阵,不能同时调用)fit() # 输入数据,但不做事,计算均值、方差等
transform() # 进行数据的转换
fit_transform() = fit() + transform()
2.估计器
# 估计器(estimator)---分类器和回归器都属于estimator---是一类实现了算法的API1、用于分类的估计器:
•sklearn.neighbors k-近邻算法
•sklearn.naive_bayes 贝叶斯
•sklearn.linear_model.LogisticRegression 逻辑回归2、用于回归的估计器:
•sklearn.linear_model.LinearRegression 线性回归
•sklearn.linear_model.Ridge 岭回归
# 估计器(estimator)的作用
# 训练集 x_train y_train
# 测试集 x_test y_test第一步:调用fit(x_train,y_train)至估计器
第二步:输入测试集数据
有两个API:1.预测值 y_predict = predict(x_test)2.预测的准确率 score(x_test,y_test)
机器学习算法基础3-sklearn数据集与估计器相关推荐
- ML之分类预测:基于sklearn库的七八种机器学习算法利用糖尿病(diabetes)数据集(8→1)实现二分类预测
ML之分类预测:基于sklearn库的七八种机器学习算法利用糖尿病(diabetes)数据集(8→1)实现二分类预测 目录 输出结果 数据集展示 输出结果 1.k-NN 2.LoR 4.DT 5.RF ...
- sklearn数据集与估计器
sklearn数据集与估计器 1 sklearn数据集 (1)数据来源:大多数以文件的形式 (csv文件..), 因为mysql有性能瓶颈.读取速度遭到限制,数据大的时候很费时间 (2)读取数据的工 ...
- 机器学习算法笔记——P22 sklearn—LASSO算法
机器学习算法笔记--P22 sklearn-LASSO算法 #!/usr/bin/env python # coding: utf-8# In[1]:import numpy as np from n ...
- 机器学习基础、sklearn数据集、转换器与预估器
机器学习基础 机器学习开发流程 机器学习算法分类 机器学习模型是什么 需要明确几点问题: 算法是核心,数据和计算是基础 找准定位 大部分复杂模型的算法设计都是算法工程师在做,而我只是一个调包侠 分析很 ...
- 机器学习算法基础——机器学习概述
20.数据的划分和介绍 数据集划分 机器学习一般的数据集会划分为两个部分: 训练数据:用于训练,构建模型 测试数据:在模型检验时使用,用于评估模型是否有效 sklearn数据集划分API sklear ...
- 机器学习算法基础——数据降维
12.数据的降维之特征选择 特征选择 冗余:部分特征的相关度高,容易消耗计算性能 噪声:部分特征对预测结果有负影响 特征选择就是单纯地从提取到的所有特征中选择部分特征作为训练集特征,特征在选择前和选择 ...
- python必备基础代码-机器学习算法基础(使用Python代码)
介绍 谷歌的自动驾驶汽车和机器人受到了很多媒体的关注,但该公司真正的未来是在机器学习领域,这种技术能使计算机变得更聪明,更个性化.-Eric Schmidt(Google董事长) 我们可能生活在人类历 ...
- 机器学习算法基础(使用Python代码)
介绍 谷歌的自动驾驶汽车和机器人受到了很多媒体的关注,但该公司真正的未来是在机器学习领域,这种技术能使计算机变得更聪明,更个性化.-Eric Schmidt(Google董事长) 我们可能生活在人类历 ...
- 机器学习算法基础之使用python代码
介绍 谷歌的自动驾驶汽车和机器人受到了很多媒体的关注,但该公司真正的未来是在机器学习领域,这种技术能使计算机变得更聪明,更个性化.-Eric Schmidt(Google董事长) 我们可能生活在人类历 ...
- 机器学习算法基础知识
在我们了解了需要解决的机器学习问题的类型之后,我们可以开始考虑搜集来的数据的类型以及我们可以尝试的机器学习算法.在这个帖子里,我们会介绍一遍最流行的机器学习算法.通过浏览主要的算法来大致了解可以利用的 ...
最新文章
- 只需两行代码,2080Ti 就能当 V100用,这个炼丹神器真牛!
- 【Spring实战】注入非Spring Bean对象
- 【2016年第6期】专题:科学数据与创新应用
- ZeroTier内网穿透工具配置
- python语句命令的概念_Python学习笔记1-基础概念
- ZigBee协议栈(一)--协议栈介绍
- linux 内网ip扫描工具,C#开发:局域网IP地址扫描小工具
- OSChina 周三乱弹 ——我们IT工程师会缺女友?
- 单例(Singleton)设计模式
- java泛型类型推断_Java 泛型-类型推断
- 计算机学院表演,计算机学院在校三八服装展演活动中荣获最佳表演奖
- android 图片气泡,关于实现微信聊天气泡里显示图片解决方案
- 使用css实现渐变色背景
- Windows 7-11/Server 三蛋多合一精简优化Windows系统
- ZUCC_操作系统原理实验_实验九 消息队列
- 女程序员:我敲代码养家,老公负责貌美如花
- HDC.Cloud 华为开发者大会2021.04.24 学习记录
- Lamport 逻辑时钟
- 区块链的性能该如何衡量?
- 航空——襟翼、逢翼、副翼、扰流板