keras基于多层感知器的softmax多分类 – kerl


keras基于多层感知器的softmax多分类

# 基于多层感知器的softmax多分类:
```
from keras.models import Sequential
from keras.layers import Dense, Dropout, Activation
from keras.optimizers import SGD
import numpy as np

x_train = np.random.random((1000, 20))
y_train = keras.utils.to_categorical(np.random.randint(10, size=(1000, 1)), num_classes=10)
x_test = np.random.random((100, 20))
y_test = keras.utils.to_categorical(np.random.randint(10, size=(100, 1)), num_classes=10)

model = Sequential()

model.add(Dense(64, activation=\'relu\',input_dim=20)
model.add(Dropout(0.5))
model.add(Dense(64, activation=\'relu\'))
model.add(Dropout(0.5))
model.add(Dense(10, activation=\'softmax\'))
sgd = SGD(lr=0.01, decay=1e-6, momentum=0.9, nesterov=True)
model.compile(loss=\'categorical_crossentropy\',optimizer=sgd,
metrics=[\'accuracy\'])

model.fit(x_train, y_train,epochs=20,batch_size=128)
score = model.evaluate(x_test, y_test, batch_size=128)
```

# MLP的二分类:
```
import numpy as np
from keras.models import Sequential
from keras.layers import Dense, Dropout

x_train = np.random.random((1000, 20))
y_train = np.random.randint(2, size=(1000, 1))
x_test = np.random.random((100, 20))
y_test = np.random.randint(2, size=(100, 1))

model = Sequential()
model.add(Dense(64, input_dim=20, activation=\'relu\'))
model.add(Dropout(0.5))
model.add(Dense(64, activation=\'relu\'))
model.add(Dropout(0.5))
model.add(Dense(1, activation=\'sigmoid\'))

model.compile(loss=\'binary_crossentropy\',
optimizer=\'rmsprop\',
metrics=[\'accuracy\'])
model.fit(x_train, y_train,
epochs=20,
batch_size=128)
score = model.evaluate(x_test, y_test, batch_size=128)
```
# 类似VGG的卷积神经网络:
```
import numpy as np
import keras
from keras.models import Sequential
from keras.layers import Dense, Dropout, Flatten
from keras.layers import Conv2D, MaxPooling2D
from keras.optimizers import SGD

x_train = np.random.random((100, 100, 100, 3))
y_train = keras.utils.to_categorical(np.random.randint(10, size=(100, 1)), num_classes=10)
x_test = np.random.random((20, 100, 100, 3))
y_test = keras.utils.to_categorical(np.random.randint(10, size=(20, 1)), num_classes=10)

model = Sequential()

model.add(Conv2D(32, (3, 3), activation=\'relu\', input_shape=(100, 100, 3)))
model.add(Conv2D(32, (3, 3), activation=\'relu\'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))

model.add(Conv2D(64, (3, 3), activation=\'relu\'))
model.add(Conv2D(64, (3, 3), activation=\'relu\'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))

model.add(Flatten())
model.add(Dense(256, activation=\'relu\'))
model.add(Dropout(0.5))
model.add(Dense(10, activation=\'softmax\'))

sgd = SGD(lr=0.01, decay=1e-6, momentum=0.9, nesterov=True)
model.compile(loss=\'categorical_crossentropy\', optimizer=sgd)

model.fit(x_train, y_train, batch_size=32, epochs=10)
score = model.evaluate(x_test, y_test, batch_size=32)
```
# 使用LSTM的序列分类
```
from keras.models import Sequential
from keras.layers import Dense, Dropout
from keras.layers import Embedding
from keras.layers import LSTM

model = Sequential()
model.add(Embedding(max_features, output_dim=256))
model.add(LSTM(128))
model.add(Dropout(0.5))
model.add(Dense(1, activation=\'sigmoid\'))

model.compile(loss=\'binary_crossentropy\',
optimizer=\'rmsprop\',
metrics=[\'accuracy\'])

model.fit(x_train, y_train, batch_size=16, epochs=10)
score = model.evaluate(x_test, y_test, batch_size=16)
```

# 使用1D卷积的序列分类
```
from keras.models import Sequential
from keras.layers import Dense, Dropout
from keras.layers import Embedding
from keras.layers import Conv1D, GlobalAveragePooling1D, MaxPooling1D

model = Sequential()
model.add(Conv1D(64, 3, activation=\'relu\', input_shape=(seq_length, 100)))
model.add(Conv1D(64, 3, activation=\'relu\'))
model.add(MaxPooling1D(3))
model.add(Conv1D(128, 3, activation=\'relu\'))
model.add(Conv1D(128, 3, activation=\'relu\'))
model.add(GlobalAveragePooling1D())
model.add(Dropout(0.5))
model.add(Dense(1, activation=\'sigmoid\'))

model.compile(loss=\'binary_crossentropy\',
optimizer=\'rmsprop\',
metrics=[\'accuracy\'])

model.fit(x_train, y_train, batch_size=16, epochs=10)
score = model.evaluate(x_test, y_test, batch_size=16)
```

发表于
2020-06-02 10:48 
kerl 
阅读(618
评论(0
编辑 
收藏 
举报
 

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:keras基于多层感知器的softmax多分类 – kerl - Python技术站

(0)
上一篇 2023年4月8日 上午9:48
下一篇 2023年4月8日

相关文章

  • 使用TensorRT对caffe和pytorch onnx版本的mnist模型进行fp32和fp16 推理 | tensorrt fp32 fp16 tutorial with caffe pytorch minist model

    本文首发于个人博客https://kezunlin.me/post/bcdfb73c/,欢迎阅读最新内容! tensorrt fp32 fp16 tutorial with caffe pytorch minist model Part 1: install and configure tensorrt 4 on ubuntu 16.04 Part 2: t…

    Caffe 2023年4月5日
    00
  • 每天进步一点点——Sobel算子(3)基于彩色图像边缘差分的运动目标检测算法

     摘  要: 针对目前常用的运动目标提取易受到噪声影响、易出现阴影和误检漏检等情况,提出了一种基于Sobel算子的彩色边缘图像检测和帧差分相结合的检测方法。首先用Sobel算子提取视频流中连续4帧图像的彩色边缘图像,然后将边缘图像进行隔帧差分相与,提取出较精确的运动目标边缘轮廓。提取的轮廓经过一系列的形态学操作填充,可得到完整的运动目标。实验结果表明,该方法…

    目标检测 2023年4月7日
    00
  • ubuntu+python基础-3 tensorflow第一个程序

    1 from tensorflow.examples.tutorials.mnist import input_data 2 mnist = input_data.read_data_sets(‘MNIST_data’, one_hot=True) 3 # 下载下来的数据集被分成两部分:60000行的训练数据集(mnist.train)和10000行的测试数…

    tensorflow 2023年4月6日
    00
  • 【483】Keras 中 LSTM 与 BiLSTM 语法

    参考:Keras-递归层Recurrent官方说明 参考:Keras-Bidirectional包装器官方说明 LSTM(units=32, input_shape=(10, 64)) units=32:输出神经元个数 input_shape=(10, 64):输入数据形状,10 代表时间序列的长度,64 代表每个时间序列数据的维度 LSTM(units=3…

    Keras 2023年4月7日
    00
  • Win10+1050Ti配置Tensorflow教程

    Win10+1050Ti配置Tensorflow教程 笔者使用的是联想Y7000笔记本,显卡是1050Ti,在安装TensorFlow时,发现自己的显卡型号并不在NVDIA官网上支持型号的名单中,于是网上看了很多教程,很多都有问题(或者不适用于我这台电脑),踩了许多坑,总结很多之后最终配置成功,在这留下详细步骤。 NVDIA官网支持的显卡型号 可以看到并没有…

    2023年4月8日
    00
  • 使用PyTorch从零开始构建Elman循环神经网络

    本文以最简单的RNNs模型为例:Elman循环神经网络,讲述循环神经网络的工作原理,即便是你没有太多循环神经网络(RNNs)的基础知识,也可以很容易的理解。为了让你更好的理解RNNs,我们使用Pytorch张量包和autograd库从头开始构建Elman循环神经网络。该文中完整代码在Github上是可实现的。 在这里,假设你对前馈神经网络略有了解。Pytor…

    2023年4月8日
    00
  • keras 学习笔记(一) ——— model.fit & model.fit_generator

    from keras.preprocessing.image import load_img, img_to_array a = load_img(‘1.jpg’) b = img_to_array(a) print (type(a),type(b)) 输出:  a type:<class ‘PIL.JpegImagePlugin.JpegImageF…

    2023年4月8日
    00
  • [pytorch修改]npyio.py 实现在标签中使用两种delimiter分割文件的行

    from __future__ import division, absolute_import, print_function import io import sys import os import re import itertools import warnings import weakref from operator import itemg…

    PyTorch 2023年4月8日
    00
合作推广
合作推广
分享本页
返回顶部