摘要:
介绍 搬运一下百度百科的定义, 支持向量机(Support Vector Machine, SVM)是一类按监督学习(supervised learning)方式对数据进行二元分类的广义线性分类器(generalized linear classifier),其决策边界是对学习样本求解的最大边距超平 阅读全文
摘要:
在构建分类器,经过大量数据训练测试后,该如何评估这个分类器的效果?这里总结几个常用的衡量分类器表现的指标。 1、Accuracy 对于一份测试集,Accuracy衡量了分类预测label的准确度。 \(Accuracy = \frac{正确标记的测试数据的数量}{总测试数据的数量}\) 例如,预测l 阅读全文
摘要:
KNN(K-Nearest Neighbour)算法应该是一个比较简单常用的分类方法了。 其大致思路是,假设我们数据中有m个label,对于新数据(测试数据),计算它与其他数据点的“距离”,选择“最近”的k个数据,然后根据这k个数据中最多的label给新数据标记。这里的距离也是有很多选择方式,如欧氏 阅读全文
摘要:
朴素贝叶斯(Naive Bayes)是一种基于概率理论的监督学习算法。 这里提下贝叶斯公式, \(P(C,X) = P(C|X)P(X)=P(X|C)P(C)\) \(P(C|X) = \frac{P(X|C)P(C)}{P(X)}\) 现在我希望我预测的 \(\hat{C} = argmax_{c 阅读全文
摘要:
K-means是比较一种流行的聚类算法,它以非监督的方式将数据分为k个聚类。具体步骤如下, 随机地选择k个数据点作为初始分类的中心(+标记) 计算所有数据点与k个分类中心的“距离”(e.g.欧式距离),将它们标记为最近的那个分类,如上图 对每种分类数据群,重新计算他们的中心(mean point), 阅读全文
摘要:
百度百科定义 给定N个权值作为N个叶子结点,构造一棵二叉树,若该树的带权路径长度达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman Tree)。哈夫曼树是带权路径长度最短的树,权值较大的结点离根较近。 如何构造一个哈夫曼树(贪婪方法),每次找最小的两个权值的树,合并起来构成新的树, 阅读全文
摘要:
之前没见过遇到了就记录一下,直接看题和解析就能懂, 写出a(b-cd)+e-f/g*(h+i*j-k)的逆波兰表达式。** 根据运算符优先级添加括号。 a*(b-cd)+e-f/g(h+ij-k) = a * (b - (c * d)) + e - (f / g) * (h + (i * j) - 阅读全文
摘要:
关于二叉树的概念 这里允许我简单搬运一下百度百科的定义 二叉树(binary tree)是指树中节点的度不大于2的有序树,它是一种最简单且最重要的树。二叉树的递归定义为:二叉树是一棵空树,或者是一棵由一个根节点和两棵互不相交的,分别称作根的左子树和右子树组成的非空树;左子树和右子树又同样都是二叉树。 阅读全文
摘要:
0、顺序查找 这个不用多说了,一个个比较过去吧。 1、二分查找(Binary search) 二分查找也叫折半查找,可以说是最实用的查找算法之一,前提是查找对象是经过排序的序列。原理也十分简单,每次chec中间的值,如果比我要找的值大,那我就往前找,比我的key小,我就往后找,这样每次折半查找下来, 阅读全文
摘要:
简介 主成分分析 principal component analysis(PCA) 顾名思义是要提取主要数据信息,这是一种非常常用的数据降维手段,也是分析数据特征的一种方法。本文就简单概述一下这个方法以及如何通过sklearn来使用这个工具。 原理 实际中,不论是机器学习还是数据挖掘,数据的维度都 阅读全文