当前位置: 首页 > news >正文

如何将转换器应用于时序模型

墙上不同大小的办公时钟的集合

 

一、说明

        在机器学习的广阔环境中,变压器作为建筑奇迹屹立不倒,以其复杂的设计和捕获复杂关系的能力重塑了我们处理和理解大量数据的方式。

        自 2017 年创建第一台变压器以来,变压器类型呈爆炸式增长,包括强大的生成 AI 模型,如 ChatGPT* 和 DALL-E*。虽然转换器在文本到文本或文本到图像模型中有效,但在将转换器应用于时间序列时存在一些挑战。在 2023 年北美开源峰会* 上,Ezequiel Lanza 分享了电流互感器模型的问题,并介绍了新的变压器,这些变压器开始在时间序列方面显示出有希望的结果。

        这篇文章不会深入到技术方面,但如果你想内容,我们将包括指向重要论文的链接。

        自从第一台变压器香草变压器问世以来,已经创造了许多新的变压器。

二、变压器功能概述

        让我们看看变压器在稳定扩散*中的作用,稳定扩散是一种深度学习模型,可以将短语(例如“戴眼镜的狗”)转换为图像。转换器接收用户输入的文本并生成文本嵌入。文本嵌入是可以由卷积神经网络 (CNN) 读取的文本表示形式,在本例中为 U-NET。虽然稳定扩散模型使用嵌入来生成图像,但嵌入可用于生成对时间序列模型有用的其他输出。

三、变压器的工作原理

要了解如何将转换器应用于时序模型,我们需要关注转换器体系结构的三个关键部分:

  • 嵌入和位置编码
  • 编码器:计算多头自注意力
  • 解码器:计算多头自我注意

例如,我们将解释香草变压器的工作原理,这是一种将简单短语从一种语言翻译成另一种语言的转换器。

3.1 嵌入和位置编码:如何表示输入数据

        当您在香草转换器中输入短语“我爱狗”时,称为 Word2Vec 的算法会将每个单词转换为数字列表,称为向量。每个向量都包含有关单词的含义以及它与其他单词(如同义词和反义词)的关系的信息。

        模型还必须了解短语中每个单词的位置。例如,“我爱的狗”与“我爱狗”的含义不同。第二种称为位置向量的算法使用复杂的数学方程来帮助模型理解句子顺序。Word2Vec 和位置向量算法提供的信息打包在一起,就是所谓的文本嵌入,或者以机器可以读取的方式表示您的原始短语。

3.2 编码器级别的多头自我注意

        接下来,编码器接收文本嵌入并将其转换为新向量,添加信息以帮助模型识别短语中单词之间的关系。例如,在短语“在公园玩耍的儿童”中,编码器将为“儿童”、“玩耍”和“公园”分配最大的权重。我们称这个过程为自我注意,因为它决定了模型应该最关注哪些词。

        为了计算自我注意,编码器为每个单词创建三个向量——查询向量、键向量和值向量。向量是通过将短语与三个矩阵相乘来创建的。这是一个复杂的算法,但要理解的重要部分是短语中的每个单词都会乘以短语中的每个其他单词,并且计算长短语的注意力可能需要大量时间。

        为了更好地理解单词之间的关系,自我注意层可以同时运行多个头部。这个过程称为多头注意力,它允许模型同时关注短语的不同部分,例如当存在短期和长期依赖关系时。例如,在短语“动物因为太累而没有过马路”中,多头注意力告诉模型“动物”和“它”指的是同一个想法。

  • 阅读本文,深入了解自我注意和多头注意力算法
  • 阅读“注意力是你所需要的一切”,这篇论文最初介绍了多头注意力

计算注意力所需的时间随着您添加到序列中的每个新数据点而二次增加。

3.3 解码器级别的多头自注意力

        解码器的工作方式与编码器相同,只是它使用不同的数据集进行了训练。例如,在香草变压器中,如果编码器在英语数据上进行了训练,解码器在法语数据上进行了训练,则解码器将运行相同的多头自注意力算法,将原始短语翻译成法语。

四、对时序使用转换器

        为什么此转换器体系结构不适用于时序?时间序列在某些方面类似于一种语言,但它与传统语言不同。在语言中,您可以使用截然不同的单词或句子顺序来表达相同的想法。一旦基于语言的转换器(如vanilla)在语言上进行了训练,它就可以理解单词之间的关系,因此当您在两个不同的输入中表示一个想法时,转换器仍然会得出大致相同的含义。然而,时间序列需要严格的序列——数据点的顺序更重要。这给使用转换器进行时间序列带来了挑战。

        让我们看看我们目前如何解决这个问题,以及为什么这些模型不足。

4.1 当前的方法

        自回归积分移动平均线 (ARIMA) 模型适用于某些时间序列,但需要深入了解相关趋势、季节性变化和残值——即便如此,它也仅适用于线性依赖关系。在许多具有多变量问题的时间序列中,依赖关系之间的关系不是线性的,ARIMA 将不起作用。

        还有几种使用神经网络的方法。

  • 前馈神经网络 (FNN) 模型使用序列中的任何前六个数据点来预测接下来的六个数据点。尽管 FNN 支持非线性依赖关系,但它们需要您手动制作一个专注于非常具体的问题或数据子集的模型,这使得该模型对于大型数据集的构造过于耗时。
  • 递归神经网络 (RNN 模型中,您可以向模型提供与时间序列相关的一小部分数据点,RNN 中的单元格将记住哪些数据点很重要以及它们的权重是多少。但是,当您处理具有长期依赖关系的数据集时,权重变得不那么相关,并且模型的准确性会随着时间的推移而降低。
  • 短期记忆(LSTM模型类似于RNN,不同之处在于每个细胞都有一个记忆,允许您在长序列期间更频繁地更新权重。这使得 LSTM 成为某些用例的良好解决方案。
  • Seq2seq 是提高 LSTM 性能的一种方法。您可以将数据馈送到编码器中,而不是直接馈送网络,编码器会生成输入的特征,这些特征被馈送到解码器中。

4.2 变压器如何改进时间序列?

        使用变压器支持的多头注意力可以帮助改进时间序列模型处理长期依赖关系的方式,比当前方法更具优势。为了让您了解转换器在长依赖项方面的工作情况,请考虑 ChatGPT 可以在基于语言的模型中生成的长而详细的响应。将多头注意力应用于时间序列可以产生类似的好处,允许一个头专注于长期依赖关系,而另一个头专注于短期依赖关系。我们相信,变压器可以使时间序列模型预测多达1个数据点,如果不是更多的话。

4.3 二次复杂性问题

        变压器计算多头自我注意力的方式对于时间序列来说是有问题的。由于序列中的数据点必须乘以序列中的所有其他数据点,因此添加到输入中的每个数据点都会成倍增加计算注意力所需的时间。这称为二次复杂度,它在处理长序列时会产生计算瓶颈。

        计算注意力所需的时间随着您添加到序列中的每个新数据点而二次增加。

五、改进时间序列的转换器模型

        今年年初发布的一项调查确定了在将变压器应用于时间序列之前需要解决的两个基本网络修改:

  • 位置编码:我们如何表示输入数据
  • 注意力模块:降低时间复杂度的方法

        下一节将介绍高级要点,但您可以阅读调查以获取有关修改及其结果的更多详细信息。

5.1 网络修改No1:位置编码

        2019 年,我们尝试在原版变压器中应用 Word2Vec 编码过程,但该模型无法充分利用时间序列的重要特征。香草转换器擅长辨别单词之间的关系,但不擅长遵循数据序列中的严格顺序。。

        2021 年,我们创建了可学习的文本嵌入,使我们能够在输入中包含额外的位置编码信息。与普通变压器中的固定编码相比,可学习的位置编码使变压器更加灵活,更好地利用顺序排序信息。这有助于转换器了解有关时间序列的更重要上下文,例如季节性信息。

5.2 网络修改No2:注意力模块

        为了降低注意力层的二次复杂度,新的转换器引入了概率稀疏注意力的概念。通过使注意力层仅使用最重要的数据点而不是所有数据点来计算权重和概率,ProbSparse 有助于大大减少计算注意力所需的时间。

Informer* 等新模型中使用的 ProbS稀疏注意力通过仅基于序列中最重要的数据点计算概率来减少时间。

六、对新变压器进行测试

        虽然许多新的转换器,如LogTrans*,Pyraformer*和FEDformer*都包含了这些网络修改,但在这里我们专注于Informer和Spacetimeformer*,因为它们是开源的。 GitHub* 存储库提供参考文档和示例,以便根据数据轻松微调模型,而无需了解注意力层的每个细节。
让我们看看Informer和Spacetimeformer 如何利用这些网络修改,看看它们会产生什么样的结果。

6.1 告密者架构

        通过告密者转换器,您可以向他们提供有关季节性、每月或节假日趋势的重要信息,以帮助模型了解数据在一年中行为方式的细微差异。例如,您的数据集在夏季的行为可能与在冬季的行为不同。通过位置编码,您可以告诉模型在一年中的不同时间使用不同的权重,从而更好地控制输入的质量。

        通过结合ProbSparse注意力模型和位置编码,Informer提供了优于LSTM等传统变压器的性能优势。当预测未来的 24 个数据点时,Informer 产生的均方误差 (MSE) 为 0.577,略好于 LSTM 的 MSE 0.650。当预测 720 个数据点时,性能差异越来越大,Informer 的 MSE 为 1.215,而 LSTM 为 1.960。我们可以在这里得出结论,Informer在长序列中提供了稍微好一点的结果,但LSTM在某些短期用例中仍可能产生良好的结果。

  • 访问告密者 GitHub 存储库以查看更多结果

        Informer产生的结果比LSTM模型略好,特别是对于长数据系列。

七、时空建筑

        Spacetimeformer 提出了一种表示输入的新方法。像Informer这样的时间注意力模型在单个输入令牌中表示每个时间步长的多个变量的值,这没有考虑特征之间的空间关系。图形注意力模型允许您手动表示特征之间的关系,但依赖于无法随时间变化的硬编码图形。时空前者结合了时间和空间注意力方法,创建一个输入令牌来表示给定时间单个要素的值。这有助于模型更多地了解空间、时间和价值信息之间的关系。

        时空形成者使用并行的空间和时间特征计算权重,由右下角的蓝线表示。

        与Informer一样,Spacetimeformer 提供的结果比LSTM略好。在预测未来40小时时,Spacetimeformer的MSE为12.49,略好于LSTM的MSE为14.29。虽然对于更长的序列,这个裕度会扩大,但对于每个用例,Spacetimeformer 还没有提供明显优于 LSTM 的结果。

  • 访问时空前 GitHub 存储库
  • 了解有关时空模型如何工作的更多信息

        与Informer类似,Spacetimeformer 产生的结果比 LSTM 略好,特别是对于更长的时间序列。

八、用例:微服务架构上的延迟

        让我们将时间序列模型应用于在线精品店。该商店有 11 个微服务,包括允许用户添加和删除项目的购物车服务和允许用户搜索单个产品的目录服务。

        将 Informer 时间序列预测应用于具有 11 个微服务的在线精品店。

        为了演示对最终用户的影响,我们将预测用户必须等待每个微服务处理请求的时间。基于每个服务的先前 360 个数据点的模型,我们对未来运行了 36 个数据点的简短预测,对未来运行了 120 个数据点的长期预测。

        在预测接下来的36个数据点时,Informer产生的MSE为0.6,略好于LSTM。但是,告密者需要更多时间来处理。长模型的结果也是如此:Informer的预测更准确,但需要更长的处理时间。

Informer在短数据系列和长数据系列中都产生了更好的结果,但处理时间略多。

九、参与并开始测试

        时序的复杂性各不相同,因此测试模型以找到最适合您的用例非常重要。虽然LSTM等传统模型是某些短期时间序列的有力选择,但Informer和Spacetimeformer可以为长期序列提供更准确的预测。随着我们继续对注意力层和输入数据的表示方式进行优化,我们预计性能会有所提高。此外,作为开源框架,Informer和Spacetimeformer 使安装模型并开始用您的数据进行测试变得更加容易。

        请为 GitHub 存储库做出贡献,以帮助推进这些项目。我们还提供深度学习工具和框架库,以充分利用我们的开源模型。

  • 转到告密者 GitHub 存储库
  • 访问时空前 GitHub 存储库
  • 查看时序 GitHub 存储库,了解时序和序列的最新深度学习

有关英特尔的更多开源内容,请查看 open.intel

相关文章:

如何将转换器应用于时序模型

一、说明 在机器学习的广阔环境中,变压器作为建筑奇迹屹立不倒,以其复杂的设计和捕获复杂关系的能力重塑了我们处理和理解大量数据的方式。 自 2017 年创建第一台变压器以来,变压器类型呈爆炸式增长,包括强大的生成 AI 模型&#…...

数据结构:队列

文章目录 队列一,概述二,添加数据三,删除数据 队列 一,概述 队列是一种特殊的数据结构,它遵循先进先出(FIFO)的原则。在队列中,元素被添加到末尾,并从头部移除。队列只…...

AUTOSAR汽车电子嵌入式编程精讲300篇-基于AUTOSAR架构的AT控制系统研究与实现

目录 前言 国内外研究现状 国外研究现状 国内研究现状 2 AUTOSAR规范及开发流程...

计网第五章(运输层)(四)(TCP的流量控制)

一、基本概念 流量控制就是指让发送方的发送速率不要太快,使得接收方来得及接收。可以使用滑动窗口机制在TCP连接上实现对发送方的流量控制。 注意:之前在讨论可靠传输时,讨论过选择重传协议和回退N帧协议都是基于滑动窗口的机制上进行实现…...

【华为OD机试python】查找众数及中位数【2023 B卷|100分】

【华为OD机试】-真题 !!点这里!! 【华为OD机试】真题考点分类 !!点这里 !! 题目描述 众数是指一组数据中出现次数最多的那个数,众数可以是多个。 中位数是指把一组数据从小到大排序后,如果这组数据的总数是奇数, 那最中间的那个数就是中位数; 如果这组数据总数是偶数,那…...

阿里云无影云电脑详细介绍:价格、使用和功能优势说明

什么是阿里云无影云电脑?无影云电脑(原云桌面)是一种快速构建、高效管理桌面办公环境,无影云电脑可用于远程办公、多分支机构、安全OA、短期使用、专业制图等使用场景,阿里云百科分享无影云桌面的详细介绍、租用价格、…...

【实践篇】MySQL执行计划详解

文章目录 本文知识大纲速览1. 前言2. 基本介绍1. 什么是执行计划2. 如何查看执行计划3. 执行计划的组成部分 3. 执行计划的关键元素1. id2. select_type3. table:4. type:5. possible_keys:6. key:7. key_len8. ref:9. rows:10. Extra 4. 底层原理5. 执行计划示例解读本文知识图…...

二维凸包(Graham) 模板 + 详解

(闲话) 上了大学后没怎么搞oi,从土木跑路到通信了(提桶开润大成功!),但是一年上两年的课(补的),保研也寄掉了( 说起来自从博客被大学同学发现并…...

ElasticSearch(ES)简单介绍

ES简介 Elasticsearch(通常简称为ES)是一个开源的分布式搜索和分析引擎,旨在处理各种类型的数据,包括结构化、半结构化和非结构化数据。它最初是为全文搜索而设计的,但随着时间的推移,它已经演变成一个功能…...

OpenCV(三十五):凸包检测

1.凸包检测介绍 凸包检测是计算凸包的一种技术,凸包就是:给定二维平面上的点集,将最外层的点连接起来构成的凸边形,它是包含点集中所有的点。 2.凸包检测函数convexHull() void cv::convexHull ( InputArray points, OutputArra…...

PS 透视裁剪工具

上文 PS 裁剪工具及工具栏配置讲解 我们讲完了裁剪工具 然后 我们继续来研究 透视裁剪工具 切换到 透视裁剪工具 后 我们先点击左上方的清除 先不要这些多的配置 然后 我们可以先用鼠标在图像上 画出一个局域 然后 我们去拖他四个角中的其中一个 就能拖出一些不同的形状 然…...

每日一个C库函数-#1-memset()

每日一个C库函数-#1-memset() 来源 C 标准库 - <string.h> 声明 void *memset(void *str, int c, size_t n);str&#xff1a;要填充的内存块&#xff1b;c&#xff1a;要被设置的值&#xff08;以何值填充&#xff09;。该值以 int 形式传递&#xff0c;填充内存块时…...

GraphQL基础知识与Spring for GraphQL使用教程

文章目录 1、数据类型1.1、标量类型1.2. 高级数据类型 基本操作2、Spring for GraphQL实例2.1、项目目录2.2、数据库表2.3、GraphQL的schema.graphql2.4、Java代码 3、运行效果3.1、添加用户3.2、添加日志3.3、查询所有日志3.4、查询指定用户日志3.5、数据订阅 4、总结 GraphQL…...

【SA8295P 源码分析】97 - QNX AIS Camera 框架介绍 及 Camera 工作流程分析

【SA8295P 源码分析】97 - QNX AIS Camera 框架介绍 及 Camera 工作流程分析 一、QNX AIS Server 框架分析二、QNX Hypervisor / Android GVM 方案介绍三、Camera APP 调用流程分析四、QCarCam 状态转换过程介绍五、Camera 加串-解串 硬件链路分析六、摄像头初始化检测过程介绍…...

威胁的数量、复杂程度和扩散程度不断上升

Integrity360 宣布了针对所面临的网络安全威胁、数量以及事件响应挑战的独立研究结果。 数据盗窃、网络钓鱼、勒索软件和 APT 是最令人担忧的问题 这项调查于 2023 年 8 月 9 日至 14 日期间对 205 名 IT 安全决策者进行了调查&#xff0c;强调了他们的主要网络安全威胁和担忧…...

NSSCTF web 刷题记录2

文章目录 前言题目[广东强网杯 2021 团队组]love_Pokemon[NCTF 2018]Easy_Audit[安洵杯 2019]easy_web[NCTF 2018]全球最大交友网站prize_p2[羊城杯 2020]easyser[FBCTF 2019]rceservice方法一方法二 前言 今天是2023年9月13号&#xff0c;刷题记录2正式开始。时间来到九月十七…...

Linux驱动之INPUT子系统框架

目录 一、input 子系统简介 二、input 驱动编写流程 1、注册 input_dev 2、上报输入事件 三、input_event 结构体 按键、鼠标、键盘、触摸屏等都属于输入(input)设备&#xff0c; Linux 内核为此专门做了一个叫做 input子系统的框架来处理输入事件。输入设备本质上还是字符设…...

Long类型雪花算法ID返回前端后三位精度缺失问题解决

目录 一、问题描述二、问题复现1.Maven依赖2.application.yml 配置3.DemoController.java4.snowflakePage.html 页面5.DemoControllerAdvice.java 监听6.问题复现 三、原因分析四、问题解决方案一方案二 一、问题描述 Java 后端使用雪花算法生成 Long 类型的主键 ID&#xff0…...

6.8-SpringIoC之循环依赖底层源码解析

解决靠&#xff0c;三级缓存 创建Map&#xff0c;存不完整的Bean 存在问题&#xff1a;属性存在但没有值...

Springboot 实践(18)Nacos配置中心参数自动刷新测试

前文讲解了Nacos 2.2.3配置中心的服务端的下载安装&#xff0c;和springboot整合nacos的客户端。Springboot整合nacos关键在于使用的jar版本要匹配&#xff0c;文中使用版本如下&#xff1a; ☆ springboot版本: 2.1.5.RELEASE ☆ spring cloud版本 Greenwich.RELEASE ☆ sp…...

uniapp引入小程序原生插件

怎么在uniapp中使用微信小程序原生插件&#xff0c;以收钱吧支付插件为例 1、在manifest.json里的mp-weixin中增加插件配置 "mp-weixin" : {"appid" : "你的小程序appid","setting" : {"urlCheck" : false},"usingCom…...

自己记录微信小程序开发遇到的问题

在HBuilder X中【运行】--【小程序】--【运行设置】&#xff0c;小程序运行配置&#xff0c;将【微信开发者工具】的安装路径配置进去&#xff0c;首次运行会自动让你填写&#xff1b; 1、hbuildx运行到微信开发者工具报错 Error: Unbalanced delimiter found in string 错误…...

【leetcode 力扣刷题】栈—波兰式///逆波兰式相关知识和题目

波兰式、逆波兰式相关知识和题目 波兰式、逆波兰式介绍常规表达式转换成逆波兰式编程让常规表达式转换成逆波兰式逆波兰式运算过程常规表达式转换成波兰式编程让常规表达式转换成波兰式波兰式运算过程 150. 逆波兰式表达式求值224. 基本计算器227. 基本计算器Ⅱ282. 给表达式添…...

Web 第一步:HTTP 协议(基础)

这里是JavaWeb的开头部分&#xff01;那么先解释一下吧&#xff1a; Web&#xff1a;全球广域网&#xff0c;也称为万维网&#xff08;www&#xff09;&#xff0c;能够通过浏览器访问的网站。 JavaWeb&#xff1a;是用Java技术来解决相关 Web 互联网领域的技术栈。 &#xf…...

【Vue】快速入门案例与工作流程的讲解

&#x1f389;&#x1f389;欢迎来到我的CSDN主页&#xff01;&#x1f389;&#x1f389; &#x1f3c5;我是Java方文山&#xff0c;一个在CSDN分享笔记的博主。&#x1f4da;&#x1f4da; &#x1f31f;在这里&#xff0c;我要推荐给大家我的专栏《Vue快速入门》。&#x1f…...

LuatOS-SOC接口文档(air780E)--camera - codec - 多媒体-编解码

常量 常量 类型 解释 codec.MP3 number MP3格式 codec.WAV number WAV格式 codec.AMR number AMR-NB格式&#xff0c;一般意义上的AMR codec.AMR_WB number AMR-WB格式 codec.create(type, isDecoder) 创建编解码用的codec 参数 传入值类型 解释 int 多媒…...

《动手学深度学习 Pytorch版》 6.6 卷积神经网络

import torch from torch import nn from d2l import torch as d2l6.6.1 LeNet LetNet-5 由两个部分组成&#xff1a; - 卷积编码器&#xff1a;由两个卷积核组成。 - 全连接层稠密块&#xff1a;由三个全连接层组成。模型结构如下流程图&#xff08;每个卷积块由一个卷积层、…...

【微信小程序】项目初始化

| var() CSS 函数可以插入一个自定义属性&#xff08;有时也被称为“CSS 变量”&#xff09;的值&#xff0c;用来代替非自定义 属性中值的任何部分。 1.初始化样式与颜色 view,text{box-sizing: border-box; } page{--themColor:#ad905c;--globalColor:#18191b;--focusColor…...

C#,《小白学程序》第二十六课:大数乘法(BigInteger Multiply)的Toom-Cook 3算法及源程序

凑数的&#xff0c;仅供参考。 1 文本格式 /// <summary> /// 《小白学程序》第二十六课&#xff1a;大数&#xff08;BigInteger&#xff09;的Toom-Cook 3乘法 /// Toom-Cook 3-Way Multiplication /// </summary> /// <param name"a"></par…...

destoon自定义一个archiver内容文档

在archiver目录建立以下代码&#xff1a; <?php define(DT_REWRITE, true); require ../common.inc.php; $EXT[archiver_enable] or dheader(DT_PATH); //$DT_BOT or dheader(DT_PATH); $N $M $T array(); $mid or $mid 5; $vmid $list 0; foreach($MODULE as $k>…...

wordpress网站投放广告/百度推广后台登陆首页

#!/bin/bash# 说明&#xff1a;站点添加工具[独立代码、数据库]# 日期&#xff1a;2012-03-31 22:31:21 [6]# 用法: x dn.ext# 补充&#xff1a;mpm-itk、vsftpd、mysql#    需要手动删除mysql数据库、vsftpd用户# buildhttpdpwd buildmysqlpwd 用于根据域名计算密码# 作者&…...

网上外贸网站怎么做/代写文章

概述 从指定的表格中读取指定Key的列表的所有数据。 示例代码 同步调用参见章节&#xff1a;[List表]读取列表所有数据示例代码。 异步调用参见章节&#xff1a;异步调用接口示例代码。 Request对象方法说明 注&#xff1a;如有未列出来的Request对象方法&#xff0c;即表…...

建设公司建站系统/seo搜索引擎优化薪资水平

SAP锁机制一、SAP为什么要设置锁&#xff1a; 1&#xff0c;保持数据的一致性 如果几个用户要访问同样的资源&#xff0c;需要找到一种同步访问的方法去保持数据的一致性。比如说&#xff0c;在航班预订系 统中&#xff0c;需要检查还有没有空座位&#xff0c;当检查的时…...

公司网站背景图片/推广方案应该有哪些方面

当今时代&#xff0c;在全球竞争激烈的大市场中&#xff0c;无论是流程式还是离散式的制造业&#xff0c;无论是单件生产、多品种小批量生产、少品种重复生产还是标准产品大量生产的制造&#xff1b;制造业内部管理都可能遇到以下一些问题&#xff1a;如企业可能拥有卓越的销售…...

国内做网站哪家公司好/数据查询网站

问题&#xff1a; 有一个随机函数只生成0和1&#xff0c;生成0的概率是p&#xff0c;生成1的概率是1-p&#xff0c;如何操作能使得生成1和0的概率都是1/2? 解答&#xff1a; 因为调用两次随机函数&#xff0c;则00的概率是p*p&#xff0c;11的概率是(1-p)*(1-p)&#xff0c; 0…...

有专门做试吃的网站吗/钓鱼网站制作教程

一、执行慢速查找的时机 当快速查找流程找不到方法时候&#xff0c;走goto Miss 方法 &#xff08;一&#xff09;__objc_msgSend_uncached STATIC_ENTRY __objc_msgSend_uncached UNWIND __objc_msgSend_uncached, FrameWithNoSaves// THIS IS NOT A CALLABLE C FUNCTION /…...