机器学习
余音丶未散
J2EE,机器学习,Hadoop,Spark,时间序列分析
展开
-
canopy算法优化kmean聚类及在mahout上实现
a,x两个矩阵 [,1] [,2] [1,] 1 1 [2,] 0 1 [3,] 0 0 [4,] 5 6 [5,] 6 5 [6,] 5 5 [7,] 10 2 [8,] 10 2 [9,] 11 3for(j in 1:nrow(a)原创 2016-03-29 17:58:22 · 1005 阅读 · 0 评论 -
对机器学习与数据竞赛的一些总结
应导师要求,给新来的师弟师妹讲讲机器学习的一些东西,方便有个大概的结构,本人不才,略写点自己的看法和总结,有错误之处请多多指教。回顾比赛最近半年参加的比赛成绩:1. 阿里音乐流行趋势预测大赛 2016.5.17-7.15 Top 15/54762. 最后一公里极速配送 2016.7.4-9.9 Top 31/14603. 阿里云安全算法挑战赛 2016.8.22-10原创 2016-12-23 21:47:15 · 6641 阅读 · 2 评论 -
GBDT 原理与使用
基本思想GBDT–Gradient Boosting (Regression) Decistion Tree GBDT(Gradient Boosting Decision Tree) 又叫 MART(Multiple Additive Regression Tree),是一种用于回归的机器学习算法,该算法由多棵回归决策树组成,所有树的结论累加起来做最终答案。当把目标函数做变换后,该算法亦可用于分原创 2016-12-19 17:11:39 · 7726 阅读 · 1 评论 -
gcForest算法理解
介绍gcForest(multi-Grained Cascade forest 多粒度级联森林)是周志华最新提出的新的决策树集成方法。这种方法生成一个深度树集成方法(deep forest ensemble method),使用级联结构让gcForest学习。 gcForest模型把训练分成两个阶段:Multi-Grained Scanning和Cascade Forest。Multi-Grain原创 2017-03-10 16:55:03 · 8067 阅读 · 6 评论 -
Word2vec原理与应用
用一个普通的向量表示一个词,将所有这些向量放在一起形成一个词向量空间,而每一向量则为该空间中的一个点,在这个空间上的词向量之间的距离度量也可以表示对应的两个词之间的“距离”。所谓两个词之间的“距离”,就是这两个词之间的语法,语义之间的相似性。 只介绍基于Hierarchical Softmax的CBOW模型,其他模型参考文章的参考链接。原理语言模型的目标函数一般为对数似然函数 C为所有语料 针对原创 2017-03-22 10:59:10 · 2444 阅读 · 0 评论 -
机器学习面试准备(持续更新)
机器学习问题汇总http://blog.csdn.net/q383700092/article/details/58605715线性与非线性机器学习里面模型的线性与非线性说的是模型结果与参数之间的关系,模型结果与参数是非线性关系即为非线性模型。非线性模型又存在变量变换成线性问题和变换不成线性问题(本质非线性)两种。 参考《概率论与数理统计》浙大第四版p257LR(Logistic Regres原创 2017-02-20 15:47:33 · 4204 阅读 · 0 评论 -
结合Scikit-learn介绍几种常用的特征选择方法
参考http://www.cnblogs.com/hhh5460/p/5186226.html 未完,占坑后续填写 目标构成一套成型的自动特征选择的多方案集成输出原创 2016-12-26 22:20:13 · 7455 阅读 · 1 评论 -
聚类与距离学习笔记
距离距离度量的基本性质非负性:d(x1,x2)>0 同一性:d(x1,x2)=0 当且仅当 x1=x2 对称性:d(x1,x2)=d(x2,x1) 直递性:d(x1,x3)<=d(x1,x2)+d(x2,x3)闵可夫斯基距离适用于有序属性 (eg:1,2),与数据的分布无关,具有一定的局限性,x过大y过小会放大x影响,需要做标准化,适用于假设数据各个维度互不相关。 闵氏距离的缺点主要有两个:原创 2017-02-07 12:23:50 · 3374 阅读 · 0 评论 -
XGBoost原理与应用
基本构成boosted tree作为有监督学习算法有几个重要部分:模型、参数、目标函数、优化算法 模型 模型指给定输入x如何去预测输出y 参数 参数指我们需要学习的东西,在线性模型中,参数指我们的线性系数w 目标函数 目标函数:损失 + 正则,教我们如何去寻找一个比较好的参数 一般的目标函数包含下面两项: Bias-variance tradeoff,Bias可以理解为假设我们有原创 2017-03-09 10:17:47 · 12930 阅读 · 1 评论 -
sklearn-数据预处理-特征变换
标准化z-score标准化经过去均值来对某个特征进行中心化,再通过除以非常量特征(non-constant features)的标准差进行缩放。class preprocessing.StandardScaler(copy=True, with_mean=True, with_std=True):标准正态分布化的类属性:scale_:ndarray,缩放比例mean_:...原创 2017-01-16 10:42:49 · 5491 阅读 · 0 评论 -
Xgboost筛选特征重要性
基本思想根据结构分数的增益情况计算出来选择哪个特征的哪个分割点,某个特征的重要性,就是它在所有树中出现的次数之和。使用代码import pandas as pdimport xgboost as xgbimport operatorfrom matplotlib import pylab as pltdef ceate_feature_map(features): ...原创 2016-12-16 21:00:38 · 37507 阅读 · 4 评论 -
机器学习面试问题汇总
伪代码实现:LR、梯度下降、最小二乘、KNN、Kmeans; LR,SVM,XGBOOST推公式(手推) LR,SVM,RF,KNN,EM,Adaboost,PageRank,GBDT,Xgboost,HMM,DNN,推荐算法,聚类算法,等等机器学习领域的算法基本知识:1)监督与非监督区别;是否有监督(supervised),就看输入数据是否有标签(label)。输入数据有标签,则为有监督学习,原创 2017-02-28 17:08:18 · 13566 阅读 · 1 评论 -
集成学习-模型融合学习笔记
集成学习概念个人理解是按照不同的思路来组合基础模型,在保证准确度的同时也提升了模型防止过拟合的能力。 三种常见的集成学习框架:bagging,boosting和stackingboosting算法Adaboosting(串行-减少偏差)1,基分类器权重均分分布 (每个训练数据权重一样) 最终分类器G(x)=w1G(x1)+w2G(x2)+… 2,反复学习基本分类器 2.1由当前权值学习Gm原创 2016-12-10 11:33:48 · 12530 阅读 · 0 评论 -
xgboost使用调参
github:https://github.com/dmlc/xgboost 论文参考:http://www.kaggle.com/blobs/download/forum-message-attachment-files/4087/xgboost-paper.pdf基本思路及优点http://blog.csdn.net/q383700092/article/details/6095...原创 2016-12-20 15:14:41 · 27197 阅读 · 2 评论 -
自然语言处理学习笔记之中文文本分类
1. 中文处理的编码问题中文的编码不是utf8,而是unicode Python 会自动的先将解码,然后再编码 Python2.7默认编码是 ANSCII Python3 默认编码是 Unicode Python2.7解决中文乱码: 1). 文件开头#encoding:utf-82). python2.7使用sys.defaultencoding参考 默认sys.de...原创 2018-01-25 11:32:48 · 8984 阅读 · 0 评论 -
sklearn数据切分及交叉验证笔记
数据切分方法1 随机切分from sklearn.model_selection import train_test_splitiris = datasets.load_iris()X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target, test_size=0.4, random_sta原创 2018-01-25 17:33:07 · 2919 阅读 · 0 评论 -
数据处理与模型选择的一些注释
数据处理与模型选择的一些注释数据预处理采样与过滤随机采样以随机方式生成采样数据,每次采样是各自独立的加权采样以加权方式生成采样数据;权重列必须为double或int类型,按照该列的value大小采样;如col的值是1.2和1.0;则value=1.2所属样本的被采样的概率就大一些。过滤与映射对数据按照过滤表达式进行筛选。”过滤条件”中填写where语句后面的sql脚本即可;”映射规则”可以renam原创 2016-12-26 22:18:28 · 3553 阅读 · 0 评论 -
R-k折交叉验证
training <-iris#抽样方法#ind<-sample(2,nrow(training),replace=TRUE,prob=c(0.7,0.3)) #对数据分成两部分,70%训练数据,30%检测数据nrow(training)行数#traindata<- training [ind==1,] #训练集#testdata<- training [ind==2,] #测试集原创 2016-08-10 18:08:09 · 22716 阅读 · 8 评论 -
基于R语言的模型组合
组合预测模型---基于R语言的模型组合 算术平均法、 最优权数法、 方差倒数法模型中各参数的 t 值均显著 ,且通过 F 检验和拟合忧度检验c=c(1:20)b=c-0.1a=c-0.3方差倒数法e1=sum((c-b)^2)e2=sum((c-a)^2)w1=(1/e1)/(1/e1+1/e2)w2=(1/e2)/(1/e1+1/e2)原创 2016-06-01 20:44:58 · 3128 阅读 · 1 评论 -
R分类
分类传统意义下的分类:生物物种预测:天气预报决策:yes or no分类的传统模型常见分类模型与算法 线性判别法 距离判别法 贝叶斯分类器 决策树 支持向量机(SVM) 神经网络线性判别法(Fisher)G=c(1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2)x1=c(-1.9,-6.9,5.2,5.0原创 2016-05-31 16:17:37 · 954 阅读 · 0 评论 -
R多元线性回归
多元线性回归 统计建模与R软件-薛毅书p325选择自变量建立多元线性模型> data(swiss)> s=lm(Fertility~ .,data=swiss) #除因变量Fertility其他所有当自变量> print(s)模型汇总信息> summary(s) #查看相关性系数逐步回归:向前引入法:从一元回归开始,逐步增加变量,使指标值达到最优为原创 2016-05-31 15:56:18 · 1305 阅读 · 0 评论 -
机器学习与R之KNN
k近邻法与kd树(与本文基本无关)为了提高k近邻搜索的效率,可以考虑使用特殊的结构存储训练数据,以减少计算距离的次数。具体方法有很多,这里介绍kd树方法参考http://blog.csdn.net/qll125596718/article/details/8426458R语言KNN实现K常用方法 K=训练数据数量的平方根字符变量利用哑变量编码,eg:0/1rm(li原创 2016-06-25 17:36:16 · 1506 阅读 · 0 评论 -
Python机器学习实战笔记之KNN算法
k-近邻算法测量不同特征值之间的距离方法进行分类优 点 :精度高、对异常值不敏感、无数据输入假定。缺点:计算复杂度高、空间复杂度高。适用数据范围:数值型和标称型。(常用欧氏距离)1收集数据2准备数据3分析数据4训练算法5测试算法6使用算法Python中识别中文文件开头添加#coding:utf-8分类代码#coding:utf-8fro原创 2016-06-25 11:33:33 · 1306 阅读 · 0 评论 -
机器学习与R之朴素贝叶斯分类器
朴素贝叶斯1联合概率分布p(x,y)=p(y)P(x|y) 或者p(A交B)=p(A)xp(B) p(A交B)不容易求,假设条件独立拆分成两个事件的乘积2基本假设条件独立性3利用贝叶斯定理 p(y|x)=P(x,y)/p(x)=p(y)P(x|y)/sum(y-i)[p(y)P(x|y)]y=max p(y)P(x|y)贝叶斯决策理论要求计算两个概率p1(x,y),p2原创 2016-06-28 10:34:18 · 4043 阅读 · 4 评论 -
Python机器学习与实战笔记之朴素贝叶斯分类
##1联合概率分布p(x,y)=p(y)P(x|y) 或者p(A交B)=p(A)xp(B) p(A交B)不容易求,假设条件独立拆分成两个事件的乘积2基本假设条件独立性3利用贝叶斯定理 p(y|x)=P(x,y)/p(x)=p(y)P(x|y)/sum(y-i)[p(y)P(x|y)]y=max p(y)P(x|y)贝叶斯决策理论要求计算两个概率p1(x,y),p2(x, y原创 2016-06-28 09:15:21 · 2356 阅读 · 0 评论 -
Python机器学习与实战笔记之逻辑斯蒂回归Logistic Regression, LR
理论参考-特别是梯度下降权值更新向量化的过程http://www.cnblogs.com/nsnow/p/4540700.htmlhttp://blog.csdn.net/zouxy09/article/details/203196731定义特征与标签矩阵2定义sigmoid函数3根据推出的权值更新公式进行迭代-最后算出权值可选的训练方式有梯度上升,随机梯度上升,改进的随机原创 2016-07-23 10:16:14 · 1092 阅读 · 0 评论 -
机器学习与R笔记之线性回归
普通最小二乘法OLSy=ax+b f(e)=sum((y-y')^2) b=cor(x,y)/var(x) #证明省略 协方差/方差a=mean(y)-b*mean(x)person相关系数R=cor(x,y)多元线性回归Y=XB+EYBE为向量X为带偏执矩阵--最小二次法求系数B=solve((t(x)%*%x))%*%t(x)%*%y估计B的函原创 2016-07-23 18:00:46 · 1317 阅读 · 1 评论 -
机器学习与R之回归树CART与模型树M5
根据SDR标准偏差减少-来选择特征sdr_a 回归树CART-叶子节点利用的是均值rpart(formula, data, weights, subset, na.action = na.rpart, method, model = FALSE, x = FALSE, y = TRUE, parms, control, cost, ...)control算法细节原创 2016-07-23 18:52:04 · 8851 阅读 · 0 评论 -
机器学习与R之决策树C50算法
决策树经验熵是针对所有样本的分类结果而言经验条件熵是针对每个特征里每个特征样本分类结果之特征样本比例和基尼不纯度简单地说就是从一个数据集中随机选取子项,度量其被错误分类到其他分组里的概率决策树算法使用轴平行分割来表现具体一定的局限性C5.0算法--可以处理数值型和缺失 只使用最重要的特征--使用的熵度量-可以自动修剪枝划分数据集set.seed(123) #原创 2016-07-02 11:39:10 · 10829 阅读 · 1 评论 -
机器学习实战之决策树ID3算法
决策树ID3信息增益-熵C4.5信息增益率CART基尼系数+后剪枝ID3算法1先计算经验熵--(熵越高,则混合的数据也越多,即同一特征不同情况越多)首先计算数据集中实例的总数创建一个数据字典-每个键值都记录了当前类别出现的次数-出现的类别key-次数value使用所有类标签的发生频率计算类别出现的概率-遍历key 次数/总数 累计 sum-=sum-log2(p)2切分原创 2016-07-02 11:41:18 · 737 阅读 · 0 评论 -
机器学习与R之支持向量机svm-svr(下)
e1071包的svm()函数library(lattice) xyplot(Petal.Length ~ Petal.Width, data = iris, groups = Species, auto.key=list(corner=c(1,0))) #查看散点图第一种是根据既定公式建立模型svm(formula, data= NULL, subset, na.action原创 2016-07-28 18:04:32 · 8502 阅读 · 0 评论 -
R聚类分析2
R聚类2凝聚层次聚类(Agglomerative hierarchical method)和K均值聚类(K-Means)层次聚类hclustdata=iris[,-5]dist.e=dist(data,method='euclidean')heatmap(as.matrix(dist.e),labRow = F, labCol = F)#计算类间距离:最短距离法、最长距离法、类平均法原创 2016-08-06 17:24:24 · 1549 阅读 · 0 评论 -
R语言LR逻辑回归实例
二分类实例去掉setosa类index <- which(iris$Species == 'setosa')iris <- iris[- index,]training <-iris #抽样方法 ind<-sample(2,nrow(training),replace=TRUE,prob=c(0.7,0.3)) #对数据分成两部分,70%训练数据,30%检测数据nrow(trai原创 2016-08-29 10:44:07 · 6991 阅读 · 0 评论