机器学习
文章平均质量分 83
selous
编程之久除了算法和数据结构,什么也不属于我们。
展开
-
机器学习的特征选择(feature selection)
写在开头:刚开始接触机器学习,选择了周志华教授的《机器学习》作为入门教材,很不错的书籍,受益良多。没有使用matlab去编写代码,而是选择了使用python的scikit-learn的开发包,大致看了一下开发包的特征选择方法,结合周志华教授的书,想先总结总结feature selection的方法特征选择filter(过滤式)思路通过评估自变量与目标变量之间的关联,也就是量化两者之间的关系,我们暂且原创 2016-11-30 22:11:37 · 6555 阅读 · 0 评论 -
tensorflow使用tensorboard实现数据可视化
撰写时间:2017.5.17网上关于这方面的教程很多,不过都偏向与如何整理图,就是通过增加命名域使得图变得好看.下面主要讲解如何搭建起来tensorboard.系统环境:ubuntu14.04,python2.7,tensorflow-0.11创建summary op1.需要在图中创建summary的操作.常用的summary操作有tf.summary.scalar和tf.summary.histo原创 2017-05-11 16:01:46 · 16714 阅读 · 8 评论 -
Stanford-CV华人教授李飞飞写给她学生的一封信,如何做好研究以及写好PAPER
引自:https://www.douban.com/note/161340201/ De-mystifying Good Research and Good Papers By Fei-Fei Li, 2009.03.01 Please remember this: 1000+ computer vision papers get published every year! Only 5-1原创 2017-07-16 16:12:02 · 834 阅读 · 0 评论 -
tensorflow代码组织格式
撰写时间:2017.8.15 tensorflow代码组织tensorflow的源代码中有很多example,从那些大牛们的源代码中我们其实可以学到很多有关tensorflow的代码格式应该如何排版。但是由于tf项目组的人有很多,代码格式也是参差不齐,所以这篇博文也就是总结一些博主在实际使用tensorflow中常用的代码组织的结构。简单模式原创 2017-08-16 10:57:40 · 1252 阅读 · 0 评论 -
tensorflow共享变量
撰写时间:2017.8.11 系统环境:ubuntu14.04,tensorflow1.12 内容:主要介绍tensorflow中name_scope,variable_scope和get_variable函数的使用tf.name_scope()和tf.variable_scope()区别在tensorflow中,两个函数均是用于定义命名空间。二者的区别主要在于variable_scope可以与原创 2017-08-11 14:58:20 · 1405 阅读 · 1 评论 -
tensorflow实现batch normalization
撰写时间:2017.08.31 撰写内容:使用tensorflow实现batch normalization 写在开头:batch normalization不是很难的内容,但是如果不自己通过一些低级的API实现总会觉得有些细节很难触碰到,所以下面的内容就是如何使用tensorflow实现batch normalization。文章分为两部分: 1.实现过程中使用的API,务必在实现之前了解这原创 2017-08-31 17:05:17 · 5281 阅读 · 0 评论 -
self paced learning(自步学习)
参考论文地址self-pace learning 是基于curriculum learning发展而来的.相比于curriculum learning中需要将所有的样本人为的进行”难易”程度的排序,* self-pace learning更进一步的通过添加一个正则项(SP-regularizer),来实现模型自动挑选简单的,也就是易于分类的样本(high-confidence samples) *原创 2017-09-30 17:26:18 · 7037 阅读 · 2 评论 -
关于svm的自己一直比较困惑的点
撰写时间:2017.10.20 support vector machine(svm)支持向量机在深度神经网络兴起之前一直是机器学习强大的分类器,即使是现在,关于SVM的研究以及应用也是有很多,所以弄懂svm是必要的. 本篇博文记录的是在学习支持向量机的时候,自己存在的一些困惑,以及支持向量机的一些重要概念.Question1:为什么正负样本的分类边界是+1和-1 Answer:纯粹为了计原创 2017-10-20 15:37:26 · 1428 阅读 · 0 评论 -
Adversarial Sample misleading the Model(生成对抗样本迷惑模型)
Introductionadversarial examples—inputs formed by applying small but intentionally worst-case perturbations to examples from the dataset , such that the perturbed input results in the model outputting原创 2017-12-15 17:40:29 · 3553 阅读 · 0 评论 -
ubuntu14.04安装fsl小记
撰写时间:2018.3.7 在没安装好之前,我还不确定fsl到底是做什么的。只是我要用的另一个软件需要依赖fsl的运行,所以就准备安装一下。走了不少弯路。 系统:ubuntu14.04 fsl版本:5.0目前我在官网一共看到了三种安装方式1.下载fslinstaller.py需要先填写自己的个人信息然后运行 /usr/bin/python fslinstaller.py ...原创 2018-03-07 13:23:10 · 4540 阅读 · 0 评论 -
ubuntu14.04安装afni
撰写时间:2018.3.8 内容概述:本博客主要介绍在ubuntu14.04的环境下如何安装afni。在官网上的该页面下介绍了好几种安装方式。本文采用的是1.2.3. To: download current precompiled AFNI binaries,使用预编译好的安装包,解压即能使用的这种。 系统环境:ubuntu14.041.下载预编译好的安装包ubuntu14.04...原创 2018-03-08 11:17:35 · 1695 阅读 · 2 评论 -
tensorflow实现LinearRegression
撰写时间:2017.5.18这篇博文记录的是如何使用tensorflow实现LR,其中没有使用tensorflow提供的learn包里面的函数.因为如果使用函数包里面的API,不仅数据格式处理麻烦,而且扩展性不强.所以就自己实现了一下.运行环境:ubuntu14.04,python2.7,tensorflow0.12 数据集:波士顿房价 loss:平方损失函数 优化方法:梯度下降下面直接贴代码原创 2017-05-18 09:52:13 · 2582 阅读 · 2 评论 -
python数据处理:对类别Category进行编码(转化为数值)
今天在用tensorflow处理线性回归的时候,提到两个数据集,adult_set数据集,可以用来做逻辑回归.但是其中一些标记是列表标记,既然是做分析,就得将起转化为数值编码.比如男(male),女(female),就得转化为1和2,或者one_hot编码.不少包都有对应的方式.总结一下.sklearn.DictVectorizersklearn.feature_extraction中的DictVe原创 2017-05-18 09:29:15 · 39220 阅读 · 0 评论 -
前向差分(forward difference)
写在开头:做一个关于图像处理的项目,论文中提到了前向差分的概念,没有什么概念,就去搜了一点点关于差分的知识,记录一下。差分差分定义设有k+1k+1个点 (x0,y0),…,(xk,yk)( x 0 , y 0 ) , … , ( x k , y k ) 前向差分定义为: [yν]:=yν,ν∈0,…,k[ y_ ν ] := y _ν , ν ∈ { 0 , … , k } [yν,…,原创 2016-12-13 21:12:36 · 22630 阅读 · 0 评论 -
梯度下降优化方法的思考
写在开头:看了AndroidNG的斯坦福公开课之后,又想重新审视对之前学的似懂非懂的梯度下降方法。写篇博客研究一下其中的数学知识。1.线性回归1.线性回归的预测模型:hθ(x)=θ0+θ1x1+⋯+θnxnh_\theta(x)=\theta_0+\theta_1x_1+\dots+\theta_nx_n 给定m个样本(x(1),x(2),…,x(m))(x^{(1)},x^{(2)},\dots原创 2016-12-08 19:47:49 · 561 阅读 · 0 评论 -
卷积(一)
写在开头:第一次接触到卷积还是在概率论里面,写在不管是卷积神经网络,还是图像处理里面的卷积运算,都已经涉及到这个概念。所以就想弄懂卷积是干什么的,看了网易的公开课,还不错,记录一下。——2016.12.15先不给出卷积公式,我们来看看卷积的定义。拉普拉斯变化Laplace transform:Laplace\ transform: F(s)=∫+∞0f(t)e−stdtF(s)=\int_0^{原创 2016-12-14 22:56:15 · 2727 阅读 · 0 评论 -
傅里叶级数(一)
概述:傅里叶级数,起初是用来解决如何求解微分方程的问题的。学过高数的应该都知道,对于非齐次微分方程的求解,如果输入是指数幂,sin或者cos系列,就可以先求其其次微分方程的通解,然后通过公式求出特解。如果是其他的函数,就很难解决。傅里叶级数就是将所有的周期函数转化为sin和cos的乘积。这篇博客就是讲解傅里叶级数的推导。主要观点来自于网易麻省理工公开课。傅里叶级数定义(有限傅里叶变换)一个以TT为周原创 2016-12-18 21:42:00 · 3015 阅读 · 0 评论 -
LinearLogisticRegression的实现
资源来自于:http://ufldl.stanford.edu/tutorial/ 概要:这篇博客是基于神经网络模型的stanford的系列教程,上面使用了NG在coursera上的minfunc函数,对于想试着实现线性回归和逻辑回归,以及之后的卷积神经网络模型的童鞋来说无疑是很好的教程,课程的作业是放在github上的,GreatWall的存在需要翻墙才能拿到,所以共享在这里,其中包括minfu原创 2016-12-20 16:56:43 · 499 阅读 · 0 评论 -
MatLab实现Softmax Regression
资料参考于NG的深度学习网站:http://ufldl.stanford.edu/tutorial/supervised/SoftmaxRegression/,实现课程中的练习题目Softmax RegressionSoftmax原理softmax是Logistic Regression的泛化,其属于广义线性回归模型,具体的证明推导可以参见该博客;由上面的证明可以得到损失函数: J(θ)=−[∑i原创 2017-02-11 16:54:41 · 7244 阅读 · 0 评论 -
python实现LBP方法提取图像纹理特征实现分类
题目描述这篇博文是数字图像处理的大作业. 题目描述:给定40张不同风格的纹理图片,大小为512*512,要求将每张图片分为大小相同的9块,利用其中的5块作为训练集,剩余的4块作为测试集,构建适当的模型实现图片的分类. 图片如下图所示:分析:由于数据集太小,所以神经网络模型并不适合此类的图像处理.就需要寻找方法提取图像的纹理信息.本文采用LBP的方法提取图像的纹理信息,然后转化成直方图作为图像的特原创 2017-04-06 21:58:45 · 54980 阅读 · 28 评论 -
后向传播(backpropagtion)求导详解
博客主要内容讲解来自于网易课堂:斯坦福cs231n————————–下面是一篇特别偷懒的博客————————–本来想着详细写的,后来发现画图真的是太麻烦啦…latex在画图上真的不太会,所以如果你想知道这个后向传播的过程,就去看一下上面这个课程对应的章节,你会发现他讲的真不错,下面贴一下我的手稿,以后要是当老师啦.我一定会好好准备这个细节内容.哈哈哈哈…———2017.3.29原创 2017-03-29 13:16:07 · 1279 阅读 · 0 评论 -
机器学习python的numpy的小技巧
———最近在忙面试,这个东西得搁浅一段时间了————–不管是matlab还是python实现机器学习算法,也就是matrix或者array操作时都有一些很好用的API,numpy的reference就有1500+页,matlab的操作也有很多,想把所有的API看完是很浪费时间的,所以开一篇博文记录一些小trick,提高代码编辑的效率.评论要是有补充,我也会增加到文章中的! 给出的函数matlab和原创 2017-04-09 21:44:36 · 1544 阅读 · 0 评论 -
matlab实现神经网络算法
调试了两天,一边理解神经网络模型,一边在matlab上实现。刚刚终于调试通了minst手写体识别的简单神经网络。识别度不高,破机子也跑不起来太大规模的神经网络。就选了三层神经网络。昨天晚上调通了之后只要隐含层的节点增大,就会偶尔出现过早拟合的问题。早上起来,把权值的初始化改小了之后,发现不会出现过早拟合的问题啦。当然这个参数初始化也是有讲究的,对于这个问题我也就采用了随意初始化。当然不管是matla原创 2017-03-24 11:05:05 · 16452 阅读 · 2 评论 -
Python机器学习包的sklearn中的Gridsearch简单使用
cross-validation(交叉验证) A solution to this problem is a procedure called cross-validation (CV for short). A test set should still be held out for final evaluation, but the validation set is no longer原创 2017-04-18 15:48:48 · 24226 阅读 · 5 评论 -
MATLAB ttest和ttest2的区别
Author:ZHANG TAO Data:2018.4.3student t-test假设检验χ2−χ2−\chi^2-distribution设X1,X2,...,XnX1,X2,...,XnX_1,X_2,...,X_n是来自总体N(0,1)N(0,1)N(0,1)的样本,则称统计量 χ2=X21+X22+...+X2nχ2=X12+X22+...+Xn2\chi^2...原创 2018-04-03 12:16:23 · 17731 阅读 · 3 评论