自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

null的专栏

Keep your eyes open and your feet moving forward. You'll find what you need.

  • 博客(247)
  • 资源 (4)
  • 收藏
  • 关注

原创 机器学习算法实践——K-Means算法与图像分割

一、理论准备1.1、图像分割图像分割是图像处理中的一种方法,图像分割是指将一幅图像分解成若干互不相交区域的集合,其实质可以看成是一种像素的聚类过程。通常使用到的图像分割的方法可以分为:基于边缘的技术基于区域的技术基于聚类算法的图像分割属于基于区域的技术。1.2、K-Means算法K-Means算法是基于距离相似性的聚类算法,通过比较样本之间的相似性,将形式的样本划分到同一个类别中,K-Mean

2016-10-28 10:39:58 46836 28

原创 MATLAB技巧——imshow多张图片

本专题整理一些工作学习中使用到的一些MATLAB的技巧。1、单个图片的显示在MATLAB中,可以使用函数imshow展示图片,如手写体库MNIST的图:代码如下:imshow(reshape(A(:,1), 28, 28));2、多张图片的展示若是需要在同一个figure中展示多个图片,如展示0~9,可以混合使用subplot函数,如需要按两行摆放这个10个数字的图片,每行摆放5个:代码如下:fo

2016-10-26 15:05:50 25153 1

原创 推荐系统——(论文阅读笔记)YouTube的视频推荐系统

《The YouTube video recommendation system》是一篇详细介绍YouTube视频推荐的论文,在整个系统中没有复杂的算法,使用了一些简单有效的策略,这也符合工业界的应用,在工业界,为了考虑算法复杂度,数据量,可维护性等等一些因素,在工业界中,通常会选择一些简单有效的方法。以下是论文的核心内容:目标帮助用户找到高质量且符合用户兴趣的视频,最终实现的...

2016-10-21 15:21:55 5422

原创 C/C++——生成随机数

1、不指定范围的随机数在C/C++中,产生随机数需要使用到函数srand()函数和rand()函数。在C语言中,srand()函数和rand()函数都是定义在2、在指定范围内生成随机数2.1、生成在指定区间start~end之间的随机整数:#include <stdio.h>#include <stdlib.h>#include <time.h>int Random(int start, int

2016-10-18 17:26:16 22478

原创 简单易学的机器学习算法——受限玻尔兹曼机RBM

yi

2016-07-26 18:52:51 18761 3

原创 PHP基础——PHP数组

PHP数组与其他语言的数组有些不同,在PHP中,数组包含两种类型的数组:数字索引数组关联数组其中,数字索引数组是指其key为数字,而后者可以使用字符串作为其key,这相当于map。1、数组的声明和初始化数组的声明和初始化使用函数array(),其格式如下:$a = array()对于数字索引的数组,如下:<?php $a = array("a", "b", "c");

2016-07-12 16:05:19 3328

原创 计算广告——广告定向实践

计算广告学涉及到很多的不同的学科知识,包括大规模搜索,文本分析,机器学习,信息检索以及经济学等等。在计算广告中,其核心问题是在给定的环境下,找到用户和广告之间的最佳匹配,在斯坦福大学的计算广告学中如下的定义: Computational advertising = A principled way to find the “best match” between a user in a c...

2016-07-11 22:44:04 8757

原创 简单易学的机器学习算法——Gibbs采样

一、Gibbs采样概述前面介绍的Metropolis-Hastings采样为从指定分布中进行采样提供了一个统一的框架,但是采样的效率依赖于指定的分布的选择,若是选择的不好,会使得接受率比较低,大量的采样被拒绝,影响到整体的收敛速度。Gibbs采样是Metropolis-Hastings采样算法的特殊形式,即找到一个已知的分布,使得接受率α=1\alpha =1。这样,每次的采样都会被接受,可以提高M

2016-07-04 11:29:55 28777 6

原创 简单易学的机器学习算法——Metropolis-Hastings算法

在简单易学的机器学习算法——马尔可夫链蒙特卡罗方法MCMC中简单介绍了马尔可夫链蒙特卡罗MCMC方法的基本原理,介绍了Metropolis采样算法的基本过程,这一部分,主要介绍Metropolis-Hastings采样算法,Metropolis-Hastings采样算法也是基于MCMC的采样算法,是Metropolis采样算法的推广形式。一、Metropolis-Hastings算法的基本原理1、M

2016-07-03 17:23:57 48177 8

原创 PHP基础——字符串的常用操作

在PHP中使用较多的是字符串的操作,字符串的常用操作主要有如下的几种:字符串的表示字符串的连接去除字符串中的空格和特殊字符字符串的比较分割字符串和合成字符串1、字符串的表示在PHP中,字符串有两种表示的方法: - 单引号:” - 双引号:”“如:<?php $str_1 = "Hello\n"; $str = "world\n"; ec

2016-07-03 15:10:33 3521

原创 简单易学的机器学习算法——马尔可夫链蒙特卡罗方法MCMC

对于一般的分布的采样,在很多的编程语言中都有实现,如最基本的满足均匀分布的随机数,但是对于复杂的分布,要想对其采样,却没有实现好的函数,在这里,可以使用马尔可夫链蒙特卡罗(Markov Chain Monte Carlo, MCMC)方法,其中Metropolis-Hastings采样和Gibbs采样是MCMC中使用较为广泛的两种形式。MCMC的基础理论为马尔可夫过程,在MCMC算法中,为了在一个指

2016-06-29 18:49:41 77182 6

原创 C/C++——set的基本操作总结

1、

2016-06-22 13:35:24 52296 3

原创 推荐算法——基于图的推荐算法PersonalRank算法

实验结果:#coding=utf-8def PersonalRank(G, alpha, root, max_step): rank = dict() for x in G.keys(): rank[x] = 0 rank[root] = 1 for k in range(max_step): print str

2016-06-21 13:35:31 14246

原创 C/C++——map的基本操作总结

标准库map类型是一种以键-值(key-value)存储的数据类型。以下分别从以下的几个方面总结:map对象的定义和初始化map对象的基本操作,主要包括添加元素,遍历等

2016-06-20 17:18:45 138307 4

原创 C/C++——vector的基本操作总结

标准库vector类型是C++中使用较多的一种类模板,vector类型相当于一种动态的容器,在vector中主要有一些基本的操作,接下来分别从以下的几个方面总结:vector对象的定义和初始化vector对象的基本操作,主要包括添加元素,遍历等1、vector对象的定义和初始化在vector中主要有四种定义和初始化的方法:1.1、定义空的vector定义的方法为:vector<T> v;1.

2016-06-17 16:45:29 34988 1

原创 社团划分——有向图的Label Propagation算法

在博文社区划分——Label Propagation中,介绍了Label Propagation社区划分算法的基本原理,基本的Label Propagation算法是针对无向图的社区划分算法。一、基本Label Propagation算法原理对于网络中的每一个节点,在初始阶段,Label Propagation算法对每一个节点一个唯一的标签,在每一个迭代的过程中,每一个节点根据与其相连的节点所属的标

2016-06-02 17:38:54 13738 5

原创 Python基础——网络编程

在网络编程中主要是使用Socket(套接字)进行编程,套接字相当于应用程序访问下层网络的服务的接口,使用Socket可以是得不同主机之间进行通信,从而实现数据交换。1、Socket工作方式套接字在工作的时候连接的两端分别为客户端和服务器端,对于客户端和服务器端的工作方式是不一样的。对于服务器端,服务器程序会在一个端口上监听服务请求,该服务器进程是一直存在的,当有客户端请求访问时,服务器进程会和客户端

2016-05-31 22:55:19 6746 1

原创 简单易学的机器学习算法——Mean Shift聚类算法

参考文献Mean Shift ClusteringMeanshift,聚类算法

2016-05-12 18:02:28 97235 30

原创 Python中时间与时间戳之间的转换

对于时间数据,如2016-05-05 20:28:54,有时需要与时间戳进行相互的运算,此时就需要对两种形式进行转换,在Python中,转换时需要用到time模块,具体的操作有如下的几种:将时间转换为时间戳重新格式化时间时间戳转换为时间获取当前时间及将其转换成时间戳1、将时间转换成时间戳将如上的时间2016-05-05 20:28:54转换成时间戳,具体的操作过程为:利用strptime

2016-05-09 19:03:40 372411 3

原创 图解机器学习总结——2、回归

1

2016-04-25 10:21:16 7828 4

原创 推荐算法——非负矩阵分解(NMF)

一、矩阵分解回顾在博文推荐算法——基于矩阵分解的推荐算法中,提到了将用户-商品矩阵进行分解,从而实现对未打分项进行打分。矩阵分解是指将一个矩阵分解成两个或者多个矩阵的乘积。对于上述的用户-商品矩阵(评分矩阵),记为Vm×nV_{m\times n},可以将其分解成两个或者多个矩阵的乘积,假设分解成两个矩阵Wm×kW_{m\times k}和Hk×nH_{k\times n},我们要使得矩阵Wm×kW

2016-04-19 19:21:30 32840 7

原创 计算广告——搜索广告技术初窥

这是对一个PPT的内容的整理,PPT的主要内容是刘铁岩的《Online Advertising》。主要介绍了一些付费搜索相关的一些技术。这篇文章主要是对这方面的知识做一个整理。在搜索广告中,有很多的知识点是值得借鉴的。一、广告1.1、定义:Advertising is a form of communication intended to persuade an audience

2016-04-14 21:50:34 6665

原创 机器学习中的常见问题——K-Means算法与矩阵分解的等价

一、K-Means算法的基本原理K-Means算法是较为经典的聚类算法,假设训练数据集XXX为:{x1,x2,⋯,xn}{x1,x2,⋯,xn}\left \{ \mathbf{x}_1,\mathbf{x}_2,\cdots , \mathbf{x}_n \right \},其中,每一个样本xjxj \mathbf{x}_j为mmm维的向量。此时的样本为一个m×nm×nm\times n的矩...

2016-04-13 16:41:05 6878

原创 推荐算法——基于矩阵分解的推荐算法

一、推荐算法概述对于推荐系统(Recommend System, RS),从广义上的理解为:为用户(User)推荐相关的商品(Items)。常用的推荐算法主要有:基于内容的推荐(Content-Based Recommendation)协同过滤的推荐(Collaborative Filtering Recommendation)基于关联规则的推荐(Association Rule-Based

2016-04-12 17:07:51 51940 44

原创 图解机器学习总结——1、基本概念

序言:近期主要帮同事讲解《图解机器学习》,刚拿到这本书觉得内容相比较平常使用的机器学习算法,很多地方讲解得比较奇怪,所以很认真的读了一下,读了书就想把知识点整理出来,加上一些自己对各种算法的认识,因此这个系列里面有一些个人的理解,若有不对的地方,还请不吝指出,谢谢。本系列主要包括:1、基本概念(对应书上第一章和第二章)2、最小二乘学习法3、带有约束条件的最小二乘法4、稀疏学习5、

2016-04-09 21:51:28 5967

原创 自然语言中的重要概念——熵(Entropy)

一、背景二、熵1、信息熵2、条件熵3、联合熵4、相对熵三、互信息

2016-04-09 15:49:00 9477

原创 优化算法——坐标上升法

一、坐标上升法算法原理坐标上升法(Coordinate Ascent)每次通过更新函数中的一维,通过多次的迭代以达到优化函数的目的。假设需要求解的优化问题的具体形式如下:maxαW(α1,α2,⋯,αm)\underset{\alpha }{max}W\left ( \alpha _1,\alpha _2,\cdots ,\alpha _m \right )其中,WW是向量α⃗\vec{\alph

2016-04-06 15:00:04 17037 1

原创 Shell编程——Shell中的数学运算

在Linux Shell中进行数学运算,通常可以使用的运算符有:简单运算: let[](())高级运算: exprbc1、let命令let命令是bash内置命令,可以实现简单的算术以及逻辑运算,通过help let命令,可以查询到let命令的具体使用方法。使用方法:#!/bin/shi=10echo $ilet i=i+10 #20echo $ilet "i=i+100" #12

2016-04-05 17:24:22 18461

原创 机器学习模型中的损失函数loss function

import matplotlib.pyplot as pltimport numpy as npxmin, xmax = -4, 4xx = np.linspace(xmin, xmax, 100)plt.plot([xmin, 0, 0, xmax], [1, 1, 0, 0], 'k-', label="Zero-one loss")plt.plot(xx, np.where(x

2016-03-31 15:54:55 52132 2

原创 Hadoop学习笔记——Hadoop常用命令

Hadoop下有一些常用的命令,通过这些命令可以很方便操作Hadoop上的文件。1、查看指定目录下的内容语法:hadoop fs -ls 文件目录2、打开某个已存在的文件语法:hadoop fs -cat 文件地址 [ | more] []表示的是可选命令3、将本地文件存到Hadoop语法:hadoop fs -put 本地文件地址 Hadoop目录4、将Hadoop上的文件下载到本地文件夹内

2016-03-23 14:06:03 4745

原创 数据结构和算法——旋转打印链表

1、问题描述输入参数nnn为正整数,如输入n=5n=5n=5,则按行打印如下的数字:2、问题的理解这个问题是将数字1…n21…n21\dots n^2按照一圈一圈的方式存储好,再按照行的方式对其进行打印。3、解决的方法最简单的方法是利用数组:声明一个二维数组[n][n]按照一圈一圈的方式向数组中添加对应数字再按照一行一行的方式打印这个方法比较简单,就...

2016-03-19 17:09:04 1978 1

原创 简单易学的机器学习算法——Latent Dirichlet Allocation(理论篇)

引言LDA(Latent Dirichlet Allocation)称为潜在狄利克雷分布,是文本语义分析中比较重要的一个模型,同时,LDA模型中使用到了贝叶斯思维的一些知识,这些知识是统计机器学习的基础,这些知识点包括Gamma函数和分布,Beta函数和分布,Dirichlet函数和分布,贝叶斯定理,Gibbs采样等等。在接下来的文章,我们通过以下几个方面具体介绍LDA的核心思想:基础知

2016-01-25 16:03:55 22502 3

原创 计算广告——平滑CTR

一、广告计算的基本概念

2016-01-11 18:19:15 16655 2

原创 可扩展机器学习——分类——点击率预测(Click-through Rate Prediction)

注:这是一份学习笔记,记录的是参考文献中的可扩展机器学习的一些内容,英文的PPT可见参考文献的链接。这个只是自己的学习笔记,对原来教程中的内容进行了梳理,有些图也是引用的原来的教程,若内容上有任何错误,希望与我联系,若内容有侵权,同样也希望告知,我会尽快删除。这部分本应该加上实验的部分,实验的部分在后期有时间再补上。可扩展机器学习系列主要包括以下几个部分:概述 - Spark分布式处理 - 线性

2015-12-14 19:11:06 10218 3

原创 可扩展机器学习——梯度下降(Gradient Descent)

注:这是一份学习笔记,记录的是参考文献中的可扩展机器学习的一些内容,英文的PPT可见参考文献的链接。这个只是自己的学习笔记,对原来教程中的内容进行了梳理,有些图也是引用的原来的教程,若内容上有任何错误,希望与我联系,若内容有侵权,同样也希望告知,我会尽快删除。这部分本应该加上实验的部分,实验的部分在后期有时间再补上。可扩展机器学习系列主要包括以下几个部分:概述 - Spark分布式处理 - 线性

2015-12-12 17:58:03 5917

原创 可扩展机器学习——线性回归(linear Regression)

注:这是一份学习笔记,记录的是参考文献中的可扩展机器学习的一些内容,英文的PPT可见参考文献的链接。这个只是自己的学习笔记,对原来教程中的内容进行了梳理,有些图也是引用的原来的教程,若内容上有任何错误,希望与我联系,若内容有侵权,同样也希望告知,我会尽快删除。这部分本应该加上实验的部分,实验的部分在后期有时间再补上。可扩展机器学习系列主要包括以下几个部分:概述 - Spark分布式处理 - 线性

2015-12-12 17:48:44 5581 1

原创 简单易学的机器学习算法——Label Propagation

Label Propagation算法是一种基于标签传播的局部社区划分算法。对于网络中的每一个节点,在初始阶段,Label Propagation算法对每一个节点一个唯一的标签,在每一个迭代的过程中,每一个节点根据与其相连的节点所属的标签改变自己的标签,更改的原则是选择与其相连的节点中所属标签最多的社区标签为自己的社区标签,这便是标签传播的含义。随着社区标签的不断传播,最终紧密连接的节点将有共同的标签。

2015-12-05 16:11:02 19743 15

原创 可扩展机器学习——Spark分布式处理

注:这是一份学习笔记,记录的是参考文献中的可扩展机器学习的一些内容,英文的PPT可见参考文献的链接。这个只是自己的学习笔记,对原来教程中的内容进行了梳理,有些图也是引用的原来的教程,若内容上有任何错误,希望与我联系,若内容有侵权,同样也希望告知,我会尽快删除。可扩展机器学习系列主要包括以下几个部分:概述Spark分布式处理线性回归(linear Regression)梯度下降(Gradien

2015-12-01 13:12:59 4191 1

原创 可扩展机器学习——概述

注:这是一份学习笔记,记录的是参考文献中的可扩展机器学习的一些内容,英文的PPT可见参考文献的链接。这个只是自己的学习笔记,对原来教程中的内容进行了梳理,有些图也是引用的原来的教程,若内容上有任何错误,希望与我联系,若内容有侵权,同样也希望告知,我会尽快删除。可扩展机器学习系列主要包括以下几个部分:概述Spark分布式处理线性回归(linear Regression)梯度下降(Gradien

2015-12-01 12:15:21 3383

原创 利用Theano理解深度学习——Auto Encoder

注:本系列是基于参考文献中的内容,并对其进行整理,注释形成的一系列关于深度学习的基本理论与实践的材料,基本内容与参考文献保持一致,并对这个专题起名为“利用Theano理解深度学习”系列,若文中有任何问题欢迎咨询。本文提供PDF版本,欢迎索取。“利用Theano理解深度学习”系列分为44个部分,这是第二部分,在第一部分中的算法主要是监督学习算法,在这部分中主要是无监督学习算法和半监督学习算法,主要包括

2015-11-29 17:42:44 5565 2

在线顺序极限学习机OS-ELM的python实现

与博文(http://blog.csdn.net/google19890102/article/details/45273309)配套的实验

2015-04-25

线性回归实验数据

与我的博客内容同步http://blog.csdn.net/google19890102

2014-05-22

logistic回归测试数据

与我的博客配套,具体参照我的博客文章简单易学的机器学习算法——Logistic回归

2014-05-12

达内java学习笔记-总最全

java学学习必备 面向对象主要针对面向过程。 面向过程的基本单元是函数。 什么是对象:EVERYTHING IS OBJECT(万物皆对象) 所有的事物都有两个方面: 有什么(属性):用来描述对象。 能够做什么(方法):告诉外界对象有那些功能。 后者以前者为基础。 大的对象的属性也可以是一个对象。 为什么要使用面向对象: 首先,面向对象符合人类看待事物的一般规律。 对象的方法的实现细节是屏蔽的,只有对象方法的实现者了解细节。 方法的定义非常重要。方法有参数,也可能有返回值。 注意区分:对象(本身)、对象的实现者、对象的调用者。 分析对象主要从方法开始。 我们通过类来看待对象,类是对象的抽象。 其次,采用面向对象方法可以使系统各部分各司其职、各尽所能。

2011-01-24

空空如也

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

TA关注的人

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