当前位置: 首页 > 编程日记 > 正文

6个你必须知道的机器学习的革命性的教训

加入「公开课」交流群,获取更多学习资料、课程及热招岗位等信息

作者 | James Warner

编译 | ronghuaiyang

来源 | 转载自AI公园(ID:AI_Paradise)

【导读】机器学习是未来,因为它将广泛应用于计算机和其他领域。尽管如此,开发有效的机器学习应用需要大量的“黑魔法”,这在手册中很难找到。

在机器人技术、智能家电、智能零售店、自动驾驶汽车技术等的推动下,我们正步入一个新时期。机器学习是所有这些新时代技术进步的前沿。在不久的将来,自动化机器的发展将使得机器与人类智能相当甚至超过人类智能。机器学习无疑是下一个“大”事件。而且,人们相信,未来的大多数技术都将与之挂钩。


为什么机器学习这么重要?

机器学习非常重要,因为它有助于预测人类无法预测的行为和模式。机器学习有无数非常有用的实际应用。通过机器学习,有可能管理以前令人困惑的场景。在理解了具有高效泛化能力的机器学习模型之后,可以使用它做出相应的重要决策。机器学习使个人能够根据大量场景做出决策。显然,现在还不能编写出能够用于所有新场景的代码。

人工智能能够执行各种需要学习和判断的活动。从自动驾驶汽车、投资银行、许多医疗相关功能到招聘,人工智能已经被用于完成不同领域的各种任务。


6 个关于机器学习的革命性教训

机器学习算法能够简单地从场景中泛化,得到执行必要任务的方法。这样更切实可行和而且具有成本效益,然而,手工编程并不那么具有成本效益和可行性。“可用数据”数量的增加肯定会导致出现更多的与获取数据相关的问题。因此,机器学习是未来,因为它将广泛应用于计算机和其他领域。尽管如此,开发有效的机器学习应用需要大量的“黑魔法”,这在手册中很难找到。

以下是关于机器学习最有价值的 6 个经验教训:


1. 泛化是核心

机器学习最基本的特征之一是,算法必须从训练的数据中泛化出该领域中所有不可见场景的完整领域,以便在使用模型时能够做出正确的推断。这个泛化的过程需要我们用来训练模型的数据有一个我们希望算法去学习的,像样的和可靠的映射。数据的质量越好,表达能力越高,模型就越容易理解从输入到输出的未知的和基本的“真实”映射。泛化是指从某种精确的东西转向某种广泛的东西。

机器学习算法是从历史场景中自动简化的技术。它们有能力在更大的数据量和更快的速度上进行泛化。

所有机器学习初学者最常犯的错误就是对训练数据进行测试,然后看起来像是成功了。如果在新数据上尝试所得到分类器,它通常不会比随机猜测更好。所以,如果你想要开发一个分类器,一定要留一些数据做测试。同时,用你的分类器对测试数据进行测试。


2. 学习=表示+评估+优化

机器学习算法分为 3 个部分,表示、评估和优化

表示:数据需要以合适的算法形式输入。对于文本分类,可以从全文输入中提取特征,并将其变为 bag-of-words 的表示形式。相反,选择一种表示方法与选择它可能学习的分类器集是同义词。这个集合称为学习者的假设空间。

评估:这是一个帮助我们理解我们正在做什么的度量。需要一个评估过程来区分好分类器和不好的分类器。如果你可以给测试集预测出一个数字,例如测试集的大小为 n,在这里,你可以计算平均绝对误差,甚至可以选择使用均方根误差。

优化:它是指寻找方法来选择不同的技术来优化它的过程。例如,我们可以简单地尝试假设空间中的每一个假设。我们也可能选择使用更智能的技术来尝试最有利的假设。同时,当我们进行优化时,我们可以利用评价函数来了解这个特定的假设是否成立。如果评价函数有多个最优值,则优化技术允许用户了解更多关于所创建分类器的信息。首先,初学者应该从现成的优化器开始,然后再转向定制设计的优化器。


3. 只有数据是不够的!

泛化是主要目的,但主要关注的是,无论数量多少,仅有数据是不够的。但是,幸运的是,我们想掌握的功能并不是从所有可计算的功能中统一得出的!即使是最一般的假设(包括平滑度,具有类似类的相似示样本,不充分的依存关系或受限制的复杂度)也足以正常运行,这是使机器学习如此强大的主要原因之一。基本上,所有初学者都联合了解大数据来制作应用程序。


4. 小心过拟合

如果数据不充分,不能完全训练好一个分类器,我们可能最终得到的是只在训练集上有用的分类器。这个问题被称为 overfitting,它被认为是 ML 的一个麻烦事。发现自己的模型过拟合了是有用的,但并不能解决这个问题。你得想办法摆脱它。幸运的是,你有很多选择去尝试。交叉验证有助于防止过拟合。训练更多的数据,正则化,删除特征,早期停止,集成是一些其他的防止过拟合的方法。


5. 特征工程是成功的关键

特征工程是利用数据的核心领域知识来开发使机器学习算法更好工作的特征的技术。如果处理得当,它可以通过从原始数据中开发特征来增强算法的预测能力。这些特征简化了整个机器学习过程。利用几个独立的特征,很好地与类相关,然后让学习变得容易。


6. 准确性&简单性是不一样的

奥卡姆剃刀(Occam’s razor)精辟地指出,实体的增加不应超出要求。这意味着两个分类器有相似的训练误差,两个分类器中较简单的可能有最低的测试误差。每一个机器学习项目都应该以你希望回答的业务问题为目标。你应该从制定分析的主要成功原则开始。

应用 Occam’s razor 并选择最容易解释、阐明、部署和管理的模型是构建强大的机器学习程序的关键步骤。建议选择最简单的、足够精确的模型,但是,要确保你深入了解这个问题,以了解“足够精确”在实践中意味着什么。

英文原文:

https://bigdata-madesimple.com/6-revolutionary-things-to-know-about-machine-learning/

(*本文为AI科技大本营转载文章,转载联系原作者)

精彩公开课

推荐阅读

  • 专访ClickHouse创始人:数据库竞争依旧火热,技术整合势在必行

  • 商汤联手华科:提出文字检测模型GNNets,新颖模块可解决几何分布难题

  • 微信地位,牢不可破?

  • 为什么要学数据结构?| 原力计划

  • 支付宝也崩溃,中心化支付体系尚能饭否?

  • Android 10 vs iOS 13,逐鹿手机操作系统之王!

  • 搞定面试算法系列 | 分治算法三步走

  • 公司倒闭,39 岁重新找工作,薪资不到 8000,太残酷!

  • 摩托罗拉的百年沉浮

  • 底层公链行业报告:国产公链未来应积极协助政企开发联盟链;跨链和分层等技术取得较大进展,链链互通将成为现实

  • 你点的每个“在看”,我都认真当成了AI

相关文章:

vim ctags使用方法

一、用好系统自带软件ctags大部分的unix系统都有ctags软件,它能跟vim很好地合作。用途:生成c语言的标签文件,实现相关c文件之间的跳转。用法:1.生成标签文件在当前目录下(运行$提示符后面的命令): $ctags -R .-R表示recursive,递归,为当前目录…

pybind11介绍

pybind11是一个轻量级的仅头文件库,主要用于创建现有C代码的Python绑定,它的源码在https://github.com/pybind/pybind11,license为BSD,最新发布版本为2.9.1。 可将pybind11库视为Boost.Python的一个小型自包含版本(Think of this …

改善AI性别偏见的4种方法 | CSDN博文精选

加入「公开课」交流群,获取更多学习资料、课程及热招岗位等信息作者 | Josh Feast翻译 | 王子龙校对 | 王琦本文阐述导致AI偏见的原因并提出应用的解决方案。任何对AI偏见的审查都需要意识到一个事实:这些偏见主要源于人类固有的偏见。我们创建、训练的模…

C#程序调用外部程序

/**编程语言:VisualStudio.NetC#(Beta2)*作者:迪泊威*功能:通过C#程序调用Windows记事本程序编辑一个*名为test.txt的文本文件。**在整个程序中System.Diagnostics.Process.Start(Info)*为主要语句。*如果只是单独执行一个外部程序&#xff0…

svn 同步脚本

REPOS"$1"REV"$2"export LANGen_US.UTF-8/usr/bin/svn update /home/wwwroot/yswifi --username yangxc --password yangxc >>/tmp/svn_hook_log.txtecho who am i,$REPOS,$REV >> /tmp_hook_var.txt转载于:https://www.cnblogs.com/xkcp008/p…

DevOps火爆,招人却太难了!

DevOps一词最近两年人们谈的比较多,很多人简单地理解为“Dev”“Ops”,是否将开发人员和运营人员放在一个部门就完事了呢?其实DevOps是一组过程、方法与系统的统称,用于促进开发、技术运营和质量保障部门之间的沟通、协作与整合。…

网络数据包分析软件Wireshark简介

Wireshark是被广泛使用的免费开源的网络协议分析软件(network protocol analyzer)或网络数据包分析软件,它可以让你在微观层面上查看网络上发生的事情,它的功能是截取网络数据包,并尽可能显示出最为详细的网络数据包信息。它的源码在https://…

SEO研究:网站结构

在衡量所有权重之间,网站结构大概占到30%,这也是很多网站排名不好,或者有站长根本不用优化就能获得很好排名的原因。说到结构必须明白两个概念,一个是物理概念,就是文件存放的路径,另一个是逻辑结构。比较好的情况是逻…

form实现登陆操作

这几天想写个保存cookies的网页&#xff0c;先写了个登陆界面&#xff0c;奈何点击登陆后总是无法正常跳转。经查阅资料和询问高手&#xff0c;总算得以解决。 原错误代码如下&#xff1a; <html> <title>SaveCookies</title> <head> <script>fu…

深度学习中的优化算法之BGD

之前在https://blog.csdn.net/fengbingchun/article/details/75351323 介绍过梯度下降&#xff0c;常见的梯度下降有三种形式&#xff1a;BGD、SGD、MBGD&#xff0c;它们的不同之处在于我们使用多少数据来计算目标函数的梯度。 大多数深度学习算法都涉及某种形式的优化。优化指…

死宅福音:乐高不怕多,智能分拣机帮你归类

作者 | 神经小兮来源 | HyperAI超神经&#xff08;ID&#xff1a;HyperAI&#xff09;【导读】乐高现在几乎已经是优质玩具的代名词&#xff0c;该品牌旗下最为知名的&#xff0c;莫过于乐高积木。其丰富的形状与多样的玩法&#xff0c;无论大人小孩都喜欢。但是&#xff0c;这…

优化eclipse启动速度

< DOCTYPE html PUBLIC -WCDTD XHTML StrictEN httpwwwworgTRxhtmlDTDxhtml-strictdtd> 最近发现eclipse越来越慢&#xff0c;影响了开发使用速度。经过处理&#xff0c;快了一些&#xff0c;希望给大家一些提示。 1&#xff0c;取消系统的自动折叠 操作方法&#xff1a;…

一个基于J2EE的web应用程序运行起来需要什么?

2019独角兽企业重金招聘Python工程师标准>>> Eclipse &#xff1f;IDEA&#xff1f;这是目前市面上最常用的开发工具啦&#xff0c;我的理解是这些只是开发工具&#xff0c;是为了方便开发的&#xff0c;而不是web应用程序运行起来必须的东西。 为什么会有些这方面东…

深度学习中的优化算法之MBGD

之前在https://blog.csdn.net/fengbingchun/article/details/75351323 介绍过梯度下降&#xff0c;常见的梯度下降有三种形式&#xff1a;BGD、SGD、MBGD&#xff0c;它们的不同之处在于我们使用多少数据来计算目标函数的梯度。 大多数深度学习算法都涉及某种形式的优化。优化指…

华科提出目标检测新方法:基于IoU-aware的定位改进,简单又有效

作者 | 周强来源 | 我爱计算机视觉&#xff08;ID&#xff1a;aicvml&#xff09;【导语】近日&#xff0c;华中科技大学发表了一篇新论文《IoU-aware Single-stage Object Detector for Accurate Localization》&#xff0c;在此论文中作者提出了一种非常简单的目标检测定位改…

js init : function ()

这个init外面应该还有一层&#xff0c;比如 var a { init: function () {...}, exit: function () {...} } 这样的话&#xff0c;可以用a.init()来调用这个函数&#xff0c; <script type"text/javascript">var obj{init:function(str){alert("init调用&…

Google提出移动端新SOTA模型MixNets:用混合深度卷积核提升精度

作者 | Google译者 | 刘畅编辑 | Jane出品 | AI科技大本营&#xff08;ID&#xff1a;rgznai100&#xff09; 【导语】目前&#xff0c;深度卷积&#xff08;Depthwise convolution&#xff09;在追求高性能的卷积网络中的应用变得越来越流行&#xff0c;但很多研究忽略了其内核…

桌面窗口的一些发现

最近因业务需要&#xff0c;玩了一下全屏问题。后来&#xff0c;对windows xp sp2的桌面窗口产生了兴趣。写了段代码&#xff0c;玩了一下。同时结合网上的一些知识&#xff0c;发现了以下一些现象。&#xff08;转载请指明出处&#xff09; 首先窗口名有#32769、Progman、Shel…

三说输入法[转]

如果我愿意&#xff0c;我会不停地说下去&#xff0c;直到烦死你们&#xff0c;谁让我用的输入法快呢。 我说了几句搜狗或股沟输入法的坏话&#xff0c;引来一些人的争论&#xff0c;大大在我预料之中&#xff0c;这年头&#xff0c;当你想说一些知名度较高的人或物的坏话时&am…

回忆之城市搜索

直接看效果点这里 HTML <!DOCTYPE html> <html> <head lang"zh-CN"><meta charset"utf-8"><title> 城市搜索 </title><link rel"stylesheet" href"ui-departure.css"> </head> <b…

ATL::CStringA和std::string之间转换的一些误区

对于刚做windows下VC的开发同学&#xff0c;类型转换应该是一个令其很苦恼的问题。我刚写工作的时候&#xff0c;也为这类问题不停的在网上搜索转换方法。最近工作中遇到一个“神奇”的bug&#xff08;一般“神奇”的问题往往是低级错误导致的&#xff09;&#xff0c;最后跟踪…

Windows XP鲜为人知的70招

一、Windows XP优化恢复Windows经典界面很多人安装了Windows XP后的第一感觉就是Windows变得漂亮极了。只是可惜美丽的代价要耗掉我们本就不富裕的内存和显存。要想恢复到和经典Windows类似的界面和使用习惯&#xff0c;请在桌面上单击鼠标右键&#xff0c;选择“属性”命令即可…

Github开源趋势榜Top 1:英伟达升级发布二代StyleGAN,效果更完美

整理 | Jane出品 | AI科技大本营&#xff08;ID&#xff1a;rgznai100&#xff09;2018 年底&#xff0c;英伟达借鉴风格迁移的思路&#xff0c;提出当时最先进的无条件生成模型—— StyleGAN &#xff0c;吸引了大家广泛关注。随后&#xff0c;代码开源&#xff0c;一位 Uber …

百度地图 ip查询 service

官方文档&#xff1a;http://developer.baidu.com/map/wiki/index.php?titlewebapi/ip-api 请求 一个例子&#xff1a; http://api.map.baidu.com/location/ip?ak3GFi2F04wXaVuwmGu8fN49kL1234567890&ip180.161.128.181 返回 {"address": "CN|\u6cb3\u535…

python3编写简易统计服务器

打点这个功能总是美其名曰“帮助提升用户体验”&#xff0c;其实说白了就是记录用户做了哪些操作。目前国内很多通用软件都做了相关功能&#xff0c;像360、QQ等这样的以用户体验出众的软件&#xff0c;其打点的面自然也很广很细。当然这种“侵犯”用户隐私的事情在业内各个公司…

作价20亿美元!英特尔收购以色列AI芯片公司Habana Labs

出品 | AI科技大本营&#xff08;ID:rgznai1000&#xff09;12月16日&#xff0c;英特尔宣布以约 20 亿美元收购以色列公司Habana Labs&#xff0c;这成为英特尔在以色列仅次于 Mobileye&#xff08;153 亿美元&#xff09; 的第二大收购案。Habana Labs 成立于 2016 年&#x…

这就是奇客文化?简直太有才了!

这就是奇客文化&#xff1f;简直太有才了……

java中的char类型

2019独角兽企业重金招聘Python工程师标准>>> 一&#xff1a;char的初始化 char是Java中的保留字&#xff0c;与别的语言不同的是&#xff0c;char在Java中是16位的&#xff0c;因为Java用的是Unicode。不过8位的ASCII码包含在Unicode中&#xff0c;是从0~127的。 Ja…

[原创] 如何追踪每一笔记录的来龙去脉:一个完整的Audit Logging解决方案—Part I...

一、提出问题 在开发一个企业级 应用的时候&#xff0c;尤其在一个涉及到敏感数据的应用&#xff0c;比如财务系统、物流系统&#xff0c;我们往往有这样的需求&#xff1a;对于数据库中每一笔数据的添加、修改和删除&#xff0c;都需要有一个明确的日志&#xff0c;以便我们可…

进程间通信:同步双工管道

因为工作需要&#xff0c;需要设计出一个双工的IPC。&#xff08;转载请指明出处&#xff09;在一番比较后&#xff0c;我发现管道是比较符合我们的需求的。但是我们需求要求管道的对方是可信任的&#xff0c;而在vista以下系统是没有GetNamedPipeClientProcessId、GetNamedPip…