TensorFlow的初次使用+Python画3D图和计算KL散度

摘要:
Python计算KL散度importnumberyasnimportscipy。statsx=[np.random.randint(1,11)foriinrange(10)]打印(x)打印(np.sum(x))px=x/np。sum(x)#标准化打印(px)y=[np.random.randint(1,11)foriinrange(10)]打印(y)打印(np.sum(y
ython计算KL散度
import
numpy as np import scipy.stats x = [np.random.randint(1,11) for i in range(10)] print(x) print(np.sum(x)) px = x/np.sum(x)#归一化 print(px) y = [np.random.randint(1, 11) for i in range(10)] print(y) print(np.sum(y)) py = y / np.sum(y)#归一化 print(py) ## scipy计算函数可以处理非归一化情况,因此这里使用# scipy.stats.entropy(x, y)或scipy.stats.entropy(px, py)均可 KL = scipy.stats.entropy(x, y) print(KL) #自己编程实现 kl= 0.0 for i in range(10): kl += px[i] * np.log(px[i]/py[i]) print(kl)
#TensorFlow的神经网络

import
sys; sys.path.append("/home/hxj/anaconda3/lib/python3.6/site-packages") import tensorflow as tf import numpy as np x_data = np.random.rand(100).astype(np.float32) y_data = x_data*0.1+0.3 print(x_data) print(y_data) Weights = tf.Variable(tf.random_uniform([1], -1.0, 1.0)) biases = tf.Variable(tf.zeros([1])) y = Weights*x_data + biases print(y) loss = tf.reduce_mean(tf.square(y-y_data)) optimizer = tf.train.GradientDescentOptimizer(0.5) train = optimizer.minimize(loss) init = tf.global_variables_initializer() sess = tf.Session() sess.run(init) for step in range(201): sess.run(train) if step % 20 == 0: print(step, sess.run(Weights), sess.run(biases))
#Python画2D图
from
functools import partial import numpy from matplotlib import pyplot # Define a PDF x_samples = numpy.arange(-3, 3.01, 0.01) PDF = numpy.empty(x_samples.shape) PDF[x_samples < 0] = numpy.round(x_samples[x_samples < 0] + 3.5) / 3 PDF[x_samples >= 0] = 0.5 * numpy.cos(numpy.pi * x_samples[x_samples >= 0]) + 0.5 PDF /= numpy.sum(PDF) # Calculate approximated CDF CDF = numpy.empty(PDF.shape) cumulated = 0 for i in range(CDF.shape[0]): cumulated += PDF[i] CDF[i] = cumulated # Generate samples generate = partial(numpy.interp, xp=CDF, fp=x_samples) u_rv = numpy.random.random(10000) x = generate(u_rv) # Visualization fig, (ax0, ax1) = pyplot.subplots(ncols=2, figsize=(9, 4)) ax0.plot(x_samples, PDF) ax0.axis([-3.5, 3.5, 0, numpy.max(PDF)*1.1]) ax1.hist(x, 100) pyplot.show()

TensorFlow的初次使用+Python画3D图和计算KL散度第1张

#Python画3D图

import
matplotlib.pyplot as plt import numpy as np from mpl_toolkits.mplot3d import Axes3D np.random.seed(42) # 采样个数500 n_samples = 500 dim = 3 # 先生成一组3维正态分布数据,数据方向完全随机 samples = np.random.multivariate_normal( np.zeros(dim), np.eye(dim), n_samples ) # 通过把每个样本到原点距离和均匀分布吻合得到球体内均匀分布的样本 for i in range(samples.shape[0]): r = np.power(np.random.random(), 1.0/3.0) samples[i] *= r / np.linalg.norm(samples[i]) upper_samples = [] lower_samples = [] for x, y, z in samples: # 3x+2y-z=1作为判别平面 if z > 3*x + 2*y - 1: upper_samples.append((x, y, z)) else: lower_samples.append((x, y, z)) fig = plt.figure('3D scatter plot') ax = fig.add_subplot(111, projection='3d') uppers = np.array(upper_samples) lowers = np.array(lower_samples) # 用不同颜色不同形状的图标表示平面上下的样本 # 判别平面上半部分为红色圆点,下半部分为绿色三角 ax.scatter(uppers[:, 0], uppers[:, 1], uppers[:, 2], c='r', marker='o') ax.scatter(lowers[:, 0], lowers[:, 1], lowers[:, 2], c='g', marker='^') plt.show()

TensorFlow的初次使用+Python画3D图和计算KL散度第2张

免责声明:文章转载自《TensorFlow的初次使用+Python画3D图和计算KL散度》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇laravel架构Top Crypto Market Makers, Rated and Reviewed下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

五. python 字符串方法函数

一 .字符串方法函数 什么是字符串就是以 单引号或者双引号引起来的任意文本'ancask的库时时刻刻'"ABC事实就是惊声尖叫 1. 创建字符串: str1="abcde骨灰盒fgaa" str2="abcde吾问无为谓fgaa" str3="abcdefg少时诵诗书所所aa" 2.字符串运算连接 str6="SKSDK就是死你KsbDSKDKSKK" s...

python AES加密 ECB PKCS5

class AesEbc16:  # 按块的大小, 一块一块的加密, 明文和密文长度一样   def __init__(self):     self.key = b"123qweqqqwerqwer"  # 加密和解密用同一个秘钥, 长度为 每块的长度     self.mode = AES.MODE_ECB  # ECB加密模式, 也是默认的模式, 创...

Python 开发安卓Android及IOS应用库Kivy安装尝试

Python 开发安卓Android及IOS应用库Kivy安装尝试: 先来看看这货可以用来制作什么应用: Create a package for Windows Create a package for Android Creating packages for OS X Create a package for IOS 逆天的节奏啊,虽然600+页...

Python3 -- 查看python安装路径以及pip安装的包列表及路径

1. 查看python路径终端输入命令: whereis python 假设你的电脑上同时安装了python2和python3,可以使用使用以下命令分别查看其安装路径: whereis python2 whereis python3 2.查看使用pip安装的软件包默认python3 pip list python2查看pip安装的软件包名称及版本 pyth...

tf.Session()函数的参数应用(tensorflow中使用tf.ConfigProto()配置Session运行参数&amp;amp;&amp;amp;GPU设备指定)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/dcrmg/article/details/79091941 tf.ConfigProto()函数用在创建session的时候,用来对session进行参数配置: config = tf.Config...

python系列之(3)爬取豆瓣图书数据

上次介绍了beautifulsoup的使用,那就来进行运用下吧。本篇将主要介绍通过爬取豆瓣图书的信息,存储到sqlite数据库进行分析。 1.sqlite SQLite是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。它是一个零配置的数据库,这意味着与其他数据库一样,您不需要在系统中配置。 就像其他数据库,SQLite...