
所謂的Rule-based辨識就是影像辨識的專家系統!就像要做一個可以代替醫生看診的AI系統,這個AI開出的所有藥方與療法都必須有明確的醫學根據!就是依據那些檢驗結果的組合判斷是甚麼病,所以要吃甚麼藥?要做何種治療?這中間是不允許有模糊空間的!
譬如上面的案例,手寫的1與7常常會被交叉誤認!上例說是1或7好像都行?如果是機器學習派的做法就是根據資料庫主觀決定的標準答案,以統計的方式找到最平衡答對率最高的妥協點!有沒有道理?能否跟使用者解釋為何會作此判斷?連訓練模型的專家也無法跟你說明的!機器比較聰明,你笨嘛!
Rule-based的做法呢?就是要找出可以明確量化的特徵,將它們數學化也程式化之後用來分辨識誰是1?誰是7?即使AI軟體的答案其實跟手寫人的本意不同,至少會有公信力,讓旁觀的第三者可以理解接受!須知資料不是永遠都對的!所以過度強調Data driven是會有問題的!
以上例來說我的Rules是:首先有個很長的中軸線,怎麼樣叫做長呢?就是此軸線是全部高度的幾分之幾?接著是上橫短線的寬度,但是只看寬度模糊地帶是很大的!所以必須搭配上橫線的傾斜度!這兩者的組合控制得宜就可以相當準確的分辨1或7了!如果硬是有人將7的短線寫得很短又很傾斜呢?那就不是AI的錯了!就如醫學AI完全按照醫學理論設計執行就可以免責了!總有例外的!
到底是Rule-based的AI比較好?還是機器學習的AI比較好?事實上沒有必然的答案!資料多,原則不明確的辨識目標用機器學習會比較快有成果!但是資料不多,原則卻很清楚的就應該用Rule-based!須知機器學習是統計學,可以說是用機率統計猜答案的!如果考試時面對你會做的題目當然不應該猜答案!
大家都知道現在流行的是機器學習,已經很少人使用Rule-base了!但這不表示它已經過時被淘汰了!實際上需要高精準度的AI系統都必須使用Rule-based的!它的難度就是必須真的對辨識目標有非常深入的科學(專業)理解!很多人用機器學習並不表示它比較好,而是它比較簡單好入門好上手,但是易學難精的意思!
當然我會非常傾向使用Rule-based的方式研發也是因為成本的考量!我的知識已經在腦袋中待命了,不必額外花錢去上課!但是買資料標記資料買訓練模組軟體與GPU電腦的錢我捨不得花,所以當然會愛用Rule-based!多年來也無往不利!還非常有趣好玩!
算是小小的AI科普吧!最近仍然每天沉浸在手寫數字的辨識研究!偶爾也要將頭伸出水面呼吸一下,跟朋友們打個招呼啦!我還活得好好的!玩影像辨識玩得很開心!
限會員,要發表迴響,請先登入



