
机器学习
子为空
这个作者很懒,什么都没留下…
展开
-
《统计学习方法》学习之二:kd树
原创 2018-05-08 23:31:19 · 566 阅读 · 0 评论 -
机器学习复习:Softmax、Cross Entropy及其反向传播(求导)
我的个人博客:https://huaxuan0720.github.io/,欢迎访问前言 分类问题是深度学习中的最基本的问题,而分类问题中,我们使用最多的就是利用softmaxsoftmaxsoftmax函数并结合cross  entropycross \; entropycrossentropy计算最后的损失值LossLossLoss。所以我们有必要对其进行...原创 2019-06-05 10:33:20 · 3372 阅读 · 0 评论 -
机器学习复习:SMO算法源码解读
'''Created on Nov 4, 2010Chapter 5 source file for Machine Learing in Action@author: Peter'''from numpy import *from time import sleep# 加载数据def loadDataSet(fileName): """ :param file...原创 2019-05-15 23:50:24 · 388 阅读 · 0 评论 -
机器学习复习:EM算法
前言 EM算法是一种可以求解含有隐变量的迭代算法,当我们在实际过程收集数据的时候,并不一定会收集全部的有效信息。比如,当我们想统计全校学生的身高分布的时候,可以将全校学生的身高看作是一个正态分布,但是毕竟男生和女生之间身高的分布还是有些不同的,但是万一我们没有对性别信息进行统计,而只是统计了身高信息的话,求得的概率分布的参数肯定会有较大的误差,这个时候,我们就需要将每一个样本的性别分布也考虑进...原创 2019-04-23 15:50:23 · 480 阅读 · 0 评论 -
机器学习复习:奇异值分解SVD
前言 奇异值分解(Singular Value Decomposition,以下简称SVD)是在一种十分经典的无监督的机器学习算法,它可以用于处理降维算法中的特征分解,还可以用于推荐系统,以及自然语言处理等领域。是很多机器学习算法的基石。特征值和特征向量 再了解SVD之前,对于矩阵的特征值和特征向量还是有必要做一个简单的回顾。 假设矩阵AAA是一个实对称矩阵,大小为n×nn \tim...原创 2019-04-16 16:44:24 · 1178 阅读 · 0 评论 -
机器学习复习:主成分分析PCA
数据降维 在很多时候,我们收集的数据样本的维度很多,而且有些维度之间存在某一些联系,比如,当我们想要收集用户的消费情况时,用户的收入和用户的食物支出往往存在一些联系,收入越高往往食物的支出也越高(这里只是举个例子,不一定正确。)。那么在拿到这样的数据的时候,我们首先想到的就是我们需要对其中的信息做一些处理,排除掉一些冗余的维度,保留必要的维度信息。这样一来,我们可以大大减小我们的后期处理的工作...原创 2019-04-12 22:45:06 · 798 阅读 · 0 评论 -
机器学习复习:逻辑回归
前言 前面主要是讲反向传播和梯度下降的方法,那么一、逻辑斯蒂回归 逻辑斯蒂回归(logistic regression,下面简称逻辑回归),是一种十分经典的分类方法。我们首先介绍一下逻辑回归的定义。 假设我们有一个数据集 SSS,一共包含mmm个样本数据,即: ,S={(x1,y1),(x2,y2),...,(xm,ym)},S = \{(x_1,y_1),(x_2,y_2),......原创 2019-04-11 20:36:59 · 424 阅读 · 0 评论 -
机器学习复习:支持向量机(SVM)之二:线性不可分向量机
一、硬间隔SVM和软间隔SVM 前面简单介绍了以下线性可分SVM,本质上前面介绍的SVM属于硬间隔SVM,因为我们已经知道存在一个超平面 S:ω⋅x+b=0S:\omega \cdot x + b = 0S:ω⋅x+b=0 可以将所有的样本数据完美分开。但是实际上,并不是所有的样本数据都这么完美。有时候存在这种情况,给定一个样本数据集,绝大多数的样本都是线性可分的,但是存在某些特别的样本是线性...原创 2019-03-28 20:44:36 · 1143 阅读 · 0 评论 -
机器学习复习:支持向量机(SVM)之一:线性可分向量机
一、支持向量机 支持向量机(support vector machines,简称SVM)是一种非常高效的分类器,再神经网络出现前,SVM被称为最强分类器。SVM的核心思想就是,对于两个类别的数据,每个数据点都可以抽象为多维空间中的一个坐标点,每一个点都对应于一个标签。那么我们已经知道这两个类别可以被一个超平面相隔开,即再超平面的一侧是一个类别,另一侧是另一个类别。很明显。再绝大多数情况下,这样...原创 2019-03-27 23:23:52 · 794 阅读 · 0 评论 -
深度学习的基础:反向传播算法(二)之稍复杂的反向传播
前言 前面介绍了单层全连接层,并且没有使用激活函数,这种情况比较简单,这一篇文章打算简单介绍一下多个输出,以及使用激活函数进行非线性激活的情况。还是请注意:这里的所有推导过程都只是针对当前设置的参数信息,并不具有一般性,但是所有的推导过程可以推导到一般的运算,因此以下给出的并不是反向传播算法的严格证明,但是可以很好的帮助理解反向传播算法。一、参数设置 和前面一样,这里使用的是长度为3的行...原创 2019-03-22 14:56:14 · 929 阅读 · 0 评论 -
深度学习的基础:反向传播算法(三)之完整的反向传播算法
前言 前面介绍了单层全连接层并使用激活函数激活的情况,尝试去进行了多样本的梯度下降计算,这一篇文章打算简单介绍一下多层全连接层的梯度下降的情况,重点在于如何进行梯度的向后传播。还是请注意:这里的所有推导过程都只是针对当前设置的参数信息,并不具有一般性,但是所有的推导过程可以推导到一般的运算,因此以下给出的并不是反向传播算法的严格证明,但是可以很好的帮助理解反向传播算法。一、模型定义 和...原创 2019-03-24 21:50:13 · 1284 阅读 · 0 评论 -
深度学习的基础:反向传播算法(一)之反向传播入门
一、反向传播算法 近年来,深度学习的快速发展带来了一系列喜人的成果,不管是在图像领域还是在NLP领域,深度学习都显示了其极其强大的能力。而深度学习之所以可以进行大规模的参数运算,反向传播算法功不可没,可以说,没有反向传播算法,深度学习就不可能得以快速发展,因此在此之前,有必要了解一下反向传播算法的具体原理和公式推导。请注意:这里的所有推导过程都只是针对当前设置的参数信息,并不具有一般性,但是所...原创 2019-03-21 10:35:44 · 1380 阅读 · 1 评论 -
《统计学习方法》学习之三:SVM
一、SVM原理 1. 线性可分支持向量机 minimizeαminimizeαminimize_{\alpha} 12∑i=1N∑j=1Nαiαjyiyj(xi,xj)−∑i=1Nαi12∑i=1N∑j=1Nαiαjyiyj(xi,xj)−∑i=1Nαi\frac{1}{2} \sum\limits_{i=1}^{N} \sum\limits_{j=1}^{N} \alpha_{i} ...原创 2018-05-14 18:06:29 · 719 阅读 · 2 评论 -
《统计学习方法》学习之一:感知机
一、感知机模型 在一个n维空间中,存在一个超平面,可以将特征向量分为+1和-1两个类别。(具体内容可以参考李航《统计学习方法》一书)。二、代码实现import numpy as npdef perceptron_algorithm_01(x_input, y_input, lr=1.0, weight_init='zeros', bias_init='zeros', max_iteratio原创 2018-05-07 20:04:23 · 373 阅读 · 0 评论 -
《统计学习方法》学习之番外:Numpy常用函数汇总
1、np.zeros()和np.ones() 这两个函数用于生成指定形状的矩阵,元素全部为0或者全部为1,参数如下:|参数| ||—|—-||shape | int or sequence of ints. Shape of the new array, e.g., (2, 3) or 2.一个整数或者一个int类型的序列,表示需要生成的矩阵的形状。||dtype | d...原创 2018-05-13 22:13:21 · 449 阅读 · 0 评论 -
机器学习复习:Adaboost算法
前言 提升方法(boosting)是一种常用的机器学习方法,应用十分广泛,而且效果非常好,近几年的很多比赛的优胜选手都或多或少使用了提升方法用以提高自己的成绩。 提升方法的本质是通过对每一个训练样本赋予一个权重,并通过改变这些样本的权重,来学习多个分类器,并按照一定的算法将这些分类器组合在一起,通常是线性组合,因为单个分类器往往效果有限,因此组合多个分类器往往会提高模型的性能。 一、提...原创 2019-09-09 17:34:44 · 368 阅读 · 0 评论