
AI不可错过的知识点
文章平均质量分 67
AI不可错过的知识点
落难Coder
这里是我的笔记,而你恰好看到
展开
-
如何调整batch size和学习率之间的关系?
一般来说,我们batch size 大一些,则learning rate也要大一些。×举例来说,原先别人的batch size 为128, learning rate为0.0005, 那么当我们把batch size改为1024时,则新的学习率有这样的推荐值:0.0005 * sqrt(1024/128) = 0.0005 * sqrt(8) = 0.001412。原创 2024-10-16 13:22:24 · 782 阅读 · 0 评论 -
Huggingface上传自己的预训练模型(大小权重都可以)
第一次上传可能出现让你输入账号密码,只需要按照要求输入即可。这里需要先到网站页面上进行设置然后复制过来进行登录。克隆来以后就可以把需要上传的文件放入到这个下载的。命令进行登录,登录过程中需要输入用户的。如果你想要手动创建,则可以直接在。就可以跳过这一步了。这个时候如果你发现你。原创 2023-05-26 18:22:11 · 4817 阅读 · 1 评论 -
PyTorch保存和加载模型的两种方式
与Tensorflow、Keras等框架一样,Pytorch也提供了两种保存模型的方式:只保存模型参数保存完整模型。原创 2023-02-13 23:46:00 · 379 阅读 · 0 评论 -
【深度学习】如何分配训练集、验证集、测试集比例
对于传统机器学习阶段(数据集在万这个数量级),一般分配比例为训练集和测试集的比例为7:3或是8:2。为了进一步降低信息泄露同时更准确的反应模型的效能,更为常见的划分比例是训练集、验证集、测试的比例为6:2:2。对于小规模样本集(几万量级),常用的分配比例是 60% 训练集、20% 验证集、20% 测试集。原创 2023-02-13 23:38:37 · 11330 阅读 · 2 评论 -
人工智能、机器学习、深度学习相关术语表
适用于[License](https://github.com/microsoft/AI-System/blob/main/LICENSE)版权许可。原创 2023-01-16 10:18:05 · 462 阅读 · 0 评论 -
你真的看懂扩散模型(diffusion model)了吗?(从DALL·E 2讲起,GAN、VAE、MAE都有)
我们来讲一下什么是扩散模型,如果你不了解一些工作,你可能不清楚它究竟是什么。AI作画(输入一些文字就可以得到与你描述相符的图像)和抖音大火的真图生成漫画风图等都是它的成果。如下图是我利用AI生成的漫画图。文生图以及根据文字/图像对已有图像进行改图,当然这里的工作只是有限的列举,在各个方面扩散模型仍有很多优秀表现。扩散模型是根据文本/图像输入生成原创性的贴近真实的图片输出。值得一提的是,这里原创性。原创 2022-12-03 01:46:53 · 5413 阅读 · 0 评论 -
动手实践看懂深度学习的DP和DDP
为了尽可能加快训练,我们会使用两种GPU并行手段,DP和DDP,但是DP其实只会开一个进程去管理,计算资源分配不均,DDP上我们倾向于一张卡开一个进程,使得我们的计算资源能够最大化的利用。本次的文章会快速地形象地过一下DP和DDP并且告诉大家如何代码层面上实践。原创 2022-11-14 14:25:32 · 2010 阅读 · 0 评论 -
在Ubuntu 20.04 LTS 上安裝 NVIDIA 驱动程序
【代码】在Ubuntu 20.04 LTS 上安裝 NVIDIA 驱动程序。原创 2022-09-14 20:48:06 · 484 阅读 · 0 评论 -
数据增强及实现
基于有限的数据生成更多等价(同样有效)的数据,丰富训练数据的分布,使通过训练集得到的模型泛化能力更强。原创 2022-08-18 18:56:09 · 1388 阅读 · 0 评论 -
推荐系统入门经验
自学推荐系统两年多了,也阅读了一些相关的书籍和论文,但毕竟还没有实际的在公司做过推荐相关项目,所以说跟大佬们相比,还是有很多差距的。不过,在入门推荐的道路上,有一些经验和资料还是可以分享给你的,希望本文能够对你有所帮助。...原创 2022-08-18 18:46:38 · 733 阅读 · 0 评论 -
一文了解人工智能、机器学习与数据挖掘
人工智能实际应用:机器视觉,指纹识别,人脸识别,视网膜识别,虹膜识别,掌纹识别,专家系统,自动规划,智能搜索,定理证明,博弈,自动程序设计,智能控制,机器人学,语言和图像理解,遗传编程等。人工智能(Artificial Intelligence,AI)是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的与人类智能相似的方式作出反应的智能机器,它不是人的智能,但能像人那样思考、也可能超过人的智能。机器学习是数据挖掘的一种重要方法,但机器学习是另一门学科,并不从属于数据挖掘,二者相辅相成。...原创 2022-08-18 18:43:55 · 754 阅读 · 0 评论 -
训练好的深度学习模型,多种部署方式
当我们辛苦收集数据、数据清洗、搭建环境、训练模型、模型评估测试后,终于可以应用到具体场景,但是,突然发现不知道怎么调用自己的模型,更不清楚怎么去部署模型!我们需要支持多种不同的框架和模型,这导致开发复杂性,还存在工作流问题。数据科学家开发基于新算法和新数据的新模型,我们需要不断更新生产环境。如果我们使用英伟达GPU提供出众的推理性能。首先,GPU是强大的计算资源,每GPU运行一个模型可能效率低下。在单个GPU上运行多个模型不会自动并发运行这些模型以尽量提高GPU利用率。...原创 2022-08-08 13:06:45 · 4121 阅读 · 1 评论 -
一个全局最优化的方法:随机游走算法-Random-Walk
全局最优化是一个非常复杂的问题,目前还没有一个通用的办法可以对任意复杂函数求解全局最优值。一个求解局部极小值的方法——。这种方法对于求解精度不高的情况是实用的,可以用局部极小值近似替代全局最小值点。但是当要求精确求解全局最小值时,梯度下降法就不适用了,需要采用其他的办法求解。常见的求解全局最优的办法有拉格朗日法、线性规划法、以及一些人工智能算法比如遗传算法、粒子群算法、模拟退火算法等。而今天要说的是一个操作简单但是不易陷入局部极小值的方法:随机游走算法。...原创 2022-08-03 19:19:01 · 4051 阅读 · 1 评论 -
模型微调(fine-tuning)
微调,就是基于预训练模型进行微调,比如用大型数据集Imagenet训练好的resnet,再在自己的数据集上训练一部分靠近输出的层,使之更加适用于自己的问题。预训练模型的数据集与自己的数据集相似,但自己的数据集太少计算资源不够是否微调以及微调的方法要根据自己的数据集大小、数据集与预训练模型数据集的相似程度来选择。数据量少,相似度高修改最后几层;数据量少,相似度低保留预训练模型的前几层,训练后面的层;数据量大,相似度高这是最理想的情况。使用预训练的权重初始化模型,重新训练整个模型;...原创 2022-07-20 01:41:15 · 2649 阅读 · 0 评论 -
推荐系统究竟是什么?
故事的背景包括4个小孩和5部动画,每个小孩为每部动画打分1分代表最不喜欢5分代表最喜欢。原创 2022-07-14 21:30:56 · 145 阅读 · 0 评论 -
机器学习中算法与模型的区别
机器学习中的“算法”是在数据上运行以创建机器学习“模型”的过程。机器学习算法执行“模式识别”。算法从数据中“学习”,或者对数据集进行“拟合”。机器学习算法有很多。比如,我们有分类的算法,如 K- 近邻算法;回归的算法,如线性回归;聚类的算法,如 K- 均值算法。下面是机器学习算法的例子:你可以把机器学习算法想象成计算机科学中的任何其他算法。例如,你可能熟悉的一些其他类型的算法包括用于数据排序的冒泡排序和用于搜索的最佳优先排序。因此,机器学习算法具有许多特性:例如,你可能会在研究论文和教科书中看到用伪代码或原创 2022-06-09 20:17:57 · 1215 阅读 · 0 评论 -
基于矩阵分解的推荐算法
我们都熟知在一些软件中常常有评分系统,但并不是所有的用户都会对项目进行评分,因此评分系统所收集到的用户评分信息必然是不完整的矩阵。那如何跟据这个不完整矩阵中已有的评分来预测未知评分呢。使用矩阵分解的思想很好地解决了这一问题。假如我们现在有一个用户-项目的评分矩阵R(n,m)是行列的矩阵,表示个数,行表示个数其中,u1⋯u5表示的是5个不同的用户,I1⋯i4表示的是4个不同的商品,这样便构成了用户-商品矩阵,在该矩阵中,有用户对每一件商品的打分,其中“-”表示的是用户未对该商品进行打分。在推荐系统中有一类问题原创 2022-06-09 20:15:27 · 417 阅读 · 0 评论 -
模型压缩-剪枝/量化/蒸馏/AutoML
深度学习模型计算复杂度高,参数存在冗余。(1)线性或非线性量化。(2)结构或非结构剪枝。(3)网络结构搜索。(4)权重矩阵的低秩分解。(蒸馏)优化精度、性能、存储等,使得可以在一些场景和设备上进行相应模型的部署。(1)剪枝位置的判定一般根据权重。权重越小,证明该神经元的作用越小。(2)剪枝的方式:删去网络层上的权重的向量/整个神经元/单个像素(数据)。由于矩阵操作的并行化,减去单个像素或者向量并不能减少计算量。即有的硬件并不支持稀疏矩阵的运输,所以一般剪枝操作是直接减去整个神经元。(3)判别剪神经元的原创 2022-06-09 10:12:29 · 1776 阅读 · 0 评论 -
区分规范化,归一化,标准化,正则化
规范化把关系满足的规范要求分为几级,满足要求最低的是第一范式(1NF),再来是第二范式、第三范式、BC范式和4NF、5NF等等,范数的等级越高,满足的约束集条件越严格。数据的规范化包括归一化标准化正则化,是一个统称(也有人把标准化作为统称)。数据规范化是中的数据变换的一种方式,数据变换将数据变换或统一成适合于的形式,将被挖掘对象的属性数据按比例缩放,使其落入一个小的特定区间内,如[-1, 1]或[0, 1]对属性值进行规范化常用于涉及神经网络和距离度量的分类算法和聚类算法当中。比如使用神经网络后向传播算法进原创 2022-06-08 15:43:59 · 2614 阅读 · 1 评论 -
深度学习中的batch、epoch、iteration
(1)batchsize:批大小。在深度学习中,一般采用SGD训练,即每次训练在训练集中取batchsize个样本训练;(2)iteration:1个iteration等于使用batchsize个样本训练一次;(3)epoch:1个epoch等于使用训练集中的全部样本训练一次,通俗的讲epoch的值就是整个数据集被轮几次。实际上,梯度下降的几种方式的根本区别就在于上面公式中的 不同。CIFAR10 数据集有 50000 张训练图片,10000 张测试图片。现在选择 Batch Size = 256 对模型进原创 2022-06-08 15:40:07 · 1311 阅读 · 0 评论 -
人工智能之模拟退火算法(Simulate Anneal)
介绍模拟退火前,先介绍爬山算法。爬山算法是一种简单的贪心搜索算法,该算法 每次从当前解的临近解空间中选择一个最优解作为当前解,直到达到一个局部最优解 。爬山算法实现很简单,其主要缺点是会陷入局部最优解 ,而不一定能搜索到全局最优解。如图1所示:假设C点为当前解,爬山算法搜索到A点这个局部最优解就会停止搜索,因为在A点无论向那个方向小幅度移动都不能得到更优的解。在热力学上,退火(annealing)现象指物体逐渐降温的物理现象,温度愈低,物体的能量状态会低;够低后,液体开始冷凝与结晶,在结晶状态时,系统的能量原创 2022-06-08 15:30:03 · 1766 阅读 · 0 评论 -
用Numpy手写各种距离度量
用python实现常见的几种距离度量。原创 2022-06-07 11:33:47 · 533 阅读 · 0 评论 -
人工智能之蚁群算法
蚁群算法(Ant Clony Optimization, ACO)是一种群智能算法,它是由一群无智能或有轻微智能的个体(Agent)通过相互协作而表现出智能行为,从而为求解复杂问题提供了一个新的可能性。蚁群算法最早是由意大利学者Colorni A., Dorigo M. 等于1991年提出。经过20多年的发展,蚁群算法在理论以及应用研究上已经得到巨大的进步。蚁群算法是一种仿生学算法,是由自然界中蚂蚁觅食的行为而启发的。在自然界中,蚂蚁觅食过程中,蚁群总能够按照寻找到一条从蚁巢和食物源的最优路径。下图显示了这原创 2022-06-07 11:32:19 · 1941 阅读 · 0 评论 -
将视频分帧后用于制作图片数据集方法
进行图片数据的制作是我们进行AI实践的必须操作,除了公开的官方数据集,我们自己制作数据集将会是更好的方法。在这里我将介绍用一种方法来制作图片数据集:先拍个视频然后把视频转化成图片。用 工具。图片获取 表示要转化的视频10 表示每秒保存10帧 表示转的的图片存储目录 图片命名规则,表示5位数不够用0补足,除了 还可以是 、 等格式python工具-将视频按帧截取图片如何使用Python+Opencv将视频切分成帧图片...原创 2022-06-07 11:26:28 · 1353 阅读 · 0 评论 -
PyTorch实现TPU版本CNN模型
我们将在中实现执行,因为它提供免费的云(张量处理单元)。在继续下一步之前,在Colab笔记本中,转到“编辑”,然后选择“设置”,从下面屏幕截图中的列表中选择“TPU”作为“硬件加速器”。验证下面的代码是否正常运行。如果启用了,它将成功执行,否则它将返回‘KeyError: ‘COLAB_TPU_ADDR’’。你也可以通过打印地址来检查。启用后,我们将安装兼容的控制盘和依赖项,以使用以下代码设置环境。一旦安装成功,我们将继续定义加载数据集、初始化模型、训练和测试的方法。首先,我们将导入所需的库。之后原创 2022-06-07 11:11:10 · 612 阅读 · 0 评论 -
【图解AI】什么是语义分割、实例分割、全景分割
图像分割(image segmentation)是计算机视觉中非常重要的研究和应用方向,是根据某些规则将图片中的像素分成不同的部分、打上不同标签。图解如下:识别图像中存在的内容,如下图,有人(person)、树(tree)、草地(grass)、天空(sky)识别图像中存在的内容和检测其位置,如下图,以识别和检测人(person)为例对图像中的每个像素打上类别标签,如下图,把图像分为人(红色)、树木(深绿)、草地(浅绿)、天空(蓝色)标签目标检测和语义分割的结合,在图像中将目标检测出来(目标检测),然后对每个原创 2022-06-07 11:08:59 · 2294 阅读 · 1 评论 -
模型大小评估指标
计算量计算量可以说是评价模型大小最常用的指标了,很多论文在跟 baseline 进行比较时,都会把计算量作为重要的比较依据。计算量是模型所需的计算次数,反映了模型对硬件计算单元的需求。计算量一般用 OPs (Operations),即计算次数来表示。由于最常用的数据格式为 float32,因此也常常被写作 FLOPs (Floating Point Operations),即浮点计算次数。参数量参数量是模型中的参数的总和,跟模型在磁盘中所需的空间大小直接相关。对于 CNN 来说参数主要由 Conv/原创 2022-05-18 17:12:49 · 2105 阅读 · 0 评论 -
模型训练中的分批BatchSize详解
当在训练一个神经网络的时候,相对于一次性将所有的数据全输入进去,有一个更好的方法:**先将数据随机地分为几个大小一致的数据块,再分批次输入。**跟一次性训练出来的模型相比,分批训练能够使模型的适用性更好 。从而我们就理解在训练模型的时候看到的Batch_Size就是设置一个数据块包含多少数据了。Batch Size的大小影响模型的优化程度和速度。同时其直接影响到GPU内存的使用情况,假如你GPU内存不大,该数值最好设置小一点。...原创 2022-05-18 17:11:39 · 1710 阅读 · 0 评论 -
COCO数据集介绍
coco数据集是一个大型的物体检测、分割和字符的数据集。coco数据集任务coco数据集的特点共330k图片(>200k被标记)150w对象实例80个对象类别['人', '自行车', '汽车', '摩托车', '飞机', '公交车', '火车', '卡车', '船', '红绿灯', '消防栓', '停止标志','停车收费表', '长凳', '鸟', '猫', '狗', '马', '羊', '牛', '象', '熊', '斑马', '长颈鹿', '背包', '雨伞', '手提包',原创 2022-05-18 17:09:54 · 11174 阅读 · 0 评论 -
多模态与多模型融合
多模态多模态机器学习,英文全称 MultiModal Machine Learning (MMML),旨在通过机器学习的方法实现处理和理解多源模态信息的能力。每一种信息的来源或者形式,都可以称为一种模态。例如,人有触觉,听觉,视觉,嗅觉;信息有语音、视频、文字等媒介;多种多样的传感器,如雷达、红外、加速度计等。以上的每一种都可以称为一种模态。模态也可以有非常广泛的定义,比如我们可以把两种不同的语言当做是两种模态,甚至在两种不同情况下采集到的数据集,亦可认为是两种模态。 多模型融合机器学习模型原创 2022-05-05 14:23:23 · 937 阅读 · 0 评论 -
模型推理速度如何计算
对一般的软件或者GPU推理都是执行n次前向推理,然后记录总时间,最后求个平均耗时。对于特殊的硬件,例如加速器硬件。那就有两种,一种是实际推理求时间。另外一种就是编译器直接估计,因为编译器在拿到模型后就知道在硬件上的执行过程了,需要多少指令和指令周期都知道。这时候忽略带宽因素就可以预估一个推理速度(这个速度看上去会很快,和实际上系统差距比较大)。...原创 2022-05-05 14:22:46 · 1379 阅读 · 0 评论