python机器学习

机器学习(十七)Microsoft的InterpretM可解释性 机器学习模型

纵饮孤独 提交于 2019-12-02 23:11:28
InterpretML 简介 适合可解释的模型 解释blackbox机器学习,可视化的展示“黑箱"机器学习 InterpretML是一个开源软件包,用于训练可解释的模型并解释黑盒系统。可解释性主要表现在以下几点: 模型调试 - 模型哪里出现了错误? 检测偏差 - 模型表现出哪些区分能力? 策略学习 - 模型是否满足某些规则要求? 高风险的应用 - 医疗保健,金融,司法等 从历史上看,最容易理解的模型不是很准确,最准确的模型是不可理解的。 Microsoft Research开发了一种称为可解释增强机Explainable Boosting Machine(EBM)的算法,该算法具有高精度和可懂度。 EBM使用现代机器学习技术,如装袋和助推,为传统GAM(Generalized Additive Models)注入新的活力。 这使它们像随机森林和梯度提升树一样准确,并且还增强了它们的可懂度和可编辑性。 image 除了EBM之外,InterpretML还支持LIME,SHAP,线性模型,部分依赖,决策树和规则列表等方法。该软件包可以轻松比较和对比模型,以找到最适合您需求的模型。 安装 Python 3.5+ | Linux, Mac OS X, Windows pip install numpy scipy pyscaffold pip install -U interpret

What exactly can you do with Python? Here are Python’s 3 main applications._你能用Python做什么?下面是Python的3个主要应用程序。

匿名 (未验证) 提交于 2019-12-02 22:56:40
原文链接 一、陈述 1,我到底能用Python做什么? 我观察注意到Python三个主要流行的应用: 网站开发; 数据科学――包括机器学习,数据分析和数据可视化; 做脚本语言。 二、网站开发 网站框架将帮助你创建基于Python的服务器端代码(后端代码),这些代码将在你的服务器上运行,与用户的设备和浏览器截然相反(前端代码)。像Django和Flask这样基于Python网站框架最近在网页开发中变得流行起来。 1,为什么我需要一个网站框架? 因为网站框架将会更容易的建立后端的共同逻辑。这包括将不同的URL映射到Python的代码块,处理数据库,以及生成用户在浏览器上看到的HTML文件。 2,我应该使用哪一个Python网站框架? Django和Flask这两个框架在使用Python做网站开发最受欢迎,如果你是刚开始学习,我推荐使用其中的一种。 3,Django与Flask两者之间有什么不同? Gareth Dwyer写了一篇关于这个话题的优秀文章,我在这里引用一下: 主要的区别: Flask提供简易、灵活和细致纹理控制,这是不武断的(它可以让你决定如何实现事情)。 Dijango提供详尽的体验:你将得到一个管理面板、数据库接口、ORM(对象关系映射)和应用程序和项目的目录结构。 你也许应该选择: Flask,如果你专注于经验和和学习机会,或者如果你想更多的管理组件的使用(例如

[机器学习python实践(5)]Sklearn实现集成

匿名 (未验证) 提交于 2019-12-02 22:56:40
1,集成 集成(Ensemble)分类模型是综合考量多个分类器的预测结果,从而做出决策。一般分为两种方式: 1)利用相同的训练数据同时搭建多个独立的分类模型,然后通过投票的方式,以少数服从多数的原则做出最终的分类决策。如随即森林分类器的思想是在相同的训练数据上同时搭建多棵决策树。随机森林分类器在构建每一棵决策树会随机选择特征,而不是根据每维特征对预测结果的影响程度进行排序。 2)按照一定次序搭建多个分类模型。这些模型之间彼此存在依赖关系。一般而言,每一个后续模型的加入都需要对现有集成模型的综合性能有所贡献,进而不断提升更新过后的集成模型的性能,并最终期望借助整合多个分类能力较弱的分类器,搭建出具有更强分类能力的模型。如梯度提升决策树:它生成每一棵决策树的过程中都会尽可能降低整体集成模型在训练集上的拟合误差。 2.例子 数据集:同上一篇文章 代码: # coding=utf-8 import pandas as pd from sklearn.model_selection import train_test_split from sklearn.feature_extraction import DictVectorizer from sklearn.tree import DecisionTreeClassifier from sklearn.ensemble import

Python机器学习――Agglomerative层次聚类

匿名 (未验证) 提交于 2019-12-02 22:56:40
??由于每个簇就是一个集合,因此需要给出集合之间的距离。给定聚类簇 C i , C j Ci,Cj,有如下三种距离: 最小距离: d m i n ( C i , C j ) = min x i ∈ C i , x j ∈ C j d i s t a n c e ( x i , x j ) dmin(Ci,Cj)=minx→i∈Ci,x→j∈Cjdistance(x→i,x→j) 它是两个簇的样本对之间距离的最小值。 最大距离: d m a x ( C i , C j ) = max x i ∈ C i , x j ∈ C j d i s t a n c e ( x i , x j ) dmax(Ci,Cj)=maxx→i∈Ci,x→j∈Cjdistance(x→i,x→j) 它是两个簇的样本对之间距离的最大值。 平均距离: d a v g ( C i , C j ) = 1 | C i | | C j | ∑ x i ∈ C i ∑ x j ∈ C j d i s t a n c e ( x i , x j ) davg(Ci,Cj)=1|Ci||Cj|∑x→i∈Ci∑x→j∈Cjdistance(x→i,x→j) 它是两个簇的样本对之间距离的平均值。 ??当该算法的聚类簇采用 d m i n dmin时,称为单链接single-linkage算法,当该算法的聚类簇采用 d m a

python机器学习入门到精通(一)

匿名 (未验证) 提交于 2019-12-02 22:54:36
机器学习,顾名思义,它是人工智能、统计学、计算机科学交叉的研究领域,也被称作预测分析或统计学习。近年来,由于人工智能的火爆,机器学习方法已经应用到日常生活的方方面面。贴近我们生活的就有,系统自动推荐用户的喜好,买什么物品,点什么食物,浏览新闻时,给你推送什么类型的文章,甚至于我们登录淘宝购买物品,微博观看别人的微博时,这些每一部分都可能包含多种机器学习模型。当然,机器学习也在科研方面也有建树,比如DNA分析,天文学的研究,微观粒子等。同时,要想学好机器学习,数学的基础也是必须的。 机器学算法是将决策过程自动化的算法,而这些决策是从已知示例中泛化得出来的,而这种方法被称作监督学习(supervised learning)。 用户将成对的输入和预期输出提供给算法,然后算法会找到一种方法,根据给定输入给出预期输出。从输入/输出对中进行学习的机器学习算法叫作监督学习算法,因为每个用于算法学习的样例都对应一个预期输出,就像老师教导学生在督算着算法。在生活中,监督机器学习任务大多应用于: 识别信封上手写的邮政编码, 输入扫描的手写数字,预期输出是邮政编码中的实际数字。想要创建用于构建机器学习模型的数据集,需要收集许多信封,然后可以自己阅读邮政编码,将数字保存为预期输出。 基于医学影像判断肿瘤是否为良性, 这里的输入是影像,输出是肿瘤是否为良性。创建用于构建模型的数据集,需要一个医学影像数据库

一个完整的机器学习项目在Python中的演练(二)

匿名 (未验证) 提交于 2019-12-02 22:51:30
磐石 大家往往会选择一本数据科学相关书籍或者完成一门在线课程来学习和掌握机器学习。但是,实际情况往往是,学完之后反而并不清楚这些技术怎样才能被用在实际的项目流程中。就像你的脑海中已经有了一块块”拼图“(机器学习技术),你却不知道如何讲他们拼起来应用在实际的项目中。如果你也遇见过同样的问题,那么这篇文章应该是你想要的。本系列文章将介绍一个针对真实世界实际数据集的完整机器学习解决方案,让您了解所有部分如何结合在一起。 本系列文章按照一般机器学习工作流程逐步进行: 数据清洗与格式处理 探索性数据分析 特征工程和特征选取 机器学习模型性能指标评估 微调最佳模型(超参数) 在测试集上评估最佳模型 解释模型结果 总结分析 通过完成所有流程,我们将看到每个步骤之间是怎么联系起来的,以及如何在Python中专门实现每个部分。该 项目 可在GitHub上可以找到,附实现过程。第二篇文章将详细介绍第三个步骤,其余的内容将在后面的文章中介绍。 特征工程和特征选择虽然是完成机器学习项目中很小的一个环节,但它模型最终的表现至关重要。在特征工程与特征选择阶段做的工作都会准时在模型的表现上得以体现。首先,让我们来了解一下这两项任务是什么: 特征工程:特征工程是一项获取原始数据并提取或创建新特征的过程。也就是说可能需要对变量进行转换。例如通过取自然对数、取平方根或者对分类变量进行独热(one-hot

Python机器学习及实践学习笔记1

匿名 (未验证) 提交于 2019-12-02 22:51:30
机器学习隶属于人工智能研究与应用的一个分支。 “图灵测试”(Turing Test),用来判断一台计算机是否达到具备人工智能的标准。 大概描述:“如果通过问答这种方式,我们已经无法区分对话那端到底是机器还是人类,那么就可以说这样的机器已经具备了人工智能。” Tom Mitchell’s Definition A program can be said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E. 简译:如果一个程序在使用既有的经验(E)执行某类任务(T)的过程中被认定是“具备学习能力的”,那么它一定需要展现出:利用现有的经验(E),不断改善其既定任务(T)的性能(P)的特质。 机器学习系统的特点: 1.许多机器学习系统所解决的都是无法使用固定规则或流程代码完成的问题,通常这类问题对人类而言却很简单; 2.所谓具备“学习”能力的程序都是指它能够不断地从经验(Experience)和数据中吸取经验教训,从而应对未来的预测任务。习惯上把这种对未知的预测能力叫做泛化力(Generalization

吴恩达机器学习作业Python实现(五):偏差和方差

匿名 (未验证) 提交于 2019-12-02 22:51:30
在本练习中,您将实现正则化的线性回归和多项式回归,并使用它来研究具有不同偏差-方差属性的模型 在前半部分的练习中,你将实现正则化线性回归,以预测水库中的水位变化,从而预测大坝流出的水量。在下半部分中,您将通过一些调试学习算法的诊断,并检查偏差 v.s. 方差的影响。 1.1 Visualizing the dataset 我们将从可视化数据集开始,其中包含水位变化的历史记录,x,以及从大坝流出的水量,y。 这个数据集分为了三个部分: - training set 训练集:训练模型 - cross validation set 交叉验证集:选择正则化参数 - test set 测试集:评估性能,模型训练中不曾用过的样本 %matplotlib inline import numpy as np import matplotlib.pyplot as plt from scipy.io import loadmat import scipy.optimize as opt 读取数据 path = 'ex5data1.mat' data = loadmat(path) #Training set X, y = data[ 'X' ], data[ 'y' ] #Cross validation set Xval, yval = data[ 'Xval' ], data[ 'yval' ]

python机器学习简介

匿名 (未验证) 提交于 2019-12-02 22:51:30
Ŀ¼ 专门研究计算机怎样模拟或实现人类的学习行为 ,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。从数据中提取知识,也被称为 预测分析 或 统计学习 。 监督学习 。 样本 或 数据点 ,而每一列(描述这些实体的某一个属性)则被称为 特征 。 1.scikit-learn 简介 :它是一个开源的python库,包含了目前最先进的机器学习算法,也是最有名的python机器学习库。 用户指南 : http://scikit-learn.org/stable/user_guide.html 安装scikit-learn :直接装集合了多个数据分析库的python发行版Anaconda,包含了所需的所有机器学习库。 2.Jupyter notebook 3.NumPy 4.SciPy 5.matplotlib 6.pandas 7.mglearn import sys import pandas as pd import matplotlib import numpy as np import scipy as sp import ipython import sklearn 数据挖掘的大部分时间就花在特征工程上面,是机器学习非常基础而又必备的步骤 。数据预处理、数据清洗、筛选显著特征、摒弃非显著特征等等都非常重要。 交叉验证 选择最好的一个。但如果训练集很小,高偏差

段小手《深入浅出Python机器学习》PDF+代码+《Python机器学习基础教程》高清中英文PDF代码+张亮

匿名 (未验证) 提交于 2019-12-02 22:51:30
机器学习正在迅速改变我们的世界。我们几乎每天都会读到机器学习如何改变日常的生活。如果你在淘宝或者京东这样的电子商务网站购买商品,或者在爱奇艺或是腾讯视频这样的视频网站观看节目,甚至只是进行一次百度搜索,就已经触碰到了机器学习的应用。使用这些服务的用户会产生数据,这些数据会被收集,在进行预处理之后用来训练模型,而模型会通过这些数据来提供更好的用户体验。 此外,目前还有很多使用机器学习技术的产品或服务即将在我们的生活当中普及,如能够解放双手的无人驾驶汽车、聪明伶俐的智能家居产品、善解人意的导购机器人等。 可以说要想深入机器学习的应用开发当中,现在就是一个非常理想的时机。 《深入浅出Python机器学习》PDF,280页,带书签目录,文字可以复制。作者:段小手 链接:https://pan.baidu.com/s/190akYDCeyIyl1CFiiVguLw 提取码:5woj 复制这段内容后打开百度网盘手机App,操作更方便哦 添加描述 添加描述 添加描述 《深入浅出Python机器学习》内容涵盖了有监督学习、无监督学习、模型优化、自然语言处理等机器学习领域所必须掌握的知识,从内容结构上非常注重知识的实用性和可操作性。 《深入浅出Python机器学习》采用由浅入深、循序渐进的讲授方式,完全遵循和尊重初学者对机器学习知识的认知规律。本书适合有一定程序设计语言和算法基础的读者学习使用。