专栏首页AI科技评论开发 | 数据预处理和挖掘究竟该怎么做?硅谷网红告诉你

开发 | 数据预处理和挖掘究竟该怎么做?硅谷网红告诉你

Siraj Raval 作为深度学习领域的自媒体人在欧美可以说是无人不知、无人不晓。

凭借在 Youtube 上的指导视频,Siraj Raval 在全世界吸粉无数,堪称是机器学习界的网红。说他是全球范围内影响力最大的 ML 自媒体人,怕也无异议。

因此,AI 研习社联系到了 Siraj 本人,并获得授权将他最精华的 Youtube 视频进行字幕汉化,免费推送给大家。我们将不定期更新,敬请关注!

雷锋字幕组为大家最新译制了 Siraj 深度学习系列,从机器学习和神经网络架构类型到数据可视化、小样本学习等从基础到应用的技巧,争取带领希望掌握神经网络的神奇魔力和想成为深度学习工程师的大家伙早日入坑!哦不,走向巅峰!!

今天主要讲的内容是数据预处理。

(建议在 Wi-Fi 环境下观看视频,土豪随意~)

为了方便流量不足的小伙伴们在路上看,我们特意整理出了图文版:

在这个充斥着怀疑和谎言的网络世界中,数据即真相。海量的原始数据正以惊人的速度增长,其中大部分都是非结构化的,但是通过运用分析我们可以发现其中重要的规律和线索以及隐藏在数字背后的含义。今天我们将学习如何预处理数据,这是重要也最容易忽视的步骤之一,关键点如下:

  • 预处理数据集有三步:清洗、转换和简化
  • 深度学习可以自己从数据集中找到相关特征
  • PCA是常用的降维方法之一,可以通过Scikit-learn中模块操作

数据预处理的三个核心步骤是:清洗,转换,简化。

例子中的第一个数据集与音乐相关,是通过一款名为“Tag A Tune”的小游戏搜集的(玩法请自行百度)。数据集里有25,000首歌以及正确的标签。我们想以此数据集作为一个训练样本来建立一个可以区分歌曲所属标签种类的模型。

先导入Pandas来分析这个数据,通过读取CSV函数来导入数据,它将在pandas中创建一个数据框。这个数据框很容易修改,我们将它命名为newdata。将head函数中参数设置为5,可以显示数据的头5条记录。每一行都被排了序,每首歌都有一个id,每个标签的值为0或者1,代表这首歌是否有这个标签。

通过info()函数来获取关于数据的更多信息,数据大小只有38MB。每个标签都有一个简单的二元取值,幸运的是每个字段也没有空值,可以直奔第二步:数据转换。

很多标签听上去很类似,例如女歌手,女声,可以将它们统一归为一个特征"女“。我们可以为数据中的同义词创建一个二维列表,然后将它们合并到只剩第一列。对于列表中的每一组同义词,将每一特征的最大值保留下来。对于数据中的同义词,可以有效地把一组同义词合并为一列,然后删掉其他类似的词,这样可以得到更规范的特征。在数据简化过程中,我们可以删除那些不需要的信息。接下来我们可以准备模型用到的训练集和测试集。

有一点需要注意,在整个过程中我们并没有考虑哪些特征要用,哪些不用。在没有深度学习的时候,我们需要先选择合适的特征来喂一个模型。但是深度学习不需要我们再自行筛选特征了,它会根据我们放入模型的数据集,决定哪些与问题相关。在深度学习中,常说架构工程是新的特征工程。

第二个例子中的数据集是关于网络连接,网络连接要么正常,要么异常。异常连接是由于有入侵导致。我们想通过一系列特征判定网络连接正常或异常。当我们检查该数据的时候,数据中没有空值,也没有异常值。因此,可以直接跳过清理数据一步,直接进行数据转换。

数据集中数值型变量的范围差异较大,需要先将这些变量进行标准化,可以直接用Scikit-learn里面的Standard Scaler模块对数据进行标准化。标准化完毕后,接下来对数据进行简化。数据中包含很多字段,其中有相当一部分还是高度相关的。我们可以通过“降维”的方法将特征的总数减少,这样也有利于将数据在2D或3D的空间中展示,但这并不保证模型的结果将更精准,只是让我们的数据更容易理解。

一种降维的方法是PCA(Principal Component Analysis)。数据有诸多特征,缩减它们只需要三步:首先是将数据标准化,然后计算相关系数矩阵,算出特征值和特征向量后进行主成分排名。例如我们有四个特征,想通过PCA的方法将其减少至两个,一共5个步骤:

  1. 将数据标准化
  2. 计算协方差矩阵
  3. 特征分解(Eigen decomposition)
  4. 构成新投影矩阵(Projection Matrix)
  5. 通过这个矩阵来对原来数据进行转换

许多入门教程在导入数据时只教如何导入预处理过的数据,例如手写体数字或者电影评分数据,用一行代码就能搞定,但实际操作没那么简单。遇到实际问题,都需要先找到正确的数据集,最终预测的结论依赖于最初导入的数据。所谓:种瓜得瓜,种豆得豆。

Siraj Raval 何许人也?

Siraj Raval 是 YouTube 极客网红,曾任职于 Twilio 和 Meetup,客户包括 Elon Mask 和 Google,教大家如何使用机器学习开发聊天机器人、无人驾驶车、AI 艺术家等视频点击量累计数百万。

Siraj Raval 为什么这么火?

首先,当然是这位哥伦比亚大学高材生活儿好技术好,用自己特有的方式三言两语就能抛出一个原本晦涩的 ML、DL 概念,让听众细细咀嚼。再者,这家伙幽默逗比、口才便给。兴之所至常手舞足蹈,瞳仁奇光掩映,口吐智慧莲华。深度学习讲师不少,但这么风趣可亲的却不多。

延伸阅读:你在数据预处理上花费的时间,是否比机器学习还要多?

获取代码:https://github.com/llSourcell/How_to_Make_Data_Amazing

本文分享自微信公众号 - AI科技评论(aitechtalk),作者:雷锋字幕组

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-06-12

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 业界 | 苹果确认收购了一家斯坦福血统的暗数据分析公司

    AI科技评论了解,苹果近日收购了一家数据挖掘和机器学习公司LATTICE(网址Lattice.io)。这家公司的前身是斯坦福大学计算机学院的研究项目DeepDi...

    AI科技评论
  • 数据不够,是模型表现不佳的“借口”,还是真正的问题所在?

    “如果我能获得更多的训练数据,我的模型精度就会大大提高”,“我们应该通过API获得更多的数据”,“源数据质量太差,我们无法使用”。

    AI科技评论
  • CNCC 2018 | 东软集团刘积仁:进行大数据研究要有新思维

    今年的大会主题是「大数据推动数字经济(Big Data Drives the Digital Economy)」,CNCC 邀请到近 400 位国内外计算机领域...

    AI科技评论
  • 李开复看好AI创业为天使投资人支招,谷歌大牛分享处理极大复杂数据的三类实际建议 | 大咖周语录

    数据猿导读 对于大数据的概念以及大数据在各行业的应用,每个人心中都有不同的看法。小编每周都会整理大数据牛人们的精彩观点,让你在最短的时间获得最精的思想荟萃。后续...

    数据猿
  • 我国大数据发展具有独特优势及政策支持解读

    大数据是信息化发展到一定阶段的产物。随着信息技术和人类生产生活深度融合,互联网快速普及,全球数据呈现爆发增长、海量集聚的特点,对经济发展、社会进步、...

    加米谷大数据
  • 数博会特辑|总理、贵州省长和中央网信办如何分析大数据形式

    大数据文摘
  • 我们正在失去对个人数据的主权

    大数据文摘
  • 小数据更管用!

    大数据文摘
  • 中国电信灯塔大数据行业高峰论坛成功举办(8份ppt下载)

    大数据文摘
  • #后疫情时代的新思考#“数 ”战“数”决将成为各行各业的普遍趋势丨数据猿公益策划

    2020年初,突如其来的新冠疫情打乱了正常的社会节奏,全国上下集体投入到了疫情防控攻坚战之中。

    数据猿

扫码关注云+社区

领取腾讯云代金券