tensorflow实现非线性回归

本文通过TensorFlow实现非线性回归,利用梯度下降法训练数据集(y = x^2 + noise),构建并前向传播神经网络,以解决非线性问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

模拟非线性回归,给定一些二维点,y = x^2 + noise,用梯度下降进行训练,实线前向传播神经网络。


import tensorflow as tf
import numpy as np
import matplotlib.pyplot as plt


#生成随机变量
x_data = np.linspace(-1, 1, 200)#生成200个随机点,范围为-1 --> 1
x_data = x_data.reshape((200, 1))#维度设置为(200, 1)
noise = np.random.normal(0, 0.02, x_data.shape)#生成干扰项

y_data = np.square(x_data) + noise

x = tf.placeholder(tf.float32, [200, 1])
y = tf.placeholder(tf.float32, [200, 1])

#定义神经网络中间层权值
weights_l1 = tf.Variable(tf.random_normal([1, 10]))#10个神经元
biases_l1 = tf.Variable(tf.zeros([1, 10]))
wx_plust_b_l1 = tf.matmul(x, weights_l1) + biases_l1
l1 = tf.nn.tanh(wx_plust_b_l1)#双曲正切函数作为激活函数

#定义输出层
weights_l2 = tf.Variable(tf.random_normal([10, 1]))#输出层1个神经元
biases_l2 = tf.Variable(t
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值