训练一个简单回归问题的神经网络。 创建输入、变量、神经网络操作、均方误差损失、梯度下降优化器,并使用小批量数据运行优化器。
# -*- coding: utf-8 -*-
import os
import warnings
os.environ['TF_CPP_MIN_LOG_LEVEL']='3'
warnings.filterwarnings('ignore')
import tensorflow as tf
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.cm as cm
import matplotlib.patches as mpatches
def tf_reset():
try:
sess.close()
except:
pass
tf.reset_default_graph()
return tf.Session()
#4. How to train a neural network for a simple regression problem
inputs = np.linspace(-2*np.pi, 2*np.pi, 10000)[:, None]
outputs = np.sin(inputs) + 0.05 * np.random.normal(size=[len(inputs),1])
plt.scatter(inputs[:, 0], outputs[:, 0], s=0.1, color='k', marker='o')
sess =tf_reset()
def create_model():
#create inputs
input_ph=tf.placeholder(dtype=tf.float32,shape=[None,1])
output_ph =tf.pl