一、机器学习
机器学习模型一般会包含以下几个步骤:
- 数据预处理:图像音频去噪、文本去除停用词等。
- 特征提取:从原始数据中提取有效的特征。如在图像分类中,提取边缘、尺度不变特征变换等。
- 特征转换:对特征进行一定的加工,比如升维、降维。常用的特征转换方法有:主成分分析、线性判别分析等。
- 预测:学习一个函数并预测。
二、表示(特征)学习
自动地学习出有效地特征,并提高最终机器学习模型的性能。
表示特征的方式:局部表示和分布式表示
①: 局部表示:one-hot向量形式。
优点:
- 离散的表示方式有很好的解释性,有利于人工归纳和总结特征,并通过特征组合进行高效的特征工程;
- 通过多种特征工程组合得到的表示向量通常是稀疏的二维向量,当用于线性模型时计算效率非常高。
缺点:
- one-hot向量的维数很高,且不能扩展,如果有一个新的特征,就要新增加
一维向量来表示; - 不同颜色之间的相似度为0.比如中国红和红色的相似度显然大于中国红和黑色相似度。
②:分布式表示:RGB表示形式(低维的稠密向量)
优点:
- 分布式表示的表示能力要强很多,分布式表示的向量为度一般都比较低;
- 不同颜色之间的相似度很容易计算
三、常用的深度学习框架
- theano:高效的定义、优化和计算张量数据的数学表达式
http://www.deeplearning.net/software/theano - caffe:卷积神经网络框架,主要用于计算机视觉
http://caffe.berkeleyvision.org/ - tensorflow
http://www.tensorflow.org/ - pytorch
http://pytorch.org/ - 飞桨(paddlepaddle)
http://paddlepaddle.org/ - chainer
http://chainer.org/ - MXNet:
http://mxnet.apache.org/ - 基于tensorflow和thaeno和keras
http://keras.io/ - 基于theano的lasagne
http://github.com/Lasagne/Lasagne - 面向图结构数据的DGL
http://www.dgl,ai/