- 博客(109)
- 资源 (11)
- 收藏
- 关注
原创 机器学习笔记-Logistic回归
回顾linearregressionlinear\ regression如果使用平方错误的话,我们可以很方便的解析出最好的ww是什么。即wbest=X†yw_{ best}=X^{\dagger} yLogistic Regression Problem问题的提出从一个人的身体数据来判断这个人有没有心脏病,这是一个典型的二元分类问题。Logistic Regression关注的是根据一个人的身体状
2017-08-23 10:30:23 3486
原创 机器学习笔记-线性回归
Linear Regression Problem信用额度预测希望算法可以给出针对用户信用卡额度的预测,即当我们收集到用户的一些信息(如下),那么我们如何决定发放给该用户的信用额度呢? 线性回归这个问题要求我们的hypothesis可以给出实数范围内的预测结果。同样的从最简单的假设出发,对于每一个用户,x=(x0,x1,x2,⋯,xd)x = (x_0 , x_1, x_2, \cdots,
2017-08-23 10:20:42 1779
原创 机器学习笔记-利用线性模型进行分类
理论部分这一部分主要是为了证明为什么可以使用线性回归和逻辑斯蒂回归来做二元分类问题。我们想要将已知的线性模型应用到二分类甚至是多分类的问题。我们已知的线性模型有如下的三种,它们有一个共同的地方是都会利用输入的特征计算一个加权和 s=wTxs = w^Tx。 线性分类不好解, 因为想要最小化E0/1(w)E_{0/1}(w)被证明是一个NP难问题。但相比之下,线性回归和逻辑斯蒂回归
2017-08-16 14:10:44 4826
原创 SVM学习笔记-软间隔SVM
回顾在上一篇中记录了Kernel SVM,利用核函数使得我们可以通过对偶形式的SVM解决非线性的问题,例如使用高斯核函数可以在无限维度的空间中寻找超平面。但是正如我们之前说到过的,高斯SVM在参数选择的不恰当的时候,也会出现overfit的情况。为什么SVM也会出现overfit的情况呢?一个原因可能是因为我们选择的特征转化太过于powerful,就算存在最大间隔的限制,最终也还是会出现过拟合
2017-08-12 09:31:13 23478 5
原创 SVM学习笔记-核函数与非线性SVM
核技术回顾上次讲到了SVM的对偶形式,这个对偶问题也是二次规划问题。所以可以使用二次规划的方法来解决。之所以要使用SVM的对偶形式,是因为它告诉了我们SVMSVM背后的一些几何意义,例如,对偶的SVM问题的解中αn≥0\alpha_n \ge 0所对应的那些点(zn,yn)(z_n, y_n)就是我们想要找的支撑向量。另一方面,这个对偶问题在求解的时候好像几乎和我们所在的空间的维度没有
2017-08-12 09:30:10 8796
原创 SVM学习笔记-对偶形式的SVM
Roadmap上一篇笔记讲述了一个模型:线性支撑向量机。其目的是要找一个比较“胖”的分割线或者叫分割超平面,因为这些比较“胖”的hyperplane对于测量误差是比较robust的。并且使用二次规划方法来解决这样的问题。 这篇将要讲述的是将这个模型转化为另一种形式,以使得该模型可以更容易的延伸到其他不同的各种各样的应用当中去。Non-Linear Support Vector Mac
2017-08-12 09:29:01 8143 1
原创 SVM学习笔记-线性支撑向量机
Linear Support Vector MachineLinear Classification Revisited当数据是线性可分的时候,PLA算法可以帮助我们找到那个hyperplane。 Which Line Is Better?对于PLA算法来说,最终得到哪一条线是不一定的,取决于算法scan数据的过程。从VC bound的角度来说,上述三条线的复杂度是一样的
2017-08-12 09:27:55 7739 1
原创 netowrkx备忘笔记
networkx学习笔记安装以前在需要使用代码绘制复杂网络中的图时,使用过igraph,但是igraph的安装配置十分的麻烦,安装了anaconda之后也不能使用,所以转而使用networkx。安装了anaconda之后无需在进行任何其他的配置就可以使用。创建一个图graph创建一个没有连边和节点的图import networkx as nxG = nx.Graph()根据定义,图是节点以及节点之
2017-07-04 17:02:07 1284
原创 SI疾病传播模型实现
在SI疾病传播模型中,网络中的节点在任一时刻有两种可能的状态,易感态susceptible(S)和感染态infected(I)。处于易感态(S)的节点当被感染后转变为感染态(I)并且不能恢复。我们假设在t_0时刻网络中除了一个节点被感染了之外,这个节点就是传播源,其余的所有节点都处于易感态。之后传播源以一定的疾病传播概率(rates of infection)感染它的邻居,与此同时,疾病或者是信息
2017-06-25 08:58:13 15301 2
原创 使用networkx计算网络的介数中心性
网络节点的重要性指标介数中心性的计算,使用python的包networkximport networkx as nxG = nx.Graph()#从文件中读取网络的adjacentMatrix,通过networkx的add_edges方法向对象G中添加边def readNetwork(filename): fin = open(filename, 'r') # for line
2017-06-25 08:19:41 25132 4
原创 基于演化博弈数据利用压缩感知方法进行网络重构
0.background在工程和科学的许多领域,我们经常会遇到的问题是,目标网络是由联网的元素(节点)组成的,但是节点之间的相互作用或者说网络的拓扑结构是完全未知的。在这种情况下,我们利用基于时间序列从实验和观测中得到的数据中来重构网络的拓扑就是有价值和经济利益的。这就需要我们了解未知网络的动态演化过程或者需要大量连续时间上的振荡信号。但是对于社会,经济和生物科学网络来说,他们的节点之间的相互
2017-05-09 15:03:30 2656 20
原创 机器学习--knn手写数字识别系统
0.刚接触java,并且在学习机器学习的相关算法,knn又非常的易于实现,于是就有了这个小系统。1.knn算法简介:2.该程序的功能主要有如下几个, 功能1:可以在面板上手写输入数字 功能2:可以对特定的区域进行截屏,因为要获取用户手写的数字,保存为图像,然后使用算法进行分析 功能3:可以对图片进行缩放,要保证图片的大小(维度)要和
2017-05-07 20:04:05 3051
原创 聚类系数可调的无标度网络生成算法
0. BA无标度网络模型简单介绍:实际网络的两个重要的特性: (1)增长性:即网络的规模是不断的增长的,ER随机图和WS小世界模型中的网络的大小是固定 (2)优先连接(Preferential attachment以下简称PA):新的节点更倾向于和那些具有较高的连接度的hub节点相连。这种现象也叫作“富者更富(Rich get richer)”或者是“马太效应”
2017-04-17 22:33:25 8116 10
原创 sql学习笔记(韩顺平)
--创建表create table dept(deptId int primary key,--部门iddeptName nvarchar(50), --部门名称deptLoc nvarchar(50) --部门地址)--创建emp表create table emp(empNo int primary key,empName nvarchar(10),job nvar
2017-03-17 17:00:26 1713
原创 numpy等python相关的包安装备忘
主要备忘几个问题 1,怎么同时在一台电脑上使用python2和python3 2,怎么安装numpy,matplotlib,igraph,tensorflow。同时安装python2和python3 有些情况下需要同时用到python2和python3,比如在本文中介绍的,igraph只支持python2,而tensorflow只能在pyth
2016-12-27 23:34:34 1104
原创 二叉查找树C语言实现及其可视化
0, 二叉搜索树的定义:(二叉查找树)(二叉排序树) (1)若左子树非空,则左子树上的所有的节点的值都小于根节点的值 (2)若右子树非空,则右子树上的所有的节点的值都大于根节点的值 (3)其左右子树都是二叉搜索树 1,二叉查找树的表示法struct TreeNode;typedef struct Tr
2016-11-30 13:10:51 5048
原创 graphviz在ubuntu下安装使用简单备忘
dot是纯文本图像描述语言, Graphviz是一个开源的图像可视化软件。0,ubuntu环境下下载安装命令为:apt-get install graphviz使用方法简单介绍:1,digraph用于创建有向图,graph用于创建无向图。在有向图中边的表示方法是->,在无向图中边的表示方法为--。2,在ubuntu中可以直接使用vi来编写dot文件,如下建立一个
2016-11-26 22:27:13 7469
原创 结巴分词使用方法
0.下载 结巴分词包下载地址:http://download.csdn.net/detail/robin_xu_shuai/96911881.安装 将其解压到任意目录下,然后打开命令行进入该目录执行:python setup.py install 进行安装2.测试 安装完成后,进入python交互环境,import jieba 如果没有报错,则
2016-11-23 18:50:22 22783 12
原创 python使用pymongo连接mongo数据库
0.本文讲述的环境是linux + python3.x + pymongo3.x1.pymongo的安装: (1)pymongo下载地址:http://download.csdn.net/detail/robin_xu_shuai/9687530,下载下来的文件如下图所示:pymongo-3.3.0.tar.gz (2)使用命令tar解压:tar zxf
2016-11-19 19:29:47 4076
原创 机器学习之线性回归-AndrewNg学习笔记
监督学习从讨论监督学习问题的例子出发,假设我们有某个地区住房面积和相应房价的数据集合。对于这样的给定的数据, 我们的目的是要利用已有的信息,来对房价建立预测模型。即对于给定的房屋信息(房屋面积)预测其房价。为了方便以后的使用,我们首先定义一些符号标记。我们使用x(i)表示输入变量(或者是特征),使用y(i)表示我们将要预测的输出变量或者说是目标变量(或者叫做标记)。(x(i), y(i))
2016-11-12 00:30:44 3324
原创 二叉树的基本操作
常用的二叉树的链式存储结构有二叉链表和三叉链表来表示,其数据结构的C语言定义以及示意图如下:本来介绍基于二叉链表的存储结构上的二叉树的几个常用的操作: 1.二叉树的创建, 2.使用递归算法进行二叉树的先序,中序和后序遍历。 3.使用非递归算法进行二叉树的中序遍历(u需要借助于栈) 4.借助于数据结构队列实现二叉树的层序遍历。 5.一些其他的函数,求取叶子节
2016-11-09 09:20:50 990
原创 拉格朗日对偶性问题-《统计学习方法》学习笔记
0. 内容介绍 在约束最优化问题中, 常常利用拉个朗日对偶性将原始问题转化为对偶问题,通过解对偶问题而得到原始问题的解,该方法应用在很多的统计学习方法中。例如在上一篇文章中(http://blog.csdn.net/robin_xu_shuai/article/details/52791306)所说的最大熵模型。在学习最大熵模型中我们看到,需要求解满足所有已知条件并且使得熵最大的
2016-10-13 09:15:55 6613
原创 逻辑斯谛回归与最大熵模型-《统计学习方法》学习笔记
0. 概述:Logistic回归是统计学中的经典分类方法,最大熵是概率模型学习的一个准则,将其推广到分类问题得到最大熵模型,logistic回归模型与最大熵模型都是对数线性模型。本文第一部分主要讲什么是logistic(逻辑斯谛)回归模型,以及模型的参数估计,使用的是极大对数似然估计以及梯度下降法,第二部分介绍什么是最大熵模型,首先介绍最大熵原理, 然后根据最大熵原理推
2016-10-12 09:10:36 8695 3
原创 八大排序算法及实现
将一个元素插入到已经排好序的有序表中,从而使得有序表的 个数+1。 算法从第二个元素开始。将一待排序序列第一个元素看做一个有序序列,把第二个元素到最后一个元素当成是未排序序列。 * *2) 从头到尾依次扫描未排序序列,将扫描到的每个元素插入有序序列的适当位置以使得其变成有序的序列。 * (如果待插入的元素与有序序列中的某个元素相等,则将待插入元素插入到相等元素的后面。) *
2016-10-03 22:41:19 1198
原创 higher-ordering cluster的C语言实现
#include#include#include#include#define INITIAL_SIZE 100#define INCREMENT_SIZE 100int vertax_size;int edge_size;char filename_edge[20];typedef struct Node{ double value; int index;}Node
2016-09-20 22:00:43 1315 1
原创 《Higher-order organization of complex networks》-论文学习笔记
0.前言: 最近阅读了Benson等人发表在science上的论文《Higher-order organization of complex networks》,在该论文中作者提出了一种通用的框架,可在网络中基于高阶连接模式进行聚类。 和以往接触的聚类方法(K-means, 层次聚类, DBSCAN, 或者OPRICS)等不同的是: K-means等在对item进行聚类的时候,
2016-09-20 16:47:29 6281 12
原创 C语言进度条
有点无聊的小程序, 但是在以后算大网络时, 可以加进来观看进度。#include#define MAXSTEP 1000main(void){ int i, j, progess, prg_temp; progess = prg_temp = 0; for( i = 1; i <= MAXSTEP; ++i ) { progess = (int)((double)i /
2016-08-24 20:37:26 1212
原创 通过似然分析预测丢失的边和虚假的边--的C语言代码实现
#include#include#include#includeint kc = 12;int training_set_size;int probe_set_size;int vertax_set_size;char training_filename[200];char probe_filename[200];char vertax_filename[200];int
2016-08-24 20:33:29 789
原创 通过似然分析预测丢失的边和虚假的边(潘黎明,周涛著)
真实网络中的数据往往是不完全,存在噪音的。这时, 丢失边预测算法和虚假边的识别算法就有了用武之地。在这里提出了一种算法的框架:网络的似然可以通过预先定义好的哈密顿量来计算, 这个哈密顿量的定义考虑了网络形成的一些重要的驱动因素, 这样的话,一条没有被观测到的边的存在的“得分”可以通过计算将这条边加入已经观测到的网络中的似然来表示。对于丢失边的预测问题,其目的是要根据已有的网路的拓扑结构和节点的
2016-08-24 20:21:30 1797
原创 找出无向图中所有的环的算法
本文给出了一个找到无向图中所有的环的递归算法,该算法是基于DFS(深度优先搜索)的,大概的思路是:在深度优先搜索无向图的过程中,当遇到起始点的时候,会认定为出现环(在本文中只是找出了无向图中所有的长度大于等于3的环(长度为1和2的环没有意思),所以在深搜的过程中,当遇到的是起始点的时候,还需要进行判断是否是环),当确定是出现了环之后,根据是否在遇到环之前的那个点还有其他的路径,来决定是进一步的进行
2016-07-13 16:25:47 46524 20
原创 OPTICS算法的C语言实现
在这个方法中,不像前面的相关的聚类的文章中产生数据集合的聚类结果,而是产生一个基于密度的表示数据的固有的聚类结构的一个增广的排序,除了应用到DBSCAN中的相关的概念(核心对象, 直接密度可达,密度可达,和密度相连),有增加了两个概念, 一个是核心距离:即使得一个object满足称为核心对象的最小的距离(即,在用户输入的ε和MinPtr的情况下成为核心对象的最小的距离,如果改对象不是在ε和MinP
2016-06-24 20:42:11 3352 4
原创 层次聚类算法之single-linkage和complete-linkage(C语言实现)
层次聚类试图在不同层次上对数据集合进行划分, 从而形成树形的聚类结构。数据集的划分可采用“自底向上”的聚合策略,也可以采用“自顶向下”的分拆策略。AGNES是一种采用自底向上的聚合策略的层次聚合算法,它先将数据集中的每个样本看作是一个初始的聚类簇,然后在算法进行的每一步中找出距离最近的两个聚类来进行合并,该过程不断的重复,直到到达预设的聚类簇的个数。改算法的关键是如何计算聚类之间的距离,
2016-06-17 19:34:05 16479 1
原创 基于密度的聚类算法C语言实现--DBSCAN
#include#include#include#include#include//#define INITIALASSIGN_COREOBJECT 100//#define INCREASEMENT_COREOBJECT 100 #define INITIALASSIGN_DIRECTLYDENSITYREACHABLE 100#define INCREASEMENT_D
2016-06-13 08:54:38 6590 2
原创 生成螺旋线形状的随机点
#include#include#include#include#define PI 3.1415926535void generate_spiral();int size_of_point; //the total size of pointsint range; //the range of x and y of all pointsint initial_phas
2016-06-12 12:26:18 2037
原创 简单的K-means算法C语言实现代码
#include#include#include#include#include#define DIMENSIOM 2 //目前只是处理2维的数据#define MAX_ROUND_TIME 100 //最大的聚类次数typedef struct Item{ int dimension_1; //用于存放第一维的数据 int dimension_2; //用于存放第
2016-05-29 21:43:35 11586 9
原创 C语言中动态二维数组的创建
int** adjacentMatrix; adjacentMatrix = (int**)malloc(sizeof(int*) * (network_size + 1)); if( !adjacentMatrix ){printf("malloc is error!");exit(0);}int i;for( i = 1; i <= network_size; i++ ){adjacentMa
2016-05-23 21:27:53 2346
原创 使用Eclipse中出现的一些问题的解决方法
错误提示: error: ‘EOF’ was not declared in this scope解决方案:#include 错误提示:cannot open output file xxx.exe: Permission denied解决方案:出现这个错误,应该是之前写的程序有问题,上次编译执行后没有完全退出导致的。打开任务管理器,杀死所有xxx.
2016-05-19 21:49:29 3492
原创 对递归的理解
#include#include//假设只能打印一位数,即0~9void printDigit(int n){ printf("%d", n);}//使用递归,利用上面的printDigit打印任一数void printOut(int data){ if( data >= 10 ) printOut(data / 10); printDigit(data % 10);}
2016-05-19 21:45:06 567
原创 生成不重复的随机数的高效的算法
#include#include#include#define SIZE 10void generateRandom();int main(){ srand((unsigned)time(NULL)); generateRandom(); return 0;}/* * 产生 1~SIZE 之间的不重复的随机数 * */void generateRandom(){
2016-05-19 15:45:09 2143 1
原创 BA无标度网络模型构造算法
BA无边度网络模型构造算法(1)增长:从一个具有 m_0 个节点的联通网络开始,每次引入一个新的节点, 并且连到 m 个已经存在的节点上,这里 m (2)优先连接:一个新的节点与一个已经存在的节点 i 相连的概率 w 与节点 i 的度 k_i 之间的关系为 w = k_i / ( k_1 + k_2 + k_3 + ... + k_n ),其中n为网络中的节点的总个数。特别的说
2016-05-19 15:09:58 39896 31
setuptools-0.6c11.win32-py2.7.exe
2016-12-05
scipy-0.15.1-win32-superpack-python2.7.exe
2016-12-05
python-dateutil-2.2.win-amd64-py2.7.exe
2016-12-05
numpy-MKL-1.8.0.win-amd64-py2.7.exe
2016-12-05
matplotlib-1.3.1.win-amd64-py2.7.exe
2016-12-05
flink并行度问题
2024-09-13
TA创建的收藏夹 TA关注的收藏夹
TA关注的人