ดาวน์โหลด: เวอร์ชันเสถียรปัจจุบัน (4.5.1)
MLPack เป็นไลบรารีการเรียนรู้ของเครื่องจักรที่ใช้งานง่ายเร็วและยืดหยุ่นและยืดหยุ่นได้อย่างเดียวพร้อมการเชื่อมโยงกับภาษาอื่น ๆ มันหมายถึงการเป็นเครื่องจักรที่เรียนรู้แบบอะนาล็อกไปยัง lapack และมีจุดมุ่งหมายที่จะใช้วิธีการเรียนรู้ของเครื่องจักรและฟังก์ชั่นเป็น "มีดกองทัพสวิส" สำหรับนักวิจัยการเรียนรู้ของเครื่อง
การใช้งาน C ++ ที่มีน้ำหนักเบาของ MLPack ทำให้เหมาะสำหรับการปรับใช้และยังสามารถใช้สำหรับการสร้างต้นแบบแบบโต้ตอบผ่านโน้ตบุ๊ก C ++ (สามารถมองเห็นได้ในการดำเนินการในหน้าแรกของ MLPack)
นอกเหนือจากอินเทอร์เฟซ C ++ ที่ทรงพลังแล้ว MLPack ยังมีโปรแกรมบรรทัดคำสั่งการผูก python การผูก Julia การผูกและการผูก R
ลิงค์ด่วน:
MLPack ใช้รูปแบบการกำกับดูแลแบบเปิดและได้รับการสนับสนุนจาก Numfocus พิจารณาการบริจาคลดหย่อนภาษีเพื่อช่วยให้โครงการจ่ายเงินสำหรับเวลานักพัฒนาบริการระดับมืออาชีพการเดินทางการประชุมเชิงปฏิบัติการและความต้องการอื่น ๆ ที่หลากหลาย
หากคุณใช้ MLPACK ในการวิจัยหรือซอฟต์แวร์ของคุณโปรดอ้างอิง MLPACK โดยใช้การอ้างอิงด้านล่าง (ระบุในรูปแบบ BIBTEX):
@article{mlpack2023,
title = {mlpack 4: a fast, header-only C++ machine learning library},
author = {Ryan R. Curtin and Marcus Edel and Omar Shrit and
Shubham Agrawal and Suryoday Basak and James J. Balamuta and
Ryan Birmingham and Kartik Dutt and Dirk Eddelbuettel and
Rishabh Garg and Shikhar Jaiswal and Aakash Kaushik and
Sangyeon Kim and Anjishnu Mukherjee and Nanubala Gnana Sai and
Nippun Sharma and Yashwant Singh Parihar and Roshan Swain and
Conrad Sanderson},
journal = {Journal of Open Source Software},
volume = {8},
number = {82},
pages = {5026},
year = {2023},
doi = {10.21105/joss.05026},
url = {https://doi.org/10.21105/joss.05026}
}
การอ้างอิงมีประโยชน์ต่อการเติบโตและการปรับปรุง MLPack
MLPack ต้องการการอ้างอิงเพิ่มเติมดังต่อไปนี้:
หากส่วนหัวของไลบรารี STB พร้อมใช้งานการสนับสนุนการโหลดภาพจะพร้อมใช้งาน
หากคุณกำลังรวบรวม armadillo ด้วยมือตรวจสอบให้แน่ใจว่าเปิดใช้งาน Lapack และ BLAS
คำแนะนำการติดตั้งโดยละเอียดสามารถพบได้ในหน้าการติดตั้ง MLPack
เมื่อส่วนหัวได้รับการติดตั้งด้วย make install โดยใช้ MLPack ในแอปพลิเคชันประกอบด้วยการรวมเท่านั้น ดังนั้นโปรแกรมของคุณควรรวม MLPack:
# include < mlpack.hpp > และเมื่อคุณเชื่อมโยงให้แน่ใจว่าได้เชื่อมโยงกับ Armadillo หากโปรแกรมตัวอย่างของคุณคือ my_program.cpp คอมไพเลอร์ของคุณคือ GCC และคุณต้องการรวบรวมด้วยการสนับสนุน OpenMP (แนะนำ) และการปรับให้เหมาะสมคอมไพล์เช่นนี้:
g++ -O3 -std=c++17 -o my_program my_program.cpp -larmadillo -fopenmp โปรดทราบว่าหากคุณต้องการทำให้เป็นอนุกรม (บันทึกหรือโหลด) เครือข่ายประสาทคุณควรเพิ่ม #define MLPACK_ENABLE_ANN_SERIALIZATION ก่อนที่จะรวม <mlpack.hpp> หากคุณไม่ได้กำหนด MLPACK_ENABLE_ANN_SERIALIZATION และรหัสของคุณทำให้เครือข่ายประสาทของคุณมีข้อผิดพลาดในการรวบรวม
ดูเพิ่มเติม:
Makefile s ที่สอดคล้องกันMLPACK เป็นห้องสมุดที่มีแม่แบบหนักและหากไม่ได้ใช้การดูแลเวลาการรวบรวมของโครงการอาจสูงมาก โชคดีที่มีหลายวิธีในการลดเวลาการรวบรวม:
รวมส่วนหัวของแต่ละบุคคลเช่น <mlpack/methods/decision_tree.hpp> หากคุณใช้องค์ประกอบเดียวแทนที่จะเป็น <mlpack.hpp> สิ่งนี้จะช่วยลดปริมาณงานที่คอมไพเลอร์ต้องทำ
ใช้คำจำกัดความ MLPACK_ENABLE_ANN_SERIALIZATION เท่านั้นหากคุณกำลังทำโครงข่ายประสาทเทียมในรหัสของคุณ เมื่อเปิดใช้งานการกำหนดนี้เวลาการรวบรวมจะเพิ่มขึ้นอย่างมีนัยสำคัญเนื่องจากคอมไพเลอร์จะต้องสร้างรหัสสำหรับเลเยอร์ทุกประเภทที่เป็นไปได้ (ค่าใช้จ่ายการรวบรวมเพิ่มเติมจำนวนมากคือสาเหตุที่ไม่ได้เปิดใช้งานโดยค่าเริ่มต้น)
หากคุณใช้ MLPACK ในไฟล์. CPP หลายไฟล์ให้พิจารณาใช้ extern templates เพื่อให้คอมไพเลอร์มีอินสแตนซ์แต่ละเทมเพลตเพียงครั้งเดียวเท่านั้น เพิ่มการสร้างอินสแตนซ์เทมเพลตที่ชัดเจนสำหรับแต่ละประเภทเทมเพลต MLPack ที่คุณต้องการใช้ในไฟล์. CPP แล้วใช้คำจำกัดความ extern ที่อื่นเพื่อให้คอมไพเลอร์รู้ว่ามีอยู่ในไฟล์อื่น
มีกลยุทธ์อื่น ๆ เช่นส่วนหัวที่คอมไพล์ล่วงหน้าตัวเลือกคอมไพเลอร์ ccache และอื่น ๆ
ดูส่วนคำแนะนำการติดตั้ง
มีเอกสารเพิ่มเติมสำหรับผู้ใช้และนักพัฒนา
หากต้องการเรียนรู้เกี่ยวกับเป้าหมายการพัฒนาของ MLPack ในอนาคตระยะสั้นและระยะกลางดูเอกสารวิสัยทัศน์
หากคุณมีปัญหาค้นหาข้อผิดพลาดหรือต้องการความช่วยเหลือคุณสามารถลองไปที่หน้าช่วยเหลือ MLPack หรือ MLPack บน GitHub อีกวิธีหนึ่งความช่วยเหลือ MLPACK สามารถพบได้ในเมทริกซ์ที่ #mlpack ; ดูหน้าชุมชน