zoukankan      html  css  js  c++  java
  • keras人工神经网络构建入门

    //2019.07.29-30
    1、Keras 是提供一些高度可用神经网络框架的 Python API ,能帮助你快速的构建和训练自己的深度学习模型,它的后端是 TensorFlow 或者 Theano


    2、Keras 被认为是构建神经网络的未来,以下是一些它流行的原因:
    (1)轻量级和快速开发:Keras的目的是在消除样板代码。几行Keras代码就能比原生的 TensorFlow 代码实现更多的功能。你也可以很轻松的实现 CNN和RNN,并且让它们运行在 CPU 或者 GPU 上面。
    (2)框架的“赢者”:Keras是一个API,运行在别的深度学习框架上面。这个框架可以是 TensorFlow 或者 Theano。Microsoft也计划让CNTK作为Keras的一个后端。目前,神经网络框架世界是非常分散的,并且发展非常快。
    想象一下,我们每年都要去学习一个新的框架,这是多么的痛苦。到目前为止,TensorFlow 似乎成为了一种潮流,并且越来越多的框架开始为 Keras 提供支持,它可能会成为一种标准。
    3、目前,Keras 是成长最快的一种深度学习框架。因为可以使用不同的深度学习框架作为后端,这也使得它成为了流行的一个很大的原因。你可以设想这样一个场景,如果你阅读到了一篇很有趣的论文,并且你想在你自己的数据集上面测试这个模型。让我们再次假设,你对TensorFlow非常熟悉,但是对Theano了解的非常少。那么,你必须使用TensorFlow 对这个论文进行复现,但是这个周期是非常长的。但是,如果现在代码是采用Keras写的,那么你只要将后端修改为TensorFlow就可以使用代码了。这将是对社区发展的一个巨大的推动作用。


    4、利用Keras的theano框架搭建一个人工神经网络:
    import numpy as np
    import pandas as pd
    from keras.models import Sequential
    from keras.layers import Dense,Activation
    from keras.optimizers import SGD
    from sklearn.datasets import load_iris #导入Keras人工神经网络搭建模块和导入原始数据
    iris=load_iris()
    print(iris["target"])
    from sklearn.preprocessing import LabelBinarizer
    print(LabelBinarizer().fit_transform(iris["target"]))
    from sklearn.model_selection import train_test_split
    train_data,test_data, train_target, test_target=train_test_split(iris.data,iris.target,test_size=0.2,random_state=1)
    labels_train=LabelBinarizer().fit_transform(train_target)
    labels_test=LabelBinarizer().fit_transform(test_target)

    model=Sequential(
    [
    Dense(5,input_dim=4),
    Activation("relu"),
    Dense(3),
    Activation("sigmoid"), #搭建数据神经网络的结构(输入输出的形式和数量)
    ]
    )
    #model=Sequential()
    sgd=SGD(lr=0.01,decay=1e-6,momentum=0.9,nesterov=True)
    model.compile(optimizer=sgd,loss="categorical_crossentropy")
    model.fit(train_data,labels_train,nb_epoch=200,batch_size=40) #进行数据的训练
    print(model.predict_classes(test_data)) #输出测试集的预测结果

  • 相关阅读:
    SpringMVC+bootstrap-fileinput文件上传插件使用入门
    [Java]实现Comparable接口不严谨导致Comparison method violates its general contract!
    2021寒假ACM集训队第一次训练-搜索(一)
    第八届“图灵杯”NEUQ-ACM程序设计竞赛个人赛-热身赛
    2021蓝桥杯第三次训练赛
    2021年蓝桥杯第二次训练赛
    2021年蓝桥杯第一次训练赛
    HDU 1312 Red and Black
    HDU 1010 Tempter of the Bone
    HDU 3500 Fling
  • 原文地址:https://www.cnblogs.com/Yanjy-OnlyOne/p/11269454.html
Copyright © 2011-2022 走看看