![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据挖掘
文章平均质量分 55
健雄
擅长spark、数据挖掘、人脸识别、opencv
精通c/c++,scala语言,python
展开
-
白手起家学习数据科学 ——Machine Learning之“评估模型篇”(八)
Correctness自然语言处理(NLP),机器学习(ML),信息检索(IR)等领域,评估(Evaluation)是一个必要的工作,而其评价指标往往有如下几点:准确率(Accuracy),精确率(Precision),召回率(Recall)和F1-Measure。True positive: “是垃圾邮件,预测也是垃圾邮件”。False positive(Error):”不是垃圾邮件,预测却是翻译 2015-12-03 14:46:04 · 465 阅读 · 0 评论 -
白手起家学习数据科学 ——梯度下降法之“背后的思想”(六)
当我们做数据科学时,我们会频繁尝试找到在某种情况下最优的模型,通常"最好"的意思是"最小化模型误差"或者"最大化数据的可能性"。换句话说,它表示某些最优化问题的解决方案。翻译 2015-12-02 10:15:36 · 592 阅读 · 0 评论 -
白手起家学习数据科学 ——处理数据之“数据探索篇”(七)
处理数据既是艺术也是科学,我们总是讨论科学部分,但是在这一章节中我们会讨论艺术部分。探索数据(Exploring Your Data)在你发现问题后,你会尝试回答并且处理数据,你可能被诱惑并且立刻开始建立模型,但是请抵抗这种欲望,你首先第一步要探索你的数据。探索一维数据(Exploring One-Dimensional Data)最简单的例子就是你拥有一维数据集,它有数字组成。例如,每个用户在你的翻译 2015-12-02 17:11:24 · 470 阅读 · 0 评论 -
白手起家学习数据科学 ——处理数据之“操纵数据篇”(七)
操纵数据(Manipulating Data)数据科学家最重要的技能就是操纵数据。相比于指定的技术,操纵数据是更加通用的方法。我们会解决少量的例子给你一些真实的感受。翻译 2015-12-03 11:20:30 · 525 阅读 · 0 评论 -
白手起家学习数据科学 ——处理数据之“尺度变换篇”(七)
尺度变化(Rescaling)许多技术对数据尺度很敏感。例如,设想一下,你有包含数百数据科学家身高(height)、体重(weight)的数据集,你正在尝试对其进行聚类。直观上,我们想要聚集区表示彼此靠近的点集,这个意思是我们需要点之间距离的概念。我们已经掌握了欧式距离(Euclidean distance)函数,所以一个自然的方法可以把(height, weight)对看成二维空间了的点集。考虑下翻译 2015-12-03 14:12:28 · 1404 阅读 · 0 评论 -
白手起家学习数据科学 ——处理数据之“数据清洗与再处理篇”(七)
数据清理与再处理真实世界的数据是脏的,在你使用数据之前,你不得不对数据做一些工作。例如,在”获取数据”章节中,在我们使用它们的时候,我们需要把字符串转换成floats或者ints:closing_price = float(row[2])解析数据可能减少错误,通过创建一个包裹csv.reader的函数来做这个。我们会给出一个解析器的清单,每个解析器说明怎样解析列中的一个,我们会使用None表示”对这翻译 2015-12-03 09:58:02 · 660 阅读 · 0 评论 -
白手起家学习数据科学 ——Naive Bayes之“背后的思想”(十)
如果人们不能互相沟通,那么社会网络就不是一个好的网络。基于此,DataSciencester网站有个大众的特点,允许用户发送消息给其他的用户。大多数用户是有责任的公民,他们只发送受欢迎的“最近好么”(how is it going?)消息,其他一些用户发送极端的垃圾邮件,关于致富方案、无需开处方的药物等,你的用户开始抱怨,所以Messaging部门的副总要求你使用数据科学找到一个方法过滤这些垃圾邮件。翻译 2015-12-22 14:34:12 · 772 阅读 · 0 评论 -
白手起家学习数据科学 ——Statistics之“中心趋向和离散度篇”(三)
统计能够帮助我们更好的理解数据,它是一个丰富多彩且非常庞大的领域,更加适合单独成书而不是作为本系列的一个章节,我们不会深入讨论,代替的是我会刺激你对统计学的兴趣,足够让你更加深入的去了解它。翻译 2015-11-26 10:53:46 · 954 阅读 · 0 评论 -
白手起家学习数据科学 ——Naive Bayes之“测试模型篇”(十)
这有一个好的数据集 [ SpamAssassin public corpus ]。我们使用前缀为20021010的文件(在Windows中你可能需要像7-Zip的软件用于解压它们)。在抽取数据之后(例如,放到C:\spam中),你得到3个文件夹:spam,easy_ham和hard_ham,每个文件夹包含许多邮件,每个邮件包含在单独的文件中,为了让事情变得变得简单些,我们只考虑每个邮件的标题行。翻译 2015-12-25 11:13:23 · 692 阅读 · 0 评论 -
一步一步教你反向传播的例子
背景反向传播(Backpropagation)是训练神经网络最通用的方法之一,网上有许多文章尝试解释反向传播是如何工作的,但是很少有包括真实数字的例子,这篇博文尝试通过离散的数据解释它是怎样工作的。Python实现的反向传播你能使用Python来实现反向传播,我曾经在 this Github repo上实现了反向传播算法。反向传播的可视化显示神经网络学习时相互作用的可视化,检查我的Neural N翻译 2016-01-27 11:44:25 · 17909 阅读 · 6 评论 -
什么是自然语言处理
前几年曾经马少平老师的引荐,为某科普图书写过一篇短文介绍自然语言处理,介绍了NLP的基本概念、任务和挑战,可做入门参考。一、什么是自然语言处理简单地说,自然语言处理(Natural Language Processing,简称NLP)就是用计算机来处理、理解以及运用人类语言(如中文、英文等),它属于人工智能的一个分支,是计算机科学与语言学的交叉学科,又常被称为计算语言学。由于自然语言是转载 2016-02-02 09:56:47 · 5674 阅读 · 0 评论 -
最大似然估计(Maximum likelihood estimation)
最大似然估计提供了一种给定观察数据来评估模型参数的方法,即:“模型已定,参数未知”。简单而言,假设我们要统计全国人口的身高,首先假设这个身高服从服从正态分布,但是该分布的均值与方差未知。我们没有人力与物力去统计全国每个人的身高,但是可以通过采样,获取部分人的身高,然后通过最大似然估计来获取上述假设中的正态分布的均值与方差。最大似然估计中采样需满足一个很重要的假设,就是所有的采样都是独立同分布的转载 2016-02-16 14:02:44 · 569 阅读 · 0 评论 -
白手起家学习数据科学 ——梯度下降法之“优化步长和随机梯度下降篇”(六)
虽然针对梯度移动的基本原理是清楚的,但是移动多少是不清楚的。的确,选择一个合适的步长是一门艺术。流行的选择包括:* 使用固定的步长* 随时间逐步缩小步长* 在每次迭代,选择最小化目标函数的步长翻译 2015-12-02 11:45:18 · 1169 阅读 · 0 评论 -
白手起家学习数据科学 ——Probability之“Bayes's 原理和随机变量篇”(四)
Bayes’s Theorem数据科学家最好的朋友之一是Bayes’s(贝叶斯)原理,它是”倒转”条件概率(conditional probabilities)的应用。现在我们要知道在事件F发生的条件下事件E的概率,但是现在我们只有事件E发生的条件下事件F发生的概率,使用2次条件概率可得:P(E|F) = P(E,F)/P(F) = P(F|E)P(E)/P(F) 事件F能分成互相排斥翻译 2015-12-01 09:38:47 · 467 阅读 · 0 评论 -
白手起家学习数据科学 ——线性代数之“Matrices篇”(二)
Matrices(矩阵)matrix是一个二维数字的集合,在Python里我们可以在一个list中嵌套若干list来表示一个matrix。在内部中的这些list必须具有相同的长度,而且每个list表示matrix的一行。如果A是一个matrix,那么 A[i][j]表示A中第i行第j列的一个元素,按着数据的惯例,我们通常把大写字母表示矩阵,例如:A = [[1, 2, 3], # A has 2 r翻译 2015-11-25 10:56:24 · 557 阅读 · 0 评论 -
白手起家学习数据科学 ——Machine Learning之“权衡Bias-Variance篇”(八)
在监督学习中权衡偏差-方差(bias–variance)对于防止过拟合是重要的问题,理想情况下,我们想要选取一个模型,这个模型即能精确的捕获到训练数据的规律性,同时也能推演到未知的数据。不幸的是,不可能同时满足这2个条件。具有高方差的学习模型可能很好的表示训练集,但是有过拟合的风险,因为训练数据可能有噪声或者不具有代表性。相反的,带有高偏差的模型产生简单的模型,不会有过拟合(overfit)现象,但翻译 2015-12-11 17:51:33 · 479 阅读 · 0 评论 -
白手起家学习数据科学 ——可视化数据(一)
第一部分为Python语言基础,我们在这里使用Python语言进行讲解,如果有没有接触过Python的同学,可以参考本书的第一部分,在这里不在赘述。数据科学家的工具包中基本部分就是数据可视化。虽然它是很容易创建,但是很难做好数据可视化。翻译 2015-11-23 11:27:31 · 1268 阅读 · 0 评论 -
白手起家学习数据科学 ——线性代数之“Vectors篇”(二)
线性代数是处理**向量空间**的数学分支,在这里我会详细讲解在本章节中使用到的线性代数知识,它会始终贯穿到章节中。翻译 2015-11-25 11:00:37 · 1447 阅读 · 0 评论 -
白手起家学习数据科学 ——线性回归之“简单线性回归篇”(十一)
在前面的章节中,我们使用相关系数函数测量2个变量之间线性相关的强度,对于大多数应用只是知道线性相关是不够的,我们想要理解这个关系的本质,我们会使用简单线性回归来加以理解。翻译 2015-12-28 10:18:59 · 895 阅读 · 0 评论 -
白手起家学习数据科学 ——k-Nearest Neighbors之“背后的思想”(九)
设想一下,你正在预测接下来总统选举"我将要选择谁",如果你不知道关于我的任何信息,一个合乎情理的方法是看我的邻居计划投谁,我们居住在西雅图,我的邻居一定按着计划投给Democratic候选人,这个暗示"Democratic候选人"对我也是个不错的猜想。设想你知道更多关于我的信息,而不只是地理信息,也许你知道我的年龄、收入、我有几个孩子等等,这些特性扩大了影响我的行为,观察跟我这些特性相似的邻居们做出的选择,来预测翻译 2015-12-14 10:23:00 · 405 阅读 · 0 评论 -
白手起家学习数据科学 ——k-Nearest Neighbors之“例子篇”(九)
例子:最喜欢的编程语言(Example: Favorite Languages)DataSciencester网站用户调查结果出来了,我们发现在许多大城市里人们所喜欢的编程语言如下:# each entry is ([longitude, latitude], favorite_language)cities = [([-122.3 , 47.53], "Python"), # Seattle翻译 2015-12-14 22:27:41 · 546 阅读 · 0 评论 -
白手起家学习数据科学 ——Statistics之“相关性和辛普森悖论篇”(三)
相关系数DataSciencester网站的副总发现一个现象:人们花费在这个网站的时间跟他们在这个网站上有多少朋友有联系,她要求你验证这个现象。在挖掘出整个流量数据后,我们抽出日常时间(daily_minutes),这个显示出每个用户每天花费在DataSciencester网站上的时间,你对daily_minutes数据进行排序,以便于其中的元素对应我们以前的num_fiends数据,我们翻译 2015-11-27 10:25:06 · 1055 阅读 · 0 评论 -
白手起家学习数据科学 ——k-Nearest Neighbors之“维度诅咒”(九)
维度诅咒(The Curse of Dimensionality)KNN在高维空间运行会出现”维度诅咒”的问题,那是因为在高维空间太广阔,高维空间的数据点不趋向接近另外的数据点。有一个办法可以证明这一点,随机产生很多对d维度的向量,然后计算每对的向量距离。产生随机数据点:def random_point(dim): return [random.random() for _ in range翻译 2015-12-15 10:22:54 · 2222 阅读 · 0 评论 -
机器学习工具
工具是机器学习的一个重要部分,选择合适的工具和选择最佳算法一样的重要。在这篇博文里,你会近距离观察机器学习工具,发现为什么它们是重要的以及你能选择的工具种类。翻译 2015-12-29 10:58:48 · 2357 阅读 · 0 评论 -
白手起家学习数据科学 ——Probability之“独立事件和条件概率篇”(四)
不懂*概率*(*probability*)是很难学好数据科学,这个章节中我们会学习*概率*,掌握实际应用,去掉很多学术上的东西。对应我们的目的,我们应该把*概率*看成定量不确定性事件,这个事件是从全部事件中选择出来的,而不是把*概率*看成均值或者抛骰子,全部事件包括各种可能的输出,这些输出的子集就是一个事件。例如,“骰子抛出1个点”或者"骰子抛出的是偶数"。翻译 2015-11-30 11:05:50 · 675 阅读 · 0 评论 -
最小二乘法(Least Squares Fitting)
least squares fitting proceeds by finding the sum of the squares of the vertical deviations R2R^2 of a set of n data points: The condition for R2R^2 to be a minimum is that for i=1, …, n. For a翻译 2016-04-29 15:39:39 · 2328 阅读 · 0 评论