了解人工智能之基础概念-基本概念问答

在关注了机器学习一段时间以后,最近我开始投入到这个领域的研究中。 去年,我开始学习自然语言处理的相关知识,并撰写了一些这方面的文章。 同时我开始更广泛地接触机器学习理论,并主要专注于文本理解和文本处理。周围一些对人工智能有兴趣的朋友和同事时常会问我一些相似的问题,而我尽可能地就我所知道的给予他们回答。因为在理解以及真正运用那些高深的数学知识之前,还要具备一些必要的基本概念。因此我也越来越意识到普及这些基础知识的重要性和必要性。

“人工智能,机器学习,神经网络,深度学习,到底有啥区别”,这是我常常被问及的一个话题。人工智能,机器学习,神经网络,深度学习,它们是具有不同含义的四个术语。不过人们往往把它们交替使用。 就我的理解,这样的互换在大多数情况都没有太大的错误。不过准确的区分它们可以帮助我们了解行业的现状与发展方向。

人工智能(AI-Artificial intelligence )就是让计算机帮助人类解决问题,它可以被看成是这个领域的总称。 我将它区别于软件工程。在软件工程中,我们更专注于如何编程,从而让计算机执行某项任务。在今天,人工智能几乎包含现实世界的方方面面,毫不夸张的说人工智能已经无处不在了。随着现代化带来的便利,有些已经被我们习以为常的事物,已经不会被大家当成是人工智能了。比如,路径导航,联想输入,全文搜索等,这些我们日常生活中常常用到的功能,在几十年前它们就属于人工智能的研究方向。而现在,这些技术只是被当成理所当然的了。(动物研究中也有类似的趋势,“能够使用工具”曾经被认为是智人的定义之一,但是当我们发现“章鱼也能打开罐子”或者“乌鸦竟能解决字谜”时,智人的这个标准也随之被提升。同样,我们也可以认为人工智能主要是专注于那些计算机还不能熟练解决的问题。)

机器学习(Machine Learning)我们可以把它看作人工智能的一个子集。 其中的核心是“学习”,而不是通过人来教会机器完成某项工作。机器学习系统是通过大量的样本对计算机进行训练,从而使机器获取解决问题的能力,而不是直接告诉机器解决某个问题的方法。

我们可以把训练机器学习系统比作教小朋友学习:我们提供许多例子来对儿童进行训练,并给他们足够的反馈信息,让他们知道是对还是错。 一个更好的类比是训练警犬 - 特别是训练它们做一些人类能力范围之外的任务,比如甄别炸弹等危险品。 我们对警犬进行很多的训练,但是我们并不能准确地告诉它们如何做。我们能做的只是每当他们找到目标以后,给予相应的奖励。之后,它们就知道了哪些特征对它们来说是可以获得奖励的,而这些反馈的结果等同于“找到了炸弹”。

在机器学习之前,人工智能(那时人们通常称其为专家系统)可能已经很“聪(wan)明(shan)”了,但其背后的工作原理是我们已经明确地告诉它们一切必要的知识。 专家系统就好比对照着一份庞大的列表清单来进行工作。我们不可否认,使用这样的清单是非常有效的决策方式,但是构建这样一份完备的清单是非常耗时的。同时这类清单只能狭隘地解决一个特定领域的问题:比如诊断某一类疾病或对某种型号的飞机进行安全检查。

而在没有指导的情况下提取相关特征的能力是机器学习革命性的核心。 通过建立一组仅能由机器识别的特征,机器学习系统就能用这些特征对目标示例进行泛化。比如,通过一组猫的图片与狗的图片让机器学习进行学习,提取猫与狗的不同特征,从而构建出分类网络。这个分类网络就能够对测试图片(未识别过的新图片)进行相同的任务,分辨出图片中的是狗还是猫。就目前的发展来看,我们完全可以将机器学习和人工智能划上等号。 虽然专家系统和类似的一些方法仍然有其存在的意义,但我们已经不把它们称为人工智能了,就像前面提到的门槛已经变高了。

神经网络(Neural networks)是目前实现机器学习比较有效的方法之一。虽然现在“神经网络”的热度很高,但机器学习并非一定要使用神经网络,使用其他看似普通的架构也能达到不错的效果。如果没有一点相关的知识,想要解释清楚到底什么是神经网络是有难度的,而我在这个系列之后的文章中会有涉及具体的细节。 概括的说,神经网络是由非常简单的组件组成的复杂系统,它们将单个任务分解成多个子任务进行学习。某种程度上来说神经网络是借鉴了真正的神经元的工作模式,但我认为从长远来看,人工智能系统远达不到真正的人脑能力。就像飞机的翅膀模仿的是鸟类,但目前飞机的翅膀远远达不到鸟类翅膀的功能。

深度学习(Deep learning是指一类神经网络。 它有着特定的技术含义,但如今也成了这个领域的流行语。 “深”,这里指的是网络架构具有多层结构。(三层我们就称为“深”。而一层,我们则称之为“浅”)。 实际工作中,我们发现深层网络可以比单层网络能更有效地进行学习和推理。通过将虚拟神经元堆叠成层次结构,我们可以表现更多样本的特征。

自信地谈论人工智能

这里是一些关于人工智能的描述,它们能帮你在与朋友们闲聊人工智能时建立一点信心:

  • 机器学习是一种人工智能,它的核心是通过大量的样本学习来发现其中的某些模式。
  • 人工智能系统既可以是授以于鱼(直接告诉答案),也可以是授以于渔(解决问题的方法)。或两者兼而有之。
  • 目前大量的机器学习系统是基于神经网络的,他们利用数以百计的工作单元协同工作来解决问题。
  • 深度学习系统是神经网络结构的最新研究进展,通过深度学习,计算机可以提取出复杂的特征,这种能力有时会超过人类专家。

请参阅该系列第二篇:人工智能之分类与预测

文章原标题《AI Literacy: The basics of machine learning simple answers to common questions about AI and machine learning (part 1 of a series)》

作者:Liza Daly  软件工程师,担任过Safari 公司的CTO。涉及的领域包括机器学习,数码艺术和电子读物出版等。

译者:friday_012 审阅:

文章为简译,更为详细的内容,请查看原文

时间: 2024-12-09 07:06:20

了解人工智能之基础概念-基本概念问答的相关文章

Illustrator网格工具的基础运用及概念详解分享

给各位Illustrator软件的使用者们来详细的解析分享一下网格工具的基础运用以及概念. 解析一览: 1首先请运用矩形工具画一个长方形.无须填色,默认为白色.   2点选工具栏中的网格工具.   3用鼠标点击矩形内部,会发现添加了网格线条.(我们为方便就在画面中加了四个颜色块以便吸取颜色看效果)   4然后用直接选择工具点选此矩形,你会发现这个矩形没被点到的节点是空心的.   5当你用直接选择工具点中它的某个节点时,它就会变实心的点了,此时我们就可以来编辑它的颜色了   6选择吸管工具.  

C# 基础知识 (一).概念与思想篇

在C#中有一些我自己认为比较独特的知识点,这些知识点是我经常使用的知识,但对它们的了解还是比较少的,所以通过查找资料学习,总结了这些独特的知识点并简单叙述,第一篇主要是一些概念和思想方面的知识.(后面还有C#其他篇的文章) 一.C#概念 C#语言是从C和C++语言演变而来的,是微软创建的一门面向对象.运行在.NET Framework上的高级程序语言,是Windows的一个必要组件,包括一个称为公共语言运行时(common language runtime,CLR)的虚拟执行系统和一组统一的类库

中国人工智能学会通讯——混合智能概念与新进展

脑科学以阐明脑的工作原理为目标,近年来已成为最重要的科学前沿领域之一.脑功能计算.脑智能模仿再度成为学术界和产业界热议话题[1-4].欧盟.美国.日本相继启动了大型脑研究计划,强有力推动了人们对脑结构.脑功能和脑智能的探索和认识:另一方面,人工智能研究风起云涌,最近一个标志性事件是谷歌的AlphaGo以4:1战胜围棋世界冠军李世石[5],实现了围棋人工智能领域史无前例的突破.2016年9月斯坦福大学发布了<2030年的人工智能与生活>报告[6],全面评估了当前人工智能的进展.挑战.机遇与展望.

【Cocos2d-x】开发基础-Cocos2d-x核心概念

本篇博客讲解: 1.Cocos2d-x的核心概念 导演 导演类Director(v3.0之前是CCDirector)用于管理场景对象. (所以3.0版本和以前的最大区别(我们看到的最大区别)就是类前面的CC,3.0版本是把所以的类前缀CC都去掉了) 采用单例设计模式!(不多解释啦,不知道的朋友请搜索) auto director = Director::getInstance();//获取唯一的导演 单例模式 导演对象的职责/作用 访问和改变场景 访问Cocos2d-x的配置信息 暂停.继续和停

YUM源、磁盘基础知识 CDN概念

第1章 YUM源 1.1 什么是yum源 Yellowdog Updater, Modified 一个基于RPM包管理的字符前端软件包管理器.能够从指定的服务器自动下载RPM包并且安装,可以处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载.安装. 简单来说就是软件仓库--yum源/仓库,类似于电脑管家之类. 1.2 查看系统中有什么yum源 yum repolist 目录可以列出服务器中使用的什么yum源. [root@znix ~]# yum repolist Loaded

Emit学习-基础篇-基本概念介绍

之前的Hello World例子应该已经让我们对Emit有了一个模糊的了解,那么 Emit到底是什么样一个东西,他又能实现些什么功能呢?昨天查了点资料,大致 总结了下,由于才开始学习肯定有不完善的地方,希望大家能够批评指正. 1.什么是反射发出(Reflection Emit) Emit应该是属于反射中的一个比较高级的功能,说到反射大家应该都不陌生, 反射是在运行时发现对象的相关信息,并且执行这些对象(创建对象实例,执行 对象上的方法).这个功能是由.NET的System.Reflection命

【SHELL 编程基础第一部分】第一个SHELL脚本HELLOSHELL及一些简单的SHELL基础书写与概念;

本站文章均为 李华明Himi 原创,转载务必在明显处注明:  转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/shell/759.html 本章节分享Shell 学习篇,那么对于Shell 简单介绍下,对于Shell来说,大家可以理解Shell 是一个命令解释器,类似于DOS下的command.com.它接收用户命令(如ls等),然后调用相应的应用程序.另外一点它可以使用用户的缺省凭证和环境执行 shell.传统意义上的shell指的是命令行式的sh

《中国人工智能学会通讯》——1.2 问答与智能信息获取

1.2 问答与智能信息获取 问答系统作为智能表征的研究领域,几十年来一直受到学术界的关注,国际评测 TREC 历经十余年对问答系统从几个方面进行了评测[4] .问答系统的发展杂问题的发展过程,逐步具有了更多的智能行为特性.这个过程并不是一个单纯的直线,而是反反复复螺旋式进步.早期的问答系统虽然可以回答特定类型的问题,但是覆盖度和鲁棒性都比较差,速度也比较慢,还不能很好地应用在真实的商业系统中. 互联网大数据的产生,使问答系统在几个方面获得了改善的机会.一个是信息源数据的丰富,使得从人工构建语料库

Java多线程和并发基础面试题(问答形式)_java

本文帮助大家掌握Java多线程基础知识来对应日后碰到的问题,具体内容如下 一.Java多线程面试问题 1. 进程和线程之间有什么不同?一个进程是一个独立(self contained)的运行环境,它可以被看作一个程序或者一个应用.而线程是在进程中执行的一个任务.Java运行环境是一个包含了不同的类和程序的单一进程.线程可以被称为轻量级进程.线程需要较少的资源来创建和驻留在进程中,并且可以共享进程中的资源. 2. 多线程编程的好处是什么?在多线程程序中,多个线程被并发的执行以提高程序的效率,CPU