机器学习
文章平均质量分 54
风中静行
一个相信科技改变生活的有信仰的程序猿
展开
-
bobo老师机器学习笔记--导学入门思维导图
课程地址:https://coding.imooc.com/class/169.html原创 2018-09-18 10:30:48 · 1216 阅读 · 0 评论 -
Bobo老师机器学习笔记第九课-逻辑回归添加多项式
在上面博客中我们主要使用逻辑回归进行线性数据的分类,那么逻辑如何处理非线性数据分类呢?比如下面的数据:1、利用逻辑回归如何处理非线性数据回归?针对上面的数据,我们首先尝试回归一下,看看获取的结果是: 0.605, 这个评分不是很高,让后我们绘制一下决策边界:很明显决策边界误差很大。 那么接下来我们加入多项式看看 def PolynomialFeaturesLogsti...原创 2018-12-06 17:58:45 · 376 阅读 · 2 评论 -
Bobo老师机器学习笔记第九课-逻辑回归之决策边界
1、什么是决策边界?决策边界又称为是限定边界,引用百度的定义:在具有两个类的统计分类问题中,决策边界或决策表面是超曲面,其将基础向量空间划分为两个集合,一个集合。 分类器将决策边界一侧的所有点分类为属于一个类,而将另一侧的所有点分类为属于另一个类。我们先看逻辑回归的sigmoid函数。 我们求出在上一篇博客中我们已经计算出来了值,那么我们把这条曲线绘制出来。 这个...原创 2018-12-06 09:40:09 · 989 阅读 · 0 评论 -
Bobo老师机器学习笔记第九课-逻辑回归代码展示
在上一篇博客中我们学习了逻辑回归(LogisticRegression)的理论。那么在这篇博客中,我们用代码展示一下,如何用梯度下降法获取逻辑回归的参数步骤1:我们加载sklearn中的鸢尾花数据进行测试,由于为了数据可视化,我们选择2种类型的鸢尾花,并且只选择2个特征。 import numpy as np import matplotlib.pyplot as plt...原创 2018-12-05 19:25:39 · 486 阅读 · 0 评论 -
Bobo老师机器学习笔记第九课-逻辑回归理论
1、什么是逻辑回归?(Logistic Regresssion)逻辑回归(Logistic Regression)是一种用于解决二分类(0 or 1)问题的机器学习方法,用于估计某种事物的可能性。逻辑回归既可以看做是一个回归算法,也可以看作是一个分类问题,通常是用过分类,并且是二分类。 分类主要是基于得到结果,获得结果是一个概率,然后根据概率来进行分类。 比如判断一个肿瘤是良性还是恶性,如果...原创 2018-12-05 12:50:19 · 478 阅读 · 0 评论 -
Bobo老师机器学习笔记第八课-方差、偏差、岭回归、LASSO回归?
对误差分类问题一、什么是偏差和方差?先看下面这幅图图:方差: 都是围着数据中心的,方差越大则表示距离数据中心分布的越分散,越小说明越近越集中偏差: 偏离数据中心, 偏差越大,说明整个数据距离中心越远,偏差越小,说明距离数据中心越近。这两者的关系通常是矛盾的,降低偏差会提高方差,降低方差会提高偏差。所有一个好的模型就是对这点的一个平衡。 二、模型误差来自于哪些?模型误...原创 2018-12-04 13:19:16 · 2844 阅读 · 0 评论 -
Bobo老师机器学习笔记第八课-什么是交叉验证?
1、测试数据的真正意义是什么?在上篇博客中,我们看到测试集和训练集在同一个模型上会表现不同的结果。我们通过学习曲线可以直观的看到具体是过拟合还是欠拟合,从而调整参数,进行不断验证,直到找到一个在训练集表现好的数据。 总结一句话,就是通过测试数据进行对模型的调优。2、 依靠测试数据来调优模型,会不会存在模型对测试数据形成过拟合?会存在,因为我们是围绕测试数据集来验证模型的。所以要介绍...原创 2018-11-19 19:54:05 · 490 阅读 · 0 评论 -
Bobo老师机器学习笔记第八课-如何防止过拟合和欠拟合?
问题一、什么是过拟合和欠拟合?首先拟合是一个统计学概念,它表示所求函数逼近目标函数的远近程度。应用的机器学习中,就是我们所求的函数与未知的映射函数之间的相似度。如何求得函数参数与潜在的函数参数越逼近,说明效果越好。 假设我们用上篇博客中的数据,源码可以见上文:通过上图可以看出:欠拟合是我们求得的模型测试集和训练集都不好过拟合是我们求得模型在训练集表现好,在测试集表现不好 ...原创 2018-11-16 10:15:27 · 308 阅读 · 0 评论 -
Bobo老师机器学习笔记第八课-多项式回归
问题1: 什么是多项式回归?以前我们学习了线性回归,但是线性回归比较适用于数据之间明显线性关系的。但有时我们使用的数据不一定它们之间有线性关系。那么这时候就要用到多项式回归。多项式我们以前学过,那么多项式的回归方程就类似于问题2: 那么非线性的数据,我们如何做呢,比如下面数据?如果利用上面的数据我们进行线性回归,结果是下面的通过上图可以看出来,上面这条直线对数据回归不太...原创 2018-11-12 13:11:20 · 548 阅读 · 0 评论 -
Bobo老师机器学习笔记第九课-如何处理多分类任务?
1、什么是多分类任务? 针对多类问题的分类中,具体讲有两种,即multiclass classification和multilabel classification。multiclass是指分类任务中包含不止一个类别时,每条数据仅仅对应其中一个类别,不会对应多个类别。multilabel是指分类任务中不止一个分类时,每条数据可能对应不止一个类别标签,例如一条新闻,可以被划分到多个板...原创 2018-12-06 18:50:03 · 646 阅读 · 0 评论 -
Bobo老师机器学习笔记第九课-分类算法的评价指标
1、以前学习分类算法时候,一直用分类准确度进行算法的好坏,准确度一定准确吗?对于极度偏斜(Skewed data)的数据,只使用分类准确度是不够的。比如一种癌症的发病率是0.01%,那么我们系统即使在不分类的情况下,预测健康的情况准确率就可以达到99.99%。这个明显是不符合实际情况的。因此我们引入一种新的评价指标。首先我们熟悉一个概念:混淆矩阵(Confusion Matrix)...原创 2018-12-07 14:38:18 · 528 阅读 · 0 评论 -
【pandas入门】pandas的基本操作
学习目标:1、熟悉pandas工具的一些基本概念,了解DataFrame和Series数据结构2、基于DataFrame 和 Series数据结构操作数据3、 导入CSV到pandas的DataFrame数据结构4、利用函数reindex将pandas里面的数据进行随机打乱一、基本概念: 基本环境和代码在我的github进行下载,第一课Github链接Dat...翻译 2019-06-03 17:29:27 · 551 阅读 · 0 评论 -
Tensorflow入门第一步
说明:这个学习代码来自于Google的COLAB, 原链接点击here.课程目的:1、了解Tensorflow的基本概念2、用TEnsorflow自带的逻辑回归算法预测房价中位数3、利用均方根误差RMSE来评估模型预测准确度(如果不清楚RMSE是什么,请点击此处看我的另一篇博客)4、通过调整超参数来提高模型的准确度代码下载点击此处如果报如下错误:M...翻译 2019-06-13 16:15:44 · 546 阅读 · 0 评论 -
【pandas入门】创建DataFrame的7种方法
笔者在学习pandas,在学习过程中总结了一下创建dataframe的方法,通过查阅资料总结遗下几种方法,如果你有其他的方法欢迎留言补充。练习代码 请点击此处下载学习环境:第一种: 用Python中的字典生成第二种: 利用指定的列内容、索引以及数据第三种:通过读取文件,可以是json,csv,excel等等。本文例子就用excel, 上篇博客笔者已经用csv举例...原创 2019-06-06 15:30:23 · 51592 阅读 · 2 评论 -
【机器学习】Google Developer-特征工程介绍
Table of Contents1、什么是特征工程?2、 那么将原始数据如何进行转换呢?2.1 数值映射2.2 分类值映射3、如何提高特征的质量?3.1 尽量避免很少使用离散的特征值3.2 推荐特征使用清晰且明确的含义3.3 不要将异常数据和真实数据相混淆3.4 考虑使用特征值的数据不要随意变化4、数据如何清洗?4.1 缩放特征值4.2 处理极端...原创 2019-04-09 17:06:56 · 660 阅读 · 0 评论 -
【机器学习】Google Developer-特征交叉
1、什么是特征交叉?特征交叉是通过组合两个或更多个特征而形成的合成特征, 通过特征组合的方式增加特征的维度,以求得更好的训练效果。如下图,无法用一条直线来对两组数据进行分类。但是如果我们如果增加一个组合特征x1x2,得到分类图如下,下图我们就可以很好对两个类型的数据进行分类了。2、如何进行有效组合特征?2.1 针对数值型的特征一般直接进行相乘。例如[A X B]:...原创 2019-04-12 11:09:32 · 1954 阅读 · 0 评论 -
Google Cloud 专业数据工程师经验分享
写在前面:考试结束后,趁还记着的时候我赶紧记录下来。因为这些是没有顺序的,我只是根据自己遇到的问题总结一下考点。我记录考点的目的不是为您提供问题,而是为您提供您可以备考的重点。 我经常被一些问题困扰; 希望你可以根据我的经验做好准备。 祝你一切顺利!因为我以前有参加过其他认证考试的经验,我觉得数据工程师认证整体相对简单。在考试结束后我又回顾了一下所有的问题,方便后期提醒我覆盖的知识点,我觉...翻译 2019-03-06 14:46:44 · 2498 阅读 · 0 评论 -
关于机器学习工程的最佳实践
本文档旨在帮助已掌握机器学习基础知识的人员从 Google 机器学习的最佳实践中受益。它介绍了一种机器学习样式,类似于 Google C++ 样式指南和其他常用的实用编程指南。如果您学习过机器学习方面的课程,或者拥有机器学习模型的构建或开发经验,则具备阅读本文档所必需的背景知识。术语在我们讨论有效的机器学习的过程中,会反复提到下列术语:实例:要对其进行预测的事物。例如,实例可以是...转载 2019-03-06 11:45:26 · 862 阅读 · 0 评论 -
Bobo老师机器学习笔记第九课-PR曲线和ROC曲线
在上篇文章中,我们已经概述了PR曲线。现在做个简单的回归1、什么是PR曲线? PR曲线是精准率(Precision)和召回率(Recall)的缩写,精准率表示在预测的关注事件中,其中预测正确的有多少。 Precision = TP / (TP + FP)召回率表示在实际的关注事件中,正确预测出来了有多少。 Recall = TP / (FN + TP)然后以recall为...原创 2018-12-10 18:43:10 · 705 阅读 · 2 评论 -
Bobo老师机器学习笔记第七课-PCA在人工智能领域应用-特征脸
问题1: 什么是特征脸?特征脸(Eigenface)是指用于机器视觉领域中的人脸识别问题的一组特征向量,就是我们以前讲过的由前N个主成分组成的。每一个特征脸代表了一个主成分。 如下图:X代表由m个人组成,提前脸上n个特征的矩阵。W(k)表示前K的主成分,每一行可以理解代表人脸的一个特征。所以叫特征脸。问题2:如何获取人脸的数据库? 我们采用LFW人脸数据库,LFW (Label...原创 2018-11-08 20:44:40 · 665 阅读 · 0 评论 -
Bobo老师机器学习笔记第七课-使用PCA对MNIST数据集进行降噪
问题1:什么是MNIST数据集? MNIST 数据集来自美国国家标准与技术研究所, National Institute of Standards and Technology (NIST). 训练集 (training set) 由来自 250 个不同人手写的数字构成, 其中 50% 是高中学生, 50% 来自人口普查局 (the Census Bureau) 的工作人员. 测试集(tes...原创 2018-11-08 19:25:32 · 3507 阅读 · 0 评论 -
机器学习归一化(附Python实现源码)
# -*- coding: utf-8 -*-import inspectimport mathimport numpy as npfrom sklearn import preprocessingdef max_min_normalization(data_list): """ 利用最大最小数将一组数据进行归一化输出 x_new = (x - min)...原创 2018-09-30 16:39:45 · 3346 阅读 · 2 评论 -
机器学习入门-加载sklearn中数据并用matplotlib进行可视化
from sklearn import datasetsimport matplotlib.pyplot as pltdef get_data(): """ 从sklearn中获取鸢尾花的数据 :return: 鸢尾花数据的字典,字典中包括的key有:【'data', 'target', 'target_names', 'DESCR', 'feature_nam...原创 2018-10-09 10:30:22 · 2076 阅读 · 0 评论 -
Bobo老师机器学习笔记-数据归一化
实现算法:def normalizate_max_min(X): """ 利用最大和最小化方式进行归一化,过一化的数据集中在【0, 1】 :param X: :return: """ np.asarray(X, dtype=float) if len(X.shape) == 1: normalizate_ar...原创 2018-10-15 16:28:05 · 525 阅读 · 0 评论 -
简单线性回归-最小二乘法推导过程
最近学习线性回归,自己推导了一下最小二乘法。 其他参考文章:https://blog.csdn.net/chasdmeng/article/details/38869941?utm_source=blogxgwz0https://blog.csdn.net/iterate7/article/details/78992015要是你在西安,感兴趣一起学习AIOPS,欢迎加入QQ群 ...原创 2018-10-18 10:21:29 · 4081 阅读 · 0 评论 -
bobo老师机器学习笔记-第三课:机器学习的基本工具
原创 2018-10-08 13:12:37 · 502 阅读 · 0 评论 -
bobo老师机器学习笔记-第四课:KNN算法
自己参考Bobo老师写得代码:主要分为四个文件: knn.py中实现KNN算法、model_selection.py封装了样本数据的一些工具方法,比如切分为训练集和测试集;metrics用来对模型进行评估、client用来调用算法进行运行# -*- encoding: utf-8 -*-"""实现KNN的分类算法"""import numpy as npfrom mat...原创 2018-10-13 15:36:09 · 717 阅读 · 0 评论 -
bobo老师机器学习笔记--机器学习基础思维导图
原创 2018-09-28 08:21:56 · 583 阅读 · 0 评论 -
机器学习入门-思维导图
特别说明:该图从https://blog.csdn.net/wlkdb/article/details/80740882 转载过来整体觉得写得非常全面,可以作为后续的参考转载 2018-09-14 20:08:03 · 1731 阅读 · 0 评论 -
Bobo老师机器学习笔记第五课-多元线性回归
思维导图学习笔记自己参考BoBo老师课程讲解实现:# -*- coding: utf-8 -*-import numpy as npfrom metrics import r2_scoreclass LinearRegression(object): def __int__(self): self.coef_ = None # 表示系数 ...原创 2018-10-19 10:14:59 · 547 阅读 · 0 评论 -
Bobo老师机器学习笔记第五课-简单线性回归
课程地址:https://coding.imooc.com/class/169.html最小二乘法的推导博客点击此处代码实现(参考Bobo实现,如果要看BoBo老师源代码,请点击此处):# -*- encoding: utf-8 -*-"""实现简单的线性回归,自己实现SimpleLineRegession1过程中的2个错误:1、deno += (x - x_mean) ...原创 2018-10-16 17:53:23 · 369 阅读 · 0 评论 -
Bobo老师机器学习笔记第七课-sklearn中PCA的用法
问题1: PCA在sklearn中的哪个模块?答:PCA在sklearn的decomposition模块中。通过from sklearn.decomposition import PCA可以导入PCA。sklearn.decomposition模块包括矩阵分解算法,包括PCA,NMF或ICA。 该模块的大多数算法可以被视为降维技术。官网介绍问题2:在利用PCA算法中,用什么指标来判断一个特...原创 2018-11-07 22:19:47 · 17786 阅读 · 5 评论 -
Bobo老师机器学习笔记第七课-如何通过PCA实现高维数据向低维数据的转换
在上一篇博客中我们总结如何求出前N个主成分, 这篇博客中我们主要讲述如何通过PCA实现高维数据向低维数据的转变。 高维数据向低维数据的转变的核心是重新建立新的坐标系,而这个坐标系就是前K个主成分构成矩阵。所以问题简化为如何通过高位矩阵和前K主成分矩阵,找出新坐标下的地位矩阵首先假设数据X和前K个主成分我们已经求得如下:转换公式其实很简单,如下:从上图可以看到X乘以W的转置矩...原创 2018-11-04 19:25:06 · 1910 阅读 · 0 评论 -
Bobo老师机器学习笔记第七课-如何求得前N个主成分
在上一篇博客中B oBo老师介绍了主成分分析法的原理,以及用代码实现了如何求得一个主成分。那这篇文章中我们主要讲述如何求得前N个主成分,以及如何用代码实现。 1、如何求取前N个主成分? 主要方法是 数据进行改变,将数据在第一个主成分上的分量给去掉,然后在新的数据上求取第一主成分, 而在新数据的第一主成分其实就是原来数据的第二主成分,那么如何求取新数据呢,如下图。 上图中X‘就是...原创 2018-11-04 16:42:02 · 438 阅读 · 0 评论 -
Bobo老师机器学习笔记第七课-主成分分析法
思维导图笔记算法原理推导过程代码实现# -*- coding: utf-8 -*-import numpy as npimport matplotlib.pyplot as plt# 创建一个只有2个特征的测试数据X = np.empty((100, 2))X[:, 0] = np.random.uniform(0., 100.0, size=100)# ...原创 2018-11-01 12:45:05 · 437 阅读 · 0 评论 -
Bobo老师机器学习笔记第六课-梯度下降法在线性回归中的应用
在上一篇博客中大概介绍了一下梯度下降法,那么梯度下降法在线性回归中如何更好的应用了,本篇博客做一介绍。在BoBo老师的课程中,梯度下降法主要讲了2中,批量梯度下降法(Batch Gradient Descent)和随机梯度下降法(Stochastic Gradient Descent)。 一、理论介绍1、批量梯度下降法(Batch Gradient Descent)损失函数以及未使...原创 2018-10-26 18:03:28 · 581 阅读 · 0 评论 -
Bobo老师机器学习笔记第六课-梯度下降法
思维导图笔记数学基础链接:为什么梯度方向是函数值增大最快的方向为什么沿着梯度方向函数值上升的最快?为什么梯度反方向是函数值下降最快的方向?练习代码# -*- coding: utf-8 -*-import numpy as npimport matplotlib.pyplot as pltplot_x = np.linspace(-1, 6, 141)plot...原创 2018-10-23 10:45:06 · 252 阅读 · 0 评论 -
Bobo老师机器学习笔记第六课-调试梯度下降法
a在用梯度下降法训练模型的时候,有时候我们要在训练前大概了解一下参数,那么怎么进行调试呢。Bobo老师分享了一种方法,我分享给大家。 1、主要思想这种思想主要是根据导数的定义,其实梯度就是多元导数对单个参数的求偏导,所以利用导数的概念也可以求出梯度。 在上图中,可以看出, 红点处的导数可以用两个蓝点的值获取。 其中是一个比较小的数字,一般可以选0.01 扩展到多元,梯度就是如下...原创 2018-10-28 19:17:12 · 273 阅读 · 0 评论 -
Bobo老师机器学习笔记第五课-线性回归算法的评估指标
评价线性回归的指标有四种,均方误差(Mean Squared Error)、均方根误差(Root Mean Squared Error)、平均绝对值误差(Mean Absolute Error)以及R Squared方法。 sklearnz中使用的,也是大家推荐的方法是R Squared方法。1、均方误差 MSEMSE的值越小,说明预测模型描述实验数据具有更好的精确度 2、均方根误...原创 2018-10-16 20:43:37 · 683 阅读 · 0 评论 -
【Tensorflow】训练多特征模型
说明:这个学习代码来自于Google的COLAB, 原链接点击here.课程目的:1、用多个特征代替单个特征,来提高模型的有效性2、调试输入数据的异常值3、用测试集验证模型是否过度拟合于验证集准备环境,如果不清楚可以看我写的第一篇博客,点击此处特征预处理:检查数据:打乱代码:california_housing_dataframe =...翻译 2019-06-27 16:18:44 · 2195 阅读 · 1 评论