2D函数优化实例P36

https://www.bilibili.com/video/BV1AV411z79D?p=37

'''
Broadcasting  自动扩充维度
避免手动扩充维度,省内存拼接和拆分
cat
stack 创建新的维度拼接
split 拆分
chunka = torch.rand(4,32,8)
b = torch.rand(5,32,8)
c = torch.cat([a,b],dim = 0).shape
print('c:',c)# 矩阵乘法三种形式 torch.matmul  torch.mm   @a = 2*torch.ones(2,2)
b = torch.ones(2,2)
print('a\n',a,'\nb',b)
print('11111',torch.mm(a,b))
print('22222',torch.matmul(a,b))
print('33333',a@b)#降维操作
#a.t() a的转置,
a = torch.rand(4,784)
x = torch.rand(4,784)
w = torch.rand(512,784)
print((x@w.t()).shape)#norm 范数
a = torch.full([8],1.0)
b = a.view(2,4)
print('a:\n',a,'\nb',b)
print(a.norm(2))#梯度 把对函数的偏微分看成一个向量来理解=梯度 (x,y)
#同样的网络同样的参数,初始值不一样可能得到的最优解也不一样
#LOSS损失函数
MSE 均方误差损失函数 (Mean Squared Error) ∑(y-y')**2
L2范数要开根号,均方误差不开根号
感知机
反向传播
'''import torch
import numpy as np
import matplotlib.pyplot as plt
def himmelblau(x):      #函数(x**2+y-11)**2 + (x+y**2 -7)**2return (x[0] ** 2 + x[1] - 11) ** 2 + (x[0] + x[1] ** 2 - 7) ** 2
x = np.arange(-6, 6, 0.1)
y = np.arange(-6, 6, 0.1)
#print(x, '\ny', y)
print('x, y shape:', x.shape,y.shape)
X, Y = np.meshgrid(x,y)     #增加维度
#print(X,'\nY',Y)
print('X ,Y maps:',X.shape,Y.shape)
Z = himmelblau([X,Y])fig = plt.figure('himmelblu')
ax = fig.gca(projection = '3d')
ax.plot_surface(X,Y,Z)
ax.view_init(60, -30)  #模型视角调整
ax.set_xlabel('x')
ax.set_ylabel('y')
plt.show()
x = torch.tensor([0.,0.],requires_grad = True)   #对于不同的初始化,找到的极小值不同 True 需要梯度初始值信息
optimizer = torch.optim.Adam([x],lr = 0.001)     #优化目标[x]  0.001 学习率
for step in range(20000):pred = himmelblau(x)optimizer.zero_grad()pred.backward()optimizer.step()    #更新梯度if step % 2000 == 0:print('step {} : x = {} , f(x) = {}'.format(step,x.tolist(),pred.item()))

深度学习与PyTorch入门实战教程相关推荐

  1. 视频教程-深度学习与PyTorch入门实战教程-深度学习

    深度学习与PyTorch入门实战教程 新加坡国立大学研究员 龙良曲 ¥399.00 立即订阅 扫码下载「CSDN程序员学院APP」,1000+技术好课免费看 APP订阅课程,领取优惠,最少立减5元 ↓ ...

  2. 网易云课程:深度学习与PyTorch入门实战

    网易云课程:深度学习与PyTorch入门实战 01 深度学习初见 1.1 深度学习框架简介 1.2 pytorch功能演示 2开发环境安装 3回归问题 3.1简单的回归问题(梯度下降算法) 3.3回归 ...

  3. 深度学习与Pytorch入门实战(一)Pytorch张量操作

    1. 数据类型 如何表示string? One-hot [0, 1, 0, 0, ...] Embedding Word2vec glove 类型推断 import torch# type check ...

  4. numpy pytorch 接口对应_拆书分享篇深度学习框架PyTorch入门与实践

    <<深度学习框架PyTorch入门与实践>>读书笔记 <深度学习框架PyTorch入门与实践>读后感 小作者:马苗苗  读完<<深度学习框架PyTorc ...

  5. 总结 | 深度学习之Pytorch入门教程

    AI博士笔记系列推荐 周志华<机器学习>手推笔记正式开源!可打印版本附pdf下载链接 本篇笔记的目录: 后台回复"8003"获取pdf版本 一.整体学习的建议     ...

  6. 深度学习框架Pytorch入门与实践——读书笔记

    2 快速入门 2.1 安装和配置 pip install torch pip install torchvision#IPython魔术命令 import torch as t a=t.Tensor( ...

  7. 深度学习框架PyTorch入门与实践:第二章 快速入门

    本章主要介绍两个内容,2.1节介绍如何安装PyTorch,以及如何配置学习环境:2.2节将带领读者快速浏览PyTorch中主要内容,给读者一个关于PyTorch的大致印象. 2.1 安装与配置 2.1 ...

  8. 深度学习框架PyTorch入门与实践:第八章 AI艺术家:神经网络风格迁移

    本章我们将介绍一个酷炫的深度学习应用--风格迁移(Style Transfer).近年来,由深度学习引领的人工智能技术浪潮越来越广泛地应用到社会各个领域.这其中,手机应用Prisma,尝试为用户的照片 ...

  9. 深度学习框架PyTorch入门与实践:第九章 AI诗人:用RNN写诗

    我们先来看一首诗. 深宫有奇物,璞玉冠何有. 度岁忽如何,遐龄复何欲. 学来玉阶上,仰望金闺籍. 习协万壑间,高高万象逼. 这是一首藏头诗,每句诗的第一个字连起来就是"深度学习". ...

  10. 深度学习框架PyTorch入门与实践:第七章 AI插画师:生成对抗网络

    生成对抗网络(Generative Adversarial Net,GAN)是近年来深度学习中一个十分热门的方向,卷积网络之父.深度学习元老级人物LeCun Yan就曾说过"GAN is t ...

最新文章

  1. 从对ML一窍不通到斩获AT等special offer,拿下大厂算法岗就靠它了
  2. Android Camera 流程学习记录(五)—— Camera.takePicture() 流程解析
  3. 静态与非静态(转改)
  4. SaaS 产品设计的原则
  5. 西宾喜马拉雅语音下载工具(ximalayadown)
  6. GD32外部SPI Flash下载算法制作
  7. 渗透测试实战分享—从app到网站沦陷
  8. 手机浏览器打开百度网页
  9. linux live下载地址,Clonezilla Live 2.4.5-20 发布下载
  10. 乐2 乐视X520_官方线刷包_救砖包_解账户锁
  11. photoshop卸载不彻底--论如何删除ADMUI3.fon
  12. nginx如何替换ssl证书
  13. 奖励补贴有点多!武汉市大健康和生物技术产业发展奖励措施解读
  14. 虚拟化——成功解决使用ovirt安装虚拟机系统时不能正常引导安装
  15. 以太坊solidity智能合约-生成随机数
  16. 谈谈引用和Threadlocal的那些事
  17. 介绍计算机硬件的英语作文带翻译,自我介绍作文之英语作文自我介绍带翻译(35页)-原创力文档...
  18. 股票入门——K线理论
  19. Python统计分析-卡方检验
  20. 河南对口计算机本科学校有哪些,2017河南省对口升学计算机专业考290分可以上什么学校公办的...

热门文章

  1. 叮铃铃~: 一个前端铃声/提示音组件
  2. 系统学习深度学习(十六)--Overfeat
  3. 【H3CTE认证和HCIE认证一样吗?】
  4. 集成基站混频器本振噪声的规格与测量
  5. FFT算法【初识】(一)
  6. vue3 tinymce富文本插件
  7. 谈一谈软件系统的可用性
  8. 个人读研期间常用小工具分享
  9. EasyDarwin云平台:EasyCamera开源摄像机接入海康威视摄像机PS流转ES流
  10. 华硕电脑光驱位换成固态硬盘