มีเครื่องมือใดสำหรับวิศวกรรมฟีเจอร์หรือไม่


29

โดยเฉพาะสิ่งที่ฉันกำลังมองหาคือเครื่องมือที่มีฟังก์ชั่นการใช้งานบางอย่างซึ่งเป็นคุณสมบัติเฉพาะสำหรับงานวิศวกรรม ฉันต้องการที่จะสามารถเรียบมองเห็นเติมช่องว่าง ฯลฯ สิ่งที่คล้ายกับ MS Excel แต่ที่มี R เป็นภาษาพื้นฐานแทน VB

คำตอบ:


21

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

Ben Lorica หัวหน้านักวิทยาศาสตร์ด้านข้อมูลและผู้อำนวยการกลยุทธ์เนื้อหาสำหรับข้อมูลของ O'Reilly Media Inc. ได้เขียนบทความที่ดีมากซึ่งอธิบายถึงวิธีการเครื่องมือและการเริ่มต้นที่ทันสมัย พื้นที่อัตโนมัติ (หรือตามที่เขาวางไว้, การทำให้เพรียวลม ) คุณสมบัติด้านวิศวกรรม

ผมเอาดูสั้นที่บางคนที่เพิ่งเริ่มต้นที่เบนได้อ้างอิงกับสินค้าโดยSkytreeแน่นอนลักษณะที่น่าประทับใจมากโดยเฉพาะอย่างยิ่งในเรื่องการเรื่องของคำถามนี้ ต้องบอกว่าการอ้างสิทธิ์ของพวกเขาบางอย่างฟังดูน่าสงสัยสำหรับฉัน (เช่น"Skytree เร่งความเร็ววิธีการเรียนรู้ของเครื่องได้ถึง 150 เท่าเมื่อเทียบกับตัวเลือกโอเพนซอร์ซ" ) อย่างต่อเนื่องการพูดคุยเกี่ยวกับวิทยาศาสตร์ข้อมูลและการนำเสนอการเรียนรู้เครื่องเชิงพาณิชย์แล้วผมได้พูดถึงการแก้ปัญหาโดยไมโครซอฟท์โดยเฉพาะอย่างยิ่งของพวกเขาAzure เครื่องเรียนรู้สตูดิโอ ผลิตภัณฑ์บนเว็บนี้มีประสิทธิภาพและสวยงามและมีคุณสมบัติทางวิศวกรรม (FEF) สำหรับตัวอย่างของ FEF แบบง่าย ๆ ดูวิดีโอที่น่าสนใจนี้

กลับไปที่คำถามที่ฉันคิดว่าง่ายที่สุดวิธีหนึ่งที่สามารถนำมาใช้สำหรับการทำงานอัตโนมัติวิศวกรรมคุณลักษณะคือการใช้ที่สอดคล้องกันIDEs เนื่องจากคุณ (ผมด้วย) มีความสนใจในการวิจัยเป็นภาษาแบ็กเอนด์วิทยาศาสตร์ข้อมูลที่ผมจะแนะนำในการตรวจสอบนอกเหนือไปจาก RStudio อื่นที่คล้ายกัน IDE มาเปิดที่เรียกว่าRKWard ข้อดีอย่างหนึ่งของ RKWard vs RStudio ก็คือมันสนับสนุนการเขียนปลั๊กอินสำหรับ IDE ดังนั้นจึงทำให้นักวิทยาศาสตร์ด้านข้อมูลสามารถทำงานด้านวิศวกรรมอัตโนมัติและปรับปรุงการวิเคราะห์ข้อมูล R-based

ในที่สุดในด้านอื่น ๆ ของสเปกตรัมของการแก้ปัญหาคุณลักษณะวิศวกรรมที่เราสามารถหาบางโครงการวิจัย สองสิ่งที่น่าสังเกตมากที่สุดคือโครงการโคลัมบัสของมหาวิทยาลัยสแตนฟอร์ดซึ่งอธิบายในรายละเอียดในรายงานการวิจัยที่สอดคล้องกันและการล้างสมองที่อธิบายไว้ในบทความนี้


5

Featuretoolsเป็นไลบรารีหลามที่เพิ่งเปิดตัวสำหรับวิศวกรรมคุณสมบัติอัตโนมัติ มันขึ้นอยู่กับอัลกอริทึมที่เรียกว่าการสังเคราะห์คุณสมบัติลึกซึ่งพัฒนาขึ้นในปี 2015 MIT และทดสอบกับการแข่งขันวิทยาศาสตร์ข้อมูลสาธารณะบน Kaggle

นี่เป็นวิธีที่เหมาะสมกับกระบวนการวิทยาศาสตร์ข้อมูลทั่วไป

ป้อนคำอธิบายรูปภาพที่นี่

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

คำเตือน: ฉันเป็นหนึ่งในนักพัฒนาในโครงการ


2

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

โปรดทราบว่า Trifacta มีเครื่องมือที่ใช้งานง่ายสำหรับการแปลงข้อมูล มันมี GUI ที่ใช้งานง่ายอย่างมากที่ช่วยให้การตั้งค่าการแปลง / คุณสมบัติวิศวกรรมแผนที่ นอกจากนี้ยังมีรุ่นทดลองใช้ฟรีที่สามารถใช้สำหรับปัญหาที่มีขนาดพอสมควร


2

Scikit เรียนรู้เพิ่งเปิดตัวหม้อแปลงใหม่ที่จัดการกับคุณสมบัติหลายด้านของวิศวกรรม ตัวอย่างเช่น:

  1. คุณสามารถทำเทคนิคการใส่ข้อมูลที่ขาดหายไปหลาย ๆ อันด้วยSimpleImputer( http://scikit-learn.org/stable/modules/generated/sklearn.impute.SimpleImputer.html ) รวมถึงการใส่ค่าเฉลี่ยค่าเฉลี่ยและตัวแปรตามอำเภอใจในตัวแปรทั้งตัวเลขและหมวดหมู่ .

  2. คุณสามารถทำการใส่หลายตัวแปรโดยใช้ตัวประมาณหลายอย่างเช่น Bayes, ป่าสุ่มและอื่น ๆ (เทียบเท่ากับ RICE MICE, Amelia และ MissForest) ด้วยIterativeImputer( https://scikit-learn.org/stable/modules/generated/sklearn.impute.IterativeImputer .html # sklearn.impute.IterativeImputer )

  3. คุณสามารถทำการเข้ารหัสแบบร้อนแรงหนึ่งครั้งด้วย OneHotEncoder() Scikit-Learn

  4. คุณสามารถเข้ารหัสตัวแปรเด็ดขาดโดยตัวเลขด้วยการ LabelEncoderคุณสามารถเข้ารหัสตัวแปรเด็ดขาดโดยตัวเลขกับ

  5. คุณสามารถทำการเปลี่ยนแปลงตัวแปร Yeo-Johnson ได้ด้วยPowerTransformer( http://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.PowerTransformer.html )

  6. คุณสามารถแยกวิเคราะห์ด้วยKBinsDiscretiser( https://scikit-learn.org/stable/auto_examples/preprocessing/plot_discretization.html )

มีหม้อแปลงทางวิศวกรรมคุณสมบัติอื่น ๆ ที่อาจเกิดขึ้นใน Scikit-Learn และผู้พัฒนาปรับปรุงห้องสมุดเป็นประจำ

เป็นทางเลือกที่รู้จักกันดี Scikit การเรียนรู้ห้องสมุดมีใหม่ที่เพิ่งเปิดตัวแหล่งที่มาเปิดห้องสมุดเรียกว่าคุณลักษณะที่เครื่องยนต์ ด้วยคุณสมบัติของเครื่องมือคุณสามารถ:

  1. ทำหมายถึงค่ามัธยฐานโดยพลการปลายหางและการสุ่มใส่ในตัวแปรที่เป็นตัวเลขและเด็ดขาด
  2. ทำการเข้ารหัสประเภทต่าง ๆ รวมถึงร้อนจำนวนเต็มลำดับที่หนึ่งหมายถึงการเข้ารหัสและน้ำหนักของหลักฐาน
  3. ทำการเปลี่ยนแปลงตัวแปรต่าง ๆ รวมถึง log, reciprocal, exp และ box cox
  4. การแยกประเภทต่าง ๆ รวมถึงความถี่ที่เท่ากันระยะทางที่เท่ากันและตามต้นไม้
  5. การจัดการล่วงหน้า

รายละเอียดเพิ่มเติมใน repo github และเอกสาร ( https://feature-engine.readthedocs.io/en/latest/ )

ข้อจำกัดความรับผิดชอบ: ฉันสร้างเอ็นจิ้นฟีเจอร์และทำให้เป็นโอเพ่นซอร์ส

แพคเกจหลามโอเพนซอร์สอื่นช่วยให้การเข้ารหัสตัวแปรเด็ดขาดประเภทต่างๆ: https://contrib.scikit-learn.org/categorical-encoding/

ในที่สุดเครื่องมือคุณสมบัติเป็นห้องสมุดโอเพ่นซอร์สที่ดีสำหรับข้อมูลการทำธุรกรรม


1

คุณควรพิจารณาตรวจสอบการเรียนรู้เครื่อง Azureแพลตฟอร์มมันออนไลน์และคุณสามารถใช้กับบัญชีฟรี

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

ส่วนที่ดีของมันคือคุณสามารถเห็นภาพข้อมูลของคุณได้ตลอดเวลาและตรวจสอบสถิติอย่างง่าย ๆ เช่น the dataframe.describe()of R


1

Amazon Machine Learningเป็นเครื่องมือที่ฉันใช้สำหรับงานวิศวกรรมคุณสมบัติบางครั้ง

ในฐานะที่เป็นบริการ Amazon AWS ได้แสดงให้เห็นถึงสัญญาและมาตรฐานจำนวนมากฉันจะเชื่อมั่นใน Amazon ML อย่างแน่นอนด้วยโอกาสและสัญญาที่ทำให้ขั้นตอนการทำงานของนักวิทยาศาสตร์ข้อมูลง่ายขึ้น แต่ ณ ตอนนี้มันยังเล็กอยู่

แต่อย่างที่คุณถามเครื่องมือสำหรับวิศวกรรมฟีเจอร์นี่คือหนึ่งในนั้น

บางคำถามที่พบบ่อยเกี่ยวกับ / สำหรับการใช้ Amazon ML

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.