神经网络中常见的损失函数

神经网络中常见的损失函数

损失函数用来评价模型的预测值真实值不一样的程度,损失函数越好,通常模型的性能越好。不同的模型用的损失函数一般也不一样。

损失函数分为经验风险损失函数结构风险损失函数
。经验风险损失函数指预测结果和实际结果的差别,结构风险损失函数是指经验风险损失函数加上正则项。一般用于防止过拟合,模型越复杂,其正则项的值就越大,相应的结构化风险损失函数的值就越大,相应的损失就越大。

常见的损失函数以及其优缺点如下:

阅读更多
人工神经网络中常见的一些激活函数

人工神经网络中常见的一些激活函数

激活函数是什么?

神经元

人工神经元(Artificial Neuron),简称神经元(Neuron),是构成神经网络的基本单元,其主要是模拟生物神经元的结构和特性,接收一组输入信号并产生输出。

阅读更多
SVD的实现和意义

SVD的实现和意义

SVD 概念的复习

对于任意的矩阵$A$,总是可以得到如下的分解:

$$
A = U_m \Sigma_{m \times n} V_n^T \tag{1}
$$

这样的分解被称为奇异值分解(SVD, Singular Value Decomposition),其中$U$为$m$阶方阵(酉矩阵), $V$为$n$阶方阵(酉矩阵),
$\Sigma$是形状为$m \times n$的非负实数对角矩阵,其中存放的就是我们的奇异值。

阅读更多
特征值和特征向量的几何和物理意义(转载)

特征值和特征向量的几何和物理意义(转载)

我们知道,矩阵乘法对应了一个变换,是把任意一个向量变成另一个方向或长度都大多不同的新向量。在这个变换的过程中,原向量主要发生旋转、伸缩的变化。如果矩阵对某一个向量或某些向量只发生伸缩变换,不对这些向量产生旋转的效果,那么这些向量就称为这个矩阵的
特征向量,伸缩的比例就是特征值

阅读更多
使用随机森林回归来填充数据集中的缺失值

使用随机森林回归来填充数据集中的缺失值

数据的准备

原始数据

  1. 我们使用的原始数据集如下所示。
  2. 以下数据集是SicKit Learn中,波士顿房价数据的钱 10 列,可以用如下的代码获取到:
1
2
3
4
5
6
from sklearn.datasets import load_boston
dataset = load_boston()
X_full, y_full = dataset.data, dataset.target
TenOfX = X_full_df.iloc[:, :10]
# TenOfX 即为我们的测试数据。
# 为了评估我们的填充效果,我们需要对这些数据做一下归一化处理。
阅读更多
Scikit-Learn中的决策树算法

Scikit-Learn中的决策树算法

Scikit-Learn 中的决策树

sklearn中,决策树在以下位置:

sklearn.tree

主要包含这么几种树:

作用
tree.DecisionTreeClassifier 分类树
tree.DecisionTreeRegressor 回归树
tree.export_graphviz 将生成的决策树导出为 DOT 格式,画图专用
tree.ExtraTreeClassifier 高随机版本的分类树
tree.ExtraTreeRegressor 高随机版本的回归树
阅读更多
决策树中的算法实现

决策树中的算法实现

本文主要描述以下概念及算法

  • 信息增益的计算方法
  • 信息增益比的计算方法
  • ID3 算法的实现
  • C4.5 算法的实现
  • 决策树的剪枝算法
  • 基尼指数的计算方法
  • 最小二乘回归树生成算法
  • CART 生成算法
  • CART 剪枝算法
阅读更多
朴素贝叶斯算法的具体实现

朴素贝叶斯算法的具体实现

输入空间

  1. 训练数据:$T = \lbrace (x_1,y_1),(x_2,y_2),\cdots,(x_N,y_N) \rbrace$,

    其中,$x_i=(x^{(1)},x^{(2)},\cdots,x^{(n)})^T$,$x_i^{(j)}$是第$i$个样本的第$j$个特征,$x_i^{(j)} \in \lbrace
    a_{j1},a_{j2}, \cdots, a_{jS_j} \rbrace$, $a_{jl}$是第$j$个特征可能取到的第$l$个值,$j=1,2,\cdots,n$,$l=1,2,\cdots,S_j$,$y
    \in \lbrace c_1, c_2, \cdots ,c_K \rbrace$;

    • 训练数据中,共有$N$个数据样本;
    • 每个数据共有$n$个特征,即$n$维;
    • 第$j$个维度的取值可能有$S_j$种;
    • 最终可能的分类有$K$种。
  2. 实例:$x$;

输出空间

实例$x$的分类

阅读更多
感知机模型

感知机模型

感知机模型( Perceptron Learning Algorithm )的基础属性

属性 属性值
输入空间 $X \subseteq R_n$
输入变量 $x \in X$
输出空间 $Y = { +1, -1}$
输出变量 $y \in { +1, -1}$
假设空间 $\mathcal{H}=\lbrace f | f(x)=sign(\omega\cdot x+b)\rbrace$
阅读更多
使用TensorFlow和感知机模型进行MNIST手写数字识别

使用TensorFlow和感知机模型进行MNIST手写数字识别

MNIST数据集

MNIST 数据集来自美国国家标准与技术研究所, National Institute of Standards and Technology (NIST).
训练集 (training set) 由来自 250 个不同人手写的数字构成, 其中 50% 是高中学生, 50%
来自人口普查局 (the Census Bureau) 的工作人员. 测试集(test set) 也是同样比例的手写数字数据.

数据集的划分

MNIST 数据集可在 http://yann.lecun.com/exdb/mnist/ 获取, 它包含了四个部分:

  • Training set images: train-images-idx3-ubyte.gz (9.9 MB, 解压后 47 MB, 包含 60,000 个样本)

  • Training set labels: train-labels-idx1-ubyte.gz (29 KB, 解压后 60 KB, 包含 60,000 个标签)

  • Test set images: t10k-images-idx3-ubyte.gz (1.6 MB, 解压后 7.8 MB, 包含 10,000 个样本)

  • Test set labels: t10k-labels-idx1-ubyte.gz (5KB, 解压后 10 KB, 包含 10,000 个标签)

阅读更多