排序算法3——直接插入排序

直接插入排序的平均复杂度是 \(O(n^2)\),因此应用场景较少。直接插入排序的思路是: 每次处理一个数据,将其插入到一个已经排好序的子序列中,直到数据处理完毕。下面给出一个动画示例:未完待续。。。。参考资料:(1)WIKI:https://en.wikipedia.org/wiki/Insertion_sort...
阅读(337) 评论(0)

目标检测——特征金字塔网络

本次继续介绍一篇有关目标检测的论文 《Feature Pyramid Networks for Object Detection》,作者包含Piotr Dollar, Ross Girshick,何凯明等大神,阵容很好很强大。特征金字塔在基于深度学习的多尺度目标检测早有应用.........
阅读(2156) 评论(1)

排序算法2——快速排序

算法原理 算法实现 ——————算法原理——————快速排序算法一种最常见的排序算法,其核心思想就是 分治 ,具体的:(1) 选定一个基准数;(2) 分区,将所有大于基准数的数据分为一区,将所有小于等于基准数的数据分为一区;(3) 递归,对上述分区重复(1)(2),直到每个分区只有一个数。 ———————————————————————————下面看一个动画来快速理解该算法是怎么工作的...
阅读(361) 评论(0)

排序算法1——冒泡排序

冒泡排序是一种比较简单的排序算法,效率不高,因此实际当中用到的机会并不多。但作为快速排序算法的基础,还是有必要了解一下。顾名思义,冒泡就是指大的数字(气泡)会优先从底部升到顶端。具体实现的方式就是重复的 交换排序,通过两两比较不断地将大的数字右移。具体看下面的GIF图就很清楚了。冒泡排序在 最坏情况下的时间复杂度是O(n²),最坏的情况比如将一组降序排好的数据按升序排列。下面是一个相对效率较高的冒泡...
阅读(330) 评论(0)

排序算法0——引言

后续会讲解一系列常见的排序算法以及一些特殊要求的排序。作为引言,这里主要强调一下 :了解一个排序算法需要注意哪些方面。...
阅读(422) 评论(0)

caffe层解读系列——slice和concat实现MultiTask

最近一段时间MultiTask网络比较流行,比如做人脸检测的时候,一个网络完成(人脸和非人脸)二分类任务的同时也要进行boudingbox回归或者人脸关键点回归。以人脸检测MTCNN为例,一个网络包含三个任务。训练的时候,一个batch中的图片,一部分用于二分类、一部分用于boundingbox 回归,一部分用于关键点回归。这种较复杂的样本组合完全可以通过slice和concat层来快速实现。 ——...
阅读(5725) 评论(2)

快速多目标检测——YOLO9000

本次介绍一篇有关快速目标检测的文章《YOLO9000: Better, Faster, Stronger》。该方法记作YOLOv2,相比v1除了在性能上有所提升之外,更是在速度上令人惊异。项目主页:http://pjreddie.com/darknet/yolo/ —————————— Introduction —————————— 通用的目标检测不但要够快够准,还要能够检测多类的目标。但实际情...
阅读(7081) 评论(3)

基于知识提取的方法训练一个小网络

Hinton大牛的文章,关于如何得到一个又小又好的网络的。文章链接《Distilling the Knowledge in a Neural Network》 —————————— 背景介绍 —————————— 大家都想要得到一个又好又快的模型,但是实际情况往往是模型越小则性能越差。文献[1]中提出了一种策略:大模型学习到的知识可以通过“提取”的方法转移到一个小模型上 。所以,本文的宏观策略就是...
阅读(1056) 评论(0)

浮点数表示

浮点数表示 浮点数的规格化表示 浮点数的表示范围 浮点数的表示精度 参考资料 之前的一些工作当中碰到了很多有关浮点数的问题,比如浮点数的表达范围、表达精度、浮点数的存储方式、浮点数的强制类型转换等等,因此感觉有必要系统了解一下有关浮点数的问题。 —————————— 浮点数表示 —————————— 浮点数是一种 公式化 的表达方式,用来近似表示实数,并且可以在...
阅读(1029) 评论(0)

caffe层解读系列——Data以及ImageData层用法

直接举一个data层的使用例子:layer { name: "cifar" type: "Data" top: "data" top: "label" include { phase: TRAIN } transform_param { mean_value: 128 mean_value: 128 mean_value: 128 ....
阅读(2788) 评论(12)

模型压缩——将模型复杂度加入loss function

这里介绍2017ICLR OpenReview中的一篇有关网络压缩的文章《Training Compressed Fully-Connected Networks with a Density-Diversity Penalty》。 **看文章标题就知道主要是针对全连接层的,由此我的好感就下降了一半。———————— 引言 ———————— 作者拿VGG说全连接层会占很多资源,压缩这个最重要。好...
阅读(1265) 评论(0)

DeepRebirth——通过融合加速网络

这里介绍2017ICLR OpenReview中的一篇有关网络加速的文章《DeepRebirth: A General Approach for Accelerating Deep Neural Network Execution on Mobile Devices》。 看文章标题觉得高大上,看方法细节觉得卧槽好水,看自己的验证结果好像还有点用。附:2017ICLR openreview http:...
阅读(1740) 评论(0)

C++ Map常见用法说明

C++中map提供的是一种键值对容器,里面的数据都是成对出现的,如下图:每一对中的第一个值称之为关键字(key),每个关键字只能在map中出现一次;第二个称之为该关键字的对应值。一. 声明//头文件 #includemap ID_Name;// 使用{}赋值是从c++11开始的,因此编译器版本过低时会报错,如visual studio 2012 map<int,...
阅读(13542) 评论(1)

深度模型一些新的运行框架或者辅助库工具等

主要记录一些新的深度学习有关的框架工具等,以作个人备份:(1) Android手机上的GPU加速DCNN(运行)库CNNdroid文章《CNNdroid: GPU-Accelerated Execution of Trained Deep Convolutional Neural Networks on Android》github链接: https://github.com/ENCP/CNNdr...
阅读(2864) 评论(0)

caffe层解读系列——hinge_loss

—————————— Hinge Loss 定义 ——————————Hinge Loss 主要针对要求”maximum-margin”的分类问题,因此尤其适用于SVM分类。Hinge Loss的定义如下:\(l(y) = max(0,1-t\cdot y)\)其中, \(t=\pm1\) , 需要注意的是 \(y\) 并不是分类的label,而只是决策函数的输出。例如在线性SVM中, \(y=wx...
阅读(2143) 评论(0)
127条 共9页首页 上一页 1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:410220次
    • 积分:5027
    • 等级:
    • 排名:第5987名
    • 原创:115篇
    • 转载:11篇
    • 译文:1篇
    • 评论:444条
    最新评论