zoukankan      html  css  js  c++  java
  • tensorflow学习006——多层感知器(神经网络)的代码实现

    2.5多层感知器(神经网络)的代码实现

    需要文件的链接:https://pan.baidu.com/s/1qw30xhWnezLfDZln2_CbBg
    提取码:guzz

    点击查看代码
    import pandas as pd
    data = pd.read_csv("./dataset/Advertising.csv") #将上面下载下来的文件放在代码目录下的dataset目录
    print(data.head())
    

    image
    图2-12
    这次的数据如图2-12所示,分别表示再TV,radio,newspaper上投入广告的费用以及最后产生的销量sales
    直接上可运行代码

    点击查看代码
    import tensorflow as tf
    import pandas as pd
    import numpy as np
    import matplotlib.pyplot as plt
    
    data = pd.read_csv("./dataset/Advertising.csv")
    # print(data.head())
    x = data.iloc[:,1:-1] #所有的行以及除了第一列和最后一列
    y = data.iloc[:,-1] #所有的行以及最后一列
    model = tf.keras.Sequential(
        #添加激活函数,增加非线性拟合效果
        [tf.keras.layers.Dense(10,input_shape=(3,),activation='relu'), #第一层是10个神经元,也就是第一层的输出是10个,输入是(3,),因为每组数据都是由三个输入数据构成
         tf.keras.layers.Dense(1)] #第二层,一个神经元,输出为1个,也即是最后的销量结果
    )
    print(model.summary())
    
    model.compile(optimizer='adam',loss='mse')
    model.fit(x,y,epochs=100)
    #预测前10个训练集中的数据
    print(model.predict(data.iloc[:10,1:-1]))
    print(data.iloc[:10,-1]) #输出真实结果
    

    image
    图2-13
    上面代码产生的模型结构如图2-13所示,第一层中间是10个神经元,参数是40,40=10*(3+1) 其中3表示是对输入的三个量的权重,1是每个神经元的bias偏置。


    作者:孙建钊
    出处:http://www.cnblogs.com/sunjianzhao/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    activity 之间传递参数
    手动创建一个Activity,完成页面跳转(intent 无参数)
    C++中汉字字符串的截取
    android基础知识清单。
    更改远程仓库
    设计模式六大原则
    事件订阅代码
    Python Mac ssl.SSLError certificate verify failed (_ssl.c:833)
    Python库中常见的 __all__ 变量是干啥的
    Thrift的使用-Python
  • 原文地址:https://www.cnblogs.com/sunjianzhao/p/15552010.html
Copyright © 2011-2022 走看看