机器学习/深度学习
文章平均质量分 82
zjn.ai
这个作者很懒,什么都没留下…
展开
-
AlexeyAB DarkNet YOLOv3 Loss计算全解析
YOLOv3 Loss计算和正负样本选取原创 2021-12-24 10:34:42 · 3587 阅读 · 0 评论 -
解决rotatedRectangleIntersection计算目标检测旋转框IOU不准确问题C++、opencv
问题cv::rotatedRectangleIntersection(cv::RotatedRect r1, cv::RotatedRect r1, vector<cv::Point2f> vertices)用来计算两个旋转矩形框的相交多边形,返回的结果vertices是多边形的点坐标,最多返回8个点的坐标。 再通过double cv::contourArea(InputArray contour, bool oriented=false)计算多边形面积,这样就得到了相交多边形的面积。原创 2021-03-08 11:48:16 · 5561 阅读 · 5 评论 -
Darknet预处理数据增强中翻转(flip)注意事项
AlexeyAB提出了yolov4网络并对Darknet进行了诸多改进,本文是基于由AlexeyAB改进的Darknet进行分析。众所周知,翻转(flip)是数据增强中最常用的方法,Darknet也原生支持这个操作,在cfg文件中添加flip=1即可,但是其实在cfg文件中即使你没有添加该句,Dar...原创 2020-07-29 16:35:57 · 2463 阅读 · 1 评论 -
【深度学习】数据增强(Data Augmentation)numpy、opencv实现
深度学习是以数据推动的学科,深层神经网络一般都需要大量的训练数据才能获得比较理想的结果。在数据量有限的情况下,可以通过数据增强(Data Augmentation)来, 提高模型鲁棒性,避免过拟合。 数据增强的方法有很多种,比如旋转、水平翻转、垂直翻转、随机裁剪、色彩扰动、加入噪声、随机缩放等等。本文只讨论和实现两种最常用和最基本的方法:随机裁剪和水平翻转。一、随机裁剪以cifar-10...原创 2019-03-25 17:08:42 · 3317 阅读 · 0 评论 -
【深度学习】打乱数据及keras自定义generator
一、打乱数据在深度学习中,打乱数据是很重要的。比如,训练集、验证集和测试集需要来自同一分布,所以要打乱数据集再分离,这样就能保证训练集、验证集和测试集的数据分布都是相同的。再比如,制作minibatch的时候,每经过一次epoch都要打乱一次数据集,使每次输入的minibatch分布都不相同,可见打乱数据的重要性。假如你的内存能装下整个数据集那么,就可以这样:import numpy...原创 2019-01-23 20:50:09 · 5762 阅读 · 3 评论 -
【机器学习】F1分数(F1 Score)详解及tensorflow、numpy实现
F1-Score相关概念F1分数(F1 Score),是统计学中用来衡量二分类(或多任务二分类)模型精确度的一种指标。它同时兼顾了分类模型的准确率和召回率。F1分数可以看作是模型准确率和召回率的一种加权平均,它的最大值是1,最小值是0。真实 1真实 0预测 1True Positive(TP)真阳性False Positive(FP)假阳性预测 0Fals...原创 2018-12-11 20:52:03 · 108997 阅读 · 6 评论 -
解决利用keras的InceptionV3、ResNet50模型做迁移学习训练集和验证集的准确率相差很大的问题
kaggle的人类蛋白图谱图像分类的比赛告一段落了,终于有时间闲下来写写这一路走来填的坑了。keras的版本是2.2.4有没有小伙伴遇到过用keras的InceptionV3、ResNet50等含有BN层的模型做迁移学习训练集和验证集结果相差很大的问题,例如下面这样:Epoch 1/201500/1500 [==============================] - 24s...原创 2019-01-12 12:54:48 · 13829 阅读 · 44 评论 -
Kaggle识别手写数字入门赛基于tensorflow-GPUF1得分0.9957(TOP 15%)
贴出来比赛结果,截至到现在是TOP 15%,用的是CNN,完整的代码我会贴在最后面。洗数据从kaggle下载的数据集包含三个文件,train.csv,test.csv和sample_submission.csv。利用pandas包读取.csv文件。train.csv是42000x785的数组,一共42000个样本,第一列是图像的label,剩下784需要转换为28x28的图片。tes...原创 2018-11-21 21:59:46 · 1031 阅读 · 2 评论 -
【深度学习】keras 实现轻量级网络ShuffleNet
ShuffleNet是由旷世发表的一个计算效率极高的CNN架构,它是专门为计算能力非常有限的移动设备(例如,10-150 MFLOPs)而设计的。该结构利用组卷积和信道混洗两种新的运算方法,在保证计算精度的同时,大大降低了计算成本。ImageNet分类和MS COCO对象检测实验表明,在40 MFLOPs的计算预算下,ShuffleNet的性能优于其他结构,例如,在ImageNet分类任务上,Sh...原创 2019-04-30 11:36:04 · 4044 阅读 · 7 评论