Ethereum 2.0 Meeting #42 | 以太坊 2.0 会议第42期

Ethereum Core Devs Meeting #87以太坊核心开发者会议纪要 会议:以太坊核心开发者会议 #87 会议日期:2020年5月15日,星期五 会议时长:1.5小时 会议视频链接: https://youtu.be/bGgzALuyY3w 会议日程: 1.柏林EIP回顾 – 整合更新 - EIP-2315:用于EVM的简单子程序 - EIP-2537:BLS12-381 曲线操作 2.EFI EIP 回顾 - EIP-2515:难度炸弹 - EIP-2046:降低对预编译程序进行静态调用的Gas成本 3.柏林时间表 4.EIP-2565:EIP.. 阅读详情

会议:以太坊2.0会议#42

会议日期: 2020年6月25日

会议时长:1小时

会议视频链接:

https://youtu.be/P1AEmUt9ltg

会议日程:

1.测试和版本更新

2.测试网更新

-Altona测试网

-Attack测试网

3.客户端更新

4.研究更新

5.网络侧更新

-一些亟待讨论的网络互操作项目

6.规范讨论

7.开放讨论/总结

 

会议主要内容:

 

1.会议开始,主持人Danny先开始第一个议题,即测试和版本更新。Danny介绍说这次改动还有相当一部分工作没有完成,其中还加入了一部分测试项,比如无需获悉状态就进行Gossip验证的网络侧确认。这些改动都比较细微,等它们都完成以后,可能很快就会出一个新的版本。

 

Proto介绍他们的进展。他说他们扩展了Rumor工具来做区块的链测试,通过使用比现有RPC命令更高级的命令,很多工作比如同步测试、基准测试、分叉选择测试等,比将测试单独集成到每个客户端更加容易。Proto表示,如果审核人员发现了任何问题,尤其是发现规范相关的错误,请及时反馈给他。

 

2.第二个议题,测试网更新。

 

Altona测试网

Danny说社区里有很多关于Altona的讨论,还有一些想法试图返回到Genisis上。Afi说他们已经满足了最小抵押合约的数量,也满足了MIN_GENESIS时间。但是因为有些抵押合约需要重写,所以看起来Geinsis要拖延到周末。他担心没有工具在周末来观察Genisis。除了时间问题,其它都没问题,随时可以开始测试。Afi也表示他从周一开始会有几天不在,但并不影响测试工作,因为他并没有成功控制任何Genisis的验证节点,他希望客户端能帮助他控制。Danny提议延长4天时间再开始发布测试网,至于其它细节和Afi约定会后再讨论。

 

Attack测试网

Danny说他已经转发了一些介绍文档。他先解释了一下发布Attack测试网的原因。他说Altona是给开发者用作一般用途的,而Attack测试网的成立则是专门给那些有兴趣去破坏测试网、测试安全性的用户使用的。Danny计划当Altona稳定一些的时候,就让EF运行在有稳定的验证节点的客户端上面,然后争取快速迭代。之后也可以让客户端更多地参与进来。Danny说这是大概的计划,时间上计划2周。然后询问大家有无意见。Terence问Attack测试网是否在RPC端点(end point)用到测试替代方法?如果是的话,有没有相关的规范和标准?Danny回答说现在没有,他觉得开放RPC的端点还是比较危险的,先不要接触到主网,先测试一下类似DoS这种类型,然后慢慢的增加开放的程度。

 

3. 客户端的更新

 

Prysm:Rual介绍说过去的两周很有效。Quantstamp的审计工作结束了,发现了很多问题,现在正努力地修改找到的错误。Onyx比较稳定了,他们可以控制到2万个验证节点的一半了,内存的使用情况也在改善。他们还在改善惩罚协议,这种改善很大程度上提高了磁盘IO的性能,让他们能够更加容易地在测试网上捕获惩罚状况。同时他们根据关于密钥储存的EIP的讨论,也在做验证节点的账户或者密钥的修改翻新工作。

https://github.com/ethereum/eth2.0-specs/issues/1931

 

Trinity:Grant说规范从v0.9.4升级到了v0.11.3,同时也工作在v0.12.1上。Alex赶在分叉选择工作之前做预备性的代码重构工作,他们还在进行信标节点的同步工作。一旦这些工作完成,后面将继续尝试连接到Altona测试网。他们预计会碰到一些性能问题,之后再来解决。

 

Teku:用非阻塞代码替换了阻塞代码和网络侧RPC代码,并且开始了Supranational开源的 Blst BLS库的整合工作。他们通过限制内存中存放的区块数量来提高内存的使用效率,同时也在优化储存的效率和重构分叉选择的代码架构。最后合并了v0.12.1的软件分支到主线上面去,做好准备支持之后默认的Altona测试网的工作。

 

Lighthouse:Paul介绍说目前他们主要在做接入Altona测试网的准备工作,同步Teku,Trinity等客户端。规范v0.12已经准备好被合入了。为了进行优化,他们重新写了Discv5,也重构了分叉选择的代码。团队优化了节点控制,增加了一个积分系统在里面,并计划做一个验证节点用户界面的认证计划。为了保证一致性,他们还向数据库添加了原子性(atomicity),然后下一步计划合并新的Blst BLS库,进行密钥的管理工作等。

 

Nethermind:Tomasz介绍说他们目前正在优化抵押合约的效率,然后下一步是进行信标节点的优化。Tomasz表示,相比其它客户端团队,他们的工作有点延误并且还有很多工作需要做,尤其是关于对等节点互联的工作以及规范的最后升级。

 

Lodestar: Cayman介绍说,团队的主要工作在v0.12的更新上,但不包括Gossipsub。他们认为还没有准备好可靠地同步到Altona测试网,还有大量调试的工作需要做。最近新加入一个兼职的成员,希望能帮助加快速度。至于密钥管理方面,他们重写了验证节点的CLI代码。

 

Nimbus:Mamy介绍说和大家一样,团队目前正在做同步到Altona测试网的准备工作。他们做了一些哈希运算的优化的工作,包括通过缓存密钥将开始和重新加载的时间提高了20-100倍,尤其是经过长漫游节点(long roaming node)的时候,也包括内存泄漏的优化,优化后向后同步的速度比向前同步要快。Mamy说,他们还解决了信标节点模糊测试的问题。验证节点分离(validator split)工作有点进展了。他们还准备开始做BLS库后端的工作,具体是Milagro, Herumi还是Blst仍未决定。但Nimbus默认已经到v12.1规范上。网络侧方面,Gossipsub,Discv5有一些进展,同时引入了一个Discv5的矩阵。测试网方面,Oynx测试网已经完成,准备同步到Altona测试网。

 

4. Danny开始下一个议题,研究更新。

 

Aditya首先发言。他分享了他在弱主观性(weak subjectivity)方面的研究进展。他在准备一份文档,里面推荐了客户端安排弱主观性检查点的方法。从安全性考虑出发,他推荐客户端从比Genisis更早的时间开始同步。经过缜密的计算,他得出最佳时间是在Genisis之前的14天开始同步。在客户端的工作流程中,从时间上看检查点的分布间隔大约是7-10天。他说还有很多需要讨论的地方,比如检查点在代码中如何分布,是放在客户端的代码中,还是p2p的结束点上。更多的讨论建议放在Discord频道或者下一次会议的时候。Danny回复说,文档他已经看过了,写的很好。

 

Danny询问Carl说有没有关于密钥存放标准EIP的进展。Carl回复说,关于密钥处理这个问题,上周开会已经讨论过,并对许多事情达成一致。具体来说,EIP-2333在密钥派生上有了一个突破性的变化,同时放宽了撤销密钥的路径要求,在某些条件下,用户可以选择自己设定的路径。关于密钥存储,处理Unicode密码有了进展.经过讨论,他们决定使用与助记符生成(mnemonic generation)相同的机制。现在还有一个描述字段,可以让用户备注。

 

Danny询问是否和客户端达成了一致?有没有制定一个完善的标准?Carl回复说上次讨论的EIP-2335密钥库是客户端都一致同意的存放和交换密钥的标准。这也是客户端应该做到的最低标准。至于标准制定,Carl希望在标准制定仓库中添加最低限度的实践指南,来代替完整的标准。

 

Vitalik发言说推荐一个在以太研究上发表的关于GKR的在snark中做哈希运算的帖子。这个研究对于证词压缩很有用,效率很高,可以取代多项式承诺和Verkle树。从数据大小上来说也很有优势:Verkle树根据不同的操作大概有100字节的费用开支,而新的办法的费用开支的字节数可以为零。Dankrad提醒道,新方法使用了代数哈希函数,并没有解决安全性的问题。

https://ethresear.ch/t/using-gkr-inside-a-snark-to-reduce-the-cost-of-hash-verification-down-to-3-constraints/7550

 

Leo介绍说他们在评估不同类型的gossipsub。希望能够和客户端合作,收集他们曾经遇见过的奇怪的状况。Danny解释说Leo正在深入研究gossipsub攻击防御的事情。

https://github.com/leobago/BSC-ETH2

 

TXRX介绍说他们正在研究验证节点的去匿名化(deanonymisation)。在以太研究上写了一个叫Packetology的系列。第一个就是关于去核化验证节点的草案。同时他们也在做phase1的客户端。

https://ethresear.ch/t/packetology-validator-privacy/7547

 

5. 下一个议题是网络侧的更新。Danny表示Rual发现现有的规范里面是支持Snappy以及非Snappy的,所以Danny询问客户端有没有明确的使用场景是用到非Snappy的?一开始是什么原因决定要两种规范都支持的?Jacek回复说当初两个都决定支持是因为要给客户端时间去做Snappy支持。Danny说他认为可以去掉非Snappy了,但还是等待大家的决定。

 

Jacek说其实对于Snappy压缩我们到现在还没有做全面的分析,我们只是直觉认为证词的比特字段(attestation bit fields)压缩的很好,但是没有确切的数据,所以建议要做一次测试,拿到点数据。Danny表示赞同,应该像做健康检查一样给压缩率做一个测试,分成单个证词,多个证词和一系列区块等情况测试压缩量(compression number)是多少。Leo自愿来完成这个任务。

 

Danny继续发言谈到yamux技术的支持。他说这是一种先进的技术,他认为这是一种更好的多路复用器(multiplexer),现在还没有人能够支持。Lighthouse和Prysm两者之间还有兼容性的问题,所以最好先屏蔽这个功能直到能够兼容和调试。

 

Jacek又提出客户端Witti很难连接到Noise上去,感觉规范变了,但很多其它客户端还在运行着旧版本的规范。Danny询问有没有人知道Noise的规范是否已经归档了?Jacek说他不清楚版本,但是他知道第一次的代码实现和现有代码有着很大的差别。Paul也表示Lighthouse和Prysm现在不能连接到Noise上。Danny说可能因为网络侧回退到了secio。Danny建议关闭secio,会后会在网络侧的Discord频道做更多的讨论,包括规范版本以及是否关闭secio。

 

Jonny询问一个问题,他发现规范上设定了最大的时钟偏差参数是500ms,他询问这个是如何验证的?Jacek表示他不知道如何得出这个数值,但是在之前的审计中他发现这个数值越大效果越好,因为留给进来并且需要验证的数据的时间越长,丢包的情况就越不容易发生。他表示更合理的办法是做一个排队的缓存来存放接收到但来不及处理的数据。Jonny决定调查一下,想找出还有哪些参数和这方面有关,不同参数的调节会得出什么样的效果。最后他会弄一个图表出来。

 

6. 规范讨论和开放讨论这次没有更新。Danny预祝Altona在即将到来的周一发布成功!会议结束。

 

与会开发者:

Aditya Asgaonkar

Afri Schoe

Age Manning

Alex Stokes

Ben Edgington

Carl Beekhuizen

Cayman

Danny Ryan

Dankrad

Grant Wuerker

Guillaume

Hsiao-Wei Wang

Jacek Sieka

Jonathan Rhea

Joseph Delong

Lakshiman Sankar

Mamy

Matt Garnett

Mehdi |Sigma Prime

Pooja Ranjan

Protolambda

Raul Jordan

Terence (Prysmatic)

Tomasz S.

Vitalik

 

欢迎转发,本内容遵循CC BY-SA 2.5协议:

https://creativecommons.org/licenses/by-sa/2.5/

 

你的支持,是对我们的认可。来打赏我们一杯咖啡吧!​打赏地址:

以太坊:

0x7Ba18D8d4B0E4EB06a720aF2BeC29603078c806b

Gitcoin: 

https://gitcoin.co/grants/468/ethplanet

                                                       

 

Ethereum Core Devs Meeting #86以太坊核心开发者会议纪要 会议:以太坊核心开发者会议 #86 会议日期: 2020年5月1日,星期五 会议时长:2小时 会议视频链接: https://youtu.be/MOZ7_0Tb95M 会议日程: 1.柏林EIP回顾 -EIP-2315: 用于EVM的简单子程序
 -EIP-2537: BLS12-381 曲线操作 2.EFI EIP回顾 -EIP-2515: 难度炸弹 -EIP-2046: 降低对预编译程序进行静态调用的Gas成本 3.柏林时间表 4.EIP-1057: ProgPoW 工作量.. 阅读详情

相关推荐

手把手教你搞定EMC EFT测试:从电源线到信号线的完整整改实战(附常见失败原因)

本文详细解析了EMC EFT测试中的常见问题及整改措施,从电源线到信号线的完整实战方案。通过四步定位法和成本最优整改策略,帮助工程师有效应对电快速脉冲群干扰,提升产品通过率并降低成本。

weixin_30920597的博客 497

Ethereum 2.0 Meeting #40 | 以太坊 2.0 会议第40期

会议:以太坊2.0会议 #40 会议日期: 2020年5月28日,星期四 会议时长:1.5小时 会议视频链接: https://youtu.be/xvIk22HvTVE 会议日程: 1.测试和版本更新 2.测试网更新 3.客户端更新 4.研究更新 5.网络更新 6.规范讨论 7.开放讨论/总结 会议主要内容: 1.主持人Danny 开始第一个议题:测试和版本更新。Danny表示v0.12版本发布了,耗费的时间比预期的要长。v0.12版本主要将BLS升级到最新版的IETF...

ETHPlanet的博客 734

保姆级教程:在RK3568开发板上手把手配置RMII百兆以太网DTS节点

本文提供了一份详细的RK3568开发板RMII百兆以太网DTS节点配置教程,涵盖基础概念解析、关键参数设置、实际操作步骤及常见问题排查。通过手把手指导,帮助开发者快速完成RK3568开发板的以太网配置,特别适合嵌入式系统开发者参考。

weixin_33686714的博客 137

Ethereum 2.0 Meeting #38 | 以太坊 2.0 会议第38期

从本月开始,我们将把以太坊2.0会议译成中文,并与社区分享。 会议:以太坊2.0会议 #38 会议日期: 2020年4月23日,星期四 会议时长:1小时 会议视频链接: https://youtu.be/avRcGzfjeIw 会议日程: 1.测试和版本更新 2.客户端更新 3.测试网更新 4.研究更新 5.网络更新 6.规范讨论 7.开放讨论/总结 会议主要内容: 1. 会议开始,会议由Danny Ryan主持。他首先开始第一个议题,测试和版本更新。他介绍说...

ETHPlanet的博客 630

Veeam Backup & ONE download

前言 Veeam® Availability Suite™ 是 Veeam 的旗舰解决方案,可实现简单、灵活和可靠的数据管理。消除与数据保护、恢复、监控、勒索软件防护和合规性相关的手动流程,从而减轻数据维护压力。Veeam 能够帮助您节省时间和成本,同时支持您减少在备份方面花费的时间,将更多精力放在推动业务发展上。 Veeam Availability Suite Release 版本 包含 发布时间 复制磁力链接使用迅雷或者bittorrent ...

极致,细节 1996

Altair HyperWorks 2022.3.0 Suite下载

Altair HyperWorks开发团队提供了新的一流技术,以设计和优化高性能、高效和创新的产品,并发布了HyperWorks 2021.2套件。与所有新版本一样,这个版本包含了新特性、增强功能,并修复了前一个版本中用户报告的各种问题,提供了总体上更稳定的体验。链接: https://pan.baidu.com/s/1rYietmQLQUboHiJzYoE9WQ?pwd=m9yh 提取码: m9yh 复制这段内容后打开百度网盘手机App,操作更方便哦。

weixin_48469365的博客 2125

Ethereum 2.0 Meeting #39 | 以太坊 2.0 会议第39期

会议:以太坊2.0会议 #39 会议日期: 2020年5月14日,星期四 会议时长:1.5小时 会议视频链接: https://youtu.be/7uZtEy0nNbw 会议日程: 1. 测试和版本更新 2. 客户端更新 3. 测试网更新 4. 研究更新 5. 网络更新 6. 规范讨论 7. 开放讨论/总结 会议主要内容: 1. 会议开始。主持人Danny开始第一个议题:测试和版本的更新。Danny介绍说现在主要力量都集中在v0.12的版本上面,要合并升级后的BLS曲线草..

ETHPlanet的博客 614

Openclaw第3章:进阶部署

本章面向需要在特定环境中稳定运行 OpenClaw 的用户,介绍 Windows、Linux、Docker 以及 Cloudflare Workers 四种进阶部署方式。每种方式各有侧重:Windows 部署适合桌面用户日常使用,Linux 部署适合开发者,Docker 部署适合追求环境隔离的运维场景,Cloudflare Workers 部署则适合希望获得全球边缘网络加速的用户。读者可根据自身环境和需求选择合适的方案,完成本章后可继续阅读第4章了解维护升级流程。

Maynor的博客 1293

Ethereum 2.0 Meeting #41 | 以太坊 2.0 会议第41期

会议:以太坊2.0会议#41 会议日期:2020年6月11日 会议时长:1小时 会议视频链接: https://www.youtube.com/watch?v=WmU3k2v4UA8 会议日程: 1.测试和版本更新 2.测试网更新-密钥安全问题 3.客户端更新 4.API WG更新 5.研究更新 6.网络更新 7.规范讨论 8.开放讨论/总结 会议主要内容: 1.会议开始,主持人Danny先介绍会议议程,这次加入了API的部分,其它和过往的会议一样。先开始第...

ETHPlanet的博客 457

改进yolov8|BackBone改进:PWConv、FasterNeXt替换yolov8主干网络

各位哥哥姐姐弟弟妹妹大家好,我是干饭王刘姐,主业干饭,主业2.0计算机研究生在读。和我一起来改进yolov8变身计算机大牛吧!本文中的论文笔记都是刘姐亲自整理,原创整理哦~

weixin_44379985的博客 748

AUTOSAR 3万字面试题全面解析(持续更新)

ECU抽象层(EAL)是AUTOSAR架构中的一部分,它位于微控制器抽象层(MCAL)之下,但通常与MCAL一起被提及。EAL的目标是提供一个统一的接口来访问和管理ECU(Electronic Control Unit,电子控制单元)的硬件资源,包括处理器、存储器和外围设备。通过这种抽象,EAL使得上层软件能够以一种标准化的方式与ECU硬件交互,而不需要关心具体的硬件实现细节。EAL解决了硬件异构性带来的问题,即不同ECU可能采用不同类型的处理器和硬件配置。

大模型大数据攻城狮的专栏 5603

Ethereum Core Devs Meeting #89 | 以太坊核心开发者会议第89期

会议:以太坊核心开发者会议第89期 会议日期: 2020年6月12日,星期五 会议时长:1小时 会议视频链接: https://www.youtube.com/watch?v=c_JmTqeQkU4 会议议程: 1.柏林EIP - 集成更新 -EIP-2315: 用于EVM的简单子程序 
 -EIP-2537: BLS12-381曲线操作 2.讨论预编译价格调整的问题 -EIP-2046: 降低对预编译程序进行静态调用的Gas成本 -EIP 2666: 预编译和Keccak256函..

ETHPlanet的博客 721

BW 技术 InfoObject 初始化,一次把 0LANGU、0CURRENCY、0IOBJNM 这些底座对象讲透

摘要:BW/4HANA和S/4HANA嵌入式分析中最容易被忽视的关键技术InfoObject(如0LANGU、0UNIT等)是系统运行的基础骨架。这些对象虽不直接涉及业务,但若未正确激活会导致多维分析、查询运行等核心功能异常。BW/4HANA中应通过任务清单SAP_BW4_SETUP_SIMPLE或SAP_BW4_SET_OPERATION_SCOPE激活,而非旧事务码RSTCO_ADMIN。S/4HANA嵌入式分析仍需依赖这些底层BW组件,配置需参考SAP Note 2636754。项目实践中需特别关注这

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1383

Ethereum Core Devs Meeting #82以太坊核心开发者会议纪要

会议:以太坊核心开发者会议#82 会议日期:2020年3月6日,星期五 会议时长:3小时 会议视频链接: https://youtu.be/kham8c0qhmw 会议日程: 1. 先讨论Eth 2.0 BLS signature/EIP-1962相关问题 EIPs#2537 https://github.com/ethereum/EIPs/pull/2537 EIPs#...

ETHPlanet的博客 559

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Ethereum Core Devs Meeting #91 | 以太坊核心开发者会议第91期

会议:以太坊核心开发者会议#91 会议日期: 2020年7月10日 会议时长:1.5小时 会议视频链接: https://youtu.be/RUZ3eJ81c0k 会议议程: 1.EIP讨论 -EIP-1559更新 -账户抽象更新 -EIP-2046基准测试 -EIP-2718深入思考 -EIP-2711介绍 2.网络健全 -继续上次会议内容讨论 -客户端实施方法深度解析 3. 前次会议的决定和实施回顾 会议主要内容: 主持人 Hudson James...

ETHPlanet的博客 675

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain&#39;s apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath(&#39;DeepLearnToolbox&#39;));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand(&#39;state&#39;,0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W&#39;); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand(&#39;state&#39;,0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = &#39;sigm&#39;;%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, &#39;Too big error&#39;);```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand(&#39;state&#39;,0)sae = saesetup([784 100]);sae.ae{1}.activation_function = &#39;sigm&#39;;sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)&#39;)% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = &#39;sigm&#39;;nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, &#39;Too big error&#39;);```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x&#39;,28,28,60000))/255;test_x = double(reshape(test_x&#39;,28,28,10000))/255;train_y = double(train_y&#39;);test_y = double(test_y&#39;);%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you&#39;ll get around 1.2% errorrand(&#39;state&#39;,0)cnn.layers = { struct(&#39;type&#39;, &#39;i&#39;) %input layer struct(&#39;type&#39;, &#39;c&#39;, &#39;outputmaps&#39;, 6, &#39;kernelsize&#39;, 5) %convolution layer struct(&#39;type&#39;, &#39;s&#39;, &#39;scale&#39;, 2) %sub sampling layer struct(&#39;type&#39;, &#39;c&#39;, &#39;outputmaps&#39;, 12, &#39;kernelsize&#39;, 5) %convolution layer struct(&#39;type&#39;, &#39;s&#39;, &#39;scale&#39;, 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, &#39;Too big error&#39;);```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand(&#39;state&#39;,0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, &#39;Too big error&#39;);%% ex2 neural net with L2 weight decayrand(&#39;state&#39;,0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, &#39;Too big error&#39;);%% ex3 neural net with dropoutrand(&#39;state&#39;,0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, &#39;Too big error&#39;);%% ex4 neural net with sigmoid activation functionrand(&#39;state&#39;,0)nn = nnsetup([784 100 10]);nn.activation_function = &#39;sigm&#39;; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, &#39;Too big error&#39;);%% ex5 plotting functionalityrand(&#39;state&#39;,0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = &#39;softmax&#39;; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, &#39;Too big error&#39;);%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand(&#39;state&#39;,0)nn = nnsetup([784 20 10]); nn.output = &#39;softmax&#39;; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, &#39;Too big error&#39;);```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Ethereum Core Devs Meeting #88 | 以太坊核心开发者会议第88期

会议:以太坊核心开发者会议 #88 会议日期: 2020年5月29日,星期五 会议时长:1.5小时 会议视频链接: https://youtu.be/UJ1jK73rKdk 会议日程: 1.柏林EIP – 集成更新 -EIP-2315:用于EVM的简单子程序。 -EIP-2537:BLS12-381曲线操作 2.EFI EIP回顾 -EIP-2046: 降低对预编译程序进行静态调用的Gas成本 -EIP-2565: EIP-198 ModExp 预编译的价格调整 3.EIP-...

ETHPlanet的博客 489

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Ethereum Core Devs Meeting #84以太坊核心开发者会议纪要

会议:以太坊核心开发者会议 #84 会议日期: 2020年4月3日,星期五 会议时长:1.5小时 会议视频链接: https://www.youtube.com/watch?v=JqxVvJBhTxo 会议日程: EIP 回顾 EIP-1962 and EIP-2537 EIP-2515 难度炸弹 EIP-2315 EVM的简单子网络 EIP-2456 基于时间的升级...

ETHPlanet的博客 533

Ethereum Core Devs Meeting #85以太坊核心开发者会议纪要

会议:以太坊核心开发者会议 #85 会议日期: 2020年4月17日,星期五 会议时长:1.5小时 会议视频链接: https://youtu.be/KlzwFLOj6Bw 会议日程: 1. 柏林EIPs - EIP-2315: 用于EVM的简单子程序 - EIP-2537: BLS12-381曲线操作 2. EIP回顾 - EIP-2515: 难度炸弹 - EIP-2456: 基于时间戳而不是区块数进行升级 - EIP-2046: 降低对预编...

ETHPlanet的博客 711

Ethereum Core Devs Meeting #83以太坊核心开发者会议纪要

会议:以太坊核心开发者会议 #83 会议日期: 2020年3月20日,星期五 会议时长:2小时 会议视频链接: https://www.youtube.com/watch?v=vDGj660uZE0 会议日程: EIP 回顾 EIP-2537 EIP-1962 fuzzing test EIP-2542 其它(预)EIP提议 - 传输postdata (草案 EIP-22...

ETHPlanet的博客 499

Ethereum Core Devs Meeting #90 | 以太坊核心开发者会议第90期

会议:以太坊核心开发者会议#90 会议日期: 2020年6月26日 会议时长:1.5小时 会议视频链接: https://www.youtube.com/watch?v=IZEcukn9J0Y 会议议程: 1.关于功能开发与网络维护的辩论 -如何在增加功能和保持网络健康之间保持平衡,避免让实施者们过于疲惫,同时又能促进实现方式的多样性等 2.柏林EIP - 集成更新 -Yolo测试网 -EIP-2315: 用于EVM的简单子程序 
 -EIP-2537: BLS12-381曲线操作..

ETHPlanet的博客 485

空圈容错・优快云 站点技术架构信任链诊断

本文为基于公开故障现象的黑箱架构推演报告,聚焦“监控健康但用户访问异常”共性问题。提出C/M/V/P四层可达性分析框架,强调V层需满足数据源、方法、环境三异才具仲裁能力。通过R1–R10探针识别架构风险,揭示同源校验、配置共担、降级粗放等隐患。诊断指出:进程存活≠链路通畅,200状态码≠内容正确。配套8问自测清单与∅_safe分级降级方案,推动从“全好/全崩”到“半坏可控”的可观测跃迁。所有推断假说需依赖图谱与压测验证,不构成线上定论。

Liaiyang66的博客 338

什么是加密货币凭证?

本文探讨了加密货币凭证对数字身份管理的变革性影响,强调了其核心优势,如增强的安全性和即时验证。它通过利用区块链的去中心化技术,解决了与凭证伪造、丢失和低效验证过程相关的问题。读者将了解到加密货币凭证如何在教育、专业认证和医疗等领域提供防篡改和全球可访问的解决方案。文章深入探讨了实际应用,展示了像麻省理工学院、项目管理协会和等组织为什么采用区块链凭证来简化流程并提升信任。

2301_77604523的博客 122

期货合约还有历史K线,就表示现在还能交易吗?

打开以前保存的期货研究资料,某个合约的K线仍能正常显示,过去的价格、成交量也都在。看着熟悉的图,容易顺势觉得:既然还能看,这个合约应该仍可作为当前交易对象。但图里保存的是过去发生过什么,当前合约状态回答的是它现在处于什么生命周期。历史K线仍在,与合约已经下市可以同时成立。对研究者来说,更有用的处理不是在“继续盯它”和“删掉旧图”之间二选一,而是把历史档案与当前关注对象分开。TqSdk提供的合约下市标志,可以帮助把这层区别标明白。

weixin_49134609的博客 175

【无标题】

随着区块链技术在数字资产管理、DeFi金融、NFT交易和Web3应用中的不断发展,智能合约已经成为链上业务运行的重要基础设施。智能合约通过预设程序自动执行资产转账、交易结算和业务规则,能够提高业务处理效率,但也面临代码漏洞、私钥泄露、异常交易和恶意攻击等安全风险。对于企业级区块链项目而言,智能合约完成开发、测试和部署,并不意味着安全工作已经结束。

2601_96183616的博客 227

微软技术日报 2026-11-03:冒牌 Claude Code 扩展留后门、Fabric 数据工程 agent 进预览、Access IE 控件定退场

微软安全博客在 10 月 30 日复盘了一起扩展市场供应链事件:一个冒用 Anthropic 名字的 Cursor 扩展,在被下架之前挂了约 11 个小时。它做的事情不复杂,装完之后在你机器上开一条反向 SSH 隧道,留三处开机自启,再把主机信息发回一台固定 IP 的服务器。同一天前后,微软在 Fabric 社区大会巴塞罗那站把数据工程 agent(Project Osmos)放进了公共预览,在乌镇拿了一个奖,Access 团队则给一个用了二十年的浏览器控件定了退场日期。

海盗Sharp的博客 397

热重分析仪TG 309 Libra Classic

同时供应T3Ster SI热阻测试仪、POWERTESTER功率循环测试设备、LMS振动噪声测试系统、TMA热机械分析仪、DMA动态热机械分析仪、DSC差示扫描量热仪、STA同步热分析仪、TGA热重分析仪、旋转流变仪、LFA闪射法导热仪、热流法导热系数测量仪,面向汽车电子、消费电子、电力电子、新能源、材料领域,提供软件方案、测试仪器、系统集成、设备调试与工程咨询服务。仪器提供多种不同质地、不同尺寸的坩埚以满足试验的需要,包括氧化铝坩埚、铂铑坩埚、铝坩埚、石墨和石英坩埚等。温度范围:RT(10)…

HOLLYSW的博客 200
上一篇: Ethereum Core Devs Meeting #90 | 以太坊核心开发者会议第90期
下一篇: Ethereum Core Devs Meeting #91 | 以太坊核心开发者会议第91期
ETHPlanet
博客等级 码龄7年 23粉丝 22原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值