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

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

数据的准备

原始数据

  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 即为我们的测试数据。
# 为了评估我们的填充效果,我们需要对这些数据做一下归一化处理。
Read more
Scikit-Learn中的决策树算法

Scikit-Learn中的决策树算法

Scikit-Learn 中的决策树

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

sklearn.tree

主要包含这么几种树:

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

决策树中的算法实现

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

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

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

输入空间

  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$的分类

Read more
感知机模型

感知机模型

感知机模型( 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$
Read more
使用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 个标签)

Read more
朴素贝叶斯分类器

朴素贝叶斯分类器

贝叶斯判定准则

贝叶斯判定该准则被描述为:为了最小化总体风险,只需要在每个样本上选择那个能使条件风险$R(c|x)$最小的类别标记,即:

$$
h^\star (x) = \arg\min_{c \in \mathcal{Y}} R(c | x)
\tag{1}
$$

此时,$h^\star$称作贝叶斯最优分类器。

注:此时的$h^\star$并不是一个可以计算的值,只是一个贝叶斯最优分类器的理论指导。

Read more
SVM对偶形式推导

SVM对偶形式推导

拉格朗日函数的介绍

优化问题的一般形式

形式一:

$$
\begin{align}
\min_x \quad & f_0(x) \\
s.t.\quad & f_i(x) \le 0 , \quad i = 1,\dots,m \\
& h_i(x) = 0, \quad i = 1,\dots,p
\end{align}
\tag{1}
$$

Read more
SVM原始形式推导

SVM原始形式推导

欧式空间平面的常见性质

证明$\omega$是平面的法向量

$$
\left \lbrace
\begin{matrix}
\omega^T\mathcal{x_1} + b = 0 \\
\omega^T \mathcal{x_2} + b = 0
\end{matrix}
\right .
\to \omega^T(\mathcal{x_1} - \mathcal{x_2}) = 0 \to \omega^T \mathcal{x} = 0
\tag{1}
$$

Read more
机器学习之决策树

机器学习之决策树

熵(Entropy),在本文中是指信息熵(Information Entropy),简单的来说,就是指一件事情的不确定性的度量,其单位为(Bit)。相对的,信息的单位也是 Bit,刚好是信息熵的反义词,是指一件事情的确定性。

首先,引入熵的计算公式:

$$
Ent(D) = - \sum_k^{| \mathcal{Y} |} P_k log_2{P_k}
\tag{1}
$$

Read more