[연구] SciML 분야 라이브러리 기록

2024. 3. 11. 19:13·연구 Research/인공지능 Artificial Intelligent

 

물리기반 인공지능 관련해서 접근성을 높이기 위한 여러 라이브러리가 있다.

보통은 코드를 직접 작성하는게 낫지만 빨리 테스트해보고 싶을 때는 라이브러리가 도움이 많이 되기 때문에 저장한다.

 

 

 

1. Python - PyTorch

 

1.1. TorchDiffeq

Neural ode 창시자인 Chen이 배포한 코드 : https://github.com/rtqichen/torchdiffeq

 

1.2. DeepXDE

Arxiv에 올라와있는 http://arxiv.org/abs/1907.04502에서 더 많은 정보를 얻을 수 있다.

(논문 정보 L. Lu, X. Meng, Z. Mao, and G. E. Karniadakis, “DeepXDE: A deep learning library for solving differential equations,” Jul. 2019, doi: 10.1137/19M1274067.)

 

PINN과 같은 알고리즘을 주도하는 Karniadakis 연구실에서 만든 라이브러리로 기본적인 PINN, DeepONet 등의 코드를 제공한다.

 

 

 

2. Python - JAX

 

2.1. Diffrax & Equinox

 

JAX 기반으로 만든 Neural ODE를 비롯한 여러 Continuous neural model을 구현한 라이브러리가 diffrax이다. Equinox는 동일한 contributor가 만든 신경망 모델 라이브러리다.

 

https://docs.kidger.site/diffrax/

 

Diffrax

Diffrax in a nutshell Diffrax is a JAX-based library providing numerical differential equation solvers. Features include: ODE/SDE/CDE (ordinary/stochastic/controlled) solvers; lots of different solvers (including Tsit5, Dopri8, symplectic solvers, implicit

docs.kidger.site

 

이 코드를 쓸 때는 다음 Arxiv를 인용해달라고 한다. (https://arxiv.org/abs/2202.02435)

 

PINN을 위한 JAX 라이브러리는 없지만 PyTorch 코드에서 JAX 문법에 맞게 바꾸면 가능하다.

 

3. Julia

 

SciML이라는 커뮤니티가 있는데 여기서 라이브러리를 만들어서 배포하고 있다.

 

웹사이트 : https://sciml.ai/

 

SciML: Open Source Software for Scientific Machine Learning

Open Source Software for Scientific Machine Learning

sciml.ai

 

아직 Julia를 공부 중이라 써보지는 못했다.

저작자표시 비영리 변경금지 (새창열림)

'연구 Research > 인공지능 Artificial Intelligent' 카테고리의 다른 글

[공부] Automatic differentiation forward mode & reverse mode  (0) 2025.03.09
[chatGPT] chatGPT 프롬프트 엔지니어링  (0) 2023.11.28
[JAX] L-BFGS optimizer로 학습하는 예제 코드  (0) 2023.11.02
[Deep learning] Bayesian Neural Network (1)  (0) 2023.10.23
[인공지능] Learning에서 scaling이 중요한가  (0) 2023.09.20
'연구 Research/인공지능 Artificial Intelligent' 카테고리의 다른 글
  • [공부] Automatic differentiation forward mode & reverse mode
  • [chatGPT] chatGPT 프롬프트 엔지니어링
  • [JAX] L-BFGS optimizer로 학습하는 예제 코드
  • [Deep learning] Bayesian Neural Network (1)
보통의공대생
보통의공대생
수학,프로그래밍,기계항공우주 등 공부하는 기록들을 남깁니다.
  • 보통의공대생
    뛰는 놈 위에 나는 공대생
    보통의공대생
  • 전체
    오늘
    어제
    • 분류 전체보기 (468)
      • 공지 (1)
      • 영어 공부 English Study (40)
        • 텝스 TEPS (7)
        • 글 Article (21)
        • 영상 Video (10)
      • 연구 Research (99)
        • 최적화 Optimization (3)
        • 데이터과학 Data Science (7)
        • 인공지능 Artificial Intelligent (40)
        • 제어 Control (45)
      • 프로그래밍 Programming (103)
        • 매트랩 MATLAB (25)
        • 파이썬 Python (33)
        • 줄리아 Julia (2)
        • C++ (3)
        • 리눅스 우분투 Ubuntu (6)
      • 항공우주 Aeronautical engineeri.. (21)
        • 항법 Navigation (0)
        • 유도 Guidance (0)
      • 기계공학 Mechanical engineering (13)
        • 열역학 Thermodynamics (0)
        • 고체역학 Statics & Solid mechan.. (10)
        • 동역학 Dynamics (1)
        • 유체역학 Fluid Dynamics (0)
      • 수학 Mathematics (34)
        • 선형대수학 Linear Algebra (18)
        • 미분방정식 Differential Equation (3)
        • 확률및통계 Probability & Sta.. (2)
        • 미적분학 Calculus (1)
        • 복소해석학 Complex Analysis (5)
        • 실해석학 Real Analysis (0)
      • 수치해석 Numerical Analysis (27)
      • 확률 및 랜덤프로세스 Random process (2)
      • 추론 & 추정 이론 Estimation (3)
      • 기타 (26)
        • 설계 프로젝트 System Design (8)
        • 논문작성 Writing (55)
        • 세미나 Seminar (2)
        • 생산성 Productivity (3)
      • 실험 Experiment (1)
      • 유학 생활 Daily (8)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    고체역학
    Python
    Statics
    Zotero
    텝스공부
    WOX
    에러기록
    텝스
    obsidian
    LaTeX
    matplotlib
    JAX
    수치해석
    옵시디언
    ChatGPT
    딥러닝
    Dear abby
    Linear algebra
    pytorch
    논문작성
    MATLAB
    teps
    Numerical Analysis
    논문작성법
    인공지능
    생산성
    IEEE
    Julia
    우분투
    서버
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
보통의공대생
[연구] SciML 분야 라이브러리 기록
상단으로

티스토리툴바