深度学习
文章平均质量分 68
划水的鱼儿
目标检测、目标跟踪、reid不做了,学java了
展开
-
如何使用PaddleDection复现YOLO/PPYOLO等网络
1、一些想说的:2、简介:3、环境配置:4、数据集配置:4、训练(以PPYOLO为例):5、模型导出6、模型预测1、一些想说的:对PaddlePaddle框架的使用做一下记录。最近有一些任务,要求使用paddlepaddle框架去做一个目标检测的项目,刚拿到这个任务的时候我的内心也是有一点排斥的,这么好用的pytorch不香吗?基于任务的要求我还是去开始做了,看了PaddleDection之后感觉还是比较齐全的,而且也是很简单去调用的,且各个trick很容易就可以组合起来。总结起来优点:1..原创 2021-07-21 21:40:08 · 1739 阅读 · 5 评论 -
yolo格式取类别
‘’’取出类别标签为1-5‘’’import osfrom shutil import copypath = r"C:/Users/Admin/Desktop/STUDY/result/result/"save = r"C:/Users/Admin/Desktop/STUDY/result/1/"files = os.listdir(path)for txt in files:print(txt)with open(path+txt) as f: lines = f.readli原创 2021-06-22 22:50:55 · 503 阅读 · 2 评论 -
目标检测--损失函数
仅作个人学习,侵权删。大部分来自:https://zhuanlan.zhihu.com/p/35709485. 损失函数分类1、 Classification Error(分类错误率)2 、Mean Squared Error (均方误差)3 、Cross Entropy Loss Function(交叉熵损失函数)4 、Focal loss损失函数分类1.预测政治倾向例子我们希望根据一个人的年龄、性别、年收入等相互独立的特征,来预测一个人的政治倾向,有三种可预测结果:民主党、共和党、其他党。假设原创 2021-04-27 15:14:30 · 912 阅读 · 0 评论 -
采用one-hot编码的原因
将离散型特征使用one-hot编码,确实会让特征之间的距离计算更加合理。比如,有一个离散型特征,代表工作类型,该离散型特征,共有三个取值,不使用one-hot编码,其表示分别是x_1 = (1), x_2 = (2), x_3 = (3)。两个工作之间的距离是,(x_1, x_2) = 1, d(x_2, x_3) = 1, d(x_1, x_3) = 2。那么x_1和x_3工作之间就越不相似吗?显然这样的表示,计算出来的特征的距离是不合理。那如果使用one-hot编码,则得到x_1 = (1,原创 2021-04-21 21:55:25 · 345 阅读 · 0 评论 -
YOLO-----关于正负样本、Loss、IOU、怎样去平衡正负样本的问题?
关于正负样本、Loss、IOU、怎样去平衡正负样本的问题 1、关于正负样本2、Loss计算3、IOU、GIOU、DIOU、CIOU4、怎样去平衡正负样本的问题?先整理一下anchor的概念常用的anchor定义----Faster R-CNN 定义三组纵横比ratio = [0.5,1,2]和三种尺度scale = [8,16,32],可以组合处9种不同的形状和大小的边框。----YOLO则不是使用预设的纵横比和尺度的组合,而是使用k-means聚类的方法,从训练集中学习得到不同的Anchoryo原创 2021-04-15 22:44:02 · 12351 阅读 · 9 评论 -
边界框回归(Bounding Box Regression)详解
链接: https://blog.csdn.net/zijin0802034/article/details/77685438.转载 2021-04-15 20:00:40 · 1050 阅读 · 0 评论 -
C均值分析与例子
C均值算法思想采用距离作为相似性指标,从而发现给定数据集中的K个类,且每个类的中心是根据类中所有值的均值得到,每个类用聚类中心来描述。对于给定的一个包含n个d维数据点的数据集X以及要分得的类别K,选取欧式距离作为相似度指标,聚类目标是使得各类的聚类平方和最小,聚类中心为对应类别中各数据点的平均值,同时为了使得算法收敛,在迭代过程中,应使最终的聚类中心尽可能的不变 。算法基本步骤1在样本集合中选择C个点作为初始类中心;2在剩下的样本点中选择一个,计算其到各个中心点的距离,选取距离最短者将其归为那个类原创 2021-04-15 16:06:09 · 1615 阅读 · 1 评论 -
深度学习两大基础Tricks:dropout和BN
dropout定义是指在神经网络训练中,以一定的概率随机地丢弃一部分神经元来简化网络的一项操作。本质上来说,dropout就是在正常的神经网络基础上给每一层的每一个神经元加了一道概率流程来随机丢弃某些神经元以达到防止过拟合的目的。听概念感觉哦哦我会了,实测我傻了…大规模的神经网络有两个缺点:费时和容易过拟合Dropout的出现很好的可以解决这个问题,每次做完dropout,相当于从原始的网络中找到一个更瘦的网络,如下图所示:dropout带来的模型的变化1.训练层面无可避免的,训练网络的每个原创 2021-04-14 17:31:58 · 601 阅读 · 0 评论 -
模型训练时加载预训练模型,为何?以及为何数据集标准化、归一化
1、加载预训练模型的好处2、标准化,归一化2.1标准化作用2.2什么是标准化2.3标准化过程--去均值--除方差1、加载预训练模型的好处目前深度学习神经网络中,训练过程是基于梯度下降法来进行参数优化的。通过一步步的迭代,来求得最小的损失函数和最优的模型权重。进行梯度下降时会给每一个参数赋一个初始值。一般我们希望数据和参数的均值都为0,输入和输出数据的方差一致。在实际应用中,参数服从高斯分布或者均匀分布都是比较有效的初始化方式。一个好的初始化优势1.加快梯度下降的收敛速度2.更有可能获得一个低模.原创 2021-04-14 16:42:32 · 3432 阅读 · 0 评论 -
转自:机器学习实验室----深度学习两大基础Tricks:Dropout和BN详解
感觉总结的很好,转一哈学习自用,由于机器学习公众号没有链接所以发了原创,侵权删深度学习两大基础Tricks:Dropout和BN详解Dropoutdropout作为目前神经网络训练的一项必备技术,自从被Hinton提出以来,几乎是进行深度学习训练时的标配。就像做菜时必须加料酒一样,无论何时,大家在使用全连接层的时候都会习惯性的在后面加上一个dropout层。通常情况下,dropout被作为一种防止神经网络过拟合的正则化方法,对神经网络的泛化性能有很大的帮助。每个人都会用dropout,但你真的理解它吗原创 2020-10-29 11:23:46 · 267 阅读 · 0 评论 -
视频抽帧程序
# -*- coding:utf8 -*-import cv2import osimport shutildef get_frame_from_video(video_name, interval): """ Args: video_name:输入视频名字 interval: 保存图片的帧率间隔 Returns: """ # 保存图片的路径 save_path = video_name.split('.mp4')[0原创 2020-09-21 21:05:59 · 1659 阅读 · 0 评论 -
transforms.Normalize,计算数据量大数据集的像素均值(mean)和标准差(std)
对大量数据在训练前做出标准化处理均值标准差定义:均值反映了图像的亮度,均值越大说明图像亮度越大,反之越小;标准差反映了图像像素值与均值的离散程度,标准差越大说明图像的质量越好;import osimport cv2import numpy as nppath = '/home/train/images' #图片保存路径def compute(path): file_names = os.listdir(path) per_image_Rmean = []原创 2020-09-21 20:53:19 · 1864 阅读 · 4 评论