4 คะแนน โดย flamehaven01 2025-10-05 | ยังไม่มีความคิดเห็น | แชร์ทาง WhatsApp

TL;DR

งานวิจัย “การตรวจจับซิงกูลาริตีในของไหล” ของ DeepMind (2024) ไม่มีโค้ดเผยแพร่

จึงมีการสร้างซ้ำแบบ ครบถ้วนตั้งแต่ต้นจนจบโดยอาศัยแค่งานวิจัย

ตอนนี้ได้เปิดเผย pipeline ที่ใช้งานได้จริง ซึ่งสร้างรายงาน PDF ได้ภายใน 7 วินาที


💥 ปัญหา: โรคเรื้อรังของงานวิจัย AI

DeepMind (2024)

“Discovering new solutions to century-old problems in fluid dynamics”

📄 arXiv:2509.14185

สรุปเนื้อหา

  • โจทย์ยากที่มีมานานกว่า 100 ปี: ของไหลสามารถระเบิดในเวลาจำกัดได้หรือไม่?
  • ใช้ Physics-Informed Neural Network (PINN) เพื่อตรวจจับซิงกูลาริตี (singularity)
  • การคำนวณความแม่นยำสูงมาก (10⁻¹³) และการฝึกหลายขั้นตอนที่ซับซ้อน

ปัญหา

  • ❌ ไม่เปิดเผยโค้ด
  • ❌ วิธีสร้างซ้ำไม่ชัดเจน
  • ❌ มีแต่สมการจึงไม่สามารถนำไปรันได้

ผลลัพธ์คือ นักวิจัยทั่วโลกทำได้เพียง “อ่านแล้วก็ยอมแพ้”


✅ วิธีแก้: โครงการสร้างซ้ำแบบเปิดที่เป็นอิสระ

🚀 Unstable Singularity Detector

อิมพลีเมนเทชันโอเพนซอร์สที่เป็นอิสระโดยสมบูรณ์ และไม่เกี่ยวข้องกับ DeepMind

โดยอาศัยเฉพาะสมการและระเบียบวิธีที่เปิดเผยในงานวิจัย

สร้างซ้ำการตรวจสอบซิงกูลาริตีในพลศาสตร์ของไหลครบตั้งแต่ต้นจนจบ


💡 แนวคิด: ทำไมโปรเจกต์นี้จึงสำคัญ

เผยแพร่งานวิจัย → ไม่มีโค้ด → สร้างซ้ำไม่ได้ → งานวิจัยหยุดชะงัก

ข้อความของโปรเจกต์นี้:

“เปลี่ยนวิทยาศาสตร์ที่มีแต่งานวิจัย ให้กลายเป็นเครื่องมือที่นำไปใช้งานได้”

แก่นแท้ของวิทยาศาสตร์แบบเปิดคือความสามารถในการสร้างซ้ำ (Reproducibility)

งานวิจัยที่ไม่มีโค้ดคือวิทยาศาสตร์ที่ไม่สมบูรณ์ครึ่งหนึ่ง


🎓 ใครจะใช้บ้าง?

  • 🧠 นักวิจัยด้านพลศาสตร์ของไหล — ใช้ตรวจสอบและต่อยอดงานวิจัย
  • 🔬 นักพัฒนา PINN / SciML — อ้างอิงการปรับเหมาะสมความแม่นยำสูง
  • 🎓 นักศึกษาปริญญาโทเอก / นักเรียน — ใช้ฝึกอิมพลีเมนต์งานวิจัย
  • 🤖 นักวิจัย AI — ตระหนักถึงปัญหา “งานวิจัยไร้โค้ด”
  • 🧑‍🏫 ผู้สอน — ใช้เป็นสื่อฝึกปฏิบัติในคลาส PINN

🚀 เริ่มต้นได้ภายใน 5 นาที

git clone https://github.com/Flamehaven/unstable-singularity-detector.git  
cd unstable-singularity-detector  
pip install -r requirements.txt  
python examples/e2e_full_ipm.py  

ผลลัพธ์:

  • แสดง log การลู่เข้าแบบเรียลไทม์
  • สร้าง results/ipm_full_demo/ipm_full_report.pdf
  • รายงาน PDF 3 หน้า (กราฟการลู่เข้า + ประวัติการฝึก + metric)

🎯 หลักฐานว่าใช้งานได้จริง

v1.3.2 — Complete E2E Pipelines (“Show Me It Works” Release)

1️⃣ IPM (Incompressible Porous Media)

python examples/e2e_full_ipm.py --grid-size 16  
# หลัง 7.3 วินาที → สร้างรายงาน PDF + metric JSON อัตโนมัติ  
초기조건: sin(πx)sin(πy)sin(πz)  
  • เงื่อนไขตั้งต้น: sin(πx)sin(πy)sin(πz)
  • Lambda funnel: ลู่เข้าใน 1 รอบการวนซ้ำ
  • residual: 1e-3 → 1e-7 (ดีขึ้น 1000 เท่า)
  • เอาต์พุต: รายงาน PDF 3 หน้า (กราฟการลู่เข้า + metric)

2️⃣ 2D Boussinesq (การพาความร้อน)

python examples/e2e_boussinesq_2d.py --grid-size 64  
  • ตรวจสอบการอนุรักษ์พลังงาน (residual 5e-8)
  • สร้างรายงาน PDF อัตโนมัติ

3️⃣ สมการความร้อน 1D (ตรวจสอบด้วยผลเฉลยเชิงวิเคราะห์)

pytest tests_e2e/test_heat_equation_1d.py -v  
# 7/7 tests PASSED  
  • ผลเฉลยเชิงวิเคราะห์: u = exp(-π²t)sin(πx)
  • ความคลาดเคลื่อนของผลเฉลยเชิงตัวเลข: < 0.04
  • residual ของ PDE: < 0.05

🔍 ตารางตรวจสอบเทียบกับงานวิจัย

คอมโพเนนต์ อ้างอิงจากงานวิจัย วิธีตรวจสอบ ผลลัพธ์ สถานะ
สูตรทำนาย Lambda Fig 2e เปรียบเทียบเชิงตัวเลขโดยตรง คลาดเคลื่อน <1%
Funnel Inference Sec 3.2 ทดสอบการลู่เข้า ลู่เข้าใน 1–2 รอบ
การฝึกแบบหลายขั้นตอน Sec 3.3 ติดตาม residual ทำได้ถึง 10⁻⁷
Gauss–Newton Eq 7–8 benchmark ความแม่นยำ 10⁻¹³
เงื่อนไขขอบเขต Sec 2.3 Dirichlet BC คลาดเคลื่อน < 10⁻¹⁰
การแปลงแบบคล้ายตนเอง Fig 3 แปลงพิกัด อิมพลีเมนต์เสร็จแล้ว

อัตราการตรวจสอบเสร็จสมบูรณ์: 100% (ทุกสูตรที่เปิดเผยในงานวิจัย)


🛠️ จุดเด่นทางเทคนิค

นวัตกรรมหลัก

  1. การฝึกที่อิงตามเป้าหมายความแม่นยำ

    # Stage 1: Adam warmup → 1e-6  
    # Stage 2: Fourier features → 1e-9  
    # Stage 3: Gauss–Newton → 1e-12  
    
  2. เพิ่มประสิทธิภาพการใช้หน่วยความจำ

    • การประมาณ Hessian แบบ Rank-1 → O(P²) → O(P)
    • ประหยัดหน่วยความจำ 1000 เท่า
  3. EMA Smoothing

    H_t = β * H_{t-1} + (1 - β) * (JᵀJ)_t  
    
  4. ระบบตรวจสอบอัตโนมัติ

    • ผ่านการทดสอบ 111/113 (ข้าม 2 GPU)
    • ผสาน GitHub Actions CI/CD แบบสมบูรณ์

📊 ตัวอย่างการใช้งานจริง

from unstable_singularity_detector import UnstableSingularityDetector  
  
detector = UnstableSingularityDetector(equation_type="ipm")  
lambda_0 = detector.predict_next_unstable_lambda(current_order=0)  
  
print(f"Predicted: {lambda_0:.10f}")  
# Output: 1.0285722760 (คลาดเคลื่อนจากค่าของงานวิจัย 0.000%)  

🧩 pipeline ทั้งหมด (สรุปใน 10 บรรทัด)

from examples.e2e_full_ipm import FullIPMPipeline  
from pathlib import Path  
  
pipeline = FullIPMPipeline(output_dir=Path("results/my_experiment"), grid_size=32)  
pipeline.run()  
# หลัง 7 วินาที สร้างรายงาน PDF และ JSON  
  

📈 สถานะโปรเจกต์ (v1.3.2)

รายการ ตัวเลข
โค้ด 15,000+ lines
การทดสอบ 111/113 ผ่าน (98.2%)
เอกสาร 2,500+ lines
คอมมิต 150+
ไลเซนส์ MIT
Python 3.8+
dependency หลัก PyTorch, NumPy, SciPy

🔐 ความโปร่งใสและข้อจำกัด

ความเป็นอิสระที่ชัดเจน

  • เป็นโครงการวิจัยส่วนบุคคลที่ไม่เกี่ยวข้องกับ DeepMind
  • ใช้เฉพาะสมการจากงานวิจัยที่เปิดเผย
  • ไลเซนส์ MIT
  • เปิดเผยข้อจำกัดทั้งหมด

ข้อจำกัดปัจจุบัน

  • การละเมิดปริมาณอนุรักษ์: IPM 128% (ข้อจำกัดด้านขนาดของเครือข่าย)
  • ความคลาดเคลื่อนของ Lambda: Boussinesq 42% (มีแผนปรับแก้เชิงประจักษ์)
  • ความแม่นยำ: เน้นเดโม (ไม่ใช่สำหรับ production)

💬 ยินดีรับฟีดแบ็ก

มาร่วมกันเปลี่ยน “โลกที่มีแต่งานวิจัยแต่ไม่มีโค้ด” ไปด้วยกัน


Made with 🔬 by independent researchers, for open science

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น