
机器学习
文章平均质量分 88
笔记等
地球被支点撬走啦
这个作者很懒,什么都没留下…
展开
-
Transformer中的自注意力机制计算过程分析
自注意力机制(Self-Attention)顾名思义就是关注单个序列内部元素之间的相关性,不仅可以用于 seq2seq 的机器翻译模型,还能用于情感分析、内容提取等场景。因此分析网络如何表达出“单个序列”与“内部元素”之间的相关性这一问题可以回答开头所述的大部分疑问。原创 2024-03-02 20:13:40 · 1402 阅读 · 0 评论 -
元学习(meta-learning)的通俗解释
还以目标检测为例,仍然拿一个很大的数据集来训练模型,而 meta-learning 的目标不是让模型在没见过的图片中学会分辨训练集中提到过的类别,而是让模型学会分辨事物的异同,学会分辨这两者是相同的东西还是不同的东西,当模型学会分辨异同之后再在具体的分类任务中使用极少的数据集训练很少的次数即可达到甚至超越传统目标检测训练范式的效果(这种方式也称为。以上是元学习在目标检测方面的一种应用,通过元学习训练模型提取不同种类图片的特征,然后在这个预训练的模型的基础上实现快速辨别新的图片种类。元学习可以用来学算法。原创 2024-02-26 00:12:43 · 7518 阅读 · 0 评论 -
Pytorch 中 Embedding 类详解
在 NLP 领域,可以使用 Pytorch 的 torch.nn.Embeding() 类对数据进行词嵌入预处理。关于词嵌入的解释这里就不做解释咯,不明白的阔以先出门左拐找百度。重点说下这个 Embeding 类怎么用的。其定义如下:(class) Embedding(num_embeddings: int, embedding_dim: int, padding_idx: int | None = None, ...)我这里只显示了三个参数:num_embeddings、embedding原创 2022-04-02 16:29:04 · 6368 阅读 · 1 评论 -
信息量|KL散度|交叉熵损失 三者的关系
目录1、信息量2、信息熵3、相对熵(KL散度)4、交叉熵(cross entropy)5、二值交叉熵(binary cross entropy)在机器学习领域,交叉熵是一种常用的 loss 函数,但是交叉熵是怎么来的?跟信息量又有什么联系?为什么计算公式长这样?这么写有什么意义?下面将逐一介绍1、信息量信息量反映了事件的不确定性或者说发生的概率。概率越小不确定性越大,则其蕴含的信息量越大。如果一件一定会发生的事件发生了,呢么从这件事中我们获取的信息量是0,因为我们事前已经原创 2022-03-07 17:36:23 · 1414 阅读 · 0 评论 -
目标检测中的几种交并比( IoU )计算方式
目录0、IOU 的原始计算方式1、GIOU(Generalized IOU)2、DIoU(Distance-IoU)3、CIoU(Complete-IoU)IoU 即 Intersection over Union 中文叫做交并比,用来衡量目标检测过程中 预测框 与 真实框 的重合程度。目前有很多计算 IoU 的方法,这里主要介绍 GIOU、DIOU、CIOU 这三种方式。...原创 2022-03-07 11:32:42 · 12823 阅读 · 0 评论 -
中文分词:隐马尔可夫-维特比算法(HMM-Viterbi)附源码
数据集下载连接:icwb2-data中文分词数据集 - 数据集下载 - 超神经 (hyper.ai)1、什么是中文分词与英文句子这样天生就是用空格隔开的构造不同,中文语句是连贯的,中文分词就是把连贯的中文语句拆分成分离的词语。要想让机器理解中文句子的关键信息,很多情况下需要对句子做分词处理。比如对中文语句“很高兴遇到你。”这句话进行分词的结果就是“很_高兴_遇到_你_。”,一般来说,中文分词的结果不是唯一的,因为有些字可以认为独立成词,也可以与别的字连贯成词。2、数据集的构造中文分词..原创 2022-02-27 13:58:41 · 3046 阅读 · 10 评论 -
Viterbi算法(维特比算法)
举一个例子,下图所示,假如需要找一条从S到E的最短路径,每段路径都有固定的长度,为了举例方便图中仅标出部分长度。最无脑的方法就是枚举出所有可能的路径并排序比较最终找出最短的路径。是否有时间复杂度更低的算法呢?Viterbi算法就是一种快速找出最优路径的算法。边计算边删掉不可能是答案的路径,在最后剩下的路径中挑选最优路径,就是viterbi算法(维特比算法)的重点,因为后面我们再也不用考虑这些被删掉的路径了。我们从开始S出发一列一列地算,首先是S—>A,仅凭该列三条连接还不能判断从那条线原创 2022-02-25 00:00:47 · 14481 阅读 · 3 评论 -
马尔可夫链 以及 隐马尔可夫模型(HMM)
马尔可夫过程指一种状态变化(转移)的过程,在这种状态变化过程中,下一状态出现的概率只与当前所处的状态有关,与过去的状态无关。马尔可夫过程可以分为三类:马尔可夫链:时间、状态都是离散的 连续时间马尔可夫链:时间连续、状态离散的马尔可夫链 马尔可夫过程:时间、状态都是离散的这里主要解释下最常遇到的下马尔可夫链。假设状态集 为随机过程 所有可能取值组成的状态空间,是离散时间序列,若 在时刻 时所处状态的条件概率满足:此时称 为马尔可夫链。此处的“下一时刻的状态只与当前时...原创 2022-02-24 23:54:55 · 4595 阅读 · 0 评论 -
期望、方差、协方差、相关系数的理解
目录1、数学期望(均值)2、方差 D(X) 或 Var(X)3、协方差 Cov(X,Y)4、相关系数ρ5、协方差矩阵一句话概括:期望反映了平均水平,方差反映了数据波动程度,协方差反映了两个随机变量间的相关性(有量纲),相关系数反映了两个随机变量间无量纲的相关性。1、数学期望(均值)对随机变量及其概率的加权平均:这里说的期望也就是均值,在统计学中大多数情况下是以样本来代替整体,因此样本的均值计算公式为:2、方差 D(X) 或 Var(X)用来了解实际..原创 2022-02-11 23:40:37 · 9632 阅读 · 0 评论 -
极大似然估计(Maximum-Likelihood)的理解
极大似然估计 是建立在 极大似然原理 的基础上的一个统计方法,是概率论在统计学中的应用。目录1、极大似然原理2、极大似然估计1、极大似然原理极大似然原理:在随机试验中,许多事件都有可能发生,概率大的事件发生的概率也大。若只进行一次试验,事件 A 发生了,则我们有理由认为 A 比其他事件发生的概率都大。例如,一个箱子里有红黑两种颜色的球,数量为10个和1个,但并不知道到底哪种颜色的球为10个那种颜色的球为1个,这时我们随机从箱子里拿出一个球,如果这个球是红色的,那我们就认为盒子里红球原创 2022-02-11 14:52:40 · 17400 阅读 · 0 评论 -
标量/向量/矩阵求导方法
这篇博客源于在看论文时遇到了一个误差向量欧氏距离的求导,如下:在看了一堆资料后得出以下结论:这个结论是怎么来的呢?这就涉及标量/向量/矩阵的求导了。由于标量、向量都可以看做特殊的矩阵,因此就统称为矩阵求导了。1、矩阵如何求导对于一般常见的标量函数 f(x) 对标量 x 的求导为:矩阵A对矩阵B的求导 dA/dB 本质上就是矩阵A中的每一个元素分别对矩阵B中的每一个元素的求导。根据这个本质可以得出以下几种情况中的导数的数量。1、当A与B都是1×1的矩阵时,此时A对.原创 2022-01-08 14:54:11 · 3271 阅读 · 1 评论 -
TensorFlow、Python、CUDA版本对应及下载链接
官网很详细了:https://tensorflow.google.cn/install/source原创 2020-07-18 13:25:30 · 1226 阅读 · 0 评论 -
目标检测性能的衡量指标:mAP图解
在下文讲解mAP的计算过程中,我们会逐步了解TP、FP、TN、FN四种类型以及精确度precision、召回率recall、R-P曲线、AP值的含义。1、对TP、FP、TN、FN四种类型的理解T:True,代表判断正确F:False,代表判断正确P:Positive,代表被分为正样本N:Negative,代表被分为负样本TP:代表被分为正样本且分对了FP:代表被分为正样本且分错了TN:代表被分为负样本且分对了,在mAP指标中不会使用到TNFN:代表被分为负样本但是分.原创 2020-12-04 23:05:10 · 2978 阅读 · 4 评论 -
AODNet在Libtorch端的部署全过程(附详细源码)
目录一、部署环境二、部署过程1、VS2017配置Opencv的环境2、CMake的安装3、PyTorch —> Libtorch模型的转换4、Libtorch端的实现5、遇到的问题一、部署环境Windows10、Opencv3.4.10、Libtorch1.5.0-CPU-Release、PyTorch1.5.0-CUDA10.1、VS2017、CMake3.19二、部署过程1、VS2017配置Opencv的环境参考博客。感谢这位博主的分享,亲测有效!原创 2020-10-31 20:47:12 · 2137 阅读 · 5 评论 -
图像去雾:AOD-Net
论文地址:https://arxiv.org/pdf/1707.06543.pdf相关代码:https://github.com/MayankSingal/PyTorch-Image-Dehazing1、在进入图像去雾之前,先简单了解下大气散射模型1999年,针对雾天能见度低的问题,Srinivasa G. Narasimhan等人通过建立数学模型,解释了雾天图像的成像过程以及雾天图像包括的各个要素。该模型认为在强散射介质下,引起探测系统成像结果质量降低的主要原因有两种: 一是目...原创 2020-10-04 22:54:42 · 13524 阅读 · 43 评论 -
YOLOv4:ubuntu18下使用darknet训练自己的模型
为什么是小白教程?因为曾经我也是小白。。。首先,确认你电脑的有关环境是否符合以下要求:CMake >= 3.12 CUDA >= 10.0 OpenCV >= 2.4 cuDNN >= 7.0 GPU with CC >= 3.0不知道具体的版本号也没关系,如果不符和,在代码运行时会提示的,到时候根据错误提示调整对应的版本就可以了。小白逆袭第一步:下载GitHub源码。首先创建一个存放YOLOv4代码的文件夹,cd到该文件夹下。如,我在/home/(.原创 2020-09-27 11:48:03 · 1482 阅读 · 1 评论 -
Darknet中.cfg文件参数详解
转载自:https://blog.youkuaiyun.com/phinoo/article/details/83022101感谢博主分享[net] ★ [xxx]开始的行表示网络的一层,其后的内容为该层的参数配置,[net]为特殊的层,配置整个网络# Testing ★ #号开头的行为注释行,在解析cfg的文件时会忽略该行# batch=1# subdivisions=1# Trainingbatch=64 ..转载 2020-09-25 17:43:42 · 875 阅读 · 0 评论 -
Keras解读:使用Model()类构建网络模型的底层原理
一、前言:我们在使用keras来构建自己的卷积神经网络模型时,一般都会使用泛型函数Model()来构建,举一个简单的例子:'''import步骤省略,具体参数配置省略'''input=Input(shape=(3, 3))#模型输入层x=Conv2D(...)(input)#中间层x=BatchNormalization(...)(x)#中间层output=LeakyReLU(...)(x)#模型输出层Model(input,output)...原创 2020-08-06 20:53:41 · 3352 阅读 · 0 评论 -
Google Colab的详细使用教程—YOLOv3为例
一、先哔哔几句热下身相信疫情隔离在家而且还要使用深度学习的小伙伴们或多或少都会面临么的钱买高性能显卡又么的钱租服务器的窘境。下面就介绍以下Google Colab服务器的用法吧(至于怎么上Google大家自行解决哦)。Google Colaboratory是谷歌提供的基于linux系统的免费云平台,内部已经集成了深度学习所需要的库,比如Tensorflow(目前Version:2.2.0r...原创 2020-05-01 15:05:57 · 6794 阅读 · 13 评论