การทำให้เป็นมาตรฐานและการเพิ่มในการสร้างแบบจำลองแบบคาดการณ์

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

นอกเหนือจากอาร์กิวเมนต์เริ่มต้น เช่น นิพจน์เป้าหมาย (การวัดผลการคาดการณ์) และนิพจน์ตัวคาดการณ์ (การวัดผลและ/หรือมิติข้อมูลที่ใช้เพื่อคาดการณ์) คุณสามารถเพิ่มอาร์กิวเมนต์เพิ่มเติมสองตัวเพื่อปรับแต่งการคาดการณ์ของคุณได้ ได้แก่ lambda ซึ่งเป็นพารามิเตอร์การทำให้เป็นมาตรฐาน และ augmentation ส่วนนี้เกี่ยวข้องกับการเพิ่มอาร์กิวเมนต์ใหม่ไปยังไวยากรณ์ของการคำนวณของคุณ

แบบจำลองใดบ้างที่ใช้งานกับการทำให้เป็นมาตรฐานและการเพิ่มได้

เพื่อเตือนความจำให้กับคุณ ฟังก์ชันการสร้างแบบจำลองแบบคาดการณ์ใน Tableau รองรับแบบจำลองสามประเภท ได้แก่ การถดถอยเชิงเส้น (รู้จักในชื่อ การถดถอยกําลังสองน้อยที่สุดหรือ OLS) การถดถอยเชิงเส้นที่มีการทำให้เป็นมาตรฐาน (หรือการถดถอยแบบริดจ์) และการถดถอยของกระบวนการ Gaussian หากคุณใช้การถดถอยเชิงเส้นหรือการถดถอยแบบริดจ์ การเพิ่มจะช่วยให้คุณเพิ่มความสามารถแบบจำลองของคุณเพื่อเลือกใช้รูปแบบที่ไม่ใช่เชิงเส้นได้ หากคุณใช้การถดถอยแบบริดจ์ พารามิเตอร์การทำให้เป็นมาตรฐานคือสเกลาร์ที่คุณสามารถใช้เพื่อปรับผลจากการทำให้เป็นมาตรฐานบนแบบจำลองของคุณได้

การทำให้เป็นมาตรฐานและการเพิ่มไม่สามารถใช้กับการถดถอยของกระบวนการ Gaussian ได้

ก่อนจะพูดคุยมากกว่านี้เกี่ยวกับการทำให้เป็นมาตรฐานและการเพิ่ม เรามาลองดูโมเดลสองแบบนี้กันก่อน

การถดถอยเชิงเส้นใช้ได้ดีที่สุดเมื่อมีตัวคาดการณ์อย่างน้อยหนึ่งตัวที่มีความสัมพันธ์เชิงเส้นระหว่างการคาดการณ์และเป้าหมายการคาดการณ์ ซึ่งไม่ได้รับผลกระทบจากสภาพเบื้องหลังเดียวกัน และไม่ได้แสดงถึงสองอินสแตนซ์ของข้อมูลเดียวกัน (ตัวอย่างเช่น ยอดขายที่แสดงทั้งในสกุลเงินดอลลาร์และยูโร)

การถดถอยเชิงเส้นที่มีการทำให้เป็นมาตรฐานใช้เพื่อปรับปรุงเสถียรภาพ ลดผลกระทบของสภาวะสหสัมพันธ์ และปรับปรุงประสิทธิภาพของการประมวลผลและการทำให้เป็นมาตรฐาน ใน Tableau จะใช้การทำให้เป็นมาตรฐานแบบ L2 หากต้องการข้อมูลเพิ่มเติมเกี่ยวกับการทำให้เป็นมาตรฐานแบบ L2 โปรดดูบทเรียนเกี่ยวกับ การถดถอยแบบริดจ์ นี้

การทำให้เป็นมาตรฐานคืออะไร

การถดถอยแบบริดจ์คือประเภทเฉพาะของการถดถอยเชิงเส้นที่มีการทำให้เป็นมาตรฐาน การทำให้เป็นมาตรฐานจะกำหนดให้มีการลดความน่าเชื่อถือสำหรับค่าสัมประสิทธิ์ของแบบจำลอง ความเข้มข้นของการทำให้เป็นมาตรฐานจะควบคุมโดยแลมบ์ดา ซึ่งเป็นสเกลาร์ที่ใช้เพื่อปรับแต่งผลกระทบโดยรวมของการทำให้เป็นมาตรฐาน ยิ่งค่าสูงขึ้น การลดความน่าเชื่อถือยิ่งมากขึ้น (นั่นก็คือการทำให้เป็นมาตรฐานยิ่งสูงขึ้น)

การถดถอยแบบริดจ์สามารถจัดการปัญหาบางประการของการถดถอยเชิงเส้นได้ ซึ่งได้แก่

  • การลดความบกพร่องที่เกิดจากปัญหาความสัมพันธ์ระหว่างตัวแปรอิสระในกลุ่มตัวคาดการณ์

  • หากปัญหากำลังสองน้อยที่สุดคือสภาพความบกพร่อง เช่น หากจำนวนจุดข้อมูลน้อยกว่าจำนวนฟีเจอร์ แลมบ์ดาจะเลือกโซลูชันเฉพาะตัว

  • ซึ่งจะให้วิธีการปรับปรุงการทำให้เป็นมาตรฐานของแบบจำลองเชิงเส้น

ตามค่าเริ่มต้น การถดถอยแบบริดจ์ใน Tableau มี lambda=0.5 เนื่องจากค่านี้ทำงานได้ดีในหลายกรณี หากต้องการเปลี่ยนค่าแลมบ์ดา ให้แก้ไขการคำนวณตารางอย่างง่ายๆ (ดังตัวอย่างด้านล่าง)

การเพิ่มคืออะไร

การเพิ่มใน MODEL_QUANTILE และ MODEL_PERCENTILE คือตัวอย่างง่ายๆ ของการเพิ่มข้อมูล ซึ่งก็คือ ตัวคาดการณ์จะขยายไปยังพหุนามลำดับสูงขึ้น ใน Tableau มีพหุนามสองประเภทที่มาพร้อมกับฟังก์ชันการสร้างแบบจำลองแบบคาดการณ์

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

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

ในการถดถอยเชิงเส้นที่มี augmentation=on มีเพียงมิติข้อมูลแบบเรียงลำดับเท่านั้นที่จะเพิ่มตามค่าเริ่มต้น ในการถดถอยแบบริดจ์ที่มี model=rl มีเพียงการวัดผลเท่านั้นที่จะเพิ่มตามค่าเริ่มต้น หากต้องการแทนที่การตั้งค่าและปิดใช้งานการเพิ่มสำหรับตัวคาดการณ์แต่ละตัวในการคำนวณของคุณ ให้ใช้ augmentation=off ซึ่งจะไม่มีการเพิ่มพหุนามลำดับสูงขึ้น

การปิดใช้การเพิ่มจะมีประโยชน์เมื่อชุดข้อมูลมีขนาดเล็กมาก เนื่องจากการเพิ่มอาจทำให้สิ่งรบกวนที่มีอยู่ในข้อมูลดั้งเดิมเกิด Overfit นอกจากนี้ยังเป็นเพราะความสัมพันธ์ที่เกิดขึ้นมีความเรียบง่ายกว่าและเข้าใจง่ายกว่าด้วย

หมายเหตุ: การเพิ่มจะเปิด/ปิดแยกตามแต่ละตัวคาดการณ์ (กล่าวคือ ภายในอาร์กิวเมนต์ตัวคาดการณ์ของการคำนวณของคุณ) แลมบ์ดา (และแบบจำลอง) จะปรับใช้ที่ระดับสูงขึ้น (นอกนิพจน์ตัวคาดการณ์)

การกำหนดค่าแลมบ์ดาและการเพิ่มในการคำนวณของคุณ

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

MODEL_QUANTILE("model=rl, lambda=0.05", 0.5, SUM([Profit]), "augmentation=off", SUM([Sales]))

ด้านล่างนี้คือตารางที่สรุปข้อมูลโดยย่อ ว่าเปลี่ยนการเพิ่มและแลมบ์ดาจากค่าเริ่มต้นจะส่งผลต่อแบบจำลองเชิงเส้นหรือไม่

 การเพิ่มแลมบ์ดา
การถดถอยแบบริดจ์ใช่ใช่
การถดถอยเชิงเส้นใช่ไม่เกี่ยวข้อง

ข้อควรพิจารณาสำหรับการทำให้เป็นมาตรฐานและการเพิ่ม

  • หากคุณมีแบบจำลองที่ไม่ถูกต้องสำหรับข้อมูลของคุณ การเปลี่ยนพารามิเตอร์การทำให้เป็นมาตรฐานหรือการเพิ่มอาจไม่ได้สร้างผลลัพธ์ที่ดีขึ้นมากนัก ให้พิจารณาตรวจสอบว่าประเภทข้อมูลถูกต้องหรือไม่ (การวัดผลเทียบกับมิติข้อมูล) ตัวอย่างเช่น หากข้อมูลเบื้องหลังคืออนุกรมเวลา ให้พิจารณาใช้การถดถอยของกระบวนการ Gaussian แทนโดยเปลี่ยนแบบจำลองในการคำนวณตารางของคุณเป็น model=gp

  • เนื่องจากไม่ได้ทำให้ OLS เป็นมาตรฐาน จึงไม่มีค่าแลมบ์ดาที่สามารถเปลี่ยนแปลงได้

  • หากชุดข้อมูลของคุณมีขนาดเล็กมาก และคุณมีมิติข้อมูล (โดยเฉพาะมิติข้อมูลที่มีความไม่ซ้ำกันสูง) ให้พิจารณาใช้การถดถอยแบบริดจ์โดยเพิ่ม model=rl ไปยังการคำนวณตารางของคุณ

  • ทุกสิ่งเท่ากัน (สำหรับชุดข้อมูลเดียวกัน เมื่อกำหนดให้เปิดหรือปิดการเพิ่ม) แลมบ์ดาที่ต่ำอาจปรับปรุงความพอดีได้ แต่การทำให้เป็นมาตรฐานจะแย่ลง (ทำให้เกิด Overfitting)

  • ในทางกลับกัน แลมบ์ดาที่สูงอาจทำให้ความพอดีเป็นแบบจำลองคงที่ โดยไม่มีการพึ่งพาบนตัวคาดการณ์ใดๆ เลย การทำเช่นนี้จะลดความสามารถของแบบจำลอง (ทำให้เกิด Underfitting)

ตัวอย่างที่ 1

ตัวอย่างนี้แสดงความสัมพันธ์ระหว่างระดับคอเลสเตอรอลเฉลี่ยกับโรคหัวใจในผู้ชายและผู้หญิง โดยผู้ชายแสดงแทนด้วยสัญลักษณ์สี่เหลี่ยม และผู้หญิงแสดงแทนด้วยวงกลม

ในภาพแรก สัญลักษณ์สีน้ำเงินบ่งบอกถึงเป้าหมายการคาดการณ์ ส่วนสัญลักษณ์สีส้มคือค่าจากแบบจำลอง คุณจะเห็นว่าข้อมูลมีสิ่งรบกวนมาก และการเพิ่มเปิดอยู่ โดยมีค่าแลมบ์ดาน้อยถึง 0.01 เราจึงเห็นอัตราโรคหัวใจมากกว่า 1 ซึ่งไม่สมจริง การพึ่งพามีความชันมากเกินไปซึ่งอาจเกิดจากค่าผิดปกติทั้งหมดในข้อมูลที่มีสิ่งรบกวนนั้น

โรคหัวใจตามเพศ พร้อมทั้งเป้าหมายการคาดการณ์และแบบจำลองที่มีความพอดีที่แย่

MODEL_QUANTILE("model=rl, lambda=0.01", 0.5, AVG([Target]), ATTR([Sex]), "augmentation=on", AVG([Chol]))

ในภาพถัดไป เราเปรียบเทียบเป้าหมายการคาดการณ์กับแบบจำลองอื่น โดยปิดการเพิ่มและมีค่าแลมบ์ดาอยู่ที่ 10 สังเกตว่าแบบจำลองนี้มีความสมจริงมากขึ้น และไม่มีสัญลักษณ์เกินอัตราโรคซึ่งมีค่าอยู่ที่ 1

โรคหัวใจตามเพศ พร้อมทั้งเป้าหมายการคาดการณ์และแบบจำลองที่ดีขึ้น

MODEL_QUANTILE("model=rl, lambda=10", 0.5, AVG([Target]), ATTR([Sex]), "augmentation=off", AVG([Chol]))

ตัวอย่างที่ 2

ถัดไป ลองมาดูอีกตัวอย่างหนึ่งในชีวิตจริงโดยใช้ข้อมูลจำนวนผู้ใช้ของระบบการแชร์จักรยาน Bluebikes (ก่อนหน้านี้คือ Hubway) ที่ Boston ในกรณีนี้ การถดถอยเชิงเส้นทำงานได้ดี เปรียบเทียบกับภาพต่อไปนี้ ซึ่งรวมไตรมาสต่างๆ ของปี 2017

พล็อตของข้อมูลจำนวนผู้ใช้ของ Hubway ที่ไม่มี Overfitting

MODEL_QUANTILE('model=rl, lambda=0.05', 0.5, sum([Trip.Duration]), AVG([Temp]))

พล็อตของข้อมูลจำนวนผู้ใช้ของ Hubway ที่ไม่มี Overfitting

MODEL_QUANTILE('model=rl, lambda=0.05', 0.5, AVG([Speed]), AVG([Temp]))

ไม่มีภาพใดที่มีแนวโน้มว่าจะเกิด Overfitting ดังนั้นการพึ่งพาบนแลมบ์ดาจึงเป็นจุดอ่อนของแลมด์ดาที่มีค่าน้อย

ตอนนี้ลองมาดูภาพสุดท้ายนี้กัน

พล็อตของข้อมูลจำนวนผู้ใช้ของ Hubway ที่ไม่มี Overfitting

MODEL_QUANTILE('model=rl, lambda=2', 0.5, sum([Trip.Duration]), AVG([Temp]))

สังเกตว่าเมื่อแลมบ์ดาเพิ่มขึ้น ความพอดีจะราบลงจนไม่มีความชัน (ซึ่งก็คือการทำให้เป็นมาตรฐานมากเกินไปหรือ “Underfit”)

ขอบคุณสำหรับข้อเสนอแนะของคุณส่งข้อเสนอแนะของคุณเรียบร้อยแล้ว ขอขอบคุณ