딥러닝으로 미분 방정식을 풀면
개요
최근 딥러닝을 통해 미분방정식을 풀 수 있다고 해서 신경 써서 알아봤습니다.이 글은 두 가지 수법의 개관을 총결하였다.또 기법은 원논문을 따르기 때문에 장마다 흩어져 있으니 용서해 주십시오.
입문
과거에는 해석하기 어려운 미분 방정식을 Runge-Kutta법 등 교체 해법으로 풀었다.이런 수법들이 뒤에서 우리의 생활을 지탱하고 있다고 할 수 있다.그러나 다차원적인 어려움과 분할로 인해 분리되는 문제점이 존재한다.다른 한편, 근사 함수를 사용하면 연속적인 해를 얻을 수 있으나 엄밀성을 잃는다.신경 네트워크가 임의의 정밀도로 모든 함수와 근사할 수 있다이기 때문에 미분 방정식의 연속해를 정확하게 구할 수 있다.
이중 포프테론으로 비슷해요.
이 방법은 I.E.Lagaris 등이 1998년에 제기한 방법이다.2 단계 상미분 방정식
$$
G(\vec{x},\Psi(\vec{x}),\nabla\Psi(\vec{x}),\nabla^2\Psi(\vec{x}))=0
$$
생각하다.여기, $\vec{x}= (x_1,\cdots, x_n)\in{\bfR}^n$는 좌표를 표시하고, $\Psi(\vec{x}) $는 구해야 할 해를 표시합니다.이중 트랜지스터를 포함하는 시험 함수 $\Psi (\vec {x},\vec {p}) $와 비슷하다면 ($\vec {p}$는 네트워크의 매개 변수) 를 구해야 합니다
$$
\sum_{\vec{x}_i\in{\bf R}^n}(G(\vec{x}_i,\Psi(\vec{x}_i),\nabla\Psi(\vec{x} _i),\nabla^2\Psi(\vec{x} _i)))^2
$$
문서 레지스트리에 항목을 추가합니다.시험 함수는 경계 조건과 초기 조건을 만족시킨다.
$$
\Psi(\vec{x})=A(\vec{x})+F(\vec{x},N(\vec{x},\vec{p}))
$$
여기서 $A(\_vec{x})$는 경계 조건 등을, $N(\uvec{x},\uvec{p})$는 입력 수 $n$, 출력 수 $1$의 이중 침투자를 나타냅니다. $F$경계에서 두 번째 항목을 0으로 선택합니다.물론 중간층의 노드 수는 함수를 충분히 비슷하게 하고 가능한 한 크게 해야 한다.학습은 BFGS법과 사다리꼴 하강법으로 진행된다.구체적인 인코딩은 이 문장로 잘 귀결된다.다른 논문에는 라프라스 방정식을 풀 수 있는 예쁜 그림이 실렸기 때문이다.엄밀해와의 오차는 크더라도 $10^{-4}$등급으로 매우 실용적인 정밀도라고 할 수 있다.
Solving differential equations using neural networks, M. M. Chiaramonte and M. Kiener, 2013 참조
Data-driven solution
이 방법은 2017년M.Raissi 등이 제시한 방법에 나왔다.연속시간법과 이산시간법 두 가지가 있다.
연속 시간법
미분 방정식을 풀다
$$
u_t+{\mathcal N}[u]=0
$$
나타내다여기서 $u(t,x)$는 구해야 합니다. ${\mathcal N}[\bullet]$는 공간 미분 등을 포함하는 산입니다. $x\in\Omega$는 ${\bfR}^d$의 하위 공간을 표시하고, $t\in[0, T]$는 시간을 표시합니다.아래 표는 편미분을 나타낸다.오른쪽
$$
f:=u_t+{\mathcal N}[u]
$$
깊이 신경 네트워크로 $u$와 비슷한 것을 고려하는 것으로 정의됩니다.손실 함수는 제곱 오차이다
$$
MSE=MSE_u+MSE_f
$$
나타내다여기 있다
$$
\begin{align}
MSE_u&=\frac{1}{N_u}\sum_{i=1}^{N_u}|u(t_u^i,x_u^i)-u^i|^2\\
MSE_f&=\frac{1}{N_f}\sum_{i=1}^{N_f}|f(t_f^i,t_f^i)|^2
\end{align}
$$
각각 구속 조건(초기 조건 또는 경계 조건)에 대한 오차, 미분 방정식 자체에 대한 오차이다.제약 조건이 유식으로 제시된 경우(시간 반전 대칭성 등)에 상응하는 제곱 오차항을 별도로 추가할 수 있다{t_u^i,x_u^i,u_i\}_{i=1}^{N_u}$는 제약 조건의 훈련 데이터입니다. $\{t_f^i, x_f^i\}_{i=1}^{N_f}$는 미분 방정식 자체의 훈련 데이터입니다.이를 최소화함으로써 미분 방정식의 근사해를 얻는다.이 방법의 요점은
과거에는 해석하기 어려운 미분 방정식을 Runge-Kutta법 등 교체 해법으로 풀었다.이런 수법들이 뒤에서 우리의 생활을 지탱하고 있다고 할 수 있다.그러나 다차원적인 어려움과 분할로 인해 분리되는 문제점이 존재한다.다른 한편, 근사 함수를 사용하면 연속적인 해를 얻을 수 있으나 엄밀성을 잃는다.신경 네트워크가 임의의 정밀도로 모든 함수와 근사할 수 있다이기 때문에 미분 방정식의 연속해를 정확하게 구할 수 있다.
이중 포프테론으로 비슷해요.
이 방법은 I.E.Lagaris 등이 1998년에 제기한 방법이다.2 단계 상미분 방정식
$$
G(\vec{x},\Psi(\vec{x}),\nabla\Psi(\vec{x}),\nabla^2\Psi(\vec{x}))=0
$$
생각하다.여기, $\vec{x}= (x_1,\cdots, x_n)\in{\bfR}^n$는 좌표를 표시하고, $\Psi(\vec{x}) $는 구해야 할 해를 표시합니다.이중 트랜지스터를 포함하는 시험 함수 $\Psi (\vec {x},\vec {p}) $와 비슷하다면 ($\vec {p}$는 네트워크의 매개 변수) 를 구해야 합니다
$$
\sum_{\vec{x}_i\in{\bf R}^n}(G(\vec{x}_i,\Psi(\vec{x}_i),\nabla\Psi(\vec{x} _i),\nabla^2\Psi(\vec{x} _i)))^2
$$
문서 레지스트리에 항목을 추가합니다.시험 함수는 경계 조건과 초기 조건을 만족시킨다.
$$
\Psi(\vec{x})=A(\vec{x})+F(\vec{x},N(\vec{x},\vec{p}))
$$
여기서 $A(\_vec{x})$는 경계 조건 등을, $N(\uvec{x},\uvec{p})$는 입력 수 $n$, 출력 수 $1$의 이중 침투자를 나타냅니다. $F$경계에서 두 번째 항목을 0으로 선택합니다.물론 중간층의 노드 수는 함수를 충분히 비슷하게 하고 가능한 한 크게 해야 한다.학습은 BFGS법과 사다리꼴 하강법으로 진행된다.구체적인 인코딩은 이 문장로 잘 귀결된다.다른 논문에는 라프라스 방정식을 풀 수 있는 예쁜 그림이 실렸기 때문이다.엄밀해와의 오차는 크더라도 $10^{-4}$등급으로 매우 실용적인 정밀도라고 할 수 있다.
Solving differential equations using neural networks, M. M. Chiaramonte and M. Kiener, 2013 참조
Data-driven solution
이 방법은 2017년M.Raissi 등이 제시한 방법에 나왔다.연속시간법과 이산시간법 두 가지가 있다.
연속 시간법
미분 방정식을 풀다
$$
u_t+{\mathcal N}[u]=0
$$
나타내다여기서 $u(t,x)$는 구해야 합니다. ${\mathcal N}[\bullet]$는 공간 미분 등을 포함하는 산입니다. $x\in\Omega$는 ${\bfR}^d$의 하위 공간을 표시하고, $t\in[0, T]$는 시간을 표시합니다.아래 표는 편미분을 나타낸다.오른쪽
$$
f:=u_t+{\mathcal N}[u]
$$
깊이 신경 네트워크로 $u$와 비슷한 것을 고려하는 것으로 정의됩니다.손실 함수는 제곱 오차이다
$$
MSE=MSE_u+MSE_f
$$
나타내다여기 있다
$$
\begin{align}
MSE_u&=\frac{1}{N_u}\sum_{i=1}^{N_u}|u(t_u^i,x_u^i)-u^i|^2\\
MSE_f&=\frac{1}{N_f}\sum_{i=1}^{N_f}|f(t_f^i,t_f^i)|^2
\end{align}
$$
각각 구속 조건(초기 조건 또는 경계 조건)에 대한 오차, 미분 방정식 자체에 대한 오차이다.제약 조건이 유식으로 제시된 경우(시간 반전 대칭성 등)에 상응하는 제곱 오차항을 별도로 추가할 수 있다{t_u^i,x_u^i,u_i\}_{i=1}^{N_u}$는 제약 조건의 훈련 데이터입니다. $\{t_f^i, x_f^i\}_{i=1}^{N_f}$는 미분 방정식 자체의 훈련 데이터입니다.이를 최소화함으로써 미분 방정식의 근사해를 얻는다.이 방법의 요점은
이 방법은 2017년M.Raissi 등이 제시한 방법에 나왔다.연속시간법과 이산시간법 두 가지가 있다.
연속 시간법
미분 방정식을 풀다
$$
u_t+{\mathcal N}[u]=0
$$
나타내다여기서 $u(t,x)$는 구해야 합니다. ${\mathcal N}[\bullet]$는 공간 미분 등을 포함하는 산입니다. $x\in\Omega$는 ${\bfR}^d$의 하위 공간을 표시하고, $t\in[0, T]$는 시간을 표시합니다.아래 표는 편미분을 나타낸다.오른쪽
$$
f:=u_t+{\mathcal N}[u]
$$
깊이 신경 네트워크로 $u$와 비슷한 것을 고려하는 것으로 정의됩니다.손실 함수는 제곱 오차이다
$$
MSE=MSE_u+MSE_f
$$
나타내다여기 있다
$$
\begin{align}
MSE_u&=\frac{1}{N_u}\sum_{i=1}^{N_u}|u(t_u^i,x_u^i)-u^i|^2\\
MSE_f&=\frac{1}{N_f}\sum_{i=1}^{N_f}|f(t_f^i,t_f^i)|^2
\end{align}
$$
각각 구속 조건(초기 조건 또는 경계 조건)에 대한 오차, 미분 방정식 자체에 대한 오차이다.제약 조건이 유식으로 제시된 경우(시간 반전 대칭성 등)에 상응하는 제곱 오차항을 별도로 추가할 수 있다{t_u^i,x_u^i,u_i\}_{i=1}^{N_u}$는 제약 조건의 훈련 데이터입니다. $\{t_f^i, x_f^i\}_{i=1}^{N_f}$는 미분 방정식 자체의 훈련 데이터입니다.이를 최소화함으로써 미분 방정식의 근사해를 얻는다.이 방법의 요점은
의 총체.다음은 1차원burger's방정식을 풀기 위한 그림입니다.검정색×은 초기 조건과 경계 조건으로 제시된 견본점입니다.매 순간 엄격해와 잘 어울린다는 것을 알 수 있다.
M. Raissi et al., arXiv:1708.07469 [q-fin.MF] 참조
이산 시간법
위의 방법에서 $N_f$는 비트의 증가에 따라 지수 함수가 증가하기 때문에 3차원 이상의 문제를 처리할 때 그 수량이 문제가 된다.따라서 시간 방향의 차원 샘플링을 하지 않는 방법은 이산 시간법이다.이산 시간법은 시간 발전 중에 Runge-Kutta법을 사용하여 $N_$를 줄일 수 있습니다.Runge-Kutta법의 단계(16등)를 늘리면 시간 각도가 그리 가늘지 않아도 정밀도가 좋은 근사해를 얻을 수 있다.
결론
깊이 있는 학습을 통해 미분 방정식의 미분 근사해를 정확하게 얻을 수 있다.이번 조사 논문에서는 교사도 있고 공부도 하고 단순한 전결합 네트워크를 사용했지만 LSTM 같은 RNN정확도 향상 보고서과강화 학습으로 근사해를 구하는 연구을 사용함으로써 개발도상국의 영역으로 느껴졌다.며칠 후에 나는 스스로 설치하고 싶다.
Reference
이 문제에 관하여(딥러닝으로 미분 방정식을 풀면), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ryuoujisinta/items/5f65fca836f9dc2b2ad4
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(딥러닝으로 미분 방정식을 풀면), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ryuoujisinta/items/5f65fca836f9dc2b2ad4텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)