"หนึ่งในจอกศักดิ์สิทธิ์ของการเรียนรู้ของเครื่องคือการทำให้กระบวนการทางวิศวกรรมฟีเจอร์เป็นอัตโนมัติมากขึ้นเรื่อยๆ" ― เปโดร โดมิงโกส สิ่งที่ควรรู้เกี่ยวกับการเรียนรู้ของเครื่อง
Featuretools เป็นไลบรารีหลามสำหรับวิศวกรรมฟีเจอร์อัตโนมัติ ดูเอกสารประกอบสำหรับข้อมูลเพิ่มเติม
ติดตั้งด้วย pip
python -m pip install featuretools
หรือจากช่อง Conda-forge บน conda:
conda install -c conda-forge featuretools
คุณสามารถติดตั้งส่วนเสริมทีละรายการหรือทั้งหมดพร้อมกันได้โดยเรียกใช้:
python -m pip install "featuretools[complete]"
Premium Primitives - ใช้ Premium Primitives จาก repo ระดับพรีเมียม
python -m pip install "featuretools[premium]"
NLP Primitives - ใช้ภาษาธรรมชาติดั้งเดิมจาก repo nlp-primitives
python -m pip install "featuretools[nlp]"
รองรับ Dask - ใช้ Dask เพื่อรัน DFS ด้วย njobs > 1
python -m pip install "featuretools[dask]"
ด้านล่างนี้เป็นตัวอย่างของการใช้ Deep Feature Sclusion (DFS) เพื่อดำเนินการวิศวกรรมฟีเจอร์อัตโนมัติ ในตัวอย่างนี้ เราใช้ DFS กับชุดข้อมูลแบบหลายตารางซึ่งประกอบด้วยธุรกรรมของลูกค้าที่มีการประทับเวลา
>> import featuretools as ft
>> es = ft . demo . load_mock_customer ( return_entityset = True )
>> es . plot ()
Featuretools สามารถสร้างตารางคุณลักษณะเดียวสำหรับ "dataframe เป้าหมาย" ใด ๆ โดยอัตโนมัติ
>> feature_matrix , features_defs = ft . dfs ( entityset = es , target_dataframe_name = "customers" )
>> feature_matrix . head ( 5 )
zip_code COUNT(transactions) COUNT(sessions) SUM(transactions.amount) MODE(sessions.device) MIN(transactions.amount) MAX(transactions.amount) YEAR(join_date) SKEW(transactions.amount) DAY(join_date) ... SUM(sessions.MIN(transactions.amount)) MAX(sessions.SKEW(transactions.amount)) MAX(sessions.MIN(transactions.amount)) SUM(sessions.MEAN(transactions.amount)) STD(sessions.SUM(transactions.amount)) STD(sessions.MEAN(transactions.amount)) SKEW(sessions.MEAN(transactions.amount)) STD(sessions.MAX(transactions.amount)) NUM_UNIQUE(sessions.DAY(session_start)) MIN(sessions.SKEW(transactions.amount))
customer_id ...
1 60091 131 10 10236.77 desktop 5.60 149.95 2008 0.070041 1 ... 169.77 0.610052 41.95 791.976505 175.939423 9.299023 -0.377150 5.857976 1 -0.395358
2 02139 122 8 9118.81 mobile 5.81 149.15 2008 0.028647 20 ... 114.85 0.492531 42.96 596.243506 230.333502 10.925037 0.962350 7.420480 1 -0.470007
3 02139 78 5 5758.24 desktop 6.78 147.73 2008 0.070814 10 ... 64.98 0.645728 21.77 369.770121 471.048551 9.819148 -0.244976 12.537259 1 -0.630425
4 60091 111 8 8205.28 desktop 5.73 149.56 2008 0.087986 30 ... 83.53 0.516262 17.27 584.673126 322.883448 13.065436 -0.548969 12.738488 1 -0.497169
5 02139 58 4 4571.37 tablet 5.91 148.17 2008 0.085883 19 ... 73.09 0.830112 27.46 313.448942 198.522508 8.950528 0.098885 5.599228 1 -0.396571
[5 rows x 69 columns]
ขณะนี้เรามีเวกเตอร์คุณลักษณะสำหรับลูกค้าแต่ละรายที่สามารถใช้สำหรับการเรียนรู้ของเครื่องได้ ดูเอกสารประกอบเกี่ยวกับการสังเคราะห์คุณสมบัติเชิงลึกสำหรับตัวอย่างเพิ่มเติม
Featuretools มีพื้นฐานในตัวหลายประเภทสำหรับการสร้างคุณสมบัติ หากไม่ได้รวมค่าพื้นฐานที่คุณต้องการไว้ Featuretools ยังช่วยให้คุณกำหนดค่าพื้นฐานที่คุณกำหนดเองได้
ทำนายการซื้อครั้งต่อไป
พื้นที่เก็บข้อมูล | โน๊ตบุ๊ค
ในการสาธิตนี้ เราใช้ชุดข้อมูลแบบหลายตารางซึ่งประกอบด้วยคำสั่งซื้อของชำออนไลน์ 3 ล้านรายการจาก Instacart เพื่อคาดการณ์ว่าลูกค้าจะซื้ออะไรต่อไป เราแสดงวิธีสร้างฟีเจอร์ด้วยวิศวกรรมฟีเจอร์อัตโนมัติ และสร้างไปป์ไลน์การเรียนรู้ของเครื่องที่แม่นยำโดยใช้ Featuretools ซึ่งสามารถนำมาใช้ซ้ำสำหรับปัญหาการทำนายที่หลากหลาย สำหรับผู้ใช้ขั้นสูง เราจะแสดงวิธีปรับขนาดไปป์ไลน์นั้นเป็นชุดข้อมูลขนาดใหญ่โดยใช้ Dask
สำหรับตัวอย่างเพิ่มเติมเกี่ยวกับวิธีใช้ Featuretools โปรดดูหน้าสาธิตของเรา
ชุมชน Featuretools ยินดีรับคำขอดึง คำแนะนำสำหรับการทดสอบและพัฒนามีอยู่ที่นี่
ชุมชน Featuretools ยินดีที่จะให้การสนับสนุนผู้ใช้ Featuretools การสนับสนุนโครงการสามารถพบได้ในสี่แห่ง ขึ้นอยู่กับประเภทของคำถาม:
featuretools
หากคุณใช้ Featuretools โปรดพิจารณาอ้างอิงเอกสารต่อไปนี้:
เจมส์ แม็กซ์ แคนเตอร์, กัลยัน วีรมชาเนนี. การสังเคราะห์คุณสมบัติเชิงลึก: สู่ความพยายามด้านวิทยาศาสตร์ข้อมูลแบบอัตโนมัติ มาตรฐาน IEEE DSAA 2015
รายการ BibTeX:
@inproceedings { kanter2015deep ,
author = { James Max Kanter and Kalyan Veeramachaneni } ,
title = { Deep feature synthesis: Towards automating data science endeavors } ,
booktitle = { 2015 {IEEE} International Conference on Data Science and Advanced Analytics, DSAA 2015, Paris, France, October 19-21, 2015 } ,
pages = { 1--10 } ,
year = { 2015 } ,
organization = { IEEE }
}
Featuretools เป็นโครงการโอเพ่นซอร์สที่ดูแลโดย Alteryx หากต้องการดูโครงการโอเพ่นซอร์สอื่นๆ ที่เรากำลังดำเนินการอยู่ โปรดไปที่ Alteryx Open Source หากการสร้างไปป์ไลน์วิทยาศาสตร์ข้อมูลที่มีประสิทธิภาพมีความสำคัญต่อคุณหรือธุรกิจของคุณ โปรดติดต่อ