自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(108)
  • 收藏
  • 关注

转载 EM算法原理

机器学习十大算法之一:EM算法。能评得上十大之一,让人听起来觉得挺NB的。什么是NB啊,我们一般说某个人很NB,是因为他能解决一些别人解决不了的问题。神为什么是神,因为神能做很多人做不了的事。那么EM算法能解决什么问题呢?或者说EM算法是因为什么而来到这个世界上,还吸引了那么多世人的目光。       我希望自己能通俗地把它理解或者说明白,但是,EM这个问题感觉真的不太好用通俗的语言去说明白,

2015-01-27 16:22:00 549

转载 EM算法实例

本文试图用最简单的例子、最浅显的方式说明EM(Expectation Maximization)算法的应用场景和使用方法,而略去公式的推导和收敛性的证明。以下内容翻译自《Data-Intensive Text Processing with MapReduce》。Maximum Likelihood EstimationMaximum Likelihood Estimation(MLE

2015-01-27 16:14:41 1413

转载 机器学习问题方法总结

大类名称关键词有监督分类决策树信息增益分类回归树Gini指数,Χ2统计量,剪枝朴素贝叶斯非参数估计,贝叶斯估计线性判别分析Fishre判别,特征向量求解K最邻近相似度度量:欧氏距离、街区距离、编辑距离、向

2015-01-27 15:54:39 515

转载 PCA算法及其数学原理

From: http://blog.codinglabs.org/articles/pca-tutorial.html

2015-01-09 10:38:07 591

转载 PCA算法及其数学原理

PCA(Principal Component Analysis)是一种常用的数据分析方法。PCA通过线性变换将原始数据变换为一组各维度线性无关的表示,可用于提取数据的主要特征分量,常用于高维数据的降维。网上关于PCA的文章有很多,但是大多数只描述了PCA的分析过程,而没有讲述其中的原理。这篇文章的目的是介绍PCA的基本数学原理,帮助读者了解PCA的工作机制是什么。当然我并不打算把文章写成纯数

2015-01-09 10:07:18 256

转载 数据挖掘开发工具

commercial: | free and open-sourceAC2 (from Isoft), a set of librairies for building data mining solutions on the server side.Analytics1305 Machine Learning Library, with over 15 feature-ric

2014-12-26 16:32:23 421

转载 并查集(Union-Find)算法介绍

本文主要介绍解决动态连通性一类问题的一种算法,使用到了一种叫做并查集的数据结构,称为Union-Find。更多的信息可以参考Algorithms 一书的Section 1.5,实际上本文也就是基于它的一篇读后感吧。原文中更多的是给出一些结论,我尝试给出一些思路上的过程,即为什么要使用这个方法,而不是别的什么方法。我觉得这个可能更加有意义一些,相比于记下一些结论。

2014-12-15 18:57:24 376

转载 支持向量机(SVM)基础

关于SVM的论文、书籍都非常的多,引用强哥的话“SVM是让应用数学家真正得到应用的一种算法”。SVM对于大部分的普通人来说,要完全理解其中的数学是非常困难的,所以要让这些普通人理解,得要把里面的数学知识用简单的语言去讲解才行。而且想明白了这些数学,对学习其他的内容也是大有裨益的。我就是属于绝大多数的普通人,为了看明白SVM,看了不少的资料,这里把我的心得分享分享。    其实现在能够找到的

2014-12-03 17:23:51 386

转载 K-Means 算法

最近在学习一些数据挖掘的算法,看到了这个算法,也许这个算法对你来说很简单,但对我来说,我是一个初学者,我在网上翻看了很多资料,发现中文社区没有把这个问题讲得很全面很清楚的文章,所以,把我的学习笔记记录下来,分享给大家。在数据挖掘中, k-Means 算法是一种 cluster analysis 的算法,其主要是来计算数据聚集的算法,主要通过不断地取离种子点最近均值的算法。问题

2014-12-03 16:45:10 363

转载 stringstream的清空

代码示例int main()  {      int size = 100;      stringstream strStream;      for (int i = 0; i  size; ++i)      {          strStream  i;          string numStr;          strStream >> numStr;        

2014-12-03 14:14:47 527

转载 关于mapreduce

关于mapreduce      mapreduce很适合数据之间相关性较低且数据量庞大的情况,map操作将原始数据经过特定操作打散后输出,作为中间结果,hadoop通过shuffle操作对中间结果排序,之后,reduce操作接收中间结果并进行汇总操作,最后将结果输出到文件中,从这里也可以看到在hadoop中,hdfs是mapreduce的基石。可以用下面这幅图描述map和reduce的过

2014-12-03 10:39:43 336

转载 Canopy聚类思想

一、基本思想     1、基于Canopy Method的聚类算法将聚类过程分为两个阶段      Stage1、聚类最耗费计算的地方是计算对象相似性的时候,Canopy Method在第一阶段选择简单、计算代价较低的方法计算对象相似性,将相似的对象放在一个子集中,这个子集被叫做Canopy ,通过一系列计算得到若干Canopy,Canopy之间可以是重叠的,但不会存在某个对象不属

2014-12-03 10:37:15 658

转载 KMeans聚类 K值以及初始类簇中心点的选取

本文主要基于Anand Rajaraman和Jeffrey David Ullman合著,王斌翻译的《大数据-互联网大规模数据挖掘与分布式处理》一书。  KMeans算法是最常用的聚类算法,主要思想是:在给定K值和K个初始类簇中心点的情况下,把每个点(亦即数据记录)分到离其最近的类簇中心点所代表的类簇中,所有点分配完毕之后,根据一个类簇内的所有点重新计算该类簇的中心点(取平均值),然后再迭

2014-12-03 10:33:55 4130 1

转载 最流行的4个机器学习数据集

机器学习算法需要作用于数据,而数据的本质则决定了应用的机器学习算法是否合适,而数据的质量也会决定算法表现的好坏程度。所以会研究数据,会分析数据很重要。本文作为学习研究数据系列博文的开篇,列举了4个最流行的机器学习数据集。IrisIris也称鸢尾花卉数据集,是一类多重变量分析的数据集。通过花萼长度,花萼宽度,花瓣长度,花瓣宽度4个属性预测鸢尾花卉属于(Setosa,Versicolo

2014-12-03 09:31:43 1119

转载 最大流算法--Ford-Fulkerson方法及其多种实现

网络流在上一章中我们讨论的主题是图中顶点之间的最短路径,例如公路地图上两地点之间的最短路径,所以我们将公路地图抽象为有向带权图。本章我们将对基于有向带权图的模型做进一步扩展。很多系统中涉及流量问题,例如公路系统中车流量,网络中的数据信息流,供油管道的油流量等。我们可以将有向图进一步理解为“流网络”(flow network),并利用这样的抽象模型求解有关流量的问题。

2014-11-24 15:31:05 1429

转载 关于C++ const 的全面总结

C++中的const关键字的用法非常灵活,而使用const将大大改善程序的健壮性,本人根据各方面查到的资料进行总结如下,期望对朋友们有所帮助。Const 是C++中常用的类型修饰符,常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更新的。

2014-11-24 11:48:24 292

转载 特殊数据类型成员变量的初始化

有些成员变量的数据类型比较特别,它们的初始化方式也和普通数据类型的成员变量有所不同。这些特殊的类型的成员变量包括:a.      常量型成员变量b.      引用型成员变量c.       静态成员变量d.      整型静态常量成员变量e.      非整型静态常量成员变量 对于常量型成员变量和引用型成员变量的初始化,必须通过构造函数初始

2014-11-18 17:33:36 343

转载 How to install an APK file in the Android emulator?

Q:I finally managed to obfuscate my Android application, now I want to test it by installing the APK file and running it on the emulator.How can I install an APK file on the Android Emulator

2014-11-08 13:26:15 888

转载 深度优先搜索(DFS)

1.前言深度优先搜索(缩写DFS)有点类似广度优先搜索,也是对一个连通图进行遍历的算法。它的思想是从一个顶点V0开始,沿着一条路一直走到底,如果发现不能到达目标解,那就返回到上一个节点,然后从另一条路开始走到底,这种尽量往深处走的概念即是深度优先的概念。你可以跳过第二节先看第三节,:)2.深度优先搜索VS广度优先搜索2.1演示深度优先搜索的过程还是引用上篇文章的

2014-10-20 18:35:21 518

转载 广度/宽度优先搜索(BFS)

1.前言广度优先搜索(也称宽度优先搜索,缩写BFS,以下采用广度来描述)是连通图的一种遍历策略。因为它的思想是从一个顶点V0开始,辐射状地优先遍历其周围较广的区域,故得名。 一般可以用它做什么呢?一个最直观经典的例子就是走迷宫,我们从起点开始,找出到终点的最短路程,很多最短路径算法就是基于广度优先的思想成立的。算法导论里边会给出不少严格的证明,我想尽量写得通俗一点,因此采用一些

2014-10-20 18:24:15 569

转载 Points, lines, and planes

Points, lines, and planesIn what follows are various notes and algorithms dealing with points, lines, and planes.Minimum Distance between a Point and a LineWritten by Paul Bourke

2014-10-13 16:28:57 978

转载 快速排序

快速排序的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。快速排序是一种不稳定的排序算法,也就是说,多个相同的值的相对位置也许会在算法结束时产生变动快速排序是C.R.A.Hoare于1962年提出的一种划分交换排序。它采

2014-10-11 12:02:16 331

转载 shell排序

shell排序算法:shell排序算法的时间复杂度为o(n2),本文中的间隔每次除以2,若修改时间间隔,那么就可以得到更加优化的时间代价shell排序算法基于插入排序的两个性质:1、小序列性质:插入排序在小序列时的排序时间较短.2、有序性质:插入序列在有序序列中的时间消耗较少,接近于O(n).因此可以将较长的序列分割成一些较小的序列进行插入排序,然后再将这些较小的序列合成较大的

2014-10-11 11:15:48 328

转载 归并排序

/* 归并排序的基本操作是 将两个或两个以上的记录有序序列归并为一个有序序列。 最简单的情况是,只含一个记录的序列显然是个有序序列, 经过"逐趟归并"使整个序列中的有序子序列的长度逐趟增大, 直至整个记录序列为有序序列止。 2-路归并排序则是归并排序中的一种最简单的情况, 它的基本操作是将两个相邻的有序子序列"归并"为一个有序序列, 如右侧所示。这个操作对顺序表

2014-10-11 11:02:40 366

转载 常用排序算法总结

所谓排序,就是要整理文件中的记录,使之按关键字递增(或递减)次序排列起来。当待排序记录的关键字都不相同时,排序结果是惟一的,否则排序结果不惟一。在待排序的文件中,若存在多个关键字相同的记录,经过排序后这些具有相同关键字的记录之间的相对次序保持不变,该排序方法是稳定的;若具有相同关键字的记录之间的相对次序发生改变,则称这种排序方法是不稳定的。要注意的是,排序算法的稳定性是针对所有输入实例而言

2014-09-30 15:08:10 91

转载 C++运算符优先级

优先级操作符描述例子结合性1()[]->.::++--调节优先级的括号操作符数组下标访问操作符通过指向对象的指针访问成员的操作符通过对象本身访问成员的操作符作用域操作符后置自增操作符后置自减操作符(a + b) / 4;array[4] = 2;ptr->age = 34;obj.age = 34;

2014-09-30 10:34:28 310

转载 C++封装、继承、多态

C++封装继承多态总结面向对象的三个基本特征面向对象的三个基本特征是:封装、继承、多态。其中,封装可以隐藏实现细节,使得代码模块化;继承可以扩展已存在的代码模块(类);它们的目的都是为了——代码重用。而多态则是为了实现另一个目的——接口重用!封装                                                         

2014-09-29 18:07:52 490

转载 判断两条链表是否相交&单链表是否有环

一、判断两条链表是否相交http://hi.baidu.com/gmfoqlmthriprur/item/fb96f7c8ca4db72fef46657f相交的话,一定是Y型或者V型的。所以只需要判断两个链表最后一个节点就可以了。问题描述:给定两个单向列表的头指针,比如h1、h2,判断这两个列表是否相关。注,这里只讨论这两个列表均不带环的情况

2014-09-29 17:43:01 508

转载 学好C++必须要注意的十八个问题

学好C++必须要注意的十八个问题:一、#include “filename.h”和#i nclude 的区别#include “filename.h”是指编译器将从当前工作目录上开始查找此文件#include 是指编译器将从标准库目录中开始查找此文件二、头文件的作用加强安全检测通过头文件可能方便地调用库功能,而不必关心其实现方式三、* , &修饰符的位置对于*和&修

2014-09-29 17:39:58 300

转载 Static、Extern、Volatile及Const关键字总结

Static、Extern、Volatile及Const关键字总结关键字static                                                                                                                         关键字Const有什么作用?static在C中主要

2014-09-29 17:25:51 400

转载 C++虚函数与纯虚函数用法与区别

1. 虚函数和纯虚函数可以定义在同一个类(class)中,含有纯虚函数的类被称为抽象类(abstract class),而只含有虚函数的类(class)不能被称为抽象类(abstract class)。  2. 虚函数可以被直接使用,也可以被子类(sub class)重载以后以多态的形式调用,而纯虚函数必须在子类(sub class)中实现该函数才可以使用,因为纯虚函数在基类(ba

2014-09-29 17:10:57 347

转载 C++ 虚函数表解析

前言 C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。  关于虚函数的使

2014-09-29 16:46:58 285

转载 C++中struct和class的区别

一、 C++中的struct对C中的struct进行了扩充,它已经不再只是一个包含不同数据类型的数据结构了,它已经获取了太多的功能。    struct能包含成员函数吗?   能!    struct能继承吗?          能!!    struct能实现多态吗?       能!!!      最本质的一个区别就是默认的访问控制,体现在两个方

2014-09-29 16:45:09 355

转载 关于C++中的大小端、位段(惑位域)和内存对齐

听到好几个朋友说到去一些公司做面试,总是遇到关于大小端、位段(或者叫位域)和内存对齐的考题,然后就不知所措了。虽然我认为很多开发根本就用不到这个,但是我认为很有必要学习理解这些知识点,因为它可以让你更了解C++的,了解程序在内存的运行情况,也能加深对计算机系统的理解。        声明:由于本文的代码会受到计算机环境的影响,故在此说明本篇博文中的程序的运行环境。        

2014-09-29 15:50:02 848

转载 C++ sizeof 使用规则及陷阱分析

1、什么是sizeof   首先看一下sizeof在msdn上的定义:   The sizeof keyword gives the amount of storage, in bytes, associated with a variable or a type (including aggregate types). This keyword returns a value o

2014-09-29 14:40:15 335

转载 C和C++中存储区域详解(栈、堆、全局...)

一. 在c中分为这几个存储区1.栈 - 由编译器自动分配释放2.堆 - 一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收3.全局区(静态区),全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。- 程序结束释放4.另外还有一个专门放常量的地方。- 程序结束释放            

2014-09-29 11:50:46 391

转载 C++中各种类型的成员变量的初始化方法

C++类中各种不同类型成员根据是否static 、是否const类型的初始化方法不尽相同,写代码时经常搞乱,网上搜了一下资料,全部总结一下。一、例子[cpp] view plaincopy-----------------Test.h----------------------------    #pragma once    cla

2014-09-29 11:23:07 586

转载 How to check if a polygon is completely inside another polygon

Checking if a polygon is completely inside another polygon is a very common problem in geometry, and most solutions you can find in the web aren’t that easy, especially when you are dealing with irreg

2014-08-22 11:16:51 443

转载 多边形clip工具性能对比

An independent test of multiple polygon clipping libraries can be found here:http://rogue-modron.blogspot.com/2011/04/polygon-clipping-wrapper-benchmark.htmlFrom: http://www.angusj.com/delph

2014-08-22 11:14:08 765

转载 怎么将右手坐标系转换成左手坐标系

有两种:(1)z轴取负,然后渲染时背面消隐改为逆时针!(2)相机用右手坐标

2014-08-22 10:54:54 4417

空空如也

空空如也

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

TA关注的人

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