自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

kaggle expert,全球排名前1000,清华计算机研究生,兴趣算法工程

kaggle expert,全球排名前1000,清华计算机研究生,兴趣算法工程

  • 博客(77)
  • 资源 (4)
  • 收藏
  • 关注

原创 The Turn Model for Adaptive Routing中的west-first算法

图5a显示了在2D网格中禁止两次旋转的一种方法。禁止转弯的是向西的两个转弯。因此,要向西,必须从那个方向出发。这就提出了west-first-routing算法:如果需要,先向西路由一个包,然后自适应地向南、向东和向北路由。west first算法的示例路径如图5b所示。在该图中,黑色方块表示节点,灰色条表示需要数据包等待(虚线)或采取替代路径的阻塞通道。注意,显示了最小路径和非最小路径。基于Dally和Seitz[14]的工作证明了west-first部分自适应算法是无死锁的,他们证明了如果互连网络中的信

2020-05-28 17:43:59 679

原创 XY路由算法与转弯模型路由算法

2020-05-28 12:47:18 2112 3

原创 west-first路由算法

自适应路由算法文献[ 3]提出一种拐弯模型应用于自适应路由 算法中。其基本思想是在路由中禁止最少的拐弯 以避免通道之间的循环依赖,从而有效避免死锁。 在二维 Mesh网络中,存在8种可能的拐弯并且可 能形成两个环路,如图2a所示。为了避免死锁,必 须禁止其中的一些拐弯情况。XY 路由算法通过 禁止4种拐弯(由 Y方向到 X方向的拐弯)来避免 死锁,如图2b所示,剩余四种拐弯不能形成一个环 路,但是在路由中也不存在自适应性。事实上,只 需要禁止最多2种拐弯就可以避免形成一个环路。 为此,文献[ 3]提出西向.

2020-05-28 12:35:26 1050

原创 非刚性配准(Non-rigid ICP )

原文https://blog.csdn.net/linmingan/article/details/79270874?utm_medium=distribute.pc_relevant.none-task-blog-baidujs-1非刚性ICP算法可以用来3d face的配准

2020-05-26 17:22:16 8321 3

原创 Frobenius norm(Frobenius 范数)

Frobenius 范数,简称F-范数,是一种矩阵范数,记为||·||F。矩阵A的Frobenius范数定义为矩阵A各项元素的绝对值平方的总和,也就是

2020-05-26 15:44:15 2018

原创 《统计学习方法》代码全解析——第十三部分无监督学习概论

1.机器学习或统计学习一般包括监督学习、无监督学习、强化学习。无监督学习是指从无标注数据中学习模型的机器学习问题。无标注数据是自然得到的数据,模型表示数据的类别、转换或概率无监督学习的本质是学习数据中的统计规律或潜在结构,主要包括聚类、降维、概率估计。2.无监督学习可以用于对已有数据的分析,也可以用于对未来数据的预测。学习得到的模型有函数 ????=????(????) z=g(x) ,条件概率分布 ????(????|????) P(z|x) ,或条件概率分布 ????(????|????) P(x|

2020-05-25 19:58:28 349

原创 《统计学习方法》代码全解析——第十二部分监督学习方法总结

1 适用问题¶监督学习可以认为是学习一个模型,使它能对给定的输入预测相应的输出。监督学习包括分类、标注、回归。本篇主要考虑前两者的学习方法。分类问题是从实例的特征向量到类标记的预测问题;标注问题是从观测序列到标记序列(或状态序列)的预测问题。可以认为分类问题是标注问题的特殊情况。 分类问题中可能的预测结果是二类或多类;而标注问题中可能的预测结果是所有的标记序列,其数目是指数级的。感知机、????k近邻法、朴素贝叶斯法、决策树是简单的分类方法,具有模型直观、方法简单、实现容易等特点;逻辑斯谛回

2020-05-25 19:36:44 327

原创 《统计学习方法》代码全解析——第十一部分条件随机场

1.概率无向图模型是由无向图表示的联合概率分布。无向图上的结点之间的连接关系表示了联合分布的随机变量集合之间的条件独立性,即马尔可夫性。因此,概率无向图模型也称为马尔可夫随机场。概率无向图模型或马尔可夫随机场的联合概率分布可以分解为无向图最大团上的正值函数的乘积的形式。2.条件随机场是给定输入随机变量 ???? X 条件下,输出随机变量 ???? Y 的条件概率分布模型, 其形式为参数化的对数线性模型。条件随机场的最大特点是假设输出变量之间的联合概率分布构成概率无向图模型,即马尔可夫随机场。条件随机场是

2020-05-25 19:25:10 329

原创 《统计学习方法》代码全解析——第四部分朴素贝叶斯

1.朴素贝叶斯法是典型的生成学习方法。生成方法由训练数据学习联合概率分布 ????(????,????) P(X,Y) ,然后求得后验概率分布 ????(????|????) P(Y|X) 。具体来说,利用训练数据学习 ????(????|????) P(X|Y) 和 ????(????) P(Y) 的估计,得到联合概率分布:????(????,????)=????(????)????(????|????)概率估计方法可以是极大似然估计或贝叶斯估计。2.朴素贝叶斯法的基本假设是条件独立性

2020-05-25 18:45:00 364

原创 《统计学习方法》代码全解析——第三部分k近邻法

1. ???? 近邻法是基本且简单的分类与回归方法。???? k 近邻法的基本做法是:对给定的训练实例点和输入实例点,首先确定输入实例点的 ???? 个最近邻训练实例点,然后利用这 ???? 个训练实例点的类的多数来预测输入实例点的类。2. ???? 近邻模型对应于基于训练数据集对特征空间的一个划分。???? k 近邻法中,当训练集、距离度量、 ???? 值及分类决策规则确定后,其结果唯一确定。3. ???? 近邻法三要素:距离度量、 ???? 值的选择和分类决策规则。常用的距离度量是欧氏距离及更一

2020-05-25 18:01:44 475

原创 《统计学习方法》代码全解析——第二部分 感知机

1.感知机是根据输入实例的特征向量 ???? x 对其进行二类分类的线性分类模型:感知机模型对应于输入空间(特征空间)中的分离超平面 ????⋅????+????=02.感知机学习的策略是极小化损失函数:3.感知机学习算法是基于随机梯度下降法的对损失函数的最优化算法,有原始形式和对偶形式。算法简单且易于实现。原始形式中,首先任意选取一个超平面,然后用梯度下降法不断极小化目标函数。在这个过程中一次随机选取一个误分类点使其梯度下降。4.当训练数据集线性可分时,感知机学习算法是收敛的。感知机

2020-05-25 17:31:28 424

转载 《统计学习方法》代码全解析——第一部分统计学习方法概论

1.统计学习是关于计算机基于数据构建概率统计模型并运用模型对数据进行分析与预测的一门学科。统计学习包括监督学习、非监督学习、半监督学习和强化学习。2.统计学习方法三要素——模型、策略、算法,对理解统计学习方法起到提纲挈领的作用。3.本书主要讨论监督学习,监督学习可以概括如下:从给定有限的训练数据出发, 假设数据是独立同分布的,而且假设模型属于某个假设空间,应用某一评价准则,从假设空间中选取一个最优的模型,使它对已给训练数据及未知测试数据在给定评价标准意义下有最准确的预测。4.统计学习中,进行模型选择或

2020-05-25 16:42:18 567

转载 Python面试题解答——第三部分Python高级

元类42.Python中类方法、类实例方法、静态方法有何区别?类方法: 是类对象的方法,在定义时需要在上方使用 @classmethod 进行装饰,形参为cls,表示类对象,类对象和实例对象都可调用 类实例方法: 是类实例化对象的方法,只有实例对象可以调用,形参为self,指代对象本身;静态方法: 是一个任意函数,在其上方使用 @staticmethod 进行装饰,可以用对象直接调用,静态方法实际上跟该类没有太大关系43.遍历一个object的所有属性,并print每一个属性名?clas

2020-05-24 22:58:06 626

原创 Python面试题解答——第二部分企业面试题

企业面试题 企业面试题15.python新式类和经典类的区别?a. 在python里凡是继承了object的类,都是新式类b. Python3里只有新式类c. Python2里面继承object的是新式类,没有写父类的是经典类d. 经典类目前在Python里基本没有应用e. 保持class与type的统一对新式类的实例执行a.__class__与type(a)的结果是一致的,对于旧式类来说就不一样了。f.对于多重继承的属性搜索顺序不一样新式类是采用广度优先搜索,旧式类采用深度

2020-05-24 21:35:11 507

原创 Python面试题解答——第一部分

文件操作1.有一个jsonline格式的文件file.txt大小约为10Kdef get_lines(): with open('file.txt','rb') as f: return f.readlines()if __name__ == '__main__': for e in get_lines(): process(e) # 处理每一行数据现在要处理一个大小为10G的文件,但是内存只有4G,如果在只修改get_lines 函数而其他

2020-05-24 17:58:40 874

原创 第十五章 面向对象程序设计

第十五章 面向对象程序设计OOP:概述面向对象程序设计(object-oriented programming)的核心思想是数据抽象、继承和动态绑定。 继承(inheritance): 通过继承联系在一起的类构成一种层次关系。 通常在层次关系的根部有一个基类(base class)。 其他类直接或者简介从基类继承而来,这些继承得到的类成为派生类(derived class)。 基类负责定义在层次关系中所有类共同拥有的成员,而每个派生类定义各自特有的成员。 对于某些函数,基类希望它

2020-05-24 16:31:06 259

原创 第十三章 拷贝控制

第十三章 拷贝控制拷贝控制操作(copy control):拷贝构造函数(copy constructor) 拷贝赋值运算符(copy-assignment operator) 移动构造函数(move constructor) 移动赋值函数(move-assignement operator) 析构函数(destructor)拷贝、赋值和销毁拷贝构造函数如果一个构造函数的第一个参数是自身类类型的引用,且任何额外参数都有默认值,则此构造函数是拷贝构造函数。 class Foo{ p

2020-05-24 16:23:09 193

原创 c++ primer课后题答案 第9章 : 顺序容器

练习9.1 对于下面的程序任务,vector、deque和list哪种容器最为适合?解释你的选择的理由。如果没有哪一种容器优于其他容器,也请解释理由。(a) 读取固定数量的单词,将它们按字典序插入到容器中。我们将在下一章中看到,关联容器更适合这个问题。(b) 读取未知数量的单词,总是将单词插入到末尾。删除操作在头部进行。(c) 从一个文件读取未知数量的整数。将这些数排序,然后将它们打印到标准输出。解: (a) list ,因为需要频繁的插入操作。(b) deque ,总是在头尾进行插入、删除操作。

2020-05-24 16:16:34 550

原创 c++ primer练习题 第七章 类 (Class)

练习7.1 使用2.6.1节定义的Sales_data类为1.6节的交易处理程序编写一个新版本。解:#include <iostream>#include <string>using std::cin; using std::cout; using std::endl; using std::string;struct Sales_data{ string bookNo; unsigned units_sold = 0; double rev

2020-05-24 15:29:35 485

原创 链接装载库

内存、栈、堆一般应用程序内存空间有如下区域:栈:由操作系统自动分配释放,存放函数的参数值、局部变量等的值,用于维护函数调用的上下文 堆:一般由程序员分配释放,若程序员不释放,程序结束时可能由操作系统回收,用来容纳应用程序动态分配的内存区域 可执行文件映像:存储着可执行文件在内存中的映像,由装载器装载是将可执行文件的内存读取或映射到这里 保留区:保留区并不是一个单一的内存区域,而是对内存中受到保护而禁止访问的内存区域的总称,如通常 C 语言讲无效指针赋值为 0(NULL),因此 0 地址正常情况

2020-05-24 02:07:27 305

原创 一文总结More Effective c++

仔细区别 pointers 和 references(当你知道你需要指向某个东西,而且绝不会改变指向其他东西,或是当你实现一个操作符而其语法需求无法由 pointers 达成,你就应该选择 references;任何其他时候,请采用 pointers) 最好使用 C++ 转型操作符(static_cast、const_cast、dynamic_cast、reinterpret_cast) 绝不要以多态(polymorphically)方式处理数组(多态(polymorphism)和指针算术不能混用;数组

2020-05-24 00:37:06 369

原创 一文总结《Effective C++》

Effective C++视 C++ 为一个语言联邦(C、Object-Oriented C++、Template C++、STL) 宁可以编译器替换预处理器(尽量以 const、enum、inline 替换 #define) 尽可能使用 const 确定对象被使用前已先被初始化(构造时赋值(copy 构造函数)比 default 构造后赋值(copy assignment)效率高) 了解 C++ 默默编写并调用哪些函数(编译器暗自为 class 创建 default 构造函数、copy 构造函

2020-05-24 00:23:41 653

原创 组卷积(group convolution)

说明分组卷积之前我们用一张图来体会一下一般的卷积操作。从上图可以看出,一般的卷积会对输入数据的整体一起做卷积操作,即输入数据:H1×W1×C1;而卷积核大小为h1×w1,通道 为C1,一共有C2个,然后卷积得到的输出数据就是H2×W2×C2。这里我们假设输出和输出的分辨率是不变的。主要看这个过 程是一气呵成的,这对于存储器的容量提出了更高的要求。但是分组卷积明显就没有那么多的参数。先用图片直观地感受一下分组卷积的过程。对于上面所说的同样的一个问题,分组卷 积就如下图所示可以看到,图中将..

2020-05-23 23:15:25 12445

原创 Faster R-CNN的RPN网络

RPN结构说明:1. 从基础网络提取的第五卷积层特征进入RPN后分为两个分支,其中一个分支进行针对feature map(上图conv-5-3共有512 个feature-map)的每一个位置预测共(9*4=36)个参数,其中9代表的是每一个位置预设的9种形状的anchor-box,4对 应的是每一个anchor-box的预测值(该预测值表示的是预设anchor-box到ground-truth-box之间的变换参数),上图中指 向rpn-bbox-pred层的箭头上面的数字36即是代表了上述的36个参数

2020-05-23 23:03:22 455

原创 FCN

一句话概括就是:FCN将传统网络后面的全连接层换成了卷积层,这样网络输出不再是类别而是 heatmap;同时为了解决因为 卷积和池化对图像尺寸的影响,提出使用上采样的方式恢复。作者的FCN主要使用了三种技术:卷积化(Convolutional)上采样(Upsample)跳跃结构(Skip Layer)卷积化卷积化即是将普通的分类网络,比如VGG16,ResNet50/101等网络丢弃全连接层,换上对应的卷积层即可。上采样此处的上采样即是反卷积(Deconvolution)。当然关于这个名字不

2020-05-23 22:57:14 501

原创 YOLO系列

YOLOv1(1) 给个一个输入图像,首先将图像划分成7 * 7的网格。(2) 对于每个网格,每个网格预测2个bouding box(每个box包含5个预测量)以及20个类别概率,总共输出7×7×(2*5+20) =1470个tensor(3) 根据上一步可以预测出7 * 7 * 2 = 98个目标窗口,然后根据阈值去除可能性比较低的目标窗口,再由NMS去除冗余窗口即 可。YOLOv1使用了end-to-end的回归方法,没有region proposal步骤,直接回归便完成了位置和类别的判定。种种

2020-05-23 22:38:07 187

原创 Very Deep Convolutional Networks for Large-Scale Image Recognition

《Very Deep Convolutional Networks for Large-Scale Image Recognition》arXiv:https://arxiv.org/abs/1409.1556 intro:ICLR 2015 homepage:http://www.robots.ox.ac.uk/~vgg/research/very_deep/VGG是Oxford的Visual Geometry Group的组提出的(大家应该能看出VGG名字的由来了)。该网络是在ILSVRC 2014

2020-05-23 22:25:17 600

原创 PyTorch 深度学习:38分钟快速入门——RNN 做图像分类

RNN 特别适合做序列类型的数据,那么 RNN 能不能想 CNN 一样用来做图像分类呢?下面我们用 mnist 手写字体的例子来展示一下如何用 RNN 做图像分类,但是这种方法并不是主流,这里我们只是作为举例。RNN 做图像分类import syssys.path.append('..')import torchfrom torch.autograd import Variablefrom torch import nnfrom torch.utils.data import DataLo

2020-05-23 00:07:44 2224 1

原创 PyTorch 深度学习:37分钟快速入门——FCN 做语义分割

语义分割是一种像素级别的处理图像方式,对比于目标检测其更加精确,能够自动从图像中划分出对象区域并识别对象区域中的类别在 2015 年 CVPR 的一篇论文 Fully Convolutional Networks for Semantic Segmentation 这篇文章提出了全卷积的概念,第一次将端到端的卷积网络推广到了语义分割的任务当中,随后出现了很多基于 FCN 实现的网络结构,比如 U-Net 等。数据集 首先我们需要下载数据集,这里我们使用 PASCAL VOC 数据集,其是一个正在进行

2020-05-22 23:53:25 1250 2

原创 PyTorch 深度学习:36分钟快速入门——GAN

自动编码器和变分自动编码器,不管是哪一个,都是通过计算生成图像和输入图像在每个像素点的误差来生成 loss,这一点是特别不好的,因为不同的像素点可能造成不同的视觉结果,但是可能他们的 loss 是相同的,所以通过单个像素点来得到 loss 是不准确的,这个时候我们需要一种全新的 loss 定义方式,就是通过对抗进行学习。这个网络是由两部分组成的,第一部分是生成,第二部分是对抗。简单来说,就是有一个生成网络和一个判别网络,通过训练让两个网络相互竞争,生成网络来生成假的数据,对抗网络通过判别器去判别真伪,最

2020-05-22 23:24:38 788 1

原创 PyTorch 深度学习:35分钟快速入门——变分自动编码器

变分编码器是自动编码器的升级版本,其结构跟自动编码器是类似的,也由编码器和解码器构成。回忆一下,自动编码器有个问题,就是并不能任意生成图片,因为我们没有办法自己去构造隐藏向量,需要通过一张图片输入编码我们才知道得到的隐含向量是什么,这时我们就可以通过变分自动编码器来解决这个问题。其实原理特别简单,只需要在编码过程给它增加一些限制,迫使其生成的隐含向量能够粗略的遵循一个标准正态分布,这就是其与一般的自动编码器最大的不同。这样我们生成一张新图片就很简单了,我们只需要给它一个标准正态分布的随机隐含向量,这样

2020-05-22 22:45:04 1132

转载 Truncated Signed Distance Function: Experiments on Voxel Size

论文:Truncated Signed Distance Function: Experiments on Voxel Size简称:TSDF作者:Diana Werner等时间:2014相关:SDF 重要的一张图: (a)中,绿色是物体表面,蓝色三角是视锥范围,黄色深度为正,红色深度为负,灰色是靠近表面的一些体素。(b)中,以左图的蓝色射线为例,深度--tsdf的关系,距离表面的[-1000mm, 1000mm]是[-1, 1]的截断处,tsdf=0处为表面。从SDF...

2020-05-20 22:01:19 652 1

原创 PyTorch 深度学习:34分钟快速入门——自动编码器

自动编码器最开始是作为一种数据压缩方法,同时还可以在卷积网络中进行逐层预训练,但是随后更多结构复杂的网络,比如 resnet 的出现使得我们能够训练任意深度的网络,自动编码器就不再使用在这个方面,下面我们讲一讲自动编码器的一个新的应用,这是随着生成对抗模型而出现的,就是使用自动编码器生成数据。第一部分是编码器(encoder),第二部分是解码器(decoder),编码器和解码器都可以是任意的模型,通常我们可以使用神经网络作为我们的编码器和解码器,输入的数据经过神经网络降维到一个编码,然后又通过另外一个神

2020-05-19 01:38:15 954

原创 PyTorch 深度学习:33分钟快速入门——VGG

CIFAR 10¶cifar 10 这个数据集一共有 50000 张训练集,10000 张测试集,两个数据集里面的图片都是 png 彩色图片,图片大小是 32 x 32 x 3,一共是 10 分类问题,分别为飞机、汽车、鸟、猫、鹿、狗、青蛙、马、船和卡车。这个数据集是对网络性能测试一个非常重要的指标,可以说如果一个网络在这个数据集上超过另外一个网络,那么这个网络性能上一定要比另外一个网络好,目前这个数据集最好的结果是 95% 左右的测试集准确率。你能用肉眼对这些图片进行分类吗?cifar .

2020-05-19 01:20:12 619

原创 PyTorch 深度学习:32分钟快速入门——ResNet

ResNet当大家还在惊叹 GoogLeNet 的 inception 结构的时候,微软亚洲研究院的研究员已经在设计更深但结构更加简单的网络 ResNet,并且凭借这个网络子在 2015 年 ImageNet 比赛上大获全胜。ResNet 有效地解决了深度神经网络难以训练的问题,可以训练高达 1000 层的卷积网络。网络之所以难以训练,是因为存在着梯度消失的问题,离 loss 函数越远的层,在反向传播的时候,梯度越小,就越难以更新,随着层数的增加,这个现象越严重。之前有两种常见的方案来解决这个问题:

2020-05-19 01:00:36 466

原创 PyTorch 深度学习:32分钟快速入门——DenseNet

DenseNet¶因为 ResNet 提出了跨层链接的思想,这直接影响了随后出现的卷积网络架构,其中最有名的就是 cvpr 2017 的 best paper,DenseNet。DenseNet 和 ResNet 不同在于 ResNet 是跨层求和,而 DenseNet 是跨层将特征在通道维度进行拼接, DenseNet因为是在通道维度进行特征的拼接,所以底层的输出会保留进入所有后面的层,这能够更好的保证梯度的传播,同时能够使用低维的特征和高维的特征进行联合训练,能够得到更好的结果。DenseN

2020-05-18 21:56:50 584

原创 PyTorch 深度学习:31分钟快速入门——Batch Normalization

Batch Normalization¶前面在数据预处理的时候,我们尽量输入特征不相关且满足一个标准的正态分布,这样模型的表现一般也较好。但是对于很深的网路结构,网路的非线性层会使得输出的结果变得相关,且不再满足一个标准的 N(0, 1) 的分布,甚至输出的中心已经发生了偏移,这对于模型的训练,特别是深层的模型训练非常的困难。所以在 2015 年一篇论文提出了这个方法,批标准化,简而言之,就是对于每一层网络的输出,对其做一个归一化,使其服从标准的正态分布,这样后一层网络的输入也是一个标准的正态分布,

2020-05-18 21:44:51 456

原创 PyTorch 深度学习:30分钟快速入门

卷积¶卷积在 pytorch 中有两种方式,一种是 torch.nn.Conv2d(),一种是 torch.nn.functional.conv2d(),这两种形式本质都是使用一个卷积操作这两种形式的卷积对于输入的要求都是一样的,首先需要输入是一个 torch.autograd.Variable() 的类型,大小是 (batch, channel, H, W),其中 batch 表示输入的一批数据的数目,第二个是输入的通道数,一般一张彩色的图片是 3,灰度图是 1,而卷积网络过程中的通道数比较大,会

2020-05-18 20:54:35 410

原创 PyTorch系列入门到精通——GPU的使用

PyTorch系列入门到精通——GPU的使用

2020-05-18 20:47:04 252

原创 PyTorch系列入门到精通——梯度消失与爆炸,损失函数

PyTorch系列入门到精通——梯度消失与爆炸

2020-05-18 20:33:12 741

人手一份核武器 - Hacking Team 泄露(开源)资料导览手册 _ WooYun知识库.pdf

事先声明本人并不是全栈安全工程师,仅仅是移动安全小菜一枚,所以对泄漏资料的分析难免会有疏忽或着错误,望各位围观的大侠手下留情。 首先来看安全界两大元老对Hacking Team(以下简称HT)被黑这个事件的看法: @tombkeeper: Stuxnet 让公众知道:“原来真有这种事”,Snowden 让公众知道:“原来这种事这么多”,Hacking Team 让公众知道:“原来这种事都正经当买卖干了”

2020-03-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除