python拟合三维平面_tensorflow实现二维平面模拟三维数据教程

我就废话不多说了,直接上代码吧!

#!/bin/bash

# -*-coding=utf-8-*-

import re

import os

import sys

import numpy as np

import tensorflow as tf

'''

程序生成了一些三维数据, 然后用一个平面拟合它.

'''

if __name__ == '__main__':

x_data = np.float32(np.random.rand(2, 100))

y_data = np.dot([0.100, 0.200], x_data) + 0.300

# 构造一个线性模型

#

b = tf.Variable(tf.zeros([1]))

W = tf.Variable(tf.random_uniform([1, 2], -1.0, 1.0))

y = tf.matmul(W, x_data) + b

# 最小化方差

loss = tf.reduce_mean(tf.square(y - y_data))

optimizer = tf.train.GradientDescentOptimizer(0.5)

train = optimizer.minimize(loss)

# 初始化变量

init = tf.initialize_all_variables()

# 启动图 (graph)

with tf.Session() as sess:

sess.run(init)

# 拟合平面

for step in range(0, 201):

sess.run(train)

if step % 20 == 0:

print(step, sess.run(W), sess.run(b))

pass

运行结果:

0 [[-0.17184146 0.86964405]] [ 0.1381081]

20 [[ 0.08097319 0.36775881]] [ 0.21781394]

40 [[ 0.10813832 0.2485593 ]] [ 0.26939642]

60 [[ 0.10546865 0.2152364 ]] [ 0.28894189]

80 [[ 0.10238092 0.20503291]] [ 0.29606038]

100 [[ 0.10091752 0.20171218]] [ 0.29860607]

120 [[ 0.10033666 0.20059179]] [ 0.29950845]

140 [[ 0.10012084 0.20020625]] [ 0.29982695]

160 [[ 0.10004292 0.20007218]] [ 0.29993913]

180 [[ 0.10001516 0.20002531]] [ 0.29997858]

200 [[ 0.10000535 0.2000089 ]] [ 0.29999247]

最佳拟合结果 W: [[0.100 0.200]], b: [0.300]

以上这篇tensorflow实现二维平面模拟三维数据教程就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值