我是靠谱客的博主 平常小笼包,最近开发中收集的这篇文章主要介绍【keras】应用实践(2) 非线性回归GitHub简介Keras实现,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

文章目录

  • GitHub
  • 简介
  • Keras实现

GitHub

https://github.com/calciferer/LearnKeras

简介

  • 通过一个简单的二次方程回归来学习Keras的使用
  • 需求:定义一个keras模型,让模型拟合这个回归方程
    y = 2 x 2 + 1 y=2x^2+1 y=2x2+1
  • 与线性回归类似,可以参考【keras】应用实践(1) 线性回归

Keras实现

  • 生成随机数据
    def gen_data(self):
        """
        生成x,y数据。这里拟合一个非线性函数 y = 2 * x^2 + 1
        """

        # 生成训练集数据
        # x从0到10,生成101个
        x_train = np.linspace(0, 10, 101)
        y_train = 2 * (x_train ** 2) + 1
        self.x_train = x_train
        self.y_train = y_train
        return x_train, y_train
  • 训练模型
    def trainByKeras(self):
        """
        通过Keras来训练
        """
        model = Sequential()
        model.add(Dense(units=20, input_dim=1, activation='relu'))
        model.add(Dense(units=1))
        model.compile('adam', loss='mse')
        model.fit(self.x_train, self.y_train, epochs=20000, batch_size=101)
        self.model = model
        return model
  • 解释
    这里采用含有20个单元的隐藏层,每个单元的激活函数为Relu
    输出层1个单元
    梯度下降算法为Adam
  • 结果
    在这里插入图片描述
    最后的loss为:
loss: 0.8106

最后

以上就是平常小笼包为你收集整理的【keras】应用实践(2) 非线性回归GitHub简介Keras实现的全部内容,希望文章能够帮你解决【keras】应用实践(2) 非线性回归GitHub简介Keras实现所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(64)

评论列表共有 0 条评论

立即
投稿
返回
顶部