- 博客(27)
- 资源 (1)
- 收藏
- 关注
原创 单源最短路径算法之Bellman-Ford算法
void Bellman_Ford( const int numOfVertex, /*节点数目*/ const int startVertex, /*源节点*/ int (map)[][6], /*有向图邻接矩阵*/ int
2014-09-27 12:56:41 1029
转载 非参数学习算法之局部加权回归
局部加权紧接着上面的线性回归中参数求解来继续讲吧。还是以上面的房屋价格的预测,它的中心思想是在对参数进行求解的过程中,每个样本对当前参数值的影响是有不一样的权重的。比如上节中我们的回归方程为(这个地方用矩阵的方法来表示Ɵ表示参数,i表示第i个样本,h为在Ɵ参数下的预测值): 我们的目标是让 最小,然后求出来Ɵ,再代入h中就可以得到回归方程了。
2014-09-25 20:19:47 3471 2
转载 参数学习算法之梯度下降
参照《机器学习》这本书的第4.4.3节。一.解决目标及情景假设:当给定一些数据,输入x向量已知,输出y也已知,设计一个线性函数y=h(x)去拟合这些数据。既然是线性函数,在此不妨设为h(x)=w0*x0+w1*x1。此时我们遇到的问题就是如何确定w0和w1这两个参数,即w=(w0,w1)这个向量。既然是拟合,则拟合效果可以用误差函数:E(w)=∑ [ h(x
2014-09-25 16:35:11 1127
转载 数据挖掘与机器学习的区别
数据挖掘和机器学习的区别和联系,周志华有一篇很好的论述《机器学习和数据挖掘》可以帮助大家理解。 数据挖掘受到很多学科领域的影响,其中数据库、机器学习、统计学无疑影响最大。简言之,对数据挖掘而言,数据库提供数据管理技术,机器学习和统计学提供数据分析技术。由于统计学往往醉心于理论的优美而忽视实际的效用,因此,统计学界提供的很多技术通常都要在机器学习界进一步研究,变成有效的机器学习算法之后才能
2014-09-25 13:41:32 2088
转载 留学申请Google搜索技巧
Google 使用指南by EDWARDEVIL申请过程中常常用到搜索引擎 (建议用 GOOGLE) , 对搜索引擎的熟练操作可以大大提高查找信息的效率。介绍几个常用操作:1.通过高级搜索 Google 认可 13 种主要文件格式,其中包括 Office, Lotus, PostScript,Shockwave Flash 和 text.搜索这些文件只需直接使用修饰符 file
2014-09-24 19:44:12 1178
原创 跳跃表以及C++实现
首先为了方便,我介绍的大概采用跳跃链表简介 二叉树是一种常见的数据结构。它支持包括查找、插入、删除等一系列操作。但它有一个致命的弱点,就是当数据的随机性不够时,会导致其树形结构的不平衡,从而直接影响算法的效率。 跳跃链表(Skip List)是1987年才诞生的一种崭新的数据结构,它在进行查找、插入、删除等操作时的期望时间
2014-09-24 00:32:21 13526 4
转载 聚类算法总结
聚类算法总结:---------------------------------------------------------聚类算法的种类:基于划分聚类算法(partition clustering)k-means:是一种典型的划分聚类算法,它用一个聚类的中心来代表一个簇,即在迭代过程中选择的聚点不一定是聚类中的一个点,该算法只能处理数值型数据
2014-09-21 15:56:33 3370
原创 二叉搜索树--进阶篇之平衡二叉搜索树
第四步:旋转 对于一个平衡的节点,由于任意节点最多有两个儿子,因此高度不平衡时,此节点的两颗子树的高度差2.容易看出,这种不平衡出现在下面四种情况: 1、6节点的左子树3节点高度比右子树7节点大2,左子树3节点的左子树1节点高度大于右子树4节点,这种情况成为左左。 2、6节点的左子树2节点高度比右子树7节点大2,左子树2节点的左子树1节点高度小于右子树4节点,
2014-09-21 01:04:46 962
原创 二叉搜索树--基础篇
二叉搜索树Binary Search Tree(BSTs)又名二叉排序树,二叉查找树。而能够自平衡的叫平衡搜索树,包括AVL trees, 2-3 trees, 2-3-4 trees, B-trees, Red-Black Trees红黑树,skip lists跳跃表。 在二叉搜索树的基础上,又有最优二叉搜索树。一、二叉搜索树的定义 二叉搜索树或者是一棵空树,或者是具有下列性
2014-09-20 00:28:52 907
原创 Dijkstra算法与实现--基础篇
一、Dijkstra 算法的介绍 Dijkstra 算法,又叫迪科斯彻算法(Dijkstra),算法解决的是有向图中单个源点到其他顶点的最短路径问题。举例来说,如果图中的顶点表示城市,而边上的权重表示著城市间开车行经的距离,Dijkstra 算法可以用来找到两个城市之间的最短路径。二、图文解析 Dijkstra 算法 ok,经过上文有点繁杂的信息,你还并不对此算法了如指
2014-09-17 11:09:35 2027
转载 信息增益
特征选择方法之信息增益前文提到过,除了开方检验(CHI)以外,信息增益(IG,Information Gain)也是很有效的特征选择方法。但凡是特征选择,总是在将特征的重要程度量化之后再进行选择,而如何量化特征的重要性,就成了各种方法间最大的不同。开方检验中使用特征与类别间的关联性来进行这个量化,关联性越强,特征得分越高,该特征越应该被保留。在信息增益中,重要性的衡量标准就是看特征能够为分
2014-09-16 15:13:21 939
转载 决策树基础篇
1.1、什么是决策树 咱们直接切入正题。所谓决策树,顾名思义,是一种树,一种依托于策略抉择而建立起来的树。 机器学习中,决策树是一个预测模型;他代表的是对象属性与对象值之间的一种映射关系。树中每个节点表示某个对象,而每个分叉路径则代表的某个可能的属性值,而每个叶结点则对应从根节点到该叶节点所经历的路径所表示的对象的值。决策树仅有单一输出,若欲有复数输出,可以建立独立的决
2014-09-16 13:58:31 3027
转载 分类与聚类算法基础了解
分类与聚类,监督学习与无监督学习 在讲具体的分类和聚类算法之前,有必要讲一下什么是分类,什么是聚类,以及都包含哪些具体算法或问题。Classification (分类),对于一个 classifier ,通常需要你告诉它“这个东西被分为某某类”这样一些例子,理想情况下,一个 classifier 会从它得到的训练集中进行“学习”,从而具备对未知数据进行分类的能力,这种
2014-09-16 13:39:54 2124
原创 分支界定法 branch-and-bound 分析与实现
1. 介绍分支界定法之前需要了解一下广度优先搜索breadth-First-search(B)
2014-09-16 09:33:03 18224 2
原创 哈希表初篇
一、哈希表 哈希表又称散列表。哈希表存储的基本思想是:以数据表中的每个记录的关键字k为自变量,通过一种函数H(k)计算出函数值。把这个值解释为一块连续存储空间(即数组空间)的单元地址(即下标),将该记录存储到这个单元中。在此称该函数H为哈希函数或散列函数。按这种方法建立的表称为哈希表或散列表。 我们知道:哈希表是一个固定大小的数组,数组的每个元素是一个链表(单向或双
2014-09-11 18:54:43 1353
转载 插入排序
在冒泡排序、选择排序编写代码之后,楼主渐渐找到了coding的信心,熟能生巧,就像写词唱曲之前,都得先背诵大量的诗词,熟悉各路歌曲,才能走出自己的路线,有自己的杰作。好吧,来让楼主继续进行"社会主义初级阶段"的任务,这次是插入排序。一. 算法描述 插入排序:插入即表示将一个新的数据插入到一个有序数组中,并继续保持有序。例如有一个长度为N的无序数组,进行N-1次的插入即能完成排
2014-09-09 17:04:00 634
转载 分治思想应用:归并排序
1.归并排序是利用递归和分而治之的技术将数据序列划分成为越来越小的半子表,再对半子表排序,最后再用递归步骤将排好序的半子表合并成为越来越大的有序序列,归并排序包括两个步骤,分别为: 1)划分子表 2)合并半子表 首先我们来讨论归并算法,归并算法将一系列数据放到一个向量中,索引范围为[first,last],这个序列由两个排好序的子表构成,以索引终点(
2014-09-08 18:30:19 595
原创 分治思想的应用:C++实现快速排序和随机化的快速排序
如何随机排列数列?用这个 random_shuffle() 可以得到一个随即排序:先用数组构造一个 vector 容器,然后给 random_shuffle() 算法传递容易的首尾迭代器即可
2014-09-08 14:04:49 2400
转载 C++模板
C++模板 模板是C++支持参数化多态的工具,使用模板可以使用户为类或者函数声明一种一般模式,使得类中的某些数据成员或者成员函数的参数、返回值取得任意类型。 模板是一种对类型进行参数化的工具; 通常有两种形式:函数模板和类模板; 函数模板针对仅参数类型不同的函数; 类模板针对仅数据成员和成员函数类型不同的类。 使用模板的目的就是能够让程序
2014-09-08 14:02:33 644
原创 堆排序及C++实现
#include const int MAXN = 11111;int n, a[MAXN], ans = 0;//以下两个是自定义校验函数,mincmp是小根堆所需要的,而maxcmp就是大根堆所需要的了,inline bool mincmp(const int &x, const int &y){ return x < y; }inline bool maxcmp(co
2014-09-05 15:08:44 734
原创 实现循环单链表
#ifndef GW_CHOOSE_HPP_#define GW_CHOOSE_HPP_#include #include #include "ace/Basic_Types.h"#include "ace/Singleton.h"#include "ace/Null_Mutex.h"#include "ace/Guard_T.h"#include "ace/T
2014-09-02 17:17:07 730
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人