tensorflow实现二维平面模拟三维数据教程

(编辑:jimmy 日期: 2024/9/24 浏览:2)

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

#!/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实现二维平面模拟三维数据教程就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

一句话新闻

一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?