唐 銳,李智杰,李昌華,張 頡,2,介 軍
(1. 西安建筑科技大學 信息與控制工程學院,西安 710055;2. 西安建筑科技大學 建筑學院,西安 710055)
近年來,我國建筑行業逐漸向數字化轉型技術演變,各產業以人工智能為起點、技術革新為引領,不斷夯實建筑業智能化信息化的數據基礎。建筑行業的快速發展使得大型建筑,特別是規模龐大、功能類型復雜的建筑噴涌而出,造成領域知識的蓬勃增長,累積了形式多樣、數量繁多的數據。實現針對建筑的智能審圖是提高建筑設計水平的重要途經,從源頭消除建筑項目可能存在的設計安全隱患,具有廣泛的行業應用前景。
智能審圖相較人工審圖優點突出[1],主要表現在大幅縮短建筑審圖時間,有效提高審圖工作效率;同時一定程度上保障了審圖工作的高準確性,減少人為因素帶來的誤差影響;此外人工審圖對相關審查人員的資歷經驗據要求較高,對審圖內容的結論總結與后期報告撰寫標準不一,相較于智能審圖的一鍵導出結論報告或審查文件形式,人工審圖方式較為落后,難適用當前數字化建筑審圖領域。因此,研究出一款實現智能化建筑審圖的產品具有極重要的實際意義。
近年來,國內外學者或相關機構針對建筑審圖實現智能化方向演進取得豐富研究成果。文獻[2]結合AI技術,實現針對建筑消防的自動審查核驗系統的設計與開發工作,進一步健全完善建筑消防信息化、透明化的審圖驗收標準;文獻[3]在實際的醫院建筑施工過程中,利用頭戴式移動設備掃描現場并與完整建筑模型進行比對,清晰直觀地查看項目施工完成度;文獻[4]針對建筑施工場所可能存在的安全隱患,提出基于知識圖譜技術與機器視覺的危險源識別方法,排除不同環境下建筑工地的安全隱憂;在建筑審圖實際應用領域,眾多科技公司開發了面向CAD繪圖與BIM技術繪圖的審圖軟件,如“小智審圖”、“SmartMark軟件”[5]等。上述研究內容研究方向單一,審查范圍小,多為針對建筑類的消防專業審查,且僅從建筑規范文本中挑選部分條文細則作為審圖數據基礎,導致審查內容覆蓋范圍的完整性較低;此外,市面上普遍采用的審圖軟件多以CAD二維繪圖為基礎進行開發,缺乏建筑模型及審圖內容三維可視化能力,且基于BIM繪圖技術的審圖工具較少,難以支撐日益增長的現代化建筑智能審圖需求。
針對上述問題,本文以多部建筑設計規范和行業建設標準為數據源,構建面向建筑設計規范的知識圖譜,保障審圖系統的數據完整性;同時結合建筑信息模型BIM(Building Information Modeling)技術[6]的強大數據協作能力,實現全方位、可視化的建筑智能審圖工作。最后,通過實例測試,進一步驗證了建筑審圖智能化系統的準確性與有效性,對保障建筑施工資料審查質量,推進我國建筑行業實現數字化信息化轉變具有積極意義。
該系統的總體架構設計分為4層,具體如圖1所示。1)基礎層:基礎層作為系統的數據信息處理層,其主要功能為儲存建筑BIM模型數據、所構建的建筑規范知識圖譜數據信息;2)功能層:功能層是該系統的最關鍵環節,起到承接基礎層與應用層的作用,其主要任務是解析建筑BIM模型并轉化為IFC格式、審圖所需模型構件的提取、規則與數據的匹配以及審圖報告生成等功能;3)應用層:應用層基于JavaScript程序語言,為使用者搭建網頁端操作界面,用戶可由此進行模型交互操作及查看具體構件信息、審圖內容等;4)終端層:終端層各類設備上的Web瀏覽器。

圖1 建筑智能審圖系統結構圖
該系統原理主要分為建筑規范文本數據采集、建筑模型的識別與提取、文本數據與模型數據匹配及審圖結果網頁端展示等部分。首先構建面向建筑規范文本的知識圖譜,自動提取并存儲審圖所需的文本數據信息;接著解析提取BIM建筑模型,并轉化為IFC格式數據,實現智能化審圖所需的建筑模型數據完整性,主要包括建筑的模型構件及功能房間特征提取;之后將建筑規范數據信息與被審模型數據信息進行向量匹配,為后續智能審圖工作開展奠定基礎;最后結合HTML5框架與WebGL技術實現建筑模型交互操作、審圖成果的網頁端可視化展示等功能,完成智能審圖系統的全部開發工作。
為完成智能化審圖系統的設計開發工作,需采用針對性的軟件工具和環境參數等實現開發任務實施,具體選型結果如表1所示。

表1 軟件選型及環境參數表
該系統的開發工作涉及到相關設計規范與行業標準的數據信息完整度,智能化審圖所需建筑模型數據的提取與整合,文本數據信息與被審模型數據結合匹配等工作,同時如何利用AI技術實現被審模型的三維展示、自動生成審圖報告等亦為系統開發的重要研究內容。后續通過構建建筑規范知識圖譜、BIM模型數據提取整合、規則條文與模型數據匹配以及系統的網頁端開發等工作實現系統的設計開發過程。
知識圖譜技術擁有從建筑規范數據中提取可利用信息,并有效發掘、整合數據間隱含關系的能力,對建筑規范領域知識的高效融合利用提供巨大助力。傳統的知識圖譜構建方式多為自頂向下、自底向上的方式[7],兩者的差異在于是否先從文本中抽取數據模式。本文結合建筑規范數據特點,將兩種方式相結合,提出一種面向建筑規范的知識圖譜構建方法。
文中所述的構建方法流程如圖2所示,包含知識建模、數據源獲取、知識獲取和知識存儲等步驟。首先基于概念、屬性及關系的設計完成知識建模;接著依據數據源結構化的差異性,采用不同技術針對性地進行知識獲取,為后續步驟奠定數據基礎;然后經過知識融合、知識存儲環節形成建筑規范知識圖譜。

圖2 建筑規范知識圖譜構建流程
2.1.1 基于本體的知識建模
知識建模確定知識的描述及表達方式,是知識圖譜構建的先前工作,能最大程度描述事物間的的基本關系、內在特點與發展規律。通過本體可定義領域內各類概念、屬性及概念間的關系,起到支撐整個知識圖譜的概念架構和主體框架的作用,進而實現規范數據信息的有機統一,提升資源的高效利用,因此保證其搭建的高準確率十分必要。
本文通過基于傳統的人工構建方式與基于機器的方法完成本體抽取工作,之后利用protégé本體[8]編輯工具進行人工修正,保證頂層整體架構低偏差率,使之后知識圖譜在數據層的構建更加客觀有效。文章將建筑規范領域相關概念總結為6大類:建筑空間類、建筑場地類、建筑構件類、建筑物類、建筑項目類和建筑樓層類[9]。再將每類概念逐級細分,直至不可再細分子概念,概念與逐漸細分的子概念形成層級關系體系。構建的建筑規范領域部分概念本體如圖3所示。

圖3 建筑規范領域部分概念本體
2.1.2 建筑規范領域數據源和知識獲取
知識建模完成后可得到整個建筑規范領域知識圖譜的數據模式,接下來需要從數據源中獲取具體的實體、屬性和關系。本文以建筑規范專業性文本為數據基礎,包含各類結構化數據、半/非結構化數據,且主要以非結構化數據為主[10]。
1) 數據源獲取與處理。
針對結構類型差異的數據需采用不同的技術方式獲取知識。(1)結構化數據多存儲于關系數據庫或行業領域數據庫中,開源工具多為D2R Graph和D2RT,針對此類數據,采用D2R(Data to RDF)技術進行數據知識的提取、整合;(2)半結構化數據中既含有結構信息,又存在數據資源,典型的半數據類型有HTML、IFC和JSON文件等;(3)非結構化數據結構形態存在不確定性,因其結構的特殊性使得不同結構類型的文本不受約束限制,可容納最大數量的數據信息。如建筑規范中的純文本數據是典型的非結構化信息。考慮到半結構化和非結構化數據的特殊性,文章采用知識抽取技術獲取其核心信息內容,具體分為命名實體識別[11](NER,named entity recognition)和關系抽取[12](RE,relation extraction)兩部分。
2) 命名實體識別。
實體是建筑規范領域知識圖譜中的最基本數據,命名實體識別將無序的知識進行結構化和數字化,并定義全新的概念模式,且由此為基礎對已識別的實體進行歸類分析,從而為實體的語義表示提供基礎。傳統的命名實體識別方法只注重于‘詞-字符’之間的特征提取,忽略了規范中詞的上下文的語義信息,無法表征一詞多義[13];同時目前沒有一個完整的建筑規范字典囊括所有類型的實體,無法使用文本匹配的方法對實體進行識別,實體識別效果欠佳,難以應用于實施過程中。
綜合以上考慮,本文通過分析建筑設計規范文本的特性,并結合擁有多重語義信息表達的BERT模型,提出一種基于BERT-BiLSTM-CRF的命名實體識別模型[14],該模型整體結構如圖4所示。

圖4 BERT-BiLSTM-CRF模型整體框架
該模型主要分為3個模塊。首先將分詞標注完成的語料輸入至BERT模塊,經過模型處理后得到語義豐富的動態詞向量;然后再由BiLSTM模塊處理得到的詞向量,輸出相應的標注序列;最后CRF模塊對序列進行最優化預測,從最優的處理結果中完成全部實體的抽取與歸類。
需要注意的是,本文采用的BERT模塊區別與文獻:文章采用中文的分詞習慣,將整詞作為一個單元進行訓練,以全詞Mask[15]的方法應用在建筑規范上,全詞Mask遵循“共榮”原則,即只需整詞中的一部分被Mask即可,剩余部分也會被Mask。避免了整詞被拆分成單個字,在訓練過程中被隨機Mask,造成訓練結果不理想情況。分詞情況具體如表2所示。

表2 全詞Mask
全詞Mask的BERT模塊結構如圖5所示。

圖5 BERT模塊(全詞Mask)結構圖
基于模型的命名實體識別的具體步驟為:(1)將建筑規范中的相關條文細則轉換為txt格式的文本語料,并進行相應存儲;(2)利用jieba工具等對已儲存的文本語料進行分詞標注工作;(3)利用TensorFlow對改進的BERT-BiLSTM-CRF模型進行訓練,首先對部分數據進行訓練,讓模型掌握從語句中提取所需實體并進行分類的能力,之后在模型中訓練已有的訓練集的數據,訓練完成后得到最終可用模型;(4)將預處理后的文本輸入到最終的模型中,從而完成對實體的識別任務。
3) 關系/屬性抽取。
關系抽取的目標是從規范中抽取出實體、屬性及屬性值三者間的表達關系。傳統的關系抽取方法大多是基于手動構造語義規則的方法進行實體關系識別,在取得較好效果的同時也造成嚴重人工成本損失,同時極易產生依存關系包含率低、關系混淆、詞性識別錯誤等情況,嚴重影響到關系抽取的質量。
屬性可對建筑規范的實體進行全面概括,如耐火極限是建筑樓板的規定條件。徐紅霞[16]等通過支持向量機實現對人物屬性的抽取,驗證了屬性可看做實體和屬性值之間的某種鏈接關系。本文將建筑規范屬性抽取作為關系抽取工作的分支。
本文提出一種基于注意力機制[17]融合句子語義的建筑規范關系抽取方法,結合建筑規范的語言特性,通過分析研究句子語義相似性及特征關系,構造句子特征表示,并輸入到模型中。模型的關鍵部分為注意力機制,其通過分析句子中詞與詞之間的關聯層度修改權值系數矩陣來得到詞表征,如式(1)所示:
(1)


圖6 注意力機制融合句子語義的模型結構
由圖5模型所示,當輸入某一建筑規范語句,如“住宅建筑的設計規范要求,消防設計部分”,首先將該建筑規范語句進行jieba分詞處理,再輸入進BERT模塊完成標注工作;然后將訓練完的詞向量輸入到BiLSTM模型中,通過模型的前后文信息向量解析得到句子語義信息;最后注意力機制給句子中的各個字賦不同的權值,將低權值信息當成無用信息并自動忽視,只注重高權值信息,從而獲取到影響實體關系抽取的字節,最終基于softmax層對輸入權值向量的語句關系進行分類。最終輸出結果為“住宅建筑的消防設計規范”。
2.1.3 知識融合與存儲
知識融合與存儲是知識圖譜底層設計的重要環節,有效提升較大場景圖譜的整合利用率。本文通過基于自適應雙閾值算法的實體對齊方法,實現對建筑規范的知識融合;此外,選用高性能、成熟度好的Neo4j[18]圖數據庫來進行知識存儲需求,一定程度上解決建筑規范數據高價值密度、數量集大、設計范圍廣等問題。
建筑規范領域知識融合完成后,采用知識存儲映射算法將其轉換到Neo4j圖數據庫中,完成建筑規范知識的存儲工作。將建筑規范中的‘概念’、‘關系’和‘實體’元素構成三元組,具體見式(2)。
Graph=(C,R,E)
(2)
其中,‘概念’對應Neo4j圖數據庫的標簽,具有類別作用;‘實體’對應節點,形象直接列出具體實體;‘關系’對應數據庫的邊,指明存在關系屬性的實體范圍。
基于映射算法的知識存儲流程具體如下。
輸入:Neo4j圖數據庫地址(dbURI)、RDF文件;
輸出:Neo4j圖數據庫中存儲的融合數據內容;
(1) 基于Jena的API接口讀取解析RDF數據文件,得到所有三元組R,之后解析三元組Ri(三元組數量為n個,i≤n)為Triple={s,p,o}。
(2) 基于公開的REST_API設計封裝模式,并以此為接口對訪問Neo4j圖數據庫地址進行連接,針對數據庫事務采用begin_Transaction和commit_ transaction模塊進行事務的開始與確定。同時為‘實體’和‘關系’創建數據庫索引RestNode, RestRelationship。
(3) 從實體索引中獲取triple.s及triple.o的對應節點Vs和Vo,查看數據庫中是否已存在Vs和Vo,若已存儲則進行下一步,反之則重新創建節點并添加到實體索引中。
(4) 與步驟(3)相似,首先從關系索引中獲取triple.p的對應邊Ep,查看數據庫中是否已存儲Ep,若已存在則進行下步操作,反之則創建全新Vs→Vo的有向邊,并將其加入到關系索引中。
(5) 檢查是否所有的三元組Ri已完成遍歷任務,若i (6) 建筑規范領域知識存儲于Neo4j圖數據庫中,并做可視化展示。具體算法流程如圖7所示。 圖7 知識存儲算法流程 BIM數據具有多源異構的特性,在數據表達方式上存在較大差異,為保證智能審圖擁有較好的數據基礎,本文采用了基于IFC的數據提取方法。 首先,將多源異構的BIM數據解析轉化為IFC格式文件,同時結合已構建的知識圖譜,獲取建筑規范的實體、屬性及關系集合的三元組(E,Rt,S)。之后,依據其中的屬性集Rt,得到審圖所需類型集T;根據實體與屬性間的關系,得到審圖所需模件集C。具體關系如式(3)所示。 T=∪(i=1,n)ti C=∪(i=1,n)ci (3) 其中:(ti,ci)分別為審圖所需的具體類型、單一類型模件的集合。 篩選、提取與審圖相關的模件信息,先提取模件集C中每個模件的具體數據信息,并將其歸類羅列為基礎信息數據集B、狀態信息數據集G及屬性信息數據集A三個方面;最后,整合處理3個方面的數據集,得到最終審圖數據集P。具體關系如式(4)所示: B=∪(i=1,n)bi G=∪(i=1,n)gi A=∪(i=1,n)ai P=∪(i=1,n)pi (4) 其中:(bi,gi,ai)分別為單一模件的基礎信息、狀態信息及屬性信息數據;pi為智能化審圖某一個數據單元。建筑模型數據提取具體流程如圖8所示。 圖8 建筑模型數據提取流程 在完成建筑模型數據提取的基礎上,實現數據信息與知識圖譜的匹配,并將匹配內容轉化為三維可視的智能化審圖結果。具體任務為完成模型數據與知識圖譜中的條文細則匹配工作。 m=max(li),i≤n (5) 其中:m,n分別為約束向量的最大維數、審圖內容數量;li為第i類的約束向量維數。向量組補齊如圖9示意。 圖9 向量組補齊示意圖 通過向量組中的數值元素判斷被審建筑模型是否符合規范要求,若審圖結果低于對應的規則條文約束,則向量組數值元素為“0”,反之則顯示為“1”。 為實現建筑模型及審圖結果的三維可視化展示及跨平臺查看等功能,本系統研究設計Web端可視化展示功能模塊。系統基于HTML5標準下的語言描述方式構建網絡應用內容,在visual studio2018編譯環境下,采用JavaScript語言實現對模型的json文件解析和模型網頁端重建。具體步驟為:首先搭建HTML5框架,完成系統網頁端架構的實現;之后搭建Three.js[20]渲染場景,以此創建場景、相機和光源,使得醫療建筑的三維模型及后續對象能在屏幕上最佳顯示;對json文件進行解析并進行網頁開發,實現建筑模型在網頁端三維展示。用戶可直接于瀏覽器中查看模型信息及審圖內容,方便快捷,無需安裝專業的模型生成軟件,且系統具有可擴展性,方便后續內容的添加與修改。 本系統結構化梳理審圖所需的建筑規范條文、行業文本標準等數據信息,并解析轉化建筑模型數據,之后將二者進行向量匹配比較,完成建筑審圖自動化的基礎工作。基于此,設計開發建筑智能化審圖系統,主要包括模型上傳與查看模塊、模型構件審圖模塊、模型功能房間審圖模塊3個部分。 相關人員可基于該模塊上傳需審圖的建筑模型并展示三維可視化場景,并對模型進行縮放平移等功能。具體步驟為:將待審建筑Revit模型導入系統中,再進行建筑模型json格式文件的讀取解析、構件信息重構、幾何空間構建等步驟,完成待審建筑模型到網頁端展示的全部工作。 此外,用戶可通過添加鼠標控件在網頁端實現對建筑模型及模型所含構件進行操作,可全方位查看建筑模型。如圖10展示的為模型旋轉縮放平移效果。 圖10 模型交互查看效果圖 用戶點擊建筑模型的某一構件,系統自動生成審圖報告,主要從構件的屬性、平面布置以及消防信息等方面進行數據信息展示,同時顯示數據對應的指標數值以及相對應的規范標準細則。為了驗證系統審圖的準確性,點擊模型中的‘樓板’構件,系統自動生成審圖報告,審圖結果如圖11所示。 圖11 模型構件審圖結果展示 用戶通過模型數據審查模塊,可實現對建筑模型中各房間部門的審查,包括房間的平面布置、消防查詢、構件屬性以及其他信息說明,同時生成房間明細表,對模型內的所有房間進行所在樓層、房間面積等信息展示。選擇‘模型審查模塊’中的‘房間審查’部分,點擊某類型功能房間,具體審圖內容展示如圖12所示。 圖12 功能房間審圖展示 為了驗證所構建系統的準確性與有效性,選取某地眼科醫院建筑作為實驗對象,人為將醫院建筑模型中‘門診部用房’的‘墻體’構件的燃燒等級由A級改為B1級,相關人員通過點擊‘數據信息查詢’中的‘構建審查-墻’選項,系統自動高亮顯示信息有誤的墻體構件,并自動生成審查報告和相對應規范條文,設計人員可以方便快捷地對模型進行查看并做相應修改,具體審圖結果如圖13所示。 圖13 實驗結果展示 該系統審查出隸屬于門診部的某一‘墻體’構件的燃燒性能等級低于《建筑內部裝修設計防火規范GB 50222-2017》[21]中5.2.1條例要求。建筑模型中的樓板的燃燒性能等級為B1,不符合規范的A級等級要求,需修改和完善該類構件。由實驗結果可知,該系統針對建筑的智能化審圖方面具有高準確度和完備性,滿足行業的智能化審圖需求。 傳統的建筑審圖方式存在效率低下、審圖準確度較低以及審查范圍無法全覆蓋等一系列問題,無法滿足當前社會智能化,信息化的審圖行業需求。本文利用BIM技術先進的數據協作能力,并結合擁有強大知識管理能力的知識圖譜技術,設計開發了建筑智能審圖系統,為運維人員提供了全新的直觀易懂、快速準確的建筑模型審圖方式,進一步降低模型審圖對人工的依賴性,提高了建筑審圖的效率與準確度。此外后續可擴展知識圖譜在建筑其他領域的應用,豐富建筑規范知識圖譜的信息維度容納。
2.2 建筑模型數據提取

2.3 建筑模型數據與知識圖譜匹配


2.4 網頁端可視化展示
3 建筑智能審圖系統設計與實現
3.1 模型上傳與查看模塊

3.2 模型構件審圖模塊

3.3 模型功能房間審圖模塊

3.4 實驗結果與分析

4 結束語