Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม

การแปลงตัวแปร (Variable Transformation) คืออะไร

การแปลงตัวแปร (Variable Transformation) หมายถึงการแปลงที่นำไปใช้กับค่าบางค่าของตัวแปร กล่าวอีกนัยหนึ่ง สำหรับทุกวัตถุ การแปลงจะถูกนำไปใช้กับค่าของตัวแปรสำหรับวัตถุนั้น ตัวอย่างเช่น หากความสำคัญของตัวแปรเท่านั้นที่สำคัญ ค่าของตัวแปรสามารถเปลี่ยนแปลงได้โดยการสร้างค่าสัมบูรณ์ (Absolute Value)

มีสองประเภทของการแปลงตัวแปร: การแปลงฟังก์ชันง่าย (Simple Functional Transformations) และการปรับมาตรฐาน (Normalization)

ฟังก์ชันง่าย (Simple Functions)

ฟังก์ชันคณิตศาสตร์ง่ายถูกนำไปใช้กับแต่ละค่าโดยอิสระ หาก r เป็นตัวแปร ตัวอย่างของการแปลงเช่นนี้รวมถึง xk, log x, ex, $\sqrt{x}$, $\frac{1}{x}$, sin x, หรือ |x| ในสถิติ การแปลงตัวแปร โดยเฉพาะ sqrt, log, และ 1/x ถูกนำไปใช้เพื่อแปลงระเบียนที่ไม่มีการกระจายปกติ (Gaussian/Normal Distribution) ให้กลายเป็นข้อมูลที่มี แม้สิ่งนี้อาจสำคัญ เหตุผลบางอย่างอาจมีความสำคัญมากกว่าในการเหมืองข้อมูล

พิจารณาตัวแปรที่สนใจคือจำนวนไบต์ข้อมูลในเซสชัน (Session) และจำนวนไบต์มีช่วงจาก 1 ถึง 1 พันล้าน นี่เป็นช่วงกว้างมาก และอาจเป็นประโยชน์ที่จะบีบอัดมันโดยใช้การแปลง log10 ในกรณีนี้ เซสชันที่ถ่ายโอน 108 และ 109 ไบต์จะคล้ายกันมากกว่าเซสชันที่ถ่ายโอน 10 และ 1000 ไบต์ (9 - 8 = 1 เทียบกับ 3 - 1 = 2)

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

การปรับมาตรฐานหรือการมาตรฐาน化 (Normalization or Standardization)

อีกประเภททั่วไปของการแปลงตัวแปรคือการมาตรฐาน化หรือการปรับมาตรฐานของตัวแปร วัตถุประสงค์ของการมาตรฐาน化หรือการปรับมาตรฐานคือการสร้างกลุ่มค่าทั้งหมดให้มีคุณสมบัติเฉพาะ ตัวอย่างทั่วไปคือ "การมาตรฐาน化ตัวแปร" (Standardizing a Variable) ในสถิติ หาก x' เป็นค่าเฉลี่ย (Mean) ของค่าแอตทริบิวต์ และ sx เป็นส่วนเบี่ยงเบนมาตรฐาน (Standard Deviation) ของพวกมัน แล้วการแปลง x' = (x - x') / sx สร้างตัวแปรใหม่ที่มีค่าเฉลี่ย 0 และส่วนเบี่ยงเบนมาตรฐาน 1

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

ค่าเฉลี่ยและส่วนเบี่ยงเบนมาตรฐานได้รับผลกระทบอย่างมากจากค่าผิดปกติ (Outliers) ดังนั้นการแปลงข้างต้นมักถูกปรับเปลี่ยน แรก ค่าเฉลี่ยถูกแทนที่ด้วยค่ามัธยฐาน (Median) คือค่ากลาง สอง ส่วนเบี่ยงเบนมาตรฐานถูกแทนที่ด้วยส่วนเบี่ยงเบนมาตรฐานสัมบูรณ์ (Absolute Standard Deviation) โดยเฉพาะ หาก r เป็นตัวแปร ส่วนเบี่ยงเบนมาตรฐานสัมบูรณ์ของ r กำหนดโดย $\mathrm{\sigma_{A}=\displaystyle\sum\limits_{i=1}^m |X_{i}-\mu|}$ โดยที่ xi เป็นค่าที่ ith ของตัวแปร m คือจำนวนวัตถุ และ μ เป็นค่าเฉลี่ยหรือค่ามัธยฐาน

Variable Transformation: Simple Functions (log, sqrt) และ Normalization/Standardization (Z-score, Median/MAD)

ทำความเข้าใจ Variable Transformation: Simple Functions (x^k, log, sqrt, 1/x) สำหรับปรับ Distribution และ Normalization (Z-score, Median/MAD) สำหรับปรับ Scale ให้เหมาะสมกับการคำนวณ