Python
文章平均质量分 76
天寒心亦热
每天努力一点点,坚持就是胜利!
展开
-
在Windows11下安装完Ubuntu20.04双系统后配置环境的过程
在Windows11下安装完Ubuntu20.04双系统后配置环境的过程1.NVIDIA驱动检测及安装2.Anaconda的安装3.安装cuda、cudnn、pytorch4.其他报错原创 2023-12-23 00:57:03 · 1540 阅读 · 0 评论 -
Python-if __name__ == ‘__main__‘和collections.Mapping的用法
Python-if __name__ == '__main__'和collections.Mapping的用法原创 2023-08-26 15:50:00 · 138 阅读 · 0 评论 -
强化学习-深度确定性策略梯度(第5章)
强化学习-深度确定性策略梯度(第5章)原创 2023-08-16 18:49:39 · 203 阅读 · 0 评论 -
强化学习-信任区域策略优化和近端策略优化(第7章)
强化学习-信任区域策略优化和近端策略优化(第7章)原创 2023-08-11 16:59:50 · 281 阅读 · 0 评论 -
深度强化学习-DDPG代码阅读-AandC.py(2)
深度强化学习-DDPG代码阅读-AandC.py(1)编写AandC.py导入包定义权重和偏置初始化器定义ActorNetwork类定义self.update_target_network_params使用Adam优化定义create_actor_network()函数定义 Actor 函数定义CriticNetwork 类critic 目标网络定义create_critic_network()定义Critic函数原创 2023-04-19 10:26:09 · 1177 阅读 · 3 评论 -
深度强化学习-DDPG代码阅读-ddpg.py(1)
深度强化学习-DDPG代码阅读-ddpg.py(1)1.编写ddpg.py1.1 导入需要的包和其他的python文件1.2 定义训练函数train()1.3 定义测试函数test()1.4 定义主函数1.5 根据需要调用训练函数或者测试函数1.6 问题原创 2023-04-17 23:44:33 · 1611 阅读 · 8 评论 -
Python-pop()和popleft()方法
Python-pop()和popleft()函数字典和集合中的 pop() 方法删除元素是无序的,并且在删除时返回被删除的值。列表中的 pop() 方法删除元素是有序的,并且在删除时返回被删除的元素。在使用时,需要根据具体的数据类型和需求选择合适的 pop() 方法。原创 2023-04-17 17:15:30 · 3945 阅读 · 1 评论 -
Python-L1和L2正则化
Python-L1和L2正则化L1 正则化和 L2 正则化是在神经网络中常用的两种正则化技术,用于对权重参数进行惩罚,以减小过拟合现象。L1 正则化对权重参数施加了稀疏性惩罚,因此可以用于特征选择和模型压缩。而 L2 正则化对权重参数施加了平滑性惩罚,因此可以用于缓解共线性问题。原创 2023-04-17 13:45:33 · 947 阅读 · 0 评论 -
强化学习-Double DQN、竞争网络结构和Rainbow(第4章)
强化学习-Double DQN、竞争网络结构和Rainbow(第4章)1.Double DQN、竞争网络结构和Rainbow2.思考题原创 2023-04-26 19:43:44 · 795 阅读 · 0 评论 -
Python-DQN和Dueling Network代码对比阅读(15)-model.py
Python-DQN和Dueling Network代码对比阅读(15)-model.py(1)valuestream是前面定义的状态值网络的输出,输入大小为1(因为状态值是标量),为什么?(2)tf.reduce_mean()函数(3)tensorflow中axis的用法(4)tf.subtract()函数原创 2023-04-16 20:00:17 · 625 阅读 · 0 评论 -
Python-DQN和DDQN代码对比阅读(14)-ddpn.py
Python-DQN和DDQN代码对比阅读定义ALGO变量来选择算法 使用if语句对两种算法做出选择为什么DQN算法使用 np.amax(),DDQN算法使用np.argmax(),二者的区别和联系?one_batch是怎么可以保留终止状态信息的?如何判断done_batch是true还是false?DQN和DDQN算法的相同点和不同点?各自的优点和缺点?原创 2023-04-16 10:42:18 · 1642 阅读 · 0 评论 -
Python-DQN代码阅读(13)
Python-DQN代码阅读(13)data = np.loadtxt('performance.txt')mva = np.zeros((data.shape[0]), dtype=np.float)mva[i] = data[i,1]mva[i] = alpha * data[i,1] + (1.0 - alpha) * mva[i-1]plt.plot(data[:,0], data[:,1]) plt.plot(data[:,0], mva)原创 2023-04-15 23:54:00 · 897 阅读 · 0 评论 -
Python-DQN代码阅读(12)
Python-DQN代码阅读(12)程序终止的条件打印输出的time steps含义为何一个episode打印出来的time steps不一致?打印输出的episode_rewards含义?为何数值不一样,有大有小,还有零?total_t是怎么个变化情况和趋势?epsilon是怎么个变化趋势?len(replay_memory是怎么个变化趋势?原创 2023-04-15 21:07:04 · 787 阅读 · 0 评论 -
Python-DQN代码阅读(11)
Python-DQN代码阅读(11)scope="q",scope="target_q"q_net = QNetwork(scope="q", VALID_ACTIONS=VALID_ACTIONS)target_net = QNetwork(scope="target_q", VALID_ACTIONS=VALID_ACTIONS)原创 2023-04-15 00:36:58 · 287 阅读 · 1 评论 -
Python-DQN代码阅读(10)
Python-DQN代码阅读(10)1.2.1 f = open("experiments/" + str(env.spec.id) + "/performance.txt", "a+")1.2.2 f.write(str(ep) + " " + str(time_steps) + " " + str(episode_rewards) + " " + str(total_t) + " " + str( epsilon) + '\n')1.2.3f.close()1.2.4 env.spec.id原创 2023-04-15 00:21:22 · 371 阅读 · 0 评论 -
Python-DQN代码阅读(9)
Python-DQN代码阅读(8)replay_memory.pop(0)replay_memory.append(Transition(state, action, reward, next_state, done))samples = random.sample(replay_memory, batch_size)q_values_next = target_net.predict(sess, next_states_batch)原创 2023-04-14 23:03:07 · 476 阅读 · 0 评论 -
Python-DQN代码阅读(8)
Python-DQN代码阅读(8)action = np.random.choice(np.arange(len(action_probs)), p=action_probs)env.render()next_state_img, reward, done, info = env.step(VALID_ACTIONS[action])next_state_img = state_processor.process(sess, next_state_img)原创 2023-04-14 20:34:21 · 501 阅读 · 0 评论 -
Python-DQN代码阅读(7)
Python-DQN代码阅读(7)1.1设置ε值1.2 设置时间步长总数1.3主循环贯穿整个回合1.4跟踪时间步长1.5更新目标网络原创 2023-04-14 19:33:59 · 946 阅读 · 0 评论 -
Python-DQN代码阅读(6)-dpn.py
Python-DQN代码阅读(6)(1)导入所需要的包(2)设置游戏并选择有效的操作(3)设置模式(train/test)和开始迭代(4)创建环境(5)创建存储检查点文件的路径和目录(6)定义deep_q_learning()函数 (7)使用遇到的初始随机操作经验填充重放内存原创 2023-04-14 11:01:14 · 1044 阅读 · 0 评论 -
Python-DQN代码阅读-填充回放记忆(replay memory)(5)
Python-DQN代码阅读-填充回放记忆(replay memory)epsilon = max(epsilon_start - float(i) * delta_epsilon, epsilon_end)action_probs = policy(sess, state, epsilon)action = np.random.choice(np.arange(len(action_probs)), p=action_probs)env.render()原创 2023-04-13 21:28:22 · 1172 阅读 · 0 评论 -
Python-DQN代码阅读-初始化经验回放记忆(replay memory)(4)
Python-DQN代码阅读-初始化经验回放记忆(replay memory)state = state_processor.process(sess, state)state = np.stack([state] * 4, axis=2)计算每次更新的 epsilon 的变化量(delta_epsilon)replay_memory = [ ]原创 2023-04-13 20:03:51 · 1105 阅读 · 0 评论 -
Python-代码阅读-epsilon-greedy策略函数(3)
Python-代码阅读-epsilon-greedy策略函数np.ones(num_actions, dtype=float) / float(num_actions)np.expand_dims(observation, 0)max_Q_action = np.argmax(q_values)A[max_Q_action] = 1.0np.zeros(num_actions, dtype=float)原创 2023-04-13 19:31:08 · 1327 阅读 · 0 评论 -
Python列表推导式(for表达式)及用法
Python列表推导式(for表达式)及用法原创 2023-04-13 18:45:49 · 94 阅读 · 0 评论 -
Python-代码阅读-将一个神经网络模型的参数复制到另一个模型中(2)
这一行代码使用了列表推导式(List Comprehension)的结构,是一种简洁的 Python 编码方式,用于从一个可迭代对象中生成新的列表。列表进行排序,可以保证复制模型参数时的一致性,即按照变量名称的字典序对参数进行复制操作,从而确保了参数复制的顺序和对应关系一致。函数是 Python 内置函数,用于将多个列表中的元素按索引一一对应起来,生成一个新的可迭代对象(元组列表)。中的元素按索引一一对应起来,生成了一个包含元组的列表,其中每个元组中的第一个元素来自。在这行代码中,使用了。原创 2023-04-13 18:39:29 · 1069 阅读 · 0 评论 -
Python-代码阅读(1)-funcs.py
tf.variable_scope 函数placeholder占位符tf.image.rgb_to_grayscale函数tf.image.crop_to_bounding_box函数tf.image.resize_images函数tf.squeeze函数process 方法原创 2023-04-13 16:08:12 · 729 阅读 · 0 评论 -
Python-DQN-L1、L2和Huber损失
Python-L1、L2和Huber损失L1损失,也称为平均绝对误差(Mean Absolute Error,MAE),是一种在回归问题中使用的损失函数,用于衡量预测值与实际值之间的绝对差异。L2损失,也称为平方误差损失,是一种常用的回归问题中的损失函数,用于度量预测值与实际值之间的差异。Huber损失是一种在回归问题中使用的损失函数,用于平衡均方误差(MSE)和平均绝对误差(MAE)之间的权衡。原创 2023-04-13 14:03:14 · 2081 阅读 · 0 评论 -
Python-sorted()函数
sorted() 函数对所有可迭代的对象进行排序操作。转载 2023-04-10 11:22:14 · 50 阅读 · 0 评论 -
Python-arange()、reshape()和random.seed()的用法
Python-arange()、reshape()和random.seed()的用法原创 2023-04-06 17:18:34 · 701 阅读 · 0 评论 -
Python-np.expand_dims()
Python-np.expand_dims()用于扩展数组的维度。执行程序后注意观察中括号[ ]的位置和数量原创 2023-04-04 08:39:38 · 2670 阅读 · 0 评论 -
RGB彩图卷积过程
RGB彩图卷积过程原创 2023-04-03 20:41:48 · 133 阅读 · 0 评论 -
强化学习-深度Q网络(第3章)
强化学习-深度Q网络(第3章)深度 Q 网络 革新了强化学习领域。1.在连续控制问题中,不能用表格式的Q数组表示。2.DQN的一个有趣的特性是在训练过程中利用第二个网络,成为目标网络。第二个网络用于生成 target-Q值, 该 target-Q 值用于在训练过程中计算损失函数。3.DQNs 中的一个问题是使用 (𝑠,𝑎, 𝑟,𝑠′, done) 元组的连续样本, 它们是相关的, 因此训练可能会过拟合。为了缓解这个问题,使用重放缓冲区。原创 2023-04-02 18:54:13 · 561 阅读 · 0 评论 -
强化学习-时序差分、SARSA与Q-Learning(第2章)
强化学习-时序差分、SARSA与Q-Learning(第2章)1.在TD学习中,agent的学习是通过经验实现的。在环境下进行多次尝试,积累奖励用于更新价值函数。贝尔曼方程用于更新状态-动作价值函数,目标是最小化TD误差。2.SARSA 是一种同步策略的算法, 因为相同的策略被更新, 并用于估计𝑄值。对于探索,可以使用 𝜀-greedy算法。3.Q-Learning 是一个异步策略算法, 因为它使用在动作中评估的状态 - 动作价值函数, 这将最大化价值。原创 2023-04-02 09:08:08 · 457 阅读 · 0 评论 -
强化学习-强化学习的启动和运行(第1章)
《TensorFlow强化学习快速入门指南-使用Python动手搭建自学习的智能体》强化学习的启动和运行(第1章)原创 2023-03-31 17:05:03 · 321 阅读 · 0 评论 -
TensorFlow-tf.linspace
TensorFlow-tf.linspace沿给定轴在间隔内生成均匀间隔的值。原创 2023-03-28 11:09:18 · 216 阅读 · 0 评论 -
Python-assert(断言)的用法
Python-assert(断言)的用法原创 2023-03-27 15:56:19 · 5688 阅读 · 0 评论 -
Python-df.pop()和np.array.shape()属性
Python-df.pop()和np.array.shape()属性原创 2023-03-26 21:25:13 · 912 阅读 · 0 评论 -
Python-os.path.join()函数和numpy.concatenate()函数
Python-os.path.join()函数原创 2023-03-25 23:58:36 · 165 阅读 · 0 评论 -
Python-Anaconda 环境
Python-Anaconda 环境,Windows下启动TensorBoard原创 2023-03-20 15:38:00 · 344 阅读 · 0 评论 -
Python-生成元组和字典
Python-生成元组和字典使用()生成元组使用tuple函数生成元组使用divmod函数生成元组使用{}生成字典使用dict函数生成字典原创 2023-02-24 11:20:00 · 1371 阅读 · 0 评论 -
Python-PyCharm调试时中文出现乱码
Python-PyCharm调试时中文出现乱码注意:勾选方框可以解决pycharm调试中文乱码的问题,但会导致其他软件出现乱码原创 2023-02-24 00:14:12 · 839 阅读 · 0 评论