蘇兆婧,余隋懷,初建杰,段曉賽,宮 靜
(西北工業(yè)大學工業(yè)設計與人機工效工信部重點實驗室,陜西 西安 710072)
產(chǎn)品設計活動始于收集并分析消費者需求[1]。隨著產(chǎn)品技術性能的同質(zhì)化,設計出滿足消費者感性需求的產(chǎn)品尤為重要[2]。一個成熟的產(chǎn)品設計方案的誕生是一個復雜、反復迭代的過程,其間需要不斷對設計方案進行評價及修改。面對新的機遇與挑戰(zhàn),大數(shù)據(jù)、云制造、云計算和物聯(lián)網(wǎng)等新興技術呈現(xiàn)出與設計服務產(chǎn)業(yè)相融合的趨勢[3]。因此,如何對設計云服務平臺下的大量方案及其感性語義進行快速、有效、準確的評價及標注,已成為設計決策研究領域的核心問題之一。
目前,國內(nèi)外學者對于感性評價方法的研究主要集中在以下3個方面:
(1)基于主觀評價的方法
傅業(yè)燾等[4]采用語義差分(Semantic Differential,SD)調(diào)查問卷的方式邀請20名被試者對16個電話機樣本進行感性風格評價,構建了面向風格意象的產(chǎn)品族外形基因建模與設計系統(tǒng)。蘇建寧等[5]將6名工業(yè)設計教師以45個汽車產(chǎn)品樣本的語義差分評價結果作為先驗知識,并構建其多目標進化系統(tǒng)。Kwong等[6]搜集了84名受訪者對于8個電熨斗樣本的感性評價,進而制定多目標優(yōu)化模型并使用非支配排序遺傳算法-II進行求解(Non-dominated Sorting Genetic Algorithms,NSGA-II)。Guo[7]等搜集了36名受試者對16個樣本的評價數(shù)據(jù),利用BP 神經(jīng)網(wǎng)絡(Back Propagation Neural Network,BPNN)識別關鍵設計因素與情感維度之間的定量關系,同時基于遺傳算法進行近似優(yōu)化設計。
(2)通過測量生理信號的方式進行感性評價
Guo等[8]基于腦電數(shù)據(jù)和事件相關電位(Event Related Potentials,ERPs)理論,衡量消費者對產(chǎn)品外觀的情感偏好。Hsu等[9]通過分析眼動數(shù)據(jù)預測人們對產(chǎn)品方案的感性評價。Shi等[10]將感性評價和功能性磁共振成像(functional Magnetic Resonance Imaging,f MRI)相結合,探索感性工學與腦認知科學交叉融合的前景。
(3)利用計算機技術實現(xiàn)感性評價
王亞輝等[11]提出了基于ResNet的人工智能設計決策模型,以最大限度消除決策者決策偏好的影響。朱斌等[12]提出一種基于卷積神經(jīng)網(wǎng)絡VGG-16的產(chǎn)品意象識別方法。Chanyachatchawan[13]提出一種基于語言表示的感性工學數(shù)據(jù)建模方法。Chou等[14]利用單詞計算技術(Computing With Words,CWW)進行感性評估。Jiao等[15]通過將在線產(chǎn)品信息與用戶評論相結合,提出一種基于自然語言處理(Natural Language Processing,NLP)技術的感性評價方法。在計算機技術的支撐下,利用文本挖掘技術[2,16]、BP神經(jīng)網(wǎng)絡[17]等進行感性評價的方法也成為近幾年研究的熱點之一。
基于主觀評價的方法獲得的結果質(zhì)量較高,但需要依靠用戶積極參與研究。因此,大多數(shù)現(xiàn)有研究都是在相對較小的操作規(guī)模下進行的,無法消除評價過程中個體評價標準的差異。通過測量生理信號的方式進行感性評價的方法在一定程度上受到實驗場地和實驗設備的限制。隨著計算機技術的發(fā)展,利用NLP技術從互聯(lián)網(wǎng)產(chǎn)品評論中挖掘信息引起了人們的廣泛關注。這些模型不受實驗設備和受訪者人數(shù)的限制,同時還具有自動化和系統(tǒng)化的優(yōu)點。然而,這些方法不能提取一些特殊字符(如表情符號)所表達的情感,也無法兼容多國語言。
因此,本研究聚焦產(chǎn)品圖像本身,利用深度學習技術消除評價過程中的個體差異,同時最大限度地節(jié)約人力、設備及時間成本,并實現(xiàn)快速、有效及準確的感性評價,是本文研究的主要目的。隨著近年來深度學習技術的飛速發(fā)展,相繼提出各種目標檢測算法[18],其中以YOLO(you only look once)[19]和SSD(single shot multi box detector)[20]為代表的基于回歸的檢測方法能較好地平衡檢測速度與精度問題。同時,DFL-CNN(learning a discriminative filter bank within a convolutional neural network)[21]算法專注于細粒度分類領域,因此,相較于普通深度卷積神經(jīng)網(wǎng)絡,DFL-CNN 能夠在弱監(jiān)督的條件下更為精準地實現(xiàn)對產(chǎn)品感性語義的自動評價。
目前,對設計方案的感性意象評價絕大多數(shù)采用語義差分法[4]和李克特量表法[22]設計問卷,然后根據(jù)問卷調(diào)查的結果進行數(shù)據(jù)分析,繼而獲取對該產(chǎn)品的感性意向評價得分。問卷調(diào)查易受到評價者評價標準的不同、調(diào)查者干擾以及評價環(huán)境的影響,因此降低了評價結果的可靠性。
YOLOv3[23]網(wǎng)絡由YOLO[19]和YOLOv2[24]發(fā)展而來,與Faster R-CNN[25]相比,YOLO網(wǎng)絡無需候選區(qū)域,然后再在其上做分類回歸,YOLO 僅使用一個卷積神經(jīng)網(wǎng)絡直接預測不同目標的類別與位置,大大提高了檢測速度。
YOLO的檢測模型如圖1所示,網(wǎng)絡將訓練集中每個圖像劃分成S×S個網(wǎng)格,若目標物體的中心落在這個網(wǎng)格中,則該網(wǎng)格就負責預測這一目標。每個網(wǎng)格負責預測B個邊界框及其置信度(confidence),以及C個類別的條件概率。置信度反映了該網(wǎng)格內(nèi)是否包含目標物體,以及包含目標物體的情況下其位置的準確性,其計算公式如式(1)所示:
當目標位于網(wǎng)格中時,Pr(object)=1,否則Pr(object)=0。用于表示預測邊界框與真實邊界框之間的交并比。當多個邊界框檢測到同一目標時,YOLO使用非極大值抑制(Non-Maximum Suppression,NMS)的方法來選擇最佳邊界框。
雖然與Faster R-CNN 相比,YOLO 擁有更快的檢測速度,但它具有較大的檢測誤差,為解決該問題,YOLOv2借鑒Faster R-CNN,引入了“錨框”的思想,使用k-means聚類生成合適的先驗邊界框。YOLOv2改進了網(wǎng)絡結構,使用卷積層替換YOLO中的全連接層作為輸出層,同時引入了批歸一化、高分辨率分類器、維度聚類、直接位置預測、細粒度特征以及多尺度訓練,其相較于YOLO大大提高了檢測精度。YOLOv3是YOLOv2的改進版,它使用更好的基礎分類網(wǎng)絡(Darknet-53)以及多尺度預測來檢測最終目標,其網(wǎng)絡結構比YOLOv2 更復雜。YOLOv3能夠預測不同尺度的邊界框,多尺度預測使得YOLOv3比YOLOv2更為有效地檢測小目標。其網(wǎng)絡結構如圖2所示。
YOLO卷積層負責輸出檢測結果,包括目標的中心位置坐標(x,y),以及目標的寬w和高h,分別記為tx,ty,tw,th,以及置信度和類別,這種檢測分別在3個尺度上進行,分別為13×13,26×26和52×52,通道數(shù)為3。若目標中心在網(wǎng)格中相對于圖像左上角有偏移(cx,cy),并且錨點框具有高度pw和寬度ph,則修正后的邊界框如式(2)~式(5)所示:
如圖3所示,通過對置信度設置閾值,過濾掉低分的預測框,然后對剩余預測框進行非極大值抑制處理,得到網(wǎng)絡最終的預測結果。
YOLOv3訓練時僅對一個物體分配一個錨點框,如果錨點框中被認為沒有包含目標物體,則使其在損失函數(shù)中不起作用,YOLOv3在訓練過程中使用二元交叉熵作為損失函數(shù),為所有單元格預測值和真實值的均方差,損失函數(shù)共由邊界框損失、置信度損失和分類損失3部分組成,可以表示為式(6):
式中邊界框損失由中心坐標的誤差和邊界框?qū)捙c高的誤差構成,可以描述為式(7):
細粒度圖像分類(fine-grained categorization),又被稱作子類別圖像分類(sub-category recognition),是近年來計算機視覺、模式識別等領域一個非常熱門的研究課題[26]。其目的是對粗粒度的大類別進行更細致的子類劃分。細粒度圖像的類別精度更加細致,類間差異更加細微,往往只能借助于微小的局部差異才能區(qū)分出不同的類別。而設計方案的感性意象評價同樣是針對同類產(chǎn)品進行更加細致的子類劃分,因此專注于細粒度圖像分類的算法相較于普通卷積神經(jīng)網(wǎng)絡能更好的實現(xiàn)這一過程,但目前未見有研究將二者結合。
當前的細粒度方法可大致分為定位分類子網(wǎng)絡[27](localization-calssification subnetworks)和端到端特征編碼[28](end-to-end feature encoding)兩類。第一類方法由定位網(wǎng)絡輔助的分類網(wǎng)絡組成,這些方法背后的共同動機是首先找到相應的部分,然后比較其外觀;第二類方法通過對卷積特征映射的高階統(tǒng)計量進行編碼,增強CNN 的中層學習能力。DFL-CNN[21]的主要貢獻在于設計了在CNN框架中以端到端的方式,不需要額外的部分或邊框注釋,即可捕獲特定種類辨別性塊,是一種專注于分類的網(wǎng)絡。
如圖4所示,一張圖片在經(jīng)過卷積神經(jīng)網(wǎng)絡提取特征后可以看作W×H×C大小的特征圖,將1×1×C的卷積核當作判別性區(qū)域檢測器,其輸出的每個通道是一張熱力圖,響應強度最大的區(qū)域即顯著性區(qū)域,如圖5 所示為網(wǎng)絡的整體結構。
如圖5所示,左路是一個正常完成的VGG-16。中路在VGG的卷積層4-x之后接入1×1的濾波器組。如果有M個類,每個類規(guī)定有K個特征庫,則濾波器組的輸出即為W×H×KM。經(jīng)過全局最大池化(Global Max Pooling,GMP)之后,變?yōu)?×1×KM,后接全連接層得到未歸一化的概率值。右路中的跨通道池化操作(如圖6)能夠使得中路中的KM維的庫按順序?qū)狹個類別和每個類別的K個庫,最后將三路的概率值按權重相加,經(jīng)過交叉熵損失函數(shù)進行訓練。
YOLOv3將目標檢測問題轉(zhuǎn)換為回歸問題,能夠端到端地實現(xiàn)目標定位,其檢測速度能夠達到實時分析的要求。DFL-CNN 實現(xiàn)了在弱監(jiān)督的條件下較為精準的目標細粒度分類。本文通過基于Darknet-53的YOLOv3算法實現(xiàn)對產(chǎn)品類別的定位和自動標注,隨后將標注后的產(chǎn)品圖片送入DFLCNN網(wǎng)絡,以最大限度地消除產(chǎn)品渲染背景或周圍環(huán)境的影響,并根據(jù)分類任務性質(zhì)的不同,改進其損失函數(shù)賦權,從而實現(xiàn)更為精準的產(chǎn)品造型語義評價。本文的主要技術路線如圖7所示。
本文基于Python編程語言實現(xiàn),運用Pytorch作為深度學習編程框架,訓練分兩個模塊進行。首先以部分COCO2017數(shù)據(jù)集作為產(chǎn)品種類識別及標注部分的基礎數(shù)據(jù)集,待模型訓練完成后將其參數(shù)(權重和偏置)應用至產(chǎn)品感性語義自動標注過程中來驗證基于DFL-CNN的產(chǎn)品感性語義自動標注模型性能。
對深度學習任務而言,實驗數(shù)據(jù)集是其基礎條件。本文利用腳本從Microsoft COCO2017數(shù)據(jù)集的80個分類中提取出了有關工業(yè)設計家電產(chǎn)品的5個分類,并利用麻省理工學院計算機科學和人工智能實驗室(Computer Science and Artificial Intelligence Laboratory,CSAIL)研發(fā)的開源圖像標注工具Labelme對吹風機類別進行數(shù)據(jù)集擴充,擴充后的類別名稱、訓練集和驗證集分別對應的正樣本圖像個數(shù)以及目標個數(shù)如表1所示。提取后的數(shù)據(jù)集能夠滿足產(chǎn)品種類識別及標注的要求。
本次提取共獲得10 485例訓練集樣本圖像和459例驗證集樣本圖像,其中包括部分單張圖像包含多個以及多種目標的樣本圖像。
表1 數(shù)據(jù)集類別統(tǒng)計
工業(yè)設計產(chǎn)品效果圖或?qū)嵨镎掌话爿^為清晰、無遮擋或少遮擋,因此,為更好地實現(xiàn)以吹風機為例的工業(yè)設計產(chǎn)品感性語義的自動標注,本實驗采用網(wǎng)絡爬蟲的方式完成吹風機產(chǎn)品感性語義標注數(shù)據(jù)集的初步構建,以清晰且無遮擋的吹風機設計案例為主。為進一步排除產(chǎn)品朝向及擺放角度對其感性語義造成的影響,本實驗采用水平翻轉(zhuǎn)、旋轉(zhuǎn)進行數(shù)據(jù)增強,增強后的數(shù)據(jù)集圖片共1 472張,并將其中的258張劃分為測試集,其余為訓練集。
為增強評價模型的權威性,產(chǎn)品感性語義標簽均來自于具有8年以上工業(yè)設計經(jīng)驗的設計師親自標注。各分類下的樣本數(shù)量如表2所示。
表2 各分類下的樣本數(shù)量
2.2.1 基于Yolov3的產(chǎn)品類別自動標注模型
梯度下降是應用最廣泛,也是效果最好的優(yōu)化算法之一,并且也是目前為止優(yōu)化神經(jīng)網(wǎng)絡最常用的方法。按照能否自動調(diào)節(jié)學習率,梯度下降法可分為自適應方法和非自適應方法,其中:應用較為廣泛的自適應方法有RMSProp和Adam 等;非自適應方法有隨機梯度下降法(Stochastic Gradient Descent,SGD)和動量法(SGD with Momentum)等。在基于YOLOv3的產(chǎn)品種類識別及檢測模塊中,通過比較訓練時間、訓練穩(wěn)定性及收斂速度,最終選用動量法為YOLOv3網(wǎng)絡的優(yōu)化算法。
進行模型訓練時,需根據(jù)實際要求制作指引文件,將訓練集和驗證集圖片分別放在兩個文件夾,并將文件名分別存入訓練和驗證文本中,同時保證標記圖和原圖一一對應且文件名相同;將數(shù)據(jù)集標注格式由json轉(zhuǎn)換為txt格式并修改訓練腳本,在數(shù)據(jù)集配置文件中加入個人數(shù)據(jù)集描述配置;綜合考慮樣本特征和硬件情況,合理設置訓練參數(shù),主要修改訓練步數(shù)、學習率、批處理參數(shù)、預訓練模型和文件路徑等,具體的參數(shù)設置如表3所示。
表3 基于YOLOv3的產(chǎn)品類別自動標注模型訓練參數(shù)設置
網(wǎng)絡加載在ImageNet上預訓練好的模型參數(shù)(darknet53.conv.74)的基礎上繼續(xù)訓練。修改訓練腳本,可視化在訓練集和驗證集的batch0上的輸出如圖8所示。
訓練完成后,利用第三方庫matplotlib對訓練模型進行可視化和評估,其各項指標的可視化如圖9所示,其中,橫坐標為整個訓練集被訓練算法遍歷的次數(shù)(epoch)。達到預期要求后,將訓練后的模型導出,應用至產(chǎn)品感性語義的自動標注的數(shù)據(jù)預處理階段。
為進一步測試該模型的性能,隨機下載100張包含汽車、飛機、沙發(fā)、座椅和自行車的網(wǎng)絡圖片進行測試,部分檢測結果如圖10所示。因此,該模型能夠很好地完成針對工業(yè)設計產(chǎn)品的目標定位及檢測工作,能夠滿足下一步網(wǎng)絡的訓練需求。
2.2.2 基于DFL-CNN 的產(chǎn)品感性語義自動標注模型
早期基于卷積神經(jīng)網(wǎng)絡的細粒度分類模型通常需要額外的邊界框注釋,而過多的邊界框限制了卷積神經(jīng)網(wǎng)絡中層的學習潛力,端到端的特征編碼在細粒度分類問題上具有良好的性能,并且具有相對緊湊的網(wǎng)格架構。因此,基于DFL-CNN 的產(chǎn)品感性語義自動標注模型僅需將分屬不同類別的圖片置于不同文件夾內(nèi)即可進行訓練,在進行模型訓練時,綜合考慮樣本數(shù)量和硬件情況,進行多次參數(shù)調(diào)整后,最終的網(wǎng)絡參數(shù)設置如表4所示。
訓練過程選用交叉熵作為損失函數(shù),其權重設置如表5所示,在“輕便-穩(wěn)重”分類下,其感性意象受產(chǎn)品整體影響較大,但在“圓潤-硬朗”分類下,其感性意象大多受產(chǎn)品局部拐角處造型的影響,因此,根據(jù)分類任務性質(zhì)的不同,對DFLCNN 模型的損失函數(shù)賦權改進如下:
訓練過程中每迭代5次可視化輸出10個最佳判別性區(qū)域,圖11即為在圓潤-硬朗分類下隨機兩個樣本在不同迭代次數(shù)(epoch)下所輸出的最佳判別性區(qū)域響應圖(方框部分)。如圖11所示,最佳判別性區(qū)域由分散逐漸向吹風機尾部拐角處集中。因此,該模型能夠較好地模擬人眼視覺,從整幅圖像中提取影響分類效果的最佳判別性區(qū)域。
表4 基于DFL-CNN的產(chǎn)品感性語義自動標注模型訓練參數(shù)設置
表5 損失函數(shù)權重設置
訓練過程中每遍歷兩次,輸出在測試集上的準確率并將其可視化,在兩個分類下準確率的可視化結果如圖12所示。
將YOLOv3及DFL-CNN 網(wǎng)絡的訓練結果進行封裝,使得模型能夠一次性端到端地實現(xiàn)設計方案評價及標注過程,網(wǎng)絡輸入和輸出如表6所示。
表6 網(wǎng)絡輸入和輸出
為進一步驗證基于YOLOv3和DFL-CNN 的產(chǎn)品感性語義自動標注及人工智能設計評價模型的有效性,在原數(shù)據(jù)集的基礎上,分別采用不經(jīng)過YOLOv3的DFL-CNN以及DFL-CNN的基礎網(wǎng)絡VGG-16進行對比實驗,實驗參數(shù)設置保持與2.2節(jié)中一致,訓練過程如圖13所示,訓練完成后在兩個分類上的準確率如表7所示。
表7 對比實驗數(shù)據(jù)結果 %
通過對比實驗,本研究提出的基于YOLOv3和DFL-CNN的網(wǎng)絡結構的優(yōu)勢主要體現(xiàn)在以下幾個方面:
(1)訓練過程 在訓練過程中引入個性化權重賦值。設計人員了解分類任務的基本屬性后,能夠根據(jù)分類任務性質(zhì)的不同設置訓練過程中的權重賦值。
(2)收斂速度 訓練過程中的收斂速度優(yōu)于其他兩種算法結構。由圖13可知,本文所提模型在輕便-穩(wěn)重分類下經(jīng)過20次迭代之后曲線變化趨于穩(wěn)定,在圓潤-硬朗分類下經(jīng)過25次迭代后曲線趨于穩(wěn)定狀態(tài)。沒有經(jīng)過YOLOv3的DFL-CNN 算法經(jīng)過40次迭代后逐漸趨于穩(wěn)定。而普通卷積神經(jīng)網(wǎng)絡VGG-16在訓練時直至最后曲線仍有一定波動,收斂速度較慢。
(3)訓練結果 由表7可知,基于YOLOv3和DFL-CNN的網(wǎng)絡結構在兩個分類上的準確率分別達到了95.349%和97.287%,均高于其他兩種算法結構。本研究所提模型能夠在完成產(chǎn)品感性語義標注的同時對其所屬類別進行標注,適用于工業(yè)設計云服務平臺中大規(guī)模、多種類產(chǎn)品的自動評價及標注任務。
模型訓練完成后,在單個GTX 1070 GPU 上單次運行該模型所需時間約為0.31 s,實現(xiàn)了毫秒級的設計方案評價效率及95%以上的評價精度。
本文提出一種基于YOLOv3和DFL-CNN 的產(chǎn)品感性語義自動標注及人工智能設計評價模型,實現(xiàn)了毫秒級的設計方案評價效率以及95%以上的評價精度。將設計評價問題轉(zhuǎn)換為計算機視覺的識別及分類任務,消除了設計評價過程中因評價者標準、調(diào)查者干擾及評價環(huán)境對其結果產(chǎn)生的影響,將網(wǎng)絡封裝后內(nèi)嵌入工業(yè)設計云服務平臺,其輸出結果可以作為設計方案評價的一種參考。后續(xù)研究主要集中在以下方面:構建專屬于工業(yè)設計產(chǎn)品的識別及檢測數(shù)據(jù)集;嘗試基于候選區(qū)域的目標檢測模型Faster R-CNN、基于強監(jiān)督的細粒度分類識別網(wǎng)絡Part-based R-CNN、Pose Normalized CNN 等以及基于注意力機制的細粒度分類網(wǎng)絡RA-CNN等;對提出的模型作進一步優(yōu)化和改進,使其逐漸成為通用和完善的設計產(chǎn)品方案評價模型。