與貨櫃碼辨識需求客戶的實驗已經告一段落,一共744張的實驗影像辨識率已經達到百分之百,對方也已經進入採購程序,老實說我是可以躺著等收錢的!但這不是我的風格,只要有時間我總是會繼續研究精益求精的!最近兩周又已經將辨識時間縮短了20%!現在都還在很多細節上研究如何更快更準!
上面就是我的一個實驗畫面,其實每一個影像辨識的案例都是一個內容豐富的故事,像上面這個影像我可以用正負片與高低門檻值產生很多張的二值化圖,也就是可以簡化出很多可能是貨櫃碼的目標圖,如下:
以此專案來說就是有四張類似上圖的目標整理圖,每張圖各自都有數百到上千個可能的字元目標!我的程式必須在其中找到排列方式合乎貨櫃碼規範的群組,再進一步辨識那些目標是不是字元?如果是字元,是不是我們想找的貨櫃碼?就是必須篩選排除其他如電話或廣告文字的組合。
所以整個過程很像醫學院招生,每個高中生都會想考上醫學院,每個醫學院也會希望在茫茫人海中找到最好的學生,但是招生考選的時間與資源都是有限的!如何以最少的時間資源正確找到最好的學生?就是一個很有趣也很有實用價值的AI題目了!我的影像辨識研究就很類似這種性質!
如上圖的右下表就是我的初選名單!以此例來說,我在四個正負片高低門檻的二值化圖中找到了有可能是貨櫃碼的20個群組,有點像申請醫學院的資料報名申請階段,用較少的資源先快篩出有資格的學生,接下來就是面試口試等等,以上例來說甚至會有兩組答案是完全合格的!那就要選分數較高的一組了!
所以我的影像辨識軟體很像一個精密的儀器,每一個程序都需要合理、精準也盡可能高效率的設計!能夠準確辨識當然是最重要的目標,但是可以想像如此複雜的過程中,如果設計稍不恰當做了不必要的檢測項目,或是太早的階段就做了耗時耗資源的計算,那就會嚴重影響辨識的速度!
舉個醫學院(或軍校)招生的例子來比喻,如果每一個報名初選的學生都被要求做完整的體檢,那就是愚不可及的程序!因為那很浪費資源,體檢的數千人中最後只有幾十人會用到這項資料,所以應該是到接近決選時才做體檢比較合理!
所以我的效率研究就是把每個程序都加以量化評估,仔細思考或實驗如何排序或修改條件門檻,可以更快也就是更少計算就達到一樣正確的結果!每次修改還會重新計算所有的資料,不只是要對個案有效,還必須考慮統計上是不是真的讓廣泛使用時有效率提升的效果?也不能因為副作用讓某些案例卡關的!
這就是我的辨識軟體通常速度都快得嚇人的原因了!不是甚麼神奇的密技,只是最合理有效的工作排程與排序而已!這也是我使用專家系統概念開發AI產品的好處!我設計的每一個程序與條件的因果關係都是明確可追蹤,也可以充分理解掌控的!
相對的,如果我是用機器學習或深度學習的方式做影像辨識呢?我只能從大量資料中訓練出一個所謂「最佳化」的黑盒子模型!AI說最佳化就是最佳化了,我根本不知道它的細節是怎麼作的?當然也無從分析修改精進這種AI已經做好的系統!如果辨識錯誤我也無法跟客戶解釋原因?這東西要怎麼賣啊?
如果這樣生產的模型真的很有效率也就罷了,事實上幾乎都是非常沒效率,運算量太大速度很慢的!它們(AI)畢竟沒讀過物理系嘛!只根據資料統計逆推設計出來的含糊系統,怎麼可能精準有效率呢?所以只好靠昂貴的GPU電腦來救駕了!嗚呼哀哉,尚饗!
限會員,要發表迴響,請先登入