อัลกอริธึมวิทยาศาสตร์ข้อมูล 9 อันดับแรกที่นักวิทยาศาสตร์ข้อมูลทุกคนควรรู้
เผยแพร่แล้ว: 2020-02-13อัลกอริธึมคือชุดของกฎหรือคำสั่งที่ตามมาด้วยโปรแกรมคอมพิวเตอร์เพื่อใช้การคำนวณหรือทำหน้าที่แก้ปัญหาอื่นๆ เนื่องจากวิทยาศาสตร์ข้อมูลเป็นเรื่องเกี่ยวกับการแยกข้อมูลที่มีความหมายสำหรับชุดข้อมูล จึงมีอัลกอริทึมมากมายที่พร้อมจะแก้ไขวัตถุประสงค์ได้
อัลกอริธึมวิทยาศาสตร์ข้อมูล สามารถช่วยในการจัดประเภท การทำนาย การวิเคราะห์ การตรวจจับค่าเริ่มต้น ฯลฯ อัลกอริธึมยังประกอบเป็นพื้นฐานของไลบรารีการเรียนรู้ของเครื่อง เช่น scikit-learn ดังนั้นจึงช่วยให้มีความเข้าใจอย่างถ่องแท้ถึงสิ่งที่เกิดขึ้นภายใต้พื้นผิว
เรียนรู้ โปรแกรมวิทยาศาสตร์ข้อมูล จากมหาวิทยาลัยชั้นนำของโลก รับโปรแกรม PG สำหรับผู้บริหาร โปรแกรมประกาศนียบัตรขั้นสูง หรือโปรแกรมปริญญาโท เพื่อติดตามอาชีพของคุณอย่างรวดเร็ว
อ่าน: อัลกอริธึมการเรียนรู้ของเครื่องสำหรับวิทยาศาสตร์ข้อมูล
สารบัญ
อัลกอริธึมวิทยาศาสตร์ข้อมูลที่ใช้กันทั่วไป
1. การจำแนกประเภท
มันถูกใช้สำหรับตัวแปรเป้าหมายที่ไม่ต่อเนื่อง และผลลัพธ์จะอยู่ในรูปแบบของหมวดหมู่ การจัดกลุ่ม การเชื่อมโยง และแผนผังการตัดสินใจเป็นวิธีการประมวลผลข้อมูลที่ป้อนเข้าเพื่อคาดการณ์ผลลัพธ์ ตัวอย่างเช่น ผู้ป่วยรายใหม่อาจถูกระบุว่า "ป่วย" หรือ "สุขภาพดี" โดยใช้แบบจำลองการจำแนกประเภท
2. การถดถอย
การถดถอยใช้เพื่อทำนายตัวแปรเป้าหมายและเพื่อวัดความสัมพันธ์ระหว่างตัวแปรเป้าหมายซึ่งมีลักษณะต่อเนื่องกัน เป็นวิธีการที่ตรงไปตรงมาในการวางแผน 'แนวที่เหมาะที่สุด' บนพล็อตของจุดสนใจเดียวหรือชุดของคุณสมบัติ เช่น x และตัวแปรเป้าหมาย y
อาจใช้การถดถอยเพื่อประมาณปริมาณน้ำฝนโดยพิจารณาจากความสัมพันธ์ก่อนหน้าระหว่างพารามิเตอร์บรรยากาศต่างๆ อีกตัวอย่างหนึ่งคือการทำนายราคาบ้านตามลักษณะเด่น เช่น พื้นที่ ท้องที่ อายุ ฯลฯ
ตอนนี้ให้เราทำความเข้าใจหนึ่งในองค์ประกอบพื้นฐานที่สำคัญที่สุดของ อัลกอริธึมวิทยาศาสตร์ข้อมูล – การถดถอยเชิงเส้น
3. การถดถอยเชิงเส้น
สมการเชิงเส้นสำหรับชุดข้อมูลที่มีคุณสมบัติ N สามารถกำหนดได้ดังนี้: y = b 0 + b 1 .x 1 + b 2 .x 2 + b 3 .x 3 + …..b n .x n โดย ที่ b 0 คือ ค่าคงที่บางอย่าง
สำหรับข้อมูลที่ไม่แปรผัน (y = b 0 + b 1 .x) เป้าหมายคือเพื่อลดการสูญเสียหรือข้อผิดพลาดให้เหลือน้อยที่สุดเท่าที่จะเป็นไปได้สำหรับตัวแปรที่ส่งคืน นี่คือจุดประสงค์หลักของฟังก์ชันต้นทุน หากคุณถือว่า b 0 เป็นศูนย์และป้อนค่าที่แตกต่างกันสำหรับ b 1 คุณจะพบว่าฟังก์ชันต้นทุนการถดถอยเชิงเส้นมีรูปร่างนูน
เครื่องมือทางคณิตศาสตร์ช่วยในการปรับพารามิเตอร์ทั้งสองให้เหมาะสม b 0 และ b 1 และลดฟังก์ชันต้นทุน หนึ่งในนั้นถูกกล่าวถึงดังนี้
4. วิธีกำลังสองน้อยที่สุด
ในกรณีข้างต้น b 1 คือน้ำหนักของ x หรือความชันของเส้นตรง และ b 0 คือค่าตัดขวาง นอกจากนี้ ค่าที่ทำนายทั้งหมดของ y อยู่บนเส้น และวิธีกำลังสองน้อยที่สุดพยายามลดระยะห่างระหว่างแต่ละจุดให้เหลือน้อยที่สุด เช่น (x i , yi ) ค่าที่คาดการณ์ไว้
ในการคำนวณค่าของ b 0 ให้หาค่าเฉลี่ยของค่าทั้งหมดของ x i แล้ว คูณด้วย b 1 จากนั้น ลบผลคูณจากค่าเฉลี่ยของ y i ทั้งหมด นอกจากนี้ คุณสามารถเรียกใช้โค้ดใน Python สำหรับค่า b 1 ค่าเหล่านี้จะพร้อมที่จะเสียบเข้ากับฟังก์ชันต้นทุน และมูลค่าที่ส่งคืนจะลดลงสำหรับการสูญเสียและข้อผิดพลาด ตัวอย่างเช่น สำหรับ b 0 = -34.671 และ b 1 = 9.102 ฟังก์ชันต้นทุนจะส่งกลับเป็น 21.801
5. การไล่ระดับสีโคตร
เมื่อมีคุณสมบัติหลายอย่าง เช่น ในกรณีของการถดถอยพหุคูณ การคำนวณที่ซับซ้อนจะได้รับการดูแลโดยวิธีการต่างๆ เช่น เกรเดียนท์โคตร เป็นอัลกอริธึมการปรับให้เหมาะสมแบบวนซ้ำที่ใช้สำหรับกำหนดค่าต่ำสุดของฟังก์ชันในเครื่อง กระบวนการเริ่มต้นด้วยการนำค่าเริ่มต้นสำหรับ b 0 และ b 1 และดำเนินต่อไปจนกว่าความชันของฟังก์ชันต้นทุนจะเป็นศูนย์

สมมติว่าคุณต้องไปที่ทะเลสาบที่ตั้งอยู่ที่จุดต่ำสุดของภูเขา หากคุณมีทัศนวิสัยเป็นศูนย์และกำลังยืนอยู่บนยอดเขา คุณจะเริ่มต้นจากจุดที่แผ่นดินมีแนวโน้มที่จะลงมา หลังจากก้าวแรกและเดินตามทางลงแล้ว มีแนวโน้มว่าจะถึงทะเลสาป
แม้ว่าฟังก์ชันต้นทุนจะเป็นเครื่องมือที่ช่วยให้เราสามารถประเมินพารามิเตอร์ได้ แต่อัลกอริธึมการไล่ระดับการไล่ระดับสีสามารถช่วยในการอัปเดตและฝึกอบรมพารามิเตอร์ของโมเดลได้ ตอนนี้ มาดูภาพรวม อัลกอริธึมอื่นๆ สำหรับวิทยาศาสตร์ข้อมูลกัน
6. การถดถอยโลจิสติก
ในขณะที่การคาดการณ์ของการถดถอยเชิงเส้นเป็นค่าต่อเนื่อง การถดถอยโลจิสติกจะให้การทำนายแบบแยกส่วนหรือแบบไบนารี กล่าวอีกนัยหนึ่ง ผลลัพธ์ในผลลัพธ์เป็นของสองคลาสหลังจากใช้ฟังก์ชันการแปลง ตัวอย่างเช่น สามารถใช้การถดถอยโลจิสติกเพื่อทำนายว่านักเรียนจะผ่านหรือล้มเหลวหรือฝนจะตกหรือไม่ อ่านเพิ่มเติมเกี่ยวกับการถดถอยโลจิสติก
7. K-หมายถึงการจัดกลุ่ม
เป็นอัลกอริธึมแบบวนซ้ำที่กำหนดจุดข้อมูลที่คล้ายคลึงกันในกลุ่ม เพื่อทำเช่นเดียวกัน มันจะคำนวณเซนทรอยด์ของกลุ่ม k และจัดกลุ่มข้อมูลตามระยะทางที่น้อยที่สุดจากเซนทรอยด์ เรียนรู้เพิ่มเติมเกี่ยวกับการวิเคราะห์คลัสเตอร์ในการทำเหมืองข้อมูล
8. K-เพื่อนบ้านที่ใกล้ที่สุด (KNN)
อัลกอริทึม KNN ดำเนินการผ่านชุดข้อมูลทั้งหมดเพื่อค้นหาอินสแตนซ์ที่ใกล้ที่สุด k เมื่อต้องการผลลัพธ์สำหรับอินสแตนซ์ข้อมูลใหม่ ผู้ใช้ระบุค่าของ k ที่จะใช้
9. การวิเคราะห์องค์ประกอบหลัก (PCA)
อัลกอริธึม PCA ลดจำนวนตัวแปรโดยจับความแปรปรวนสูงสุดของข้อมูลลงในระบบใหม่ของ 'ส่วนประกอบหลัก' ทำให้ง่ายต่อการสำรวจและแสดงข้อมูลเป็นภาพ
ห่อ
ความรู้เกี่ยวกับ อัลกอริธึมวิทยาศาสตร์ข้อมูลที่ อธิบายไว้ข้างต้นสามารถพิสูจน์ได้ว่ามีประโยชน์อย่างมากหากคุณเพิ่งเริ่มใช้งานภาคสนาม การทำความเข้าใจประเด็นสำคัญยังมีประโยชน์ในขณะที่ทำหน้าที่วิทยาศาสตร์ข้อมูลแบบวันต่อวัน
หากคุณอยากเรียนรู้เกี่ยวกับวิทยาศาสตร์ข้อมูล ลองดู โปรแกรม Executive PG ของ IIIT-B & upGrad ใน Data Science ซึ่งสร้างขึ้นสำหรับมืออาชีพที่ทำงานและมีกรณีศึกษาและโครงการมากกว่า 10 รายการ เวิร์กช็อปภาคปฏิบัติจริง การให้คำปรึกษากับผู้เชี่ยวชาญในอุตสาหกรรม 1 -on-1 พร้อมที่ปรึกษาในอุตสาหกรรม การเรียนรู้มากกว่า 400 ชั่วโมงและความช่วยเหลือด้านงานกับบริษัทชั้นนำ
ประเด็นใดบ้างที่เราควรพิจารณาก่อนเลือกอัลกอริธึมวิทยาศาสตร์ข้อมูลสำหรับ ML
ตรวจสอบความเป็นเส้นตรง วิธีที่ง่ายที่สุดในการทำเช่นนี้คือการใส่เส้นตรงหรือทำการถดถอยโลจิสติกหรือ SVM และค้นหาข้อผิดพลาดที่เหลือ ข้อผิดพลาดที่มีขนาดใหญ่กว่าบ่งชี้ว่าข้อมูลไม่เป็นเชิงเส้นและต้องใช้เทคนิคที่ซับซ้อนเพื่อให้พอดีกับข้อมูล
อัลกอริธึม Naive Bayes, Linear และ Logistic regression นั้นง่ายต่อการสร้างและดำเนินการ SVM ซึ่งต้องมีการปรับพารามิเตอร์ โครงข่ายประสาทเทียมที่มีเวลาคอนเวอร์เจนซ์ที่รวดเร็ว และฟอเรสต์แบบสุ่มทั้งหมดต้องใช้เวลาในการฝึกข้อมูลเป็นจำนวนมาก ดังนั้น ให้เลือกตามจังหวะที่คุณต้องการ
ในการสร้างการคาดคะเนที่น่าเชื่อถือ โดยทั่วไปแนะนำให้รวบรวมข้อมูลจำนวนมาก อย่างไรก็ตาม ความพร้อมใช้งานของข้อมูลมักเป็นปัญหา หากข้อมูลการฝึกถูกจำกัดหรือชุดข้อมูลมีการสังเกตน้อยลงและคุณลักษณะจำนวนมากขึ้น เช่น ข้อมูลทางพันธุกรรมหรือข้อความ ให้ใช้อัลกอริธึมที่มีความเอนเอียงสูง/ความแปรปรวนต่ำ เช่น การถดถอยเชิงเส้นหรือ SVM เชิงเส้น
อัลกอริทึมที่ยืดหยุ่นและจำกัดคืออะไร
เนื่องจากพวกมันสร้างรูปแบบฟังก์ชันการทำแผนที่ที่หลากหลายอย่างจำกัด อัลกอริธึมบางตัวจึงถูกกล่าวว่ามีข้อจำกัด ตัวอย่างเช่น การถดถอยเชิงเส้นเป็นเทคนิคที่จำกัด เนื่องจากสามารถสร้างฟังก์ชันเชิงเส้นเช่นเส้นได้เท่านั้น
อัลกอริธึมบางตัวกล่าวว่ามีความยืดหยุ่นเนื่องจากสามารถสร้างรูปแบบฟังก์ชันการทำแผนที่ได้หลากหลายขึ้น KNN ที่มี k=1 มีความหลากหลายมาก ตัวอย่างเช่น เนื่องจากจะพิจารณาทุกจุดข้อมูลอินพุตขณะสร้างฟังก์ชันเอาต์พุตการแมป
หากฟังก์ชันสามารถคาดการณ์ค่าการตอบสนองสำหรับการสังเกตที่กำหนดซึ่งใกล้เคียงกับค่าการตอบสนองที่แท้จริง ค่านี้จะมีลักษณะเป็นความแม่นยำ เทคนิคที่สามารถตีความได้สูง (ตัวแบบที่จำกัด เช่น การถดถอยเชิงเส้น) หมายความว่าสามารถเข้าใจตัวทำนายแต่ละตัว ในขณะที่แบบจำลองที่ยืดหยุ่นจะให้ความแม่นยำสูงกว่าโดยเสียความสามารถในการตีความต่ำ
อัลกอริทึม Naive Bayes คืออะไร?
เป็นอัลกอริธึมการจำแนกประเภทตามทฤษฎีบทของเบย์และสมมติฐานความเป็นอิสระของตัวทำนาย พูดง่ายๆ ก็คือ ตัวแยกประเภท Naive Bayes ระบุว่าการมีอยู่ของคุณลักษณะหนึ่งในชั้นเรียนไม่เกี่ยวข้องกับการมีอยู่ของคุณลักษณะอื่นๆ โมเดล Naive Bayes นั้นสร้างได้ง่ายและมีประโยชน์อย่างยิ่งสำหรับชุดข้อมูลขนาดใหญ่ เนื่องจากความเรียบง่าย Naive Bayes จึงเป็นที่รู้จักกันดีว่าสามารถเอาชนะอัลกอริธึมการจำแนกประเภทที่ทรงพลังที่สุดได้