Big Data Analytics - เครื่องมือวิเคราะห์ข้อมูล

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

ภาษาการเขียนโปรแกรม R

R เป็นภาษาโปรแกรมโอเพ่นซอร์สโดยเน้นที่การวิเคราะห์ทางสถิติ สามารถแข่งขันกับเครื่องมือทางการค้าเช่น SAS, SPSS ในแง่ของความสามารถทางสถิติ คิดว่าเป็นส่วนต่อประสานกับภาษาโปรแกรมอื่น ๆ เช่น C, C ++ หรือ Fortran

ข้อดีอีกอย่างของ R คือไลบรารีโอเพนซอร์สจำนวนมากที่พร้อมใช้งาน ใน CRAN มีแพ็คเกจมากกว่า 6000 รายการที่สามารถดาวน์โหลดได้ฟรีและในรูปแบบGithub มีแพ็คเกจ R ให้เลือกมากมาย

ในแง่ของประสิทธิภาพ R นั้นช้าสำหรับการดำเนินการที่เข้มข้นเนื่องจากมีไลบรารีจำนวนมากที่มีอยู่ส่วนที่ช้าของโค้ดจะถูกเขียนด้วยภาษาที่คอมไพล์ แต่ถ้าคุณตั้งใจจะดำเนินการที่ต้องเขียนลึกสำหรับลูป R ก็คงไม่ใช่ทางเลือกที่ดีที่สุดของคุณ เพื่อวัตถุประสงค์ในการวิเคราะห์ข้อมูลมีไลบรารีที่ดีเช่นdata.table, glmnet, ranger, xgboost, ggplot2, caret ที่อนุญาตให้ใช้ R เป็นอินเทอร์เฟซสำหรับภาษาโปรแกรมที่เร็วขึ้น

Python สำหรับการวิเคราะห์ข้อมูล

Python เป็นภาษาโปรแกรมสำหรับวัตถุประสงค์ทั่วไปและมีไลบรารีจำนวนมากที่อุทิศให้กับการวิเคราะห์ข้อมูลเช่น pandas, scikit-learn, theano, numpy และ scipy.

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

สำหรับการเรียนรู้ของเครื่อง scikit-learnเป็นสภาพแวดล้อมที่ดีที่มีอัลกอริทึมจำนวนมากที่สามารถจัดการชุดข้อมูลขนาดกลางได้โดยไม่มีปัญหา เมื่อเทียบกับห้องสมุดเทียบเท่าของ R (คาเร็ต)scikit-learn มี API ที่สะอาดและสอดคล้องกันมากขึ้น

จูเลีย

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

เราขอแนะนำ Julia สำหรับอัลกอริทึมการสร้างต้นแบบที่มีการคำนวณอย่างเข้มข้นเช่นเครือข่ายประสาทเทียม เป็นเครื่องมือที่ดีสำหรับการวิจัย ในแง่ของการนำแบบจำลองไปใช้ในการผลิต Python อาจมีทางเลือกอื่นที่ดีกว่า อย่างไรก็ตามสิ่งนี้กลายเป็นปัญหาน้อยลงเนื่องจากมีบริการเว็บที่ทำวิศวกรรมการใช้โมเดลใน R, Python และ Julia

SAS

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

นอกเหนือจากข้อเสียที่ชัดเจนของเครื่องมือทางการค้าแล้ว SAS ยังปรับขนาดชุดข้อมูลขนาดใหญ่ได้ไม่ดี แม้แต่ชุดข้อมูลขนาดกลางก็มีปัญหากับ SAS และทำให้เซิร์ฟเวอร์ล่มได้ เฉพาะในกรณีที่คุณกำลังทำงานกับชุดข้อมูลขนาดเล็กและผู้ใช้ไม่ใช่นักวิทยาศาสตร์ข้อมูลผู้เชี่ยวชาญขอแนะนำให้ใช้ SAS สำหรับผู้ใช้ขั้นสูง R และ Python มีสภาพแวดล้อมที่มีประสิทธิผลมากขึ้น

SPSS

SPSS ปัจจุบันเป็นผลิตภัณฑ์ของ IBM สำหรับการวิเคราะห์ทางสถิติ ส่วนใหญ่จะใช้ในการวิเคราะห์ข้อมูลการสำรวจและสำหรับผู้ใช้ที่ไม่สามารถเขียนโปรแกรมได้ก็เป็นทางเลือกที่ดี มันอาจจะใช้งานง่ายเหมือน SAS แต่ในแง่ของการนำโมเดลไปใช้มันจะง่ายกว่าเนื่องจากมีโค้ด SQL เพื่อให้คะแนนโมเดล โดยปกติรหัสนี้จะไม่มีประสิทธิภาพ แต่เป็นการเริ่มต้นในขณะที่ SAS ขายผลิตภัณฑ์ที่ให้คะแนนแบบจำลองสำหรับแต่ละฐานข้อมูลแยกกัน สำหรับข้อมูลขนาดเล็กและทีมที่ไม่มีประสบการณ์ SPSS เป็นตัวเลือกที่ดีพอ ๆ กับ SAS

อย่างไรก็ตามซอฟต์แวร์มีข้อ จำกัด ค่อนข้างมากและผู้ใช้ที่มีประสบการณ์จะได้รับคำสั่งจากขนาดที่มีประสิทธิผลมากขึ้นโดยใช้ R หรือ Python

Matlab, Octave

มีเครื่องมืออื่น ๆ เช่น Matlab หรือเวอร์ชันโอเพนซอร์ส (Octave) เครื่องมือเหล่านี้ส่วนใหญ่ใช้เพื่อการวิจัย ในแง่ของความสามารถ R หรือ Python สามารถทำได้ทั้งหมดที่มีอยู่ใน Matlab หรือ Octave ควรซื้อใบอนุญาตของผลิตภัณฑ์หากคุณสนใจในการสนับสนุนที่มีให้เท่านั้น