化遷移中圖紙智能化解析的關鍵技術)
國產(chǎn)化替代這件事落到CAD領域遠比很多人想象的復雜。換掉一個軟件裝一裝就行真正的難點在于過去十幾年甚至二十幾年積累下來的幾十萬張圖紙要全部無縫遷移到新平臺還能繼續(xù)編輯、審閱、復用。我前后參與過幾個大規(guī)模遷移項目最大的感受是圖元識別從來不是錦上添花的功能而是遷移項目能否順利落地的生死線。圖紙打不開、顯示亂碼還能靠格式轉換兜底但如果圖元類別認不準、圖層語義對不上后續(xù)的工程量統(tǒng)計、模型復用、BIM對接全部都會崩掉。這篇內容我就圍繞AI圖元識別這件事把從數(shù)據(jù)準備、模型選型、訓練調優(yōu)到部署集成的完整鏈路拆開講。不只是講理論重點是我在實際項目里踩過哪些坑、哪些方案看著合理但根本跑不通、哪些環(huán)節(jié)看起來不起眼卻決定了最終上線效果。適合正在做CAD國產(chǎn)化遷移、圖紙智能化處理、或者想用AI技術解析工程圖紙的工程師不管你現(xiàn)在處于選型階段還是已經(jīng)跑通Demo都應該能從里面找到一些直接能用的經(jīng)驗。1. 國產(chǎn)化CAD遷移進程中為什么卡在圖元識別這個環(huán)節(jié)1.1 從能打開到看得懂中間的差距有多大很多團隊在遷移初期會拿到國產(chǎn)CAD廠商提供的格式轉換插件把DWG批量轉成自家格式。測下來發(fā)現(xiàn)日常圖紙確實能打開但這時候只完成了幾何無損這一步離業(yè)務可用還差著十萬八千里。怎么理解這個差距舉個例子一張設備布置圖里有個閥門符號在原始圖紙里它可能是一個塊Block塊內包含若干線條、圓弧和屬性文字。轉換插件能把這些線條圓弧原樣搬過來圖面看起來什么都沒缺。但如果業(yè)務部門要在新平臺上做設備清冊統(tǒng)計系統(tǒng)需要知道這個塊代表的是閥門型號是DN50——這層語義信息格式轉換是給不了的。更麻煩的是很多老圖紙里同類設備圖塊沒有統(tǒng)一命名有的是VALVE-50有的是V50-1甚至有的是散線沒做成塊。這時候AI的作用就體現(xiàn)出來了它得從幾何形狀、尺寸比例、文字標注等信息里反推出這個圖元到底是什么。我實際遇到的案例某制造企業(yè)的工藝管道圖純粹因為塊命名不統(tǒng)一導致遷移后設備統(tǒng)計表里少了將近40%的條目。后來我們用AI模型對圖元做形狀-語義雙通道識別先把散線組合識別成閥門符號再通過模型預測類別標簽統(tǒng)計完整率終于拉回到97%以上。這個項目讓我徹底意識到圖元識別解決的是看得懂的問題它決定了國產(chǎn)CAD替代到底能不能支撐實際業(yè)務。1.2 為什么傳統(tǒng)幾何匹配算法在這個階段不夠用了早期業(yè)界也不是沒有做圖元識別很多老系統(tǒng)用幾何匹配和模板庫就能干活。模板庫里存幾百種常見符號的標準幾何然后用形狀匹配算法去掃描圖紙命中了就認為識別成功。這種方案的局限在于三點。第一模板庫的構建和維護成本極高一個行業(yè)的標準符號可能上千種而且不同設計院畫的同類符號細節(jié)都不一樣第二圖紙里圖元經(jīng)過縮放、旋轉、鏡像、部分遮擋后純幾何匹配的魯棒性會迅速下降第三遇到?jīng)]有標準模板的野路子畫法系統(tǒng)完全無能為力。我在某個項目里接過一套老的識別模塊它的符號庫已經(jīng)有五千多個模板按說覆蓋夠廣了但切換到一個新行業(yè)的圖紙后準確率直接掉到60%以下。新增模板需要人工把每個符號的幾何特征一條條錄進去一個工程師忙一天也就處理幾十個。這種效率在國產(chǎn)化浪潮的批量遷移場景里根本扛不住——我們面對的是幾十萬張圖紙不可能每張都人工介入。深度學習和大模型的介入改變了這塊的效率上限。模型可以自動從標注數(shù)據(jù)里學形狀特征和語義特征新增類別只需要準備一定量的標注樣本不像模板庫那樣需要手工拆解幾何關系。所以現(xiàn)在做圖元識別大家默認的技術路線都已經(jīng)轉向數(shù)據(jù)驅動區(qū)別只是數(shù)據(jù)的質量和模型怎么設計。2. 圖元識別的技術全景幾何規(guī)則與深度學習的邊界2.1 圖元類別這個概念先理清楚再談模型做AI識別之前有一個很容易被忽略但極其重要的問題你到底要把圖元識別成哪些類別在CAD數(shù)據(jù)里圖元有底層圖元和業(yè)務圖元兩種理解角度。底層圖元就是幾何元素本身線Line、圓Circle、圓弧Arc、多段線Polyline、樣條曲線Spline、填充Hatch、文字Text、標注Dimension、塊Block這些。業(yè)務圖元則是指這些幾何元素組合起來表達出來的業(yè)務對象比如閥、泵、管道、墻體、門窗、橋墩、樁基等。很多做AI識別的人一開始沒想清楚這個問題拿了一份底層圖元的標注數(shù)據(jù)去訓練模型做出來一個識別效果不錯的Demo但業(yè)務方用起來發(fā)現(xiàn)根本對不上需求因為業(yè)務方要的是這個塊是泵不是這個對象是塊引用。我們的經(jīng)驗是先把分類體系拆成兩層。第一層是基礎幾何類別模型輸出Line/Circle/Arc/Polyline等基本類型用來支撐格式轉換質量審計第二層是業(yè)務對象類別模型結合上下文識別閥、泵、儀表、設備編號等用來支撐工程語義檢索和統(tǒng)計。兩層模型可以共用底層的特征處理流程但標簽體系和模型輸出頭完全獨立混在一起訓練不會有任何好結果。2.2 規(guī)則算法在哪些地方仍然好用深度學習說了這么多優(yōu)點但也不是萬能。在我負責的系統(tǒng)里有幾類場景堅決用傳統(tǒng)規(guī)則算法效果反而更穩(wěn)定。第一類是純幾何屬性的篩選。比如判斷一個圖元是否閉合、是否互相重疊、是否共線這類問題用向量幾何算法算一遍就非常快沒必要上模型。第二類是文字和標注的解析。DWG里文字圖元自帶字符串屬性直接讀取屬性就行不需要OCR只有掃描后的光柵圖紙才需要OCR介入。第三類是圖框中標題欄信息的提取這些信息的位置相對固定用基于坐標格的規(guī)則提取比識別模型更可控。實際的系統(tǒng)里我用規(guī)則算法做了大量前置處理和候選項篩選深度學習模型只需要處理規(guī)則引擎過濾后的語義嫌疑對象。這樣既減少了模型的計算量也顯著降低了誤判率。一個典型的閥門識別前置規(guī)則先找到所有包含文字標注的、存在孔特征的、尺寸在某個范圍的閉合幾何集合再交給模型判斷類別速度和準確率都有明顯提升。2.3 深度學習介入的典型場景與價值深度學習真正發(fā)揮價值的場景主要集中在以下幾個方向。第一個方向是散線符號的聚合識別。大量老圖紙里的設備符號并不是規(guī)范的塊而是由幾十根零散線條湊出來的。規(guī)則算法沒辦法靈活組合這些線條但目標檢測類模型可以通過先檢測幾何元素、再用圖神經(jīng)網(wǎng)絡聚合候選符號這種方案來處理。第二個方向是矢量化——很多老底圖只有紙質掃描件或位圖沒有CAD源文件需要把柵格圖像里的圖元自動提取成矢量圖元線、圓弧、圓這幾乎必須依靠深度網(wǎng)絡。第三個方向是圖元的語義分類特別是圖塊的多義性問題同一形狀在不同上下文里可能是泵也可能是電機模型可以借助周圍的文字標注和管線連接關系給出更準確的語義判斷。我們把系統(tǒng)里的識別模塊做了一個分層設計輸入層做格式解析和圖形預處理中間層拆成規(guī)則引擎和深模型兩個并行通道最后還有個語義融合層把兩邊的結果匯總。整個系統(tǒng)上線后處理一張1000個圖元的復雜裝配圖深度模型推理耗時約85毫秒規(guī)則引擎耗時約35毫秒比純規(guī)則方案在召回率上提升了約20%比純端到端模型方案在準確率上提升了約8%。這個對比測試我們反復跑過多次結論很穩(wěn)定混合架構是這個場景下的最優(yōu)解。3. 數(shù)據(jù)準備識別效果的天花板早就在數(shù)據(jù)工程這里焊死了3.1 訓練數(shù)據(jù)的來源與格式轉換問題很多團隊一上來就找人標數(shù)據(jù)標了兩個月發(fā)現(xiàn)模型效果還是不行。問題通常不在模型而在數(shù)據(jù)源頭。做CAD圖元識別首先要解決數(shù)據(jù)怎么來來的數(shù)據(jù)長什么樣。如果手里的原始圖紙是DWG格式第一步要把它們統(tǒng)一導出成我們方便解析的格式。我實際用得最多的是DXF文件它本質上是文本化的交換格式每個圖元都有明確的類型標識和坐標參數(shù)便于程序批量讀取。這里有個很容易踩的坑DWG版本差異很大老的R14版本、中間的2007版本、現(xiàn)在的2018版本內部對象存儲結構變了不止一次。如果你直接調用某個單一的讀取庫去解析所有版本大概率會在某些圖紙上解析出錯或者丟掉圖元屬性。我們的做法是準備三套解析通道成熟的開源解析庫比如處理DXF的庫、商業(yè)格式轉換組件以及自研的兜底解析器。三個通道互相校驗解析日志里如果發(fā)現(xiàn)某個文件在通道A報錯、通道B正常就自動打上標記做人工復核。另一類重要數(shù)據(jù)源是掃描圖紙。很多設計院的存量資料只保留過紙質版或掃描件數(shù)字化的時候只是因為圖紙掃描存檔并沒有重建矢量CAD文件。這批數(shù)據(jù)做圖元識別走的是完全不同的鏈路先對掃描圖像做預處理二值化、去噪、傾斜校正然后做矢量化把像素級線條轉成矢量線段和圓弧最后再進行圖元幾何分類和語義識別。這個流程對數(shù)據(jù)集的要求不只是圖元類別標簽還需要像素級分割標簽標注成本高一個量級。如果沒有足夠的標注預算我的建議是別一開始就碰掃描圖紙先把原生CAD圖紙的鏈路跑通收益會大得多。3.2 標注規(guī)范與質檢流程怎么設計標注環(huán)節(jié)最容易出現(xiàn)的問題是標注標準不統(tǒng)一。兩個人標同一個閥門符號一個人把周圍的管線也圈進去了另一個人只圈了閥門主體這兩個樣本喂給同一個模型模型就會學到互相矛盾的信息。為了避免這種情況我在項目里強制推行了一套標注規(guī)范有幾條核心約定可以分享。第一每個業(yè)務圖元的標注框必須包裹整個符號的最小外接矩形但不能包含其他無關圖元。第二一個圖元只能有一個主標簽類別歸屬以最核心的業(yè)務語義為準。第三散線組合的符號需要先用工具進行幾何合并再給合并后的對象打標簽不能讓標注員對著幾十根散線分別打標。第四每批次標注完成后必須有雙人復核復核不一致的樣本回到爭議池由領域專家裁定不能簡單投票解決。標注的質檢指標也不僅僅是準確率還要看標注邊界的一致性。我們統(tǒng)計過標注員之間的框交并比IoU如果平均IoU低于0.85說明標注標準已經(jīng)失控必須停下來重新培訓。很多團隊習慣性開啟標就完了的模式極容易在這種細枝末節(jié)上翻車。3.3 數(shù)據(jù)增強、樣本不均衡與噪聲標簽這三件套CAD圖元數(shù)據(jù)和自然圖像的差異非常大共享一套增強策略會出大問題。以圖塊識別為例圖元的位置、旋轉角度、縮放比例本身就有很強的業(yè)務含義你不能隨便旋轉90度——那可能把一個閥門語義變成另一個設備的語義。所以增強策略要限制在合理范圍內平移和縮放可以適量做旋轉必須按固定角度比如15度的倍數(shù)且有語義審查顏色/線型的變化不能隨機要按行業(yè)制圖規(guī)范來。樣本不均衡同樣是重災區(qū)。一個完整的圖紙庫里直線和圓弧這些底層圖元占了絕大多數(shù)業(yè)務符號的占比可能只有幾個百分點。如果不做處理模型會學會把絕大多數(shù)樣本都預測成高頻類別準確率虛高但業(yè)務完全不能用。我們的處理方式有三板斧對高頻基礎圖元做降采樣訓練對低頻業(yè)務符號做幾十倍過采樣并配合輕微形變增強同時引入Focal Loss讓模型把注意力集中到難分的少數(shù)類樣本上最后對過采樣樣本和真實樣本混合做批次訓練避免模型過擬合到增強樣本。噪聲標簽問題在CAD場景里也特別突出主要來源是老圖紙本身的錯誤比如設計修改后圖元沒刪干凈、重復繪制、圖層命名混亂。這類噪聲不會因為標注認真而消失它們藏在數(shù)據(jù)里。我的策略是引入標簽清洗模型先訓練一個初始模型用模型預測置信度結合標注結果做對比把置信度極低但被標成確定類別的樣本挑出來交給專家二次判定是改標簽還是刪樣本。這樣一輪清洗下來通常可以減少大約15%的標簽錯誤模型的準確率能直接提升3到5個百分點。4. 模型選型與訓練細節(jié)不是堆大模型就能贏4.1 圖元小尺寸特征與輕量化網(wǎng)絡的設計選擇圖元識別有一個特殊的難點很多關鍵符號在圖紙里的尺寸很小。一個閥門符號在整張A0圖紙里可能只占據(jù)幾十個像素如果用整圖縮放后直接丟給目標檢測模型小目標的特征幾乎全丟了。針對這個問題我們做了兩個關鍵設計。第一不直接對整圖做統(tǒng)一縮放而是先按圖幅分塊把圖紙切成若干瓦片tile每個瓦片內部保持原始比例再對瓦片做檢測。第二在模型結構上沒有盲目用ResNet-50或更深的主干網(wǎng)絡。對CAD圖紙這種干凈、高對比度、幾乎沒有紋理噪聲的圖像輕量級的CNN主干類似ResNet-18甚至更小配合特征金字塔結構檢測小圖元的效果已經(jīng)足夠好。對比實驗里ResNet-50比ResNet-18在業(yè)務符號上的精確率只提升了不到1%但推理耗時增加了將近3倍部署成本和響應速度都吃緊。如果是基于矢量的原生CAD數(shù)據(jù)我會更推薦走幾何特征工程 輕量分類器的路線。先把每個候選圖元/圖元集合的幾何特征面積、周長、頂點數(shù)、曲率均值、凸包比、各方向投影長度等抽出來構建成特征向量然后丟給一個多層感知機或者梯度提升樹模型做分類。這么做的好處是特征可解釋、調試方便、推理極快而且對算力幾乎沒有要求。只有當矢量化特征表達不了復雜語義比如圖形形狀很不規(guī)則、類別極度依賴上下文的時候才需要把圖元柵格化后交給CNN。4.2 損失函數(shù)與訓練策略怎樣避免模型原地踏步模型訓練我在項目里踩過最深的一個坑是直接拿標準的交叉熵損失去訓練多標簽圖元分類損失函數(shù)一直在降但業(yè)務準確率卻始終上不去。后來分析發(fā)現(xiàn)圖元類別之間存在大量互斥但不完全互斥的關系——一個對象同時被識別為管線和標注線在損失函數(shù)里是可接受的但對業(yè)務來說就是致命錯誤。解決這個問題的思路是設計組合損失。主損失仍然是類別交叉熵但疊加了兩項輔助損失一項是結構一致性損失強制模型預測的圖元類別分布與圖元間的幾何拓撲關系保持一致比如一個符號內部不應該出現(xiàn)外部是管線的起點這種互相矛盾的組合另一項是層級約束損失業(yè)務對象的類別預測必須與底層幾何類別預測兼容比如業(yè)務預測是閥門時底層幾何不能全部預測成文字。加上這兩項之后模型的業(yè)務準確率提升大約6個點誤判率顯著降低。訓練策略上也有一些細節(jié)。第一階段用完全平衡的采樣訓練跑基礎特征第二階段切換為盡量貼近真實圖紙分布的采樣讓模型重新適應類別的先驗分布最后再做幾輪困難樣本挖掘把前兩階段預測錯誤的樣本增強后單獨回喂。整個過程大約3萬步后可以穩(wěn)定收斂繼續(xù)加大訓練量對效果影響很小這時候就該把精力放到推理加速和數(shù)據(jù)清洗上而不要在訓練上無限加時。4.3 后處理用幾何約束把模型的低級錯誤糾正過來模型是概率輸出最后落庫的必須是確定性的圖元類別和幾何關系。很多團隊在做后處理時只做取置信度最高類別這一步這就浪費了大量可利用的領域知識。我在系統(tǒng)里加了一套幾何約束修正器專門跑三類規(guī)則。第一類是閉合性校驗如果模型把某條圓弧預測成非閉合曲線但它的起點和終點距離小于閾值就強制改成閉合圓弧。第二類是圖層歸屬校驗某些行業(yè)規(guī)范要求特定圖元必須在特定圖層如果模型的類別預測和圖層屬性沖突標記為待人工確認。第三類是上下文語義校驗類似剖面線和填充圖案的預測結果不能出現(xiàn)在模型類別為文字的區(qū)域這類規(guī)則。這套后處理邏輯看起來不起眼但在實際測試中它能把最終錯誤率再降低約30%。比如有些圓在圖紙里既是實際的螺栓孔又是標注用的輔助圓純模型區(qū)分不了規(guī)則加進去之后根據(jù)螺栓孔的陣列分布規(guī)律就能把所有等距排布的圓統(tǒng)一修正為螺栓孔而不是零散地被分類成兩種。這就是模型規(guī)則的典型配合方式。5. 部署與集成圖紙識別完了業(yè)務閉環(huán)才算數(shù)5.1 推理引擎的部署形態(tài)與兩種落地路徑訓練完成后的推理引擎部署我建議根據(jù)業(yè)務緊迫程度選擇兩條路徑不要一上來就上昂貴的推理服務器。路徑一是離線批量識別適合歷史圖紙庫的整體遷移。把引擎封裝成一個批量處理服務輸入一批DWG/DXF文件輸出識別結果JSON和校驗報告跑完整個流程后人工抽查即可。路徑二是在線增量識別適合新圖紙產(chǎn)生時的實時處理。接入CAD軟件的事件回調機制圖紙保存或打開時自動觸發(fā)識別推理結果實時回寫圖元屬性。兩種部署形態(tài)我都在實際項目里跑過。離線方式對時延不敏感可以采用較大的模型甚至跑多模型集成投票在線方式就要嚴格控制模型大小和推理耗時。我們最后在線引擎用的是量化后的輕量模型在國產(chǎn)CPU上單張圖紙平均推理大約320毫秒加上格式解析和結果回寫整個流程控制在1.5秒以內用戶基本無感知。5.2 與國產(chǎn)CAD內核的數(shù)據(jù)交互要注意什么部署環(huán)節(jié)最容易被低估的是與CAD內核之間的數(shù)據(jù)交互復雜度。識別引擎要把結果寫回圖紙本質上是對圖元對象的擴展屬性XData或自定義屬性字典進行操作。不同國產(chǎn)CAD平臺對擴展屬性的支持程度不一樣有的支持標準XData有的需要走自定義字典接口有的底層API對批量屬性寫入的性能極差。我曾經(jīng)在一個項目里踩過坑推理引擎已經(jīng)跑完識別了結果寫回階段因為平臺對象屬性接口要逐條推送2000個圖元寫回竟然耗時超過10秒。后來改成批量事務接口并利用平臺自帶的批量修改能力耗時降到1.8秒。這里的關鍵經(jīng)驗是開發(fā)之前一定先做一個寫回性能壓測別等全部開發(fā)完了再發(fā)現(xiàn)時間都耗在屬性回寫上。另外一個容易被忽略的點是識別結果與圖元對象的關聯(lián)穩(wěn)定性。CAD圖元在圖紙保存再打開后句柄Handle通常保持不變但如果圖紙經(jīng)過轉版本、修復或者另存句柄也可能變化。我們做結果回寫時用的是句柄幾何坐標的雙重關聯(lián)先按句柄精確匹配匹配不上再用坐標最近鄰匹配并在結果里記錄匹配置信度。這樣即使出現(xiàn)句柄漂移也能通過坐標兜住絕大多數(shù)情況。5.3 性能優(yōu)化與國產(chǎn)硬件適配這幾個指標必須盯住國產(chǎn)化語境下推理引擎往往要適配國產(chǎn)CPU、國產(chǎn)GPU以及國產(chǎn)深度學習框架。這個適配過程的工程量經(jīng)常被低估。我實際測過的幾個國產(chǎn)平臺上通用X86上跑得很順的模型遷移后可能遇到算子缺失、精度下降或者內存占用翻倍的問題。所以我的建議是在模型選型階段就要圍著一個具體的國產(chǎn)推理目標平臺來做約束。比如目標平臺只支持INT8量化那訓練時就考慮量化感知訓練而不是訓練完再臨時量化目標平臺支持的卷積算子有限就避免在骨干網(wǎng)絡里使用過于冷門的算子結構。先把算子支持列表拿到手再定網(wǎng)絡結構比回頭做兼容性改造省力得多。性能監(jiān)控不能只看平均推理耗時至少還要盯三個指標耗時P95/P99、首包時延、以及長時間運行后的顯存/內存水位。CAD圖紙尺寸差異極大小圖可能幾十毫秒出結果大圖可能幾秒甚至十幾秒只看平均值會掩蓋很多實際問題。有一次我們優(yōu)化后平均耗時才100毫秒但P99高達3秒一查發(fā)現(xiàn)是某些超大圖塊的尺寸不受控制后續(xù)做了圖塊切分和超時降級策略P99才壓到500毫秒以內。6. 我踩過的坑和幾條可復用的建議做AI圖元識別項目容易犯的最大錯誤是把精力過多放在模型迭代上卻忽略了整個系統(tǒng)的漏斗轉化率。我一開始也是這么干的模型準確率從88%調到95%花了兩周時間但整體業(yè)務指標幾乎沒變化。后來把所有識別流程拆開做耗時分析才發(fā)現(xiàn)卡點在格式解析環(huán)節(jié)——有個老舊的圖紙格式解析庫在處理某些版本時效率極低單文件解析耗時達到了模型推理的10倍。把解析庫換了之后整個流程提速了60%比調模型收益大得多。還有一次我們在上線前做最后一輪大規(guī)模測試發(fā)現(xiàn)識別結果出現(xiàn)大面積圖元偏移。排查了很久最后發(fā)現(xiàn)是圖紙在遷移過程中被某個轉換組件做了1:0.99的隱式縮放導致了坐標錯位。從那以后我要求所有原始圖紙在進入識別管線前必須做兩次幾何特征一致性校驗比如對比所有閉合圖形的質心分布、比較圖框的對角線尺寸和標注尺寸是否吻合。這種校驗一小時就能跑完但能避免整個識別批次因為坐標系統(tǒng)性偏移而全部作廢。關于模型結構我的建議是別盲目追求大而全的模型。圖元識別這張任務大多數(shù)環(huán)節(jié)是簡單的幾何分類和符號檢測需要的計算總量并不高輕量模型加規(guī)則后處理已經(jīng)能覆蓋絕大多數(shù)業(yè)務需求。真正復雜的場景是語義級圖元理解——比如理解一個符號是由哪些基礎圖元構成、它的功能和關聯(lián)對象是什么——這部分目前還沒有統(tǒng)一的成熟方案更適合用工程手段給每個行業(yè)定制語義模板而不是指望一個通用模型解決一切。如果你現(xiàn)在正打算啟動這類項目我的具體建議有三條。第一先花兩周時間把已有圖紙的圖元分布統(tǒng)計搞清楚高頻類別和低頻類別分開處理這會直接影響整個數(shù)據(jù)標注的策略第二一定要做規(guī)則引擎和深度模型的混合架構純規(guī)則方案扛不住多樣性純模型方案又缺乏可解釋性只有混合方案能同時兼顧業(yè)務方對準確率和可控性的要求第三上線前必須留出至少三周做深度模型誤判樣本的專項分析把錯誤類型分門別類整理成識別問題清單再逐項決定是用數(shù)據(jù)增強、規(guī)則修正還是人工復核來解決。圖元識別這套系統(tǒng)本質上不是單點算法問題而是數(shù)據(jù)、規(guī)則、模型和業(yè)務校驗的整體工程。我也是在反復踩坑和拆解流程之后才慢慢把整個鏈條理順的。希望這篇分享能讓你少走一些彎路在國產(chǎn)化遷移的大項目里把有限的精力花在最有杠桿的地方。