- 博客(27)
- 资源 (19)
- 收藏
- 关注
原创 kd-tree的python实现
本文主要内容 [ kD-tree的C语言实现 ]是多年前写过的一篇kd-tree的博客。当时正在看李航老师的《统计学习方法》一书,看到kNN算法和kd-tree之间的关系,非常有兴趣进行深入了解,所以汇总了一些资料,后面由于实际工作中用不到,就放下了。最近重新翻了翻李老师的这本书,发现现在的理解比以前深了很多,而且这种经典是常看常新的,每多翻一次,就多一分收获。本文主要内容: ...
2018-03-28 00:02:14 4861 1
原创 基于Cuda9.1 + Cudnn7.0 + VS2013在Win10上同时安装Tensorflow1.6和Caffe
基于Cuda9.1 + Cudnn7.0 + VS2013在Win10上同时安装Tensorflow1.6和Caffe 最近,自己电脑的系统坏掉了,平时总是用Windows来写论文和文档,而用Ubuntu来做深度学习的训练,因此在自己的本子上安装了Win10和Ubuntu双系统,但是双系统非常容易损坏,尤其是当Ubuntu系统升级时,每次系统坏掉,总要重装一遍Tensorflow和Caff...
2018-03-20 20:31:32 1712 2
原创 基于半边数据结构(翼边数据结构)的Eular操作来实现扫成 通过OpenGL进行CAD实体建模 经测试可直接运行
话说,今天重装电脑程序,把VS2010重装以后,运行了几个之前写的小程序测试了一下.不经意间,我发现2年前自己参考着资料写的一个Sweep扫成程序,当时程序能够跑,但是和翼边数据结构的含义有所不同,当时费了好大的劲也没弄明白其中一个指针的处理怎么会是那个样子的,现在时间过去两年了,自己竟然还是没有抽出时间来将其弄明白,真是惭愧.也许我当时坚持查阅资料仔细研究就不会是这个样子了,而且有些东西一旦放下
2012-06-15 19:31:37 7619 6
原创 kD-tree 的C语言实现 带有史上最全的注释和解释
kdtree的原理就是基于二叉树的形式,将高维空间用超矩形进行划分.其主要用途是用来求解高维空间中最近邻的值. 下面是kdtree.h文件,是kdtree数据结构的头文件#ifndef _KDTREE_H_#define _KDTREE_H_#ifdef __cplusplusextern "C" {#endifstruct kdtree;
2012-06-11 16:13:40 21688 9
转载 关于交叉熵在loss函数中使用的直观理解
关于交叉熵在loss函数中使用的直观理解交叉熵(cross entropy)是深度学习中常用的一个概念,一般用来求目标与预测值之间的差距。以前做一些分类问题的时候,没有过多的注意,直接调用现成的库,用起来也比较方便。最近开始研究起对抗生成网络(GANs),用到了交叉熵,发现自己对交叉熵的理解有些模糊,不够深入。遂花了几天的时间从头梳理了一下相关知识点,才算透彻的理解了,特地记录下来,以便日后查阅...
2018-10-28 23:52:43 1292
原创 主动学习、纯半监督学习与直推学习
主动学习、纯半监督学习与直推学习本文主要介绍主动学习、纯半监督学习与直推学习的概念:主动学习(active learning)纯半监督学习(semi-supervised learning)直推学习(transductive learning)引言 看论文时,看到了transductive learning相关的概念,由于是第一次接触,想先找个教材看看,就翻看了...
2018-03-14 21:04:21 3176
原创 互信息概念与定理
最近在看一些熵相关的东西,为了了解一下互信息相关的东西,查阅了一些资料,有一个课件自己感觉写的不错,但是下载不下来,我就对它们进行了截图,希望对大家有帮助。这个课件中讲的内容比较基础,但是对于非通信、信息类的同学来说还是很有帮助的,而且不仅通俗易懂,而且证明过程详尽,是不可多得的好材料。其重要包括互信息概念、定理、常用的结论,已经一些应用中经常用到的性质,闲言少叙,直接上图。
2013-01-30 14:33:57 27748 3
转载 经验风险最小化 与 结构风险最小化
什么是统计学习?看起来高深莫测,其实就是在这干这么一件事情:就是给你看一堆东西,你想办法给一个解释,然后拿着这个解释去判断其它的东西。不过,和物理学不一样,在那里,解释是人想出来的,在统计学习里,解释是机器构造出来的。 在许多问题里面,对象是非常复杂的,要用成百上千,甚至更多的数字去表示一个东西。当统计学家们遇到了这些问题,他们终于从对在一维和二维空间建立起来的基于概率密度的完美的数学体
2012-10-29 09:31:07 4969 1
转载 史上最详细最容易理解的HMM文章
http://www.52nlp.cn/hmm-learn-best-practices-four-hidden-markov-modelswiki上一个比较好的HMM例子分类 隐马尔科夫模型 HMM(隐马尔科夫模型)是自然语言处理中的一个基本模型,用途比较广泛,如汉语分词、词性标注及语音识别等,在NLP中占有很重要的地位。网上关于HMM的介绍讲解文档很多,我自己当时开始看的时
2012-10-15 13:52:18 65500 8
原创 The EM(Expectation–Maximization) Algorithm 详解
在统计计算中,最大期望(EM,Expectation–Maximization)算法是在概率(probabilistic)模型中寻找参数最大似然估计的算法,其中概率模型依赖于无法观测的隐藏变量(Latent Variabl)。最大期望经常用在机器学习和计算机视觉的数据集聚(Data Clustering)领域。通常来说,聚类是一种无指导的机器学习问题,如此问题描述:给你一堆数据点,让你将它
2012-10-10 10:39:19 12466
原创 cross-validation 交叉验证
交叉验证在机器学习、数据挖掘和模式识别等领域,需要训练大量的数据来得到一个准确的模型,当数据的数量有限时,就会出现不同的问题。为了解决这些问题,交叉验证的方法就出现了。名词解释: l Holdout 当数据有限时,需要将原始数据分为两份,一份用来training一份用来testing(比例一般是2/3和1/3),或者分为三份,还有一份用来validation。以上过程就叫做Ho
2012-10-09 19:50:25 6269 2
原创 用C++写的矩阵处理函数 包括求逆、转置、乘积等等
用C++写的矩阵处理函数 包括求逆、转置、乘积等等 最近,无论是大学还是小学,都放暑假了。 我们本来也应该有暑假的,可是悲催地被老师给残忍剥夺了,只能继续呆在实验室里面苦逼地干活。 最近南方天气太热,室外的温度老是挑战40度大关,中午出去吃个饭,回来时身上的衣服都会彻底湿透,在这样的天气里,干活的效率可想而知了。 最近在看机器学习和动态贝叶斯网络的书,顺便找了一些源
2012-07-05 21:00:07 9203 1
原创 用C++写的矩阵处理函数 包括求逆、转置、乘积等等
用C++写的矩阵处理函数 包括求逆、转置、乘积等等 最近,无论是大学还是小学,都放暑假了。 我们本来也应该有暑假的,可是悲催地被老师给残忍剥夺了,只能继续呆在实验室里面苦逼地干活。 最近南方天气太热,室外的温度老是挑战40度大关,中午出去吃个饭,回来时身上的衣服都会彻底湿透,在这样的天气里,干活的效率可想而知了。 最近在看机器学习和动态贝叶斯网络的书,顺便找了一些源
2012-07-05 20:59:00 2828 1
原创 最完整的线性表应用 经测试可直接运行
有很多文章内容很丰富,但阅读的人很少,其之所以曲高和寡,大概是因为大部分的人看起来有难度。下面我总结了一下线性表的应用,以飨读者,为了方便初学者学习,每个程序都经过我调试运行,大家可阅之,运行之,有意见欢迎提出,欢迎留言。基本的线性表有三种类型:顺序表、链表和静态链表,下面有三个程序,对应上述的三种链表。顺序表:/*------很简单的顺序线性表------*/
2012-06-18 14:55:35 2853 2
原创 经典算法研究:模式匹配(子串匹配)之 BM 算法(C语言实现版)初版
#include #include char s[51],t[11];int Dist(char *t,char ch){ int len = strlen(t); int i = len - 1; if(ch == t[i]) return len; //如果字符和字符串中的最后一个相同,则长度为字符串的长度
2012-06-05 19:59:06 1301 1
原创 经典算法研究:模式匹配(子串匹配)之 KMP 算法(C语言实现版)
最近研究KMP算法,参考了很多网上的资料,感觉它们写的都比较乱,包括csdn博客名人v_july_v。这些资料有个通病,那就是写的东西都比较多,比较杂乱,但是很难使人深入的去理解。其实对一个经典算法的理解,就在那么关键的几步,写一堆东西上去,反而不利于读者对于算法本质的理解。下面写了一些我对KMP算法的理解,并用C语言实现了出来,希望大家多多指教。传统的字符串比较算法很简单,拿一个主串s和一个
2012-06-05 16:11:20 8484
原创 简单的 字符串比较函数 易懂 复杂度
1.简单的字符串匹配函数简单的字符串匹配很简单,就是一个两重循环。算发一:#include#include char s[51],t[11];int next[11];int cnt[11]; void index(char*s,char *t,int pos){ int i,j,k; int x = 0; int l
2011-10-21 10:38:28 2228
原创 字符串匹配 KMP 算法
//传统的字符串比较算法#include #include char s[51],t[11];int next[11];int index(char *s,char *t,int pos){ int i = pos; int j = 0; int len1 = strlen(s); int len2 = strlen(t); while(i {
2011-10-20 15:45:28 586
转载 C++ 静态数据成员 静态成员函数
类中的静态成员数据可以在类体中初始化的只有常量整型的成员,因为静态数据成员可以为类中的其它数据成员或函数成员所用,所以考虑到一个数组如果用静态成员作为维数的话,则应该让该成员被常量表达式初始化,所以C++允许常量整型的静态成员在类体中被初始化,而其它类型一律不允许.注意这里的整型不单止int,只要是可以用来表示数组维数的类型都是整型.同时,在类中被声明的静态成员一般要在类外中被定义(即初始化).即
2011-06-27 13:11:00 1093
原创 C++ 赋值构造函数 临时变量 临时对象 之一
为了验证C++中的复制构造函数和临时对象的问题,我写了一个小程序来研究了一下://复制构造函数与临时对象#include using namespace std;class A{ public: A(){cout A(const A& a){cout ~A(){cout};A func( A a){ return a;}int main(){ A
2011-06-24 10:30:00 4919 1
转载 C语言输入输出函数
C语言输入输出函数 1. fopen()函数 fopen函数用于打开文件, 其调用格式为: FILE *fopen(char *filename, *type); 在介绍这个函数之;前, 先了解一下下面的知识。 (1) 流(stream)和文件(file) 流和文件 在Turbo C2.0中是有区别的, Turbo
2011-06-22 19:33:00 1251
原创 最大连续子序列之和
经典算法——求最大子序列和比较经典的算法问题,能够很好的体现动态规划的实现,以一点“画龙点睛” 大大精简了算法复杂度,且实现简单。本文中实现了4种:一般 maxSubSequenceSum0 O(n^3)简单优化过的算法 maxSubSequenceSum1 O(n^2)分治法优化的算法 maxSubSequenceSum2 O(n*log(n))动态规划的算法 maxSubSequenceS
2011-06-15 15:21:00 5986
原创 并查集2---转载一个别人的小结
等价关系与等价类从数学上看,等价类是一个对象(或成员)的集合,在此集合中的所有对象应满足等价关系。若用符号"≡"表示集合上的等价关系,那么对于该集合中的任意对象x,y, z,下列性质成立:1、自反性:x ≡ x2、对称性:若 x ≡ y 则 y ≡ x3、传递性:若 x ≡ y 且 y ≡ z 则 x ≡ z因此,等价关系是集合上的一个自反、对称、传递的关系。
2011-06-07 16:30:00 747
原创 并查集---一点小的感悟
最近在做ACM题,遇到了一个叫做并查集的东西,于是从网上找了一些资料,顺便自己总结了一些,希望对大家和自己都有用~~ (一)什么叫做并查集 英文:DisjointSet,即“不相交集合” 将编号分别为1…N的N个对象划分为不相交集合,在每个集合中,选择其中某个元素代表所在集合。 常见两种操作: 1、n合并两个集合
2011-06-07 15:51:00 605
机器学习经典高清书目
2016-07-08
基于半边数据结构(翼边)的Eular操作来实现扫成
2012-06-15
jdk 6.0 API Document 文档
2011-07-21
基于半边的Eular操作
2009-11-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人