人工智能在设计中的应用(用人工智能做设计)
机器之心分析师网络
作者:仵冀颖
编辑:Joni
在这篇文章中,我们讨论设计中的人工智能问题(AI in Design)。众所周知,人工智能 AI 的最终目的是让机器具备与人类类似的识别、分析、理解甚至是决策的能力,从而能够代替人类解决问题、完成任务。但是,现阶段的人工智能,即使是在工业场景中已经获得了较好的推广应用的人工智能技术,都属于弱人工智能。
利用大量的数据学习、预训练、参数调优、微调、模型架构调整等等改进或处理手段,这些人工智能的模型或方法能够依赖数据或经验自动完成一些任务,但是却无法拥有人类的主观能力,例如对事物、事件或者环境的感受和感知能力。它们不能够独立思考,因此,也不能真正具备像人类一样的推理、类比等抽象思维的能力。
什么是设计?百科中这样写道:「设计是有目标有计划的进行技术性的创作与创意活动, 是把一种设想通过合理的规划、周密的计划、通过各种方式表达出来的过程,可以把任何造物活动的计划技术和计划过程理解为设计。」设计涉及了众多领域,例如:商贸领域(Commerce),包括产品设计、包装设计等等;应用领域(Applications),包括游戏设计、UI 设计等等;传达(Communications)领域,包括字体设计、音效设计、图形设计、版面设计等等;科学和数学领域(Scientific and Mathematical),包括组合设计、实验设计等;物质领域(Physical),包括服装设计、环境设计、工业设计等等。不管最终的应用领域是什么,设计都有一个关键的组成「人类的一种设想」。这种设想是典型的人类思维和思想,是完全抽象的存在,也是目前人工智能所无法替代的关键。因此,在设计中引入人工智能仍面临很大的挑战。
不过,尽管在设计中引入人工智能面临很多问题,但人工智能还是有其固有的优势的。一是,人工智能具有超过人类的记忆能力,能够随时、正确的调用大量的经验来辅助完成任务;二是,人工智能具有超强的计算能力,能够在短时间内完成复杂的计算任务;三是,人工智能方法不受人类主观情绪影响,能够相对公平的评估设计方案。因此,在设计中引入人工智能将能够不断地积累并有效利用经验知识,且能够不断地、快速且高效地优化设计方案,以及能够不断地探索并找到最佳的设计方案。
本文根据近期发表的四篇论文,具体探讨了人工智能在结构设计、产品设计、电路设计、排版版面设计中的应用。这四个设计应用领域的任务区别非常大,所以应用人工智能的方法也非常不同。我们将在后续章节中具体分析不同设计任务的特点、需求,以及如何有效的将人工智能引入到设计中。
1、结构设计中的 AI
本文重点关注的是结构设计问题,具体是指医院病房的房间布局设计 [1]。患者在住院期间出现跌倒的情况会严重影响患者的预后,导致发病率增加、住院时间延长和生活质量降低等问题。此外,不必要的跌倒也会给患者和医疗系统带来巨大的经济成本。导致患者跌倒的原因有很多。其中,环境危害(Environmental Hazards)和事故(Accidents)已被确定为最常见的跌倒原因。
文献[6] 中提出了一种考虑房间布局的病人在医院房间内自然行走时跌倒风险的度量方法。该方法通过考虑房间设计因素,包括照明、地板类型、门的操作 (摆动或滑动) 和房间内的支撑物 (如家具、扶手、床栏等) 来估计病人在房间中的跌倒风险。然而,作者所提出的度量标准所定义的跌倒风险与房间布局之间的公式关系复杂且不直观,同时不能手动调整布局以降低跌倒风险。
本文在 [6] 中跌倒模型的基础上,采用无梯度优化技术自动生成医院房间布局的设计方案,目的是能够通过改进房间布局设计的方式降低患者跌倒的风险(见图 1)。具体来说,作者对模拟退火方法进行了调整,以优化多个真实世界医院房间的特征,包括病人床、沙发、病人椅、输液杆、马桶和水槽等物体的位置,房间内照明的位置,以及主门和浴室门的位置等,即,引入人工智能辅助进行房间布局的结构设计。
图 1. 传统和优化的房间布局对跌倒风险的评价。图 (a) 和(b)为房间示意图,图 (c) 和(d)为跌倒风险模型评估的相应跌倒风险热力图。
1.1 结构设计中的人工智能介绍
结构设计中的人工智能与计算机化布局规划(Computerized layout planning)问题相关。计算机化布局规划是指在满足一系列标准和约束条件和 / 或优化一些目标的同时,利用计算机来分配空间。自 20 世纪 60 年代基于规则的计算机布局规划理念初见端倪以来,对计算机布局规划的需求不断增加。此后,人们在计算机布局规划方面做了很多工作,包括一些商业化产品。例如,Spacemaker(https://www.spacemakerai.com/)、Planner 5D(https://planner5d.com/)等等。这些软件包利用数学建模、人工智能和建筑城市发展方面的技术,协助建筑师设计多建筑住宅用地和高层规划。
在空间分配和布局规划中,人们关注的是消耗空间的物体和资源的物理位置安排。除此之外,计算机布局规划也常应用于室内设计中的物体放置问题。我们比较熟悉的有宜家开发的 IKEA PLACE 平台,通过手机摄像头扫描的区域内,虚拟放置公司的产品(Ikea apps - ikea. https://www.ikea.com/us/en/customer-service/mobile-apps/.)。
医院科室布局规划是医疗机构计算机布局规划中的重点研究领域之一。本文重点讨论了医院房间内家具、照明和门洞的摆放,目的是通过合理的规划布局设计,以降低患者跌倒的风险。
1.2 方法介绍
一个典型的单人床医院房间由两个子房间组成,一个是主房间,包括了病人、访客和临床区域。一个是浴室,包括了厕所、淋浴和洗脸池。作为本文方法的输入, 房间边界的几何形状是根据建筑学的要求确定的(本文使用的房间几何形状见图 1)。对于每一个子房间,必须放置特定的家具物品,必须包含光源来照亮房间,必须有连接浴室与主房间的门廊和连接主房间与走廊的门廊。本文模型的目标是对家具、光源和门廊的位置设计进行了优化,以降低患者跌倒的风险。
借用约束满足问题中的符号,作者将本文方法的输入形式化为三个集合:(1)房间的一组 n 个可变对象(如:家具、光源和门):X=;(2)为 X 中每个变量定义的一组域:D=;(3)一组定义在 X 中变量上的约束条件:C,其中,每个约束条件都可以涉及任何变量的子集。对于 X 中的每个对象 x_i,将其在医院房间中的位置参数化为配置向量 d_i∈ D_i。然后,将整个医院房间的布局参数化为向量 l= [(d_0)^T , (d_1)^T , ... (d_n)^T]^T ,即 X 中每个对象的配置向量的并集。本文优化目标是在满足约束条件的前提下,确定医院房间的具体布局 l,同时将「与患者跌倒风险」相关的函数 l 最小化。
房间的整体跌倒风险分布是根据以前对医院跌倒风险的研究,计算出病人的一系列外在因素的函数。该跌倒风险模型考虑了受房间内设施位置影响的静态和动态因素,并提供了两个跌倒风险评估:(1) 房间基线评估,根据以下静态因素计算:地板类型、照明条件、门的操作、周围物体 (如扶手、椅子、医疗架、沙发、水槽、马桶和床) 的支撑或危险作用,从而得出整个房间的风险分布。(2)基于运动的评估,考虑患者的步态动态特性,如转身角度和活动类型,如坐到站、走、转身、站到坐等。跌倒风险模型的完整流程见图 2。
图 2. 完整的跌倒风险模型流程图[6]
跌倒风险模型的输入为有关房间的细节,如地板表面类型以及房间的布局,包括照明、所有物体的位置和配置以及门的位置。输出是一个风险分布 r( l ),定义为离散化病房的网格图中每个元素的值。在模型的基线层中,每个网格的基值为 1,然后根据距离最近的支撑物体的距离以及照明、地板、门的操作因素来更新该值。对于基于运动的评估,该模型使用一组预先定义的场景,如患者从床上到厕所的转换,然后预测每个场景的物体之间的样本轨迹。模拟轨迹所经过的每个网格单元都会受到具体的模拟活动(如坐立)和动态因素(如角速度和转弯角度)的影响。由于两个目标对象之间可能存在多个轨迹,因此模型会生成并评估模拟患者轨迹的分布。结合基线和基于运动的评估风险曲线,得到整个房间的跌落风险分布。为此,计算基线跌落风险因素的平均值和每个网格单元上铺设的轨迹 / 活动点的跌落风险。最后输出的是每个网格单元的风险值。最后,可以将跌倒风险模型的输出可视化为医院房间布局的热力图,以显示跌倒风险值的分布情况(如图 1 所示)。
本文所使用的代价函数如下:
其中,α表示用户指定的截止参数,用于确定在分布中从哪里开始考虑曲线尾部下的区域,具体如图 3 所示。公式中的第三项表示风险值高于α的网格单元的集合。考虑曲线尾部下面积是财务风险管理中的常见做法,即所谓的条件风险值。最终的代价函数就是跌倒风险分布的中位数、平均值、标准差和最大值的函数。
图 3. 跌倒风险分布的代价函数参数,显示中位数、最大值和高风险尾部下面积。
作者使用模拟退火来优化 r( l )。模拟退火是一种随机迭代优化方法。在每次迭代时,随机生成当前布局附近的布局,并评估其代价。如果新的布局比当前布局有所改进,则将其更新为当前最新布局。如果没有改进,根据 Metropolis 概率,仍然可以接受它为最新布局:
其中,k 为 Boltzman 常数,T 为根据冷却计划随时间衰减的温度值,c 代表与布局相关的代价值。详细的优化流程见 Algorithm 1。
在执行优化过程中,当同时生成随机的初始可行房间布局 (Alg.1 行 8) 和附近可行布局 (Alg.1 行 16,NearbyFeasLayout) 时,首要保证的是这些布局是可行的,即满足约束集 C 中所有的约束条件。在这两种情况下,作者采用随机抽样与回溯的方法,在初始房间布局的生成过程中,从每个变量的域中均匀地随机采样。当生成现有布局的附近布局时,从以现有布局的配置为中心的正态分布中对每个变量的配置进行采样,并为每个变量定义标准差(Alg.1 中的σ_r)。为了确保在此过程中满足约束条件,作者利用了回溯搜索方法。回溯搜索方法每次为一个变量赋值并检查是否满足约束。当一个变量赋值违反约束条件时,回溯搜索方法重新采样,当一个变量没有合法的值可供赋值时,或者在试图赋值该变量时发现已经达到最大迭代次数或已耗费最大时间时,该方法会回溯到重新赋值之前的变量。
图 4 给出了在医院房间中放置一个物体时的回溯示例。在图 4a 中,算法试图将其中一个物体放置在浴室中,但由于前面物体的存在导致它无法做到这一点。该方法回溯并考虑更改先前放置物体的位置(图 4b)。最后,在满足约束条件的情况下,算法成功地将物体放置在房间里(图 4c)。图 5 描述了回溯算法的整体流程。
图 4. 物品放置程序。(a) 先前放置的物体妨碍后续物体的可行放置。(b)回溯改变先前放置的对象的位置。(c) 所有物体都以满足约束条件的方式放置。
图 5. 回溯方法流程图
1.3 实验介绍
为了评估所提出的模型的性能,作者优化了两种常见类型的医院房间的内部配置:内室(Inboard rooms)和外室(Outboard rooms)。对于内室和外室的实验,定义 X 包括:由沙发、病床、病椅、探视椅、移动医疗架、马桶和水槽组成的家具;主室和卫生间的吸顶灯;连接卫生间与主室和主室与走廊的门。
在图 6 和图 7 中,作者分别展示了优化前和优化后具有代表性的内室和外室房间布局,以及它们相关的跌倒风险得分热力图。在文章最开始的部分展示的图 1 中,作者也给出了类似的布局设计。作者发现,与内室房间相比,优化外室房间时的成本值更低。
图 6. 跌倒风险的房间布局评估和优化。(a)和 (b) 为算法生成的内室房间示意图。(a)是初始房间布局的实例,(b)是其中一次运行的优化房间布局。(c)和 (d) 是跌倒风险模型评估的相应跌倒风险热力图。图 (c) 和(d)中的颜色条数值越高,说明跌倒风险越高。
图 7. 跌倒风险的外室房间布局评估和优化。(a)和 (b) 为算法生成的内室示意图。(a)是初始房间布局的实例,(b)是其中一次运行的优化房间布局。(c)和 (d) 显示了由跌倒风险模型评估的相应跌倒风险热力图。颜色条上的数值越高,说明跌倒风险越高。
2、产品设计中的 AI
2.1 产品设计中的人工智能介绍
设计思维是从最终用户的角度创造创新产品的一个成熟过程,通常被称为以用户为中心的设计(User-centered design)或以人为中心的设计(Human-centered design)。这篇文章介绍的就是我们最熟悉的产品设计中的 AI[2]。尽管创新的设计思维具有无可争议的优点,但是对于在线业务来说,由于与产品开发过程或机器学习系统不兼容,目前很难在其中引入设计思维。本文的研究目的是提出一个过程框架,将设计思维与开发过程结合起来,将人融入到设计过程的循环(Loop)中。这就涉及了人机回圈问题(Human-in-the-loop,HITL)。
人机回圈是人工智能的一个分支,它利用人类和机器智能来创建机器学习模型。从本质上讲,人机回圈将自动化的问题重新定义为了人机交互(Human-Computer Interaction,HCI)设计问题。人机回圈将 「如何构建一个更智能的系统?」 的问题扩大到「如何将有用的、有意义的人机交互纳入系统中?」这种系统设计的目的是实现能够增强或提高人类完成任务的能力的交互式机器学习(Interactive Machine Learning),人机回圈作为一种工具通过智能地跟踪随时间的变化和中间结果,可以实现快速迭代、快速响应的反馈、内省和调试以及后台执行和自动化。关于人机回圈的问题,机器之心之前有过专门的报道,感兴趣的读者可以查阅(https://www.jiqizhixin.com/articles/2020-11-11-6)。
为什么将人机回圈整合到机器学习系统中变得越来越重要?其根本原因是近年来人工智能研究成果的爆炸式增长导致人们对这些研究成果的有效性越来越怀疑。除了对再现性和可解释性的关注,人们聚焦于一个新的关注点:可控性,即需要将人整合到依赖于机器学习结果的过程中,即人机回圈。
本文所提出的过程框架应用心理测量学来理解用户的设计感知,为后续的设计周期生成反馈,并逐步更新机器学习模型,以适应在线应用中用户偏好的快速变化。作者认为,目前提供在线应用的公司无法实施设计思维方法的内在原因可能在于对设计思维过程的误解。例如,IDEO 在 2007 年引入的斯坦福 d.school 设计思维过程[7],规定了一个由强调、定义、构思、原型和测试五个过程阶段组成的循环。许多公司的第一个误解就是忽视了设计的周期性,将五个阶段一次性执行。此时,最后的测试阶段并不会连接到后续的学习周期。然而,周期性的特性可以很容易地通过敏捷过程(agile process)来实现,即迭代和增量开发过程。第二个误解是企业没有将设计思维作为一个迭代学习周期来实现。设计思维方法通常将定性用户测试的样本量确定为 5 到 10 人之间。由于测试阶段只执行一次,小样本量会导致反馈不具代表性,因此对产品决策有风险。也正因为如此,这些提供在线应用的公司和企业认为无法在其产品设计过程中引入设计思维方法。
2.2 方法介绍
本文提出了一个过程框架—人在学习循环(Human-in-the-learning-loop,HILL)。如图 8 所示,它由一个设计思维过程(Design sprint)组成,并合并到了一个敏捷开发过程中。该过程通过对用户反馈的定量测量来代替定性的用户测试。这种替换能够为后续的学习周期提供可扩展的教学反馈。
作者使用 HILL 设计周期(The HILL Design Cycles)过程取代了定性用户测试的定量心理测量工具的设计感知。所生成的用户反馈用于训练机器学习模型,并沿着四个设计维度(新颖性、能量、简单性、工具性)指导后续的设计周期。将四维用户反馈映射为用户场景(User stories)和优先级(priorities),Design sprint 将用户反馈直接转化为实现过程。(Design sprint 是谷歌开发的基于敏捷过程的设计思维方法)。
图 8. HILL 过程框架:将最终用户的人机回圈集成到基于机器学习的分析过程中。
对于用户测试,团队首先确定公司的最终用户池,并在设计 sprint 端邀请该用户池中的一部分用户来完成在线调查。在线调查给出了在前面的设计 sprint 中产生的新原型(参见图 9)。受邀的调查参与者评估了设计感知测量工具中关于展示的新原型的 12 个项目。此外,调查还征求了参与者的定性反馈,例如有关功能细节的问题等等。
敏捷过程的主要特征是迭代和增量的开发方法。这意味着产品开发过程不是像瀑布模型那样由一系列长的后续阶段定义的,而是一系列称为迭代的短时间周期。Scrum(一种最常见的敏捷方法)称这些迭代为 sprint。谷歌开发了基于敏捷过程的设计思维方法,并称之为 Design sprint。实施团队可以根据客户对上一次 sprint 结果的反馈来定义当前 sprint 的范围。这样,新的范围就会被充实到用户场景(User stories)中,即从用户角度制定的需求。所有用户场景都将根据客户反馈确定优先级。
图 9. 通过设计感知调查进行用户测试。
本文通过以下方式对设计感知调查的反馈进行分析。根据新颖性、能量刺激性、简单性、工具创造性四个设计维度对用户反馈进行分组。对于每个设计维度,计算其综合得分,并给出箱线图的可视化结果(图 10)。人机回圈部分是由人类质控工程师来实现的。质控工程师仔细检查所接收到的用户反馈的数据质量,丢弃掉无效数据,如异常值或包含强默认偏差的反馈。这个数据清理过程对于只保留有效的新数据并将其添加到训练机器学习模型的数据集中是至关重要的。所得到的模型可以作为快速仿真的预训练模型,以支持原型决策。
图 10. 基于设计感知分析的设计维度反馈生成与机器学习模型更新。
Design sprint 过程由四个设计维度构成,每个设计维度对应 sprint 脚本中的一个类别(参见图 11)。类别(例如简单性)对应领域或业务需求的高级抽象。团队根据设计维度的综合得分来分配每个类别的优先级 --- 最低的得分给出最高的优先级,因为它揭示了最严重的缺陷。在设计维度的优先级下降时,团队决定在即将到来的 sprint 中处理哪些设计维度。对于这个决定,团队不必考虑实施的难易程度,因为后者反映在后面的工作量估算过程中。这意味着更容易实现的用户场景将获得更少的工作量估计单位,因此更可能实现。
团队为选定的设计维度编写用户场景。例如,category simplicity 中的用户场景可以表述为「作为一个前端 web 用户,我希望以尽可能少的导航步骤导航到我的个人页面」。在编写此类用户场景时,团队将定性用户反馈整合到用户场景的接受标准中。例如,如果用户反馈暗示颜色不一致,那么用户场景在 category simplicity 中的接受标准可以表述为「检查所有 UI 元素是否来自相同的颜色方案」。
基于用户场景,团队执行敏捷工作估算过程(Agile effort estimation process),并相应地调整 sprint 范围。然后,执行任务分解(task breakdown),即团队成员将用户场景中定义的范围分解为必须执行的小任务,以实现用户场景。任务分解之后,回顾团队对当前 sprint 范围的理解,并结束 sprint 规划(sprint planning)。
图 11. 基于设计维度反馈的 Sprint Planning。
团队是一个自组织的团队,它通过正常的敏捷迭代方式来执行 Design sprint。在这个过程结束时(参见图 12),团队会在随后的调查中展示其设计结果,这是因为用户必须能够从在线的应用显示中发现并掌握应用的新功能。这种关注需要执行额外的活动,比如从不同的视角拍摄照片或制作效果图,直到用户能够在他们的在线调查显示中掌握到新原型的要点(参见图 12,图 12 中底部中间显示的原型)。
图 12. Design sprint 的新设计原型。
3、版面设计中的 AI
本文讨论的是版面设计中视觉文本版面布局(Visual-textual presentation layouts)的自动生成问题[5]。随着互联网的发展,人们对社交媒体无处不在的访问和使用,使其创建和共享的富媒体(rich-media)内容比以往任何时候都要多,无论是为了体验共享还是产品推广。发布富媒体内容的一个重要任务是设计一个由异构媒体元素(例如,图像和文本描述)组成的具有视觉吸引力的展示布局(Presentation Layout)。因此,视觉文本版面布局的设计无处不在,从现有的商业印刷出版物,到在线数字杂志,再到个人媒体帖子。
如图 13 的示例。图 13(a)给出了使用本文提出的方法自动生成的布局,它能够反映出真实杂志封面中使用的许多设计原则,如图 13(b)所示。在各种视觉文本版面布局中,杂志封面体现了最全面的设计理念。本文提出了一个结合高级美学原则(自上而下的方式)和低级视觉特征(自下而上的方式)的版面布局计算框架。为了验证本文提出的框架的有效性,作者从设计师提供的复杂杂志封面中导出了一组模板,并将模板应用到计算框架中以生成相应的视觉文本布局。在本文提出的框架中,这些模板可以很容易地修改和扩展到其他出版物中。
图 13. 视觉文本版面展示布局示例:(a)根据本文方法自动生成的布局和(b)真实杂志封面的布局。本文工作目标是从给定的图像和文本自动创建一个专业的布局。
3.1 生成模板
本文首先生成了一套主题相关的模板。这些模板能够用于在空间布局和色彩协调过程中指导设计,从而确保令人满意的布局性能。模板由两个方面定义:空间布局和主题相关风格。在空间布局中考虑了黄金分割分布的对称和不对称视觉平衡以及空间的艺术性,并将主题相关的字体情感、字体大小约束、语义色彩、色彩调和模型等融入到设计风格中。作者将版面元素定义为 「刊头」、「标题」、「封面线」和「副标题」。对于每种类型的元素,作者在图像的百分比范围内预先定义一些显示在黄色区域中的 mask 区域。在 mask 区域中考虑了空间布局的美学原则。图 14 给出了 「时尚」 和「餐饮」主题的两个版面模板。图 14(b)的设计假设当一个显著的对象位于图像的左下角时,文本应该被限制在预定义的区域内,这些区域引导文本元素按照从上到下的顺序进行展示。
图 14. (a)「时尚」和(b)「食品和饮料」模板中的示例。每个模板都包括空间布局、字体系列、高度限制和语义颜色。所定义的空间布局中的文本区域可以根据图像重要性而变化。
作者定义了 16 种常见的空间布局,涵盖了 8 个最常用的主题。对于每个主题,作者设计了 20 种语义颜色、4 种字体情感模板和一到两种颜色调和模型的主题相关样式。并遵循以下几点设计原则:
文本信息完整性:要使杂志封面视觉完整,文本元素不应超出背景图像的边界或相互重叠。
视觉信息最大化:图像应调整到目标分辨率,同时保留重要的视觉信息(即图像区域),如人脸、文本、显著对象、人类参与区域等。此外,嵌入的文本元素不应遮挡显著区域。
空间布局的合理性:要制作出自然、吸引人的杂志封面,文本元素的定位应遵循美学原则。例如,对称平衡遵循人类审美感知中的关键规则,即文本应该放置在背景图像的空白处。
感知一致性:重要的文本应该以更独特的文本大小、字体和更高的对比度颜色,在不显著的区域中更有吸引力地显示出来。
色彩协调:从视觉感知的角度来看,文本元素的色彩应该是和谐的、吸引人的。
文本信息的可读性:为了使读者一眼就能理解,需要设置适当大小的文本元素。同时,文本元素和背景图像之间的颜色对比可以提高文本信息的可理解性。
3.2 计算框架
本文设计了一个计算框架来整合版面设计的所有关键元素,包括版面模板、高级美学原则(自上而下的方式)和低级图像特征(自下而上的方式)。作者将排版问题描述为一个模板约束的能量最小化问题。
除了上一节中讨论的预定义的布局模板外,自动生成视觉文本布局的过程还应该考虑到基于内容的图像特征(如显著性图)。通过结合高级模板约束和低级图像特征,作者定义了一个计算框架,如图 15 所示。该框架包括四个主要模块:(i)素材生成器,用户可以直接上传图片和文本,也可以对网页进行分析,获得主要图片和关键句子;(ii)图像合成,自动裁剪和缩放原始图像,以匹配目标版面大小;(iii)排版优化,在选定版面模板的空间约束下,将文本覆盖在调整大小的图像上;(iv)文本颜色设计,在考虑全局颜色协调和局部可读性的情况下,以主题相关的样式重新存储文本。
图 15. 基于主题相关模板的可视化文本版面自动生成框架。
3.2.1 图像合成
该算法根据目标分辨率对原始图像进行裁剪和缩放,同时能够检测到并保存重要的区域。这些区域包含关键信息,如人脸、文本、突出物体和人类注意力。如图 16 所示,作者对输入图像应用显著性检测、OCR 和人脸检测。相应地,计算出显著性、人脸、文本和注意力图,并将视觉感知图定义为所有图中的最大操作。通过最大化与图像 I 具有相同纵横比的裁剪 mask 下重要性值实现从分辨率为 [w_o, h_o] 的图像 I_o 到分辨率为 [w, h] 的图像 I 的图像合成,然后再将裁剪后的图像缩放到分辨率 [w, h]。此外,在检测侧面轮廓时作者引入了注视注意力(Gaze attention),从而得到人眼在图像上的位置和头部的方向。然后,可以很容易地计算出注视方向,通过它我们可以估计出图 15 所示的注视注意力图。重要性图定义为对显著图、人脸图和文本图的最大操作。通过对注视 - 注意力图和重要性图进行 T 变换,得到了分辨率为[w, h] 的注视 - 注意力图 I_a 和重要性图 I_m,这对后续的排版过程是非常有用的。
3.2.2 排版
图 16. 排版过程:(a)视觉重要性图(灰色)与注视注意力(黄色);(b)从排名前 5 位的模板中选择模板;(c)输入文本;(d) 排版程序的细节,其中通过迭代控制正面高度(例如,「封面线」)在次优化解决方案中最小化定义为 E(L)的能量;(E)排版结果具有自下而上的图像特征和自上而下的空间布局约束。
图 16 给出了完整的排版过程。视觉文本布局的排版是将文本叠加到背景图像上的过程。从人类的视觉感知来看,句子在图像上的表现通常被视为一个文本块。作者将此文本块的轮廓定义为相应句子的边界框,参见图 16 中图像(e)的红色矩形。作者将排版问题描述为一个能量优化问题,在自动选择模板的约束下,最小化文本叠加的代价、多余视觉空间的浪费以及信息重要性在感知和语义上的不匹配程度。
3.2.3 和谐色彩设计
文本和图形元素的色彩设计一直是创造高质量视觉文本布局的一大挑战。由于人们对颜色非常敏感,和谐的颜色可以产生一种悦目的触感来吸引用户的注意力,并为长时间的阅读提供良好的体验。和谐色彩设计的两个要求是:1)保持文本颜色与背景图像的整体协调,2)保持文本的局部可读性。为了满足这些需求,作者利用设计师总结出的语义色彩和一些著名的色彩调和模型,在调和色彩设计中采用主题相关模板,提供了一种有效的色彩设计方法。
如图 15 所示,从调整大小的图像中提取调色板。调色板由七种颜色组成,其中前四种来自显著对象,另外三种来自非显著对象。同时通过图像主题识别出文本的语义颜色,用于监督文本颜色的生成。根据模板中主色的定义,从调色板中选择主色。在一定的色调调和模板中,对语义颜色进行迭代,计算出与主颜色的匹配分数。提取响应最大(匹配分数最高)的颜色作为文本的基色。为了满足第一个要求,作者采用「i」型色调调和模板来控制其他文本的色调。在确定每个文本的色调后,作者采用一定的色调模型来保证与背景有足够的视觉对比度。
图 17 演示了「时尚」主题中图像的色彩设计过程。在「时尚」话题中,主色调被定义为最常出现在显著区域的颜色。据此,选择调色板中的第一种颜色作为主色,主色反映视觉部分中的基色。通过在本主题中应用相似色调类型,文本元素的基色被分配给与主色具有最大匹配分数的语义颜色。然后选择调和色作为最接近主色的颜色。在杂志封面样式的版面设计中,最显著位置和最大允许字体大小的「刊头」通常用于确定文本元素的基本颜色。然后将调和语义颜色设置为「刊头」。以「刊头」颜色为基础,通过主题相关调和模型和局部图像特征对其他部分的文本进行识别。首先,在「i」类型模板中设置文本的「色调」值。为了补偿对比度与文本的本地背景,作者应用了一个扩展的色调模板(Tone template)。文本的色调设置为局部背景色调与饱和度在值坐标中最远可能的相反方向之间的黄金比例点。
图 17. 「时尚」主题中图像的色彩设计程序说明。
3.3 实验分析
作者在实验中选择了两个对比基线方法:MM12 和 IUI13。MM12 提供了一个半自动化系统,这样一旦设计师为杂志设计了一种风格,就可以基于一组内容图像特征自动生成文章版面[8]。IUI13 则是一个杂志封面自动设计推荐系统[9]。作者表示由图 18 可以看出,本文方法的效果优于 MM12 和 IUI13。这是由于对于每个主题,我们都提供了专门的空间布局模板和主题样式,这有助于生成更令人愉悦的视觉文本布局。
图 18. 与以往工作的实验对比。(a) 和(b)分别由 MM'12 和 IUI'13 部分的重新实现生成。本文方法结果如(c)所示,该结果看起来自然而专业,空间布局平衡,色彩和谐。(d) 由从未见过我们提出的视觉文本布局的招募而来的设计师手工设计。
此外,作者在论文中还给出了从测试参与者那里得到的反馈。作者表示,这些参与者在评论本文方法生成的排版结果时说:「令人惊讶的是,自动生成的版面看起来如此接近于设计师制作的杂志封面和真实的杂志封面。」「一些结果似乎就是设计师做的。」他们认为我们生成的版面中文字颜色好看,整体与图像和谐。「时尚主题的衬线字体看起来非常和谐。」这些参与者也给出了一些建议,例如应该给「刊头」更多的灵活性。此外,他们还建议,如果能够控制每个字符的字体大小,效果可能会更好。由此,作者表示在后续工作中,会考虑将本文方法扩展到其他类型的媒体中,如海报,以使文本元素在空间上更加灵活。
4、电路设计中的 AI
这篇文章关注的是电路设计中的 AI 问题[4]。混合信号集成电路无处不在。虽然目前可以用成熟的 VLSI CAD 工具来辅助数字信号的设计,但模拟信号设计还是要依靠有经验的人类专家来完成。经验丰富的专家或者设计师可以借助学习型的自动化工具来进行设计,但是,由于设计流程冗长复杂,即使对于他们来说,借助工具进行设计也不是一件容易的事情。设计人员需要首先对拓扑结构进行分析,并推导出性能指标的计算公式。由于模拟电路具有高度非线性的特性,所以在拓扑分析过程中需要进行大量的简化和近似处理。在得到全部计算公式 / 方程的基础上,计算出初始值。然后,再进行大量的仿真、参数微调,以满足性能指标的要求,最终输出设计结果。由于设计空间大、仿真工具运行速度慢、不同性能指标之间的权衡处理复杂,整个过程会非常耗费人力和时间。近年来,晶体管自动定型(Automatic transistor sizing)引起了越来越多关注。目前,主要研究内容都集中于在单个电路上确定晶体管的尺寸。关于探索将电路设计的知识或方案从一种拓扑结构转移到另一种拓扑结构,或从一种技术节点转移到另一种技术节点以减少设计开销的研究则非常有限。
受强化学习(Reinforcement Learning,RL)的迁移学习能力启发,本文提出了一种能够实现知识迁移的电路设计方法(GCN-RL Circuit Designer),如图 19 所示。首先在电路上训练一个 RL agent,然后应用相同的 agent 在新的技术节点 / 拓扑结构上对新的电路或相同的电路进行大小调整。这样一来,就可以在不从头设计的情况下降低仿真成本。
电路也可以看作是一个图,受此启发,作者在优化循环中利用拓扑图,可以使优化循环过程并不是黑盒。为了充分利用电路的拓扑图信息,作者提出给 RL agent 配备一个图卷积神经网络 (Graph Convolutional Neural Network,GCN) 来处理电路中元件之间的连接关系。作者表示,本文是第一个利用 GCN 的 RL 在不同的技术节点和不同的拓扑结构之间进行知识转移的工作。
图 19. 基于图卷积神经网络的自动晶体管尺寸强化学习。
4.1 方法分析
作者将模拟电路拓扑结构固定的晶体管尺寸问题表述为一个边界约束的优化。
其中, x 为参数向量,n 为搜索的参数数目,D^n 为设计空间,优化目标为效益图(Figure of Merits, FoM)。作者将 FoM 定义为归一化性能指标的加权总和:
其中,m_i 为测得的性能指标,(m_i)^min 和(m_i)^max 为预先定义的归一化因子,用于对性能指标进行归一化处理,以保证其满足取值范围要求。(m_i)^bound 是预先定义的性能上界。w_i 是调整第 i 个性能指标重要性的权重。对于一些电路基线,存在着必须要满足的性能规范(Performance specification,spec),如果不满足这些规范,则给 FoM 赋负值。
完整的方法框架如图 20 所示。在每一次迭代中,(1) 将电路拓扑嵌入到一个图中,图中节点是元件,边是导线;(2) 电路环境为每个晶体管生成一个状态向量,并将带有状态向量的图 (带有圆圈节点的图) 传递给 RL agent;(3) RL agent 处理图中的每个节点,并为每个节点生成一个动作向量。然后,agent 将带有节点动作向量的图 (指带有方形顶点的图) 传递给电路环境;(4) 电路环境将动作规范化为参数,并对其进行细化处理;(5)模拟电路;(6)计算 FoM 值并反馈给 RL agent 更新策略。
图 20. 方法框架图。
本文使用 actor-critic RL agent。critic 可以被认为是电路模拟器的一个可区分模型。agent 根据模型寻找性能最优的点。
状态空间(State Space)。RL agent 逐个组件处理电路图。对于拓扑图 G 中具有 n 个元件的电路,第 k 个元件的状态 s_k 定义为:s_k=(k, t, h),其中 k 是晶体管指数的 one-hot 表示,t 是元件类型的 one-hot 表示,h 是元件的选定模型特征向量,它进一步区分不同的元件类型。对于 NMOS 和 PMOS,使用的模型参数是 V_sat, V_th0, V_fb, μ_0 和 U_c。对于电容和电阻,将模型参数设置为 0。例如,对于一个有四个不同种类(NMOS、PMOS、R、C)的十个元件和一个五维模型特征向量的电路,第三个元件(一个 NMOS 晶体管)的状态向量为:
对于观测向量 s_k 中的每一个维度,我们通过不同分量的平均值和标准差对它们进行归一化处理。
动作空间(Action Space)。由于搜索所需的参数不一样,所以不同类型的组件的动作向量也不一样。对于第 k 个元件,如果是 NMOS 或 PMOS 晶体管,其动作矢量拟定为(a_k)^MOS =(W, L, M),其中 W 和 L 为晶体管栅极的宽度和长度,M 为复用器。对于电阻器,其动作矢量公式为:(a_k)^R = (r)。其中,r 为电阻值。对于电容器,其动作矢量公式为:(a_k)^C = (c)。其中,c 为电容值。作者使用一个连续的动作空间来确定晶体管的尺寸,这是由于使用离散动作空间会失去相对顺序信息同时离散空间过大。
奖励(Reward)。奖励是 FoM。它是归一化性能指标的加权和。在默认设置中,所有的指标都是同等权重的。
为了将图邻接信息嵌入到优化循环中,作者利用 GCN 来处理 RL agent 中的拓扑图。如图 21 所示,一个 GCN 层通过聚合来自其邻居节点的特征向量来计算每个晶体管的隐藏表示。如果堆叠多个 GCN 层,一个节点就可以接收到距离很远的节点的信息。在本文框架中,作者应用了 7 个 GCN 层,以确保最后一层在整个拓扑图上有一个全局接受场。
GCN 层可以表述为:
拓扑图 G 的邻接矩阵(A)加单位矩阵(I_N)
一个特定层的可训练权重矩阵,与图 21 中共享权重相呼应
图 21. 多层 GCN 的强化学习 agent。
actor 和 critic 模型的架构略有不同(图 21)。actor 的第一层是所有组件共享的 FC 层。critic 的第一层是一个共享的 FC 层,有一个特定组件的编码器来编码不同的动作。actor 的最后一层有一个组件特定的解码器来解码不同动作的隐藏激活,而 critic 有一个共享的 FC 层来计算预测的奖励值。作者设计这些特定的编码器 / 解码器层是因为不同的组件有不同类型的动作(参数)。actor 最后一层的输出是每个组件的预设参数向量,范围为[-1, 1]。作者对它们进行去归一化和细化处理,以得到最终的参数。
关于技术节点间的迁移问题,如图 22 所示,专家或设计工程师首先从一个节点中继承拓扑结构并计算初始参数,然后反复调整参数、仿真并分析性能。本文方法可以将这一过程自动化,在一个技术节点上训练一个 RL agent,然后凭借不同技术节点之间相似的设计原理,直接应用训练好的 agent 去搜索不同技术节点下的同一电路。
关于拓扑间的迁移问题。如果不同的拓扑结构具有相似的设计原理,也可以在不同的拓扑结构之间进行知识转移,比如两级跨阻放大器和三级跨阻放大器之间。修改 GCN 中的状态向量,将 k 修改为一维索引值(one-dimension index value),而不是 one-hot 索引向量(one-hot index vector)。这样一来,在不同的拓扑结构中,每个分量的状态向量的维度保持不变。
图 22. 知识迁移。
4.2 实验分析
作者通过实验证明了本文方法实现 Three-TIA 上技术节点之间的知识迁移。作者将在 180nm 上学到的设计迁移到 45nm、65nm、130nm 和 250nm 上,学习曲线见图 23。agent 在 180nm 上进行训练,并迁移到较大的节点 250nm 和较小的节点 130nm、65nm 和 45nm 中,以验证其广泛的有效性。经过 100 个热身步骤后,有知识迁移的 FoM 迅速增加,最后收敛在比没有知识迁移更高的水平。
为了验证将所学的知识从一种拓扑结构迁移到另一种拓扑结构的能力,作者选择了 Two-TIA 和 Three-TIA,因为它们都是跨阻抗放大器,因此有一些共同的知识,学习曲线见图 24。GCN-RL 一直比 NG-RL(即 non-GCN RL,未使用 GCN 的 RL)得到了更高的 FoM。在没有 GCN 的情况下,NG-RL 的 FoM 与没有迁移的方法勉强处于同一水平,这说明使用 GCN 从图中提取知识是至关重要的,GCN 提取的图信息有助于提高知识迁移性能。
图 23. Three-TIA 上技术节点之间的知识迁移。将在 180nm 上学到的设计转移到 45nm、65nm、130nm 和 250nm 上。
图 24. Two-TIA 和 Three-TIA 之间的知识迁移。
5、文章小结
设计是一种有目标有计划的进行技术性的创作与创意活动,所以设计是一种与人类抽象思维能力高度相关的任务,在设计中引入人工智能就更具挑战。
我们在这篇文章中具体探讨了人工智能在结构设计、产品设计、电路设计、排版版面设计中的应用。其中,结构设计和电路设计中的应用方法较为相似,都是将设计问题转化为数学问题,然后对数学中的离散或连续变量进行建模并分析。排版版面设计任务与文本识别、图像合成高度相关,主要是通过套用模板、设计色彩实现排版。产品设计则是指应用心理测量学来理解用户的设计感知,为后续的设计周期生成反馈,并逐步更新机器学习模型以适应在线应用中用户偏好的快速变化的设计过程。
在设计中引入人工智能,能够利用人工智能的记忆能力、学习能力、计算能力不断地探索并找到最佳的设计方案。如何更合理地对设计问题进行建模和分析,如何根据不同设计问题的特点找到最适合的 AI 方法,还有待更深入的研究和探讨。
【本文参考引用的文献】
[1] Chaeibakhsh S , Novin R S , Hermans T , et al. Optimizing Hospital Room Layout to Reduce the Risk of Patient Falls, 2021. https://arxiv.org/pdf/2101.03210.pdf.
[2] Chaehan So. Human-in-the-Loop Design Cycles – A Process Framework that Integrates Design Sprints, Agile Processes, and Machine Learning with Humans. The first International Conference on Artificial Intelligence in HCI 2020. https://arxiv.org/ftp/arxiv/papers/2003/2003.05268.pdf.
[3] Wang Hanrui, Yang Jiacheng, et al. Learning to Design Circuits NIPS‘18 .https://arxiv.org/pdf/1812.02734.pdf.
[4] Wang, Hanrui, Wang, Kuan, et al. GCN-RL Circuit Designer: Transferable Transistor Sizing with Graph Neural Networks and Reinforcement Learning. The 57th Design Automation Conference (DAC) 2020. https://hanlab.mit.edu/projects/gcnrl/
[5] Yang Xuyong, Mei Tao. Automatic Generation of Visual-Textual Presentation Layout. ACM Transactions on Multimedia Computing, Communications, and Applications, Volume 12, Issue 2. https://dl.acm.org/doi/10.1145/2818709.
[6] Novin, R. S., Taylor, E., Hermans, T., and Merryweather, A. (2020). Development of a novel computational model
for evaluating fall risk in patient room design. HERD: Health Environments Research & Design Journal.
[7] EO: IDEO Human-Centered Design Toolkit. 2nd Edition, (2008). https://doi.org/10.1002/ejoc.201200111.
[8] Mikko Kuhna, Ida-Maria Kivel¨ a, and Pirkko Oittinen. 2012. Semi-automated Magazine Layout Using Content-based Image Features. In Proceedings of the 20th ACM international conference on Multimedia (MM’12). ACM, ACM, New York, NY, USA, 379–388.
[9] Ali Jahanian, Jerry Liu, Qian Lin, Daniel Tretter, Eamonn O’Brien-Strain, Seungyon Claire Lee, Nic Lyons, and Jan Allebach. 2013. Recommendation System for Automatic Design of Magazine Covers. In Proceedings of International Conference on Intelligent User Interfaces. ACM, 95–106.
分析师介绍:
本文作者为仵冀颖,工学博士,毕业于北京交通大学,曾分别于香港中文大学和香港科技大学担任助理研究员和研究助理,现从事电子政务领域信息化新技术研究工作。主要研究方向为模式识别、计算机视觉,爱好科研,希望能保持学习、不断进步。
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com