MaaS(Model as a Service)
1.MasS是什么?
Model as a Service(MaaS)是一种云计算服务模式,它允许用户通过互联网访问和使用机器学习模型,而不需要自行构建和维护这些模型。MaaS提供了模型的托管、管理和监控,使用户能够专注于应用程序的开发和业务需求,而无需深入了解模型的内部细节。
主要特点包括:
1.即开即用:用户可以快速接入预训练的模型。
2.按需计费:用户只需为实际使用的计算资源付费。
3.可扩展性:可以根据需要扩展模型的使用,适应不同的负载。
4.自动更新:服务提供商通常会定期更新模型,以提高性能和准确性。
5.API接口:用户通过API调用模型,简化了集成过程。
MaaS适用于各种应用场景,如图像识别、自然语言处理、推荐系统等。
MaaS有哪些功能?
1.模型托管:用户可以在云端托管和管理机器学习模型,避免了本地部署的复杂性。
2.API接口:提供易于使用的API,用户可以通过简单的调用来获取模型的预测结果。
3.预训练模型:提供多个领域的预训练模型,用户可以直接使用这些模型,而无需自行训练。
4.模型定制:用户可以根据需求对模型进行微调,以适应特定的应用场景。
5.自动扩展:根据实时负载自动调整计算资源,确保高可用性和性能。
6.监控与分析:提供实时监控和分析工具,帮助用户跟踪模型的性能和使用情况。
7.版本控制:支持模型版本管理,便于跟踪不同版本的模型效果。
8.安全性与合规性:确保数据传输和存储的安全性,遵守相关法律法规。
9.定期更新:服务提供商会定期更新模型,以提升性能和准确性。
10.支持多种框架:通常支持多种机器学习和深度学习框架,如TensorFlow、PyTorch等。
这些功能使得MaaS成为一个灵活且高效的解决方案,适用于各种业务需求和技术能力的用户。
2.云计算
2.1什么是云计算?
云计算是一种通过互联网提供计算资源和服务的模式,使用户可以按需访问和使用各种计算资源,而无需在本地部署和维护这些资源。它允许企业和个人通过网络获取存储、计算、网络、数据库和应用等服务。
云计算的主要特点包括:
1.按需自助服务:用户可以根据需要随时获取和使用计算资源,而无需人工干预。
2.广泛的网络访问:服务通过互联网提供,可以在各种设备上访问,包括计算机、手机和平板电脑。
3.资源池化:云服务提供商将多个用户的资源整合在一起,通过虚拟化技术高效利用资源。
4.快速弹性:能够迅速扩展或缩减资源,满足变化的需求。
5.按使用计费:用户只需为实际使用的资源付费,降低了投资成本。
6.管理和维护:云服务提供商负责基础设施的管理和维护,用户可以将精力集中在业务上。
2.2云计算的服务模式
(1)基础设施即服务(IaaS,Infrastructure-as-a-Service):提供虚拟化的计算资源,如服务器和存储,用户可在其上安装操作系统和应用。
(2)平台即服务(PaaS,Platform-as-a-Service):提供开发和运行应用的环境,用户专注于应用开发,无需管理底层基础设施。
(3)软件即服务(SaaS,Software-as-a-Service):通过互联网提供的应用,用户可以直接使用,无需安装和维护。
通俗解释On-Premises、laaS、PaaS、SaaS
参考文昭:云计算中的laaS、PaaS和SaaS是什么意思? - 知乎
饺子、豆浆、油条、饺子这些都是中国人比较喜欢吃的食物,也是很常见的。要是自己去动手做的话,那将是一件比较麻烦的事情。
就拿包子为例子,我们就首先要去准备好面粉、和剁好的馅儿,还得等面粉发酵完后进行和面。同时还要准备好煤气、蒸屉、砧板等厨具,还要有自己的餐桌与餐具。包好包子放进蒸屉之中,蒸熟后拿出来就能吃了。所有的东西都是自己来准备的,那么这个就叫做本地部署(On-Premises)。
你要是嫌麻烦的话,也可以去买速冻饺子,拿回来热热就能吃了。这时只要准备好锅、蒸屉与煤气灶,餐桌就行了。这个与自己在家里包的不同,这里是需要包子的供应商,这个就是基础设施即服务(laaS)。
要是还觉得麻烦的话,可以在外卖平台上点一份卖包子的餐厅把做好的热包子送到家里来,这时候,你只需要准备好餐桌就好了。这个就叫做平台即服务(PaaS)。
但要是你什么都不想准备,桌子都懒得清理的话,就可以直接包子店去吃。店里什么都准备好了。这个就叫做(SaaS)。
总的来说,你总共有四种途径可以吃到包子,要么自己准备好材料,在家里自己做;要么就是买现成的回来加个热再吃;要么就是叫个外卖;要么就是直接去店里吃。
2.3云服务平台是什么?
云服务平台是一个提供各种计算资源和服务的在线平台,用户可以通过互联网按需访问这些资源,无需自行构建和维护基础设施。云服务平台涵盖了从基础的计算和存储服务,到高级的人工智能、数据分析和物联网等应用支持服务,满足不同类型的用户需求。
(1)云服务平台主要功能
- 计算服务:
- 提供虚拟机(如AWS EC2、Google Compute Engine)、无服务器计算(如AWS Lambda、Azure Functions)和容器服务(如AWS ECS、Azure Kubernetes Service)等,帮助用户处理各种计算任务。
- 存储服务:
- 提供对象存储(如AWS S3、Azure Blob Storage)、文件存储和数据库服务,支持数据的存储、备份和恢复,适合各种数据密集型应用。
- 网络服务:
- 提供虚拟私有云(VPC)、负载均衡、内容分发网络(CDN)等功能,帮助用户建立和优化网络连接。
- 数据库服务:
- 包括关系型数据库(如Amazon RDS、Google Cloud SQL)、NoSQL数据库(如Azure Cosmos DB)和数据仓库服务,支持数据的存储、管理和分析。
- 开发和部署工具:
- 提供平台即服务(PaaS)、持续集成和持续部署(CI/CD)工具,帮助开发人员简化应用开发、测试和部署的过程。
- 人工智能和机器学习:
- 包括各种机器学习平台(如Google Vertex AI、AWS SageMaker)和预训练模型服务,帮助用户快速实现AI和数据分析功能。
- 安全与合规:
- 提供身份验证、数据加密、防火墙和访问控制等安全功能,帮助用户保护数据和应用的安全,满足各类合规要求。
- 物联网(IoT)支持:
- 提供设备管理、数据采集和实时分析工具,适合物联网应用的开发和部署。
(2)主流云服务平台(如AWS、Google Cloud、Azure)的基本功能和特点
1.Amazon Web Services (AWS)
基本功能:
- 计算:提供EC2虚拟机、Lambda无服务器计算、Elastic Beanstalk应用托管等。
- 存储:包括S3对象存储、EBS块存储、Glacier冷存储等。
- 数据库:支持RDS关系型数据库、DynamoDB NoSQL数据库、Aurora、Redshift数据仓库等。
- 网络:提供VPC虚拟私有云、Direct Connect、CloudFront内容分发等。
- AI/ML:提供SageMaker机器学习平台,具备丰富的AI服务(如Rekognition图像识别、Polly文本转语音)。
特点:
- 成熟度高:AWS是较早进入市场的云平台,功能全面且稳定。
- 服务种类丰富:AWS的服务和工具数量众多,适合各种规模的企业。
- 全球覆盖:拥有庞大的数据中心区域,覆盖多个地区,适合跨国公司。
- 灵活的定价:按需计费,同时提供大量的折扣选项,如预留实例和节省计划。
2.Google Cloud Platform (GCP)
基本功能:
- 计算:提供Compute Engine虚拟机、App Engine应用引擎、Cloud Functions无服务器计算。
- 存储:包括Cloud Storage、Persistent Disk、Filestore等。
- 数据库:支持Cloud SQL、Firestore、Bigtable、BigQuery数据分析等。
- 网络:提供VPC、Cloud CDN、Cloud Interconnect等网络服务。
- AI/ML:提供Vertex AI机器学习平台、AutoML自动化建模、TPU支持高效的深度学习计算。
特点:
- 数据与AI优势:GCP在数据分析和机器学习方面有优势,尤其适合数据密集型应用。
- 跨平台协作:Google在开源和跨平台方面有较强的支持(如Kubernetes)。
- 高性能网络:依靠Google的全球光纤网络提供低延迟的网络连接。
- 灵活和透明的计费:GCP的价格方案较为透明,按秒计费,并提供多种折扣。
3.Microsoft Azure
基本功能:
- 计算:包括虚拟机、Azure Functions无服务器计算、Azure Kubernetes Service等。
- 存储:提供Blob存储、Disk存储、File存储和备份解决方案。
- 数据库:支持SQL Database、Cosmos DB NoSQL数据库、Data Lake存储与分析等。
- 网络:Azure提供VNet虚拟网络、CDN、ExpressRoute专线连接等。
- AI/ML:Azure ML机器学习工作室,拥有AI和认知服务,如图像识别、语言理解等。
特点:
- 与Microsoft产品的深度集成:Azure与Office 365、Active Directory等Microsoft生态紧密集成,适合已有Microsoft基础设施的企业。
- 混合云支持:提供多种混合云方案(如Azure Arc),适合需要本地和云端结合的企业。
- 全球数据中心:数据中心分布广泛,便于实现全球性的业务部署。
- 企业级安全和合规:Azure在企业安全性、合规和隐私保护方面有较强的能力,满足全球多项合规标准。
4.共同特点
弹性扩展:按需扩展或缩减资源,适应各种负载需求。
数据安全与合规:各平台均提供多层次的安全和隐私保护措施,符合国际合规标准。
多种服务组合:各云平台均提供丰富的服务组合,可以根据企业需求定制云解决方案。
全球覆盖:各平台在全球多地都有数据中心,支持跨区域的业务部署。
每个平台在各自的优势领域有不同的着重方向,因此选择云平台时,企业需要根据业务需求、预算、技术栈等因素进行综合考虑。
3.主流MaaS平台
要学习如何在这些平台上创建、部署和管理模型。
主流的 Model as a Service(MaaS)平台在功能和使用场景上有所不同,各自针对不同的用户需求和使用场景提供了特有的服务。以下是一些主要的 MaaS 平台及其关键功能和典型使用场景:
1.AWS SageMaker
功能:支持模型开发、训练、优化和部署的一体化服务。提供 AutoML(自动机器学习)功能、集成调试、监控工具,和可扩展的计算资源。
使用场景:
- 大规模模型训练:自动扩展计算资源,适合需要大规模分布式训练的场景。
- 实时推理:可用于需要实时预测的业务场景,例如推荐系统、用户行为分析。
- 模型管理与监控:提供模型监控、持续集成和部署工具,适合企业级 AI 部署。
2.Google Cloud AI Platform
功能:支持多种机器学习框架(如 TensorFlow、Keras、XGBoost 等),提供 AI Hub(模型共享)、AutoML、数据标注服务和模型托管等功能。
使用场景:
- 图像识别和自然语言处理:利用 AutoML 和预训练模型进行快速开发,适合没有丰富 AI 经验的开发者。
- 企业级数据科学:适合需要数据标注、大规模数据处理与分析的场景。
- 模型共享和协作:AI Hub 可以共享模型,适合跨团队协作的场景。
3.Microsoft Azure Machine Learning
功能:提供数据准备、模型训练、调试、优化、部署、管理和监控的全流程支持。集成 MLOps(机器学习运维),支持模型版本管理和跟踪。
使用场景:
- 企业智能预测:广泛应用于金融、零售等领域的预测分析,例如风险评估和销售预测。
- 自动化工作流:通过 MLOps 工具实现自动化机器学习工作流,适合复杂的机器学习管道管理。
- 深度学习:支持多种深度学习框架和自定义模型开发,适合高级 AI 应用。
4.IBM Watson Studio
功能:提供 AI 模型开发、数据科学和大数据分析服务。支持自动机器学习、自然语言处理、模型托管和部署。
使用场景:
- 企业级 AI 解决方案:适合金融、医疗等需要高可靠性和安全性的行业。
- 客户服务自动化:应用于构建智能客服系统和聊天机器人,利用 Watson Assistant 实现交互。
- 大数据分析:提供强大的数据分析功能,适合数据密集型业务的需求。
5.Algorithmia
功能:专注于模型托管、调用和版本控制,提供模型监控和管理工具。支持 Kubernetes 集成和 API 端点调用。
使用场景:
- 轻量级模型托管:适合需要快速部署和管理模型的应用,尤其适合中小企业。
- 开发者友好的集成:支持 API 调用,便于开发人员快速将模型集成到应用中。
- 模型版本控制:适合需要频繁迭代和更新模型的开发场景。
6.Hugging Face
功能:提供 NLP 模型的托管和 API 访问,集成了 Transformers 库,支持众多预训练模型。提供 Spaces 工具,支持低代码的应用开发和分享。
使用场景:
- 自然语言处理:用于文本分类、情感分析、机器翻译等 NLP 任务。
- 小规模项目:适合初创公司和小团队快速使用预训练模型构建 NLP 应用。
- 低代码开发:通过 Spaces 工具提供零基础开发环境,适合希望快速搭建 NLP 演示和原型的团队。
7.Spell
功能:专注于支持深度学习训练、模型优化和部署。提供计算资源管理、版本控制和协同工具。
使用场景:
- 深度学习研究:适合需要高性能计算资源的深度学习研究和实验。
- 团队协作:支持团队实时协作和实验跟踪,适合科研团队或企业内部数据科学团队。
- 跨框架支持:支持 TensorFlow、PyTorch 等主流框架,适合多框架并行研究和开发。
8.DataRobot
功能:提供端到端的自动化机器学习平台,涵盖数据准备、特征工程、模型选择、部署和监控等功能。
使用场景:
- 自动化机器学习:适合无 AI 背景的业务团队,快速构建和部署机器学习模型。
- 金融预测与风险评估:常用于需要预测分析的金融和保险行业。
- 数据驱动决策:适合希望通过机器学习驱动业务决策的企业,尤其适合快速试错和模型优化。
这些平台通常支持按使用量计费,根据模型大小、调用频次、资源使用情况进行计费。对于初创公司和小型团队,可以优先选择成本低、部署简单的服务;而企业级用户则可以选择提供全面管理功能的 MaaS 平台以满足复杂业务需求。
4.如何对模型进行优化和微调
通用的模型优化和微调方法
1.超参数调优:
- 描述:调整模型的超参数(如学习率、批量大小、隐藏层单元数等),找到最佳的参数组合。
- 方法:常用方法包括网格搜索(Grid Search)、随机搜索(Random Search)、贝叶斯优化(Bayesian Optimization)、以及使用进化算法或强化学习的自动化搜索。
2.特征工程:
- 描述:改进输入数据的质量或转换数据形式,使模型更容易提取有效信息。包括数据归一化、标准化、降维、特征选择、特征组合等。
- 方法:可以根据数据分布进行归一化/标准化,使用主成分分析(PCA)等方法降维,选择有代表性的特征。
3.迁移学习和微调:
- 描述:将预训练模型应用于新的任务或数据集,尤其是在数据不足的情况下。
- 方法:通常只微调最后几层或者增加特定任务的层,使用较小的学习率,避免对预训练权重造成大幅改动。
4.模型压缩:
- 描述:减少模型大小和计算需求,以提升运行速度和降低内存占用,适用于部署到资源受限设备或需要低延迟的应用。
- 方法:包括模型剪枝(Pruning)、量化(Quantization)、蒸馏(Knowledge Distillation)等。
5.正则化:
- 描述:防止模型过拟合,提高模型的泛化能力。
- 方法:包括 L1/L2 正则化、Dropout、Early Stopping(提前停止)等手段。
6.数据增广:
- 描述:通过数据增强技术增加训练数据的多样性,帮助模型更好地泛化。
- 方法:包括图像的旋转、翻转、颜色变化、裁剪等;文本数据则使用同义词替换、随机删除等方法。
5.MaaS中安全性和隐私保护
在 Model as a Service(MaaS)环境中,数据安全和隐私保护是用户和平台提供商必须优先考虑的问题。由于 MaaS 涉及数据上传、存储、处理以及模型推理结果的传输,用户数据的安全性和隐私保护问题尤为关键。以下是处理数据时需要关注的安全和隐私问题,以及相关的应对措施。
1.数据传输安全
问题:在数据上传和模型调用(如 API 请求)过程中,数据会通过网络传输,因此可能面临截取或篡改的风险。
措施:
- 传输层加密:确保数据传输时使用 HTTPS(TLS/SSL)加密,以防止数据在传输中被拦截。
- 身份认证和授权:MaaS 平台通常提供 API 密钥、OAuth、JWT 等认证方式,确保只有授权用户能访问模型。
- 访问控制:设置严格的权限管理,控制谁可以上传数据、调用模型或查看推理结果。
2.数据存储安全
问题:上传到 MaaS 平台的数据可能会长期存储,涉及云存储的安全性和合规性问题。
措施:
- 加密存储:大部分 MaaS 平台都支持数据加密,用户数据在存储时会使用加密算法(如 AES-256)进行加密存储。
- 访问控制和权限管理:通过细粒度的权限控制限制访问数据的用户和应用,确保仅授权用户能访问特定数据。
- 合规性:选择符合 GDPR、HIPAA 等法律合规性的 MaaS 平台,这些平台通常会提供符合特定数据隐私法律要求的存储和处理服务。
3.数据处理隐私
问题:模型训练和推理过程可能涉及处理敏感数据,存在数据泄露、数据合规性和隐私泄露的风险。
措施:
- 差分隐私:通过加入随机噪声或使用差分隐私技术,使得数据在被处理时不会泄露个体数据。
- 联邦学习:一些 MaaS 平台支持联邦学习,这种方法允许数据在本地训练并共享模型更新,而非上传原始数据,从而保护数据隐私。
- 数据去标识化:对敏感数据进行去标识化处理,移除直接和间接标识信息,降低数据处理中的隐私风险。
4.数据访问和共享控制
问题:MaaS 环境中存在多个用户或租户,共享环境可能带来数据交叉访问风险,用户数据可能被未授权的第三方访问。
措施:
- 多租户隔离:MaaS 平台通常会采用租户隔离技术,确保不同用户的数据、模型和资源不会互相影响。
- 访问控制和审计:通过访问控制列表(ACL)和用户角色设置,控制用户对数据和模型的访问权限。平台提供的日志记录和审计功能可以跟踪访问历史,监控未经授权的访问。
5.模型安全性和数据重构攻击
问题:MaaS 平台上的模型可能会泄露训练数据的某些信息,存在数据重构和模型攻击的风险(如白盒和黑盒攻击)。
措施:
- 对抗性训练:通过对抗性训练增强模型的抗攻击能力,减少模型对输入数据特征的过度记忆。
- 输出限制:控制模型的输出信息量,避免返回过多的置信度或内部特征信息,防止攻击者利用信息进行数据重构。
- 安全测试:使用 MaaS 平台提供的模型安全测试工具,进行压力测试和攻击测试,检测模型的漏洞。
6.合规性和数据主权
问题:不同地区对数据存储、处理和传输有不同的法律要求,可能影响到模型和数据的使用范围。
措施:
- 地区隔离存储:确保数据存储在用户所在地区的服务器上,符合数据主权要求。
- 隐私合规:选择符合 GDPR、CCPA 等法规的 MaaS 平台。确保数据收集、处理和共享符合用户所在国家的隐私和数据保护法律。
- 定期审核和评估:定期进行合规性审查,检查 MaaS 平台和自身的数据处理流程是否符合最新的法规要求。
7.模型的安全共享
问题:一些 MaaS 平台允许共享模型或公开模型,可能导致模型被恶意使用或窃取。
措施:
- 访问控制:对模型访问进行严格的权限控制,确保只有授权用户可以调用模型。
- 模型水印:对共享的模型添加水印,便于追踪和防止未授权的模型复制和使用。
- 使用限制:在模型的 API 上设置请求限制或速率限制,防止恶意滥用和滥调用。
总结
MaaS 平台上的数据安全和隐私保护涉及数据传输、存储、处理、访问、共享和合规等多个方面。通过加密、访问控制、数据去标识化、差分隐私、多租户隔离等技术措施,MaaS 平台可以有效降低数据泄露风险,确保用户数据的安全性和隐私性。同时,遵守当地法规和定期审查合规性也是确保 MaaS 数据处理安全的关键措施。
相关文章:
MaaS(Model as a Service)
1.MasS是什么? Model as a Service(MaaS)是一种云计算服务模式,它允许用户通过互联网访问和使用机器学习模型,而不需要自行构建和维护这些模型。MaaS提供了模型的托管、管理和监控,使用户能够专注于应用程…...
Docker怎么关闭容器开机自启,批量好几个容器一起操作?
环境: WSL2 docker v25 问题描述: Docker怎么关闭容器开机自启,批量好几个容器一起操作? 解决方案: 在 Docker 中,您可以使用多种方法来关闭容器并配置它们是否在系统启动时自动启动。以下是具体步骤和…...
训练时开Dropout,推理时不开Dropout的原因以及推理过程是怎样的?(中英双语)
Dropout的概念与应用:基于Transformer模型的深入解析 在深度学习中,Dropout 是一种常用的正则化技术,主要用于防止神经网络的过拟合。在训练过程中,Dropout通过随机丢弃神经网络中的一部分神经元,降低了网络的复杂度&…...
STL heap原理和用法
在C STL(标准模板库)中,heap(堆)并不是一个独立的容器,而是一组基于容器(通常是 vector)实现的算法函数,用于将一段数据组织成堆的数据结构形式,并提供了一些…...
【DRAM存储器四十三】LPDDR5介绍--寻址
👉个人主页:highman110 👉作者简介:一名硬件工程师,持续学习,不断记录,保持思考,输出干货内容 参考资料:《某LPDDR5数据手册》 、《JESD209-5C》 前面我们介绍的LPDDR5一个die的数据位宽...
mac启ssh服务用于快速文件传输
x.1 在mac上启SSH服务 方法一:图形交互界面启ssh(推荐) 通过sharing - advanced - remote login来启动ssh;(中文版mac应该是 “系统设置 → 通用 → 共享”里打开“远程登录”来启动) 查看自己的用户名和…...
Java设计模式 —— 【结构型模式】享元模式(Flyweight Pattern) 详解
文章目录 概述结构案例实现优缺点及使用场景 概述 享元模式也叫蝇量模式:运用共享技术有效地支持大量细粒度的对象; 常用于系统底层开发,解决系统的性能问题。像数据库连接池,里面都是创建好的连接对象,在这些连接对象…...
前端最新Vue2+Vue3基础入门到实战项目全套教程,自学前端vue就选黑马程序员,一套全通关!
Vue 快速上手 Vue概念 Vue 是一个用于构建用户界面的渐进式框架 构建用户界面:基于数据渲染出用户看到的页面 渐进式:循序渐进 框架:一套完整的项目解决方案 Vue 的两种使用方式: ① Vue 核心包开发 场景:局部 模块改造 ② Vue 核心包 &am…...
肿瘤电场治疗费用
肿瘤电场治疗作为一种前沿的肿瘤治疗方法,近年来备受关注。该方法通过利用特定频率的交流电场,作用于恶性肿瘤细胞,以达到抑制肿瘤生长的目的。然而,随着这种治疗方法的普及,其费用问题也逐渐成为患者和家属关注的焦点…...
datatables快速入门
官网 进入官网https://datatables.net/ 点击下载 支持多种方式下载 快速入门 这里以cdn的方式演示 https://cdn.datatables.net/ <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport&…...
ReactPress 1.6.0:重塑博客体验,引领内容创新
ReactPress 是一个基于Next.js的博客&CMS系统, Github项目地址:https://github.com/fecommunity/reactpress 欢迎Star。 体验地址:http://blog.gaoredu.com/ 今天,我们自豪地宣布ReactPress 1.6.0版本的正式发布,…...
我的创作纪念日(五年)
慕然回首 平平无奇的周一早晨,收到来自csdn的提醒,创作纪念日五周年了,这也意味着我从事开发行业差不多有整整五年了,五年啊!你知道这五年我是怎么过的吗?一句Just do IT,我做it整整做了五年&am…...
企业AI助理背后的技术架构:从数据到智能决策
在当今数字化时代,企业AI助理已经成为推动企业数字化转型和智能化升级的重要工具。它们通过整合企业内外部数据资源,运用先进的算法和模型,为企业提供高效、精准的智能决策支持。本文将深入探讨企业AI助理背后的技术架构,从数据收…...
主流AI视频生成工具|Sora零基础入门指南
Sora是什么? Sora 是 OpenAI 推出的新一代 AI 视频生成工具。它能让用户通过简单的文本描述或图片提示,快速生成高质量的视频内容。无论是广告短片、创意视频,还是实验性艺术作品,Sora 都能帮助创作者以极低的门槛实现自己的想法。…...
单元测试/系统测试/集成测试知识总结
🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 一、单元测试的概念 单元测试是对软件基本组成单元进行的测试,如函数或一个类的方法。当然这里的基本单元不仅仅指的是一个函数或者方法࿰…...
前端文件下载多方式集合
基于vueelement UI框架 // ts-ignore import axios from "axios"; import { ElMessage } from "element-plus"; import webConfig from "/config";class FileDownload {/*** 文件流下载* param url string 下载地址* param params object 请求…...
PG备份恢复--pg_dump
pg_dump pg_dump 是一个逻辑备份工具。使用 pg_dump 可以在数据库处于使用状态下进行一致 性的备份,它不会阻塞其他用户对数据库的访问 。 一致性备份是 pg_dump 开始运行时,给数据库打了一个快照,且在 pg_dump 运行过程 中发生的更新将不会被备份。 …...
Java进阶学习笔记|面向对象
第一章.类和对象 1.面向对象的介绍 1.面向过程:自己的事情自己干,代表语言C语言洗衣服:每一步自己要亲力亲为 -> 找个盆,放点水,找个搓衣板,搓搓搓 2.面向对象:自己的事情别人帮忙去干,代表语言Java语言 洗衣服:自己的事情别人干 -> 全自动洗衣机3.为啥要使用面向对…...
ESP32_H2(IDF)学习系列-ADC模数转换(连续转换)
一、简介(节选手册) 资料参考https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32h2/api-reference/peripherals/adc_calibration.html 1 概述 ESP32-H2 搭载了以下模拟外设: • 一个 12 位逐次逼近型模拟数字转换器 (SAR ADC)&…...
二叉树的右视图
199. 二叉树的右视图 已解答 中等 相关标签 相关企业 给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 # Definition for a binary tree node. # class TreeNode(object): #…...
Pinpoint 是一个开源的分布式追踪系统
pinpointagent2.2.2.tar 是 Pinpoint 的一个版本,Pinpoint 是一个开源的分布式追踪系统,专门用于对 Java 应用程序进行性能监控、日志记录和故障诊断。它可以帮助开发人员和运维人员追踪和分析微服务架构中服务之间的调用链,并进行性能分析。…...
React 脚手架使用指南
React 脚手架使用指南 目录 概述创建项目项目结构常用命令配置说明最佳实践 概述 什么是 React 脚手架? React 脚手架(Create React App)是 Facebook 官方提供的创建 React 单页应用的工具。它提供了一个零配置的现代构建设置。 为什么使用脚手架?…...
Win10提示“缺少fbgemm.dll”怎么办?缺失fbgemm.dll文件的修复方法来啦!
fbgemm.dll文件的作用 fbgemm.dll(Facebook GEMM library)是一个动态链接库文件,它主要用于优化矩阵乘法运算,提高计算性能。虽然它不是Windows 10系统的核心组件,但在某些应用程序或游戏中,尤其是那些需要…...
vue2 elementui if导致的rules判断失效
优化目标 和 目标转化出价必填的 切换的时候还会隐藏掉 这时候的if语句会导致rules判断失效 我的办法是把判断拉到外面 别放在el-form-item里 <section v-if"unitForm.baseTarget OCPM && unitForm.cpaTargetOptions ! undefined && unitForm.cpaTa…...
基于科大讯飞大模型Spark 4.0 Ultar 的微信聊天机器人搭建教程---零基础搭建最详细图文版!!!
1、软件的下载及部署 搭建该微信聊天机器人,主要依赖的编程语言为python,故需要搭建python的开发环境,主要包含python解释器的下载与安装以及编译器pycharm的下载与安装 1.1 python解释器的下载与安装 python解释器官网:https:…...
SpringBoot整合Netty
前言 Netty是一个高性能、异步事件驱动的网络应用程序框架,用于快速开发可维护的高并发协议服务器和客户端。 Netty主要基于Java NIO实现,提供了异步和事件驱动的网络编程工具,简化了TCP和UDP服务器的编程。 Netty广泛应用于分布式系统、实时通信、游戏开发等领域,例如,…...
机器学习之PCA降维
主成分分析(PCA,Principal Component Analysis) 主成分分析(PCA)是一种常见的无监督学习技术,广泛应用于数据降维、数据可视化以及特征提取等任务。PCA的目标是通过线性变换将数据从高维空间映射到低维空间…...
《 OpenCV 环境搭建》
《OpenCV 环境搭建》 一、OpenCV 简介二、准备工作三、安装 OpenCV(一)获取安装包(二)安装过程 四、配置环境变量(一)系统环境变量配置(二)项目环境变量配置(以 Visual S…...
【阅读记录-章节7】Build a Large Language Model (From Scratch)
系列文章目录 【阅读记录-章节1】Build a Large Language Model (From Scratch) 【阅读记录-章节2】Build a Large Language Model (From Scratch) 【阅读记录-章节3】Build a Large Language Model (From Scratch) 【阅读记录-章节4】Build a Large Language Model (From Scr…...
在js中实现下载base64数据,兼容低版本
详细步骤如下 1、解析 Base64 数据: 如果数据流中包含前缀 data:…;base64,,先分离 MIME 类型和 Base64 数据部分。如果没有前缀,假设默认 MIME 类型(如 application/octet-stream)。 2、Base64 解码: 使…...
垃圾分割数据集labelme格式659张1类别
数据集格式:labelme格式(不包含mask文件,仅仅包含jpg图片和对应的json文件) 图片数量(jpg文件个数):659 标注数量(json文件个数):659 标注类别数:1 标注类别名称:["garbage"] 每个类别标注的框数&#…...
深入探索 npm cache clean --force:清理 npm 缓存的艺术
npm 是 JavaScript 编程语言的包管理器,它是 Node.js 运行环境的默认包管理器。npm 提供了一个丰富的生态系统,包括数以百万计的可重用代码包。然而,随着时间的推移,npm 的缓存可能会变得庞大,影响性能或导致一些奇怪的…...
Flink中并行度和slot的关系——任务和任务槽
一、任务槽(task slots) Flink的每一个TaskManager是一个JVM进程,在其上可以运行多个线程(任务task),那么每个线程可以拥有多少进程资源呢?任务槽就是这样一个概念,对taskManager上每个任务运行…...
22【AUTOSAR自适应平台设计的概述01】杂项概念介绍
1.AUTOSAR自适应平台设计的概述 本小课题主要是让读者对AUTOSAR自适应平台设计的思路有个宏观的概念,不拘泥于具体的技术细节。 总结如下: 概述AUTOSAR自适应平台(AP)的设计。为AP用户和实施者提供总体设计和关键概念2.具体的章节由以下几个部分组成: 技术范围和方法: 介…...
基础运维学习计划-base版
目录 需要学习的内容? liunx基础 sql/mysql基础 tcp/ip协议基础 http基础 dns基础 网络基础:交换&路由概念&原理 常见网络协议 月学习计划 12.26 日 (bilibili自己找视频看看,资源很多) 12.27日 1…...
Golang的发展历程
Golang的发展历程可以分为以下几个阶段: 设计阶段:2007年,Google开始研究开发一种新的编程语言,主要出于对C和Java等编程语言的不足之处的反思。经过一年多的研究和讨论,Golang的设计方案得到确定,主要包括…...
数据结构之线性表之顺序表
定义: 由n(n>0)个数据特性相同的元素构成的有限序列称为线性表 简单来说n个相同数据类型的数据组wsw合在一起的这么一个集合就是一个线性表 线性表包括顺序表和链表 1. 顺序表(我们所有的代码实现都用函数来封装)…...
GESP202309 二级【小杨的 X 字矩阵】题解(AC)
》》》点我查看「视频」详解》》》 [GESP202309 二级] 小杨的 X 字矩阵 题目描述 小杨想要构造一个 的 X 字矩阵( 为奇数),这个矩阵的两条对角线都是半角加号 ,其余都是半角减号 - 。例如,一个 5 5 5 \times 5 5…...
流量主微信小程序工具类去水印
工具类微信小程序流量主带后台管理,可开通广告,带自有后台管理,不借助第三方接口 介绍 支持抖音,小红书,哔哩哔哩视频水印去除,功能实现不借助第三方平台。可实现微信小程序流量主广告变现功能,…...
Es搭建——单节点——Linux
Es搭建——单节点——Linux 一、安装 下载安装包: 官网下载地址:https://www.elastic.co/downloads/elasticsearch 上传包到linux 切换到安装目录下 解压:tar -zxvf elasticsearch-7.17.1-linux-x86_64.tar.gz 重命名安装文件夹 mv elastics…...
linux安装idea
参考原网址:在Linux系统中安装idea教程_idea linux-CSDN博客 1.下载idea Download IntelliJ IDEA – The Leading Java and Kotlin IDE 选择Download,下载正确的文件名:ideaIU-2024.3.1.1.tar.gz 2.安装vim sudo apt install vim 3.解压…...
PLSQL 客户端连接 Oracle 数据库配置
1. 安装Oracle客户端 首先,安装Oracle客户端。可以从Oracle官方网站下载Oracle Instant Client, 安装完成后,请记住安装路径,因为将在后续步骤中需要用到它。 2. 配置环境变量 添加环境变量 ORACLE_HOME 安装Oracle客户端后,配…...
C#调用OpenXml,读取excel行数据,遇到空单元跳过现象处理
问题及现象 在OpenXML中文件不包含空白单元格的条目,这就是跳过空白单元格的原因。 所以如果当我们打开一个excel,读取一个表格数据,发现如果有空单元格,openXML会跳过导致读取的数据发生错位。 比如这个是原始的excel表格数据…...
【计算机视觉CV-图像分类】06 - VGGNet的鲜花分类实现:从数据预处理到模型优化的完整实战!
目录 引言 VGGNet概述 VGGNet的网络架构 基于预训练VGGNet的五类鲜花分类实现 4.1 数据准备与预处理 4.2 模型实例化与参数调整 4.3 模型训练与保存最优模型 4.4 模型导入与预测 4.5 训练过程的可视化 模型优化与防止过拟合 总结与展望 参考文献 引言 在计算机视觉…...
QT 控件定义为智能指针引发的bug
问题描述: std::unique_ptr<QStackedLayout> m_stacked_layout; 如上为定义; 调用: Line13ABClient::Line13ABClient(QWidget *parent) : BaseWidget(parent) { // 成员变量初始化 m_get_ready false; m_tittle_wnd…...
@register_model 装饰器
使用 register_model 装饰器来注册模型类有以下几个优势: 自动化注册: 通过装饰器自动将模型类注册到一个全局字典中,避免了手动注册的繁琐操作,使代码更加简洁和易于维护。 易于扩展: 可以方便地添加新模型ÿ…...
图像处理-Ch7-图像金字塔和其他变换
Ch7 小波变换&其他图像变换 文章目录 Ch7 小波变换&其他图像变换背景知识(bk)图像金字塔(Image Pyramid)子带编码(Sub-band Coding)Z - 变换(线性变换)完美重建滤波器组(PCFB, Perfect Construction Filter Banks)有限脉冲响应(FIR)滤波器双正交…...
解决在vue3+vite+element-plus 中echarts在el-dialog无法正常显示问题
核心:在dom加载完成后调用echarts实例 的resize()方法 这里是一个例子 这里封装一个echarts <template><div class"container" ref"container"></div> </template> <script lang"ts" setup> import {…...
SQL进阶技巧:如何计算摆动的序列?| LeetCode 376.-摆动序列
目录 0 摆动序列 1 数据准备 2 问题分析 3 小结 0 摆动序列 原题链接:376. 摆动序列 - 力扣(LeetCode) 如果连续数字之间的差严格地在正数和负数之间交替,则数字序列称为 摆动序列 。第一个差(如果存在的话)可能是正数或负数。仅有一个元素或者含两个不等元素的…...
告别卡顿:探索 Java FGC 的根源与高效解决方案
Java Full Garbage Collection (FGC) 的产生原因及解决办法 引言 在Java应用程序的生命周期中,垃圾回收(Garbage Collection, GC)是确保内存有效管理的关键机制。然而,当发生Full Garbage Collection(FGC)…...