当前位置:   article > 正文

使用python写神经网络模型之分类器_iris神经网络分类python

iris神经网络分类python

最近在尝试将所有的机器学习与深度学习的模型用Python来实现,大致的学习思路如下:

  • 分类器
  • 回归与预测
  • 时间序列

所有的模型先用 Python语言实现,然后用Tensorflow的实现。

1 数据集

本文开始以UCI中的Iris数据集作为训练数据集和测试时间集。该数据集给出了花萼(sepal)的长度和宽度以及花瓣(petal)的长度和宽度,根据这4个特征训练模型,预测花的类别(Iris Setosa,Iris Versicolour,Iris Virginica)。

# 包引入
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import os
df = pd.read_csv('https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data', header=None)
df.head(10)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

iris

1.1 数据处理

我们提取前100个样本(50个Iris Setosa和50个Iris Versicolour),并将不同的样本类别标注为1(Iris Versicolour)和-1(Iris Setosa);然后,将花萼的长度和花瓣的长度作为特征。大致处理如下:

y = df.iloc[0:100, 4].values  # 预测标签向量
y = np.where(y == 'Iris-setosa', -1, 1)
X = df.iloc[0:100, [0,2]].values  # 输入特征向量

# 使用散点图可视化样本
plt.scatter(X[:50, 0], X[:50,1], color='red', marker='o', label='setosa')
plt.scatter(X[50:100, 0], X[50:100, 1], color='blue', marker='x', label='versicolor')
plt.xlabel('petal length')
plt.ylabel('sepal length')
plt.legend(loc='upper left')
plt.show
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/运维做开发/article/detail/821077
推荐阅读
相关标签
  

闽ICP备14008679号