• tensorflow学习003——tf.keras实现线性回归


    2.2 tf.keras实现线性回归

    废话不多说,接上一篇机器学习原理——线性回归,直接上可运行代码

    点击查看代码
    import pandas as pd
    import tensorflow as tf
    data = pd.read_csv("./dataset/Income1.csv")
    x = data.Education #这是Income.csv表格中给出的列名
    y = data.Income
    model = tf.keras.Sequential()  #创建一个顺序模型
    #往模型中添加层 输出只有一个f(x)所以是,输入也只有x,也是一维,所以其元组形式为(1,)
    model.add(tf.keras.layers.Dense(1 ,input_shape=(1,)))
    #输出模型的结构
    print(model.summary()) #如图2-3所示
    #进行编译
    model.compile(optimizer='adam',loss='mse') #设置优化器和损失函数
    #进行训练
    history = model.fit(x,y,epochs=10000)  #epochs表示对所有的数据训练的次数 x y分别是训练的数据的输入和输出
    #使用训练的模型进行预测
    print(model.predict(pd.Series([20]))) #因为训练的时候使用的Series,所以预测的时候也一般使用这种格式
    

    image
    图2-3
    这里的dense层中的输出形状(None,1),None表示输出的个数,如果有一百个数据,那么None就是100.第二个1表示的就是输出的维度是1.
    Param是2,表示有两个参数,也就是ax+b中的a,b. b就是表示一个bias,也即是一个截距,如果不想要这个bias,可以在dense()层中将use_bias设置成False. 其中的a是一个权重

    image
    图2-4
    在训练的过程中,我们可以看到loss的值越来越小,也就是拟合效果越来越好,这设计到优化器和loss函数的计算方式


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

  • 相关阅读:
    DDOS攻击事件记录
    ansible批量安装zabbix客户端并实现自动发现功能
    利用api更新域名解析ip+端口转发【2】
    利用api更新域名解析ip+端口转发【1】
    网站春节开市休市设置
    获取内网路由器管理页面出口ip
    关于nginx加载配置文件的巨坑
    活动封禁刷票ip
    二十五个Python高级开发技巧,终极干货!建议收藏学习!
    一则故事带你秒懂Python GIL原理!
  • 原文地址:https://www.cnblogs.com/sunjianzhao/p/15551032.html
Copyright © 2020-2023  润新知