
机器学习
文章平均质量分 84
麦地与诗人
读书不是为了雄辩和驳斥,也不是为了轻信和盲从,而是为了思考和权衡.
展开
-
词向量
用数字表示文本要将自然语言交给机器学习中的算法来处理,通常需要首先将语言数学化,词向量就是用来将语言中的词进行数学化的一种方式,然后再其馈入模型。独热编码对词汇表中的每个单词进行“独热”编码。考虑这样一句话:“The cat sat on the mat”。这句话中的词汇(或唯一单词)是(cat、mat、on、sat、the)。为了表示每个单词,我们将创建一个长度等于词汇量的零向量,然后在与该单词对应的索引中放置一个 1。下图显示了这种方法。为了创建一个包含句子编码的向量,我们可以将每个单词原创 2020-10-18 15:42:15 · 372 阅读 · 0 评论 -
决策树
划分数据集的最大原则是:将无序的数据变得更加有序。在划分数据集之前之后发生的变化称为信息增益。需要了解的几个名词,信息、熵(entropy)、信息增益(information gain)熵定义为信息的期望值。信息 :如果待分类的事物可能划分在多个分类之中,则符号xix_ixi的信息定义为l(xi)=−log2p(xi)l(x_i)=-log_2p(x_i)l(xi)=−log2p(xi)其中p(xi)是选择该分类的概率p(x_i)是选择该分类的概率p(xi)是选择该分类的概率;为了计原创 2020-09-15 11:28:59 · 185 阅读 · 0 评论 -
区分贝叶斯定理、贝叶斯推断、贝叶斯网络
从条件概率推导得贝叶斯定理通常,我们想知道某些事件发生时其它事件也发生的概率。我们将事件 B 发生时事件 A 也发生的条件概率写为 P(A∣B)P(A | B)P(A∣B),读作“在B发生的条件下A的概率”。如果一个事件的概率不以任何方式影响另一个事件,则该事件被称为独立事件。根据文氏图,可以清楚地看到,在事件B发生的情况下,事件A发生的条件概率就是:P(A∣B)=P(AB)P(B)P(A|B)=\frac{P(AB)}{P(B)}P(A∣B)=P(B)P(AB)所以,P(AB)=P(A∣B)原创 2020-09-14 15:54:36 · 1001 阅读 · 0 评论 -
归一化、标准化、正则化
归一化(Normalization)1.把数据变为(0,1)之间的小数。主要是为了方便数据处理,因为将数据映射到0~1范围之内,可以使处理过程更加便捷、快速。2.把有量纲表达式变换为无量纲表达式,成为纯量。经过归一化处理的数据,处于同一数量级,可以消除指标之间的量纲和量纲单位的影响,提高不同数据指标之间的可比性。例子:把数变为(0,1)之间的小数。例1:{2.5 3.5 0.5 1.5}归一化后变成了{0.3125 0.4375 0.0625 0.1875}解:2.5+3.5+0.5+1.5=原创 2020-09-08 15:45:13 · 1125 阅读 · 0 评论 -
分类性能度量---准确率、精确率、召回率
原创 2020-05-13 22:16:28 · 328 阅读 · 0 评论 -
KNN vs. K-means
不知道为什么总是记不清 KNN 和 K-means,只好用思维导图这种方式来帮助自己记忆了…原创 2020-03-31 11:16:24 · 277 阅读 · 0 评论 -
数据的类型:分类数据、顺序数据、数值型数据
categorical or nominal attribute:是只能归于某一类别的非数字型数据,它是对事物进行分类的结果,数据表现为类别,是用文字来描述的。例如:(1)人口按性别分为男、女两类;(2)企业按行业属性分为医药企业、家电企业、纺织品企业等;为了便于统计处理,对于分类数据可以用数字代码来表示各个类别,比如:用1表示“男性”,0表示“女性”;用1表示“医药企业”,2表示“...原创 2020-03-23 10:18:13 · 53032 阅读 · 0 评论 -
混淆矩阵
P-R曲线混淆矩阵(confusion matrix)我们肯定是希望,R曲线#### 混淆矩阵(confusion matrix)我们肯定是希望,真正例 (TP) 和真反例 (TN) 的值越大越好。查准率(precision)P=TPTP+FPP=\frac{TP}{TP+FP}P=TP+FPTP查全率(recall)R=TPTP+FNR=\frac{TP}{TP+F...原创 2019-12-21 17:04:18 · 908 阅读 · 0 评论 -
孤立森林---2--使用Scikit learn实现
Some Notions(算法中使用到的一些符号说明)Training Stage (训练阶段包含算法1和算法2)算法1:iForest(X,t,ψ)iForest(X,t,\psi)iForest(X,t,ψ)构建孤立森林,X表示我们的总数据, t 表示孤立森林中设置的树的棵数,ψ\psiψ表示构建一棵树,我们从总数据X中选取的随机样本个数算法1:iTree(X′)iTree(X')i...原创 2019-11-26 10:13:43 · 2400 阅读 · 0 评论 -
孤立森林---1-算法初探
孤立森林(Isolation Forest)先简单解释一下什么是孤立森林为什么叫孤立?“孤立”(isolation)指的是“把异常点从所有样本中孤立出来”为什么叫森林?孤立森林是由N个树构成的。每棵树的的学习过程非常随机:它会随机抽取特征、随机选取分割值来建立决策树,从而将每一个样本分到一个独立的子节点上(取值相同的样本视为同一个样本)。这样我们就得到了N个(基本)不相同的树。从超空...原创 2019-11-20 20:08:39 · 769 阅读 · 2 评论 -
数据类别1:结构化数据与非结构化数据的区别
结构化数据结构化数据是数据的数据库。(即,行数据,存储在数据库里,可以用二维表结构来逻辑表达实现的数据)我们可以清楚的看到能够形式化存储在数据库中,每一个列都有具体的含义。如下图所示:非结构化数据非结构化数据,包括所有格式的办公文档、文本、图片、XML、HTML、各类报表、图像和音频/视频信息等等非结构数据与结构化数据相比较而言,更难让计算机理解。如下图:参考吴恩达老师deep...原创 2019-11-08 10:29:08 · 5521 阅读 · 2 评论 -
K-近邻算法
K-近邻算法工作原理:存在一个样本数据集合,也称作训练样本集,并且样本中每个数据都存在标签,即我们知道样本集中每一数据与所属分类的对应关系;输入没有标签的新数据;将新数据的每个特征与样本集中数据对应的特征进行比较;然后算法提取样本集中,特征最相似数据(k近邻),的分类标签这就是k-近邻算法中,k的出处, 通常k是不大于20的整数选择k个最相似数据中出现次数最多的分类,作为新数据的分...原创 2019-07-09 13:57:19 · 1391 阅读 · 0 评论 -
数据降维及压缩
《Python3数据分析与机器学习实战》阅读笔记》.数据降维数据降维,也称维数约简(Dimensionality Reduction),即降低数据的维数,将原始高维特征空间中的点向一个低维空间投影,新的空间维度低于原始特征空间,所以维数减少了。在这个过程中,特征发生了根本性的变化,原始的特征消失了(虽然新的特征也保持了原特征的一些性质)。截至目前,数据降维的方法很多,从不同的角度有不同的分类...原创 2019-07-09 21:48:48 · 1952 阅读 · 0 评论 -
”二元学习”的方法论
这是在张玉宏的《深度学习之美》里看到的,觉得很有道理,作为一名机器学习方向的研究生,有那么多要看的论文,那么多要学的算法,学习方法真的很重要!严伯钧老师曾说,如果你没有太多精力,但又想快速建 立对一个新领域的感觉,那么最好的办法就是使用“二元学习法”。 具体来说,就是找到两位这个领域的代表性人物,最好是针锋相对的代表人物,高手对决,精彩就会纷呈。比如,在古典音乐领域,听到莫扎特的音乐,就该去找...原创 2019-06-30 15:08:27 · 519 阅读 · 0 评论 -
感知机算法示例
import copyfrom matplotlib import pyplot as pltfrom matplotlib import animationtraining_set = [[(1, 2), 1], [(2, 3), 1], [(3, 1), -1], [(4, 2), -1]] # 训练数据集w = [0, 0] # 参数初始化b = 0history = []...原创 2019-07-05 16:56:10 · 1320 阅读 · 2 评论 -
Python实现SGD、BSGD、MiniBachSGD
gradientdecnt.pyimport numpy as npimport matplotlib.pyplot as pltclass LRGrad: def __init__(self, X, y,type='FULL',batch_size=16, alpha=0.1, shuffle=0.1, theta = None,epoch=100): ''' ...原创 2019-07-06 10:34:59 · 2514 阅读 · 0 评论 -
感知机官方文档from sklearn.linear_model import perceptron
# Author: Mathieu Blondel# License: BSD 3 clausefrom .stochastic_gradient import BaseSGDClassifierclass Perceptron(BaseSGDClassifier): """Perceptron Read more in the :ref:`User Guide &l...原创 2019-07-06 17:37:25 · 1881 阅读 · 0 评论 -
机器学习函数库Scikit-learn
Scikit-learn的基本功能主要被分为以下6个部分:总体来说,作为专门面向机器学习的Python开源框架,Scikit-learn可以在一定范围内为开发者,提供非常友好的帮助。它内部实现了各种各样成熟的算法,容易安装和使用,样例丰富,而且教程和文档也非常详细。《Python3数据分析与机器学习实战》阅读笔记!...原创 2019-07-06 16:35:55 · 278 阅读 · 0 评论 -
什么是数据标注?
什么是数据标注这个是IT互联网公司的一个职位,数据标注员就是使用自动化的工具从互联网上抓取、收集数据包括文本、图片、语音等等,然后对抓取的数据进行整理与标注。相当于互联网上的”专职编辑“。 这个岗位工作任务简单的,没什么技术含量。工资基本也不高,大部分3000-4000,很少有5000以上的。而且这类IT公司大部分都是民营公司,待遇不会太高。训练集和测试集都是标注过的数据。在进行数据标注之前...原创 2019-07-30 16:16:00 · 148635 阅读 · 0 评论 -
最大似然法
最大似然法概率模型是概率分布p(x|θ)的集合。我们并不知道具体参数θ是什么,需要进行推测。例如对于给定的数据x,我们想建立一个高斯分布模型p(x|θ),θ={μ,Σ}。注意这里隐含着一个重要的假设,即所有数据都是独立同分布的(iid),即xi∼iidp(x∣θ), i=1,…,nx_i \mathop{\sim}^{iid} p(x|\theta),\ i = 1, \ldots...转载 2019-09-10 09:51:00 · 1544 阅读 · 0 评论 -
认识-----“大数据”
这些年,大数据作为一个时髦概念,出现频率很高,关注度也很高。对于很多人来说,当他第一次听到“大数据”这个词,会自然而然从字面上去理解——认为大数据就是大量的数据,大数据技术就是大量数据的存储技术。但是,事实并非如此。大数据比想象中复杂。它不只是一项数据存储技术,而是一系列和海量数据相关的抽取、集成、管理、分析、解释技术,是一个庞大的框架系统。更进一步来说,大数据是一种全新的思维方式和商业模...转载 2019-09-14 22:30:56 · 742 阅读 · 0 评论 -
数据集-----样本矩阵
把数排成一列就是向量。(123)\left(\begin{array}{ccccc} 1 \\\\ 2 \\\\ 3 \end{array}\right)⎝⎜⎜⎜⎜⎛123⎠⎟⎟⎟⎟⎞在没有特别说明的情况下,提到向量,就是指上例这样竖排的“列向量”。虽然存在像下面那样横排的“行向量”。(1,2,3)\left(\begin{array}{ccccc} 1,&...原创 2019-10-10 11:08:00 · 3113 阅读 · 0 评论 -
贝叶斯5-----贝叶斯分类器
某一数据实例属于哪一类?我们总是希望得到这类问题的明确答案。不过,分类器有时会产生错误结果,这时可以要求分类器给出一个最优的类别猜测结果,同时给出这个猜测的概率估计值。贝叶斯决策论就是考虑如何基于这些概率和误判损失来选择最优的类别标记。对于样本xxx,假设有N钟可能的类别标记,即 y={c1,c2,...,cn}y=\{c_1,c_2,...,c_n\}y={c1,c2,...,cn}...原创 2019-10-11 10:36:06 · 299 阅读 · 0 评论 -
点积的形式,就一定能写成核函数么?
有些问题,如果不把它清晰的表述出来,就会一直有那种让人觉得不懂感到很难受的感觉。所以就像给自己写日记一样,想把思考过程中让自己感到费解的一些点,抠出来,放大,解决它!两个样本点积的形式,就一定能写成核函数么?在机器学习中,我们要用到内积运算。而在映射后的高维空间中,内积往往是很不好求解的。所以,我们能不能找到在低维空间中的某个运算,恰好等于高维空间中的内积运算呢?是不是理解成,即便我们没有将...原创 2019-06-02 09:17:09 · 536 阅读 · 0 评论 -
两个求和符号相乘
在机器学习中,经常会遇到有含有两个求和符号的公式,如,∑i=1M∑j=1N\sum^M_{i=1} \sum^N_{j=1}∑i=1M∑j=1N,一开始,我总是不能够理解这是一种怎样的运算,后来看到下面的解释觉得自己顿悟:有两个∑\sum∑的时候就有两个变量,是一个不变的情况下另一个从头到尾改变,然后之前那个再变一下,第二个再从头到尾变,一直到第一个变量变到最后,把这个过程中的项加起来!...原创 2019-06-14 09:23:50 · 33188 阅读 · 8 评论 -
SVM和Softmax分类器比较
####参考:作者:啊噗不是阿婆主来源:优快云原文:https://blog.youkuaiyun.com/weixin_38278334/article/details/830027481.SVM和Softmax分类器是最常用的两个分类器,Softmax的损失函数与SVM的损失函数不同。对于学习过二元逻辑回归分类器的读者来说,Softmax分类器就可以理解为逻辑回归分类器面对多个分类的一般化归纳...转载 2019-06-02 17:16:52 · 7362 阅读 · 4 评论 -
分类问题
1.k-近邻算法(k-NearestNeighbor,kNN)2.朴素贝叶斯朴素贝叶斯分类器(Naive Bayes Classifier,NBC )之所以称其为朴素,是因为整个形式化过程只做最原始,最简单的假设。3.支持向量机(Support Vector Machine,SVM)4.AdaBoost(Adaptive Boosting)Adaptive Boosting,自适应,它...原创 2019-06-02 16:55:24 · 718 阅读 · 0 评论 -
怎样更好的理解并记忆泰勒公式?
1.如下图,是一辆随意行驶的小车的轨迹曲线:物理学家觉得这段轨迹很有意思,也想开车走一段一摸一样的轨迹!既然想模仿刚才那辆车,那首先,应该保证初始位置一样,继续模仿,让车在初始位置的速度也一样,不满足,继续细化,这次保持位置、在初始位置处的速度一样的同时,保证在初始位置处车的加速度也一样,不满足,继续细化,这次保证初始位置、初始位置处的速度、初始位置处的加速度都一样,也保证初始位置...转载 2019-06-02 10:51:07 · 2487 阅读 · 2 评论 -
将线性回归模型处理成核函数版本
1.训练数据(X,y)(X,y)(X,y),其中X是一个N∗dN*dN∗d的矩阵,表示训练数据有ddd个特征,一共有NNN个训练数据点,yyy是一个长度为NNN的向量。X(i):X^{(i)}:X(i): \quad表示第iii个数据点(X的第i行X的第i行X的第i行)Xj:X_j:Xj: \quad表示X的第j列X的第j列X的第j列Xj(i):X_{j}^{(i)}:Xj(i):...原创 2019-05-29 15:49:01 · 1380 阅读 · 0 评论 -
寻找分类决策平面
如果我们有m个样本,每个样本对应于n维特征和一个二元类别输出,如下: (x1(0),x2(0),...xn(0),y0),(x1(1),x2(1),...xn(1),y1),...(x1(m),x2(m),...xn(m),ym)(x_1^{(0)},x_2^{(0)},...x_n^{(0)},y_0),(x_1^{(1)},x_2^{(1)},...x_n^{(1)},y_1),...(x_...原创 2019-06-02 21:46:03 · 1064 阅读 · 0 评论 -
理解L1正则化和L2正则化
曲线1,不能很好地拟合数据,这是高偏差(high bias)的情况,我们称为“欠拟合”(underfitting);曲线3,似乎完美地拟合了我们地数据,方差较高(high variance),数据过度拟合(overfitting);在两者之间,可能还有一些像曲线2这样的,复杂程度适中,数据拟合适度的分类器,这个数据拟合看起来更加合理,我们称之为“适度拟合”(just right).引入正则...原创 2019-06-14 16:41:25 · 589 阅读 · 0 评论 -
梯度下降法
0.在一元函数y=f(x)y=f(x)y=f(x)中,导数就是函数的变化率。dydx\frac{dy}{dx}dxdy二元函数z=f(x,y)z=f(x,y)z=f(x,y),一个zzz对应一个xxx和一个yyy,那就有两个导数了,一个是zzz对xxx的导数,一个是zzz对yyy的导数,称之为偏导。[∂z∂x∂z∂y]\begin{bmatrix}{\frac{\partial z}{...原创 2019-06-19 16:10:51 · 391 阅读 · 0 评论 -
从机器学习谈起
浅显易懂的一篇文章,将机器学习娓娓道来。原文:https://www.cnblogs.com/subconscious/p/4107357.html原创 2019-06-26 21:44:03 · 189 阅读 · 0 评论 -
感知机(Perceptron algorithm) Python代码详解
1.import numpy as npimport matplotlib.pyplot as pltfrom sklearn.datasets import make_blobsfrom sklearn.model_selection import train_test_splitnp.random.seed(123)% matplotlib inline2. DataSet...原创 2019-06-18 11:13:25 · 3331 阅读 · 0 评论 -
数据预处理
数据清理异常数据处理异常数据也称离群点,指采集的数据中,个别值的数据明显偏离其余的观测值。例如,测量小学五年级学生的身高数据,其中一部分数据如下:(1.35,1.40,1.42,1.38,1.43,1.40)(1.35,1.40,1.42,1.38,1.43,1.40)(1.35,1.40,1.42,1.38,1.43,1.40)上面这组数据符合小学五年级学生的身高。但是,如果数据中存...原创 2019-06-17 09:34:40 · 667 阅读 · 0 评论 -
分类和聚类有什么区别?
简单地说,分类(Categorization or Classification)就是按照某种标准给对象贴标签(label),再根据标签来区分归类。聚类是指事先没有“标签”而通过某种成团分析找出事物之间存在聚集性原因的过程。区别是,分类是事先定义好类别 ,类别数不变 。分类器需要由人工标注的分类训练语料训练得到,属于有指导学习范畴。聚类则没有事先预定的类别,类别数不确定。 聚类不需要人工标注...原创 2019-06-04 22:05:07 · 6663 阅读 · 0 评论 -
自己动手用python写梯度下降
本来还想自己系统地整理一下梯度下降法,看到下面这篇文章写得这么清楚,决定还是把时间用在别的地方吧,写得真的特别详细!http://sofasofa.io/tutorials/python_gradient_descent/...原创 2019-06-19 20:46:30 · 371 阅读 · 0 评论