人工智能創(chuàng)新在即 “專(zhuān)家系統(tǒng)”破解大數(shù)據(jù)難題 2016年09月21日11:20 來(lái)源:中國(guó)智能制造網(wǎng)|
有很多著迷于深度學(xué)習(xí)、壓縮分類(lèi)和自動(dòng)駕駛的數(shù)據(jù)科學(xué)團(tuán)隊(duì),它們渴望運(yùn)用當(dāng)下流行的算法。有時(shí)候,自學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)可能是最佳的選擇;而有時(shí)候,你得采用經(jīng)典的技術(shù):系統(tǒng)。
專(zhuān)家系統(tǒng)是一種基于規(guī)則的引擎,它基于專(zhuān)家們的集體智慧。它是人工(AI)領(lǐng)域歷史最悠久的創(chuàng)新之一,實(shí)際應(yīng)用可以追溯到上世紀(jì)70年代。
數(shù)據(jù)科學(xué)界經(jīng)常開(kāi)玩笑說(shuō),專(zhuān)家系統(tǒng)好比是過(guò)時(shí)的恐龍,它們很有意思,但是就現(xiàn)代應(yīng)用而言不切實(shí)際。我完全不同意,人工智能領(lǐng)域沒(méi)有哪一項(xiàng)進(jìn)步完全取代得了專(zhuān)家系統(tǒng)的功能和效用。此外,由于專(zhuān)家系統(tǒng)已存在相當(dāng)一段長(zhǎng)的時(shí)間,你可以運(yùn)用久經(jīng)考驗(yàn)的最佳實(shí)踐。下面是使用專(zhuān)家系統(tǒng)、讓你開(kāi)始入手的六個(gè)最佳實(shí)踐。
1.征集需求
構(gòu)建一套專(zhuān)家系統(tǒng)最困難的部分就是,與實(shí)際的專(zhuān)家們見(jiàn)面討論。與任何最終用戶(hù)見(jiàn)面討論已夠困難了,而你項(xiàng)目需要的那些專(zhuān)家是非常特殊的最終用戶(hù),每個(gè)人都想要與之討論。在征集需求之前,要征得管理層的同意,批準(zhǔn)你與專(zhuān)家們見(jiàn)面討論。
比如說(shuō),我在接觸一家跨國(guó)交易處理時(shí),整個(gè)公司只有五六個(gè)人知道交易網(wǎng)絡(luò)的內(nèi)部結(jié)構(gòu)。如果你沒(méi)有讓管理層承諾專(zhuān)家到時(shí)抽出時(shí)間,那么你休想與他們談?wù)?5分鐘以上。
2.進(jìn)行分析
盡量少花時(shí)間在分析上。忍住對(duì)專(zhuān)家進(jìn)行定性分析的沖動(dòng),這沒(méi)有必要。
專(zhuān)家系統(tǒng)旨在進(jìn)行自己的分析。艱苦的工作在分析中并不多,難就難在框架的搭建和微調(diào)上。在這方面,它類(lèi)似神經(jīng)網(wǎng)絡(luò)。你的任務(wù)就是告訴系統(tǒng)如何思考,然后讓系統(tǒng)為自己處理思考任務(wù)。
3.設(shè)計(jì)框架
將冗余性(verbosity)設(shè)計(jì)到你的專(zhuān)家系統(tǒng)框架中。專(zhuān)家系統(tǒng)由兩個(gè)基本部分組成:知識(shí)庫(kù)和推理引擎。知識(shí)庫(kù)負(fù)責(zé)存儲(chǔ)關(guān)于設(shè)計(jì)領(lǐng)域的事實(shí),而推理引擎負(fù)責(zé)將歸納(正向鏈)推理和演繹(反向鏈)推理運(yùn)用到知識(shí)庫(kù)中的事實(shí)。
這兩個(gè)系統(tǒng)都必須精心設(shè)計(jì),讓你可以了解專(zhuān)家系統(tǒng)在想什么。你需要非常詳細(xì)地了解專(zhuān)家系統(tǒng)知道的情況,以及它如何得出結(jié)論。先進(jìn)系統(tǒng)更側(cè)重于采用自然語(yǔ)言界面――這是我支持的一個(gè)最佳實(shí)踐。
4.開(kāi)發(fā)系統(tǒng)
開(kāi)發(fā)速度要快。與分析一樣,如果你在開(kāi)發(fā)方面花了大量的時(shí)間,那么做法不當(dāng)。你唯一要開(kāi)發(fā)的東西就是框架(知識(shí)庫(kù)和推理引擎)。暫時(shí)盡量避免編寫(xiě)程序代碼。
然而,要從長(zhǎng)計(jì)議。在程序代碼可以取代框架推理的地方構(gòu)建接口。雖然將程序代碼換成基于框架的推理有悖于大眾的看法,但是一旦規(guī)則得到了全面審查,它就是你專(zhuān)家系統(tǒng)的一種實(shí)際延伸。程序代碼讓你有機(jī)會(huì)大大加快執(zhí)行,這對(duì)許多應(yīng)用程序(比如嵌入式系統(tǒng))來(lái)說(shuō)更切實(shí)際。
5.訓(xùn)練系統(tǒng)
不要低估了合理訓(xùn)練專(zhuān)家系統(tǒng)所需要投入的時(shí)間、精力和專(zhuān)家數(shù)量。我使用“訓(xùn)練”這個(gè)詞很寬泛――專(zhuān)家系統(tǒng)嚴(yán)格上來(lái)說(shuō)并不是一種學(xué)習(xí)系統(tǒng)。但是,決定專(zhuān)家系統(tǒng)成敗的卻是領(lǐng)域知識(shí)以及它如何進(jìn)行推理。專(zhuān)家必須是這個(gè)過(guò)程的一部分,因?yàn)橐坏佀土诵枨笳骷A段收集的信息,專(zhuān)家就需要微調(diào)引擎。
這時(shí)候,情況變得有意思起來(lái)。讓一個(gè)專(zhuān)家解釋過(guò)程原本夠難的,更不用說(shuō)讓一組專(zhuān)家就合適的過(guò)程達(dá)成共識(shí)了。到頭來(lái)這是值得的,但是勤奮和耐心在這個(gè)階段會(huì)給你帶來(lái)好處。
6.改進(jìn)系統(tǒng)
請(qǐng)專(zhuān)家委員會(huì)做以后的審查。一旦你的專(zhuān)家系統(tǒng)部署到位,很難長(zhǎng)時(shí)間留住你的專(zhuān)家;他們需要定期審查實(shí)際的結(jié)論,確保你的系統(tǒng)仍盡到作為專(zhuān)家的責(zé)任。事先獲得他們的這種承諾。就像你在需求征集階段那樣征得管理層的同意――可以這么說(shuō),專(zhuān)家系統(tǒng)穩(wěn)定下來(lái)后,至少每年每季度你需要一次得到他們的關(guān)注。在你開(kāi)始動(dòng)手之前,確保每個(gè)人對(duì)這個(gè)想法意見(jiàn)一致。
結(jié)束語(yǔ)
盡管種種新奇的系統(tǒng)和算法涌入數(shù)據(jù)科學(xué)界,但使用一種有幾十年歷史,并久經(jīng)考驗(yàn)的:專(zhuān)家系統(tǒng)根本不會(huì)錯(cuò)。別因?yàn)樵O(shè)計(jì)的簡(jiǎn)潔性而誤以為它過(guò)時(shí)或無(wú)效,事實(shí)恰恰相反。
只要你能找到合適的專(zhuān)家,就可以立即搭建起一套專(zhuān)家系統(tǒng);與此同時(shí),其他數(shù)據(jù)科學(xué)家仍在為壓縮分類(lèi)絞盡腦汁。掌握了這里給出的幾個(gè)要點(diǎn),以及你自己汲取的經(jīng)驗(yàn)教訓(xùn),你可能自己都沒(méi)意識(shí)到,就成了專(zhuān)家系統(tǒng)的專(zhuān)業(yè)人士。
責(zé)任編輯:姚泓澤