[人工智慧導論](https://app.notion.com/p/3e6fc631b0308131b213f0a3d93fe91d) › [W4(10/1)](https://app.notion.com/p/3ecfc631b03081e895d2c5f3aec0353e) › 02|Ch12 Part 2(2021 錄影)影片 [0:15:54–0:41:38](https://www.youtube.com/watch?v=iuAeHIfOscA&t=954s)|投影片 Ch12 p.27–39|上一章 [01 機率的表示法與基本公理(0:00–0:15)](https://app.notion.com/p/3ecfc631b030815aa226c2d0b9d9456b)|下一章 [03 貝氏定理與腦膜炎例子(0:00–0:18)](https://app.notion.com/p/3ecfc631b0308195b80eee3967f27362) 跳過提示:(0:24:37–0:25:42) 老師在逐格加表算 0.6 和 0.4,聽不懂可以直接跳到 [0:25:56](https://www.youtube.com/watch?v=iuAeHIfOscA&t=1556s),接著講「0.6 加 0.4 一定等於 1,而且分母都一樣」。 跳過提示:(0:28:18–0:30:15) 老師在對著表唸 α 後面那兩組數字,聽不懂可以直接跳到 [0:30:24](https://www.youtube.com/watch?v=iuAeHIfOscA&t=1824s),接著講「這是在玩數學嗎?不用知道 P(toothache) 也能算」。 ## 重點 1. 機率推論(probabilistic inference)就是:看到證據(病人說牙痛),算出想問的事(有沒有蛀牙)的事後機率。最直接的知識庫是「完整聯合分布表」,把每一種可能世界的機率都列出來。 2. 有了表,三招就夠用:要某個命題就把成立的格子加起來;只要某個變數就把其他變數加掉(marginalization);要條件機率就用 α 正規化,連分母 P(toothache) 都不用知道。 3. 獨立(independence)讓表大幅變小:天氣跟牙齒無關,32 格的表可以拆成「天氣 4 格 × 牙齒 8 格」。老師提醒「大家不要小看」獨立性。 ## Exam-ready - **Probabilistic inference**: "We describe a simple method for probabilistic inference—that is, the computation of posterior probabilities for query propositions given observed evidence."(Ch12 p.27) - 中文:機率推論就是「給定已經觀察到的證據,算出想問的那個命題的事後機率」。白話:看到線索,算某件事有多可能。難字:posterior(事後的)、query(要問的問題)、evidence(證據)。 - **Probability of a proposition (P(cavity ∨ toothache) = 0.28)**: "Simply identify those possible worlds in which the proposition is true and add up their probabilities."(Ch12 p.28) - 中文:要算一個命題的機率,只要找出這個命題成立的所有可能世界,把它們的機率加起來。白話:符合條件的格子全部加總。難字:possible worlds(可能世界,也就是表裡的一格)、proposition(命題)。 - **Marginalization (P(cavity) = 0.2)**: "This process is called marginalization, or summing out—because we sum up the probabilities for each possible value of the other variables, thereby taking them out of the equation."(Ch12 p.29) - 中文:把其他變數每一種可能值的機率都加起來、讓它們從式子裡消失,這個過程叫 marginalization,也叫 summing out。白話:只想看蛀牙,就把牙痛、探針那些變數全部加掉。難字:marginalization(邊緣化)、summing out(加掉)。 - **Normalization constant α (α = 1/P(toothache))**: "It can be viewed as a normalization constant for the distribution P(Cavity | toothache), ensuring that it adds up to 1."(Ch12 p.32) - 中文:共同的分母 1/P(toothache) 可以看成 P(Cavity | toothache) 這個分布的正規化常數,確保它加起來等於 1。白話:α 只負責把結果湊成總和 1。難字:normalization constant(正規化常數)、ensuring(確保)。 - **Normalization**: "In other words, we can calculate P(Cavity | toothache) even if we don't know the value of P(toothache)!"(Ch12 p.33)【老師強調】(0:33:08) - 中文:換句話說,就算不知道 P(toothache) 是多少,我們還是算得出 P(Cavity | toothache)。白話:分母不用知道,把分子自己湊成總和 1 就好。難字:calculate(計算)、value(數值)。 - **Normalization shortcut**: "Normalization turns out to be a useful shortcut in many probability calculations, both to make the computation easier and to allow us to proceed when some probability assessment (such as P(toothache)) is not available."(Ch12 p.33) - 中文:正規化在很多機率計算裡是好用的捷徑,一方面讓計算變簡單,一方面讓我們在缺少某些機率(例如 P(toothache))時還能繼續算。白話:省工又能救急。難字:shortcut(捷徑)、proceed(繼續進行)、assessment(估計值)。 - **General inference (P(X | e) = α P(X, e) = α Σy P(X, e, y))**: "Notice that together the variables X, E, and Y constitute the complete set of variables for the domain, so P(X, e, y) is simply a subset of probabilities from the full joint distribution."(Ch12 p.34) - 中文:要問的 X、證據變數 E、其他沒觀察到的 Y,三者合起來就是這個領域的全部變數,所以 P(X, e, y) 只是完整聯合分布表裡的一部分格子。白話:先把 y 加掉,再湊成 1,需要的數字全都在表裡。難字:constitute(構成)、subset(一部分)。 - **Independence (P(a | b) = P(a) or P(b | a) = P(b) or P(a ∧ b) = P(a)P(b))**: "The property we used in Equation (13.10) is called independence (also marginal independence and absolute independence)."(Ch12 p.37)【老師強調】(0:39:16) - 中文:Equation 13.10(天氣不受牙齒影響)用到的性質叫做獨立,也叫 marginal independence 或 absolute independence。白話:知道一個,不會改變另一個的機率。難字:independence(獨立)、absolute(絕對的)。 - **Independence and domain knowledge**: "Independence assertions are usually based on knowledge of the domain."(Ch12 p.38) - 中文:「這兩個變數獨立」這種說法,通常是根據對這個領域的了解。白話:天氣跟蛀牙無關,是常識告訴你的,不是算出來的。難字:assertions(斷言、說法)、domain(領域)。 - **Factoring (P(Toothache, Catch, Cavity, Weather) = P(Toothache, Catch, Cavity) P(Weather))**: "If the complete set of variables can be divided into independent subsets, then the full joint distribution can be factored into separate joint distributions on those subsets."(Ch12 p.38) - 中文:如果全部變數可以分成幾組互相獨立的小組,完整聯合分布就可以拆成每一組各自的聯合分布相乘。白話:天氣跟牙齒無關,32 格拆成「牙齒 8 格 × 天氣 4 格」。難字:subsets(子集合)、factored(拆成相乘)。 ## [0:15:54](https://www.youtube.com/watch?v=iuAeHIfOscA&t=954s) 機率推論與完整聯合分布 前面都是機率複習,從這裡開始才「真的跟 AI 有關」。機率推論的意思是:根據已經觀察到的事實(evidence),去算某件想問的事(query)的事後機率(posterior probability)。 最直接的做法,是準備一張完整聯合分布表當知識庫,老師唸的是「We use the full joint distribution as the knowledge base from which answers to all questions may be derived」(所有問題的答案都能從這張表推出來)。例子是牙醫:三個是非題變數 Toothache(牙痛)、Cavity(蛀牙)、Catch(牙醫的探針有沒有被牙齒卡住),所以表有 2×2×2=8 格,八格加起來等於 1,這是機率公理的要求(Ch12 p.28)。 下面這張圖是整章的流程:證據和表一起進去,算出想問的機率。 ```mermaid flowchart LR A["觀察到的證據
病人說牙痛"] --> C["查完整聯合分布表
8 格、總和 1"] B["想問的事
有沒有蛀牙"] --> C C --> D["加總需要的格子"] D --> E["正規化"] E --> F["事後機率
P(Cavity | toothache)"] ``` 為什麼探針卡住有用?探針卡住通常代表牙齒上有洞,所以 Catch 是蛀牙的另一個線索。 比喻:聯合分布表像一本「所有病人紀錄的統計總表」,每一種症狀組合各占多少比例都寫好了,看診時直接翻表。 考試可能怎麼問:What is probabilistic inference, and what role does the full joint distribution play?
用生活例子講,事後機率是什麼? 還沒看到任何線索前,你對「這個人有沒有蛀牙」只有一個大概的猜測。病人一開口說「我牙痛」,你的猜測就會更新,這個「看到線索之後」的機率就是事後機率。整章做的事,就是教你怎麼從一張表把這個更新後的數字算出來。
## [0:18:51](https://www.youtube.com/watch?v=iuAeHIfOscA&t=1131s) 查表加總:P(cavity ∨ toothache) 要算某個命題的機率,就把「這個命題成立的所有格子」加起來。例如「有蛀牙或有牙痛」,就是把有蛀牙的四格、加上有牙痛但沒蛀牙的兩格,投影片說這是六個可能世界,總共 0.28。 下表是投影片上的完整聯合分布表(Ch12 p.27,課本 Figure 13.3): | 牙痛? | 探針卡住? | 有蛀牙 | 沒蛀牙 | |---|---|---|---| | 牙痛 | 卡住 | 0.108 | 0.016 | | 牙痛 | 沒卡住 | 0.012 | 0.064 | | 沒牙痛 | 卡住 | 0.072 | 0.144 | | 沒牙痛 | 沒卡住 | 0.008 | 0.576 | 「或」為什麼不能直接把蛀牙那四格和牙痛那四格全部相加?因為「有牙痛又有蛀牙」的兩格(0.108、0.012)兩邊都有,會被算兩次,所以第二次只加還沒算過的兩格。 比喻:像點名,「戴眼鏡或穿外套的人」舉手,同時符合的人只算一次。 考試可能怎麼問:How do you compute the probability of a proposition from the full joint distribution?
它到底怎麼運作?(進階,可跳過) 有蛀牙的四格:0.108 + 0.012 + 0.072 + 0.008 = 0.2。 有牙痛但沒蛀牙的兩格:0.016 + 0.064 = 0.08。 P(cavity ∨ toothache) = 0.2 + 0.08 = 0.28。 反過來驗算(我補充):既不蛀牙也不牙痛的兩格是 0.144 + 0.576 = 0.72,剛好等於 1 − 0.28。
## [0:20:08](https://www.youtube.com/watch?v=iuAeHIfOscA&t=1208s) Marginalization 與 conditioning 很多時候我們只關心一個變數,例如「有蛀牙的機率」。做法是把其他變數的所有可能值都加掉:牙痛和沒牙痛加起來、探針卡住和沒卡住也加起來,得到 P(cavity) = 0.2,投影片稱為 cavity 的 marginal probability(邊緣機率,Ch12 p.29)。這個動作叫 marginalization(邊緣化),也叫 summing out(加掉),老師說「這件事情是很常做的」。 為什麼加掉之後式子裡就看不到牙痛和探針?因為你在乎的只有蛀牙,蛀牙的人可能牙痛也可能不痛,把兩種情況都包進來,那些變數就被「吸收」掉了。 如果先用 product rule 把每一格拆成「條件機率 × 那個條件的機率」再加總,就叫 conditioning。兩者算的是同一件事,只是寫法不同。 比喻:全班成績單有性別、科系、年級,你只想知道「及格率」,就不分性別、科系、年級,全部人一起算。 考試可能怎麼問:What is marginalization (summing out), and how is conditioning related to it?
它到底怎麼運作?(進階,可跳過) 一般式:P(Y) = Σz P(Y, z),z 跑過其他變數的所有組合。 套到例子:P(cavity) = 0.108 + 0.012 + 0.072 + 0.008 = 0.2,這裡的 z 是「牙痛有沒有」和「探針卡不卡」的四種組合。 Conditioning:把 P(Y, z) 用 product rule 改寫成 P(Y | z) P(z),所以 P(Y) = Σz P(Y | z) P(z)。
## [0:24:05](https://www.youtube.com/watch?v=iuAeHIfOscA&t=1445s) 從表算條件機率 投影片說:「In most cases, we are interested in computing conditional probabilities of some variables, given evidence about others.」(Ch12 p.31,大部分時候我們想算的是:給定某些變數的證據,其他變數的條件機率。)例如病人來說「我牙痛」,那他有蛀牙的機率是多少?前面講了一大堆,老師說「事實上都是為了我們要來算這個機率」。 做法就是條件機率的定義:「牙痛又蛀牙」的機率除以「牙痛」的機率。牙痛又蛀牙是 0.12,牙痛總共是 0.2,所以 P(cavity | toothache) = 0.6;同理,牙痛但沒蛀牙是 0.4。 為什麼分母要用 P(toothache)?因為已經知道病人牙痛,整個世界縮小成「牙痛的那幾格」,要看蛀牙在這個小世界裡占多少比例。 比喻:全校 100 人裡有 20 人戴眼鏡,戴眼鏡的人裡 12 人是籃球隊,那「已知戴眼鏡時是籃球隊」的比例是 12/20,不是 12/100。 考試可能怎麼問:How do you compute P(cavity | toothache) from the full joint distribution?
它到底怎麼運作?(進階,可跳過) 牙痛的四格:0.108 + 0.012 + 0.016 + 0.064 = 0.2。 牙痛又蛀牙:0.108 + 0.012 = 0.12 → P(cavity | toothache) = 0.12 / 0.2 = 0.6。 牙痛沒蛀牙:0.016 + 0.064 = 0.08 → P(¬cavity | toothache) = 0.08 / 0.2 = 0.4。
## [0:25:56](https://www.youtube.com/watch?v=iuAeHIfOscA&t=1556s) Normalization constant α 剛剛的 0.6 和 0.4 加起來等於 1,而且一定要等於 1:已知牙痛,「有蛀牙」和「沒蛀牙」是全部的可能。第二個觀察是,兩個算式的分母都是同一個 P(toothache)。 所以可以把這個共同的「1 / P(toothache)」抽出來,叫做正規化常數 α(normalization constant)。它的工作只有一個:保證最後兩個機率加起來是 1。式子寫成 P(Cavity | toothache) = α P(Cavity, toothache),α 後面是一個「有蛀牙、沒蛀牙」兩個數字組成的向量。 為什麼要寫成向量?因為我們一次要算 Cavity 的整個分布(蛀牙、沒蛀牙兩個值),不是只算一個數字。這種寫法後面的章節還會一直出現。 比喻:兩個人分一筆獎金,只要知道比例是 3:2,不管總額多少,就知道一個拿 60%、一個拿 40%。 考試可能怎麼問:What is the normalization constant α, and why can it be factored out?
它到底怎麼運作?(進階,可跳過) P(Cavity | toothache) = α P(Cavity, toothache) = α [P(Cavity, toothache, catch) + P(Cavity, toothache, ¬catch)] = α [⟨0.108, 0.016⟩ + ⟨0.012, 0.064⟩] = α ⟨0.12, 0.08⟩ = ⟨0.6, 0.4⟩ 向量裡第一個數字是「有蛀牙」,第二個是「沒蛀牙」。中間那步是把探針「卡住、沒卡住」兩種情況加掉,就是上一段的 marginalization。 注意:老師口頭有幾次唸成 0.008,投影片是 0.08(Ch12 p.32;0.12 + 0.08 = 0.2,正規化後才會是 0.6 和 0.4)。
## [0:30:24](https://www.youtube.com/watch?v=iuAeHIfOscA&t=1824s) 不用知道 P(toothache) 也能算 老師反問:「這是在玩數學嗎?」不是。關鍵在於整個過程根本沒用到 P(toothache):拿到分子向量 ⟨0.12, 0.08⟩ 之後,自己除以總和就得到 ⟨0.6, 0.4⟩,α 是多少不用先知道。老師說「這個巧妙的點在這裡」。 為什麼這很重要?在真實問題裡,不一定拿得到整張表的每個數字,P(toothache) 可能根本查不到。這個技巧讓計算更簡單,也讓缺資料時還能算。 下面這張圖是一般化的步驟: ```mermaid flowchart LR A["想問的 X
例如 Cavity"] --> D["把沒觀察到的變數 y
全部加掉"] B["證據 e
例如 toothache"] --> D D --> E["得到分子向量
⟨0.12, 0.08⟩"] E --> F["除以自己的總和"] F --> G["P(X | e)
⟨0.6, 0.4⟩"] ``` 一般式是 P(X | e) = α Σy P(X, e, y):X 是要問的變數(例子裡是 Cavity),e 是證據的觀察值(toothache),y 是其他沒觀察到的變數(Catch)的所有組合。X、E、Y 合起來就是全部變數,所以要加的每一項都直接查得到表(Ch12 p.34)。 比喻:投票開票時,不必知道全國總人口,只要把各候選人的票數加起來、算各自占多少百分比就好。 考試可能怎麼問:Why can we compute P(cavity | toothache) without knowing P(toothache)? Why is this useful?
老師原話是什麼? 「在這整個運算當中,我們其實並沒有應用到牙痛出現的機率。」(0:31:05) 「你這兩個數字你自己就可以 normalize 成 0.6 0.4 的。」(0:32:45) 「這個巧妙的點在這裡。」(0:33:08) 「我們不是永遠都可以找出這個表格裡面的每一個數字,這實際的問題上不見得如此。」(0:34:03)
## [0:35:50](https://www.youtube.com/watch?v=iuAeHIfOscA&t=2150s) 加入 Weather:獨立讓表變小 多加一個變數 Weather(四種天氣:晴、雨、陰、雪),表就變成 2×2×2×4=32 格,投影片說等於原表的四個「editions」(版本),每種天氣各一張 8 格的表(Ch12 p.35)。變數越多,表會爆炸性地變大。 照 product rule,P(toothache, catch, cavity, cloudy) 可以拆成「P(cloudy | 牙齒三變數) × P(牙齒三變數)」。但正常人都知道,牙痛、蛀牙、探針卡不卡,跟天氣一點關係都沒有,所以 P(cloudy | 牙齒三變數) 就等於 P(cloudy),這就是投影片的 Equation 13.10(Ch12 p.36)。(product rule 一直往下拆,就是老師順口提到的 chain rule(連鎖律)。) 下面這張圖是拆開前後的差別: ```mermaid flowchart LR A["四變數大表
32 格"] -->|"天氣跟牙齒無關"| B["P(Weather)
4 格"] A -->|"天氣跟牙齒無關"| C["P(Toothache, Catch, Cavity)
8 格"] B --> D["兩張小表相乘
就能還原 32 格"] C --> D ``` 為什麼老師故意舉這麼奇怪的例子?就是要用一個「明顯無關」的變數,讓你看到獨立性怎麼把大表拆成小表。 比喻:你的考試成績跟隔壁城市今天下不下雨無關,所以不用為「每一種天氣」各記一份成績單。 考試可能怎麼問:How does independence between Weather and the dental variables simplify the full joint distribution?
它到底怎麼運作?(進階,可跳過) Product rule:P(toothache, catch, cavity, cloudy) = P(cloudy | toothache, catch, cavity) P(toothache, catch, cavity)。 因為獨立:P(cloudy | toothache, catch, cavity) = P(cloudy)。 所以:P(toothache, catch, cavity, cloudy) = P(cloudy) P(toothache, catch, cavity)。 寫成隨機變數形式:P(Toothache, Catch, Cavity, Weather) = P(Toothache, Catch, Cavity) P(Weather)。 投影片的結論:32 格的表可以用一張 8 格表和一張 4 格表組出來(Ch12 p.36),要記的數字從 32 個變成 8 + 4 = 12 個。
## [0:39:14](https://www.youtube.com/watch?v=iuAeHIfOscA&t=2354s) Independence 的定義與銅板例子 老師說獨立性「大家不要小看」,它是機率推論上很重要的一個特性,因為能讓運算簡化很多。a 和 b 獨立的意思是:知道 b 不會改變 a 的機率,也就是 P(a | b) = P(a)、P(b | a) = P(b),而且 P(a ∧ b) = P(a) P(b),這三種寫法是等價的。投影片說這也叫 marginal independence 或 absolute independence;換成變數的寫法是 P(X | Y) = P(X)、P(Y | X) = P(Y)、P(X, Y) = P(X) P(Y)(Ch12 p.37)。 變數之間是不是獨立,通常要靠領域知識(domain knowledge)判斷,不是從表算出來的。 例子是丟 N 個獨立的銅板:聯合分布 P(C1, …, Cn) 有 2 的 N 次方格,直接處理很難。但因為銅板互相獨立,可以寫成 N 個單一銅板分布 P(Ci) 相乘,各算各的就好(Ch12 p.38)。 下面這張投影片圖把兩個例子畫在一起:左邊是天氣和牙齒拆開,右邊是 N 個銅板拆開。 [[IMG: C:\D槽\TAICA課程\_work\notes-v2\ai-w4\img\brief_Ch12_p039.png | 投影片 Figure 13.4:用獨立性把大的聯合分布拆成小分布,(a) 天氣和牙齒問題獨立,(b) 銅板互相獨立]] 為什麼相乘就可以?因為「第一個是正面」不會影響「第二個是正面」的機率,各自的機率直接相乘就是同時發生的機率。 比喻:獨立就像兩個人各自擲骰子,你看到我擲出 6,對你下一把擲幾點完全沒幫助。 注意:影片在 0:41:36 句子講到一半就結束,接下來的內容在下一支影片。 考試可能怎麼問:Define independence between two propositions, and explain why it is so useful for probabilistic inference.
它到底怎麼運作?(進階,可跳過) N 個銅板的聯合分布有 2^N 種結果,要描述它需要 2^N − 1 個數字(最後一個可以用「總和是 1」推出來)(我補充)。 如果銅板互相獨立,每個銅板只要一個數字「正面的機率」,總共 N 個數字就夠,任何一種結果的機率都是把各銅板的機率乘起來。 例如 N = 10:2^10 − 1 = 1023 個數字,變成只要 10 個。
## Self-check
Q1. Why can we compute P(Cavity | toothache) without knowing P(toothache)?(中文:為什麼不用知道 P(toothache) 也能算出 P(Cavity | toothache)?) **Answer**: Because P(toothache) is the same denominator for every value of Cavity, it acts only as a normalization constant α. We sum the joint probabilities to get the unnormalized vector P(Cavity, toothache), then divide each entry by the vector's own total so that the entries add up to 1. This makes the computation easier and still works when P(toothache) is not available. 中文:因為不論有沒有蛀牙,分母都是同一個 P(toothache),它的作用只是讓結果加起來等於 1,所以可以抽成一個常數 α。做法是先從表裡把「蛀牙且牙痛」「沒蛀牙且牙痛」兩個數字加總出來,再把這兩個數字各自除以它們的總和,就得到條件機率。這樣計算更簡單,而且就算現實中查不到 P(toothache),也一樣算得出來。
Q2. What is independence, and why is it important for representing the full joint distribution?(中文:什麼是獨立?為什麼它對表示完整聯合分布很重要?) **Answer**: Two propositions a and b are independent if P(a | b) = P(a), or equivalently P(a ∧ b) = P(a)P(b). Independence lets us factor a large joint distribution into a product of smaller ones. For example, adding Weather to the dental domain would give 32 entries, but because Weather is independent of the dental variables, the table splits into P(Weather) times the 8-entry dental table. For N independent coins, we only need each coin's own probability instead of 2^N combinations. Whether variables are independent usually comes from domain knowledge. 中文:a 和 b 獨立,代表知道 b 不會改變 a 的機率,也就是 P(a | b) = P(a),等同於 P(a ∧ b) = P(a) P(b)。獨立性讓我們可以把一張很大的聯合分布表,拆成幾張小表相乘。例如牙醫例子加上天氣會變成 32 格,但天氣跟牙齒無關,所以可以寫成「天氣的 4 格」乘上「牙齒的 8 格」。N 個獨立銅板也一樣,不用處理 2 的 N 次方種組合,只要每個銅板各自的機率。至於哪些變數獨立,通常要靠領域知識判斷。
Q3. Explain marginalization and how it is used in probabilistic inference.(中文:說明什麼是 marginalization,以及它在機率推論裡怎麼用?) **Answer**: Marginalization (summing out) obtains the distribution of a subset of variables by adding up the joint probabilities over all values of the other variables: P(Y) = Σz P(Y, z). For example, P(cavity) is found by summing all entries where cavity is true, regardless of Toothache and Catch. In general inference, P(X | e) = α Σy P(X, e, y): the unobserved variables y are summed out, and the result is normalized. 中文:marginalization(也叫 summing out)是把其他變數的所有可能值都加起來,只留下你在乎的變數的分布,式子是 P(Y) = Σz P(Y, z)。例如要算有蛀牙的機率,就把所有「有蛀牙」的格子加起來,不管有沒有牙痛、探針有沒有卡住。在一般的推論裡,P(X | e) = α Σy P(X, e, y):先把沒觀察到的變數 y 加掉,再做正規化,就得到給定證據時的事後機率。
讀完了嗎?下一章:[03 貝氏定理與腦膜炎例子(0:00–0:18)](https://app.notion.com/p/3ecfc631b0308195b80eee3967f27362)|回到週頁:[W4(10/1)](https://app.notion.com/p/3ecfc631b03081e895d2c5f3aec0353e)