图像检索
阿猫的自拍
这个作者很懒,什么都没留下…
展开
-
模型训练与范数L2归一化----图像检索---有疑问的?
当最后的结果,使用了下面的方法后,测试的效果得到了明显的提升。质量的飞跃啊!!!!glo = glo.view(glo.size(0),-1)#print('glosize2',glo.shape)x=glo#x = torch.cat((glo,ocr),dim = 1,out = None)x_norm = x.norm(p=2, dim=1, keepdim=True) + 1e-...原创 2019-07-30 15:57:05 · 1041 阅读 · 0 评论 -
模型训练与测试-----POI新检测标准
目前检索的方法是:通过设置一条线,然后让新的数据集在数据数据集中寻找,如果小于这条线则认为是存在的,如果大于这条线,则认为是不存在的。目前的目标就是:提升这条线的区分度,小于他的远小于他,大于他的远大于他。假设我们设置的线是80%,那么如果大于80%的则认为是相同的,如果大于80%则认为不一样的。那么目前的评测标准,并没有考虑到这条线,而是认为前面几名都找到了,那么则是100%,如果前面几...原创 2019-08-12 15:30:16 · 640 阅读 · 0 评论 -
模型训练与测试----问题提出与现状分析
问题提出:1.一开始发现训练测试下的和测试的结果是不一样的2.然后就开始反思是不是模型保存和加载有问题3.然后继续反思加载的数据是不是有问题4.后来发现上面都没有问题5.好的那么继续走,发现测试部分。相同的数据输入,却每次都有不同的结果,不对哎,模型都一样,数据也一样不应该啊!6.因为这是两个模型的融合所以就怀疑是之前的模型有问题7.也就是我相同的数据走进来了,每一次的结果到了这一步...原创 2019-08-11 22:10:07 · 376 阅读 · 0 评论 -
OCR
from keras.models import Modelfrom keras.layers.core import Dense, Dropout, Activation, Reshape, Permutefrom keras.layers.convolutional import Conv2D, Conv2DTranspose, ZeroPadding2Dfrom keras.layer...原创 2019-05-29 19:27:07 · 218 阅读 · 0 评论 -
基于CTC的损失函数 ----从本质出发
由于对softmax的推导和实现还没有熟记于心,所以先推导softmax,而CTC作为softmax的另一种形态,从而应用到了语音和文字中,作为softmax的进阶版本。逻辑回归谈到softmax,无法避免需要谈到逻辑回归,logistics regression。而谈到logistic regression,就不免需要谈到sigmoid 激活函数。这几个概念的关系是,先是逻辑回归利用了sig...原创 2019-08-18 17:59:30 · 4748 阅读 · 0 评论 -
模型训练与测试-----pytorch和keras的软融合----GAP与全连接的作用
由于模型是由两个混合一起进行软结合,相对于传统上的模型混合都是保存h5,我们这里可以让两个不同的框架在一个框架下软流通。具体如何操作以及注意的点:△ 排布不同首先是pytorch 和keras 的tensor本身的排布是不一样的,这里是需要注意的,避免在后面混合的时候出问题。def ocr_feature(self, x): #input pytorch type: (B,...原创 2019-08-02 14:41:22 · 2907 阅读 · 0 评论 -
模型训练与测试 ----余弦距离的实现与L2范数的关系
目前的模型需要计算余弦距离,作为两个向量的距离,然后发现代码有两部分。第一部分是距离的计算,第二部分是L2范数归一化的使用。L2范数的话是这样计算的。由于我的是一列向量的距离所以,上面就是某一列的L2范数,代码实现如下: x_norm = x.norm(p=2, dim=1, keepdim=True) x_norm = x_norm.clamp(min=1e-...原创 2019-08-13 15:09:33 · 2010 阅读 · 0 评论 -
模型训练与测试---梯度下降与牛顿法与优化器与反向传播 ·1.
昨天是:大疆的笔试题,多次问了优化器的问题。逻辑:理清优化器,应该先理清楚,我们是如何梯度下降的,因为优化器的作用是更新和计算影响模型训练和模型输出的网络参数,使其逼近或达到最优值,从而最小化或最大化损失函数。也就是我们有了,损失函数,和模型那么如何进行迭代呢?优化器出现了。优化通过改变网络参数,网络参数改变损失函数,损失函数通过优化器改变网络参数。这样的反复循环来学习的。而这里的方式是什么...原创 2019-08-07 23:26:15 · 713 阅读 · 0 评论 -
模型训练与测试----Loss的角度
print('Epoch: [{0}][{1}/{2}]\t' 'Lr: {lr:.6f}\t' 'Time {batch_time.val:.2f} ({batch_time.avg:.2f})\t' 'Data {data_time.val:.4f} ({data_time.avg:.4f})\t' ...原创 2019-08-01 11:07:42 · 1330 阅读 · 0 评论 -
模型训练和动态参数调整 ---- 学习率调整,模型保存
optimizer = init_optimizer(model.parameters(), **optimizer_kwargs(args))scheduler = lr_scheduler.ReduceLROnPlateau(optimizer, 'min', patience=4)初始化部分如上:https://blog.csdn.net/weixin_40100431/article...原创 2019-07-30 20:26:52 · 1091 阅读 · 0 评论 -
模型的训练和测试--如何加快速度
1.一开始怀疑keras那边没有,调用GPU进行测试但是只要我们代码里面或者输入的语句有用到 CUDA_VISIBLE_DEVICES = xxx 网络本身就会调用GPU.2.model.train() 和 model.eval()https://blog.csdn.net/Z_lbj/article/details/79672888主要是针对model 在训练时和评价时不同的 Batch...原创 2019-07-30 19:35:09 · 1903 阅读 · 0 评论 -
模型训练与测试 -----AUC和ROC的区分
很多的笔试都会提到这个,对于深度学习来说,优化器非常重要,然后就是损失函数如何写也非常重要,但是还有一个更加重要的就是我们的评测标准,好的评测标准才可以更好的去衡量我们的模型。比如我实习的时候就需要根据业务需求,写一个符合业务需求的测试标准。AUC和ROC的标准ROC曲线:横轴:负正类率(false postive rate FPR)特异度,划分实例中所有负例占所有负例的比例;(1-S...原创 2019-08-27 16:15:59 · 1840 阅读 · 0 评论