ฉันจะจำลองคำศัพท์ AI แบบ จำกัด สำหรับเกมคำศัพท์ได้อย่างไร


14

ฉันมีเกมคำศัพท์แข่งขันน้อยที่กำลังดำเนินการอยู่และในขณะที่การตั้งค่าสำหรับ (ส่วนใหญ่ไม่ตรงกัน) เล่นกับฝ่ายตรงข้ามมนุษย์คนอื่น ๆ ฉันต้องการให้ผู้เล่นเลือกที่จะเล่นกับ AI ฉันมีพจนานุกรมของฉันและฉันสามารถให้ความรู้พจนานุกรมแบบเต็ม AI ได้อย่างง่ายดายในขณะที่เล่น แต่ความกังวลของฉันคือการมี AI ที่เล่นเป็นประจำคำที่ไม่คุ้นเคยจะเป็นประสบการณ์ที่น่าผิดหวังสำหรับผู้เล่น: 'ฉันจะชนะเกมนั้น ถ้ามันแค่ใช้คำที่ฉันรู้! ' - แม้ว่าระดับทักษะโดยรวมของ AI จะลดลง

ฉันอยากจะสร้าง AI ที่อ่อนแอกว่าด้วยการรวมกันของพารามิเตอร์การเล่นที่ปรับแต่งแล้ว (un) และคำศัพท์ที่อ่อนแอกว่า - แต่ฉันไม่แน่ใจว่าจะ จำกัด คำศัพท์นั้นเป็นคำที่ 'ทั่วไป' ได้อย่างไร ฉันได้ดูรายการคำความถี่หลายรายการ (ตัวอย่างเช่นรายการคำทั้งหมดที่ปรากฏในหนังสือ Project Gutenberg เรียงตามจำนวนที่เกิดขึ้น) แต่พวกเขาทั้งหมดมีจำนวนเชิงลบที่ผิดพลาด: คำที่ทุกคนรู้ว่าไม่ควรพลาด ไม่แสดงด้วยความถี่จริงใด ๆ (ตัวอย่างเช่น CHEETAH ปรากฏขึ้นบ่อยครั้งในตำรา PG น้อยกว่า VOCATIVE หรือ SUTTEE) ฉันได้ลองใช้ผลการค้นหาเพื่อให้ได้ประมาณความนิยมของคำ แต่พวกเขาก็มีแนวโน้มที่จะมีการประมาณการผิดพลาดปลอมและแน่นอนมัน '

ไม่มีใครมีคำแนะนำเกี่ยวกับวิธีการที่ดีอื่น ๆ ในการกำหนดความถี่คร่าว ๆ ของการใช้คำหรือวิธีอื่น ๆ ในการ จำกัด เกมคำศัพท์ AI ที่จะรู้สึกเป็นธรรมชาติกับผู้เล่น?


6
คุณสามารถปล่อยให้มันเรียนรู้! ทุกครั้งที่ผู้เล่นใช้คำที่ไม่ "รู้" อาจมีโอกาสเรียนรู้ได้ 6/10 มิฉะนั้นจะเรียนรู้คำศัพท์ใหม่แบบสุ่ม! (ดังนั้นโดยปกติจะเป็นการเรียนรู้คำที่ผู้เล่นรู้ แต่การนำคำออกมาอย่างช้าๆที่ผู้เล่นอาจไม่ได้รับ (การศึกษา !!)) แน่นอนว่านี่หมายความว่าคุณต้องมี "พจนานุกรม AI" สำหรับผู้เล่นทุกคน
Joel

คำตอบ:


6

ฉันคิดว่าวิธีแก้ปัญหาของคุณยังคงเป็นไปได้ด้วยรายการความถี่คำ Project Gutenberg อาจไม่เหมาะกับคุณเนื่องจากมีข้อความเก่าที่ลิขสิทธิ์หมดอายุทำให้มีความถี่แปลก ๆ สำหรับผู้พูดภาษาอังกฤษยุคใหม่ ฉันคิดว่ามีช่วงเวลาที่ "อาชีวะ" เป็นคำที่ใช้บ่อยกว่า "เสือชีต้า" ...

ดังนั้นฉันคิดว่าทางออกคือการหารายการความถี่ที่เหมาะสม การค้นหาคำเล็ก ๆ น้อย ๆ ทำให้ฉันสะดุดกับคำศัพท์ที่ใช้มากที่สุด 5,000 คำในตอนซิมป์สันส์ทั้งหมดซึ่งอาจเป็นข้อมูลล่าสุด คุณอาจต้องการอ้างอิงรายการนี้กับพจนานุกรมจริงแม้ว่าจะเรียงลำดับคำเช่น "krabappel" เป็นต้น :)

หวังว่ามันจะช่วยได้ฉันตื่นเต้นที่ได้ทราบว่าคุณไปด้วยวิธีใด


1
ความประทับใจที่แข็งแกร่งของฉันคือปัญหาเกี่ยวกับ 'คำที่ทุกคนรู้ แต่ไม่มีใครใช้' จะยังคงอยู่กับพจนานุกรมใด ๆ แต่มันอาจจะดีที่สุดที่ฉันสามารถทำได้ - และแน่นอนว่ามีโอกาสดีที่ผู้เล่นจะไม่ แม้แต่สังเกตคำง่าย ๆ ที่ AI ไม่รู้ แต่เป็นคำยากที่ทำ
Steven Stadnicki

+1 คุณอาจพูดถูก แต่ทำไมถึงเป็นเช่นนั้น โดยทั่วไปแล้วฉันคิดว่าผู้คนควรเรียนรู้คำศัพท์ที่ได้ยินบ่อยๆ หากคุณถูกต้องมันจะน่าสนใจที่จะรู้เหตุผล ... :) สมมติฐานของฉันน่าจะเป็นเพราะความลำเอียงในคลังข้อมูลที่ใช้แล้วเช่นในกรณีของโครงการกูเทนแบร์กดังนั้นฉันจึงติดกับโซลูชันที่ คุณเพียงแค่ต้องการรายการความถี่ที่ถูกต้อง
Mikael Högström

5

ฝูงชนมามัน ใช้เกมที่มีผู้เล่นหลายคนที่ผู้เล่นของคุณเล่นเพื่อสร้างตารางความถี่ของคำ ฉันคิดว่าบริการการวิเคราะห์ใด ๆ ที่สามารถช่วยรวบรวมและจัดระเบียบข้อมูลนี้ คุณสามารถเพิ่มน้ำหนักรายการได้ด้วยวิธีที่ "ดี" ผู้เล่นที่ใช้คำว่า


ฉันชอบสิ่งนี้ แต่ก็ยังรู้สึกเหมือนกำลังแก้ปัญหา 'อัปเดต' แทนที่จะเป็นปัญหา 'เริ่มต้น' (สมมติว่าแน่นอนว่าฉันต้องการเปิดตัวเกมแบบผู้เล่นหลายคนและเดี่ยวแบบเคียงข้างกันซึ่งเป็นคำถามที่แตกต่างกัน ทั้งหมด)
Steven Stadnicki

2

เริ่มต้นด้วยคำศัพท์พื้นฐานตามระดับ AI ของคุณ ตัวอย่างเช่นให้ด้านล่างเป็นรายการระดับ AI ของคุณ

  • พื้นฐาน: 1,000 คำศัพท์
  • ค่าเฉลี่ย: 2000 คำศัพท์
  • ยาก: คำศัพท์ 5,000 คำ

คุณอาจจะเลือกคำนี้จากการติดตามเว็บไซต์ที่คุณสามารถมองเห็นได้ด้วยการค้นหาของ Google

เว็บไซต์เหล่านี้จะให้คำเริ่มต้นของคุณ แต่ฉันคิดว่าgoogle n-gramsอาจเป็นทางเลือกที่ดีกว่า อย่างไรก็ตามไม่ต้องกังวลเกี่ยวกับคำเริ่มต้นของคุณมากนักด้วยการอัพเดท / เพิ่มกลไกที่อธิบายไว้ด้านล่างพจนานุกรม AI ของคุณควรตรงตามผู้เล่นของคุณ

เนื่องจากผู้เล่นของคุณเรียนรู้ในขณะที่พวกเขาเล่นเกมนี้ AI ของคุณควรเรียนรู้ด้วย อนุญาตให้มันเรียนรู้คำที่ใช้มากที่สุดโดยฝ่ายตรงข้ามของพวกเขา

ตัวอย่างเช่น 10 คนเล่นกับพื้นฐาน AI ของคุณพวกเขาใช้ 100 คำที่ไม่รู้จักนั่นคือคำที่ไม่ได้อยู่ในพจนานุกรม AI ของคุณ เลือกคำที่ใช้มากที่สุดและเพิ่มลงในพจนานุกรม AI พื้นฐานของคุณรวมถึงพจนานุกรมทั่วไปและพจนานุกรมยาก คุณควรเลือกที่จะอัพเดทคำบางคำที่ไม่ได้ใช้ในพจนานุกรมของคุณด้วยคำที่ผู้คนใช้ วิธีนี้พจนานุกรมเริ่มต้นของคุณจะเหมาะสมกว่าสำหรับความรู้ของผู้เล่นของคุณ คุณอาจเริ่มด้วยคำน้อยกว่า / คำที่แตกต่างกัน แต่ AI ของคุณจะเรียนรู้ในขณะที่พวกเขาเล่นกับมนุษย์

คุณอาจพิจารณาเริ่มต้น AI ของคุณด้วยระดับพื้นฐานและอัปเกรดเป็นระดับอื่นก็ต่อเมื่อเรียนรู้คำศัพท์เพียงพอ


นี่เป็นวิธีที่ดีในการอัปเดตคำศัพท์ แต่ยังคงเป็นคำถามเริ่มต้น - คำศัพท์เริ่มต้นเหล่านั้นมาจากไหน?
Steven Stadnicki
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.