train_test_split()是sklearn.cross_validation模块中用来随机划分训练集和测试集,以Iris数据集为例。
有以下四个特征
分为3个类别:
mport pandas as pd
import matplotlib.pyplot as plt
import numpy as np
df = pd.read_csv('http://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data', header=None) # 加载Iris数据集作为DataFrame对象
X = df.iloc[:, [0, 2]].values # 取出2个特征,并把它们用Numpy数组表示
plt.scatter(X[:50, 0], X[:50, 1],color='red', marker='o', label='setosa') # 前50个样本的散点图
plt.scatter(X[50:100, 0], X[50:100, 1],color='blue', marker='x', label='versicolor') # 中间50个样本的散点图
plt.scatter(X[100:, 0], X[100:, 1],color='green', marker='+', label='Virginica') # 后50个样本的散点图
plt.xlabel('petal length')
plt.ylabel('sepal length')
plt.legend(loc=2) # 说明放在左上角
plt.show()
train_test_split是交叉验证中常用的函数,功能是从样本中随机的按比例选取train data和test data,形式为:
X_train,X_test, y_train, y_test = cross_validation.train_test_split(train_data,train_target,test_size=0.4, random_state=0)
参数代表含义:
train_data:所要划分的样本特征集
train_target:所要划分的样本结果
test_size:样本占比,如果是整数的话就是样本的数量
random_state:是随机数的种子。
from sklearn import datasets
import numpy as np
from sklearn.cross_validation import train_test_split
iris = datasets.load_iris() # 加载Iris数据集。
X = iris.data[:, [2, 3]]
y = iris.target # 标签已经转换成0,1,2了
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=0) # 为了看模型在没有见过数据集上的表现,随机拿出数据集中30%的部分做测试
# 为了追求机器学习和最优化算法的最佳性能,我们将特征缩放
from sklearn.preprocessing import StandardScaler
sc = StandardScaler()
sc.fit(X_train) # 估算每个特征的平均值和标准差
sc.mean_ # 查看特征的平均值,由于Iris我们只用了两个特征,结果是array([ 3.82857143, 1.22666667])
sc.scale_ # 查看特征的标准差,结果是array([ 1.79595918, 0.77769705])
X_train_std = sc.transform(X_train)
# 注意:这里我们要用同样的参数来标准化测试集,使得测试集和训练集之间有可比性
X_test_std = sc.transform(X_test)
# 训练感知机模型
from sklearn.linear_model import Perceptron
# n_iter:可以理解成梯度下降中迭代的次数
# eta0:可以理解成梯度下降中的学习率
# random_state:设置随机种子的,为了每次迭代都有相同的训练集顺序
ppn = Perceptron(n_iter=40, eta0=0.1, random_state=0)
ppn.fit(X_train_std, y_train)
# 分类测试集,这将返回一个测试结果的数组
y_pred = ppn.predict(X_test_std)
# 计算模型在测试集上的准确性
accuracy_score(y_test, y_pred)
module seg_HC595_diver(sys_clk,sys_rst,seg,sel,stcp_reg,shcp_pose,ds,oe); input sys_clk,sys_rst; input wire [7:0] seg;//段选 input wire [5:0] sel;//位选 output stcp_reg,shcp_pose,ds,oe; reg shcp_pose;//.
http://zhouwf0726.itpub.net/post/9689/395349http://zhouwf0726.itpub.net/post/9689/395350http://zhouwf0726.itpub.ne...
ASCII码,hex编码,String字符串相互转化及原理
因为某些原因需要在cpu的环境下安装tensorflow,但是出现了Failed to load the native TensorFlow runtime的报错,下面是我的解决办法使用如下命令升级所有的包conda upgrade --all 使用如下命令安装tensorflowconda install tensorflow虽然pip install tensorfl...
借鉴https://bbs.feng.com/read-htm-tid-11907107.html本人下载的是最新版本的teamview---1.4官网下载地址:https://www.teamviewer.com/cn/download/mac-os/用了几天之后发现自己被鉴定为商业用途,只能远程控制几分钟...炒鸡烦人!!!!!!自己就从网上找了个办法,自己改改使用,发现...
原标题:“硕博连读”到底是不是一个坑?近年来“硕博连读”四个字的热度是越来越高,很显然硕士学历的身价再一次开始下降,大家都纷纷开始考虑要不要读博了,很多研究生导师也会在学生研一或研二结束时问其要不要硕博连读,有些导师不但问,还会劝:小杨呀,我看你平时科研能力还不错,要不要硕博连读,就不用再参加考试了,直接攻读博士,5年就可以毕业,多省事儿…… 差点就心动了!到底什么是“硕博连读”呢?其实就和本硕连..._1671465600
开发工具idea。1、在pom.xml中增加mybatis-generator相关配置。红框部分需要注意下,这个是一会儿需要新增的文件。附上源码 <!--自动生成mybatis xml文件--> <plugin> <groupId>org.mybatis.genera...
(trainX,trainY),(testX,testY)=cifar10.load_data()python在下载时,出现上述错误提示,一般这种问题都是因为所下载文件已经存在或下载了部分。若再重新下载,这会出现上述错误。解决方式:找到下载的文件目录,比如:C:\Users\Admin.keras\datasets,找到,删除。...
model.add(Dense(20, 64))Traceback (most recent call last): File "", line 1, in model.add(Dense(20, 64))File "d:\ProgramData\Anaconda3\lib\site-packages\keras\legacy\interfaces.py", line 46, in w
思路第一步用uni.chooseImage或 uni.chooseMedia选取图片或视频,成功返回选中的图片或视频的参数信息,包括图片展示的路径(也就是本地图片的路径)、图片大小、图片格式等信息。第二步拿到本地的图片或视频的信息之后先用后台提供的上传文件的接口,对接接口之后会返回服务器(也就是线上不是本地的图片信息了)上存在的图片或视频的信息(就可以直接在浏览器输入展示图片或视频了)注意点uni-app有专门上传文件的api(uni.uploadFile)需要去看官网了解使用,其它不同的框架估
1. hbase sink介绍如果还不了解flume请查看我写的其他flume下的博客。接下来的内容主要来自flume官方文档的学习。顺便也强烈推荐flume 1.6 官方APIhbase的sink主要有以下两种。两种方式都提供和HBASE一样的一致性保证,即行级原子性1.1 HbaseSinkagent的配置时提供两种序列化模式:SimpleHbaseEventSer...