写博客的素材

写在前面:
Normalization:是指归一化,比如将数据集各个特征变换到0均值,单位方差的方法就是一种归一化
Regularization:是指正则化,一般用在损失函数中,防止出现过拟合

  • 一机器学习
    • 1机器学习算法
      • PCA 与SVD
      • 白化whitening
      • SVM
      • Normalization标准化的原因方法和作用详解
      • K-Means 与 K-Medoids
      • GMM高斯混合模型与EMExpectation-Maximization算法
      • 判别模型生成模型与朴素贝叶斯方法
      • ANN 算法
        • 基于树的方法
        • 基于哈希的方法
        • 矢量量化Vector Quantization的方法
          • Product Quantization乘积量化的方法
      • 图像检索的几种常用编码方法
        • BOW Bag of visual word
        • VLAD Aggregating local descriptors
        • FV Fisher Vector
      • CNNConvolutional Neural Network
        • ImageNet和 ILSVRC比赛
        • OverFeat网络
      • 独立成分分析 ICA 与主成分分析 PCA 的区别和联系
      • 一天搞懂深度学习-学习心得
      • Fine-tuning教程
    • 2图像处理
      • 高斯滤波
      • SIFT特征
    • 3图像检索
      • 图像检索综述
    • 4机器学习资料收集
      • 大融合
      • 机器学习各种数据集
      • 与机器学习相关的会议及期刊截稿时间
      • 深度学习课程
        • 1 吴恩达deeplearningai出品的deep learning课程听课有感
        • 2深度学习名校课程大全
        • 3 2017年8月都柏林城市大学深度学习研讨会
        • 4台湾大学 李宏毅老师深度学习和机器学习课程2017年秋持续更新中
    • 5机器学习框架学习
      • Digits安装和使用教程
  • 二Python
      • python的官方教程和翻译
      • pyc的作用
      • python的执行顺序和if name main的功能
      • python引入模块时import与from import的区别
      • Python Import机制-模块搜索路径syspath嵌套Importpackage Import
      • python中包和模块的区别
      • python的类的定义
  • 三工作环境配置
      • OpenCV的配置关于完善CSDN博客中OpenCV配置的内容
      • Ubuntu配置VNC
      • Zotero使用教程
      • Zotero及Docear联合使用
      • 诸多文献管理软件的优劣比较如何你有哪些使用心得 - 研之成理的回答 - 知乎
      • 论文写作和文献管理工具使用相关系列教程
  • 四英语学习
      • 6个月掌握流利的外语学习方法

一、机器学习

1.1、机器学习算法

PCA 与SVD

  • http://blog.codinglabs.org/articles/pca-tutorial.html
  • http://blog.csdn.net/llp1992/article/details/45065609
  • http://blog.csdn.net/llp1992/article/details/45640527
  • 刘新旺的ppt: lecture10

  • http://blog.csdn.net/m_buddy/article/details/56843431

  • http://www.cnblogs.com/LeftNotEasy/archive/2011/01/19/svd-and-applications.html
  • https://www.zhihu.com/question/40043805
  • http://blog.csdn.net/dark_scope/article/details/53150883
  • Hinton是如何理解PCA?

最大方差理论
信号处理中认为信号具有较大的方差,噪声有较小的方差,信噪比就是信号与噪声的方差比,越大越好。因此我们认为,最好的 k 为特征既是将 n 维样本点转换为 k 维后,每一维上的样本方差都很大

降维当然意味着信息的丢失,不过鉴于实际数据本身常常存在的相关性,我们可以想办法在降维的同时将信息的损失尽量降低。
举个例子,假如某学籍数据有两列M和F,其中M列的取值是如何此学生为男性取值1,为女性取值0;而F列是学生为女性取值1,男性取值0。此时如果我们统计全部学籍数据,会发现对于任何一条记录来说,当M为1时F必定为0,反之当M为0时F必定为1。在这种情况下,我们将M或F去掉实际上没有任何信息的损失,因为只要保留一列就可以完全还原另一列。
当然上面是一个极端的情况,在现实中也许不会出现,不过类似的情况还是很常见的。例如上面淘宝店铺的数据,从经验我们可以知道,“浏览量”和“访客数”往往具有较强的相关关系,而“下单数”和“成交数”也具有较强的相关关系。这里我们非正式的使用“相关关系”这个词,可以直观理解为“当某一天这个店铺的浏览量较高(或较低)时,我们应该很大程度上认为这天的访客数也较高(或较低)”。后面的章节中我们会给出相关性的严格数学定义。
这种情况表明,如果我们删除浏览量或访客数其中一个指标,我们应该期待并不会丢失太多信息。因此我们可以删除一个,以降低机器学习算法的复杂度。


白化(whitening)

  • http://blog.csdn.net/llp1992/article/details/45640527
  • http://ufldl.stanford.edu/wiki/index.php/%E7%99%BD%E5%8C%96#.E4.B8.AD.E6.96.87.E8.AF.91.E8.80.85
  • https://zhuanlan.zhihu.com/p/28298776
  • http://blog.csdn.net/hjimce/article/details/50864602

SVM

  • http://blog.csdn.net/zhazhiqiang/article/details/20146243

Normalization(标准化)的原因、方法和作用详解

  • 参见我自己的博客:http://blog.csdn.net/u011092188/article/details/78174804

K-Means 与 K-Medoids

K-Means聚类算法的优化方法是根据EM(Expectation-Maximization)推导而来,因此可以在学习完K-Means算法后学习EM算法来加深对K-Means算法的理解。
* http://www.cnblogs.com/jerrylead/archive/2011/04/06/2006910.html
* http://blog.pluskid.org/?p=17
* http://blog.pluskid.org/?p=40
* 刘新旺ppt lecture8.
* kmeans++算法


GMM(高斯混合模型)与EM(Expectation-Maximization)算法

统计学习的模型有两种,一种是概率模型,一种是非概率模型。
所谓概率模型,是指训练模型的形式是P(Y|X)。输入是X,输出是Y,训练后模型得到的输出不是一个具体的值,而是一系列的概率值(对应于分类问题来说,就是输入X对应于各个不同Y(类)的概率),然后我们选取概率最大的那个类作为判决对象(软分类–soft assignment)。所谓非概率模型,是指训练模型是一个决策函数Y=f(X),输入数据X是多少就可以投影得到唯一的Y,即判决结果(硬分类–hard assignment)。
所谓混合高斯模型(GMM)就是指对样本的概率密度分布进行估计,而估计采用的模型(训练模型)是几个高斯模型的加权和(具体是几个要在模型训练前建立好)。每个高斯模型就代表了一个类(一个Cluster)。对样本中的数据分别在几个高斯模型上投影,就会分别得到在各个类上的概率。然后我们可以选取概率最大的类所为判决结果。
从中心极限定理的角度上看,把混合模型假设为高斯的是比较合理的,当然,也可以根据实际数据定义成任何分布的Mixture Model,不过定义为高斯的在计算上有一些方便之处,另外,理论上可以通过增加Model的个数,用GMM近似任何概率分布。

注意:GMM假设各个高斯函数的变量的各个维度是相互独立的,比如说对于SIFT特征(128维),GMM要求这128维每个维度都是相互独立的。也就说GMM除了要求各个高斯函数相互独立外,还假设每个高斯函数的变量的各个维度之间之间是相互独立的。也就是说各个高斯函数的协方差矩阵除了对角线外都是零,说以一般认为每个高斯函数的协方差矩阵只有对角线元素几个变量。这也就是一般在将SIFT特征输入到GMM前需要先进行PCA进项降维的原因(去除特征向量内部的关联,使它们保持相互独立)。论文ImageClassification with the Fisher Vector: Theory and Practice中的一个实验就反应了这一点,一个没有经过PCA处理的FV的分类效果相对于经过PCA处理的FV要差很多。

  • http://blog.csdn.net/zouxy09/article/details/8537620/

  • http://www.cnblogs.com/Gabby/p/5344658.html

  • http://www.cnblogs.com/zhangchaoyang/articles/2623364.html

  • http://www.cnblogs.com/jerrylead/archive/2011/04/06/2006924.html

  • http://www.cnblogs.com/jerrylead/archive/2011/04/06/2006936.html

  • http://www.cnblogs.com/AndyJee/p/3732766.html
    方案1:协方差矩阵设为单位矩阵,每个模型比例的先验概率;均值设为随机数。
    方案2:由k均值(k-means)聚类算法对样本进行聚类,利用各类的均值作为,并计算,取各类样本占样本总数的比例。

  • http://blog.csdn.net/hjimce/article/details/45244603

  • http://blog.csdn.net/gugugujiawei/article/details/45583051

  • http://blog.pluskid.org/?p=39

  • http://blog.pluskid.org/?p=81

  • Hinton和Jordan理解的EM算法

判别模型、生成模型与朴素贝叶斯方法

  • http://www.cnblogs.com/jerrylead/archive/2011/03/05/1971903.html

ANN 算法:

每逢碰到这个ANN的简称,小白菜总是想到Artificial Neural Network人工神经网络,不过这里要展开的ANN并不是Artificial Neural Network,而是已被小白菜之前写过很多次的Approximate Nearest Neighbor搜索。虽然读书的那会儿,这一块的工作专注得比较多,比如哈希,也整理过一个像模像样的工具包hashing-baseline-for-image-retrieval,以及包括KD树、PQ乘积量化等近似最近邻搜索,但这些东西放在今天小白菜的知识体系里来看,依然自以为还非常的散乱。所以借再次有专研的机会之际,再做一次整理,完善自己在索引这方面的知识体系。

在具体到不同类的索引方法分类前,小白菜以为,从宏观上对ANN有下面的认知显得很有必要:brute-force搜索的方式是在全空间进行搜索,为了加快查找的速度,几乎所有的ANN方法都是通过对全空间分割,将其分割成很多小的子空间,在搜索的时候,通过某种方式,快速锁定在某一(几)子空间,然后在该(几个)子空间里做遍历。可以看到,正是因为缩减了遍历的空间大小范围,从而使得ANN能够处理大规模数据的索引。

根据小白菜现有的对ANN的掌握,可以将ANN的方法分为三大类:基于树的方法、哈希方法、矢量量化方法。这三种方法里面,着重总结典型方法,其中由以哈希方法、矢量量化方法为主。

  • http://yongyuan.name/blog/ann-search.html
  • http://blog.csdn.net/guoyilin/article/details/39668183
  • https://zhuanlan.zhihu.com/p/25684529

基于树的方法

KD树是其下的经典算法。一般而言,在空间维度比较低时,KD树的查找性能还是比较高效的;但当空间维度较高时,该方法会退化为暴力枚举,性能较差,这时一般会采用下面的哈希方法或者矢量量化方法。

基于哈希的方法

LSH(Locality-Sensitive Hashing)是其下的代表算法。文献[7]是一篇非常好的LSH入门资料。 对于小数据集和中规模的数据集(几个million-几十个million),基于LSH的方法的效果和性能都还不错。这方面有2个开源工具FALCONN和NMSLIB。

  • https://github.com/FALCONN-LIB/FALCONN/wiki/LSH-Primer

矢量量化(Vector Quantization)的方法

在矢量量化编码中,关键是码本的建立和码字搜索算法。比如常见的聚类算法,就是一种矢量量化方法。而在相似搜索中,向量量化方法又以PQ(Product Quantization)方法最为典型。

对于大规模数据集(几百个million以上),基于矢量量化的方法是一个明智的选择,可以用用Faiss开源工具。

  • http://blog.pluskid.org/?p=57
  • https://en.wikipedia.org/wiki/Vector_quantization
  • http://blog.csdn.net/zouxy09/article/details/9153255
  • http://www.data-compression.com/vqanim.shtml
Product Quantization(乘积量化的方法)
  • http://vividfree.github.io/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/2017/08/05/understanding-product-quantization
  • http://blog.csdn.net/liuheng0111/article/details/52213724
  • http://blog.csdn.net/swartz2015/article/details/50859666
  • http://blog.csdn.net/CHIERYU/article/details/50321473
  • http://blog.csdn.net/chieryu/article/details/50347735
  • http://blog.csdn.net/chieryu/article/details/50404920

图像检索的几种常用编码方法:

BoW (Bag of visual word)、VLAD (Aggregating local descriptors)以及FV (Fisher Vector)是三种非常经典的将局部特征表示成全局特征的编码方法,在图像检索领域,这图像检索领域,这三种编码方法是必须面对的三名剑客。下面是小白菜结合自己的理解,对这三种编码方法的原理和一些实践经验的总结。
* http://yongyuan.name/blog/CBIR-BoF-VLAD-FV.html

BOW (Bag of visual word):

  • http://yongyuan.name/blog/CBIR-BoW-for-image-retrieval-and-practice.html
  • http://blog.csdn.net/happyer88/article/details/45769413
  • http://www.ruanyifeng.com/blog/2013/03/tf-idf.html
  • http://yongyuan.name/blog/how-to-design-a-good-bow-class.html
  • https://github.com/DongdongBai/image-retrieval

VLAD (Aggregating local descriptors)

  • http://ju.outofmemory.cn/entry/170250
  • http://www.cnblogs.com/jeromeblog/p/4181862.html
  • http://blog.csdn.net/happyer88/article/details/47054503
  • http://blog.csdn.net/breeze5428/article/details/36441179
  • http://blog.csdn.net/chieryu/article/details/65441242

FV (Fisher Vector)

  • http://blog.csdn.net/happyer88/article/details/46576379
  • http://blog.csdn.net/breeze5428/article/details/32706507
  • 完整介绍Fisher Vector方法的论文Image Classification with the Fisher Vector: Theory and Practice
  • http://www.cnblogs.com/jie-dcai/p/5740480.html
  • http://www.cnblogs.com/lutaitou/articles/6242636.html
  • http://blog.csdn.net/carrierlxksuper/article/details/28151013
  • http://blog.csdn.net/ikerpeng/article/details/41644197
  • fisher information的直观意义:https://www.zhihu.com/question/26561604
  • http://yongyuan.name/blog/sometihing-about-GMM-fisher-vector-SIFT-and-HOG.html

CNN(Convolutional Neural Network)

ImageNet和 ILSVRC比赛

  • ILSVRC历届冠军论文笔记
  • CNN浅析和历年ImageNet冠军模型解析

OverFeat网络

  • 基于Overfeat的图片分类、定位、检测

独立成分分析 ( ICA ) 与主成分分析 ( PCA ) 的区别和联系

  • https://www.zhihu.com/question/28845451
  • https://zhuanlan.zhihu.com/p/26178282

一天搞懂深度学习-学习心得

  • 视频(YouTube):https://www.youtube.com/watch?v=ZrEsLwCjdxY

Fine-tuning教程

*吐血推荐:图像检索:layer选择与fine-tuning性能提升验证



1.2、图像处理

高斯滤波

  • http://www.cnblogs.com/wangguchangqing/p/6407717.html#undefined
  • http://www.docin.com/p-1490518542.html
  • http://www.cnblogs.com/qiqibaby/p/5289977.html

SIFT特征

  • http://www.caincc.com/post/sift-algorithm
  • http://www.cnblogs.com/wangguchangqing/p/4853263.html
  • http://blog.csdn.net/zddblog/article/details/7521424
  • http://blog.csdn.net/xiaowei_cqu/article/details/8069548


1.3、图像检索

图像检索综述

  • 图像检索:基于内容的图像检索技术


1.4、机器学习资料收集

大融合

  • http://homepages.inf.ed.ac.uk/rbf/CVonline/CVentry.htm#otherresources
  • http://www-cgi.cs.cmu.edu/afs/cs/project/cil/ftp/html/vision.html
  • http://www.sciweavers.org/
  • http://deeplearning.net/
  • http://www.deeplearning.net/tutorial/contents.html
  • 深度学习数据集标注工具、图像语料数据库、实验室搜索ing…
  • 网页版各类深度学习模型的demo

机器学习各种数据集

  • http://rodrigob.github.io/are_we_there_yet/build/classification_datasets_results.html#494c5356524332303132207461736b2031
  • http://rodrigob.github.io/are_we_there_yet/build/#pose_estimation-dataset-type
  • http://riemenschneider.hayko.at/vision/dataset/index.php
  • http://homepages.inf.ed.ac.uk/rbf/CVonline/Imagedbase.htm#action

与机器学习相关的会议及期刊截稿时间

  • http://conferences.visionbib.com/Iris-Conferences.html

深度学习课程

1、 吴恩达deeplearning.ai出品的deep learning课程听课有感

  • http://vividfree.github.io/%E5%90%AC%E8%AF%BE%E7%AC%94%E8%AE%B0/2017/10/04/course-notes-on-deep-learning
  • https://www.deeplearning.ai/
  • http://mooc.study.163.com/smartSpec/detail/1001319001.htm

2、深度学习名校课程大全

  • http://mp.weixin.qq.com/s?__biz=MzIzMjU1NTg3Ng==&mid=2247486287&idx=1&sn=97fabf941591de957bae23f6190b8a8a&chksm=e8925f44dfe5d652b418e2b402bf15ae68580bc084085c480e63bc657436299d0d797448ac75&scene=21##

3、 2017年8月都柏林城市大学深度学习研讨会

该研讨会包含了深度学习的各个方面,内容深入浅出,很不错,链接为:https://telecombcn-dl.github.io/dlmm-2017-dcu/

4、台湾大学 李宏毅老师深度学习和机器学习课程(2017年秋持续更新中)

  • 课程列表
  • 2017年机器学习课程链接
  • 2017年深度学习课程链接
  • 2016年机器学习课程链接

1.5、机器学习框架学习

Digits安装和使用教程

  • 视频上集(youtube):https://www.youtube.com/watch?v=G97DFof5YJI
  • 视频下集(youtube):https://www.youtube.com/watch?v=fS4DrNI0W0Q


二、Python

python的官方教程和翻译

  • https://docs.python.org/2.7/tutorial/modules.html
  • http://www.pythondoc.com/
  • http://python.usyiyi.cn/

pyc的作用

  • http://www.cnblogs.com/kym/archive/2012/05/14/2498728.html

python的执行顺序和”if name == ‘main‘:”的功能

  • http://blog.csdn.net/u014265088/article/details/49302667
  • http://www.cnblogs.com/lvxiuquan/archive/2012/07/09/2582437.html
    在C/C++/Java中,main是程序执行的起点,Python中,也有类似的运行机制,但方式却截然不同:Python使用缩进对齐组织代码的执行,所有没有缩进的代码(非函数定义和类定义),都会在载入时自动执行,这些代码,可以认为是Python的main函数。
  • http://www.jb51.net/article/51892.htm
  • http://www.dengfeilong.com/post/60.html
  • http://blog.csdn.net/fervor_heart/article/details/8786240

python引入模块时import与from … import的区别

  • http://www.cnblogs.com/xxoome/p/5880693.html
    在python用import或者from…import来导入相应的模块。模块其实就是一些函数和类的集合文件,它能实现一些相应的功能,当我们需要使用这些功能的时候,直接把相应的模块导入到我们的程序中,我们就可以使用了。这类似于C语言中的include头文件,Python中我们用import导入我们需要的模块。
  • http://blog.csdn.net/windone0109/article/details/8996184
    在python用import或者from…import来导入相应的模块。模块其实就是一些函数和类的集合文件,它能实现一些相应的功能,当我们需要使用这些功能的时候,直接把相应的模块导入到我们的程序中,我们就可以使用了。这类似于C语言中的include头文件,Python中我们用import导入我们需要的模块。
  • https://www.zhihu.com/question/38857862

Python Import机制-模块搜索路径(sys.path)、嵌套Import、package Import

  • http://blog.csdn.net/u014596240/article/details/49820469
  • http://bbs.csdn.net/topics/320121191
  • http://www.cnblogs.com/hujq1029/p/7096236.html

python中包和模块的区别

  • https://www.crifan.com/python_module_vs_library_vs_package/
  • http://blog.163.com/stu_shl/blog/static/59937509201421084415807/

python的类的定义:

  • http://www.cnblogs.com/chenxiaoyong/p/6279874.html
  • http://www.jb51.net/article/42623.htm


三、工作环境配置

OpenCV的配置(关于完善CSDN博客中OpenCV配置的内容)

  • http://blog.csdn.net/hansry/article/details/75309906
  • http://blog.csdn.net/thornsuge/article/details/71171272
  • http://www.cnblogs.com/arkenstone/p/6490017.html
  • http://www.cnblogs.com/paladinzxl/p/6749446.html
  • http://ufldl.stanford.edu/wiki/index.php/%E7%99%BD%E5%8C%96

Ubuntu配置VNC

  • http://www.cnblogs.com/elmaple/p/4354814.html
  • https://morvanzhou.github.io/tutorials/others/linux-basic/4-04-teamviewer-vnc/
  • http://blog.csdn.net/longhr/article/details/51657610
  • http://www.cnblogs.com/lanxuezaipiao/p/3724958.html

Zotero使用教程

  • http://blog.guantau.com/2016/08/21/zotero-tips/

Zotero及Docear联合使用

  • http://blog.csdn.net/yangtou882/article/details/51296120#t6

诸多文献管理软件的优劣比较如何?你有哪些使用心得? - 研之成理的回答 - 知乎

  • 很全面
    https://www.zhihu.com/question/24999477/answer/245704297

论文写作和文献管理工具使用相关系列教程

  • http://mp.weixin.qq.com/s?__biz=MzIwMzE5MzQ1NQ==&mid=2649304959&idx=1&sn=84c49f3560f7a1f711dbde5289cdf4ca&chksm=8ecea27fb9b92b69981f9b6e2ea23c2259a08161fafbce467c18c71123d4773b4ccda5433766&scene=21#wechat_redirect
  • https://zhuanlan.zhihu.com/rationalscience-writing-lab

四、英语学习

6个月掌握流利的外语学习方法

  • https://www.youtube.com/watch?v=FrMSSQRYS6I

你可能感兴趣的:(其他,正则,算法,机器学习,博客,函数)