数学之美一两处

引言

吴军博士的《数学之美》科普性地介绍了自然语言处理、搜索引擎、语音识别、智能导航等人工智能应用,一些看似很智能、高大上的应用,其背后的数学原理往往却并不复杂,体现了数学之美!

如果数学能够这样,可能很多人也不会头疼于数学了

从这点启发我们,在解决问题时,通常需要考虑问题背后的数学原理、模型、理论是什么,然后,依照的指导进行实践。

不然,就仅是在的层面进行努力,以及修修补补 ,而不能获得像算法一样广泛地解决一类问题的能力!

数学之美一两处

《数学之美》中举例了判定两个集合是否相同的问题,来说明数学的魅力。

在书中, 最终比较完美的解决方法,包括的仅仅是加法操作,在此先卖个关子!

两个集合是否相同的问题

因为两个集合中元素出现的顺序可能是任意顺序的,所以,使得判断两个集合是否相等,需要有一些特殊考虑

传统计算机科学之美

  • 两个集合进行逐个比较

集合个数不同,算法终止

直至出现第一个不同,或完全相同,算法终止

效率上存在一些瑕疵,但是,足够简单

  • 对某一集合进行排序,然后按照排序顺序进行比较

集合个数不同,算法终止

直至出现第一个未匹配元素,或完全匹配,算法终止

第二个传统方法利用到了排序信息,例如,二叉排序树,有效减少了比较元素个数


两个传统的计算机科学中的算法都很直接,也意味着简单,容易实施,也会因为场景的适用体现出它的价值。

尺有所短,寸有所长,堆砌复杂度较高的技术,可能没有简单的技术效用高。

关于此点,在《数学之美.Google AK-47的设计者》章节中有专门介绍

数学之美的推荐解决办法

在《数学之美》中,指出在数学中,对于顺序没有要求的操作很多,例如,简单的加法操作,就与被加数的出现顺序无关。

如果先能够对每个集合元素采用信息指纹技术,然后再对每个信息指纹进行相加。因为产生指纹和做加法操作,仅为O(1)的基础操作,
经过一个O(N)过程后,最终比较两个集合指纹的加法结果,就可以完成任务!

数学之美:加法操作可以相互交换,使得元素在集合中出现的顺序,并不能改变最终结果

挺完美!

这里用字,是因为在信息指纹技术下,并不能完全保证正确性,存在有几率性误判

不过,在不严格追求精确判断的场景,此方法在效率和效用上取得了完美的平衡

因为在众多可能性的空间中,误判概率是小概率事件,而大概率是不同的。

同时,可以通过预先的设计,能够让这个误判概率达到理论上可以接受的程度

基础的机器学习应用

场景说明
聚类无监督学习
分类有监督学习
回归回归问题与分类问题,通常存在桥梁

例如,在scikit-learn机器学习框架中,很多分类训练算法同时能够提供回归训练算法

需要说明的是,机器学习不仅仅是分类、和回归问题。

不少应用表面上不是简单的分类、回归问题,需要更多的人工智能技术进行组合,可以从《数学之美》一书中窥得一斑

进阶应用

下面列出的人工智能应用,组合了更多的机器学习技术

场景说明
自然语言处理基于统计的概率模型
语音识别手写体输入、 输入法也算其特例
搜索引擎文档分类、相似度计算
机器翻译-
智能问答chatGPT为代表
人脸识别基于神经网络的深度学习
自动驾驶-

重点算法介绍

算法说明
EM期望最大化算法
动态规划-
有限状态机-
隐马尔科夫过程马尔科夫假设虽然简单,在自然语言处理中效用极佳
维特比算法篱笆网络有向图最短路径

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/601996.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在未来的一个时期,阿里将会和AI电商联系在一起

当张勇退场,以蔡崇信和吴泳铭为代表的「元老们」,开始执掌阿里。 对于现在的阿里来讲,或许,没有比找到能真正带来改变的全新发展方向,更加迫切的事情了。 正是因为如此,我们才看到了,当拼多多…

【Bootstrap5学习 day12】

Bootstrap5 导航 Bootstrap5提供了一种简单快捷的方法来创建基本导航,它提供了非常灵活和优雅的选项卡和Pills等组件。Bootstrap5的所有导航组件,包括选项卡和Pillss,都通过基本的.nav类共享相同的基本标记和样式。 创建基本导航 要创建简单…

PostgreSQL的学习心得和知识总结(一百二十七)|为 Postgres 编写存储引擎:一种内存表访问方法

目录结构 注:提前言明 本文借鉴了以下博主、书籍或网站的内容,其列表如下: 1、参考书籍:《PostgreSQL数据库内核分析》 2、参考书籍:《数据库事务处理的艺术:事务管理与并发控制》 3、PostgreSQL数据库仓库链接,点击前往 4、日本著名PostgreSQL数据库专家 铃木启修 网站…

Mybatis分页插件PageHelper的配置和使用

文章目录 每页10条记录,取第一页,返回的是前10条记录每页10条记录,取第二页,返回的是第11条记录,到第20条记录, MySQL对分页的支持 简单来说MySQL对分页的支持是通过limit子句。请看下面的例子。 limit关键…

钢铁企业电力设计手册(上下册)总目录

《钢铁企业电力设计手册》总目录 上册 第1章 高压供配电系统 第2章 负荷计算 第3章 供电系统中的有功和无功冲击负荷 第4章 短路电流计算 第5章 电压偏差和电压波动 第6章 电技术节能 第7章 自备电厂及柴油机组发电 第8章 电弧炉供电 第9章 能源管理系统(电力部分&a…

使用pagehelper插件进行分页查询

一、导入mybatis和pagehelper坐标 <dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.2.0</version> </dependency> <dependency><groupId&…

springboot整合mongodb批量修改和添加索引,与设置mongodb保存更新超时时间

1&#xff1a;创建字段索引 collection 是集合名称&#xff0c;keys 是一个包含一个或多个字段名&#xff0c;options是排序方向&#xff0c;1正序&#xff0c;-1倒叙 db.collection.createIndex(keys, options)#单字段 db.collection.createIndex(name: 1)#多字段 db.collec…

Flink的检查点算法

Flink的恢复机制基于应用状态的一致检查点。在有状态的流应用中&#xff0c;一个一致性检查点是&#xff1a;在所有tasks处理了一个&#xff08;相同的&#xff09;输入后&#xff0c;当前时间点每个task的state副本。 在为application做一个一致性检查点时&#xff0c;一个基…

PDF.js实现搜索多个不同的关键词高亮显示效果

static\PDF\web\viewer.js 392行左右 // 自定义搜索关键词---------------------------------------- this.searchKeywords = keyword => {if (typeof PDFViewerApplication !== undefined) {PDFViewerApplication.eventBus.dispatch(find, {query: keyword,caseSensitive:…

代码随想录算法训练DAY22|二叉树8

算法训练DAY22|二叉树8 235. 二叉搜索树的最近公共祖先 力扣题目链接(opens new window) 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为&#xff1a;“对于有根树 T 的两个结点 p、q&#xff0c;最近公共祖先表示为一个结点…

PEFT: 在低资源硬件上对十亿规模模型进行参数高效微调

1 引言 最近&#xff0c;深度学习的研究中出现了许多大型预训练模型&#xff0c;例如 GPT-3、BERT 等&#xff0c;这些模型可以在多种自然语言处理任务中取得优异的性能表现。而其中&#xff0c;ChatGPT 模型因为在对话生成方面的表现而备受瞩目&#xff0c;成为了自然语言处理…

sublime text 3 分屏和关闭分屏

有时候需要编辑多个地方的代码&#xff0c;开多个编辑器又太麻烦&#xff0c;那么Sublime自带的分屏快捷键可以解决烦恼。 Altshift2 分为2列 Altshift3 分为3列 Altshift4 分为4列 Altshift5 分为2行2列 Altshift8 分为2行 Altshift9 分为3行 取消分屏&#xff1a;Alts…

Linux系统报错锦集二: engine libaio not loadable

OS&#xff1a;RedHat 9.1 场景&#xff1a;fio 测试 背景&#xff1a;初次使用fio进行IO性能测试&#xff0c;但RedHat不能直接yum安装fio&#xff0c;故github上下载了fio的源码包&#xff0c;configure、make、make install 编译安装。 fio多线程需要libaio引擎&#xff…

基于多反应堆的高并发服务器【C/C++/Reactor】(中)创建一个TcpConnection实例 以及 接收客户端数据

#CSDN 年度征文&#xff5c;回顾 2023&#xff0c;赢专属铭牌等定制奖品# 一、主线程反应堆模型的事件添加和处理详解 >>服务器和客户端建立连接和通信流程&#xff1a; 基于多反应堆模型的服务器结构图&#xff0c;这主要是一个TcpServer&#xff0c;关于HttpServer,…

分布式协调系统

分布式协调系统 分布式协调系统解决的进程间的通信和协作&#xff0c;根据是否在同一时间和是否相互引用分为四个模型。 示例系统Chubby 主功能&#xff1a;让客户端实现同步&#xff0c;方法是加锁服务 介绍一下系统&#xff1a; 系统由五台服务器构成&#xff0c;通过pax…

智慧地球(AI•Earth)社区成立一周年啦!独家福利与惊喜彩蛋等你来拿!

原文&#xff1a;智慧地球&#xff08;AI•Earth&#xff09;社区成立一周年啦&#xff01; 智慧地球社区 一周年庆典&#x1f38a; 独家福利&#x1f381;与惊喜彩蛋&#x1f389;等你来拿&#xff01; 智慧地球&#xff08;AI•Earth&#xff09;社区自2023年1月11日建立以…

app store里面的构建版本在线上传

开发苹果ios应用&#xff0c;无论是用原生开发、用hbuilderx开发还是用其他h5框架开发的app&#xff0c;都需要将打包好的ipa文件上传到app store。 在上架app store的过程中&#xff0c;我们会遇到下图的这样一个问题&#xff1a; 就是它要求我们上传一个构建版本&#xff0c…

如何保障开放网络边界安全?

针对开放式网络&#xff08;办事大厅、视频网络等&#xff09;&#xff0c;如何在内部网络构建起一道安全屏障&#xff0c;有效解决广大用户普遍存在的无法保证网络边界完整、边界安全、公共场所终端摄像头管理、办事大厅智能设备&#xff08;一体机等&#xff09;管理、开放场…

【C语言】Linux实现高并发处理的过程

一、实现高并发的几种策略 C语言本身并没有内建的多线程支持&#xff08;新版C语言支持&#xff0c;但用得不多&#xff09;&#xff0c;但是在多数操作系统中&#xff0c;可以使用库来实现多线程编程。例如&#xff0c;在POSIX兼容系统上&#xff0c;可以使用 pthreads 库来创…

django学习:页面渲染与请求和响应

1.请求过程 2.页面渲染 在app中新建一个目录&#xff08;Directory&#xff09;&#xff0c;文件名命名为templates。该文件名命名是固定的&#xff0c;不可命名出错&#xff0c;如若后续步骤出错&#xff0c;该目录文件名是一个检查的重点项目。在该目录下新建一个html文件&a…