机器学习
-
层次聚类算法之聚合聚类
层次聚类是一种无监督学习中的聚类方法,它将样本聚合到层次化的类中。层次聚类又可以分为聚合聚类(自下而上)和分裂聚类(自上而下)两种,本文主要讨论聚合聚类。 聚合聚类开始时将每个样本分到一个类,之后将相距最近的两类合并,重…
-
决策树的CART算法
CART名为分类与回归树,顾名思义生成的决策树既可以用于分类,也可以用于回归,这里主要讨论分类树。 决策树的CART算法大体上的框架与ID3/C4.5相似,最大的区别在于CART生成的是一棵二叉树,而ID3/C4.5的子…
-
决策树的ID3/C4.5算法
决策树是一种树形结构,在分类问题中,表示基于特征对实例进行分类的过程。 经典的决策树生成方法有ID3和C4.5算法,二者的生成过程大致相同,区别仅在于使用的对特征分类能力的评价标准不同。 ID3算法使用信息增益评估特征。…
-
基于web平台的手写体数字识别
本文使用numpy搭建基础的神经网络,用于手写体数字识别。用户可以在网页上进行书写,前端将图像信息发送给后端识别并接收识别结果。 大致流程如下: 针对MNIST数据集的神经网络模型的训练,完成后保存训练模型 后端:编写识…
-
朴素贝叶斯法的极大似然估计/贝叶斯估计
朴素贝叶斯法是一种生成模型,通过学习训练数据集的联合概率分布利用条件概率公式和贝叶斯定理,计算数据属于每一类的概率即后验概率并取最大值所在类作为分类结果,这一过程同样等价于期望风险最小化。特别的,朴素贝叶斯对条件概率分布…
-
使用kd树实现knn算法
KNN算法是将待测样本与训练样本的特征进行比较,取k个与待测样本最接近的训练样本(如计算欧氏距离),其中k个样本中大多数属于哪一类别便也将待测样本分类为哪一类别(最大分类决策)。 Kd树是高效的实现KNN算法的一种实现方…
-
使用NumPy搭建基础人工神经网络
本文使用Python科学计算库Nmpy完成基础的人工神经网络搭建,并将其应用于对MNIST手写体数字数据集的训练和分类。
-
感知机的对偶形式
感知机的对偶形式是对原始形式的一种优化计算的方法,它将原始形式的参数 \(w\) 表示为训练过程中每个点被选作误类点的次数 \(\alpha_i\) ,即 \(\alpha_i = n_i * \eta\),则对应的 \…
-
从零开始编写感知机
本文使用python numpy完成简单感知机的搭建,并对sklearn iris鸢尾花数据集进行线性二分类。