Python算法图解——递归(三):打印九九乘法表 本系列内容来自何韬编著的《Python算法图解》。 递归:程序调用自身的编程技巧。它通常把一个大型复杂的问题,层层转换为一个与原问题相似的规模较小的问题来求解。在某些情况下,它能解决 for 循环难以解决的算法问题,有时只需少量的代码就可描述出解题过程所需要的多次重复计算,大大减少了代码量。 在程序实现中,递归往往以调用的方式存在。递归调用
Python算法图解——递归(二):打印从10循环到1本系列内容来自何韬编著的《Python算法图解》。 递归:程序调用自身的编程技巧。它通常把一个大型复杂的问题,层层转换为一个与原问题相似的规模较小的问题来求解。在某些情况下,它能解决 for 循环难以解决的算法问题,有时只需少量的代码就可描述出解题过程所需要的多次重复计算,大大减少了代码量。 在程序实现中,递归往往以调用的方式存在。递归调用
很多情况下用的是pandas而不是numpy,因为前者是在后者的基础上又封装了一些操作,相当于做了函数简化。pandas主要是数据预处理用的比较多。 十八 Pandas 1 文件读取1.1 读取csv任意一种格式,只要是以,为分隔符,就可以用read_csv读取: import pandas as pd excel = pd.read_csv('excel.csv') 先把文件打印出
Python算法图解——递归(一):打印从1循环到10本系列内容来自何韬编著的《Python算法图解》。 递归:程序调用自身的编程技巧。它通常把一个大型复杂的问题,层层转换为一个与原问题相似的规模较小的问题来求解。在某些情况下,它能解决 for 循环难以解决的算法问题,有时只需少量的代码就可描述出解题过程所需要的多次重复计算,大大减少了代码量。 在程序实现中,递归往往以调用的方式存在。递归调用
一些算法基础知识点和leetcode题解,语言是python。来源于这里。 1 链表定义 链表分为单端链表(从前一个元素指向后一个元素)和双端链表(每一个元素不仅有next指针还有前指针,指向前一个元素。 在链表中,访问元素需要通过next指针从头到尾遍历 搜索也一样,要一个一个找 插入就很快: 这里指的是这个插入方式的时间复杂度只有O(1),没有计算寻找到2的位置的时间复杂度
一些算法基础知识点和leetcode题解,语言是python。来源于这里。 1 数组定义 数组:在连续的内存空间中,存储一组相同类型的元素。 连续的内存空间:如果在内存空间上不连续,就是链表了。 相同类型:[1,2,3]就是相同类型,而[1,‘a’,1.1]就不是。 数组的索引是从0开始的,表示相对位置。 数组访问(Access):通过索引去访问某一个元素。 数组搜索(Searc
算法基础(一):时间复杂度和空间复杂度时间复杂度· O(1)· O(N)· O(logN)· O(M+N)· O(MlogN)· O ( N²)空间复杂度一些算法基础知识点和leetcode题解,来源于这里 时间复杂度 时间复杂度就是算法的执行效率,即:算法的执行时间与算法的输入值规模之间的关系。一般不关心系数和小的时间。 大O表示法里面比较常见的时间复杂度: · O(1) 执行
深度学习PyTorch笔记(9):自动求导 4. 自动求导 4.1 理解 4.2 梯度 4.3 .requires_grad与.grad_fn 4.4 调用.backward()反向传播来完成所有梯度计算 这是《动手学深度学习》(PyTorch版)(Dive-into-DL-PyTorch)的学习笔记,里面有一些代码是我自己拓展的。 其他笔记在专栏 深度学习 中。 4. 自动求导
深度学习PyTorch笔记(8):线性代数 3 线性代数 3.1 标量、向量、矩阵、张量 3.2 降维 3.2.1 非降维求和 3.3 点积、向量积、矩阵乘 3.4 范数 这是《动手学深度学习》(PyTorch版)(Dive-into-DL-PyTorch)的学习笔记,里面有一些代码是我自己拓展的。 其他笔记在专栏 深度学习 中。 3 线性代数 3.1 标量、向量、矩阵、张量
深度学习PyTorch笔记(7):数据预处理 2 数据预处理 2.1 生成数据 2.2 处理缺失值 2.3 转换为张量格式 这是《动手学深度学习》(PyTorch版)(Dive-into-DL-PyTorch)的学习笔记,里面有一些代码是我自己拓展的。 其他笔记在专栏 深度学习 中。 2 数据预处理 2.1 生成数据 创建一个人工数据集,并存储在C:/
深度学习PyTorch笔记(6):Tensor与NumPy、标量的转换 1.5 Tensor和NumPy相互转换 1.5.1 Tensor转NumPy 1.5.2 Numpy转Tensor 1.5.3 直接用torch.tensor()将NumPy数组转换成Tensor 1.6 将大小为1的张量转换为Python标量
深度学习PyTorch笔记(11):线性神经网络——线性回归 [TOC] 这是《动手学深度学习》(PyTorch版)(Dive-into-DL-PyTorch)的学习笔记,里面有一些代码是我自己拓展的。 其他笔记在专栏 深度学习 中。 这并不是简单的复制原文内容,而是加入了自己的理解,里面的代码几乎都有详细注释!!! 5 线性神经网络 5.1 线性回归 5.1.1 线性回归的基本元素
深度学习PyTorch笔记(10):PyTorch绘制函数图像及切线这是《动手学深度学习》(PyTorch版)(Dive-into-DL-PyTorch)的学习笔记,里面有一些代码是我自己拓展的。其他笔记在专栏 深度学习 中。 学习自DIVE INTO DEEP LEARNING,当时学的时候没运行成功,就是因为d2l的导入问题,现在用pip install d2l搞好了,所以干脆把这里面的代码
深度学习PyTorch笔记(4):Tensor的其它操作 1.2.3 改变形状 1.2.4 一些简单的矩阵操作 1.2.5 把多个张量连结(concatenate)在一起 1.2.6 通过逻辑运算符构建二维张量 1.2.7 求和 这是《动手学深度学习》(PyTorch版)(Dive-into-DL-PyTorch)的学习笔记,里面有一些代
深度学习PyTorch笔记(1):创建Tensor 1. Tensor预备知识 1.1 创建Tensor 1.1.1 创建未初始化的Tensor 1.1.2 生成随机数 1.1.3 torch.Tensor()与torch.tensor() 1.1.4 一些特殊值矩阵 这是《动手学深度学习》(PyTorch版)(Dive-into-DL-PyT
深度学习PyTorch笔记(2):Tensor的算术操作 1.2.1 算术操作 这是《动手学深度学习》(PyTorch版)(Dive-into-DL-PyTorch)的学习笔记,里面有一些代码是我自己拓展的。 其他笔记在专栏 深度学习 中。 1.2.1 算术操作 加减乘除、求余、求幂、指数、绝对值: #可以是两个张量,也可以是张量
深度学习PyTorch笔记(3):Tensor的索引 1.2.2 索引 这是《动手学深度学习》(PyTorch版)(Dive-into-DL-PyTorch)的学习笔记,里面有一些代码是我自己拓展的。 其他笔记在专栏 深度学习 中。 1.2.2 索引 裁剪 x = torch.tensor([[1, 2, 3], [4, 5, 6], [
深度学习PyTorch笔记(5):广播机制与内存开销 1.3 广播机制 1.4 运算的内存开销 这是《动手学深度学习》(PyTorch版)(Dive-into-DL-PyTorch)的学习笔记,里面有一些代码是我自己拓展的。 其他笔记在专栏 深度学习 中。 1.3 广播机制 当对两个形状不同的Tensor按元素运算时,可能会触发广播(broadcas
深度学习PyTorch笔记(12):线性神经网络——softmax回归 6 线性神经网络——softmax回归 6.1 softmax回归 6.1.1 概念 6.1.2 softmax运算 6.2 图像分类数据集(Fashion-MNIST) 6.2.1 读取数据集 6.2.2 读取小批量 6.2.3 整合所有组件 6.3 softmax回归的
深度学习计算机视觉理论基础(PyTorch) 1 神经网络与cv 1.1 经典的人工神经元模型:M-P 模型 1.2 感知机(Perceptron)的诞生 1.3 计算机视觉 2 深度神经网络基础 2.1 监督学习和无监督学习 2.1.1 监督学习(Supervised Learning) 2.1.2 无监督学习(Unsupervised Learnin
深度学习PyTorch笔记(13):多层感知机 7 多层感知机 7.1 隐藏层 7.2 激活函数(activation function) 7.2.1 ReLU函数(修正线性单元Rectified linear unit,ReLU) 7.2.1.1 pReLU 7.2.2 sigmoid函数(挤压函数,squashing function)
torch.nn 包中常用的损失函数 1、torch.nn.MSELoss:均方误差 2、torch.nn.L1Loss:平均绝对误差 3、torch.nn.CrossEntropyLoss :计算交叉熵 1、torch.nn.MSELoss:均方误差 import torch from torch.autograd
用numpy、PyTorch自动求导、torch.nn库实现两层神经网络 1 用numpy实现两层神经网络 2 用PyTorch自动求导实现两层神经网络 2.1 手动求导 2.2 gradient自动求导 3 用torch.nn库实现两层神经网络 3.1 参数未标准化 3.2 参数标准化 3.3 optim方法 3.4自己定义模型 4 总结
2021李宏毅机器学习(3):类神经网络训练不起来怎么办 1 任务攻略 1.1 如果在训练集上的 loss 始终不够小 1.2 如果 loss 在训练集上小,在测试集上大 1.3 任务攻略的示意图 2 局部最小值 (local minima) 与鞍点 (saddle point) 3 批次(batch)与动量(momentum) 3.1 批
周志华机器学习(6):支持向量机 6 支持向量机 6.1 间隔与支持向量 6.2 对偶问题(dual problem) 6.3 核函数 6.4 软间隔与正则化 基本是大段摘录西瓜书加上一些自己的解释补充,去除了冗余的话。 6 支持向量机 6.1 间隔与支持向量 给定训练样本集 D={(x1,y1),(x2,y2),⋯ ,
深度学习计算机视觉理论基础(PyTorch) 1 神经网络与cv 1.1 经典的人工神经元模型:M-P 模型 1.2 感知机(Perceptron)的诞生 1.3 计算机视觉 2 深度神经网络基础 2.1 监督学习和无监督学习 2.1.1 监督学习(Supervised Learning) 2.1.2 无监督学习(Unsuperv
2021李宏毅机器学习(5):Domain Adaptation 1 Domain Shift 2 Domain Adaptation 2.1 Basic Idea——寻找 Feature Extractor 2.2 Domain Adversarial Training 2.2.1 Feature Extractor 2.2.2 Domain Cl
2021李宏毅机器学习(4):卷积神经网络CNN 1 前言 2 观察1 2.1 简化方法1:Receptive field(感受野) 2.2 最经典的 Receptive Field 的安排方式(Typical Setting) 2.2.1 考虑stride和padding 3 观察2 3.1 简化方法2:共享参数 3.2
前文关于迁移学习的入门及自定义模型的方法看这里:迁移学习——猫狗分类(PyTorch:自定义 VGGNet 方法)。参考了唐进民的《深度学习之PyTorch实战计算机视觉》7 部分,及这里的代码。 另外一个迁移学习的方法:迁移学习——猫狗分类(PyTorch:迁移 VGG16 方法) 3.3 迁移 ResNet50 3.3.1 通过代码自动下载模型并直接调用 和迁移
参考的是唐进民的《深度学习之PyTorch实战计算机视觉》6.4部分,代码部分按照原书的来会有报错,本文给出的是修改后的可以完整编译的代码。参考书本学习过程中出现的一些报错以及修改思路可以参考PyTorch实战手写数字识别。 现在来进行一个基于 PyTorch 框架使用神经网络实战手写数字识别的实例: 使用提供的训练数据对搭建好的神经网络模型进行训练并完成参数优化; 使用优化好的模型对测
参考了唐进民的《深度学习之PyTorch实战计算机视觉》7 部分,及这里的代码。 用两种方法来通过搭建卷积神经网络模型对生活中的普通图片进行分类: 自定义结构的卷积神经网络模型 通过使用迁移学习方法得到的模型通过这两种方法,解决同样的问题,以此来看看在效果上是传统的方法更出色,还是迁移学习方法更出色。 1 迁移学习入门 出现诱因:希望用耗费很多资源训练出来
搭建复杂神经网络同时优化参数 1 PyTorch 之 torch.nn 2 PyTorch 之 torch.optim 前面已经搭建了一个简易神经网络,并且使用自动梯度搭建一个二层结构的神经网络模型,现在我们基于 PyTorch 深度学习框架用简单快捷的方式搭建出复杂的神经网络模型,同时让模型参数的优化方法趋于高效。 1 PyTorch 之 torch.nn PyTorch 中的
搭建一个简易神经网络(PyTorch) 就是通过对 权重参数(w1,w2) 的更新来优化模型。 一个批次的数据从输入到输出的完整过程是: 先输入 100 个具有 1000 个特征的数据; 经过隐藏层后变成 100 个具有 100 个特征的数据; 再经过输出层后输出 100 个具有 10 个分类结果值的数据; 在得到输出结果之后计算损失并进行后向传播,这样一次模型的训练就完成了。
积分
粉丝
勋章
TA还没有专栏噢
第三方账号登入
看不清?点击更换
第三方账号登入
QQ 微博 微信