文章目录
- 独热编码
- 顺序编码
独热编码
import keras
from keras import layers
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline
data = https://www.it610.com/article/pd.read_csv('./dataset/iris.csv') ##用的是花花分类
data.head()
文章图片
data.Species.unique()##查看花的种类
文章图片
将花的种类转化为数值,采用独热编码
pd.get_dummies(data.Species)##独热编码 产生对应种类的编码
文章图片
将新产生的数据加入到原来数据中
data=https://www.it610.com/article/data.join(pd.get_dummies(data.Species)) #将新产生的数据加入到原来数据中
data #看一下当前数据
文章图片
除原有字符串数据
del data['Species'] #删除原有字符串数据
打乱数据方便训练
index = np.random.permutation(len(data))##打乱数据方便训练
data = https://www.it610.com/article/data.iloc[index]
处理数据集
x=data[data.columns[1:-3]]##第二列到倒数第四列为输入
y=data.iloc[:,-3:]##倒数后三列为输出
x.shape,y.shape ##看一下数据维度
训练网络
module = keras.Sequential()
module.add(layers.Dense(3,input_dim=4,activation='softmax'))##输入维度3 输出维度4
module.summary()
文章图片
编译模型
module.compile(optimizer='adam',loss='categorical_crossentropy',metrics=['acc'])##因为采用独热编码,所以损失函数用categorical_crossentropy
history = module.fit(x,y,epochs=100)
文章图片
文章图片
模型预测
module.predict(pd.DataFrame([[5.1,3.5,1.4,0.2]]))
文章图片
顺序编码 下面用顺序编码处理输出是字符产的类型
data = https://www.it610.com/article/pd.read_csv('./dataset/iris.csv')
data.Species.unique()
##字符转换为数字
spc_dic = {'setosa': 0, 'versicolor': 1, 'virginica': 2}##顺序编码
data['Species'] = data.Species.map(spc_dic)data ##看一下数据
文章图片
x=data[data.columns[1:-1]]
y=data.Species
model = keras.Sequential()
model.add(layers.Dense(3,input_dim=4,activation='softmax'))
model.summary()
##顺序编码loss函数用sparse_categorical_crossentropy
model.compile(optimizer='adam',loss='sparse_categorical_crossentropy',metrics=['acc']) history = model.fit(x,y,epochs=100)
文章图片
文章图片
模型预测
model.predict(pd.DataFrame([[7.7,3.0,6.6,2.3]]))
【Keras|五 softmax多分类实例】
文章图片
推荐阅读
- tensorflow|四. softmax多分类
- Unity3D|Unity3D ML-Agent-0.8.1 学习一(基础教程)
- 机器学习|无源域适应(SFDA)方向的领域探究和论文复现(第二部分)
- 深度学习|深度学习-视频行为识别(论文阅读——双流网络(Two-stream convolutional networks for action recognition in videos))
- 深度学习之医学图像分割论文|[深度学习论文笔记]使用多模态MR成像分割脑肿瘤的HNF-Netv2
- 深度学习之医学图像分割论文|[深度学习论文笔记]UCTransNet:从transformer的通道角度重新思考U-Net中的跳跃连接
- 多模态融合|多模态融合
- 深度学习之医学图像分割论文|[深度学习论文笔记]UNETR: Transformers for 3D Medical Image Segmentation
- 论文阅读笔记|双流网络泛读【Two-Stream Convolutional Networks for Action Recognition in Videos】