机器学习
灵魂画手-编程如画
大工小本,计算所小硕一枚,奋斗ing,相信技术改变世界!
展开
-
《机器学习基石》课堂原文Lecture4-1
大家好,大家好,欢迎回到今天的机器学习课程 今天的课程我们要跟大家探讨的题目是Feasibility of Learning,Learning到底是不是 可行的呢?在开始这个题目之前,我们先看看我们上一次到底上了些什麽东西?我们上一次探索了各式各样不一样的机器学习的设定,然后我们跟大家说到说我们的焦点会著重在说二元的分类还有迴归分析上,最核心的问题那我们会在批次 的资料,还有supervised,也就是有提供标记的这原创 2017-06-09 13:39:39 · 649 阅读 · 0 评论 -
pandas报错AttributeError: 'module' object has no attribute 'plotting'
使用pandas可视化遇到了一个问题,代码和报错为# 对于数据中的每一对特征构造一个散布矩阵import pandas as pdpd.plotting.scatter_matrix(data, alpha = 0.3, figsize = (14,8), diagonal = 'kde');AttributeError: 'module' object has no attribute 'pl原创 2017-12-12 13:21:43 · 7548 阅读 · 0 评论 -
pandas的scatter_matrix散布矩阵图如何理解
Q: 如何理解问题3中给出的图?如何分析关联性、变量分布?A: 这张图分为两部分:对角线部分和非对角线部分。 对角线部分: 核密度估计图(Kernel Density Estimation),就是用来看某 一个 变量分布情况,横轴对应着该变量的值,纵轴对应着该变量的密度(可以理解为出现频次)。 非对角线部分:两个 变量之间分布的关联散点图。将任意两个变量进行配对,以其中一个为横坐标,另一个为原创 2017-12-12 15:02:22 · 8877 阅读 · 0 评论 -
DataFrame使用Series的boolean值做下标过滤数据
今天遇到一段代码,他用DataFrame中的一列来做判断,判断后得到boolean值再将其作为DataFrame的下标过滤DataFrame的数据,代码如下:log_data[ log_data[feature] > 1 ]将代码分段进行打印:print log_data[feature] > 1 print log_data[ log_data[feature] > 1 ]打印后的效果:0原创 2017-12-12 16:30:40 · 4351 阅读 · 0 评论 -
优达(Udacity)smartcab
机器学习工程师纳米学位强化学习项目 4: 训练智能出租车学会驾驶欢迎来到机器学习工程师纳米学位的第四个项目!在这个notebook文件中,模板代码已经提供给你,有助于你对智能出租车的分析和实现学习算法。你无须改动已包含的代码,除非另有要求。 你需要回答notebook文件中给出的与项目或可视化相关的问题。每一个你要回答的问题前都会冠以‘问题 X’。仔细阅读每个问题,并在后面‘回答’文本框内给出完整的原创 2017-12-21 15:34:59 · 3670 阅读 · 0 评论 -
优达(Udacity)customer_segments
机器学习纳米学位非监督学习项目 3: 创建用户分类欢迎来到机器学习工程师纳米学位的第三个项目!在这个notebook文件中,有些模板代码已经提供给你,但你还需要实现更多的功能来完成这个项目。除非有明确要求,你无须修改任何已给出的代码。以‘练习’开始的标题表示接下来的代码部分中有你必须要实现的功能。每一部分都会有详细的指导,需要实现的部分也会在注释中以‘TODO’标出。请仔细阅读所有的提示!除了实现代原创 2017-12-14 17:53:42 · 3919 阅读 · 0 评论 -
优达(Udacity)finding_donors
机器学习纳米学位监督学习项目2: 为CharityML寻找捐献者欢迎来到机器学习工程师纳米学位的第二个项目!在此文件中,有些示例代码已经提供给你,但你还需要实现更多的功能让项目成功运行。除非有明确要求,你无须修改任何已给出的代码。以‘练习’开始的标题表示接下来的代码部分中有你必须要实现的功能。每一部分都会有详细的指导,需要实现的部分也会在注释中以’TODO’标出。请仔细阅读所有的提示!除了实现代码外原创 2017-12-11 16:13:23 · 3898 阅读 · 1 评论 -
优达(Udacity)波士顿预测房价
机器学习工程师纳米学位模型评价与验证项目 1: 预测波士顿房价欢迎来到机器学习工程师纳米学位的第一个项目!在此文件中,有些示例代码已经提供给你,但你还需要实现更多的功能来让项目成功运行。除非有明确要求,你无须修改任何已给出的代码。以编程练习开始的标题表示接下来的内容中有需要你必须实现的功能。每一部分都会有详细的指导,需要实现的部分也会在注释中以TODO标出。请仔细阅读所有的提示!除了实现代码外,你还原创 2017-11-26 10:36:19 · 3756 阅读 · 0 评论 -
机器学习步骤和算法使用
数据集预处理特征选择算法选择验证 算法选用详细讲解感谢提到的stacking做法 https://zhuanlan.zhihu.com/p/25836678 https://rasbt.github.io/mlxtend/user_guide/classifier/StackingClassifier/参考资料blog各种机器学习的应用场景原创 2017-12-03 14:22:13 · 328 阅读 · 0 评论 -
优达机器学习:朴素贝叶斯迷你项目2
练习:计算10.04545454545450.0454545454545data = "So if you could just go ahead and pack up your stuff and move it down there, that would be terrific, OK?"words = data.split(' ')word_you = filter(lambd原创 2017-12-05 22:03:53 · 864 阅读 · 0 评论 -
决定系数R^2
在对数据进行线性回归计算之后,我们能够得出相应函数的系数, 那么我们如何知道得出的这个系数对方程结果的影响有强呢? 所以我们用到了一种方法叫 coefficient of determination (决定系数) 来判断 回归方程 拟合的程度.0. 平均数y¯=1n∑i=1nyi\bar{y}=\frac{1}{n}\sum_{i=1}^{n}y_i1. SUM OF SQUARES DUE TO原创 2017-11-25 13:50:01 · 22760 阅读 · 1 评论 -
numpy中std()和pandas中std()的区别
注意,计算得出的默认标准偏差类型在 numpy 的 .std() 和 pandas 的 .std() 函数之间是不同的。默认情况下,numpy 计算的是总体标准偏差,ddof = 0。另一方面,pandas 计算的是样本标准偏差,ddof = 1。如果我们知道所有的分数,那么我们就有了总体——因此,要使用 pandas 进行归一化处理,我们需要将“ddof”设置为 0。如是总体,标准差公式根号内除以原创 2017-11-27 19:02:21 · 2856 阅读 · 0 评论 -
林轩田机器学习基石和技法资源
之前间断的看了看林轩田的视频,觉得公式推导很多,整体的思路很好,之后打算从头到尾好好看一遍,然后做一遍练习,把基础夯实了,下面是找到的资源,发布出来,以飨读者课程视频1、课程视频2详细参考笔记、简略参考笔记作业题目作业答案(供参考)原创 2017-12-27 20:16:25 · 3463 阅读 · 0 评论 -
林轩田作业hw0答案
1 probability and statistics数学归纳法。 该结论可以理解为现有N个人,其中有一个人是Anna。你需要从中挑选出K个人,那么当选出的K个人必须不含Anna时,有C(N−1,K)C(N-1,K)种选法。当选出的人必须包含Anna时,有C(N−1,K−1)C(N-1,K-1)中选法。二者之和,即为你从N个人里选K个的所有可能选法。抛10次硬币得到4次正面:C(10,4)∗原创 2017-12-29 22:07:08 · 3701 阅读 · 0 评论 -
优达机器学习:学习曲线与模型复杂度
学习曲线让我们根据模型通过可视化图形从数据中学习的能力来探讨偏差与方差之间的关系。机器学习中的学习曲线是一种可视化图形,能根据一系列训练实例中的训练和测试数据比较模型的指标性能。在查看数据与误差之间的关系时,我们通常会看到,随着训练点数量的增加,误差会趋于下降。由于我们尝试构建从经验中学习的模型,因此这很有意义。我们将训练集和测试集分隔开,以便更好地了解能否将模型泛化到未见过的数据而不是拟合原创 2017-11-23 21:08:06 · 1566 阅读 · 0 评论 -
优达机器学习:误差原因
偏差造成的误差 - 准确率和欠拟合(bias)如前所述,如果模型具有足够的数据,但因不够复杂而无法捕捉基本关系,则会出现偏差。这样一来,模型一直会系统地错误表示数据,从而导致准确率降低。这种现象叫做欠拟合(underfitting)。简单来说,如果模型不适当,就会出现偏差。举个例子:如果对象是按颜色和形状分类的,但模型只能按颜色来区分对象和将对象分类(模型过度简化),因而一直会错误地分类对象。或者,原创 2017-11-23 20:58:59 · 432 阅读 · 0 评论 -
优达机器学习:评估指标
准确率、精确率和召回率对于上图中的预测情况来看精确率为 (8+9)/20 = 85%,表示的是所有预测正确数量占总体预测数量的比例准确率为 8/(1+8)=88.89%,表示的是positive情况下,预测正确的个数占总positive预测数的比例召回率为8/(2+8)=80%,表示的是positive情况下,预测正确的个数占positive实际总数的比例准确率和召回率一般都指的是posit原创 2017-11-23 15:18:02 · 389 阅读 · 0 评论 -
SVM学习
SVM在sklearn库中主要三个参数 - kernel(核函数linear、RBF) - C( C是惩罚系数,即对误差的宽容度。c越高,说明越不能容忍出现误差,容易过拟合。C越小,容易欠拟合。C过大或过小,泛化能力变差) - gamma( gamma是选择RBF函数作为kernel后,该函数自带的一个参数。隐含地决定了数据映射到新的特征空间后的分布,gamma越大,支持向量越少,gamma值原创 2017-11-10 21:33:05 · 288 阅读 · 0 评论 -
机器学习中的统计学基础知识
负偏斜分布人类存活年龄分布均匀分布没有众数,天气预报多峰分布有多个众数,该例子为前半部分为女士鞋号,后半部分为男士鞋号众数指的是x轴,y轴代表具体的频率众数不受总体数据影响,而平均值又会因为总体影响过大导致被平均,所以就发明了中位数中位数在处理偏斜分布时通常能很好的反映出趋势对于上图的正偏斜分布来说,众数<中位数<均值对于上图的正态分布来说,众数=中位数=均值统计学家在做统计的时候原创 2017-11-19 11:27:01 · 1440 阅读 · 0 评论 -
优达机器学习:神经网络
练习:创建感知# ----------# # In this exercise, you will add in code that decides whether a perceptron will fire based# on the threshold. Your code will go in lines 32 and 34. ## ----------import numpy原创 2017-11-29 21:22:37 · 597 阅读 · 0 评论 -
曼哈顿距离
图中红线代表曼哈顿距离绿色代表欧氏距离,也就是直线距离而蓝色和黄色代表等价的曼哈顿距离。曼哈顿距离——两点在南北方向上的距离加上在东西方向上的距离,即d(i,j)=|xi-xj|+|yi-yj|。对于一个具有正南正北、正东正西方向规则布局的城镇街道,从一点到达另一点的距离正是在南北方向上旅行的距离加上在东西方向上旅行的距离,因此,曼哈顿距离又称为出租车距离。曼哈顿距离不是距离不变量,当坐标轴变原创 2017-11-30 11:17:41 · 503 阅读 · 0 评论 -
优达机器学习:聚类
K-MEANS的最初中心点选择对最后的分类效果有很大关系,比如下图出现的聚类,就有很大的问题练习: 聚类特征salaryexercised_stock_options练习:部署聚类### cluster here; create predictions of the cluster labels### for the data and store them to a list called原创 2017-11-30 16:59:42 · 586 阅读 · 0 评论 -
优达机器学习:特征缩放
练习:最小值/最大值重缩放器编码import numpy as npdef featureScaling(arr): arr = np.array(arr) max = np.max(arr) min = np.min(arr) res = [] for item in arr: data = float(item-min)/(max-min)原创 2017-11-30 22:39:47 · 552 阅读 · 0 评论 -
优达机器学习:文本学习
练习:从NLTK中获取停止词answer:153首先是下载nltk的工具包,这个使用命令行下载非常慢,因为压缩包至少也要几百M,而且我下载了几次都失败了,解压之后达到了2个多G。所以就直接在网上下载了数据:nltk_data,提取密码:9uk5下载数据后根据查找的目录地址,将压缩包解压了到相应目录上即可,我放到了D:\nltk_dataLookupError:**************原创 2017-12-02 16:44:51 · 1153 阅读 · 1 评论 -
优达机器学习:异常值
异常值的处理步骤训练去除10%的误差大的点再次训练,重复第二步练习:带有异常值的回归斜率和回归分数outlier_removal_regression.py#!/usr/bin/pythonimport randomimport numpyimport matplotlib.pyplot as pltimport picklefrom outlier_cleaner import原创 2017-11-14 20:38:30 · 1067 阅读 · 0 评论 -
优达机器学习:回归
连续监督学习指的是输出为连续值离散也指的是输出为离散值判断输出属于离散还是连续,是根据值之间是否存在次序关系来判断的,而不是根据是不是数字来判断,存在次序关系则是连续的,否则要当作离散值来对待常用的两种误差算法普通最小二乘法,ordinary least squares,OLS梯度下降法,gradient descent为什么回归误差用平方的绝对值而不是直接用绝对值因为对于平行的这几条线原创 2017-11-13 17:14:01 · 545 阅读 · 0 评论 -
优达机器学习:数据集与问题学习
数据类型1、数值型,比如工资 2、类别型,比如工作类型 3、时间序列,比如邮件时间戳 4、文本,比如邮件内容,邮件地址 5、其他课程6:数据集与问题代码#!/usr/bin/python""" Starter code for exploring the Enron dataset (emails + finances); loads up the dataset (pic原创 2017-11-13 12:50:14 · 774 阅读 · 0 评论 -
优达机器学习:决策树练习题
12 练习:决策树准确性这里优达的运行环境有个坑,就是他时而准确时而错误,所以测试的时候就一会儿是对的,一会儿是错的,同样的一个代码,感觉变量会混淆似的import sysfrom class_vis import prettyPicturefrom prep_terrain_data import makeTerrainDataimport matplotlib.pyplot as plti原创 2017-11-11 09:13:01 · 1575 阅读 · 0 评论 -
优达机器学习:朴素贝叶斯
练习:癌症测试P(A)=0.01P(A)=0.01 P(A¯¯¯)=0.99P(\overline A)=0.99 P(B|A)=0.9P(B|A)=0.9 P(B|A¯¯¯)=0.1P(B|\overline A)=0.1 P(A|B)=P(A)P(B|A)P(B|A)P(A)+P(B|A¯¯¯)P(A¯¯¯)P(A|B)=P(A) \cfrac {P(B|A)}{P(B|A)P(A)+P原创 2017-11-08 16:54:25 · 458 阅读 · 0 评论 -
优达机器学习:交叉验证
练习:在 Sklearn 中训练/测试分离features_train, features_test, labels_train, labels_test = cross_validation.train_test_split(iris.data, iris.target, test_size=0.4, random_state=0)K折交叉验证可能会出现分类都一样的问题GridSearchCV原创 2017-11-23 12:37:09 · 598 阅读 · 0 评论 -
优达机器学习:主成分分析(PCA)
主成分是由数据中具有最大方差的方向决定的,因为可以最大程度的保留信息量我理解相当于降维,也就是将特征通过降维的方式减少方差最大化相当于将所有的距离最小化,这个方差和平时理解的方差不太一样PCA可以帮助你发现数据中的隐藏特征,比如说得到总体上有两个因素推动房价变动,至于是什么,要自己看数据去判断主成分分类最大值等于训练点数量和特征数量的最小值PCA的特点PCA将输入特征转化为主成分的系统化方原创 2017-12-03 14:07:57 · 840 阅读 · 0 评论 -
优达特征选择和主成分分析,笔记和问题
课程12:特征选择27——31课程13:主成分分析9:根号2怎么算出来的 18:最大方差为什么是那个轴,方差越大数据分布越分散,否则越密集主成分是由数据中具有最大方差的方向决定的,因为可以最大程度的保留信息量我理解相当于降维,也就是将特征通过降维的方式减少方差最大化相当于将所有的距离最小化,这个方差和平时理解的方差不太一样PCA可以帮助你发现数据中的隐藏特征,比如说得到总体上有两个因素推动房价变动原创 2017-12-03 13:26:45 · 558 阅读 · 0 评论 -
林轩田作业hw1计算题答案
题目地址 参考链接1 参考链接2第一部分Q1:下列哪些问题最适合用机器学习解决(i)" role="presentation" style="position: relative;">(i)(i)(i)区分一个数是否为素数 (ii)" role="presentation" style="position: relative;">(ii)(ii)(ii)确定信用卡是否被盗刷原创 2018-01-02 20:49:30 · 2053 阅读 · 2 评论