Houdini中的智能推理:模糊邏輯

2021-03-02 視域傳奇

       通過我最近接到的問題反饋來看,有不少學員和朋友都對模糊邏輯充滿興趣,希望能對這部分知識有個較好的認識與理解,特安排此文章幫助大家學習。因為模糊邏輯是個比較大的問題,屬於早期的人工智慧三大算法之一(另外兩個是人工神經網絡與進化計算),其內容恐怕連幾百頁的書都裝不下,鑑於此,本篇文章旨在讓大家能夠理解其基本原理,能夠在Houdini中進行基本推理即可,在講解方面我也儘量做到淺顯易懂,儘量迴避枯燥的數學公式(順便說下,以後大家提問最好直接微信,qq的話我一般不會及時看到)。

       1965年,加州大學伯克利分校電子工程系主任Lotfi Zadeh教授發表了著名的論文《Fuzzy sets》,後被譽為「模糊邏輯之父」。我們首先來看模糊邏輯的定義:「基於隸屬度而非二值邏輯中清晰隸屬關係的知識表達的一組數學原理」。該定義較為抽象,下面我用大白話做個簡單解釋。在我們的世界中,存在兩種集合,一種是清晰集,一種是模糊集。比如拿考試成績來說,低於60分是不及格,而等於或高於60分是及格,因此60就是區分及格與不及格的明確分界線,所以構成的是清晰集,也就是定義中所指的二值(及格與不及格)邏輯清晰隸屬關係的含義。那麼,非二值邏輯清晰隸屬關係指的就是,區分兩個集合併沒有一個明確的分界線,他們的分界線是含糊不清的。例如:我們現在不用及格與不及格(即60分)來衡量一個人的學習水平,而是改為優、良、中、差來衡量,那麼很明顯,這種衡量方式就是含糊不清的,比如一個人得了69分,說他是中呢,有點不夠格,說他是差呢,只能說是有些差,但又不是特別差,所以這個分數處於中和差之間的某個狀態比較合理,可見它跨越了兩個集合(中和差),並沒有明確的分界線,這就是模糊的隸屬關係。像這樣的例子生活中隨處可見,像如下所列:

人的財富,到底多少算富,多少算窮?

一個西瓜,到底多大算大,多大算小?

學習Houdini,到底掌握到什麼程度才算好,什麼程度算是不好?

       由此可見,生活中的實際問題大多都是模糊的,並沒有一個明確的分界線。我用人類語言描述模糊邏輯,相信大家都能理解,但是如何讓計算機去理解呢,所以,我們要藉助一定的數學手段並定量的去表達它,如下圖所示:

      上圖橫軸是人的身高,縱軸是隸屬度,隸屬度為0表示絕對是矮的,隸屬度為1表示絕對是高的,現在我們就可用曲線來表達清晰集(有明確分界線)與模糊集(沒有明確分界線),對於模糊集來說,矮與高之間是有個光滑過度的,不過上圖對於身高的描述太過於籠統,我們可以做的更加精確些,把身高分為矮、中、高三個等級,表示曲線如下圖所示:

      由此可見,模糊集更加客觀的反映了矮與中、中與高之間的狀態,比上面的清晰集在數據的表達上更加準確,可以進一步的表達人類語言中的程度副詞,例如:比較高,可以定位在180cm到190cm之間的區域,確實高,可以定位在大於190cm的區域。我們可以根據程度的不同,進一步劃分出更多的區域來提高精度(至於區域多少完全由用戶根據具體問題自行設計)。我們可以進一步的用數學語言來表達它,如上圖,可以設橫軸為x,縱軸隸屬度為μ(x),那麼隸屬度μ(x)就是橫軸身高的函數。

       模糊集之間是可以相互協作的,這也正是使用最頻繁的三大集合操作,他們分別是:補集、交集、併集,下面分別介紹:

       補集是集合的相反操作,設模糊集為A,則其補集可表示為:

A的補集 = 1 - A,如下圖所示:

註:集合操作都有相應的數學符號,但是微信對於符號的編輯比較麻煩,故這裡就不用數學符號來表示相應的操作了,只要理解其含義足矣。

       交集是兩個集合重疊的部分,假設有兩個模糊集A和B,則其交集可表示為:A與B的交集 = min(A,B),也可用A and B表示,如下圖所示:

       併集是兩個集合疊加起來,假設有兩個模糊集A和B,則其交集可表示為:A與B的併集 = max(A,B),也可用A or B表示,如下圖所示:

       除了上述最基本的操作,模糊集之間還有包含關係,以及交換性、結合性、分配性、冪等性、恆等性、自乘性、傳遞性、摩根定律...等性質,但是這些性質一般在構造比較專業、複雜的人工智慧程序中經常用到,而在Houdini中相對來說邏輯都不太複雜,所以很少用到這些性質,這裡就不一一介紹了。(有興趣深入學習的學員或朋友,可以單獨問我)

      下面我們再引入模糊規則的概念,所謂模糊規則就是根據人類積累的經驗所做的各種假設,下面通過清晰規則與模糊規則的區別,來幫助大家理解此概念,比如下面這個例子:

if  車速>100

then    剎車距離較長

if是如果的意思,then是那麼的意思

       上面的if與then就構成了一個非常簡單的規則,對於車速的判斷有個明確的值,因此這個規則屬於清晰規則,而模糊規則是沒有明確值的,只能是個程度上的描述,如:

if  車速很快

then    剎車距離較長

       到底車速是多少,算得上很快呢,那可能每個人的見解都不同,因此它是個模糊值,這就是模糊規則。不難發現,其實我們生活中絕大多數規則都是模糊的,因此它比清晰規則更具實際意義。

       值得注意的是,if後面的模糊集與then後面的模糊集存在著一定數量上的對應關係,例如:

if  個子很高

then  體重很大

       上面的模糊推理是合乎經驗的,除了這個大體上的認識以外,我們還可以將他們放在一起進行比較,來觀察他們的對應關係,從而可以進行定量的分析,如下圖所示:

       從圖中不難看出,隨著左圖中身高的不斷增加,對應右圖中的體重也不斷增加,而且他們有著明確的數量上的對應關係,這就為以後的複雜推理提供了依據。一般來說,我們可以從人類專家那裡獲得一些規則,甚至這些規則之間存在著一定矛盾也沒關係,每個規則的輸出都是一個模糊集,但最終的推理結果我們需要的是一個精確值,而不能是個模糊值。例如:通過模糊邏輯的推理,預測一個項目的風險大小,推理結果不能是個「高風險」就敷衍了事,我們通常需要得到一個明確的風險評估值,比如83%的風險,這樣的結果才更具有指導意義。所以,我們還需要將模糊的結果進行清晰表示,這個過程稱為逆模糊化,此過程稍微複雜些,因此下面通過一個完整實例來幫助大家去理解模糊推理的整個過程,一般分為4步:

1、輸入精確值,並將其模糊化

2、根據模糊規則,評估出模糊結果

3、合併各個模糊結果

4、逆模糊化

       本例使用模糊推理去評估一個商業項目的風險值,首先從人類以往的經驗中獲得足夠的規則,這裡我們就以三個規則來演示,規則如下:

規則1:

if  項目資金是充足的 or 人員配置是很少的

then  低風險  

規則2:

if  項目資金是一般的 and 人員配置是很多的

then  中風險

規則3:

if  項目資金是很少的

then  高風險

       我們可以將項目資金分為三個模糊集,分別是:資金充足、資金一般、資金很少。將人員配置分為兩個模糊集,分別是:人員配置多、人員配置少。將風險分為三個模糊集,分別是:低風險、中風險、高風險。除了進行相應的模糊集劃分,還應該根據經驗將這些模糊集進行準確表達,也即用曲線方式表達出來,項目資金的三個模糊集如下圖所示:

註:模糊集曲線可以採用曲線形式,但更多時候取直線即可,因為這樣會為後續的計算帶來方便,而且速度較快,至於曲線的寬度與衰減強度一般由經驗確定

       人員配置的兩個模糊集如下圖所示:

      風險的三個模糊集如下圖所示:

      準備好上述信息後,就可以開始進行模糊推理了。

第1步:輸入精確值,並將其模糊化

       先將項目資金的三個模糊集放在一起表示,並給定一個輸入值x1,查看該輸入值與哪些模糊集相交,並獲取交點的隸屬度,即縱軸坐標。同樣地,也將人員配置的兩個模糊集放在一起,並給定一個輸入值y1,查看該輸入值與哪些模糊集相交,並獲取交點隸屬度,具體過程可參見下圖:

圖中:A1表示資金很少,A2表示資金一般,A3表示資金充足。

          B1表示人員配置少,B2表示人員配置多。

          C1表示低風險,C2表示中風險,C3表示高風險

          x1表示資金的精確輸入,y1表示人員配置的精確輸入。

第2步:根據模糊規則,評估出模糊結果

規則1:

if  項目資金是充足的 or 人員配置是很少的

then  低風險

       以上規則表示,在給定A3與B1模糊集,且對應輸入值為x1與y1時,得到的是C1模糊集,如下圖所示:

       圖中含義很好理解,A3模糊集在取x1輸入時,隸屬度為0,B1模糊集在取y1輸入時,隸屬度為0.1,因為二者是or併集操作,所以最終結果是C1取0.1。

規則2:

if  項目資金是一般的 and 人員配置是很多的

then  中風險

       以上規則表示,在給定A2與B2模糊集,且對應輸入值為x1與y1時,得到的是C2模糊集,如下圖所示:

       上圖表示,A2模糊集在取x1輸入時,隸屬度為0.2,B2模糊集在取y1輸入時,隸屬度為0.7,因為二者是and交集操作,所以最終結果是C2取0.2。

規則3:

if  項目資金是很少的

then  高風險

       以上規則表示,在給定A1模糊集,且對應輸入值為x1時,得到的是C3模糊集,如下圖所示:

        上圖表示,A1模糊集在取x1輸入時,隸屬度為0.5,所以最終結果是C3取0.5。至此,我們一共評估出了三個模糊集結果。

第3步:合併各個模糊結果

       此步驟非常簡單,僅僅是將上面得到的三個模糊集結果合併起來,合併方式是求併集,如下圖所示:

第4步:逆模糊化

       逆模糊化就是將上一步所得到的合併好的模糊集進行清晰化處理,換句話說,就是從這個模糊集中輸出一個明確的數值,該數值的獲取非常明顯,獲取模糊集圖形的重心位置即可,如下圖所示:

       上圖中的z1就是整個模糊推理的最終結果,即最終的風險值百分比。不過確定重心還是需要進行一些計算的,通常可以用加權平均值的方法來求,這是物理中求不規則物體質心的標準方法,當然理論物理中是需要積分來求的,但我們這個實例則完全不用,只需做個簡單的離散採樣即可,一般採樣到20基本足矣滿足要求,我們這裡僅採樣10份即可,如下圖所示:

       加權平均的計算方法就是:將值(橫軸)與權重(縱軸)對應相乘並累加起來,再去除以權重的總和。具體算式如下:

a = (0+10+20)*0.1+

      (30+40+50+60)*0.2+

      (70+80+90+100)*0.5

b = 0.1+0.1+0.1+

      0.2+0.2+0.2+0.2+

      0.5+0.5+0.5+0.5

z1 = a/b = 67.4

       至此,根據所給的三個規則,應用模糊邏輯進行推理,所得到的風險大小評估是:67.4%

       最後,我們將上述推理過程整理成Houdini的節點,如下圖所示:

       一般來說,一個複雜的推理系統,可能需要成百上千的規則,而這些都是需要一定的先驗知識的,所以人類專家的指導作用是至關重要的,當我們搜集的因果關係信息達到一定程度時,則完全可以使用現在更加主流的機器學習方法,因此對於推理系統的建立方法有很多,但是,Houdini只內置了模糊邏輯節點(或函數),所以該方法仍為Houdini用戶的首選!

更多技術請關注

相關焦點

  • R語言實現模糊邏輯推理模型
    模糊邏輯推理是以模糊集合論為基礎描述工具,對以一般集合論為基礎描述工具的數理邏輯進行擴展,從而建立了模糊推理理論。
  • 傳統邏輯、模糊邏輯與量子邏輯:它們的關係與應用
    邏輯數學表達式為:V((P ∩ P)) = 1,或者 V(P ∩ P) = 0。量子邏輯是關於量子理論研究中涉及的命題、推理等問題的邏輯。美國數學家貝霍夫(Birkoff)和量子力學家馮·諾曼(von Neumann)於1936年在《量子力學的邏輯》一文中,最早提出量子邏輯,所以也稱為貝霍夫-馮諾曼(簡稱B-vN)量子邏輯。
  • 機器智能——模糊邏輯(Fuzzy Logic)
    模糊邏輯嚴格意義上來說與之前講的機器學習沒有什麼太大的關係,但是對於人工智慧AI(或者說是機器智能)來說,我認為是一個非常重要的概念。所以這篇文章就來講講什麼是模糊邏輯,以及模糊邏輯的應用。本文首發在簡書,但是由於存在外鏈,最近簡書屏蔽了很多文章,故將文章重發在微信公眾號。1.
  • 模糊邏輯與模糊系統方向徵稿
    伍冬睿美國南加州大學電子工程專業博士,華中科技大學人工智慧與自動化學院教授、博導,圖像信息處理與智能控制教育部重點實驗室副主任,國家特聘專家(青年)。主要研究方向為腦機接口、機器學習、智慧醫療、計算智能、情感計算。
  • 中國傳統文化中有沒有邏輯概念與推理?
    無可否認,邏輯是個洋名,是希臘語λγο發展到近代西方語言相應詞彙英語logic,法語logique的音譯。1902年嚴復將其譯為「名學」,但這不合名家名學中「名」的本意。當然,這決不是說中華文明中就不存在邏輯概念與推理。老子就是中國邏輯思辨的老祖宗。韓非子等法家的著作,就是相當嚴謹的演繹歸納非形式邏輯自然語言論證,尤其是圓熟的歸謬法來駁斥謬論並進行立論,堪與柏拉圖比肩。中國人的這種邏輯思辨,也沒有因為罷黜百家獨尊儒學而完全毀棄。
  • 諾曼 houdini免費基礎教程 !目錄! 免費獲得價值3880元的基礎教程
    _並且發射源在視窗不可見_出了問題如何處理_houdini場景數據的感知_SOPLEVEL位移和縮放對DOP的影響_老篝火教程機器碼播放        諾曼houdini教程網_如何在我們的pyro中加入速度場配合模擬_遇到問題如何解決_對houdini場景的感知        諾曼houdini原創中文教程網_基礎教程__suface場的重要性,和pyro與flip背後實際都是靠體積驅動的強調
  • 多元智能教育:數學邏輯智能
    新東方網>學前>幼兒教育>幼兒園>幼兒園教案>正文多元智能教育:數學邏輯智能   數學-邏輯智能和語言智能一起組成了學業性智能.這兩種智能在學校裡受到了絕對的重視,這是因為從傳統角度看
  • 類比推理中的邏輯
    今天為大家帶來事業單位判斷推理:類比推理中的邏輯。在事業單位和公考考試中有這樣一種題型,題目設置通俗易懂,沒有任何理解難度,但選擇上有的人「大獲全勝」,有的人「跌入谷底」,可謂兩極分化,那是什麼樣的題型呢?沒錯,就是類比推理。
  • houdini中不得不掌握的技術集錦(3) Vops詳解
    houdini中的vops介紹大綱1houdini中的vops    1.1vops VS其他數據資產    1.2簡單的案例    1.3有什麼其他可以做?    1.4 Vops VS houdini的其他部分    1.5 案例-變形box    1.6 vop sop節點    1.7更深入學習你也許已經開始涉足houdini了,按照一些教程在做案例,然後想「好了,很有意思,但是重點是什麼?」
  • 邏輯推理之圖形推理
    綜合素質在教師資格考試中,主要考查五方面的內容,分別是職業理念、職業道德、教育法律法規、文化素養及基本能力。而基本能力這塊考查邏輯推理能力、計算機操作能力、閱讀理解能力及寫作能力。邏輯推理在考試中一般只涉及兩道單選題,這兩道題對我們廣大考生而言,稍許有些難度,但掌握了相關解答技巧也是能夠做出來的。接下來將要介紹邏輯推理部分有關圖形推理的相關技巧。
  • 基於模糊控制的恆流源
    模糊控制是以模糊集合理論、模糊語言變量及模糊推理為基礎的一種智能控制。模糊控制對數學模型的依賴性弱,不需要建立過程的精確數學模型,並具有良好的魯棒性和適應性。模糊控制系統的原理如圖2所示。其次根據專家經驗劃分各變量的模糊子集並確定各子集的隸屬函數,其中模糊子集的劃分要使相鄰子集隸屬函數相交點處隸屬度為0.2~0.5左右。最後建立模糊控制規則,即根據輸入量的模糊子集確定輸出量的模糊子集。2.2.1 選擇模糊系統的結構及其邏輯算法模糊控制器選用採樣電壓的偏差e和偏差變化率ec作為輸入量,因此該模糊控制器為二維模糊控制器。
  • 有趣的推理,探索邏輯推理的奧秘
    日常生活中我們常常會遇見一些問題需要運用到邏輯推理才能解決。同樣在數學中我們也需要運用到邏輯推理,三年級的孩子常用的方法是列表法。圖片展示:課題內容說明1.什麼是推理?我們從一句話或者幾句話中,得出另外一個新的認識,這個過程就叫做推理。
  • 【原創教程】史上最完整houdini sop 中文完全精通教程_CG獵人houdini之道原創教程第二卷Geometry卷I
    vex中的所有函數講解。在第一階段的教程20個完整案例中,大家通過案例快速熟悉和掌握了houdini的大部分功能,樹立了信心和提高了學習動力,同時也激起了大家更多的好奇,知道了自己的學習方向。進入第二階段,CG獵人會完完整整第從原理,理論,節點,功能,技巧,案例全面講解houdini。而其中的第二部sop完整講解第一部分,就是專門針對houdini的核心基礎sop模塊250多個節點進行核心的講解。
  • 【CG獵人】很有可能是目前最全的houdini教程!吐血整理
    CMIVFXArnold for Houdini  houdini中arnold渲染器講解Dynamics Tips and Tricks in Houdini 動力學中的提示和技巧CGSociety - Houdini PyroFx in Film Production AllanMckay 生產中的pyro煙火製作
  • 人工智慧研究:經典推理和非經典推理
    (2)人工智慧不僅要把邏輯應用於學科研究,而且要探究邏輯的應用問題。(3)人工智慧把邏輯作為重現和模擬智能的手段,而不像數學家那樣把邏輯作為改造和發展數學的基礎。上述對邏輯的界定對人工智慧研究的請多方面產生了深刻影響,如邏輯研究的重點理論深度和形式化描述程序等。
  • 模糊邏輯更易操作 飛利浦電飯煲熱賣
    模糊邏輯更易操作 飛利浦電飯煲熱賣 >>科技買手,全網尖兒貨打折/特賣推薦平臺<< 萬維家電網【原創】 作者:蘇潔 編輯:張良鈺 12年07月11日 06時49分16秒
  • 邏輯判斷推理口訣
    邏輯判斷推理口訣由北京人事考試網提供:更多關於邏輯判斷推理口訣,邏輯判斷推理的內容請關注北京人事考試網!或關注北京華圖微信公眾號(bjhuatu),北京華圖諮詢電話:400-010-1568。
  • 【離散數學 | 數理邏輯之命題邏輯】命題邏輯的推理理論
    所謂推理,是指從一組前提合乎邏輯地推出結論的思維過程.在這裡需要注意,推理的有效性和結論的真實性是不同的.所謂推理有效,是指它的結論是它的前提合乎邏輯的結果,如果它的前提都為真,那麼所得的結論也必然為真,而並不要求前提或結論一定為真或為假,前提的實際真假不作為確定推理有效性的依據,如果推理是有效的話,那麼不可能出現它的前提都為真時
  • 判斷推理:必然性推理之樸素邏輯
    今天為大家帶來判斷推理題庫之必然性推理之樸素邏輯。希望可以幫助各位考生順利備考!在事業單位考試中常常讓考生頭疼又常考的知識點就是我們邏輯判斷中的必然性推理中的樸素邏輯題目,而這類題目,題幹往往涉及的條件信息較多,包含了背景、人物話語、真假斷定等在內的信息,對於這些信息的篩選整合對於很多的學生來說仍然是一塊容易丟分的點,但是對於這一類型的題目,其實要找準做題突破口並掌握一些解題方法,在做題過程中,學會運用,題目相對來說比較容易突破。
  • 怎樣才能擁有《唐人街探案2》中秦風的邏輯推理能力?
    這是大偵探福爾摩斯的名言,對於觀察入微,邏輯推理能力超強的人,我們往往會深深發出感嘆和崇拜,擁有一個優秀的邏輯推理能力,註定為讓你在人群中脫穎而出,你的推理能力如何?推理能力如何而來呢?面試重點考察要素:推理能力  有這樣一道面試題目:村子中有50個人,每人有一條狗。