机器学习
文章平均质量分 88
wangpei1949
仰望星空,脚踏实地。以梦为马,不负韶华!
展开
-
jieba 结巴分词 常用说明
安装 全自动:easy_install jieba 或者 pip install jieba 或者pip3 install jieba 手 动:jieba 目录放置于当前目录或者 site-packages 目录 半自动:下载http://pypi.python.org/pypi/jieba/、解压、运行python setup.py install 算法原创 2017-02-26 14:23:46 · 32502 阅读 · 1 评论 -
Spark MLlib特征处理:StringToIndex 字符串索引---原理及实战
原理 1)String字符串出现次数降序排序;次数相同,自然顺序。 2)按降序顺序转换成DoubleIndex,默认从0.0开始。代码实战import org.apache.spark.ml.feature.StringIndexerimport org.apache.spark.sql.{DataFrame, SQLContext}import org.apa原创 2016-11-12 13:32:08 · 2710 阅读 · 1 评论 -
Spark MLlib特征处理:Binarizer 二值化---原理及实战
Spark MLlib特征处理:Binarizer 二值化Spark MLlib中Binarizer二值化的实现原理 连续特征根据阈值二值化,大于阈值的为1.0,小于等于阈值的为0.0定义列表Markdown Extra 定义列表语法:项目1项目2定义 A定义 B项目3定义 C定义 D 定义D内容代码块代码块语法遵循标准mar原创 2016-11-12 11:19:48 · 2767 阅读 · 1 评论 -
Machine Learning --5种距离度量方法
1 前言在数据挖掘中,我们经常需要计算样本之间的相似度(Similarity ),我们通常的做法是计算样本之间的距离,本文对距离计算方法做以下总结。2 距离计算方法A 欧式距离EuclideanDistance欧式距离:两点之间的直线距离。(1)二维平面上两点a(x1,y1),b(x2,y2)之间的欧式距离公式:(2) n维空间上两点a(x1,x2……..x原创 2016-10-25 20:32:56 · 14457 阅读 · 1 评论 -
机器学习之sklearn特征工程
特征工程1 前言在机器学习界,有这么一种说法:数据和特征决定了机器学习的上限,而算法和模型只是逼近这个上限。所谓特征工程,是指使用专业的知识处理数据,使得特征能在算法上发挥更好的作用。特征工程关键是贴近业务找出高效的特征。特征工程包括特征使用方案、特征获取方案、特征处理、特征监控,框架如下图:特征处理是特征工程中的核心部分, Scikit-Learn是python的机器原创 2016-10-23 21:05:59 · 5087 阅读 · 2 评论 -
Spark MLlib特征处理:MinMax最大最小值区间缩放---原理及实战
原理 MLlib中特征值最大最小区间缩放: 参数说明: E_{max}:特征实际最大值 E_{min}:特征实际最小值 eie_i:特征值 max:MLlib默认最大值1.0 min:MLlib默认最小值0.0 1)当 Emax=EminE_{max} = E_{min} Rescaled(ei)=原创 2016-11-13 11:49:58 · 4596 阅读 · 0 评论 -
Naive Bayes 朴素贝叶斯算法
基本介绍 朴素贝叶斯分类是基于贝叶斯定理和特征独立性假设的分类算法。 数学基础 条件概率 事件B发生的条件下A发生的概率。 P(A∣B)=P(AB)P(B)P\left ( A\mid B \right )=\frac{P\left ( AB \right )}{P\left ( B \rig原创 2017-03-11 22:41:09 · 1765 阅读 · 0 评论 -
Decision Tree决策树
决策树简介 决策树是一种树形结构,由结点和有向边组成。结点有三种类型:根节点、内部结点、叶结点。内部结点表示一个特征或属性,叶结 点表示一个类。 决策树算法是一种有监督的学习。在构建决策树的过程中采用的是自顶向下递归的方式构建,每一次递归,都会去选取在当前状态下 最优的特征来划分数据集。 根据选取特原创 2017-03-11 17:01:09 · 1938 阅读 · 0 评论 -
Linear Regression 线性回归算法
基本介绍 线性回归一般用来解决连续值变量预测问题。是有监督学习。叫线性回归,是因为,我们假定自变量和因变量之间是线性相关关系。 线性回归 基本形式: f(x)=w0x0+w1x1+w2x2+...+wnxnf\left (\mathbf{x} \right )=w_{0}x_{0}+w_{1}x_{1}+w_{2}x_{2}+...+w_{n}x_原创 2017-03-12 16:47:11 · 6817 阅读 · 0 评论 -
Spark MLlib特征处理:OneHotEncoder OneHot编码 ---原理及实战
原理 1)String字符串转换成索引IndexDouble 2)索引转换成SparseVector 总结:OneHotEncoder = String => IndexDouble => SparseVector代码实战import org.apache.spark.ml.feature.{OneHotEncoder, StringIndexer}im原创 2016-11-12 14:06:15 · 14374 阅读 · 2 评论 -
Spark MLlib特征处理:TF-IDF 词频-逆文频---原理及实战
原理 tfidf可以将一篇文档转换成一个向量,向量中的每一个值由对应词 的tf值乘以idf值来表示。 tf原理: tf: term frequency,词频。在spark mllib中hashingTF的实现原理如下: 1)数据集(假设为一个文件)中的每一行代表一篇文章 2)对数据集中所有的词给一个hash值,相同词hash值原创 2016-11-12 17:46:37 · 1980 阅读 · 1 评论 -
jieba分词支持关键词带空格和特殊字符
jieba分词支持关键词带空格和特殊字符 在默认情况下,当关键词中带有空格或特殊字符,如World Economic Forum,用jieba分词,会将该词分成三个词:World,Economic,Forum。 #默认jieba:import jiebajieba.load_userdict("dict/userDict")str1="People's Republic原创 2017-02-25 12:22:47 · 13623 阅读 · 10 评论 -
KNN K最近邻算法
K Nearest Neighbor,KNN,K最近邻算法。 算法原理: (1)计算未知类别数据点与已知类别数据点之间的距离,并按降序排序。 (2)选取与未知类别数据点距离最小的k个点。 (3)以k个点中出现频率最高的类别作为未知类别数据点的类别。 注意:k一般选择奇数,因为最后要进行少原创 2017-03-11 14:02:05 · 885 阅读 · 0 评论 -
Spark MLlib聚类clustering:KMeans K均值 ---原理及实战
原理 KMeans,即K均值。K:K个Cluster,Means:均值,每个Cluster以均值为中心点。 KMeans train方法的重要参数: data: RDD[Vector] 输入数据类型 k: Int cluster数目 maxIterations: Int 最大迭代次数原创 2016-11-26 19:29:03 · 2822 阅读 · 0 评论 -
Spark MLlib特征处理:PCA 主成分分析 ---原理及实战
PCA(Principal Component Analysis)即主成分分析。正如其名,PCA可以找出特征中最主要的特征,把原来的n个特征用k(k < n)个特征代 替,去除噪音和冗余。PCA是特征提取、数据降维的常用方法。 MLlib中PCA的实现思路: 1)原始数据3行4列经过转换得到矩阵A3∗4A_{3*4} 2)得到矩阵A3∗4A_{3*4}的协方差原创 2016-11-23 20:55:40 · 8316 阅读 · 1 评论 -
Spark MLlib特征处理:SVD 奇异值分解 ---原理及实战
原理 工业应用上的奇异值分解是近似的奇异值分解,而严格数学意义上的奇异值分解并非这样定义。 严格数学意义上的奇异值分解: Mm×n=Xm×m∗Σm×n∗V′n×nM_{m\times n} = X_{m\times m}* \Sigma _{m\times n}*V^{'}_{n\times n} 工业应用上的奇异值分解SVD就是把一个矩阵A做如下转换: Am原创 2016-11-16 20:00:14 · 5533 阅读 · 0 评论 -
Spark MLlib特征处理:均值、方差、协方差 ---原理及实战
原理 向量a→=(x1,x2,x3...xn)\overrightarrow{a}= \left ( x_{1},x_{2},x_{3}...x_{n} \right ),aka_{k}是a→\overrightarrow{a}中的任意元素,k=1,2,3⋯nk = 1,2,3\cdots n 例如:a→\overrightarrow{a}代表一个维度(特征)DimA,aka_{k}代表特征原创 2016-11-16 19:52:56 · 10934 阅读 · 2 评论 -
Spark MLlib特征处理:Normalizer 正则化---原理及实战
原理 向量a→=(x1,x2,x3...xn)\overrightarrow{a}= \left ( x_{1},x_{2},x_{3}...x_{n} \right ),aka_{k}是a→\overrightarrow{a}中的任意元素,k=1,2,3⋯nk = 1,2,3\cdots n 例如:a→\overrightarrow{a}代表一个样本,aka_{k}代表特征。原创 2016-11-13 17:14:17 · 3695 阅读 · 0 评论 -
Logistic Regression 逻辑回归算法
基本介绍 逻辑回归一般用来解决分类问题。是有监督学习。Logistic Regression分类器实际上是一个0/1二分类器。线性分类器,可简单的理解为线性回归加上一个Sigmoid函数,即把线性回归输出作为Sigmoid函数的输入。Sigmoid函数的作用是:将线性回归的输出,如从负无穷到正无穷,压缩到(0~1)之间。有些分类问题并不是线性可分的,但我们可以通过特征映射将非原创 2017-03-12 16:56:09 · 1904 阅读 · 0 评论