基于深度学习框架的建筑领域算法服务平台研究与实践

2024-06-03 22:07肖朋林曾莎洁
数字通信世界 2024年4期
关键词:深度学习

肖朋林 曾莎洁

摘要:文章提出了一种基于深度学习框架的建筑领域算法服务平台,研究了深度学习和深度学习基础框架,并对该平台的架构、功能和数据模型研究和实践进行了阐述。

关键词:深度学习;深度学习框架;建筑领域;算法服务平台

doi:10.3969/J.ISSN.1672-7274.2024.04.029

中图分类号:TP 311,TU 17          文献标志码:B           文章编码:1672-7274(2024)04-00-04

Research and Practice on Algorithm Service Platform in the Construction Field Based on Deep Learning Framework

XIAO Penglin, ZENG Shajie

(Shanghai Research Institute of Building Sciences Co., Ltd., Shanghai 200032, China)

Abstract: This article proposes a deep learning framework based algorithm service platform for the construction field, studies deep learning and its basic frameworks, and elaborates on the architecture, functions, and data model research and practice of the platform.

Keywords: deep learning; deep learning framework; the construction field; algorithm service platform

0   引言

随着人工智能技术的发展,涌现出TensorFlow[1]、PyTorch[2]、PaddlePaddle[3]等多个深度学习框架,它起到了承上启下的作用,下接芯片,上承各种业务模型、行业应用,为传统行业在人工智能方面的应用开发提供了高效的基础。本文研究并实践了基于深度学习框架(PaddlePaddle)的建筑领域算法服务平台,以期为建筑领域提供专业的人工智能算法模型服务。

1   深度学习框架

1.1 深度学习

深度学习(Deep Learning)是2006年由Hinton等人提出的概念,它是机器学习的一个分支。区别于浅层学习(Shallow Learning)依赖人工经验和特征抽取、特征选择等特征转换方法获取特征(Feature),深度學习能够从数据中自动学习到有效的特征表示。因此,深度学习也被称为表示学习[4][5]。

深度学习一般采用深层神经网络模型实现端到端学习(End-to-End Learning)[6],具有四个主要特征:一是自动学习高层次抽象特征,不需要人工设计特征;二是通过多层次的模型学习抽象特征,实现非线性建模;三是处理高维度和海量数据,自适应控制模型复杂度;四是使用深度卷积神经网络等多种结构实现各种任务,如图像识别、自然语言处理、语音识别等。深度学习发展的关键因素包含数据、算力和算法。

①数据。深度学习的发展离不开大量、高质量的数据支持。

②算力。深度学习需要进行大量的计算,需要强大的算力支持。

③算法。算法是深度学习取得巨大成功的关键因素之一。

1.2 框架研究

为了让AI专业开发者更高效地实现深度学习算法,各大AI科技公司纷纷将深度学习中常用的算子、基础网络结构、迭代优化算法,以及经典的模型实现采用开源的方式形成深度学习框架。深度学习框架是一种底层开发工具,是集智能算法核心训练和推理框架、基础模型库、端到端开发套件、丰富的工具组件于一体的平台。目前常见的深度学习框架包括TensorFlow、PyTorch、Keras、Caffe、Theano、CNTK、MXNet、PaddlePaddle等。常见的深度学习框架如表1所示[7]。

1.3 框架选择

目前深度学习领域最为流行的三个框架是TensorFlow、PyTorch、PaddlePaddle。

(1)TensorFlow是由Google推出的一个开源深度学习框架,支持多种编程语言,如Python、Java和C++等。TensorFlow的优点在于它强大的计算图能力,可以进行分布式计算,支持多种设备。缺点在于其初学门槛较高,需要较长时间的学习和实践。

(2)PyTorch是Facebook推出的一个开源深度学习框架,特点在于其动态图能力,使得模型的搭建和调试更加方便。同时PyTorch也有着非常完善的文档和社区支持。缺点在于其不太适合于大规模的分布式计算。

(3)PaddlePaddle是由百度推出的一个开源深度学习平台,支持多种编程语言,如Python、C++和Java等。PaddlePaddle的优点在于其强大的分布式计算能力,支持GPU、CPU和FPGA等多种硬件平台。同时PaddlePaddle也有着较为完善的文档和社区支持,并且其提供了一整套的生态系统,包括自动化调参平台和可视化平台等。缺点在于其相对于TensorFlow和PyTorch来说,社区的活跃程度稍逊。

由于PaddlePaddle具有强大的分布式计算能力和完整的生态系统,以及提供了丰富的预训练模型以及易于使用的API接口,可以有效地降低实现深度学习算法的门槛,在模型开发、训练和部署方面具有很高的灵活性和可扩展性,非常适合用于建筑领域算法服务平台的构建和应用。因此,本文将选择PaddlePaddle作为建筑领域算法服务平台的基础架构。

2   算法服务平台设计

2.1 架构设计

平台架构包含基础设施层、基础框架层、平台服务层、应用服务层四个层级。基础设施层包括对数据、模型、代码的数据存储设备、用于模型训练的大规模GPU、CPU等数据计算设备和用于通信及安全保障的其他支撑设备;基础框架层包括核心的深度学习框架和模型库,核心框架提供一套开发、训练、推理部署环境,模型库提供一套用于存储通用算法、通用模型和建筑领域模型的算法模型管理环境;平台服务层包含数据加工、模型训练、模型评估、模型管理、模型部署、模型优化等一套完整的算法模型使用功能,以及用于任务、资源调度、日志记录和文件存储的支撑管理功能;应用服务层为用户提供服务调用、交互式模型开发和SDK组件库三种服务模式,既满足非专业人员的模型使用需求,也为专业用户提供模型开发和调用的途径。

2.2 功能设计

(1)数据加工。提供可视化的数据导入、数据清洗、数据预处理、特征工程等功能。在数据导入方面,支持多种数据源,如文本文件、数据库、NoSQL、Hadoop等。在数据清洗和预处理方面,提供一些基本的处理模块,如缺失值处理、异常值处理、特征编码等。

(2)模型管理。提供模型上传、模型创建、模型编辑、模型保存、模型删除等功能。提供模型检索、模型版本控制等管理功能,以方便用户更好地管理和使用模型。

(3)模型训练。提供可视化的模型选择、模型参数设置、数据集选择、交叉验证等功能。支持多种机器学习算法和深度学习算法,如线性回归、决策树、支持向量机、神经网络等。在模型训练过程中,提供模型训练状态监控、性能评估等功能,以便用户根据训练结果进行优化。

(4)模型部署。提供模型导出、模型转换、模型打包、模型发布等功能。支持多种部署环境,如本地环境、云环境、边缘设备等。在模型部署过程中,提供模型部署状态监控、性能评估等功能,以方便用户监控模型的运行状态。

(5)模型评估。提供模型性能评估、业务需求评估、用户反馈评估等功能。平台应该提供可视化的评估报告,以便用户更好地了解模型的性能、用户需求和用户满意度。

(6)模型优化。提供模型调参、模型重构、模型量化等功能。提供自动化的模型优化功能,如超参数优化、模型结构搜索等。

2.3 数据模型设计

为实现用户数据加工、模型训练、模型评估、模型管理、模型部署、模型優化等功能,设计了平台数据模型,如图1所示。

通过此数据模型设计,可以实现一个模型通过多个算法和参数的组合,以及实现模型训练后的应用发布记录和模型调用日志记录。

3   算法服务平台实践

3.1 建筑领域模型

(1)建筑设计与优化模型。帮助建筑师在早期设计阶段进行更快、更高效的方案探索。通过训练数据驱动的模型,建筑师可以预测建筑方案在各种性能指标(如能源消耗、结构性能、舒适度等)上的表现。

(2)能源模拟与预测模型。用于建筑能源模拟和预测,提高能源管理的效率。例如,通过训练一个回归模型来预测建筑的耗能情况,以便更好地理解建筑的能源使用情况,从而制定相应的节能措施。

(3)建筑智能控制模型。用于开发更智能的建筑控制系统,以提高建筑物的舒适度和能效。例如,可以使用神经网络或强化学习来自动调整空调、照明等设备的设置,以满足不同时间和场景下的需求。通过实时监测和预测建筑内的环境参数(如温度、湿度、光照等),智能控制系统可以自动调整设备参数,实现更高的能效和舒适度。

(4)故障检测与诊断模型。在建筑设备故障检测和诊断方面也具有很大的潜力。通过训练一个分类模型,可以实时监测建筑设备的运行状态,自动检测异常情况,并及时进行诊断。以便降低建筑运维成本,提高设备的可靠性和寿命。

(5)安全监测与预警模型。在建筑施工过程中,安全监测和预警至关重要。分析现场视频、声音和传感器数据,实时检测潜在的安全隐患。

(6)建筑物识别与分析模型。在自动识别和分析建筑物的外观特征。例如,可以使用深度学习模型自动提取建筑物的几何形状、材料和风格特征,为城市规划和历史保护提供有价值的信息。

(7)建筑生命周期评估模型。用于评估建筑物在其整个生命周期中的环境影响。通过收集和分析各种数据(如建筑材料、能源消耗、废弃物处理等),可以训练一个回归模型来预测建筑物的碳排放、能源效率等指标。

3.2 平台功能实现

(1)创建应用。实现选择应用类型,并支持填写名称、基本简介等应用基本信息。

(2)训练集上传。实现根据应用类型选择相应的数据集,或者上传新的数据集。

(3)模型选择。实现根据应用类型选择相应的模型和算法。

(4)信息确认。实现确认应用训练的基本信息,包括应用场景、训练数据集、模型,并设置训练参数和笨次训练的模型版本号。

(5)训练和发布。实现选择训练模型,后台服务会实时更新训练状态,待训练完成后可发布模型。

(6)应用调用。实现模型发布后,用户可以通过应用发布的Restful接口调用算法。

本实践平台为用户提供了一整套人工智能算法从训练到发布的运行环境,用户可以通过上传数据,选择算法模型,提交训练任务和发布算法应用完成建筑领域人工智能算法的落地,并能够通过不断训练或者筛选模型,不断升级应用,实现人工智能算法在建筑领域中应用的不断迭代和功能升级,进一步满足各类用户的需求。

3.3 算法场景验证

为验证平台的功能实现,本文选择基于目标监测模型,实现了建筑交通领域桥梁目标检测模型的训练、发布和验证。通过此模型的应用,帮助用户将图片分成了不同的类别。

4   结束语

本文提出了基于深度学习框架(PaddlePaddle)的建筑领域算法服务平台的架构设计,设计了平台的功能和数据模型,研究了建筑领域的各类场景模型,初步实现了算法服务平台,并在建筑交通领域中的目标检测场景进行了验证,实现了平台功能流程的验证。本文设计平台具有广阔的应用前景和发展空间,未来将继续在平台功能优化、模型扩充、模型优化及服务方式方面继续进行深入的研究,为建筑领域的从业者提供更加全面、专业和高效的技术支持,推动建筑领域的智能化和可持续发展。■

参考文献

[1] https://www.tensorflow.org

[2] https://pytorch.org

[3] https://www.paddlepaddle.org.cn

[4] 周志华.机器学习[M].北京:清华大学出版社,2016.

[5] 邱锡鹏.神经网络与深度学习[M].北京:机械工业出版社,2020.

[6] Rosenblatt,F.The Perceptron:A Probabilistic Model for Information Storage and Organization in The Brain[J].Psychological Review,1958,65:386-408.

[7] 朱瑞琪.基于深度学习框架的图像特征检测服务的设计与实现[D].中国科学院大学(中国科学院沈阳计算技术研究所),2022.

猜你喜欢
深度学习
从合坐走向合学:浅议新学习模式的构建
面向大数据远程开放实验平台构建研究
基于自动智能分类器的图书馆乱架图书检测
搭建深度学习的三级阶梯
有体验的学习才是有意义的学习
电子商务中基于深度学习的虚假交易识别研究
利用网络技术促进学生深度学习的几大策略
MOOC与翻转课堂融合的深度学习场域建构
大数据技术在反恐怖主义中的应用展望
深度学习算法应用于岩石图像处理的可行性研究