• 简中
    • 繁中
  • 注册
  • 查看作者
  • 借助Transformer,DeepMind新模型自动生成CAD草图,网友:建筑设计要起飞‌

    转载:本文来自微信公众号“机器之心”(ID:almosthuman2014),作者:力元,转载经授权发布。

    深度学习嘅灵活性恰好适合于复杂嘅 CAD 设计,DeepMind 嘅研究者基于 CAD 草图同自然语言建模嘅相似性,提出‌自动生成 CAD 草图嘅机器学习模型。

    喺制造业度,CAD 嘅应用十分广泛。凭借住精准、灵活、快速嘅特性,CAD 已经取代‌纸笔画图,并且唔再只是应用于汽车制造、航空航天等领域,边怕小到一个咖啡杯,生活中几乎每个物件都由 CAD 画图建模。

    CAD 模型中最难制作嘅部件之一就是高度结构化嘅 2D 草图,即每一个 3D 构造嘅核心。虽然时代唔同嘎啦,但 CAD 工程师仍然需要几年嘅培训和经验,并且像纸笔画图设计嘅前辈们一样关注所有嘅设计细节。下一步,CAD 技术将融合机器学习技术来自动化可预测嘅设计任务,使工程师可以专注于更大层面嘅任务,以更少嘅精力来打造更好嘅设计。

    喺最近嘅一项研究度,DeepMind 提出‌一种机器学习模型,能够自动生成此类草图,且结合‌通用语言建模技术以及现成嘅数据序列化协议,具有足够嘅灵活性来适应各领域嘅复杂性,并且对于无条件合成和图像到草图嘅转换都表现良好。

    借助Transformer,DeepMind新模型自动生成CAD草图,网友:建筑设计要起飞‌

    论文链接:https://arxiv.org/pdf/2105.02769.pdf

    具体而言,研究者开展‌以下工作:

    • 使用 PB(Protocol Buffer)设计‌一种描述结构化对象嘅方法,并展示‌其喺自然 CAD 草图领域嘅灵活性;
    • 从最近嘅语言建模消除冗余数据中吸取灵感,提出‌几种捕捉序列化 PB 对象分布嘅技术;
    • 使用超过 470 万精心预处理嘅参数化 CAD 草图作为数据集,并使用此数据集来验证提出嘅生成模型。事实上,无论系喺训练数据量还是模型能力方面,实际嘅实验规模都比这更多。

    CAD 草图展示效果图如下:

    借助Transformer,DeepMind新模型自动生成CAD草图,网友:建筑设计要起飞‌

    特写镜头展示:

    借助Transformer,DeepMind新模型自动生成CAD草图,网友:建筑设计要起飞‌

    对于 DeepMind 嘅这项研究,网友嘅评价非常高。用户 @Theodore Galanos 表示:「非常棒嘅解决方案。我曾使用 SketchGraphs 作为多模态模型嘅候选方案,但序列嘅格式和长度太唔容易处理嘎啦。等唔及喺建筑设计中也使用呢种方法嘎啦。」

    借助Transformer,DeepMind新模型自动生成CAD草图,网友:建筑设计要起飞‌

    草图之于 CAD

    2D 草图是机械 CAD 嘅核心,是构成三维形式嘅骨架。草图由通过特定嘅约束(例如正切、垂直和对称)相关联嘅各种线、弧、样条线和圆组成。呢啲约束旨喺传达设计意图,并定义喺实体嘅各种变换下,形状应该点样发生变化。下图说明‌约束系点样将唔同嘅线、弧等几何图形组合创建成特定嘅形状嘅。虚线显示‌丢失约束时嘅另一个有效嘅解决方案。所有嘅几何实体都位于一个草图平面上,共同形成封闭嘅区域,供后续操作(例如放样和拉伸)使用,以生成复杂嘅 3D 几何。

    借助Transformer,DeepMind新模型自动生成CAD草图,网友:建筑设计要起飞‌

    约束:草图逃唔开嘅问题

    约束( constraint )使草图比睇起来要复杂得多。佢们展现‌可以间接影响草图中每个实体嘅关系。例如,喺上图度,如果喺底角保持固定嘅状态下向上拖动两个圆弧相交嘅点,则心形嘅大小会增大。呢种转变睇似简单,但实际上是所有约束共同作用嘅结果。

    呢啲约束确保‌当每个实体嘅尺寸和位置发生变化时,形状仍保持住设计者想传达嘅状态。由于实体之间复杂嘅相互作用,好容易意外地指定一组约束,从而导致草图无效。例如,同时满足平行和垂直约束嘅两条线是无办法绘制嘅。喺复杂嘅草图度,约束依赖关系链会导致设计人员确定要添加嘅约束变得极为困难。此外,对于畀定嘅一组实体,有好多等效嘅约束系统能产生类似嘅草图。

    一个高质量嘅草图通常会使用一组保留设计意图嘅约束,呢意味住就算更改‌实体参数(例如尺寸),草图嘅语义也得以保留。简而言之,无论实体尺寸点样变化,上图中嘅心形永远是心形。捕捉设计意图同选择一致嘅约束系统嘅复杂性使草图生成变成极其困难嘅问题。

    草图同自然语言建模嘅相似性

    草图构造嘅复杂性有啲类似于自然语言建模。喺草图中选择下一个约束或实体好似生成句子中嘅下一个单词,而两者中嘅嘅选择又必须喺语法上起作用(喺草图中形成一个一致约束系统),并保留设计意图。

    喺生成自然语言方面,已经有‌好多成功嘅工具,其中表现最佳嘅无疑系喺大量现实世界数据上进行训练嘅机器学习模型。比如 2017 年嘅 Transformer 架构,展示‌强大嘅连贯造句嘅能力。呢啲自然语言模型中嘅规律,系咪可以用来绘制草图呢?

    数据

    Onshape 是维度驱动设计嘅一个参数化实体建模软件。但为‌存储和处理草图,研究者使用 PB,而唔系 Onshape API 提供嘅原始 JSON 格式。使用 PB 具有双重嘅优势:由于移除咗唔必要嘅信息,结果数据占用嘅空间更少;使用 PB 语言可以轻松地为结构各异嘅复杂物体定义精准嘅规格。

    一旦设定好所有必要嘅对象类型,就需要将数据转换为可以通过机器学习模型来处理嘅表格。研究者选择将草图表示为 tokens 序列,以便使用语言建模生成草图。文本格式包含‌结构和数据嘅内容,呢样使用嘅优势是可以应用任何现成嘅文本数据建模方法。唔过,就算对于现代语言建模技术,呢样做都系有代价嘅:模型为‌生成有效嘅语法,将额外占用模型容量嘅一部分。

    解决嘅手段就是避免使用字节格式 PB 定义嘅通用解析器,利用草图格式嘅结构来自定义构建设计解释器,即输入一系列代表草图创建过程中各个决策步骤有效选择嘅 tokens。喺呢种 tokens 序列嘅格式下设计解释器会导致 PB 消息有效。

    喺呢种格式下,研究者将消息表示为 triplets 序列(??,??,??),其中?是 token 嘅索引。畀定一系列咁样嘅 triplets,推断每个 token 对应的确切字段是可能嘅。实际上,第一个 token(??,??,??)始终同 objects.kind 相关联,因为佢是创建一个草图消息嘅首选。第二个字段取决于?1 嘅具体值。如果?1= 0,噉样第一个对象系一个实体,呢意味住第二个 token 对应于 entity.kind。该序列嘅其余部分以类似嘅方式关联。字段标识符及其喺对象中嘅位置构成‌ token 嘅上下文。因为佢使解释 triplets 值嘅含义以及认识整体数据结构更容易,研究者将此信息用作机器学习模型嘅第啲输入。

    借助Transformer,DeepMind新模型自动生成CAD草图,网友:建筑设计要起飞‌

    如上图所示,草图包含‌一条线实体和一个点实体。喺左列嘅每个 triplet 度,实际使用嘅值以粗体显示。右列显示‌ triplet 同对象嘅边个字段有关联。

    从模型中取样

    建立模型嘅主要目标是估计数据集 D 中嘅 2D 草图 ?data 嘅分布。好似上文提到嘅,研究者将像 token 序列一样处理草图。喺这项工作度,由于相关原始文本格式嘅序列长度挑战,只会考虑使用用字节和 triplet 来表示。

    从字节模型取样好简单,该过程同任何典型嘅基于 Transformer 嘅语言建模过程相同,而 Triplet 模型需要更多嘅定制处理。

    借助Transformer,DeepMind新模型自动生成CAD草图,网友:建筑设计要起飞‌

    上图展示‌ Triplet 嘅处理过程:首先将特殊嘅 BOS token 嵌入并提供畀 Transformer。然后,Transformer 输出一组 triplets,每个可能嘅 token 组一个。为‌确定具体需要发出边个 token,应用从数据规格中自动生成嘅解释器(状态机),再选择合适嘅 token 组并关联喺合成对象中具有字段嘅 triplet 嘅活动组件。填入适当嘅字段后,解释器转换到下一个状态并生成一个输出 token,然后将其反馈到该模型。当状态机收到最外层重复字段(即 object.kind)嘅 “end” triplet 时,停止该过程。

    实验

    研究者使用‌从 Onshape 平台上公开可用嘅文档库中获得嘅数据对方法进行验证。遵循自回归生成模型嘅标准评估方法,研究者使用对数可能性作为主要嘅定量指标。此外,研究者还提供‌各种随机和选定嘅模型样本以进行定性分析评估。

    训练细节

    研究者使用 128 个通道嘅批次训练模型以进行 10^6 个权重更新。每个通道都可以喺 triplet 设置中容纳 1024 个 tokens 嘅序列,喺字节设置中容纳 1990 个 tokens。为‌提高占用率并减少计算浪费,研究者动态地填满‌通道,喺继续前进到下一条道之前将尽可能多嘅例子打包。每个批次由 32 个 TPU 内核并行处理。

    此外,研究者还使用‌ Adam 优化器,学习率为 10^−4,梯度范数为 1.0,所有实验均采用 0.1 嘅失活率。

    实验结果

    借助Transformer,DeepMind新模型自动生成CAD草图,网友:建筑设计要起飞‌

    如上图所示,各种模型嘅可能性都被测试到嘎啦。第三列是草图测试样本中每个对象嘅平均字节数,第四列是第三列乘以对象数。

    下图是从 triplet 模型中取样嘅实体同约束。第一列节点代表‌唔同嘅实体,节点从上至下遵循生成嘅顺序。第二列代表住唔同嘅约束,按照序列索引排序。第三列是从频率最高到最低嘅约束类型。

    借助Transformer,DeepMind新模型自动生成CAD草图,网友:建筑设计要起飞‌

    下图是条件模型嘅实体和约束。左下角是输入位图,下例说明‌模型喺分布外输入时嘅表现。

    借助Transformer,DeepMind新模型自动生成CAD草图,网友:建筑设计要起飞‌

    下图显示‌从非条件模型取样嘅各种草图数据分布统计,而括号中嘅系 Nucleus 取样嘅 top-p 参数。

    借助Transformer,DeepMind新模型自动生成CAD草图,网友:建筑设计要起飞‌

    呢啲只是最初嘅概念验证实验。DeepMind 表示,希望能够睇到更多利用已开发接口嘅灵活性优势开发嘅应用程序,比如以各种草图属性为条件,畀定实体来推断约束,以自动完成图纸。

    cantonese.live 足跡 粵字翻譯

  • 0
  • 0
  • 0
  • 390
  • 请登录之后再进行评论

    登录
  • 任务
  • 发布
  • 偏好设置
  • 单栏布局 侧栏位置: