机器学习之大数据集

前言

           以下内容是个人学习之后的感悟,转载请注明出处~

简介

  大数据时代已经来临,它将在众多领域掀起变革的巨浪。机器学习对于大数据集的处理也变得越来越重要。大数据

集务必会带来恐怖的计算量,不仅耗费大量资源,而且给数据处理的实时性带来巨大的挑战。

  想要解决这个难题,就需要采取以下措施:选择更加适合大数据集的算法、更加好的硬件,采用并行计算等。

  本文内容较多,建立以下目录,方便浏览:

  • 批量梯度下降法
  • 随机梯度下降法
  • 微型批量梯度下降法
  • 判断收敛
  • 选择学习速率α
  • 在线学习
  • map readuce

批量梯度下降法

  以线性回归为例,如果m很大,每次循环都得进行m次求和,计算量非常大,不建议。

随机梯度下降法

  以线性回归为例,随机梯度下降法采用单次代价函数cost,每次迭代θ,不需要执行那么多次加法,计算量小很多。

  注意:样本需要随机打乱。

微型批量梯度下降法

  以线性回归为例,设样本数量m=1000,小批量数b=10,即每次迭代只需10次叠加,计算量也很少。

判断收敛

  之前数据量很少的时候,我们都是直接判断代价函数J(θ),只要其不再减少则收敛。然后在数据量很大的情况下,如

果实时监控代价函数,必然带来巨大的计算量。其实,我们可以每隔1000次计算一下代价函数cost,将其画成曲线,取其

低谷处为收敛,若出现曲线趋势递增,则表明发散。(图中的细小起伏波纹是噪音导致)

                      

选择学习速率α

  我们选择随机梯度下降法来处理大数据,虽然可以达到减小计算量的效果,但是并不能准确地达到极值点,有些人为

了尽量逼近极值点,设置α=常数1/(迭代次数+常数2)。

  虽然无法达到极值点,但是也相差不多,所以一般α取常数即可。

在线学习

  很多情况下,数据是源源不断地传输过来,而且我们要时常更新一些信息,这时就需要使用在线学习。

  在线学习是没输入一个样本都会计算下误差,调整一下参数,是基于样本的。假设有m个样本

在线学习的过程是先输入样本,然后调整参数,接着再输入,再调整参数,这样持续到最后一个样本。这样也就导致了在

线学习没有并行性,一般在使用在线学习时会随机打乱训练样本的顺序,这样可以 有效避免陷入局部最小值。在线学习的一个优点是能够追踪

训练数据小的改变。在线学习一般用于实时产生数据的web网站等(流数据)。

  在线学习有两个优点:

  • 在线学习容易执行
  • 对大规模和困难模式分类问题能提供有效解

map readuce

  以批量梯度下降法为例,将m=400的数据集分为4部分,分别由4台电脑处理。如下图所示:

  此外,你也可以用多核电脑进行并行计算。

以上是全部内容,如果有什么地方不对,请在下面留言,谢谢~

时间: 2024-10-11 06:13:55

机器学习之大数据集的相关文章

机器学习十大算法之KNN(K最近邻,k-NearestNeighbor)算法

机器学习十大算法之KNN算法 前段时间一直在搞tkinter,机器学习荒废了一阵子.如今想重新写一个,发现遇到不少问题,不过最终还是解决了.希望与大家共同进步. 闲话少说,进入正题. KNN算法也称最近邻居算法,是一种分类算法. 算法的基本思想:假设已存在一个数据集,数据集有多个数值属性和一个标签属性,输入一个新数据,求新数据的标签. 步骤如下: 先将新数据拷贝n份,形成一个新的数据集: 逐行计算新数据集与原数据集的距离: 按距离长度排序后,统计前K个数据里,那个标签出现的次数最多,新数据就标记

机器学习之sklearn数据集

数据集划分 机器学习一般的数据集会划分为两个部分: 训练数据:用于训练,构建模型 测试数据:在模型检验时使用,用于评估模型是否有效 sklearn数据集划分API sklearn.model_selection.train_test_split x 数据集的特征值 y 数据集的标签值 test_size 测试集的大小,一般为float random_state 随机数种子,不同的种子会造成不同的随机采样结果.相同的种子采样结果相同. return 训练集特征值,测试集特征值,训练标签,测试标签(

机器学习九大算法---回归

机器学习九大算法---回归 转自:http://blog.csdn.net/xiaohai1232/article/details/59551240 回归分析即,量化因变量受自变量影响的大小,建立线性回归方程或者非线性回归方程,从而达对因变量的预测,或者对因变量的解释作用. 回归分析流程如下: ①探索性分析,画不同变量之间的散点图,进行相关性检验等,了解数据的大致情况,以及得知重点关注那几个变量: ②变量和模型选择,: ③回归分析假设条件验证: ④共线性和强影响点检查: ⑤模型修改,并且重复③④

机器学习3《数据集与k-近邻算法》

机器学习数据类型: ●离散型数据:由记录不同类别个体的数目所得到的数据,又称计数数据,所 有这些数据全部都是整数,而且不能再细分,也不能进一步提高他们的精确度. ●连续型数据:交量可以在某个范围内取任一数,即变量的取值可以是连续 的,如,长度,时间.质量值等,这类整数通常是非整数,含有小数部分. 注:只要记住一点,离散型是区间内不可分,连续型是区间内可分 机器学习算法分类●监督学习(预测) 分类 : k-近邻算法.贝叶斯分类.决策树与随机森林.逻辑回归.神经网络 回归 : 线性回归.岭回归 标注

LibRec: 基于机器学习的大数据推荐系统

简介: LibRec 是领先的推荐系统Java开源算法工具库,覆盖了70余个各类型推荐算法,有效解决评分预测和物品推荐两大关键的推荐问题.推荐系统是机器学习和大数据技术的经典实际应用,旨在提供高效准确的个性化物品推荐,是现代Web应用的重要组件. 项目结构清晰,代码风格良好,测试充分,注释与手册完善.目前项目使用GPL3.0协议开源在github中,欢迎大家试用. Librec: http://www.librec.net/ GithubRepo:  https://github.com/guo

轻松看懂机器学习十大常用算法

轻松看懂机器学习十大常用算法 通过本篇文章可以对ML的常用算法有个常识性的认识,没有代码,没有复杂的理论推导,就是图解一下,知道这些算法是什么,它们是怎么应用的,例子主要是分类问题. 每个算法都看了好几个视频,挑出讲的最清晰明了有趣的,便于科普. 以后有时间再对单个算法做深入地解析. 今天的算法如下: 决策树 随机森林算法 逻辑回归 SVM 朴素贝叶斯 K最近邻算法 K均值算法 Adaboost 算法 神经网络 马尔可夫 1. 决策树 根据一些 feature 进行分类,每个节点提一个问题,通过

推荐文章:机器学习:“一文读懂机器学习,大数据/自然语言处理/算法全有了

PS:文章主要转载自CSDN大神"黑夜路人"的文章:          http://blog.csdn.NET/heiyeshuwu/article/details/43483655      本文主要对机器学习进行科普,包括机器学习的定义.范围.方法,包括机器学习的研究领域:模式识别.计算机视觉.语音识别.自然语言处理.统计学习和数据挖掘.这是一篇非常好的文章,尤其感学原文作者~          http://www.thebigdata.cn/JieJueFangAn/1308

一文读懂机器学习,大数据/自然语言处理/算法全有了……

原文地址 http://www.open-open.com/lib/view/open1420615208000.html http://www.cnblogs.com/subconscious/p/4107357.html 引论 在本篇文章中,我将对机器学习做个概要的介绍.本文的目的是能让即便全然不了解机器学习的人也能了解机器学习.而且上手相关的实践.这篇文档也算是 EasyPR开发的番外篇.从这里開始.必须对机器学习了解才干进一步介绍EasyPR的内核.当然,本文也面对一般读者.不会对阅读有

机器学习十大常用算法

机器学习十大常用算法小结 机器学习十大常用算法小结 通过本篇文章可以对ML的常用算法有个常识性的认识,没有代码,没有复杂的理论推导,就是图解一下,知道这些算法是什么,它们是怎么应用的,例子主要是分类问题. 每个算法都看了好几个视频,挑出讲的最清晰明了有趣的,便于科普.以后有时间再对单个算法做深入地解析. 今天的算法如下: 决策树 随机森林算法 逻辑回归 SVM 朴素贝叶斯 K最近邻算法 K均值算法 Adaboost 算法 神经网络 马尔可夫 1. 决策树 根据一些 feature 进行分类,每个