区块链100讲:通过一次交易旅程来理解Hyperledger Fabric节点

GlanceMind自动化发布测试:四层验证模型与工程落地实践 发布测试是CI/CD流程中保障线上质量的关键环节,其本质是验证系统在真实环境中的行为契约是否成立。从基础连通性、静态资源完整性、API行为一致性,到端到端业务流可用性,分层验证能精准定位发布风险。结合网络适应性、负载承载力与协议可靠性等非功能维度,可覆盖Web应用、车载系统、ROS2、MQTT等多元场景。GlanceMind通过轻量探针、哈希校验、契约锚点和声明式E2E,将模糊的‘感觉正常’转化为可量化、可追溯、可归因的断言结果,真正实现发布前的质量门禁。 阅读详情

image

1

Peer Nodes 节点

在任何区块链网络里面,节点都是构成整个网络必不可少的组成部分。在Hyperledger Fabric的网络里面,在节点上,我们可以实现和定制 chaincode,当然还有与之附随的 chaincode 的 Blockchain Ledger。

image

  • 节点是 chaincode, Blockchain Ledger的载体。每个节点上都有一份 chaincode 的 Blockchain Ledger 的拷贝。

  • 每个节点都可以被:创建, 开始, 停止, 重新设定, 删除。

  • 一个节点上,可以有多个 chaincode 和 Blockchain Ledger, 而一个 Blockchain Ledger为多个chaincode提供服务。

  • 每个节点上都有一个默认的 system chaincodes。

2

Multiple Ledgers and Chaincodes *多账本 多智能合约*

一个节点里面,有一个 chaincode 的 Blockchain Ledger 是很常见的。在Hyperledger Fabric的网络里面,一个节点上有多个 Blockchain Ledger,而基于每个 Blockchain Ledger,又有多个 chaincode,也是很常见的。而每个节点上都有一个默认的 system chaincodes。

image

3

Applications and Peers 应用与节点

what’s most important to understand is the difference in application-peer interactions for ledger-query compared to ledger-update transaction styles.

一个外部应用,比如安卓上的一个应用,可以通过 Hyperledger Fabric Software Development Kit (SDK) 里面提供的 APIs 来连接节点,触发 chaincode,生成交易,通过 ordered(排队,排序) 之后,被广播到网络其他节点上。

image

从一个应用的角度:

  • 通过API链接节点

  • 尝试激活智能合约

  • 收到节点的回复(在回复之前,节点会激活请求的智能合约,智能合约生产指令,更新回复)

  • 把收到的回复,提交给排序节点(排序节点会做相关确认,然后把这次交易的信息排队到广播队列中)

  • 收到节点以及更新的回复

从一个节点的角度:

  • 是有能力在确认相关信息之后,独立执行智能合约的。因为所需要的信息在这个节点的本地都有备份。

  • 虽然可以独立执行智能合约,但是不能独立的把执行结果广播出去。

4

一次交易的旅程

4.1 参与方

  • A :收购萝卜

  • B :出售萝卜

  • peerA:代表A

  • peerB:代表B

4.2 假设

  • 我们的联盟网络已经建成,而且参与方已经通过相关资格认证机构,注册,并且有相关材料证明其身份。

The application user has registered and enrolled with the organization’s certificate authority (CA) and received back necessary cryptographic material, which is used to authenticate to the network.

  • 包含了代表萝卜市场的一对key和value的智能合约已经在联盟网络里配置好了。

  • 智能合约的逻辑里面,包含了交易的步骤以及一个萝卜的价格。并且在背书协议里面,包含了必须双方提出背书。

4.3 交易步骤

  • A想发出购买萝卜的请求。因为需要双方背书,所以A同应用,把这请求同时发给了,peerA和peerB。

  • SDK生成请求。这个请求可以执行一个智能合约,从而可以读写(比如加入一对新的代表萝卜市场的key和value)账本。

  • SDK将交易打包为正确的格式,并用用户的加密凭证为此交易提议生成唯一的签名。

  • 背书节点,如果签名验证成功,就执行请求

主要验证:
・请求的格式是否正确
・这个请求在之前已经被执行过
・签名是否有效
・请求提出者,在权限上是否符合此次请求的内容。

  • 背书节点,执行请求,生成结果。此时账本还没有做任何的更新。和背书节点的签名一起,返回给请求者。

本文作者:HiBlock区块链技术布道群-AmyWu

原文发布于简书

加微信baobaotalk_com,加入技术布道群

以下是我们的社区介绍,欢迎各种合作、交流、学习:)

image

模型上线不是终点:生产环境中的系统性风险与治理实践 机器学习模型部署并非简单封装为API,而是将其嵌入复杂业务系统后的全生命周期工程。从特征供给稳定性、协议兼容性到熔断降级策略,每一个环节都可能成为故障源头。在金融等强监管场景中,模型必须具备时间确定性、结果一致性与可审计性,同时支持漂移检测、决策溯源和合规解释。本文聚焦模型在生产环境中的真实挑战——如特征空值率突增、gRPC/HTTP协议不匹配、重试导致重复计费等高频问题,并提供可落地的集成验证清单、五维监控矩阵与影子模型兜底方案,助力AI系统实现从‘能跑通’到‘可信赖’的关键跃迁。 阅读详情

相关推荐

AI与大数据欧洲展会30天技术落地作战地图

AI与大数据系统在真实工业场景中的工程化落地,本质是算法、数据治理与合规能力的三重协同。其核心原理在于将模型能力嵌入客户业务流程闭环,而非孤立验证指标;技术价值体现在降低GDPR合规风险、提升跨区域部署稳定性及加速POC到规模化交付的转化效率;典型应用场景覆盖智能制造实时质检、金融风控图神经网络推理、医疗联邦学习等高监管要求领域。本文聚焦‘AI and Big Data Expo Europe’展前30天关键窗口,系统梳理数据主权确认、抗干扰Demo环境构建、业务语义对齐等实战动作,深度融合GDPR合规适配

clhq71932的博客 450

区块链-背书

1.背书,这个词源来自银行票据业务,是指票据转让时,原持有人在票据背面加盖自己的印鉴,证明该票据真实有效、如果有问题就可以找原持有人。 区块链中的背书就好理解了。可以简单的理解为验证交易并声明此交易合法(或不合法)的链中节点 2.背书节点(endorsement、endorsor) 在区块链中承担背书任务的节点即是背书节点。背书节点必须通过有效证书的预期信息的有效签名来证明其合法性 3.背书策略 背书策略(endorsement policy)可以理解为是对交易进行背书必须满足的条件,即要得到背书

nature_ph的博客 5906

机器学习模型生产就绪:从Notebook到可靠决策系统的工程实践

机器学习模型上线不是开发终点,而是系统性工程挑战的起点。在金融等强监管、高实时性场景中,模型稳定性远不止于算法精度,更依赖特征管道可靠性、端到端延迟控制、无标签漂移检测与可审计治理机制。本文围绕模型生产化核心痛点——特征延迟、服务降级、分布漂移、合规留痕与跨团队协同,提炼出可落地的五维监控矩阵、三阶集成验证法、弹性水位线扩缩容策略及‘验证即代码’审计体系,覆盖从数据输入、模型推理到业务决策的全链路可靠性保障,为信贷、风控、营销等关键AI应用提供面向真实世界的ML Ops方法论。

weixin_34393428的博客 520

Hyperledger Fabric 自动发现网络信息 discover 工具使用

客户端要往 Fabric 网络中发送请求,首先需要知道网络的相关信息,如网络中成员组织信息、背书节点的地址、链码安装信息等。在 Fabric v1.2.0 版本之前,这些信息需要调用者手动指定,容易出错;另外,当网络中信息变更后(如节点上下线)还需要再次更新。

y19910825的博客 2027

银行级机器学习系统:从模型上线到生产就绪的工程实践

机器学习模型部署不是终点,而是系统性风险的起点。在真实生产环境中,模型需面对数据漂移、特征管道断裂、跨系统依赖和毫秒级延迟等挑战。其核心原理在于将模型视为嵌入业务流水线的活体组件,而非孤立服务。技术价值体现在可观测性、可回滚性、可解释性与可问责性的统一构建,支撑高可用、强合规、易审计的AI系统。典型应用场景包括银行实时风控、信贷审批与反欺诈决策,尤其强调特征时效性、协议兼容性、降级策略与决策溯源能力。本文深入解析银行场景下MLOps落地的关键实践与高频故障根因。

weixin_30911451的博客 377

hyperledger fabric服务发现区块链网络实例

本实例的fabric版本为1.4.6,采用raft共识,5个orderer节点,4个peer节点,采用java chaincode,在单服务器上部署运行,压缩包内有网络部署的命令行,可用于这篇文章中java sdk demo的测试,文章地址:https://blog.youkuaiyun.com/weixin_43562234/article/details/106252587

管理Fabric网络 (v2.0.0)

目录 一、启动Fabric网络 二、进入 cli 客户端 三、通道管理 四、管理节点 五、管理链码 一、启动Fabric网络 参考博文Fabric安装与部署(fabric 2.0版本)_m0_47233175的博客-优快云博客 二、进入 cli 客户端 docker exec -it cli bash 三、通道管理 使用 peer channel 命令进行通道操作 (可以输入peer channel --help 命令查看具体命令的使用) for example:列出pe..

lzh_97的博客 1213

ZYNQ烧写程序到flash

1.打开SDK创建FBSl项目 点击finish 2.创建BootImage 导入fsbl.elf、.bin、.elf三个文件,Create Image 生成BOOT.bin文件 3.将BOOT文件烧录到FLASH image File选择2中生成的BOOT.bin文件,FSBL File选择fsbl.elf文件,连接好ZYNQ的Jtag,点击Program,即可烧录。 4.烧录程序到FLASH失败 如果是第一次烧录,需更改创建的fsbl工程下的main函数,在如下代码处加入BootModeRegi

qq_40603614的博客 8360

Fabric网络节点发现及成员管理

一个新节点通过已知的节点加入到网络中,此时,它所知的网络节点信息是非常有限的,需要通过节点发现获知更多的节点,建立起足够的连接。另外,当一个新节点加入到网络时,原有网络节点也需要通过节点发现感知到新节点的加入。分布在各地的网络节点总是会有上线离线的变化,有这就需要Fabric网络必须动态维护一个节点成员列表,这就需要节点成员管理......

内核思考 2716

【STM32G474实战】RS485通信的DMA优化策略与性能对比

本文深入探讨了在STM32G474微控制器上优化RS485通信的DMA策略。通过对比轮询、中断和DMA三种数据传输方式的代码实现与性能,揭示了DMA在解放CPU、降低占用率方面的巨大优势。文章提供了详细的DMA配置指南、高级应用技巧(如结合空闲中断)以及一个高可靠通信框架的实战思路,旨在帮助开发者构建高效、实时的工业控制系统。

weixin_29268331的博客 304

Pipeline更多理解

Pipe 类型用途VIGVideo Image Generator:用于图层显示,支持 scaling、rotationRGB简单图层显示,较低优先级DMA主要用于 writeback / WFD / composition output,即从 framebuffer 输出到外部设备(或 memory)Cursor小图层,用于显示指针等很可能是:分别用于主屏、仪表、虚拟显示的输出路径或者用于不同的 display 去做 GPU_TARGET / writeback 的拷贝你看到的意思。

Damon_X的博客 1053

Hyperledger Fabric 三种node节点 (1) 基本概念

. Endorser背书节点 给出模拟执行的结果,读写集,key的version, 这些信息反馈给sdk • Order排序节点 用来排序分发transaction的, 对数据的转账进行确认, 生成数据放到整个区块链里面, 类似于比特币以太坊的矿工类似于挖矿, 可以解决双花问题, 对同时发出的几笔交易进行排序, 确认之后打包成block, 然后交给peer节点存储数据 •Committer打包节点 存储和同步ledger的数据,不同的节点可同时运行在物理节点、虚拟机或容器中。 • client/SDK:

thefist的专栏 821

移动支付APP(仿支付宝)

Toast.makeText(PayActivity.this, "支付失败:" + payResponse.getMsg(), Toast.LENGTH_SHORT).show();Toast.makeText(PayActivity.this, "支付失败:" + t.getMessage(), Toast.LENGTH_SHORT).show();Toast.makeText(PayActivity.this, "支付失败", Toast.LENGTH_SHORT).show();

寒寒豆豆软件公司的博客 136

Raft共识算法工程落地:从Leader选举、日志复制到生产环境避坑

分布式系统中,多个节点如何就同一个决策达成共识,是构建可靠存储与区块链底层的基础难题。Raft作为一种面向可理解性设计的共识算法,通过领导者选举、日志复制和安全性三条核心规则,将复杂的一致性难题拆解为清晰的操作流程。与Paxos相比,Raft的强领导模型显著降低了工程实现门槛,使其成为etcd、TiKV及Hyperledger Fabric等主流系统的标配。本文从状态机视角出发,梳理基于Raft构建KV存储时的读写路径、快照策略与线性一致读方案,并结合Fabric联盟链中Raft排序服务的实际形态,分析生产

weixin_34023982的博客 336

使用 Simulink Real-Time 搭建一个完整的实时信号采集与滤波系统模型

本文详细介绍了基于Simulink Real-Time构建实时信号采集与滤波系统的完整流程。主要内容包括:系统配置(模型创建与参数设置)、信号采集模块搭建(模拟信号源或真实硬件连接)、实时滤波器设计(浮点/定点)、输出可视化(Scope/ToWorkspace等)、模型编译与下载到目标机、外部模式在线调试及数据保存方法。系统可实现微秒级实时信号处理,适用于工业控制、航空航天等对时间确定性要求高的场景。文章还提供了优化建议(多速率建模、优先级调度等)和应用场景说明,帮助读者快速掌握实时系统开发的核心技能。

amy_mhd的博客 304

基于STM32的太阳能充电宝设计_资料编号31

系统硬件包括主控 STM32F103C8T6、0.96 OLED 显示屏、蜂鸣器、电源自锁开关、温度传感器 DS18B20、继电器、5 V DC 升压模块 、TB4056、18650锂电池、9 V太阳能板、稳压降压 5 V三极管。电源供应:锂电池为系统供电,9 伏太阳能板经 5 伏降压稳压三极管降压为 5 伏后传送到 TP4056,TP4056 为锂电池供电,因锂电池电压 3.7 伏,通过 5 伏 DC 升压模块升压到 5 伏为整个系统提供 5 伏电压。

嵌入式阿齐Archie 1万+

Springboot志愿服务管理系统k1x39(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。

项目功能:志愿者,通知公告,活动信息,活动报名,取消报名,活动签到,服务时长。

Dangdangcu的博客 1063

基于DFT的滤波系列:加窗滤波的 Matlab 实现

在实际应用中,你可以尝试不同类型的窗函数(如汉宁窗、汉明窗等)以及不同的滤波参数来获得所需的滤波效果。此外,还可以进一步了解 DFT 和窗函数的原理,以及其他数字信号处理技术的应用。加窗滤波是一种常用的数字信号处理技术,它通过在频域上应用窗函数来改善信号的频谱特性。我们通过定义输入信号、应用窗函数、进行 DFT 和逆 DFT,实现了滤波过程,并通过绘图进行了可视化。在频域上进行加窗滤波的关键是将窗函数应用于 DFT 的结果。首先,我们需要定义一个输入信号,这里我们使用一个简单的正弦波作为示例。

m0_47037246的博客 463

Raft共识算法详解:从日志复制到分布式一致性实践

在分布式系统中,多个节点如何就操作日志达成一致是保证数据一致性的核心问题。共识算法正是为解决这一挑战而诞生,而Raft凭借其可理解性和工程易用性,成为KV存储、配置中心及联盟链等场景的首选方案。Raft将共识拆解为领导者选举、日志复制与安全性三个子问题,通过日志作为中枢机制,确保已提交的数据永不丢失。其多数派原则与日志一致性检查,能够有效应对网络分区和节点故障,实现强一致的复制状态机。在实际应用中,Raft不仅支撑着etcd、Consul等基础组件,也在Hyperledger Fabric的排序服务中扮演关

weixin_33843409的博客 275

Python李峋同款跳动的爱心(完整代码)

Python语言实现李峋同款可写字版跳动的爱心的完整代码。

AIGC 4万+

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

机器学习生产系统:从模型部署到可观测治理的工程实践

机器学习模型上线后失效,往往并非算法问题,而是系统集成、可观测性与治理机制缺失所致。在真实生产环境中,模型本质是嵌入业务链路的有状态服务组件,其健康度由P99延迟、特征新鲜度、决策覆盖率等系统级指标定义。本文围绕ML系统落地的核心挑战——接口契约设计、端到端血缘追踪、熔断降级框架、黄金信号监控、压力验证及技术型治理,结合金融风控等高敏场景实战经验,系统阐述如何将模型转化为可审计、可回滚、可解释的工业级服务。关键词涵盖可观测性、特征工程、模型治理、生产监控。

tyygming的专栏 395

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

生产级机器学习系统:从模型交付到系统契约的工程实践

机器学习模型部署不是算法任务的终点,而是系统工程的起点。在金融、支付等高可靠性场景中,模型必须满足可用性、可观测性、可追溯性等非功能性需求,其稳定性取决于特征管道、服务网格、熔断机制与审计日志构成的整体契约体系。本文聚焦生产环境中的核心挑战——数据漂移、集成断裂、假设坍塌与治理真空,并提供可落地的四大支柱方案:特征服务化、金融级模型封装、延迟敏感型性能保障与漂移驱动的闭环响应机制。内容深度融合‘模型服务化’与‘特征契约’两大热词,面向算法工程师、数据产品经理及风控负责人,覆盖从影子模式验证、决策水印设计到监

weixin_34405354的博客 468

深度学习工具包 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'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('DeepLearnToolbox'));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('state',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'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',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 = 'sigm';%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, 'Too big error');```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('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';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)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';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, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% 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'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 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, 'Too big error');```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('state',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, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',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, 'Too big error');%% ex3 neural net with dropoutrand('state',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, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % 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, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % 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, 'Too big error');%% 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('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % 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, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

数据科学伦理实践:从指标净化到决策留痕的四层落地

推荐系统与算法决策已超越技术范畴,成为影响用户心智和社会福祉的关键力量。其核心在于目标函数设计是否内嵌伦理约束,而非单纯追求准确率或参与度。本文基于Facebook吹哨人事件引发的行业集体反思,聚焦可工程化落地的伦理实践路径:通过指标体系外科手术式改造(如用意图达成时长替代总停留时长)、负向影响代理变量封装(暴食式消费、回音室强度等)、决策审计链嵌入CI/CD流程,以及团队能力结构性补强,将抽象伦理原则转化为可测量、可审计、可迭代的技术动作。特别强调‘指标污染识别’与‘负向影响量化’两大热词所代表的实操支点

weixin_30402343的博客 367

客户主动终止服务:SaaS系统优雅下线的工程实践

在SaaS与云原生架构中,'服务终止'并非故障场景,而是一种受控的、业务驱动的系统状态变更。其核心原理在于将传统二值开关升级为多态生命周期管理,依托状态机设计、依赖解耦与深度可观测性,实现可审计、可追溯、可回滚的终止流程。该能力直接支撑合规(如GDPR、FDA 21 CFR Part 11)、成本治理(FinOps)与零信任安全等高阶技术价值,在金融、医疗、电商等强监管与高弹性行业形成关键差异化竞争力。本文聚焦客户侧主动触发的shutdown事件,解析如何通过语义澄清、分阶段执行与自动化验证,把一次潜在的信

weixin_30363509的博客 328

金融级机器学习模型上线:从准确率到可信决策的工程实践

机器学习模型部署不是训练完成的技术收尾,而是进入高风险、强约束、多系统协同的生产决策链起点。在金融等关键领域,模型的可信性取决于其与特征工程、服务治理、实时监控、合规审计等基础设施的深度耦合。本文聚焦‘模型上线后’的真实挑战——特征缺失时的fallback策略、API超时下的熔断机制、数据漂移与业务语义的关联分析、监管要求的全链路溯源能力——系统梳理覆盖集成鲁棒性、延迟控制、漂移检测、压力测试及审计就绪五大核心维度的落地方法论,为构建可解释、可验证、可持续交付的AI决策系统提供工程级参考。

weixin_30847939的博客 374
上一篇: 区块链100讲:从开发者的角度快速解读以太坊白皮书
下一篇: 分享实录|区块链技术与智能合约入门(开发实例)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值