机器学习
VVeaker
CSDN基本不会再更新了,知识星球
展开
-
先挖个坑等着填DQN PolicyGradient
问题1.不能反向传播2.计算出的loss用不用加和平均import torch.nn as nnimport torch.nn.functional as Fimport torchimport gymimport numpy as npimport torch.optim as optimimport randomimport collectionsfrom torch.distributions import Categoricalclass Policy(nn.Module)原创 2021-11-11 19:57:30 · 150 阅读 · 0 评论 -
强化学习记录一DQN
感谢科科科老师的课程感谢莫凡大佬的课程强烈推荐先过一遍科科科老师的dqn首先说一下为什么会出现DQN在 Q learning 或者 SARSA 中我们可以用一个 Q 表 来存储我们的行为与状态但是当state的状态为连续空间的时候就会出现无数个state如果把连续的state离散化会导致精度丢失如果有一个东西丢给它一个state就会给出一个action就好了而神经网络恰好就符合我们的需求2013年发表的论文Playing Atari with Deep Reinforcement原创 2021-11-02 14:00:18 · 199 阅读 · 0 评论 -
强化学习记录一SARSA
SARSA与Qlearning的差别为什么呢?首先看SARSA这个名字State-Action-Reward-State-ActionSARSA学习的时候传入的参数是五元组(s,a,r,s_,a_)Qlearning学习的时候传入的参数是四元组(s,a,r,s_)a_是下次的动作a,a_是由策略进行选择的可以看作无论采用什么策略Qlearning都通向一个终点而SARSA则是一个策略对应一个终点所以Qlearning可以利用其它策略产生的四元组经验回放而SARSA只能使用在相同策略下产原创 2021-10-17 11:41:28 · 235 阅读 · 0 评论 -
强化学习记录一Qlearning第三版
进行500回合游戏可以看到凡是踩到⚡的行为价值会下降但是发现有很多0因为他的行为策略导致一旦找到一条通往????的路他只有10%探索没走过的路下面把选择最优行为的记录改为50%让他多去探索地图训练次数也改为2000次次数少了q表体现不出来再看一个有趣的对比当选择最优行为的记录改为50%当选择最优行为的记录改为90%当最优选择越高你获得少个解越快但是很难再发现其他最优解这个例子中训练2000回合都没找到第四种解法修改e_greedy控制选择最优动作的概率代码im原创 2021-10-16 15:40:31 · 1113 阅读 · 0 评论 -
强化学习记录一Qlearning第二版
代码放在最下方这次把鸡腿改成了100分并且在奖励中减去所走的步数因为最短路程为6所以加了6r = 100 - action_cnt + 6这里是训练10次的结果强推下这个做表格的软件vika因为训练次数比较少q表里的数据也很少接下来训练500次发现到二十次基本就饱和了之后的波动是因为我们的策略有10%的几率随机选择行为代码import torchimport pandas as pdimport numpy as npclass maze_env:原创 2021-10-16 14:57:24 · 119 阅读 · 0 评论 -
强化学习记录一Qlearning第一版
环境环境就是生成一个4*4的矩阵初始位置在(0,0)目标位置在(3,3)走到(3,3)给奖励200动作空间[‘up’, ‘down’, ‘left’, ‘right’]代码class maze_env: def __init__(self,row=4,column=4): # 用来表示游戏是否结束 self.done = False # 后续可传入自定义的矩阵形状 self.row = row self.col原创 2021-10-14 21:50:37 · 121 阅读 · 0 评论 -
pytorch实现CNN模型进行多分类(mnist)
使用的数据集:MNISTimport torch import numpy as npimport pandas as pdimport torch.nn as nnimport torch.nn.functional as Fimport matplotlib.pyplot as pltfrom torch.utils.data import Datasetfrom torch.utils.data import DataLoaderfrom torchvision.datasets i原创 2021-06-18 20:23:30 · 4891 阅读 · 0 评论 -
pytorch实现多分类模型
数据集使用的是mnistimport torch import numpy as npimport torch.nn as nnimport torch.nn.functional as Fimport matplotlib.pyplot as pltfrom torch.utils.data import Datasetfrom torch.utils.data import DataLoaderfrom torchvision.datasets import MNISTfrom tor原创 2021-06-17 18:20:24 · 3012 阅读 · 3 评论 -
pytorch实现二分类模型
使用的数据集是iris一共150行数据,三种花各有50行数据,这里取了前100行,选两种花进行二分类。import torch import numpy as npimport pandas as pdimport torch.nn as nnimport matplotlib.pyplot as pltimport torch.nn.functional as Ffrom torch.utils.data import Datasetfrom torch.utils.data i原创 2021-06-16 18:03:20 · 10600 阅读 · 4 评论 -
python可视化数据plt库实例
先看下jupyter和pycharm环境的差别左边是jupyter----------------------------------------------------------右边是pycharm以下都是使用pycharm环境1.一个窗口画出一个线性方程import numpy as npimport matplotlib.pyplot as pltx = np.linspace(0,1,11)# 从0到1,个数为11的等差数列print(x)y = 2*xplt.plot(x,y原创 2021-06-15 19:28:02 · 1545 阅读 · 6 评论 -
pytorch实现线性回归代码+注释
import torch import numpy as npimport torch.nn as nnimport torch.functional as Fimport matplotlib.pyplot as pltclass LinearRegression(nn.Module): def __init__(self,in_feature,out_feature): super(LinearRegression,self).__init__()原创 2021-06-12 11:27:05 · 339 阅读 · 0 评论 -
jupyter切换主题以及坑
安装pip install jupyterthemes列出可用的主题jt -l换主题jt -t monokai例子:jt -t monokai -f hack -fs 17 -cellw 90% -ofs 15 -dfs 15 -T -T坑:用了jupyter的代码折叠后显示行号会偏离原来的位置很多可以F12查看它的样式然后去jupyter/custom/custom.css去修改它的样式修改后的图...原创 2021-06-10 12:21:03 · 300 阅读 · 0 评论 -
jupyter安装jupyter_contrib_nbextensions
重复安装了n次终于找到正路我的问题是pip install jupyter_contrib_nbextensions可以安装成功然后执行jupyter contrib nbextension install --user提示找不到jupyter contrib然后pip list查看发现包也存在,就是报错说找不到jupyter contrib我的解决方案把安装的命令在jupyter里面执行就可以执行成功pip install jupyter_contrib_nbextensions原创 2021-06-10 12:14:57 · 1094 阅读 · 1 评论 -
机器学习之CNN记录(pytorch实现)
import torchimport torch.nn as nnimport torch.nn.functional as Fimport torchvisionimport torchvision.transforms as transformsimport matplotlib.pyplot as pltimport torch.optim as optimclass LeNet(nn.Module): # 一般在__init__中定义网络需要的操作算子,比如卷积、全连接算子等等原创 2021-06-05 16:44:48 · 172 阅读 · 0 评论 -
Python中matplotlib实时画图
转载https://blog.csdn.net/zhanghao3389/article/details/82685072坑:同样的代码,在jupyter不能用,在pycharm能用import matplotlib.pyplot as pltax = []ay = []plt.ion()for i in range(100): ax.append(i) ay.append(i**2) plt.clf() plt.plot(ax,ay) plt.pause转载 2021-06-05 14:57:19 · 1098 阅读 · 2 评论 -
机器学习之CNN记录(keras实现)
from tensorflow.keras import layersfrom tensorflow.keras import modelsfrom tensorflow.keras.datasets import mnistfrom tensorflow.keras import utils as np_utils# 建立模型model = models.Sequential()model.add(layers.Conv2D(32, (3, 3), activation='relu', inp原创 2021-06-01 16:07:59 · 183 阅读 · 0 评论 -
cannot import name ‘to_categorical‘ from ‘keras.utils‘
这么个简单的问题,居然在百度搜不到解决方案还是跑去bing搜的,也是醉了应该是版本留下的坑把头改成这样from keras import utils as np_utils然后下面用的时候这样np_utils.to_categorical()原创 2021-05-31 20:38:59 · 7074 阅读 · 4 评论 -
机器学习之KNN记录
import numpy as npimport matplotlib.pyplot as pltimport seaborn as snsfrom matplotlib.colors import ListedColormapfrom sklearn import neighbors, datasetsfor i in range(5,30): n_neighbors = i # 导入数据 iris = datasets.load_iris() X = iri原创 2021-05-30 18:50:14 · 77 阅读 · 0 评论