網路城邦
上一篇 回創作列表 下一篇  字體:
人工智慧常常只是讓軟體有點常識
2020/10/06 06:50:34瀏覽792|回應0|推薦9

人工智慧(AI)這個詞,如果照我的認知,是很平易近人,範圍廣泛,無所不在的!應該沒有甚麼神祕,也不一定要特別的技術才能實作。事實上我們做軟體的人天天都在處理這些小問題,就是讓我的軟體看起來更有「智慧」,像一般人一樣,有些「常識」,可以視情況自動反應處理一些狀況,不要感覺太笨就對了!

像是上面我替台東火車站做的逾時停車監看軟體,這種最後要用於裁罰依據的照片,第一個是要有時間標籤,明確標示事件發生的時間,為了避免遮住畫面上重要的部分,所以會做在左上角。另一方面為了讓人一目瞭然,當程式找到畫面中的車牌之後,客戶(警察)還要求放大車牌的局部影像放在角落。

其實一開始我設計的版本是將放大車牌放在右上角的!依據我的「經驗」,也就是我的「常識」或者說「智慧」,畫面上方就是實際環境中的遠方,所以如同時間標籤放在左上角一定不會礙事一樣,放大車牌最不容易遮住重要畫面資訊的位置就是右上角

但是負責此事的員警卻有和我不同的「常識」!他們認為應該放在左下角比較好,因為「客戶永遠是對的」嘛!我當然就遵照辦理了!果然發生了如上圖計程車的狀況,放大的車牌影像遮住了原始影像中的車牌!這當然不行啦!所以他們就問我可不可以「視情況」將放大車牌移到右下角?

我說當然可以!他們就好高興哦!因為這就有點AI的味道了!就是當我的程式評估放大車牌放在預設的左下角,會遮住原始影像中車牌的實際位置時,就從左邊移到右邊而已!我先是保守的設定只有真的會遮住原始車牌時才會移動,如下圖的白車雖然車牌位置偏左,放大車牌還是會在左下角。

但是我的客戶玩開了!覺得「既然車牌偏左,軟體就應該有反應啊?」這樣才有AI的味道嘛!不然人家怎麼知道我們有「AI」呢?所以我又進一步改成原始車牌在左半邊,放大車牌就放右下角,車牌在右半邊,放大車牌就在左下角。我的工作就是在實現客戶以為的人工智慧了!

但老實說:照我的原始設計,放大車牌直接放在右上角,就根本沒這些囉嗦的事!所謂的「天下本無事,庸人自擾之」!我才是做最多類似工作的專家,他們卻沒有太尊重我的「智慧」!還好,他們也因此知道我的程式是可以做這些自我判斷的,「AI」感油然而生!哈哈!

從這種例子你應該可以體會我說的:人工智慧絕對不是狹隘的機器學習或深度學習可以概括描述的!在軟體業,也就是我的日常工作中,人工智慧的實作應用無所不在,也可以用任何技術去實現,如果你的軟體能讓人感覺有「常識」,能避免做出明顯的傻事!那就是AI了!

簡單說:人工智慧的本意應該是可以做出類似人的智慧判斷與反應,真正需要用到機器學習或深度學習的狀況其實十不及一,那十分之一的狀況也不是非用機器學習不可,像我做的影像辨識,還在找第一個機器學習作得比傳統演算法更好的首例!

所以我認為要投入AI產業的研發,最重要的是豐富的常識與清晰的頭腦,加上足夠的程式設計能力!至於機器學習等大家說的熱門技術,應該只能算是選修課,完全不會也沒太大關係的!別錯置你的學習重心了!多做幾個實際案例,嘗試解決一些問題你就會相信我了!那些狂推MLDL的專家多半沒有甚麼實務經驗,隨便說說的!

要做到上面的「AI」判斷其實很簡單,我既然可以從全圖中辨識出車牌號碼,當然就會知道它的位置,我既然可以寫程式放大車牌,當然也知道這個子影像的大小,可以計算如果放在特定位置時,會不會遮住原始的車牌?如果會!就換個放置子影像的位置就好!關鍵是資訊的互通整合,如果你是用某個買來的車牌辨識黑盒子模組辨識車牌,只告訴你車號,不告訴你位置,你就無法做這種判斷了!

所以要實現AI判斷與反應的重點並不是統計資料,而是充分理解與掌握運用資料,如果你習慣用組裝方式建構你的軟體,你的軟體中黑盒子越多越大,你能做好的AI反應功能就會越少,你的軟體就會看起來越笨,越不「AI」了!所以你還認為使用很多「AI模組」是件好事嗎?盡量縮小你的黑盒子,你才會有越多揮灑設計AI功能的空間!

( 心情隨筆工作職場 )
回應 推薦文章 列印 加入我的文摘
上一篇 回創作列表 下一篇

引用
引用網址:https://classic-blog.udn.com/article/trackback.jsp?uid=yccsonar&aid=151264414