- 博客(50)
- 资源 (2)
- 收藏
- 关注
原创 C++发送邮件实现
首先,别忘了要设置发送邮箱的smtp,例如,假设你需要用网易邮箱,你需要去你的163邮箱设置开启smtp(有的邮箱还需要设置授权码)。接着就可以用以下代码发送邮件了:// SendMail.h#ifndef _SEND_MAIL_H_#define _SEND_MAIL_H_#include <windows.h>#include <stdio.h>#include <WinSock.h>
2017-06-29 17:01:11
9225
15
原创 C++多线程互斥计数
有时候程序中要对多线程调用某函数次数进行统计,如果对全局变量进行增量,会造成紊乱:#include <boost/thread/thread.hpp>#include <atomic> #include <iostream>#include <time.h>using namespace std;// 全局的结果数据 long total = 0; // 点击函数void click()
2017-06-29 16:45:17
1347
原创 类对象与类指针_虚函数与多态
基类class Shape {public: Shape() { cout << "construct Shape" << endl; } ~Shape() { cout << "deconstruct Shape" << endl; } virtual double calArea() { cout << "
2017-05-29 22:16:13
934
原创 堆内存和栈内存
程序的内存分配一个由C/C++编译的程序占用的内存分为以下几个部分栈区(stack)—— 由编译器(操作系统)自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。堆区(heap)(new、malloc等) —— 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表。全局区(静态区)(stati
2017-05-29 14:46:56
518
原创 GBDT 梯度提升决策树
背景知识决策树略boostingboosting提升方法可以表示为多个弱分类器的权重和: 其中的w是权重,Φ是弱分类器(回归器)的集合,其实就是一个加法模型(即基函数的线性组合) boosting的前向分布算法,实际上是一个贪心算法,也就是在每一步求解弱分类器Φ(m)和其参数w(m)的时候不去修改之前已经求好的分类器和参数: 这里β代替w表示权重,图中的b是之前说的Φ,即弱分类器。 根据损
2017-05-23 17:09:56
858
原创 原码、补码、反码及计算机中负数的表示
原码第一位为符号位,后面的为数字的二进制表示。 eg: 127 和 -127 的 8位原码为 [0111 1111, 1111 1111]反码正数的反码为其原码;负数的反码,符号位不変,后面的取反。 eg: 1的8位原码和反码为 [00000001]原 = [00000001]反 -1的8位反码为 [10000001]原 = [11111110]反补码正数的反码为其原码;
2017-05-09 16:40:18
697
转载 TOP5%Kaggler:如何在 Kaggle 首战中进入前 10% | 干货
雷锋网(公众号:雷锋网)按:本文作者章凌豪,复旦大学计算机科学专业。有兴趣的同学可以移步他的个人主页:Linghao ZhangIntroductionKaggle 是目前最大的 Data Scientist 聚集地。很多公司会拿出自家的数据并提供奖金,在 Kaggle 上组织数据竞赛。我最近完成了第一次比赛,在 2125 个参赛队伍中排名第 98 位(~ 5%)。因为是第一次
2017-05-07 13:32:50
3549
转载 详解LSTM
本文译自 Christopher Olah 的博文Recurrent Neural Networks人类并不是每时每刻都从一片空白的大脑开始他们的思考。在你阅读这篇文章时候,你都是基于自己已经拥有的对先前所见词的理解来推断当前词的真实含义。我们不会将所有的东西都全部丢弃,然后用空白的大脑进行思考。我们的思想拥有持久性。传统的神经网络并不能做到这点,看起来也像是一种巨大的弊端
2017-05-02 23:06:28
758
转载 Tensorflow常用优化器
摘要:本系列主要对tf的一些常用概念与方法进行描述。本文主要针对tensorflow的模型训练Training与测试Testing等相关函数进行讲解。为‘Tensorflow一些常用基本概念与函数’系列之四。1、序言本文所讲的内容主要为以下列表中相关函数。函数training()通过梯度下降法为最小化损失函数增加了相关的优化操作,在训练过程中,先实例化一个优化函数,比如 tf.train.
2017-04-26 16:47:47
2292
原创 LeetCode 390. Elimination Game
There is a list of sorted integers from 1 to n. Starting from left to right, remove the first number and every other number afterward until you reach the end of the list. Repeat the previous step ag
2017-04-12 18:17:36
961
原创 高斯混合模型GMM(Gaussian Mixture Model)
统计学习的模型有两种,一种是概率模型,一种是非概率模型。 所谓概率模型,是指训练模型的形式是P(Y|X)。输入是X,输出是Y,训练后模型得到的输出不是一个具体的值,而是一系列的概率值(对应于分类问题来说,就是输入X对应于各个不同Y(类)的概率),然后我们选取概率最大的那个类作为判决对象(软分类--soft assignment)。所谓非概率模型,是指训练模型是一个决策函数Y=f(X),输
2017-04-07 15:36:58
2432
转载 令人拍案叫绝的Wasserstein GAN
这篇文章讲的很好!转自知乎:https://zhuanlan.zhihu.com/p/25071913?utm_source=weibo&utm_medium=social在GAN的相关研究如火如荼甚至可以说是泛滥的今天,一篇新鲜出炉的arXiv论文《Wasserstein GAN》却在Reddit的Machine Learning频道火了,连Goodf
2017-04-06 11:41:00
944
转载 分布的相似度(距离)计算
作者:知乎用户链接:https://www.zhihu.com/question/39872326/answer/83688277来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。1. Kullback-Leibler divergence对于两个分布和,KL散度定义为。可以看出,如果要小,那么大的地方必须要大(否则会很大);而在小的地方
2017-04-06 10:19:31
14992
转载 干货 | Generative Adversarial Networks(GAN)的现有工作(2016.02)
干货 | Generative Adversarial Networks(GAN)的现有工作程序媛的日常(小S) · 2016-02-29 15:21今天想与大家分享的是图像生成中一些工作。这些工作都基于一大类模型,Generative Adversarial Networks(GAN)。从模型名称上甚至都可以
2017-04-06 09:54:41
737
转载 常用模式识别算法小结
http://blog.youkuaiyun.com/scyscyao/article/details/5987581这学期选了门模式识别的课。发现最常见的一种情况就是,书上写的老师ppt上写的都看不懂,然后绕了一大圈去自己查资料理解,回头看看发现,Ah-ha,原来本质的原理那么简单,自己一开始只不过被那些看似formidable的细节吓到了。所以在这里把自己所学的一些点记录下来,供备忘,也供
2017-04-05 11:17:52
3658
原创 CV Review
颜色特征颜色直方图RGB颜色空间不符合人眼对颜色相似度的主观判断,颜色直方图方法中一般转换至HSV空间。 将灰度值分为n个bins,统计每个bins上的像素数目,再归一化,作为颜色特征向量。Bag of colors与颜色直方图类似,只是用CIE-Lab颜色空间(更符合人眼视觉感知),并且bins由聚类产生,再统计直方图。LUCID(Locally Uniform Comparison Image
2017-03-23 22:04:14
586
原创 卡特兰数介绍及其应用
卡特兰数卡特兰数又称卡塔兰数,英文名Catalan number,是组合数学中一个常出现在各种计数问题中出现的数列。以比利时的数学家欧仁·查理·卡塔兰 (1814–1894)的名字来命名,其前几项为 : 1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786…… 其递推式: h(n)=h(0)∗h(n−1)+h(1)∗h(n−2)+...+h(
2017-02-12 16:25:10
1058
原创 Cpp Note
一、wchar_t类型char类型变量可以存储一个字节的字符,它用来保存英文字符和标点符号是可以的,但是对于汉字、韩文以及日文这样的字符却不可以,因为汉字、韩文以及日文每一个文字都占据两个字节,为了解决这个问题,c++提出了wchar_t类型,称之为双字节类型,又称宽字符类型。int main(int argc, wchar_t* argv[]){ //使用setlocale函数将本机的语
2017-02-07 21:44:21
323
1
原创 C++ template模板函数的定义与调用
引用《C++primer(第四版)》里的观点:1)标准C++为编译模板代码定义了两种模型:“包含”模型和“分别编译”模型。2)所有编译器都支持“包含”模型,某些编译器支持“分别编译”模型。问题的提出:(帖子在:http://topic.youkuaiyun.com/u/20101215/15/f4f270f2-f0f9-4c5f-8765-1bfde2aeebbf.html)方法一:声明和实现都放在头文件里。在
2017-01-28 17:06:05
11280
2
原创 function 将数据点分配到最近的聚类中心
背景在对大样本进行聚类时,由于k-means的计算开销问题,通常随机选取部分样本进行聚类,得到聚类中心。然而往往要得到每个样本最近聚类中心,这常用在检索索引构建中,eg. OPQ (PAMI 2014),Inverted Multi-Index(PAMI 2014)。算法步骤设一个特征向量p(1*2000),2000是特征维数。聚类中心矩阵为C(256*2000),256为中心数,2000为特征维数
2017-01-11 22:20:59
2046
原创 Matlab Coding Tricks
算每一列的均值% X: 1000 * 128sample_mean = mean(X, 1);% sample_mean: 1 * 128每个元素减去所在列的均值sample_mean = mean(X, 1);X = bsxfun(@minus, X, sample_mean);% X的每一行都减去sample_mean向量
2016-12-12 21:48:24
352
原创 量化
向量量化向量量化的思路是,将高维输入空间分成若干不同的区域,对每个区域确定一个中心向量作为聚类的中心,与其处于同一区域的输入向量可用该中心向量来代表,从而形成了以各中心向量为聚类中心的点集。在图像处理领域常用各区域中心点(向量)的编码代替区域内的点来存储或传输,从而提出了各种基于向量量化的有损压缩技术。 在二维输入平面上表示的中心向量分布称为Voronoi图,如下图所示,前两篇博文介绍的胜者为王的
2016-12-12 19:21:53
544
原创 Iterative Quantization: A Procrustean Approach to Learning Binary Codes (ITQ)
ProblemSimilarity-preserving binary codes for efficient retrieval in large-scale image collections.ITQ Method1. Dimensionality ReductionSuch as PCA.Ommited here.2. Binary quantizationsymbols: X∈Rn×dX
2016-11-06 23:14:37
806
原创 Python Coding Tricks
1. Python 二维数组 数据类型转换>>> a = [['1','2','5','6','8'],['4', '5', '8', '5', '8']]>>> map(map, [float, float], a)15: [[1.0, 2.0, 5.0, 6.0, 8.0], [4.0, 5.0, 8.0, 5.0, 8.0]]>>> map(map, [int, int], a)16:
2016-11-03 14:56:49
403
原创 搞定Python编码问题
一、 Python字符串的编码用 u’汉字’ 构造出来的是unicode类型,不用的话构造出来是str类型。 构造unicode类型字符串:s1 = u'中文' #u表示用unicode编码方式储存信息s2 = unicode('中文','gbk')unicode是一个内置函数,第二个参数指示源字符串的编码格式。str的编码是与系统环境相关的,一般就是sys.getfilesystemencod
2016-10-24 17:01:18
705
原创 Django Bug
1. MultiValueDictKeyErrorPossible cause and solutions:There is no dict key named ‘user’, or you have a naming conflict.In views.py your code If you use GET method:request.GET.get('user')#instead of r
2016-08-20 22:42:23
427
原创 [LeetCode]Delete Digits
题目 Given string A representative a positive integer which has N digits, remove any k digits of the number, the remaining digits are arranged according to the original order to become a new positive i
2016-06-28 21:47:07
388
原创 C++ Coding Tricks Note
string转C风格char数组:string A = "1234";char ch_a[5];strcpy(ch_a, A.c_str());
2016-06-28 21:30:43
417
原创 Mac下git通过SSH进行免密码安全连接github
某日push至github时出现以下错误:Push failed Failed with error: error: RPC failed; result=56, HTTP code = 200 fatal: The remote end hung up unexpectedly fatal: The remote end hun
2016-06-23 09:43:05
1273
转载 C#调用C函数(DLL)传递参数问题
备忘:1.C函数参数为字符串char*。如果是入参,对应C#中string或StringBuilder;如果是出参对应C#中StringBuider; 2.C函数参数为结构体指针,需在C#中对应定义结构体。如果是入参,C#中可为myfunction(MyStruct mystruct)或myfunction(ref MyStruct mystruct);如果是出参,C#中为
2016-05-31 20:51:59
1161
转载 OpenCV 中 IplImage、CvMat、Mat中的type是怎么回事?
在使用opencv的过程中,无论使用原始的IplImage和CvMat类型,还是用最新C++版本的Mat类型,在创建和使用过程中,经常会遇到CV_8UC1、CV_8UC3、CV_32FC3等声明,我以前也经常遇到,曾经看懂了,现在又忘记了,现在把它写下来,方便以后查看,遇到同样问题的菜鸟也能尽快理解这些声明是怎么回事。先把opencv源代码贴出来#define CV_CN_MAX 512#
2016-03-16 10:45:25
521
原创 LeetCode: Find Peak Element
A peak element is an element that is greater than its neighbors. Given an input array where num[i] ≠ num[i+1], find a peak element and return its index. The array may contain multiple peaks,
2016-03-10 14:58:39
299
原创 Leetcode Search in Rotated Sorted Array
Suppose a sorted array is rotated at some pivot unknown to you beforehand. (i.e., 0 1 2 4 5 6 7 might become 4 5 6 7 0 1 2). You are given a target value to search. If found in the array retu
2016-03-09 11:26:19
409
转载 Summary for LeetCode 2Sum, 3Sum, 4Sum, K Sum
Summary for LeetCode 2Sum, 3Sum, 4Sum, K SumOverviewI summarize various solutions (sort, hash, etc) for the leetcode 2Sum, 3Sum, 4Sum problems as well as how to optimize and some importa
2016-03-05 16:05:18
692
转载 The backtracking algorithm
Backtracking is a form of recursion.The usual scenario is that you are faced with a number of options, and you must choose one of these. After you make your choice you will get a new set of options; just what set of options you get depends on what choice
2016-02-25 11:41:15
649
原创 leetcode 202 Happy Number
202. Happy NumberWrite an algorithm to determine if a number is "happy".A happy number is a number defined by the following process: Starting with any positive integer, replace the number by
2016-02-23 18:51:21
464
原创 二叉树
基本概念二叉树(binary tree)是一种特殊的树。二叉树的每个节点最多有两棵子树,左子树和右子树。 满二叉树: 除最后一层外,每一层上的所有结点都有两个子结点。 完全二叉树:除最后一层外,每一层上的节点数均达到最大值;在最后一层上只缺少右边的若干结点。 二叉树的遍历根据遍历根结点的顺序分为三种遍历方式: 前序遍历:根节点->左子树->右子树 中序遍历:左子树->根节点->右子树 后
2016-02-20 22:14:42
391
原创 OpenCV tricks 笔记
1. cvGet2D函数越界问题CvScalar cvGet2D( const CvArr* arr, int idx0, int idx1 ); 对于图像中的某一像素点 P(x, y), 在我们正常的坐标系中,x代表其横坐标,y代表其纵坐标,而在opencv的函数 cvGet2D()与cvSet2D() 中,却行不通。 idx0代表是的行,即高度,对应于我们平常坐标系的y, idx1代
2016-02-05 22:53:44
330
原创 OpenCV Bug集合
OpenCV Bug集合不定期更新1.vs2010引用了MotionDll.dll,可是报错: Error 1 error LNK1104: cannot open file ‘MotionDll.lib’ 解决方案:1)检查该dll文件是否在当前工程目录下 2)检查MotionDll.dll的引用位置是否配置正确:项目properties - Linker - Additional L
2016-02-02 21:06:11
565
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人