基本概念

更新时间:

# AI 开发

AI(Artificial Intelligence,人工智能)开发,指研究开发用于模拟人的思维和认知能力的应用。这类应用的核心能力在于,能够根据给定的输入做出合理的判断或预测。 AI 开发过程,涉及如下概念:

  • 数据
    数据是 AI 开发的关键资产,AI 应用最终能够合理的预测或判断给定的输入,正是因为曾大批量的学习过这类数据从而获取了这类数据的特征,在给定输入后,AI应用能够通过其特征给出合理的判断。
    在本产品中数据分为两部分:

    • 数据集:用户自行上传到平台的数据。
    • 数据源:用户的数据存储在外部平台,外部平台可接入到本平台。
  • 代码
    这里的代码特指 AI 模型开发过程中,用于引导模型训练的代码。在本产品中代码分为两部分:

    • 代码集:用户自行上传到平台中的代码。
    • 外部代码仓库:用户已有的代码在外部代码管理平台,如 GitHub 等。
  • 模型
    模型,指 AI 开发过程中已具备一定推理(预测)能力但又还未部署为应用的中间态产物,该状态下,可被反复训练从而拥有更高的推理能力。

  • 训练
    训练指模型学习数据特征的过程,模型通过不断训练才能够掌握数据特征。这样,在面对给定输入时,模型才能够给出合理的判断和预测。

    • 离线训练:算法工程师进行模型训练活动的过程,因为训练活动一般都是使用离线任务来执行,所以又称为离线训练。
    • 单机训练:算法工程师使用单个实例(机器)进行训练的任务,单机任务支持使用纯 CPU 环境、物理 GPU 环境和虚拟 GPU 环境。
    • 分布式训练:分布式任务指使用多个实例(机器)进行同时训练模型,在资源充沛的情况下,使用分布式任务可以极大的降低训练总体时间。
  • 推理
    指模型根据给定的输入来做判断或预测的过程,推理能够检测人工智能应用或模型是否足够智能,如果模型的推理正确性不高,则需调整训练方式再次投入训练以达到最佳的推理效果。

# 公开性

平台为提高协同开发能力,针对 AI 资产、项目提出了公开性的概念,即作为 AI 资产或项目的拥有者/创建者,可以为项目或资产设置公开性,包括:

公开性 描述
私有 创建者可见、可使用、可管理(修改/删除)该资源。
共享 创建者指定共享到某个空间,共享空间的所有成员可见、可使用该资源。
公开 平台所有人可见、可使用该资源。

针对公开性,平台为便于您快速找到所需的资源,为您设置了资源标签:

  • 我的:我创建的资源。
  • 空间:别人共享至当前空间的资源。
  • 公开:平台中所有公开的资源。

# 配额

配额是空间/个人可同时使用的硬件资源总量,平台为管理资源分配而提出的概念,其分配的对象包括空间和空间成员,可避免资源浪费或分配不均。

  • 平台分配给空间的资源量称为 空间配额
    空间内所有成员可并发使用资源的总和。
  • 空间分配给空间成员的资源量称为 空间成员配额
    空间拥有者需要给空间配额中每一项配额资源设定超分比例,超分比例范围 1~10。每个空间成员的配额遵循公式 每位空间成员配额 =(空间资源配额 * 超分比例) / 空间总成员数(结果向上取整)
    空间拥有者也可以单独为某个空间成员指定可使用的配额,一旦指定了成员配额,该成员在计算配额时则会忽略以上设置超分比的设置。

可分配的资源包括:CPU、内存、GPU、显存、临时存储、持久化存储,这些资源也被称为 配额项。其中:

  • 临时存储:存储开发环境或其他任务启动所依赖的环境本身,当任务完成或开发环境停止则临时存储资源被系统回收。
  • 持久化存储:用于存储用户的 AI 资产,包括:数据、镜像、代码。

# 算力

可理解为计算能力或处理数据的能力,目前能够提供计算能力和处理数据能力的有 GPU 和 CPU,因此它们又被称为算力资源。

# 镜像

平台中所述的镜像,指打包了操作系统及相关 AI 开发所使用的框架及工具库的压缩文件,可用来创建开发环境和训练环境。

# JupyterLab

JupyterLab 是一种基于 web 的集成开发环境,您可以使用它编写 notebook、操作终端、编辑 markdown 文本、打开交互模式、查看 csv 文件及图片。