module ‘plotting‘ has no attribute ‘EpisodeStats‘

plotting.py 的版本不同,可以使用下列版本

reinforcement-learning/lib/plotting.py at master · dennybritz/reinforcement-learning · GitHubImplementation of Reinforcement Learning Algorithms. Python, OpenAI Gym, Tensorflow. Exercises and Solutions to accompany Sutton's Book and David Silver's course. - reinforcement-learning/lib/plotting.py at master · dennybritz/reinforcement-learningicon-default.png?t=N7T8https://github.com/dennybritz/reinforcement-learning/blob/master/lib/plotting.py

import matplotlib
import numpy as np
import pandas as pd
from collections import namedtuple
from matplotlib import pyplot as plt
from mpl_toolkits.mplot3d import Axes3DEpisodeStats = namedtuple("Stats",["episode_lengths", "episode_rewards"])def plot_cost_to_go_mountain_car(env, estimator, num_tiles=20):x = np.linspace(env.observation_space.low[0], env.observation_space.high[0], num=num_tiles)y = np.linspace(env.observation_space.low[1], env.observation_space.high[1], num=num_tiles)X, Y = np.meshgrid(x, y)Z = np.apply_along_axis(lambda _: -np.max(estimator.predict(_)), 2, np.dstack([X, Y]))fig = plt.figure(figsize=(10, 5))ax = fig.add_subplot(111, projection='3d')surf = ax.plot_surface(X, Y, Z, rstride=1, cstride=1,cmap=matplotlib.cm.coolwarm, vmin=-1.0, vmax=1.0)ax.set_xlabel('Position')ax.set_ylabel('Velocity')ax.set_zlabel('Value')ax.set_title("Mountain \"Cost To Go\" Function")fig.colorbar(surf)plt.show()def plot_value_function(V, title="Value Function"):"""Plots the value function as a surface plot."""min_x = min(k[0] for k in V.keys())max_x = max(k[0] for k in V.keys())min_y = min(k[1] for k in V.keys())max_y = max(k[1] for k in V.keys())x_range = np.arange(min_x, max_x + 1)y_range = np.arange(min_y, max_y + 1)X, Y = np.meshgrid(x_range, y_range)# Find value for all (x, y) coordinatesZ_noace = np.apply_along_axis(lambda _: V[(_[0], _[1], False)], 2, np.dstack([X, Y]))Z_ace = np.apply_along_axis(lambda _: V[(_[0], _[1], True)], 2, np.dstack([X, Y]))def plot_surface(X, Y, Z, title):fig = plt.figure(figsize=(20, 10))ax = fig.add_subplot(111, projection='3d')surf = ax.plot_surface(X, Y, Z, rstride=1, cstride=1,cmap=matplotlib.cm.coolwarm, vmin=-1.0, vmax=1.0)ax.set_xlabel('Player Sum')ax.set_ylabel('Dealer Showing')ax.set_zlabel('Value')ax.set_title(title)ax.view_init(ax.elev, -120)fig.colorbar(surf)plt.show()plot_surface(X, Y, Z_noace, "{} (No Usable Ace)".format(title))plot_surface(X, Y, Z_ace, "{} (Usable Ace)".format(title))def plot_episode_stats(stats, smoothing_window=10, noshow=False):# Plot the episode length over timefig1 = plt.figure(figsize=(10,5))plt.plot(stats.episode_lengths)plt.xlabel("Episode")plt.ylabel("Episode Length")plt.title("Episode Length over Time")if noshow:plt.close(fig1)else:plt.show(fig1)# Plot the episode reward over timefig2 = plt.figure(figsize=(10,5))rewards_smoothed = pd.Series(stats.episode_rewards).rolling(smoothing_window, min_periods=smoothing_window).mean()plt.plot(rewards_smoothed)plt.xlabel("Episode")plt.ylabel("Episode Reward (Smoothed)")plt.title("Episode Reward over Time (Smoothed over window size {})".format(smoothing_window))if noshow:plt.close(fig2)else:plt.show(fig2)# Plot time steps and episode numberfig3 = plt.figure(figsize=(10,5))plt.plot(np.cumsum(stats.episode_lengths), np.arange(len(stats.episode_lengths)))plt.xlabel("Time Steps")plt.ylabel("Episode")plt.title("Episode per time step")if noshow:plt.close(fig3)else:plt.show(fig3)return fig1, fig2, fig3

详情:python - module 'plotting' has no attribute 'EpisodeStats' - Stack Overflowicon-default.png?t=N7T8https://stackoverflow.com/questions/62287080/module-plotting-has-no-attribute-episodestats

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/17946.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何将云服务器上操作系统由centos切换为ubuntu

本文将介绍如何将我们购买的云服务器上之前装的centos切换为ubuntu,云服务器以华为云为例,要切换的ubuntu版本为ubuntu20.04。 参考官方文档:切换操作系统_弹性云服务器 ECS (huaweicloud.com) 首先打开华为云官网,登录后点击右…

MongoDB分片集群容灾方案

MongoDB分片集群容灾方案 1. 集群同步工具介绍1.1 第三方数据同步工具mongoshake1.2 官方同步工具mongosync 2. 工具对比2.1 数据一致性2.2 稳定性和可靠性2.3 维护成本 3. 总结 1. 集群同步工具介绍 最近客户咨询MongoDB分片集群市面上主流的容灾方案,所以抽空整理…

安卓六种页面加载优化方案对比总结

根据工作经验,笔者提炼了六种页面加载优化方式,按照业务与非业务,将六种加载方式分为两类: 业务类 控制业务与UI的执行顺序、控制多业务之间的执行顺序 ①预加载:是指在进入页面之前,提前获得页面所需得数据…

直播预告|中服云第5代`工业物联产品线上发布会

我国作为全球制造业的领军者,拥有世界上最完整且健全的制造业产业链。但随着各企业规模的扩大和设备的增加,企业设备管理面临的难点和挑战也越来越多。 为了满足企业不断提高的设备管理需求,中服云即将推出全新的“设备全生命周期管理系统5.…

机器学习之聚类学习

聚类算法 概念 根据样本之间相似性,将样本划分到不同类别种,不同相似度计算方法,会得到不同聚类结果,常用相似度计算方法为:欧氏距离 目的是在没有先验知识情况下,自动发现数据集种内在结构和模式 无监督…

告别裸奔,聊聊主流消息队列的认证和鉴权!

大家好,我是君哥。 我们在使用消息队列时,经常关注的是消息队列收发消息的功能。但好多时候需要对客户端有一定的限制,比如只有持有令牌的客户端才能访问集权,不允许 Producer 发送消息到某一个 Topic,或者某一个 Top…

人脸识别——Webface-OCC遮挡人脸识别算法解析

1. 概述 自2019年被誉为人脸识别技术的元年,各地纷纷引入这项技术。然而,自2020年起,为了抵御冠状病毒(COVID-19)的全球传播,人们普遍开始佩戴口罩。众所周知,现有人脸识别模型在面对遮挡物&am…

Dalle2学习

Dalle2 mini有GitHub库并且有网页可以直接测试

网络之再谈体系结构

大家都知道的是网络的体系结构,现代软件常用的体系结构无非是TCP/IP协议栈,OSI因为实现复杂并且效率没有TCP/IP协议栈好,所以不用OSI,但是,最近在复习网络知识的时候,发现了一些奇怪的地方,那就…

C/C++连接MySQL

本章Gitee仓库地址:mysql连接基本操作 文章目录 1. mysql connect库2. mysql相关接口2.1 mysql_init()2.2 mysql_real_connect()2.3 mysql_query()2.4 mysql_store_result()2.41 mysql_num_rows2.42 mysql_num_fields2.43 mysql_fetch_row2.44 mysql_fetch_fields 2…

中国上市企业行业异质性数据分析

数据简介:企业行业异质性数据是指不同行业的企业在运营、管理、财务等方面的差异性数据。这些数据可以反映不同行业企业的特点、优势和劣势,以及行业间的异质性对企业经营和投资的影响。通过对企业行业异质性数据的分析,投资者可以更好地了解…

STM32系列-STM32介绍

🌈个人主页:羽晨同学 💫个人格言:“成为自己未来的主人~” STM32介绍 STM32介绍 ST:指的是意法半导体 M:指定微处理器 32:表示计算机处理器位数 ARM分成三个系列: Cortex-A&#xff1…

Python读取Excel表格文件并绘制多列数据的曲线图

本文介绍基于Python语言,读取Excel表格数据,并基于给定的行数范围内的指定列数据,绘制多条曲线图,并动态调整图片长度的方法。 首先,我们来明确一下本文的需求。现有一个.csv格式的Excel表格文件,其第一列为…

Sqoop的安装与测试

这里写目录标题 什么是Sqoop?Sqoop的安装与配置安装测试 什么是Sqoop? Sqoop就是hadoop和mysql的一个中间介质 , 作用就是可以将hadoop中的数据传到mysql中 , 或将mysql中的数据导入到hadoop中 Sqoop的安装与配置 安装 详细代码 //解压安装 [roothadoop soft]# tar -zxv…

【漏洞复现】用友NC registerServlet JNDI 远程代码执行漏洞(XVE-2024-10248)

0x01 产品简介 用友NC是 用友软件股份有限公司开发的一套企业级管理软件系统。它是一个基于互联网的多层应用系统,旨在为中大型企业提供全面、集成的管理解决方案。是一种商业级的企业资源规划云平台,为企业提供全面的管理解决方案,包括财务…

SwiftUI中EnvironmentObject的使用(多界面共享数据)

SwiftUI的EnvironmentObject是一个强大的工具,它允许你在多个视图之间共享数据(使用一个可观察对象)。当你有一个复杂的视图层次结构,并且需要在没有直接连接的视图之间共享相同的可观察对象时,它特别有用。 我们之前传递数据主要是通过init…

SOLIDWORKS正版一年多少钱 2024版报价

SOLIDWORKS软件作为一款优秀的三维设计工具,以其强大的功能和优质的设计工具,为设计师们提供了前所未有的便利。SOLIDWORKS三维设计软件是一款多科学集成软件,它在产品开发和制造方面发挥着重要作用。 作为整个SOLIDWORKS产品开发解决方案套件…

SQL使用函数给多个分表添加同一字段

数据库中分表时,往往需要向多个分表中添加同一个字段,可以定义一个函数,每次调用这个函数向多个份表中添加同意字段。 1、创建函数示例: 在PostgreSQL中创建一个简单的函数 以下是一个在PostgreSQL中创建函数的简单示例&#x…

SEO之核心关键词(二)

初创企业或者需要建站的朋友看以下两篇文章,谢谢支持: 我给不会敲代码又想搭建网站的人建议新手上云 (接上一篇。。。。) 4、查询搜索次数 经过自己及朋友、同事的头脑风暴和检查竞争对手网站之后,再到Google 关键词…

用天工AI写文章,节约了8个人的成本

关注卢松松,会经常给你分享一些我的经验和观点。 当下AI工具最大的问题是什么? 是写的文章没有灵魂、没有感情、像机器人! 生成的文章官话连篇,人们一眼就看出是AI写的,这种文章怎么能给客户交差呢?自己这关都过不去,是吧? …