neuraloperator เป็นห้องสมุดที่ครอบคลุมสำหรับการเรียนรู้ผู้ประกอบการประสาทใน Pytorch เป็นการดำเนินการอย่างเป็นทางการสำหรับผู้ประกอบการประสาทฟูริเยร์และผู้ประกอบการประสาทเทนเซอร์
ซึ่งแตกต่างจากเครือข่ายประสาททั่วไปผู้ให้บริการประสาทเปิดใช้งานการทำแผนที่การเรียนรู้ระหว่างช่องว่างของฟังก์ชั่นและห้องสมุดนี้มีเครื่องมือทั้งหมดที่ทำกับข้อมูลของคุณเอง
ผู้ประกอบการประสาทยังมีความละเอียดคงที่ดังนั้นผู้ประกอบการที่ผ่านการฝึกอบรมของคุณสามารถนำไปใช้กับข้อมูลของความละเอียดใด ๆ
เพียงโคลนที่เก็บและติดตั้งในเครื่อง (ในโหมดแก้ไขได้ดังนั้นการเปลี่ยนแปลงในรหัสจะสะท้อนทันทีโดยไม่ต้องติดตั้งใหม่):
git clone https://github.com/neuraloperator/neuraloperator CD Neuraloperator การติดตั้ง PIP -E PIP Install -r rechent.txt
นอกจากนี้คุณยังสามารถติดตั้ง PIP การเปิดตัวไลบรารีที่มีเสถียรภาพล่าสุดบน PYPI:
PIP ติดตั้ง Neuraloperator
หลังจากที่คุณติดตั้งไลบรารีคุณสามารถเริ่มฝึกอบรมผู้ให้บริการได้อย่างราบรื่น:
from neuralop . models import FNO
operator = FNO ( n_modes = ( 16 , 16 ), hidden_channels = 64 ,
in_channels = 3 , out_channels = 1 )Tensorization นั้นมีให้ออกจากกล่อง: คุณสามารถปรับปรุงรุ่นก่อนหน้าได้เพียงแค่ใช้ Tucker Tensorized FNO ด้วยพารามิเตอร์เพียงไม่กี่ตัว:
from neuralop . models import TFNO
operator = TFNO ( n_modes = ( 16 , 16 ), hidden_channels = 64 ,
in_channels = 3 ,
out_channels = 1 ,
factorization = 'tucker' ,
implementation = 'factorized' ,
rank = 0.05 )สิ่งนี้จะใช้การแยกตัวประกอบของ Tucker ของน้ำหนัก Forward Pass จะมีประสิทธิภาพโดยการทำสัญญาโดยตรงกับปัจจัยของการสลายตัว เลเยอร์ฟูริเยร์จะมี 5% ของพารามิเตอร์ของผู้ดำเนินการประสาทฟูริเยร์ที่หนาแน่นและหนาแน่น!
ชำระเงินเอกสารเพิ่มเติม!
สร้างไฟล์ใน neuraloperator/config ที่เรียกว่า wandb_api_key.txt และวางน้ำหนักและอคติ API ของคุณที่นั่น คุณสามารถกำหนดค่าโครงการที่คุณต้องการใช้และชื่อผู้ใช้ของคุณในไฟล์การกำหนดค่า YAML หลัก
Neuraloperator เป็นโอเพ่นซอร์ส 100% และเรายินดีต้อนรับการมีส่วนร่วมทั้งหมดจากชุมชน! หากคุณพบข้อผิดพลาดหรือการพิมพ์ผิดในเอกสารหรือมีความคิดสำหรับคุณสมบัติที่คุณต้องการดูโปรดรายงานในตัวติดตามปัญหาของเราหรือดีกว่าให้เปิดคำตอบแบบดึงบน GitHub
NeuralOperator มีการพึ่งพาเพิ่มเติมสำหรับการพัฒนาซึ่งสามารถพบได้ใน requirements_dev.txt :
PIP Install -r required_dev.txt
ก่อนที่คุณจะส่งการเปลี่ยนแปลงของคุณคุณควรตรวจสอบให้แน่ใจว่ารหัสของคุณปฏิบัติตามแนวทางของเรา วิธีที่ง่ายที่สุดในการทำเช่นนี้คือ black :
สีดำ .
การทดสอบและเอกสารเป็นส่วนสำคัญของแพ็คเกจนี้และฟังก์ชั่นทั้งหมดมาพร้อมกับการทดสอบหน่วยและเอกสาร การทดสอบดำเนินการโดยใช้แพ็คเกจ pytest
ในการเรียกใช้การทดสอบเพียงแค่เรียกใช้ในเทอร์มินัล:
pytest -v neuralop
HTML สำหรับเว็บไซต์เอกสารของเราถูกสร้างขึ้นโดยใช้ sphinx เอกสารถูกสร้างขึ้นจากภายในโฟลเดอร์ doc
เอกสารซีดี ทำ HTML
สิ่งนี้จะสร้างเอกสารใน ./doc/build/html build/html
โปรดทราบว่าเอกสารดังกล่าวต้องการการพึ่งพาอื่น ๆ ที่สามารถติดตั้งได้จาก ./doc/requirements_doc.txt
หากต้องการดูเอกสารในพื้นที่ให้เรียกใช้:
cd doc/build/html Python -m http.server [port_num]
เอกสารจะสามารถดูได้ที่ localhost:PORT_NUM
หากคุณใช้ Neuraloperator ในบทความวิชาการโปรดอ้างอิง [1], [2]::
@misc {kossaifi2024Nural,
title = {ห้องสมุดสำหรับการเรียนรู้ผู้ประกอบการประสาท}
ผู้แต่ง = {Jean Kossaifi และ Nikola Kovachki และ
Zongyi Li และ Davit Pitt และ
Miguel Liu-Schiaffini และ Robert Joseph George และ
Boris Bonev และ Kamyar Azizzadenesheli และ
Julius Berner และ Anima Anandkumar}
ปี = {2024}
eprint = {2412.10354}
ArchivePrefix = {arxiv}
primaryclass = {cs.lg}
-
@article {kovachki2021Neural,
ผู้แต่ง = {Nikola B. Kovachki และ
Zongyi Li และ
Burigede Liu และ
Kamyar Azizzadenesheli และ
Kaushik Bhattacharya และ
Andrew M. Stuart และ
Anima Anandkumar}
title = {ตัวดำเนินการประสาท: การเรียนรู้แผนที่ระหว่างช่องว่างฟังก์ชั่น}
journal = {corr}
volume = {abs/2108.08481}
ปี = {2021}
-
| [1] | Kossaifi, J. , Kovachki, N. , Li, Z. , Pitt, D. , Liu-Schiaffini, M. , George, R. , Bonev, B. , Azizzadenesheli, K. , Berner, J. และ Anandkumar, A. , "ห้องสมุดสำหรับการเรียนรู้ |
| [2] | Kovachki, N. , Li, Z. , Liu, B. , Azizzadenesheli, K. , Bhattacharya, K. , Stuart, A. , และ Anandkumar A. ,“ ผู้ดำเนินการประสาท: การเรียนรู้แผนที่ระหว่างช่องว่าง”, JMLR, 2021 |