Tech

Education is what remains after one has forgotten what one has learned in school.
torchtracer:一个管理 PyTorch AI 实验项目的工具
Machine Learning

torchtracer:一个管理 PyTorch AI 实验项目的工具

在使用 pytorch 框架进行机器学习(尤其是深度学习)实验时,经常需要考虑如何保存以下实验数据: - 模型的 checkpoints - 每次训练的 hyper-parameters - 训练过程中的各种变化参数及其图像(loss, accuracy, learning-rate 等) 除此之外,[Keras](https://keras.io/) 之类的其他框架在 fit 时会有一个表示训练进度的进度条,而 pytorch 原生并没有。
4 min read
numpy-100,上手numpy的百题斩
Tech

numpy-100,上手numpy的百题斩

什么是 numpy-100? numpy-100 是一个练习集,来源于 numpy 的邮件列表、stackoverflow 以及 numpy 的官方文档。其目的是为了给新手(如果老玩家也需要的话)提供方便快捷的查询及相关练习。 开始做题吧 1. 导入 numpy 包并命名为 np (★☆☆) import numpy as np 2. 查看 numpy 版本及配置信息 (★☆☆) print(np.__version__) np.show_config() 3. 建立一个 10 维的零向量 (★☆☆) x = np.zeros(10) print(x) 4. 获取某个 ndarray 占用的内存大小 (★☆☆) x = np.
7 min read
使用 Spatial Pyramid Pooling 让 CNN 接受可变尺寸的图像
Tech

使用 Spatial Pyramid Pooling 让 CNN 接受可变尺寸的图像

在传统 CNN 中,由于 Fully-Connected 层的存在,输入图像的尺寸受到了严格限制。通常情况下,我们需要对原始图片进行裁剪(crop)或变形(warp)的操作来调整其尺寸使其适配于 CNN。然而裁剪过的图片可能包含不了所需的所有信息,而改变纵横比的变形操作也可能会使关键部分产生非期望的形变。由于图片内容的丢失或失真,模型的准确度会受到很大的影响。
5 min read
卷积神经网络入门
Tech

卷积神经网络入门

传统神经网络模型不能很好适应整张2维图片。比如一张 32×32×3(长32-宽32-RGB) 的彩色图片,在传统模型中第一层输入为了读入整张图片就需要 32×32×3 = 3072 个神经元,也就是有 3027 组参数,在这个简单的小图数据集(比如 CIFAR-10)好像看上去还能接受,但是一旦图片变成 200×200 的分辨率,就有 120,000 组参数了,这显然是训练时难以接受的。
11 min read
爬爬爬 —— BeautifulSoup 还是 Scrapy?
Tech

爬爬爬 —— BeautifulSoup 还是 Scrapy?

为什么写这篇短文 1. 最近在做一个 DL×CV 的 proj,需要大量的广东美食图片数据,刚好写一发爬虫。 2. 发现身边很多同学突然看起了 python,而上手 proj 就是写爬虫,然而网上资料纷繁复杂,纠结是用 bs 还是 scrapy。 这里的介绍非常简要,涉及深层姿势的部分请出门右拐官网。 一些背景姿势 在 bs 和 scrapy 之间做选择前,首先当然要了解他们是什么,差别何在。 * Scrapy 是一个非常成熟的工具包,你只要写很少的东西就能达到你要的效果——创建一个 spider 下载网页并提取其中有用的数据。 * BeautifulSoup 则是一个面向网页的工具,它能够解析 DOM 树并提取某些特定的节点(比如 ,

等)。 也就是说,只用 bs 是做不了爬虫的,必须要引入 requests 之类的包用来下载网页,

3 min read