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

做定制的网站四年级写一小段新闻

做定制的网站,四年级写一小段新闻,网页素材免费下载,非交互式网站可以做商城吗很多时候嵌入式或者新硬件需要纯净的权重模型和激活值(运行时中间值),本文提供一种最简洁的方法。 假设已经有模型model和pt文件了,在当前目录下新建weights文件夹,运行这段代码,就可以得到模型的权重&…

很多时候嵌入式或者新硬件需要纯净的权重模型和激活值(运行时中间值),本文提供一种最简洁的方法。
假设已经有模型model和pt文件了,在当前目录下新建weights文件夹,运行这段代码,就可以得到模型的权重(文本形式和二进制形式)

model.load_state_dict(state_dict)global_index = 0
for name, param in model.named_parameters():print(name, param.size())print(param.data.numpy(),file=open(f"weights/{global_index}-{name}.txt", "w"))param.data.numpy().tofile(f"weights/{global_index}-{name}.bin")global_index += 1

对于二进制形式的文件,可以通过od -t f4 <binary file name> 查看其对应的浮点数值。f4表示fp32.

打印forward的中间值:(这么复杂是必要的)

global_index = 0
def hook_fn(module, input, output):global global_indexmodule_name = str(module)module_name=module_name.replace(" ", "")module_name=module_name.replace("\n", "")# print(name)intermediate_outputs = {}# input is a tuple, output is a tensorfor i, inp in enumerate(input):intermediate_outputs[f"{global_index}-{module_name}-input-{i}"] = inpintermediate_outputs[f"{global_index}-{module_name}-output"] = outputmodule_name = module_name[0:200]  # make sure full path <= 255print(intermediate_outputs)print(f"Size input:",end=" ")if(type(input) == tuple):for i, inp in enumerate(input):if type(inp) == torch.Tensor:print(f"{i}-th Size: {inp.size()}", end=", ")inp.numpy().tofile(f"activations/{global_index}-{module_name}-input-{i}.bin")else:print(f"{i}-th : {inp}", end=", ")elif type(input) == torch.Tensor:print(f"Size: {input.size()}")input.numpy().tofile(f"activations/{global_index}-{module_name}-input.bin")print(f"Size output: {output.size()}")global_index += 1output.numpy().tofile(f"activations/{global_index}-{module_name}-output.bin")def register_hooks(model):for name, layer in model.named_children():# print(name, layer) # dump all layers, > layers.txt# Register the hook to the current layerlayer.register_forward_hook(hook_fn)# Recursively apply the same to all submodulesregister_hooks(layer)register_hooks(model)

其中regster_hooks和以下等价(不需要recursive了)

def register_hooks(model):for name, layer in model.named_modules():# print(name, layer) # dump all layerslayer.register_forward_hook(hook_fn)

其中nn.sequential作为一个整体,目前没办法拆开来看其内部的中间值。

http://www.jinmujx.cn/news/78290.html

相关文章:

  • 美食网站怎么做dwgoogle seo优化
  • 如何做网站的后台seo网络营销案例分析
  • wordpress order by谷歌seo网站推广怎么做
  • 呼和浩特网站建设SEO优化青岛神马排名优化
  • 射阳网页设计三明网站seo
  • 做搜狗手机网站网站优化哪个公司好
  • 开发一栋楼需要多少钱南宁seo排名收费
  • 手机网站建站教育模板考研培训机构排名
  • 天津网站设计方案网络推广公司怎么找客户
  • 网站开发 h5宁波seo关键词如何优化
  • 电商网站seo方案网络seo啥意思
  • 阿里云网站如何建设视频国家职业技能培训学校
  • 深圳网站建房网络项目免费的资源网
  • 云主机玩游戏快速排名优化
  • 成都那家做网站好今天的热搜榜
  • 济南 网站建设 域名注册职业培训机构排名
  • php做电影网站企业培训考试
  • 闵行区个人网页设计用户体验网站推广seo招聘
  • 网站开发的职责徐州seo推广优化
  • 无锡找做网站社群营销的案例
  • 武汉专业网站做网页b2b平台有哪些
  • 揭阳专业做网站公司网站一键收录
  • 自己做的网站服务器在哪里营销型网站的分类不包含
  • 房产信息网显示限售新人学会seo
  • 网络促销分类 网站促销网络服务包括
  • 建行网站注册用户名怎么填百度竞价推广关键词优化
  • WordPress客户端百度seo词条优化
  • 成都网站建设科技公成都百度搜索排名优化
  • 网站建设硬件和软件技术环境配置网站搭建公司哪家好
  • 网站开发系统架构图广州建网站的公司