之前转过一篇文章:2016年GitHub排名前20的Python机器学习开源项目(转),说明现在已经有了很多很好的机器学习的包,我们不必从底层开始实现,只要懂点算法.会看文档,一般人也能玩好机器学习. 随着生信领域的数据量越来越多,我们得到知识的途径必然会发生变化,慢慢地我们将不再使用固定呆板的模型,而是使用灵活的机器学习方法从海量数据中提取出知识. 现在我准备开一系列的机器学习算法原理及python包的实例的文章,开始全面的熟悉python和机器学习. 决策树--从原理到实现    机器学习…
scikit learn 模块 调参 pipeline+girdsearch 数据举例:文档分类数据集 fetch_20newsgroups #-*- coding: UTF-8 -*- import numpy as np from sklearn.pipeline import Pipeline from sklearn.linear_model import SGDClassifier from sklearn.grid_search import GridSearchCV from sk…
一.Scikit Learn中使用estimator三部曲 1. 构造estimator 2. 训练模型:fit 3. 利用模型进行预测:predict 二.模型评价 模型训练好后,度量模型拟合效果的常见准则有: 1.      均方误差(mean squared error,MSE): 2.      平均绝对误差(mean absolute error,MAE) 3.      R2 score:scikit learn线性回归模型的缺省评价准则,既考虑了预测值与真值之间的差异,也考虑了问题…
目录 5.3 使用LogisticRegressionCV进行正则化的 Logistic Regression 参数调优 一.Scikit Learn中有关logistics回归函数的介绍 1. 交叉验证 交叉验证用于评估模型性能和进行参数调优(模型选择).分类任务中交叉验证缺省是采用StratifiedKFold. sklearn.cross_validation.cross_val_score(estimator, X, y=None, scoring=None, cv=None, n_jo…
机器学习实战(Machine Learning in Action)学习笔记————03.决策树原理.源码解析及测试 关键字:决策树.python.源码解析.测试作者:米仓山下时间:2018-10-24机器学习实战(Machine Learning in Action,@author: Peter Harrington)源码下载地址:https://www.manning.com/books/machine-learning-in-actiongit@github.com:pbharrin/ma…
1. 决策树(Decision Tree)-决策树原理 2. 决策树(Decision Tree)-ID3.C4.5.CART比较 1. 前言 决策树是一种基本的分类和回归方法.决策树呈树形结构,在分类问题中,表示基于特征对实例进行分类的过程.它可以认为是if-then规则的集合,也可以认为是定义在特征空间和类空间上的条件概率分布.学习时,利用训练数据,根据损失函数最小化的原则建立决策树模型.预测时,对新的数据,利用决策树模型进行分类.决策树学习通常包括三个步骤:特征选择.决策树的生成和决策树的…
转自:http://my.oschina.net/u/175377/blog/84420#OSC_h2_23 Scikit Learn: 在python中机器学习 Warning 警告:有些没能理解的句子,我以自己的理解意译. 翻译自:Scikit Learn:Machine Learning in Python 作者: Fabian Pedregosa, Gael Varoquaux 先决条件 Numpy, Scipy IPython matplotlib scikit-learn 目录 载入…
Day3 机器学习监督学习——决策树原理 一.决策树的原理 1.机器学习中分类和预测算法的评估: 准确率 速度 强壮型:有数据缺失或错误时算法的运行 可规模性:数量级规模比较大 可解释性 2.决策树(decision tree) 决策树是一个类似于流程图的树结构:其中,每个内部结点表示在一个属性上的测试,每一个分支代表一个属性输出,而每个树叶节点代表类或类分布.树的最顶层是根节点. 3.熵(entropy)概念: 信息比较抽象,度量信息,香农提出了“信息熵”的概念.变量的不确定性越大,熵也就越大…
Scikit Learn Scikit-Learn简称sklearn,基于 Python 语言的,简单高效的数据挖掘和数据分析工具,建立在 NumPy,SciPy 和 matplotlib 上.…
如果一点基础没有最好先拿起一本教材开始学,<机器学习实战>还不错,P93,书上有python源码和练习数据,非常适合新手. k均值聚类 名词:簇:相似度算法 伪代码 创建K个点作为起始质心 当任意一个点的簇分配结果发生变化时: 对数据集中的每个点: 对每个质心: 计算质心到数据点之间的距离 将数据点分配到距离其最近的簇 对每一个簇,计算簇中所有点的均值并将均值作为质心 目前的例子里聚类的对象都是数值点,这个在计算均值时比较容易理解,如果换到对人进行聚类(非数值),那怎么计算均值呢? 二分k均值…
//功能:    根据一个URL地址将数据保存到指定路径下,支持断点续传//参数:    url            --需要访问的URL地址//         SavePath       --需要保存的路径//DownedSize 已经下载的大小// totalSize 文件总大小//返回值:  ture --成功 false --失败bool HttpGet::DownFile(const QUrl &url,const QString &SavePath,int DownedS…
从底层谈WebGIS 原理设计与实现(六):WebGIS中地图瓦片在Canvas上的拼接显示原理 作者:naaoveGI…    文章来源:naaoveGIS    点击数:1145    更新时间:2014-9-14 摘要:在之前的五个章节中,我们在第一章节里介绍了WebGIS的基本框架和技术,第二章节里介绍了什么是瓦片行列号以及计算它的原因,第三章节里介绍了如何通过地理范围计算出这个范围内瓦片的行列号,第四和第五章节里介绍了在得到瓦片行列号后如何获得离线和在线地图的URL,这个章节里,我们将…
从底层谈WebGIS 原理设计与实现(五):WebGIS中通过行列号来换算出多种瓦片的URL 之在线地图 作者:naaoveGI…    文章来源:naaoveGIS    点击数:2063    更新时间:2014-9-13 摘要:从底层谈WebGIS 原理设计与实现(五):WebGIS中通过行列号来换算出多种瓦片的URL 之在线地图.这篇文章里,我主要针对OGC标准中的WMS.WMTS以及ArcGIS的在线地图服务来进行解析. 1.前言 这篇文章里,我主要针对OGC标准中的WMS.WMTS以…
从底层谈WebGIS 原理设计与实现(四):WebGIS中通过行列号来换算出多种瓦片的URL 之离线地图 作者:naaoveGI…    文章来源:naaoveGIS    点击数:1759    更新时间:2014-9-13 摘要:从底层谈WebGIS 原理设计与实现(四):WebGIS中通过行列号来换算出多种瓦片的URL 之离线地图.我在这里将地图分为离线地图和在线地图.所谓离线地图,即保存在本地而没有发布的地图.在线地图即发布与网上,可以通过浏览器访问的地图. 1.前言 在前面我花了两个篇…
目的: 1. 计算自定义模序在所有蛋白质的匹配位点和次数 2. 输出超过阈值的蛋白质序列到Hit_sequences.fasta 3. Hit_sequences.fasta中序列用小写字母,匹配用大写字母 4. 返回一个数据框,内容包存储ID.注释行(anno)括--.长度(len).匹配位置(Position),匹配次数(Hits),相应序列(tag) 一.问题思考: 1. 如何快速计算匹配位点 2. 输出文件如何构建 >序列ID(ACCESSION) 序列内容…
所谓学习问题,是指观察由n个样本组成的集合,并根据这些数据来预测未知数据的性质. 学习任务(一个二分类问题): 区分一个普通的互联网检索Query是否具有某个垂直领域的意图.假设现在有一个O2O领域的垂直搜索引擎,专门为用户提供团购.优惠券的检索:同时存在一个通用的搜索引擎,比如百度,通用搜索引擎希望能够识别出一个Query是否具有O2O检索意图,如果有则调用O2O垂直搜索引擎,获取结果作为通用搜索引擎的结果补充. 我们的目的是学习出一个分类器(classifier),分类器可以理解为一个函数,…
Before you read  This is a demo or practice about how to use Simple-Linear-Regression in scikit-learn with python. Following is the package version that I use below: The Python version: 3.6.2 The Numpy version: 1.8.0rc1 The Scikit-Learn version: 0.19…
决策数(Decision Tree)在机器学习中也是比较常见的一种算法,属于监督学习中的一种.看字面意思应该也比较容易理解,相比其他算法比如支持向量机(SVM)或神经网络,似乎决策树感觉“亲切”许多. 优点:计算复杂度不高,输出结果易于理解,对中间值的缺失值不敏感,可以处理不相关特征数据. 缺点:可能会产生过度匹配的问题. 使用数据类型:数值型和标称型. 简单介绍完毕,让我们来通过一个例子让决策树“原形毕露”. 一天,老师问了个问题,只根据头发和声音怎么判断一位同学的性别. 为了解决这个问题,同…
3.3 Spark在预测核心层的应用 我们使用Spark SQL和Spark RDD相结合的方式来编写程序,对于一般的数据处理,我们使用Spark的方式与其他无异,但是对于模型训练.预测这些需要调用算法接口的逻辑就需要考虑一下并行化的问题了.我们平均一个训练任务在一天处理的数据量大约在500G左右,虽然数据规模不是特别的庞大,但是Python算法包提供的算法都是单进程执行.我们计算过,如果使用一台机器训练全部品类数据需要一个星期的时间,这是无法接收的,所以我们需要借助Spark这种分布式并行计算…
1.什么是决策树 决策树(decision tree)是一个树结构(可以是二叉树或者非二叉树).决策树分为分类树和回归树两种,分类树对离散变量做决策树,回归树对连续变量做决策树. 其中每个非叶节点表示一个特征属性上的测试,每个分支代表这个特征属性在某个值域上的输出,而每个叶节点存放在一个类别. 使用决策树进行决策的过程就是从根节点开始,测试待分类项中相应的特征属性,并按照其值选择输出分支,知道到达叶子节点,将叶子节点存放的类别作为决策结果.决策树学习算法主要由三部分构成 1.1特征选择 特征选择…
答案在这里:http://www.tuicool.com/articles/U3uiiu http://scikit-learn.org/stable/modules/feature_extraction.html#text-feature-extraction…
一   安装 安装pip 代码如下:# wget "https://pypi.python.org/packages/source/p/pip/pip-1.5.4.tar.gz#md5=834b2904f92d46aaa333267fb1c922bb" --no-check-certificate# tar -xzvf pip-1.5.4.tar.gz# cd pip-1.5.4# python setup.py install 输入pip如果能看到信息证明安装成功. 安装scikit…
scikit-learn是一个用于机器学习的 Python 模块. 其主页:http://scikit-learn.org/stable/. GitHub地址: https://github.com/scikit-learn/scikit-learn 在安装的时候,网友提供的方法是由easy_install安装.我以前安装其他库时都是运行windows exe安装的.那么scikit-learn也可以通过windows可执行文件安装.http://www.lfd.uci.edu/~gohlke/…
scikit-learn官网:http://scikit-learn.org/stable/ 通常情况下,一个学习问题会包含一组学习样本数据,计算机通过对样本数据的学习,尝试对未知数据进行预测. 学习问题一般可以分为: 监督学习(supervised learning) 分类(classification) 回归(regression) 非监督学习(unsupervised learning) 聚类(clustering) 监督学习和非监督学习的区别就是,监督学习中,样本数据会包含要预测的标签(…
官方网站链接 sklearn.neighbors.KNeighborsClassifier sklearn.tree.DecisionTreeClassifier sklearn.naive_bayes.MultinomialNB sklearn.linear_model.LogisticRegression sklearn.svm.SVC   Home Installation Documentation Scikit-learn 0.20.2 (stable) Tutorials User…
Voting classifier 多种分类器分别训练,然后分别对输入(新数据)预测/分类,各个分类器的结果视为投票,投出最终结果: 训练: 投票: 为什么三个臭皮匠顶一个诸葛亮.通过大数定律直观地解释: 一个硬币P(H)=0.51.大数定律保证抛硬币很多次之后,平均得到的正面频数接近\(0.51 \times N\),并且N越大,越接近.那么换个角度,N表示同时掷硬币的人数,即为这边的N个臭皮匠,他们的结果合到一起就得到的是接近真实结果的值. 进一步根据中心极限定理,即二项分布以正态分布为其极…
Windows下安装scikit-learn 准备工作 Python (>= 2.6 or >= 3.3), Numpy (>= 1.6.1) Scipy (>= 0.9), Matplotlib(可选). NumPy NumPy系统是Python的一种开源的数值计算扩展.这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix)). Scipy SciPy是一款方便.易于使用…
今天了解到sklearn这个库,简直太酷炫,一行代码完成机器学习. 贴一个自动生成数据,SVR进行数据拟合的代码,附带网格搜索(GridSearch, 帮助你选择合适的参数)以及模型保存.读取以及结果绘制. from sklearn.svm import SVR from sklearn.externals import joblib from sklearn.model_selection import GridSearchCV import numpy as np import matplo…
决策树介绍 决策树是一类机器学习算法,可以实现对数据集的分类.预测等.具体请阅读我另一篇博客(http://www.cnblogs.com/twocold/p/5424517.html). Accord.Net Accord.Net(http://accord-framework.net/)是一个开源的.Net环境下实现的机器学习算法库.并且还包括了计算机视觉.图像处理.数据分析等等许多算法,并且基本上都是用C#编写的,对于.Net程序员十分友好.代码在Github托管,并且现在仍在维护中.(h…
单元测试单元测试(unit testing)是指对软件中的最小可测试单元进行检查和验证.对于单元测试中单元的含义,一般来说,要根据实际情况去判定其具体含义,如C语言中单元指一个函数,Java里单元指一个类,图形化的软件中可以指一个窗口或一个菜单等.总的来说,单元就是人为规定的最小的被测功能模块.单元测试框架在单元测试框架出现之前,开发人员在创建可执行测试时饱受折磨.最初的做法是在应用程序中创建一个窗口,配有"测试控制工具(harness)".它只是一个窗口,每个测试对应一个按钮.这些测…