读天才与算法:人脑与AI的数学思维笔记05_算法的幻觉

2024-04-21 12:44

本文主要是介绍读天才与算法:人脑与AI的数学思维笔记05_算法的幻觉,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. 自下而上

1.1. 代码在未来可以自主学习、适应并进行自我改进

1.2. 程序员通过编程教会计算机玩游戏,而计算机却会比教它的人玩得更好,这种输入寡而输出众的事情不大可能实现

1.3. 早在20世纪50年代,计算机科学家们就模拟该过程创造了感知器

  • 1.3.1. 其原理是:神经元就像一个逻辑门,接收输入的信息,然后通过计算来判断是否触发并产生兴奋反应

  • 1.3.2. 通过调整权值和阈值来模拟你的行为

  • 1.3.3. 更为精细的感知器,如S型神经元,可进一步地平滑输出,而不仅限于“是”和“否”两种结果

  • 1.3.4. 归根结底,还是因为数据,感知器的学习和进化需要数据的支撑

    • 1.3.4.1. 我们可通过编程为感知器分配初始的权值和阈值,通过真实的输入数据对其进行训练,每一次错误的预测都将会作为反馈,用以促进权值的调整和修正

1.4. 过去的5年间产生了现在世界上90%的数据

  • 1.4.1. 互联网每天创建的数据可达到1EB(1018),约为2.5亿张DVD光盘所存储的数据量

  • 1.4.2. 现在,人类两天内产生的数据量,就可以媲美从“文明曙光时代”到2003年所产生的数据量的总和

1.5. 海量的数据是机器学习进入新时代最重要的催化剂

  • 1.5.1. 在此之前,一直不具备任由算法在数据之中学习、遨游的客观条件

1.6. 数据对于新的变革尤为重要,因此它也被称为“新的石油”

  • 1.6.1. 访问数据,相当于在21世纪的“油田”中进行开采

  • 1.6.2. Facebook、Twitter、谷歌和亚马逊备受瞩目,根源在于我们为其提供了免费的“石油储量”

  • 1.6.3. 严格意义上说,也不是完全免费,因为我们也在它们提供的服务中获得了数据的“交换

    • 1.6.3.1. 严格意义上说,也不是完全免费,因为我们也在它们提供的服务中获得了数据的“交换

    • 1.6.3.2. 很多人意识不到这种“交换”的重要性,不愿提供有价值的数据,因此其所得回报甚少

1.7. 机器学习的核心是在经验学习中改进算法的性能

  • 1.7.1. 对每个输出的结果进行自判断并即时调整算法公式,避免再次出错,在错误中不断学习进而得到改进

  • 1.7.2. 数据访问十分重要的原因

    • 1.7.2.1. 数据越多,可用来进行训练的样本越多,得到的经验就越丰富,算法可以在不断迭代的过程中不断完善

    • 1.7.2.2. 程序员创建的元算法遇到不同的数据,就会发展成不同的新算法

      1.7.2.2.1. 这种新方法的有效性同样震撼了整个人工智能领域,部分原因在于其底层技术并非独特的新技

  • 1.7.3. 机器学习为其开辟了一个新篇章,即算法会像我们人类一样成长并走向成熟

1.8. 在自下而上的算法设计思路下,算法可以基于训练数据自主创建决策树

  • 1.8.1. 网络上大量的训练数据

    • 1.8.1.1. 带标签的视觉数据(例如,Instagram上带评论的照片)
  • 1.8.2. 会为人工智能在视觉识别领域的迅速发展提供基本的支撑条件

2. 计算机的视觉问题

2.1. 人类大脑具备惊人的能力,可迅速处理数据并输出答案

2.2. 当看到一幅图像或一些特别的笔迹时,人类非常善于辨识出这幅图像或文字的特点,而计算机程序却不足以应对所有的变化

2.3. 通过由猫的图像组成的数据库对算法进行训练,算法逐渐建立起一个问题层次结构,它可以向一幅具有高准确度的图像发问,并将其准确地识别为猫

  • 2.3.1. 我们真正在做的是训练视觉识别的算法

  • 2.3.2. 用这些训练数据作为最好的问题类型可以训练算法,以便其区分猫和非猫的图像

  • 2.3.3. 每当算法识别错误,它将进行调整以便下次能够正确识别

2.4. 算法在大部分时间都在工作,但达不到100%,所以关键是要让其尽可能达到“最"

  • 2.4.1. 确定性算法到概率性算法的转变是一个重大的心理突破,类似于让数学家用工程师的思维方式去考虑问题

2.5. 在过去,我们都是通过苦思冥想或突发的灵感去设计一系列巧妙的问题

2.6. 机器学习会从一些我们认为可能解决问题的候选问题开始,所以不算是零起点学习

  • 2.6.1. 学习的过程就是将最初的想法逐渐优化,从而形成有效的解决方案

  • 2.6.2. 随着不断提问、回答、分析,该像素点位于身体哪个部位的答案将逐渐浮出水面

  • 2.6.3. 我们的目标是能够找到那些提供有价值的信息的问题

  • 2.6.4. 算法自己找到了最优的问题集合,但程序员并不真正清楚它是如何得到这样的结果的

    • 2.6.4.1. 他们可以查看决策树中任何一个结点及其前后结点上所询问的问题,但树中的问题超过百万个,每个问题又略有不同,所以很难采用逆向工程法得出算法具体是怎样解决问题的

2.7. 机器学习所面临的挑战之一是“过度拟合”

  • 2.7.1. 假设函数为了完美地拟合样本集,引入了过多的高次项

    • 2.7.1.1. 虽然这样做可以得到良好的样本拟合结果,但与实际情况完全偏离
  • 2.7.2. 针对训练数据提出用以区别图片的问题相对容易,但设计一个不针对特定数据的通用程序却非常困难,它需要从数据中抽象出广泛适用的规则

  • 2.7.3. 有必要减少方程的项数,以避免出现过度拟合的问题

  • 2.7.4. 过度拟合会误导你在建模时过分关注细节而错过数据呈现出的总体趋势,然后产生不符合客观规律的预测结果

3. 算法的幻觉

3.1. 新算法可以驾驭或识别的不仅仅是人类的身体

  • 3.1.1. 数码相机对图像细节的捕捉能力远超过人类大脑,但在图像识别的过程中,计算机读取到的是一个个孤立的像素点,而不是一副完整、有内容、有故事的图片

3.2. 接收到感官传递过来的信息后,人类大脑是如何将其当作一个整体看待的?

  • 3.2.1. 复制这种融合能力,一直是计算机解释图像所面对的挑战之一

  • 3.2.2. 按像素读取图像的方式,无法帮助计算机获得图像的整体信息

3.3. 由于沙漠的颜色跟人的肤色相近,而起伏的沙丘又极像裸露的身体曲线,所以很多人用作屏保的沙漠图片,有时就会被误认为是色情图片了

  • 3.3.1. 马克·斯托克斯(Mark Stokes)

3.4. 对抗图像

  • 3.4.1. 计算机科学家们一直在努力开发一些特殊类型的图片,企图用它们“欺骗”人工智能。这些特殊的图片被称为“对抗图像”

  • 3.4.2. 利用了计算机看世界的不同方式,让人工智能的“眼睛”看到了并不存在的东西,我们可以理解为人工智能产生的“视觉幻象”

3.5. LabSix

  • 3.5.1. 是一个独立运营的人工智能研究小组,由麻省理工学院(MIT)的本科生和毕业生组成

  • 3.5.2. 该团队把一幅狗的图像逐像素转换为两个在斜坡上滑雪的人,最终狗的图像在屏幕上完全消失了,但机器仍然将其识别为狗

  • 3.5.3. 麻省理工学院LabSix团队最新的研究试验表明,谷歌人工智能视觉识别系统对一只3D打印的海龟毫无辨识能力,无论以任何角度拿着这只海龟,甚至将它放置于大海等海龟应该在的环境里,其都会被识别为一支枪

    • 3.5.3.1. 点到了谷歌视觉识别的“完全死穴”

    • 3.5.3.2. 这种纹理是很巧妙地用由不断变化的来复枪图案组成的

    • 3.5.3.3. LabSix的贡献在于,无论从哪个角度看这只海龟,算法始终都会确信它看到的是一支步枪

3.6. 神奇贴纸

  • 3.6.1. 谷歌的研究人员创造了一种更适合算法口味的图像——“神奇贴纸”

  • 3.6.2. 它会导致算法忽略图片中的其他内容

  • 3.6.3. 其原理就是利用了算法会优先选择它认为对图像分类更重要的那部分像素

  • 3.6.4. 算法用于人脸识别时,它会自动过滤掉大部分背景像素

    • 3.6.4.1. 比如天空、草地、树木等
  • 3.6.5. 这种“贴纸”可以被标识为任意图像,比如一台烤面包机

    • 3.6.5.1. 无论算法正在识别的是什么图像,一旦“贴纸”进入机器的眼帘,它都会认为自己看到的就是烤面包机
  • 3.6.6. 先前的算法攻击测试绝大多数都需要事先获取被攻击对象(即被识别的图像)的大致内容,但这张“神奇贴纸”却什么都不用做

    • 3.6.6.1. 不管它试图干扰的图像里有什么,它都能正常工作

3.7. 人类不会轻易被这些黑客手段蒙骗,但这并不意味着我们可以彻底的免疫

  • 3.7.1. 魔术师们就可以利用人类大脑的潜意识行为倾向,分散我们的注意力

  • 3.7.2. 不仅算法存在视觉盲点,我们人类一样也有视觉盲点

3.8. 即便是训练数据中从未出现过的瑜伽动作,Kinect算法也能高度准确地识别出我身体的各个部位

  • 3.8.1. 由于缺乏外部刺激,即人身体能够做出的所有动作基本都是固定的,所以这个算法没有进一步“进化

这篇关于读天才与算法:人脑与AI的数学思维笔记05_算法的幻觉的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/923119

相关文章

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

AI绘图怎么变现?想做点副业的小白必看!

在科技飞速发展的今天,AI绘图作为一种新兴技术,不仅改变了艺术创作的方式,也为创作者提供了多种变现途径。本文将详细探讨几种常见的AI绘图变现方式,帮助创作者更好地利用这一技术实现经济收益。 更多实操教程和AI绘画工具,可以扫描下方,免费获取 定制服务:个性化的创意商机 个性化定制 AI绘图技术能够根据用户需求生成个性化的头像、壁纸、插画等作品。例如,姓氏头像在电商平台上非常受欢迎,

不懂推荐算法也能设计推荐系统

本文以商业化应用推荐为例,告诉我们不懂推荐算法的产品,也能从产品侧出发, 设计出一款不错的推荐系统。 相信很多新手产品,看到算法二字,多是懵圈的。 什么排序算法、最短路径等都是相对传统的算法(注:传统是指科班出身的产品都会接触过)。但对于推荐算法,多数产品对着网上搜到的资源,都会无从下手。特别当某些推荐算法 和 “AI”扯上关系后,更是加大了理解的难度。 但,不了解推荐算法,就无法做推荐系

从去中心化到智能化:Web3如何与AI共同塑造数字生态

在数字时代的演进中,Web3和人工智能(AI)正成为塑造未来互联网的两大核心力量。Web3的去中心化理念与AI的智能化技术,正相互交织,共同推动数字生态的变革。本文将探讨Web3与AI的融合如何改变数字世界,并展望这一新兴组合如何重塑我们的在线体验。 Web3的去中心化愿景 Web3代表了互联网的第三代发展,它基于去中心化的区块链技术,旨在创建一个开放、透明且用户主导的数字生态。不同于传统

康拓展开(hash算法中会用到)

康拓展开是一个全排列到一个自然数的双射(也就是某个全排列与某个自然数一一对应) 公式: X=a[n]*(n-1)!+a[n-1]*(n-2)!+...+a[i]*(i-1)!+...+a[1]*0! 其中,a[i]为整数,并且0<=a[i]<i,1<=i<=n。(a[i]在不同应用中的含义不同); 典型应用: 计算当前排列在所有由小到大全排列中的顺序,也就是说求当前排列是第

AI一键生成 PPT

AI一键生成 PPT 操作步骤 作为一名打工人,是不是经常需要制作各种PPT来分享我的生活和想法。但是,你们知道,有时候灵感来了,时间却不够用了!😩直到我发现了Kimi AI——一个能够自动生成PPT的神奇助手!🌟 什么是Kimi? 一款月之暗面科技有限公司开发的AI办公工具,帮助用户快速生成高质量的演示文稿。 无论你是职场人士、学生还是教师,Kimi都能够为你的办公文

csu 1446 Problem J Modified LCS (扩展欧几里得算法的简单应用)

这是一道扩展欧几里得算法的简单应用题,这题是在湖南多校训练赛中队友ac的一道题,在比赛之后请教了队友,然后自己把它a掉 这也是自己独自做扩展欧几里得算法的题目 题意:把题意转变下就变成了:求d1*x - d2*y = f2 - f1的解,很明显用exgcd来解 下面介绍一下exgcd的一些知识点:求ax + by = c的解 一、首先求ax + by = gcd(a,b)的解 这个

Andrej Karpathy最新采访:认知核心模型10亿参数就够了,AI会打破教育不公的僵局

夕小瑶科技说 原创  作者 | 海野 AI圈子的红人,AI大神Andrej Karpathy,曾是OpenAI联合创始人之一,特斯拉AI总监。上一次的动态是官宣创办一家名为 Eureka Labs 的人工智能+教育公司 ,宣布将长期致力于AI原生教育。 近日,Andrej Karpathy接受了No Priors(投资博客)的采访,与硅谷知名投资人 Sara Guo 和 Elad G

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖

【数据结构】——原来排序算法搞懂这些就行,轻松拿捏

前言:快速排序的实现最重要的是找基准值,下面让我们来了解如何实现找基准值 基准值的注释:在快排的过程中,每一次我们要取一个元素作为枢纽值,以这个数字来将序列划分为两部分。 在此我们采用三数取中法,也就是取左端、中间、右端三个数,然后进行排序,将中间数作为枢纽值。 快速排序实现主框架: //快速排序 void QuickSort(int* arr, int left, int rig