R语言和Python用泊松过程扩展:霍克斯过程Hawkes Processes分析比特币交易数据订单到达自激过程时间序列...
全文下载链接:http://tecdat.cn/?p=25880
本文描述了一个模型,该模型解释了交易的聚集到达,并展示了如何将其应用于比特币交易数据。这是很有趣的,原因很多。例如,对于交易来说,能够预测在短期内是否有更多的买入或卖出是非常有用的。另一方面,这样的模型可能有助于理解基本新闻驱动价格与机器人交易员对价格变化的反应之间的区别(点击文末“阅读原文”获取完整代码数据)。
介绍
订单到达的自激性和集群性
交易不会以均匀的间隔到达,但通常会在时间上聚集在一起。类似地,相同的交易标志往往会聚集在一起并产生一系列买入或卖出订单。 例如,将订单分成小块的算法交易者或对某些交易所事件做出反应的交易系统。
出于演示目的,我使用的数据是 2013 年 4 月 20 日 13:10 到 19:57 之间的 5000 笔交易。这是 1 分钟窗口内聚合的交易计数图。
plot(x, b, type = "l")
每分钟的平均交易数是 13,但是我们可以找出几个超过 50 的实例。通常较高的交易强度会持续几分钟,然后再次下降到平均值。特别是在 16:00 之后的 15 分钟左右,我们可以看到非常高的交易强度,其中一个实例每分钟超过 200 个订单,然后在接下来的约 10 分钟内强度缓慢下降。
描述事件计数到达的最基本方法,例如上面的时间序列,是泊松过程 ,有一个参数λ。在泊松过程中,每单位时间的预期事件数由一个参数定义。这种方法被广泛使用,因为它非常适合大量数据,例如呼叫中心的电话到达。然而,就我们的目的而言,这太简单了,因为我们需要一种方法来解释聚类和均值回归。
霍克斯过程(Hawkes Processes),是基本泊松过程的扩展,旨在解释这种聚类。像这样的自激模型广泛用于各种科学;一些例子是地震学(地震和火山喷发的建模)、生态学(野火评估 )、神经科学,当然还有金融和贸易。
让我们继续理解和拟合霍克斯过程(Hawkes Processes)到上面的数据。
霍克斯过程(Hawkes Processes)
霍克斯过程对随时间变化的强度或过程的事件发生率进行建模,这部分取决于过程的历史。另一方面,简单的泊松过程没有考虑事件的历史。
下图中绘制了霍克斯过程的示例实现。
它由 8 个事件组成,通常采用时间戳的形式,以及由三个参数定义的样本强度路径
这里,μ是过程恢复到的基本速率,α是事件发生后的强度跳跃,β是指数强度衰减。基准率也可以解释为外生事件的强度,例如新闻。其他参数 α 和 β 定义了过程的聚类属性。通常情况下 α<β 确保强度降低的速度快于新事件增加的速度。
点击标题查阅往期内容
R语言连续时间马尔科夫链模拟案例 Markov Chains
左右滑动查看更多
01
02
03
04
自我激发性在时间标记 2 之前的前四个事件中是可见的。它们在彼此相距很短的时间内发生,这导致第四个事件的强度峰值很大。每一次事件的发生都会增加另一次发生的机会,从而导致事件的聚集。第五个数据点仅在时间标记 4 处到达,与此同时,导致整体强度呈指数下降。
条件强度最简单的形式是
指数函数定义了过程的记忆,即过去的事件如何影响当前的事件。求和将此函数应用于从事件 titi 到当前事件 t 的历史。λ(t)表示时间 t 的瞬时强度。
给定条件强度,两个派生量也很有趣:期望强度(在某些条件下)可以显示为 [4] 具有以下形式
并描述给定时间段的交易强度。另一个量是所谓的分支比
它描述了内生产生的交易比例(即作为另一笔交易的结果)。这可以用来评估交易活动中有多少是由反馈引起的。
可以使用传统的最大似然估计和凸求解器来拟合模型的参数。
将比特币交易的到来与霍克斯过程相匹配
在给定一组有序交易时间 t1<t2<⋯<tn的情况下,强度路径是完全定义的,在我们的例子中,这只是交易记录时的 unix 时间戳。鉴于此,我们可以使用R软件和Python轻松应用 MLE。给定参数的初始猜测和对参数的约束为正,以下函数拟合模型。
fhawks <- function(data) {# 初始猜测,a是α,C是βpstt <- c# 使用条件强度函数创建一个对象proc# 假设强度必须是正的conditi <- penaltany(parms < 0)# 使用标准优化法进行拟合fit(m, optrol = list(trace = 2))
我通过将存储在数据帧中的 5000 个交易时间戳传递给它来运行上面的拟合过程。与原始数据集的唯一区别是我为与另一笔交易共享时间戳的所有交易添加了一个随机毫秒时间戳。这是必需的,因为模型需要区分每笔交易(即每笔交易必须有唯一的时间戳)。文献描述了解决这个问题的不同方法 [4, 10],但将时间戳扩展到毫秒是一种常见的方法。
summary(f)
我们最终得到的参数估计为 μ=0.07,α=1.18,β=1.79。α 的参数估计表明,在单笔交易发生后,条件强度每秒增加 1.18 笔交易。此外,整个期间的平均强度为每秒 E[λ]=0.20次交易,一分钟内总共有 12 次交易,这与我们的经验计数相符。n=65%的分支率表明超过一半的交易是在模型内作为其他交易的结果产生的。鉴于所研究的时间相对平稳,价格呈上涨趋势,这一数字很高。将其应用于更动荡的区制或状态(例如一些崩溃)会很有趣,我认为该比率会高得多。
现在的目的是计算拟合模型的实际条件强度,并将其与经验计数进行比较。R 执行此评估,我们只需提供一系列时间戳即可对其进行评估。该范围介于原始数据集的最小和最大时间戳之间,对于该范围内的每个点,都会计算瞬时强度。
下图比较经验计数(来自本文的第一个图)和拟合的综合强度。
从图上看,这似乎是一个相当好的拟合。请注意,历史强度往往高于拟合的强度。可以通过引入有影响和无影响的交易来解决这个问题,这有效地减少了作为拟合程序一部分的交易数量。经验数据和拟合数据之间跳跃大小略微不匹配的另一个原因可能是同一秒内时间戳的随机化;在5000个原始交易中,超过2700个交易与另一个交易共享一个时间戳。这导致大量的交易(在同一秒内)失去订单,这可能会影响跳跃的大小。
拟合优度
评估拟合优度的方法有很多种。一种是通过比较AIC同质泊松模型的值,如上面的 R 总结中所示,我们的霍克斯模型更适合数据。
检验模型与数据拟合程度的另一种方法是评估残差。理论上说[4],如果模型拟合得好,那么残差过程应该是同质的,应该有事件间时间(两个残差事件时间戳之间的差值),这些时间是指数分布。事件间时间的对数图,或者在我们的案例中,对指数分布的QQ图,证实了这点。下面的图显示了一个很好的R2拟合。
现在我们知道该模型很好地解释了到达的聚类,那么如何将其应用于交易呢?下一步将是至少单独考虑买入和卖出的到达,并找到一种方法来预测给定的霍克斯模型。然后,这些强度预测可以构成做方向性策略的一部分。让我们看一下文献以获得一些想法。
申请交易
Hewlett[2]使用买入和卖出到达之间的双变量自激和交叉激振过程,预测了未来买入和卖出交易的不平衡性。作者设计了一个最佳的清算策略,由一个基于这种不平衡的价格影响公式得出。
在文献[3]中,作者使用双变量霍克斯过程的买入和卖出强度比作为进行方向性交易的进入信号。
改进
Hawkes 过程的对数似然函数具有 O(N2) 的计算复杂度,因为它在交易历史中执行嵌套循环。仍然是低效的,特别是对于高频交易目的。
结论
在本文中,我展示了霍克斯过程是解释 交易的聚集到达的一个很好的模型。我展示了如何在给定交易时间戳的情况下估计和评估模型,并强调了一些与估计有关的问题。
比特币交易数据及其价格发现尚未得到很好的研究。自激模型可能会回答诸如比特币价格变动有多少是由基本事件引起的等问题。该模型本身自然也可以成为交易策略的一部分。
参考
[1] J. Fonseca 和 R. Zaatour:霍克斯过程:快速校准、贸易聚类和扩散限制的应用 ssrn.
[2] P. Hewlett:订单到达聚类、价格影响和交易路径优化 pdf.
[3] J. Carlsson、M. Foo、H. Lee、H. Shek:使用双变量霍克斯过程进行高频交易预测。
本文摘选《R语言和Python用泊松过程扩展:霍克斯过程Hawkes Processes分析比特币交易数据订单到达自激过程时间序列》,点击“阅读原文”获取全文完整资料。
点击标题查阅往期内容
指数加权模型EWMA预测股市多变量波动率时间序列
R语言极值理论 EVT、POT超阈值、GARCH 模型分析股票指数VaR、条件CVaR:多元化投资组合预测风险测度分析
R语言GARCH-DCC模型和DCC(MVT)建模估计
Python 用ARIMA、GARCH模型预测分析股票市场收益率时间序列
R语言中的时间序列分析模型:ARIMA-ARCH / GARCH模型分析股票价格
R语言ARIMA-GARCH波动率模型预测股票市场苹果公司日收益率时间序列
Python使用GARCH,EGARCH,GJR-GARCH模型和蒙特卡洛模拟进行股价预测
R语言时间序列GARCH模型分析股市波动率
R语言ARMA-EGARCH模型、集成预测算法对SPX实际波动率进行预测
matlab实现MCMC的马尔可夫转换ARMA - GARCH模型估计
Python使用GARCH,EGARCH,GJR-GARCH模型和蒙特卡洛模拟进行股价预测
使用R语言对S&P500股票指数进行ARIMA + GARCH交易策略
R语言用多元ARMA,GARCH ,EWMA, ETS,随机波动率SV模型对金融时间序列数据建模
R语言股票市场指数:ARMA-GARCH模型和对数收益率数据探索性分析
R语言多元Copula GARCH 模型时间序列预测
R语言使用多元AR-GARCH模型衡量市场风险
R语言中的时间序列分析模型:ARIMA-ARCH / GARCH模型分析股票价格
R语言用Garch模型和回归模型对股票价格分析
GARCH(1,1),MA以及历史模拟法的VaR比较
matlab估计arma garch 条件均值和方差模型
R语言POT超阈值模型和极值理论EVT分析
R语言极值推断:广义帕累托分布GPD使用极大似然估计、轮廓似然估计、Delta法
R语言极值理论EVT:基于GPD模型的火灾损失分布分析
R语言有极值(EVT)依赖结构的马尔可夫链(MC)对洪水极值分析
R语言POT超阈值模型和极值理论EVT分析
R语言混合正态分布极大似然估计和EM算法
R语言多项式线性模型:最大似然估计二次曲线
R语言Wald检验 vs 似然比检验
R语言GARCH-DCC模型和DCC(MVT)建模估计
R语言非参数方法:使用核回归平滑估计和K-NN(K近邻算法)分类预测心脏病数据
matlab实现MCMC的马尔可夫转换ARMA - GARCH模型估计
R语言基于Bootstrap的线性回归预测置信区间估计方法
R语言随机搜索变量选择SSVS估计贝叶斯向量自回归(BVAR)模型
Matlab马尔可夫链蒙特卡罗法(MCMC)估计随机波动率(SV,Stochastic Volatility) 模型
Matlab马尔可夫区制转换动态回归模型估计GDP增长率
R语言极值推断:广义帕累托分布GPD使用极大似然估计、轮廓似然估计、Delta法
R语言中实现马尔可夫链蒙特卡罗MCMC模型
matlab贝叶斯隐马尔可夫hmm模型实现
R语言如何做马尔科夫转换模型markov switching model
matlab中的隐马尔可夫模型(HMM)实现
R语言马尔可夫体制转换模型Markov regime switching
R语言马尔可夫转换模型研究交通伤亡人数事故预测
R语言中的马尔科夫机制转换(Markov regime switching)模型
用机器学习识别不断变化的股市状况—隐马尔科夫模型(HMM)股票指数预测实战
用机器学习识别不断变化的股市状况—隐马尔科夫模型(HMM)的应用
R语言中实现马尔可夫链蒙特卡罗MCMC模型
用R语言模拟M / M / 1随机服务排队系统
用R语言模拟混合制排队随机服务排队系统
用R语言模拟M/M/1随机服务排队系统
相关文章:
R语言和Python用泊松过程扩展:霍克斯过程Hawkes Processes分析比特币交易数据订单到达自激过程时间序列...
全文下载链接:http://tecdat.cn/?p25880 本文描述了一个模型,该模型解释了交易的聚集到达,并展示了如何将其应用于比特币交易数据。这是很有趣的,原因很多。例如,对于交易来说,能够预测在短期内是否有更多…...
自动化运维:Ansible脚本之playbook剧本
目录 一、理论 1.playbooks 2.YAML 3.使用ansible批量安装apache服务 4.定义、引用变量 5.指定远程主机sudo切换用户 6.when条件判断 7.迭代 8.Templates 模块 9.tags 模块 10.Roles 模块 二、实验 1.使用ansible批量安装apache服务 2.定义、引用变量…...
基于角色访问控制-RBAC(Role-Based Access Control)
1.RBAC简介 RBAC(Role-Based Access Control)是一种基于角色的访问控制模型,它是一种安全策略,用于限制系统中用户对资源的访问权限。RBAC模型的核心概念是用户角色和资源访问权限。 在角色访问控制中,首先需要定义系…...
springboot项目实现断点续传
java代码 package com.ruoyi.web.upload.controller; import com.ruoyi.web.upload.dto.FileChunkDTO; import com.ruoyi.web.upload.dto.FileChunkResultDTO; import com.ruoyi.web.upload.result.Result; import com.ruoyi.web.upload.service.IUploadService; import org.s…...
解析经典面试题:for 循环中的 let var
更多文章可以看看我的博客:https://icheng.github.io/ 题目 for循环中,使用 var 或 let 声明 i 变量,会得到不同的结果 var arr []; for (var i 0; i < 2; i) {arr[i] function () {console.log(i);} } arr[0](); arr[1]();输出&…...
CSS按钮-跑马灯边框
思路很简单,实现方法有很多很多。但是大体思路与实现方法都类似:渐变色 动画,主要区别在动画的具体实现 0、HTML 结构 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><titl…...
【PCIE系统学习】Gen1/2Gen3/4 symobl与OrderSet概念对比
这个专栏要干的事:学习PCIE理论知识,学会PCIE IP/VIP的使用。可以达到上手做项目,而不是空有理论 适合谁看:正在学习PCIE 设计验证,但学的过于零散。想有对比的系统的学习。 低价收费的目的:抵制胡乱传播转载现象。 版本控制:便于增加内容以及勘误 版本说明v20230829 …...
C++ Qt 中QMimeDatabase类详细介绍以及应用场景
C Qt 中QMimeDatabase类详细介绍以及应用场景 文章目录 C Qt 中QMimeDatabase类详细介绍以及应用场景一、QMimeDatabase类是什么?二、QMimeDatabase类中的关键功能和特点三、QMimeDatabase的用法四、QMimeDatabase的应用场景 一、QMimeDatabase类是什么?…...
深度学习7:生成对抗网络 – Generative Adversarial Networks | GAN
生成对抗网络 – GAN 是最近2年很热门的一种无监督算法,他能生成出非常逼真的照片,图像甚至视频。我们手机里的照片处理软件中就会使用到它。 目录 生成对抗网络 GAN 的基本原理 大白话版本 非大白话版本 第一阶段:固定「判别器D」&#x…...
R语言空气污染数据的地理空间可视化和分析:颗粒物2.5(PM2.5)和空气质量指数(AQI)...
原文链接:http://tecdat.cn/?p23800 由于空气污染对公众健康的不利影响,人们一直非常关注。世界各国的环境部门都通过各种方法(例如地面观测网络)来监测和评估空气污染问题(点击文末“阅读原文”获取完整代码数据&…...
实现excel导出最简单方式
今天来记录一下导出excel的实现方式,导出的格式是xlsx的文件。 这里用到的是hutool的工具包,依赖如下: <dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.3.5&…...
【每日一题Day310】LC1654到家的最少跳跃次数 | BFS
到家的最少跳跃次数【LC1654】 有一只跳蚤的家在数轴上的位置 x 处。请你帮助它从位置 0 出发,到达它的家。 跳蚤跳跃的规则如下: 它可以 往前 跳恰好 a 个位置(即往右跳)。它可以 往后 跳恰好 b 个位置(即往左跳&…...
[Android AIDL] --- AIDL原理简析
上一篇文章已经讲述了如何在Android studio中搭建基于aidl的cs模型框架,只是用起来了,这次对aidl及cs端如何调用的原理进行简单分析 1 创建AIDL文件 AIDL 文件可以分为两类。 一类是用来定义接口方法,声明要暴露哪些接口给客户端调用&#…...
企业的固定资产管理怎么操作
一家拥有多台大型设备的工厂,这些设备需要定期进行保养和维护,以确保其正常运转。而企业内部员工由于专业知识和技能的不同,需要分工协作才能更好地完成各项工作任务。因此,在设备资产管理方面,如何实现高效、便捷、透…...
Rust 进阶学习
Rust 进阶学习 文章目录 Rust 进阶学习所有权作用域移动和克隆涉及函数的所有权机制涉及参数的所有权涉及返回值的所有权 引用和租借可变引用 枚举类枚举成员的属性枚举匹配 结构体结构体方法结构体关联函数 错误处理不可恢复错误可恢复错误 Rust代码组织管理Module默认的Modul…...
保护网站安全:学习蓝莲花的安装和使用,复现跨站脚本攻击漏洞及XSS接收平台
这篇文章旨在用于网络安全学习,请勿进行任何非法行为,否则后果自负。 环境准备 一、XSS基础 1、反射型XSS 攻击介绍 原理 攻击者通过向目标网站提交包含恶意脚本的请求,然后将该恶意脚本注入到响应页面中,使其他用户在查看…...
Redis——如何解决redis穿透、雪崩、击穿问题
目录 一、查询商品信息的常规代码示例二、缓存击穿2.1、缓存击穿的理解2.2、缓存击穿的解决方案2.3、解决缓存击穿的代码示例 三、缓存雪崩3.1、缓存雪崩的理解3.2、缓存雪崩的解决方案3.2.1、缓存集中过期的情况3.2.2、缓存服务器宕机的情况3.2.3、缓存服务器断电的情况 3.3、…...
MySQL一行记录是如何存储的?
目录 MySQL的数据存放在哪个文件? 表空间文件的结构是怎么样的? 1、行(row) 2、页(page) 3、区(extent) 4、段(segment) InnoDB 行格式有哪些…...
[element-ui] el-tree全部展开与收回
shrinkTreeNode () {// 改变一个全局变量this.treeStatus !this.treeStatus;// 改变每个节点的状态this.changeTreeNodeStatus(this.$refs.attrList.store.root); },// 改变节点的状态 changeTreeNodeStatus (node) {node.expanded this.treeStatus;for (let i 0; i < no…...
git 统计(命令)
查询某人某个时刻提交了多少代码 added 添加代码 removed 删除代码 total 总代码 git log --author刘俊秦 --since2023-08-01 00:00:00 --until2023-08-23 23:00:00 --prettytformat: --numstat | awk { add $1; subs $2; loc $1 - $2 } END { printf "added lines: %s…...
斐波那契1(矩阵快速幂加速递推,斐波那契前n项平方和)
链接:登录—专业IT笔试面试备考平台_牛客网 来源:牛客网 Keven 特别喜欢斐波那契数列,已知 fib11fib_11fib11,fib21fib_21fib21,对于 n>3n>3n>3,fibnfibn−2fibn−1fib_{n}fib_{n-2}fib_{n…...
minikube mac 启动
系统信息如下 最开始使用的minikube是1.22.0版本,按照如下命令启动: minikube start --memory7851 --cpus4 --image-mirror-countrycn遇到了下面一些问题: 1、拉取coredns:v1.8.0镜像失败 Error response from daemon: manifest for regis…...
从零开始学习 Java:简单易懂的入门指南之查找算法及排序算法(二十)
查找算法及排序算法 常见的七种查找算法:1. 基本查找2. 二分查找3. 插值查找4. 斐波那契查找5. 分块查找6. 哈希查找7. 树表查找 四种排序算法:1. 冒泡排序1.1 算法步骤1.2 动图演示1.3 代码示例 2. 选择排序2.1 算法步骤2.2 动图演示 3. 插入排序3.1 算…...
非煤矿山风险监测预警算法 yolov8
非煤矿山风险监测预警算法通过yolov8网络模型深度学习算法框架,非煤矿山风险监测预警算法在煤矿关键地点安装摄像机等设备利用智能化视频识别技术,能够实时分析人员出入井口的情况,人数变化并检测作业状态。YOLO的结构非常简单,就…...
Ansible学习笔记(一)
1.什么是Ansible 官方网站:https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html Ansible是一个配置管理和配置工具,类似于Chef,Puppet或Salt。这是一款很简单也很容易入门的部署工具,它使用SS…...
2024毕业设计选题指南【附选题大全】
title: 毕业设计选题指南 - 如何选择合适的毕业设计题目 date: 2023-08-29 categories: 毕业设计 tags: 选题指南, 毕业设计, 毕业论文, 毕业项目 - 如何选择合适的毕业设计题目 当我们站在大学生活的十字路口,毕业设计便成了我们面临的一项重要使命。这不仅是对我们…...
Error: PostCSS plugin autoprefixer requires PostCSS 8 问题解决办法
报错:Error: PostCSS plugin autoprefixer requires PostCSS 8 原因:autoprefixer版本过高 解决方案: 降低autoprefixer版本 执行:npm i postcss-loader autoprefixer8.0.0...
pymongo通过oplog获取数据(mongodb)
使用 MongoDB 的 oplog(操作日志)进行数据同步是高级的用法,主要用于复制和故障恢复。需要确保源 MongoDB 实例是副本集的一部分,因为只有副本集才会维护 oplog。 以下是简化的步骤,描述如何使用 oplog 进行数据同步&…...
MySQL数据备份与恢复
备份的主要目的: 备份的主要目的是:灾难恢复,备份还可以测试应用、回滚数据修改、查询历史数据、审计等。 日志: MySQL 的日志默认保存位置为: /usr/local/mysql/data##配置文件 vim /etc/my.cnf [mysqld] ##错误日志…...
基于ssm+vue汽车售票网站源码和论文
基于ssmvue汽车售票网站源码和论文088 开发工具:idea 数据库mysql5.7 数据库链接工具:navcat,小海豚等 技术:ssm 摘 要 互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让…...
【List】List集合有序测试案例:ArrayList,LinkedList,Vector(123)
List是有序、可重复的容器。 有序: List中每个元素都有索引标记。可以根据元素的索引标记(在List中的位置)访问 元素,从而精确控制这些元素。 可重复: List允许加入重复的元素。更确切地讲,List通常允许满足 e1.equals(e2) 的元素…...
【javaweb】学习日记Day6 - Mysql 数据库 DDL DML
之前学习过的SQL语句笔记总结戳这里→【数据库原理与应用 - 第六章】T-SQL 在SQL Server的使用_Roye_ack的博客-CSDN博客 目录 一、概述 1、如何安装及配置路径Mysql? 2、SQL分类 二、DDL 数据定义 1、数据库操作 2、IDEA内置数据库使用 (1&…...
使用 PyTorch C ++前端
使用 PyTorch C 前端 PyTorch C 前端是 PyTorch 机器学习框架的纯 C 接口。 虽然 PyTorch 的主要接口自然是 Python,但此 Python API 建立于大量的 C 代码库之上,提供基本的数据结构和功能,例如张量和自动微分。 C 前端公开了纯 C 11 API&a…...
6、NoSQL的四大分类
6、NoSQL的四大分类 kv键值对 不同公司不同的实现 新浪:Redis美团:RedisTair阿里、百度:Redismemcache 文档型数据库(bson格式和json一样) MongoDB MongoDB是一个基于分布式文件存储的数据库,一般用于存储…...
(动态规划) 剑指 Offer 60. n个骰子的点数 ——【Leetcode每日一题】
❓ 剑指 Offer 60. n个骰子的点数 难度:中等 把 n 个骰子扔在地上,所有骰子朝上一面的点数之和为 s 。输入 n,打印出s的所有可能的值出现的概率。 你需要用一个浮点数数组返回答案,其中第 i 个元素代表这 n 个骰子所能掷出的点…...
ArrayList与顺序表
文章目录 一. 顺序表是什么二. ArrayList是什么三. ArrayList的构造方法四. ArrayList的常见方法4.1 add()4.2 size()4.3 remove()4.4 get()4.5 set()4.6 contains()4.7 lastIndexOf()和 indexOf()4.8 subList()4.9 clear() 以上就是ArrayList的常见方法!…...
【【萌新的STM32-22中断概念的简单补充】】
萌新的STM32学习22-中断概念的简单补充 我们需要注意的是这句话 从上面可以看出,STM32F1 供给 IO 口使用的中断线只有 16 个,但是 STM32F1 的 IO 口却远远不止 16 个,所以 STM32 把 GPIO 管脚 GPIOx.0~GPIOx.15(xA,B,C,D,E,F,G)分别对应中断…...
Java 中数据结构HashMap的用法
Java HashMap HashMap 是一个散列表,它存储的内容是键值对(key-value)映射。 HashMap 实现了 Map 接口,根据键的 HashCode 值存储数据,具有很快的访问速度,最多允许一条记录的键为 null,不支持线程同步。 HashMap 是…...
Request对象和response对象
一、概念 request对象和response对象是通过Servlet容器(如Tomcat)自动创建并传递给Servlet的。 Servlet容器负责接收客户端的请求,并将请求信息封装到request对象中,然后将request对象传 递给相应的Servlet进行处理。类似地&…...
设计模式之桥接模式
文章目录 一、介绍二、案例1. 组件抽象化2. 桥梁抽象化 一、介绍 桥接模式,属于结构型设计模式。通过提供抽象与实现之间的桥接结构,把抽象化与实现化解耦,使得二者可以独立变化。 《Head First 设计模式》: 将抽象和实现放在两…...
pom.xml配置文件失效,显示已忽略的pom.xml --- 解决方案
现象: 在 Maven 创建模块Moudle时,由于开始没有正确创建好,所以把它删掉了,然后接着又创建了与一个与之前被删除的Moudle同名的Moudle时,出现了 Ignore pom.xml,并且新创建的 Module 的 pom.xml配置文件失效…...
文本编辑器Vim常用操作和技巧
文章目录 1. Vim常用操作1.1 Vim简介1.2 Vim工作模式1.3 插入命令1.4 定位命令1.5 删除命令1.6 复制和剪切命令1.7 替换和取消命令1.8 搜索和搜索替换命令1.9 保存和退出命令 2. Vim使用技巧 1. Vim常用操作 1.1 Vim简介 Vim是一个功能强大的全屏幕文本编辑器,是L…...
【算法系列篇】位运算
文章目录 前言什么是位运算算法1.判断字符是否唯一1.1 题目要求1.2 做题思路1.3 Java代码实现 2. 丢失的数字2.1 题目要求2.2 做题思路2.3 Java代码实现 3. 两数之和3.1 题目要求3.2 做题思路3.3 Java代码实现 4. 只出现一次的数字4.1 题目要求4.2 做题思路4.3 Java代码实现 5.…...
机器学习的测试和验证(Machine Learning 研习之五)
关于 Machine Learning 研习之三、四,可到秋码记录上浏览。 测试和验证 了解模型对新案例的推广效果的唯一方法是在新案例上进行实际尝试。 一种方法是将模型投入生产并监控其性能。 这很有效,但如果你的模型非常糟糕,你的用户会抱怨——这…...
RNN循环神经网络
目录 一、卷积核与循环核 二、循环核 1.循环核引入 2.循环核:循环核按时间步展开。 3.循环计算层:向输出方向生长。 4.TF描述循环计算层 三、TF描述循环计算 四、RNN使用案例 1.数据集准备 2.Sequential中RNN 3.存储模型,acc和lose…...
安防视频监控/视频集中存储/云存储平台EasyCVR无法播放HLS协议该如何解决?
视频云存储/安防监控EasyCVR视频汇聚平台基于云边端智能协同,支持海量视频的轻量化接入与汇聚、转码与处理、全网智能分发、视频集中存储等。音视频流媒体视频平台EasyCVR拓展性强,视频能力丰富,具体可实现视频监控直播、视频轮播、视频录像、…...
Docker技术--Docker的安装
1..Docker的安装方式介绍 Docker官方提供了三种方式可以实现Docker环境的安装。分别为:Script、yum、rpm。在实际的环境中建议使用yum或者是rpm。 2..Docker的yum安装 # 1.下载docker wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.re…...
客户案例|MemFire Cloud助推应急管理业务,打造百万级数据可视化大屏
「导语」 硬石科技,成立于2018年,总部位于武汉,是一家专注于应急管理行业和物联感知预警算法模型的技术核心的物联网产品和解决方案提供商。硬石科技作为一家高新技术企业,持有6项发明专利,拥有100余项各类平台认证和资…...
蒲公英路由器如何设置远程打印?
现如今,打印机已经是企业日常办公中必不可少的设备,无论何时何地,总有需要用到打印的地方,包括资料文件、统计报表等等。 但若人在外地或分公司,有文件急需通过总部的打印机进行打印时,由于不在同一物理网络…...
国产自主可控C++工业软件可视化图形架构源码
关于国产自主代替的问题是当前热点,尤其是工业软件领域。 “一个功能强大的全自主C跨平台图形可视化架构对开发自主可控工业基础软件至关重要!” 作为全球领先的C工业基础图形可视化软件提供商,UCanCode软件有自己的思考,我们认…...