数字旗手

电气化、自动化、数字化、智能化、智慧化

0%

简介 这一章将研究pytorch-accelerated的回调机制。 Callback概览 在Trainer中除了可重写的钩子(即自定义训练器的行为)之外,Trainer还包括一个回调系统。 建议将回调Callbacks用于对训练循环的操作不是很重要的代码中,比如日志,但这个决定由用户根据具体的使用情况进行判断。 注意:回调是按顺序执行的,所以如果一个回调被用来修改状态,比如更新一个指标,用户有责任确保这个回调被放在任何将读取这个状态的回调之前(即为了记录的目的)。 回调是在其相应的钩子之后被调用,例如,on_train_epoch_end回调方法在pytorch_accelerated.t
Read more »

简介 从这一节开始,详细看一下pytorch-accelerated的API。 本文是对Trainer的API的解析。 Trainer概览 训练器Trainer用来封装特定任务的整个训练循环,将模型、损失函数和优化器结合在一起,并为训练过程的每一步提供执行行为规范。 Trainer的实现是这样的:它提供了训练部分的(可重复的)实现,这些部分在被定义后很少发生变化——比如创建数据加载器,或如何将一批数据送入模型——同时与可能发生变化的部分保持解耦,比如模型、数据集、损失函数和优化器。 1 2 3 4 5 6 7 8 9 class Trainer: def __init__(
Read more »

介绍 pytorch-accelerated是一个轻量级的库,旨在通过提供一个最小但可扩展的训练循环(封装在一个Trainer对象中)来加速PyTorch模型的训练过程;它足够灵活,可以处理大多数用例,并且能够利用不同的硬件选项而不需要修改代码。更多介绍见原作者的博文。 pytorch-accelerated最大的两个特点就是:简单simplicity和透明transparency。怎么理解这两个词呢(个人理解): (1)简单体现在它是一套可复用的PyTorch的训练代码,每次有新模型和新场景需要训练时不必将原来的代码拷过来拷过去,pytorch-accelerated提供了一套通用但不失灵活
Read more »

简介 ImJoy有一个很有用的插件或独立应用,叫做Kaibu,它可以展示并标注普通的位图、矢量图及vtk、stl等3D格式的数据。 比如如下展示: 其就是位图(png格式)、矢量图(json格式)、3D模型(stl格式)的一个叠加。 Kaibu主要用了两个JS库,一个是OpenLayers,一个是ITK-VTK,前者用于展示矢量图形、普通位图等数据,且对地图的展示异常强大,后者用于展示在医疗及科学计算中常用的3D图像、网格、点集等。 这一篇主要分析一下Kaibu的运行机理。 从script标签开始,看其运行过程。 导入组件 1 2 import * as layerCompone
Read more »

参考文献: FastAPI官方文档 中文翻译 (注意,当前2022年5月8日的中文翻译有一些错误) 介绍 FastAPI 是一个用于构建 API 的现代、快速(高性能)的 web 框架,使用 Python 3.6+ 并基于标准的 Python 类型提示。 FastAPI 站在以下巨人的肩膀之上: * Starlette负责 web 部分。 * Pydantic负责数据部分。 安装 1 pip install fastapi 还需要一个 ASGI 服务器,生产环境可以使用Uvicorn或者Hypercorn。 1 pip install uvicorn[standard]
Read more »

参考文献: Docker 入门教程 Docker —— 从入门到实践 【狂神说Java】Docker最新超详细版教程通俗易懂 为什么要用Docker Docker解决的问题是将软件连带其环境一起安装。 虚拟机与容器 虚拟机 虚拟机(virtual machine)就是带环境安装的一种解决方案。它可以在一种操作系统里面运行另一种操作系统,比如在 Windows 系统里面运行 Linux 系统。应用程序对此毫无感知,因为虚拟机看上去跟真实系统一模一样,而对于底层系统来说,虚拟机就是一个普通文件,不需要了就删掉,对其他部分毫无影响。 虽然用户可以通过虚拟机还原软件的原始环境。但是,这个方案有几个
Read more »

简介 ImJoy有一个很有用的插件或独立应用,叫做Kaibu,它可以展示普通的位图、矢量图及vtk、stl等3D格式的数据。 比如如下展示: 其就是位图(png格式)、矢量图(json格式)、3D模型(stl格式)的一个叠加。 Kaibu主要用了两个JS库,一个是OpenLayers,一个是ITK-VTK,前者用于展示矢量图形、普通位图等数据,且对地图的展示异常强大,后者用于展示在医疗及科学计算中常用的3D图像、网格、点集等。 这一篇主要介绍OpenLayers的相关知识。 配置环境 从OpenLayers workshop releases里下载最新的资料包。 安装依赖: 1 n
Read more »

简介 Streamlit的组件Components是一系列第三方的Python模块,其极大地扩展了Streamlit的功能。 Components带来了无穷的想象力和可能性,比如与React、Vue等前端框架联动、创建自定义风格和行为的新部件、以及增加新的可视化图表类型等。 使用组件 查找可用组件 查找组件有两个常用的途径: 一是Component Gallery,这是官方挑选出来的特色组件; 二是Streamlit Components - Community Tracker这个论坛帖子,里面搜集了很多社区成员创建的组件。 安装组件 安装这些组件,只需: 1 pip install
Read more »

简介 在Streamlit中,与一个部件widget的交互会触发“重新运行”rerun,这样一来每次运行后代码中的变量都会被重新初始化。这可能会带来很麻烦的问题,比如实现一个简单的“累加计数按钮”,每次点击后都会清零,无法实现累加功能。 为了解决类似问题,Streamlit引入了一种新的特性:会话状态Session State,它是一种可以在rerun之间保存变量状态、配合使用回调函数处理部件上的事件、动态改变部件状态等等的功能(注意,这些功能发生在一个session中,一个session可以简单理解为用户通过浏览器的一个标签页来访问Streamlit)。其可以用在如下场景中: (1)数据或图
Read more »

简介 Streamlit是一个开源Python库,其旨在为机器学习和数据科学领域简单快速地创建和分享美观的、定制化的web应用。使用Streamlit,用户仅仅几分钟即可创建和部署强大的数据应用。 截几张范例的界面图: 安装 使用pip安装: 1 pip install streamlit 测试一下: 1 streamlit hello 此时浏览器会打开http://localhost:8501/,然后出现streamlit关于动画、动态绘图、地图、pandas绘图的四个demo。 核心概念 运行方式 1 streamlit run your_script.
Read more »