อธิบายแนวคิดของ Markov Chains [พร้อมตัวอย่าง]
เผยแพร่แล้ว: 2020-12-18สารบัญ
บทนำ
กลุ่ม Markov นั้นเป็นเรื่องธรรมดา ใช้งานง่าย และถูกใช้ในหลายโดเมน เช่น การสร้างเนื้อหาอัตโนมัติ การสร้างข้อความ การสร้างแบบจำลองทางการเงิน ระบบควบคุมความเร็วอัตโนมัติ ฯลฯ แบรนด์ที่มีชื่อเสียง Google ใช้ Markov chain ในอัลกอริธึมการจัดอันดับหน้าเว็บเพื่อกำหนดลำดับการค้นหา .
กลุ่ม Markov นั้นค่อนข้างง่ายและไม่ต้องการแนวคิดทางคณิตศาสตร์หรือความรู้ทางสถิติขั้นสูงสำหรับการนำไปใช้ หากคุณมีความเข้าใจที่ดีเกี่ยวกับเครือ Markov การเรียนรู้การสร้างแบบจำลองความน่าจะเป็นและเทคนิควิทยาศาสตร์ข้อมูลจะง่ายขึ้น
บทความนี้จะช่วยให้คุณเข้าใจอย่างลึกซึ้งว่าเครือ Markov คืออะไรและทำงานอย่างไร ด้วยความช่วยเหลือจากตัวอย่าง
Markov Chain คืออะไร?
ห่วงโซ่ Markov เป็นแบบจำลองทางคณิตศาสตร์ที่ให้ความน่าจะเป็นหรือการคาดคะเนสำหรับสถานะถัดไปโดยอิงจากสถานะเหตุการณ์ก่อนหน้าเท่านั้น การคาดการณ์ที่สร้างโดยกลุ่ม Markov นั้นดีพอ ๆ กับการสังเกตประวัติทั้งหมดของสถานการณ์นั้น
เป็นแบบจำลองที่ประสบกับการเปลี่ยนจากสถานะหนึ่งไปยังอีกสถานะหนึ่งโดยพิจารณาจากเงื่อนไขความน่าจะเป็นบางประการ ลักษณะหนึ่งที่กำหนดห่วงโซ่มาร์คอฟคือไม่ว่าสถานะปัจจุบันจะบรรลุผลอย่างไร รัฐในอนาคตจะได้รับการแก้ไข ผลลัพธ์ที่เป็นไปได้ของรัฐถัดไปจะขึ้นอยู่กับสถานะปัจจุบันและเวลาระหว่างรัฐเท่านั้น
อ่าน: Markov Chain ใน Python Tutorial
Markov Chain Concept พร้อมตัวอย่าง
สมมติว่าคุณต้องการทำนายสภาพอากาศสำหรับวันพรุ่งนี้ แต่คุณรู้อยู่แล้วว่าสภาพอากาศอาจมีเพียงสองรัฐเท่านั้นคือมีเมฆมากและมีแดดจัด คุณจะทำนายสภาพอากาศของวันถัดไปโดยใช้เครือ Markov ได้อย่างไร?
คุณจะเริ่มสังเกตสภาพอากาศในปัจจุบันและอาจมีแดดจัดหรือมีเมฆมาก สมมุติว่าวันนี้มีแดด สภาพภูมิอากาศต้องผ่านการเปลี่ยนแปลงหลายครั้งเสมอ คุณจะรวบรวมข้อมูลสภาพอากาศในช่วงหลายปีที่ผ่านมาและคำนวณว่าโอกาสที่จะมีเมฆมากหลังจากวันที่มีแดดจัดคือ 0.35
คุณยังสังเกตเห็นว่าโอกาสที่จะได้รับวันที่มีแดดจัดหลังจากวันที่แดดจัดคือ 0.65 การกระจายนี้จะช่วยคุณในการทำนายว่าวันถัดไปจะมีแดดจัดเช่นกัน นั่นคือวิธีที่สภาพอากาศในปัจจุบันช่วยคุณในการทำนายสถานะในอนาคต และคุณสามารถใช้ตรรกะเดียวกันนี้ในการทำนายสภาพอากาศสำหรับวันต่อ ๆ ไป
ตัวอย่างข้างต้นแสดงให้เห็นคุณสมบัติของ Markov ว่าสาย Markov นั้นไม่มีหน่วยความจำ สภาพอากาศในวันถัดไปไม่ขึ้นอยู่กับขั้นตอนที่นำไปสู่สภาพอากาศในปัจจุบัน การแจกแจงความน่าจะเป็นมาถึงโดยการเปลี่ยนแปลงจากวันปัจจุบันเป็นวันถัดไปเท่านั้น
อีกตัวอย่างหนึ่งของเครือ Markov คือนิสัยการกินของคนที่กินแต่ผลไม้ ผัก หรือเนื้อสัตว์เท่านั้น นิสัยการกินอยู่ภายใต้กฎต่อไปนี้:
- บุคคลนั้นกินเพียงครั้งเดียวในหนึ่งวัน
- ถ้าวันนี้คนกินผลไม้ พรุ่งนี้เขาจะกินผักหรือเนื้อสัตว์ด้วยความน่าจะเป็นเท่ากัน
- ถ้าเขากินผักวันนี้ พรุ่งนี้เขาจะกินผักที่มีโอกาส 1/10 ผลไม้ที่มีโอกาส 1/40 และเนื้อสัตว์ที่มีโอกาส 1/50
- ถ้าเขากินเนื้อวันนี้ พรุ่งนี้เขาจะกินผักด้วยความน่าจะเป็น 4/10 ผลไม้ที่มีโอกาส 6/10 พรุ่งนี้เขาจะไม่กินเนื้ออีก
คุณสามารถจำลองพฤติกรรมการกินของเขาได้อย่างง่ายดายโดยใช้โซ่ Markov เนื่องจากการเลือกสำหรับวันถัดไปขึ้นอยู่กับว่าเขากินอะไรในวันนี้โดยไม่คำนึงถึงสิ่งที่เขากินเมื่อวานนี้หรือวันก่อน
อ่านเพิ่มเติม: บทนำสู่ Markov Chains
Markov Chain Transition Matrix
จนถึงตอนนี้ เราได้เห็นแล้วว่าเราสามารถทำนายความน่าจะเป็นของการเปลี่ยนจากสถานะหนึ่งไปอีกสถานะหนึ่งได้อย่างไร แต่จะหาการแจกแจงความน่าจะเป็นของช่วงการเปลี่ยนภาพที่เกิดขึ้นในหลายขั้นตอนได้อย่างไร คุณสามารถค้นหาการกระจายความน่าจะเป็นของการเปลี่ยนผ่านหลายขั้นตอนโดยใช้เมทริกซ์การเปลี่ยนสายโซ่ของ Markov

เมทริกซ์การเปลี่ยนสถานะลูกโซ่ของ Markov เป็นเพียงการแจกแจงความน่าจะเป็นของการเปลี่ยนจากสถานะหนึ่งไปอีกสถานะหนึ่ง เรียกว่าเมทริกซ์การเปลี่ยนแปลงเนื่องจากแสดงการเปลี่ยนสถานะต่างๆ ที่เป็นไปได้
ความน่าจะเป็นที่เกี่ยวข้องกับแต่ละรัฐเรียกว่าการกระจายความน่าจะเป็นของรัฐนั้น เป็นเครื่องมือที่สำคัญที่สุดที่ใช้ในการวิเคราะห์ห่วงโซ่มาร์คอฟ ตัวอย่างเช่น หากมีจำนวนสถานะที่เป็นไปได้ N ดังนั้นเมทริกซ์การเปลี่ยนแปลง (P) จะเป็นดังนี้
P = N x N เมทริกซ์
โดยที่รายการในแถว (I, J) แสดงถึงความน่าจะเป็นของการเปลี่ยนจากสถานะ I เป็นสถานะ J แต่ละแถวของเมทริกซ์การเปลี่ยนแปลง P ควรรวมเป็น 1
ในการเป็นตัวแทนของเครือ Markov คุณจะต้องมีเวกเตอร์สถานะเริ่มต้นที่อธิบายการเริ่มต้นในแต่ละสถานะ N ที่เป็นไปได้ คุณสามารถแสดงเวกเตอร์สถานะเริ่มต้น (X) เป็น
X = N x 1 เมทริกซ์
สมมติว่าคุณต้องการหาความน่าจะเป็นของการเปลี่ยนจากสถานะ I เป็นสถานะ J ส่วน M หลายขั้นตอน คุณได้ให้สามสถานะที่เป็นไปได้ ได้แก่ ตลาดกระทิง ตลาดหมี และตลาดซบเซา
ในตัวอย่างข้างต้น คอลัมน์แรกของเมทริกซ์การเปลี่ยนแปลงระบุสถานะของตลาดกระทิง คอลัมน์ที่สองของตลาดหมี และคอลัมน์ที่สามระบุถึงตลาดที่ซบเซา แถวยังสอดคล้องกันในลักษณะที่คล้ายกัน
ในเมทริกซ์การเปลี่ยนแปลง ความน่าจะเป็นของการเปลี่ยนแปลงคำนวณโดยการเพิ่ม P ยกกำลังของจำนวนขั้นตอน (M) สำหรับการเปลี่ยนแบบ 3 ขั้นตอน คุณสามารถกำหนดความน่าจะเป็นได้โดยการเพิ่ม P เป็น 3
เมื่อคูณเมทริกซ์ P3 ข้างต้น คุณจะสามารถคำนวณการกระจายความน่าจะเป็นของการเปลี่ยนจากสถานะหนึ่งไปอีกสถานะหนึ่งได้
บทสรุป
เนื่องจากคุณเข้าใจวิธีการทำงานของลูกโซ่ Markov คุณจึงสามารถนำไปใช้ในคำสั่งปัญหาใดๆ ได้อย่างง่ายดาย ไม่ว่าจะเป็นเพื่อหาวิธีแก้ไขหรือทำให้เป็นระบบอัตโนมัติ เครือ Markov นั้นทรงพลังและเป็นพื้นฐานสำหรับเทคนิคการสร้างแบบจำลองขั้นสูงอื่นๆ
ความเข้าใจในห่วงโซ่ Markov สามารถทำให้คุณได้รับความรู้ที่ลึกซึ้งยิ่งขึ้นในเทคนิคต่างๆ เช่น การสร้างแบบจำลองโดยย่อและการสุ่มตัวอย่าง
หากคุณอยากเรียนรู้เกี่ยวกับ python, data science, ลองดู IIIT-B & upGrad's PG Diploma in Data Science ซึ่งสร้างขึ้นสำหรับมืออาชีพด้านการทำงานและเสนอกรณีศึกษาและโครงการมากกว่า 10 รายการ, การประชุมเชิงปฏิบัติการเชิงปฏิบัติ, การให้คำปรึกษากับผู้เชี่ยวชาญในอุตสาหกรรม ตัวต่อตัวกับที่ปรึกษาในอุตสาหกรรม การเรียนรู้มากกว่า 400 ชั่วโมงและความช่วยเหลือด้านงานกับบริษัทชั้นนำ
มีกรณีการใช้งานในชีวิตจริงที่น่าสนใจสำหรับเครือ Markov หรือไม่?
ใช่ มีกรณีการใช้งานจริงที่น่าสนใจมากมายของเครือ Markov ตั้งแต่การสร้างข้อความไปจนถึงการสร้างแบบจำลองทางการเงิน โปรแกรมสร้างข้อความส่วนใหญ่ใช้เครือข่าย Markov ระบบลูกโซ่ใช้กันอย่างแพร่หลายในการสร้างข้อความปลอม บทความขนาดใหญ่ และรวบรวมสุนทรพจน์ ตัวสร้างชื่อที่เรามักเห็นบนอินเทอร์เน็ตก็ใช้เครือ Markov เช่นกัน แอปพลิเคชั่นอื่นที่รู้จักกันดีของเครือ Markov คือการทำนายคำที่กำลังจะมาถึง นอกจากนี้ยังเป็นประโยชน์สำหรับการเติมข้อความอัตโนมัติและคำแนะนำ Google PageRank และ Subreddit Simulator เป็นตัวอย่างที่โดดเด่น ซึ่งใช้เครือ Markov เพื่อทำให้การผลิตวัสดุสำหรับ subreddit ทั้งหมดเป็นแบบอัตโนมัติ
ห่วงโซ่ Markov มีความสำคัญในขณะที่เรียนรู้ Data Science หรือไม่?
แม้ว่า Markov chains จะไม่บังคับสำหรับผู้เรียน Data Science แต่ก็สามารถให้แนวทางที่ยอดเยี่ยมในการเรียนรู้การสร้างแบบจำลองความน่าจะเป็นและเทคนิควิทยาศาสตร์ข้อมูล Markov Chains นั้นเรียบง่ายตามหลักวิชาและสามารถใช้งานได้โดยไม่ต้องใช้แนวคิดทางสถิติหรือทางคณิตศาสตร์ที่ซับซ้อน การประยุกต์ใช้วิทยาศาสตร์ข้อมูลที่โดดเด่นที่สุดคือการคาดการณ์ และนักวิทยาศาสตร์ข้อมูลใช้ความน่าจะเป็นแบบมีเงื่อนไขของ Markov Chains ในการทำนายเหล่านี้ มันถูกตั้งชื่อตามคุณสมบัติไร้ความจำของ Stochastic Processes ซึ่งบอกว่าการกระจายของสถานะในอนาคตของกระบวนการใดๆ จะถูกกำหนดโดยสถานะปัจจุบันของกระบวนการเหล่านั้นเท่านั้น
Markov chain ช่วยในอัลกอริธึม PageRank ของ Google ได้อย่างไร
อัลกอริธึม PageRank ของ Google เป็นอัลกอริธึมการจัดอันดับตามลิงก์ที่รู้จักกันดี แทนที่จะประเมินหน้าตามเนื้อหา การจัดอันดับหน้าจะจัดอันดับตามโครงสร้างที่เชื่อมโยงถึงกัน การตรวจสอบสถานะปัจจุบันเพียงอย่างเดียว Markov Chain สามารถช่วยในการคาดการณ์พฤติกรรมของระบบในการเปลี่ยนจากสถานะหนึ่งไปอีกสถานะหนึ่ง
เมื่อผู้ใช้ป้อนคำค้นหาลงในเครื่องมือค้นหา อัลกอริธึม PageRank จะระบุไซต์บนเว็บที่ตรงกับคำที่ใช้ค้นหา และแสดงหน้าเหล่านั้นแก่ผู้ใช้ในลำดับของ PageRank โดยใช้เครือข่าย Markov อัลกอริธึม PageRank กำหนดความสำคัญของเว็บไซต์ตามโครงสร้างลิงก์ของเว็บเท่านั้น แทนที่จะเป็นเนื้อหาของหน้า