純能量的NAGA學習心得(上)
一、滄海桑田,萬象更新——人工智能的變革
(資料圖)
1997年,深藍擊敗國際象棋世界冠軍加里·卡斯帕羅夫;
2016年,AlphaGo擊敗圍棋世界冠軍李世石;
2019年,Pluribus在無限德撲六人桌擊敗人類頂尖選手;
人工智能帶來的變革,開始無可避免地波及到每一個人類智力運動的領域,而麻將并非例外。Suphy,NAGA25先后問鼎天鳳十段,akochan,mortal的開源AI看譜服務引起熱潮,無論是支持還是反對者,都無可否認這樣的一個事實:人工智能已經給麻將帶來了天翻地覆的變化。
作為AI時代興起的日麻玩家,我希望在此談談我對AI的看法,以及學習NAGA的心得與體會。
1.拋棄意會,格物致知——我對AI麻將的看法
開門見山地說,我對于AI的實力持有肯定態度,甚至屬于是信任AI麻將的水平和實力的激進派。我時常會這么說:“有缺點的AI畢竟是AI,而再完美的人類也不過是人類。”只此一言,就足以說明我對AI麻將的態度。
世界觀決定方法論,就我個人形成的日麻體系而言,有相當的部分都是通過學習NAGA逐步建立、改良、強化的。我目前的半莊譜,NAGA評分中位數大致在91分,而總成績多在88-95分之間進行波動,可以說,我對NAGA的理解學習已經邁入了攻堅克難的深水區。
如果有人問我,學習AI打牌,和閱讀各類戰術書、詢問何切、高段講譜最大的區別是什么,我的回答是:前者是格物致知,后者是意會言傳——很顯然,AI不會告訴你它為何這么打,不會給你任何的講解。舉個例子,高段看譜、閱讀戰術書與何切如同通過老師授課、課本知識和課后習題認識牛頓三定律,而AI就像一個近似光滑的平面和兩個小球,一切的規律只能靠自己去領悟,這里沒有現成的知識,學習AI的過程就如同物理學實驗,只有一次次的嘗試最終才能總結出規律。
有人說:人工智能好是好,但是丟掉了“神韻”。我的回答是,只要你肯定一副圖畫是無數個像素點的組合,一盤圍棋是一場完美信息博弈,一局麻將是無數個隨機事件組成的游戲——那么,這里便沒有什么“神韻”,只有“形體”。學習AI,從來不是學什么“AI的神韻”,而是它那么打,那么下,你也跟著這么打,這么下罷了。前幾十年,開局“點三三”還被稱為圍棋中“丑陋的一手”,如今又變成了“AI的深意”,被眾多人學習。
有人說,AI之所以能點33,是因為它改變了定式啊。對的,但為什么AI之前研究圍棋千百年的人類沒有想到這一小小的變化呢?日麻中難道就沒有這樣的情況嗎?從我學習AI的經歷來看,這樣的情況不僅有,而且很多——大多都被冠以“牌風”、“流派”的名號,甚至被寫入了各種戰術書中。本質上,這些東西都和定式一樣,是人類對望而興嘆信息集數目的一種不得已之策略而已,誰又能說這些定式不會有出錯的一天呢?
2.學而不思,難得存進——我學習NAGA的方法
世界觀決定方法論,可以說,我學習NAGA的原則,全部建立在我對AI水平激進的信任之上:但凡沒有證據表明NAGA是錯誤的地方,我通通認為是正確的并加以采納和學習,所謂“AI的正確推定”。
有人覺得這種屬于是“先射箭再畫靶子”的行為,一個看似離譜的行為非要替它找個理由。但是,AI是客觀的,是絕對中立的,不會因為主視角或者何切人是什么日麻界的大紅大熱爭議人物就受到干擾,或者給出不一樣、不明確的答案。與其說是“先射箭再畫靶子”,不如說是“以絕對的箭為基準建立一個體系”。
當然,這里的“絕對”也是相對的,隨著NAGA版本的更迭,不同模式的選取之下,同樣的局面也可能會給出不同的答案。比如說,前些年大火大熱的355m355p11344556s何切,隨著版本更迭,NAGA也給出了許多不同的答案。可以說,NAGA現有的體系也肯定也不是最優秀的。但是我認為,它的確比我更接近最優秀的體系,所以排除掉那些顯然錯誤的BUG與缺陷選項,全盤向NAGA學習是有助于水平提高的。
此外,相比于就向人類強者學習而言,向AI學習擁有時空和效度的優勢。時空的優勢無需多提,沒有人類可以隨時隨地回答何切,提供看譜服務;而效度的優勢如我文章開頭所言:有缺點的AI畢竟是AI,而再完美的人類也不過是人類,人總會受到各種影響與干擾,無法保證自己的切牌與回答是與自身體系完全契合的,即“隨機誤差”,這會強烈干擾對體系精細層面的學習,而AI則沒有這樣的問題。
正是以上這些原因,使我堅定了向NAGA學習的戰略,并設立了“AI的正確推定”法則。
在具體的操作層面,我向AI的學習可以細分為看譜、復盤、研討、總結這些部分。
看譜,無需多言,有條件的將自己的所有牌譜上傳進行NAGA分析,沒有條件的利用tenhou.net/6 的自定義牌譜編輯功能,將一些有具體疑惑的局面進行解析。在遇到困惑的何切時,也采用類似的方法。
復盤,NAGA會給出4個級別的指標,用以區分主視角選擇和NAGA最優選擇之間的差距。一般來講,前兩級的差距可以不用過多關注,它們大多都是兩可的,但是仍然需要研究NAGA給出的不同選項之間的差別和優劣;針對后兩級的差距,需要重點關注,這些差別可能代表著這一打已經偏離了AI的打法體系,也可能標志著一個BUG的存在。
這里需要著重強調,有的雀士在使用AI時往往糾結“為啥它打A不打B呢?”實際上,某些微差的何切,本身就是打A打B都可以的,甚至于完美的策略本身可能就是分別給A和B一定的概率打出。這些微差何切,與其去糾結“為啥不打B”,不如去考慮“為啥能打A”,這樣對水平的提高才更有幫助。
NAGA的分級制度也給我回答何切一定的啟發,使用“100%、鐵、兩可、四六開、三七開”等詞語優化我的何切回答描述。
研討,針對后兩個級別的差距,需要分析NAGA選項的優勢,自己選項的不足,并將其補充進自身的體系內。又或者,你發現了一個BUG,需要格外關注此類情況下NAGA存在的問題。倘若自身無法分析,那么還需要進一步研討。比如詢問各高段的意見,利用牌譜編輯設置幾個不同的類似局面進行分析,便于找出規律,納入體系。實際上,NAGA的行牌和現有數據麻將的理論有相當部分都是契合的,少部分不能以現有理論合理解釋的都是少數具有明顯特點的特殊情況。對于這些問題,如果我找不出打法上明顯的問題和漏洞,仍然會選擇去學習。
總結,這是最高層次的學習,是針對NAGA在某一種或某一類特殊情況下行牌規律的歸納,是一種由特殊到一般的提煉,它往往需要對大量相似局面的統一分析才能做出。當然,由于NAGA和現行數據麻雀體系的高度一致性,所以數據麻雀的結論往往就是NAGA行牌規律的近似。另外,需要注意的是,總結必須要分析大量局面才能做出,單一或少量何切的結果都不能進行總結。第一個原因是,何切的結果可能是多種原因導致的,通過少量試驗將其歸納到單一原因上,未必可靠;第二個原因是,AI雖然不存在隨機誤差,但存在系統誤差,比如不同花色數牌之間的差別,三元牌之間的差別等等,沒有對比對照的少量試驗,很可能將結論和誤差混淆。(題外話,為何NAGA七對不再更新了呢?也是因為上述兩種原因,導致我認為結論未必可靠,并且工作量實在太大)
因此,我建議,雀士在利用NAGA總結某種規律時,應該盡可能滿足物理實驗的要求和標準,設置對照、重復實驗,以保證結論的可靠性(雖然,這顯然會大大增加工作量和花費,因此通過實戰牌譜學習仍然是最優的選擇)
3.思而不學,墨守成規——科學看待AI的缺點
經常有人會將一張AI給出的離譜何切回答發到群里,然后群內瞬間便充滿了快樂的氣息。我認為,以一兩種特殊情況下AI存在的問題,來否認其它情況下AI的實力,是不正確的。正如同我們不會用點錯的一打去評價主視角的實力一樣。(雖然,這可能代表了心態、注意力等等之類的“軟實力”)因此,對AI的思辨與批判不應影響對AI的學習
我認為,就NAGA而言,其缺點主要包括以下三點:BUG,設計問題,強邏輯,這是其遠不如人類的地方,如果一個何切涉及到了這三個部分的內容,那么可對NAGA的選擇進行取舍,甚至拋棄NAGA的建議。
(1)BUG
有程序的地方就會有BUG,NAGA作為AI也不例外。NAGA目前仍然具有許多BUG,本文就詳細地說明一下NAGA目前存在的各類BUG。
I.碰暗刻BUG 置信度:極高 危害性:小(一般人一眼就能看出不合理,不會有人真的去學)
表現:當手牌存在一個暗刻,其它家打出第四張時,NAGA有概率給出極大的“碰”的推薦度。當暗刻為役牌時,情況更加明顯。
II.綠一色BUG 置信度:極高 危害性:極小
表現:NAGA不認識綠一色。
III.途中流局BUG 置信度:高 危害性:小
表現:NAGA似乎沒有途中流局概念。
IV.多種立直/副露選擇BUG 置信度:極高 危害性:極大
表現:當一副牌同時存在多種、可選的、擁有推薦度的、立直(或副露)選擇時,NAGA有時無法給出準確的立直(或副露)推薦度。?
V.接近流局時副露/立直判斷BUG 置信度:中 危害性:中
表現:當剩余枚數極少時,NAGA的副露/立直判斷可能會出現極大偏移。
VI.ALL LAST判斷問題BUG 置信度:低 危害性:中
表現:NAGA有時在ALL LAST做出匪夷所思的操作,有時又和其它BUG發生雜糅,尚不明確是BUG還是本該如此。
VII.前后一致亂打BUG 置信度:中?危害性:中
表現:如果一副牌,主視角在前面開始亂打(比如一直掉線摸切),那么NAGA在此后也會開始亂打。懷疑這是因為NAGA具有保持前后一致性的特點。同樣基于此,NAGA幾乎不會留立,表現為只要聽牌時選擇DAMA,只要此后牌型沒有任何變化,立直推薦度都極低。
VIII. 數據不準確BUG 置信度:極高 ?困擾性:高
表現:NAGA給出的數據(和率,銃率,流局率,橫移動率,聽牌確率,每張牌的銃率)在特定的情況下可能與實際出現較大偏移。
此外,由于此BUG還額外誕生一個誤解,即NAGA不看手摸切。實際上,NAGA會注意到手摸切,此誤解產生的原因是因為在A家打出牌x,B家摸切后,牌x又顯示出對B家的銃率,(雖然理論上確實有見逃山越的可能)因此有人認為NAGA不看手摸切,這是錯誤的。顯示銃率是因為銃率本來在特定情況下就不準,而不是NAGA不看手摸切。
IX.立直暗杠BUG 置信度:100%(顯示BUG)低(行牌BUG)?困擾性:高 危害性:中
表現:同時能立直和暗杠的牌,NAGA只會顯示暗杠推薦度,立直推薦度需要黑科技才能看見。并且,同時能立直和暗杠的牌,NAGA可能做出一些奇怪的操作,尚不知曉這些操作是BUG還是本該如此。
(2)設計問題
AI麻將在設計時沒有考慮一些情況,這導致AI在相關局面的判斷出現問題。
1:AI不會讀卡頓,這導致切牌丟失了卡頓信息。
2:部分AI不會見逃,除了4確和之外通通和。(NAGA根本不提供和牌推薦度)在考慮見逃時,我推薦采用模擬器框架的AI(akochan)進行分析。
3:在同時存在5和紅5時,5和0被視為一樣的牌,NAGA永遠先打5。(這點在牌譜解析的時候也能看出來,5和0推薦條是一樣長的,NAGA始終先打5)在特定情況下,打0會比打5更好。
4:空切問題。比如,主視角手中有一張7m,此時又摸到一張7m,NAGA對手切與摸切7m不加區分。
5:順位分布問題。按照天鳳段位避四、零和的規則進行訓練的NAGA,在面對不同的規則和順位分布時,結論可能出現偏差。
(3)強邏輯
其實,第一部分中的很多BUG,都可以算作是強邏輯的問題。比如,一個明顯可以錯海底的副露,NAGA卻選擇不做,等等。這些何切,人類可以通過嚴謹的推理和運算做出顯著有利的選擇,但這對NAGA卻似乎很難掌握。類似的還有“一點讀”的判斷問題。所謂“讀牌”,大致可分為兩種,一種是統計學上的規律(比如4-2切立直,1危險度高),這點NAGA的水平不錯,但另一種讀牌,或者被稱為“一點讀”,基于人類對牌河的推理和邏輯性分析,NAGA就不太行了。一個從“一點讀”角度顯著危險,銃率超過50%的牌,NAGA卻可以毫不猶豫地打出去。
我個人認為,這是因為“一點讀”往往需要多個微小的邏輯組成部分,每一個部分都是彼此分離且相關性很低的,但當他們組合在一起時,卻可以得到一個邏輯鏈條,形成一個強結論。倘若運用統計方法分析,那么這些部分各自容易淹沒在“噪音”之中,找不出與結論的顯著關系。比如說,有人打8m——副露家手切8m——8m是“沒有碰的牌”——8m跨筋銃率低,這樣的一個一點讀,在統計學上似乎很難找到統計的方法和規律。
這么來看,監督學習似乎在讀牌方面更加有利,只是我并未研究過蘇菲牌譜,不知道在有“全能先知”指引下的蘇菲,是否對一點讀有不同的看法。
關鍵詞: ALPHAGO 物理實驗 性的特點 AI學習 圍棋世界 象棋世界 DAMA 人工智能 墨守成規 隨機事件 一般來講 開門見山 舉個例子 這里沒有 匪夷所思 第一部分 可以通過
相關閱讀
- 06-14
- 06-14
最近更新
- 06-14
- 06-14
- 06-14
- 06-14