일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- obsidian
- teps
- Zotero
- 텝스
- 우분투
- Python
- 텝스공부
- 수치해석
- Linear algebra
- WOX
- 생산성
- Numerical Analysis
- ChatGPT
- 고체역학
- JAX
- MATLAB
- LaTeX
- 딥러닝
- pytorch
- Statics
- 논문작성
- 옵시디언
- Dear abby
- 에러기록
- IEEE
- 논문작성법
- Julia
- matplotlib
- 인공지능
- 수식삽입
- Today
- Total
목록분류 전체보기 (434)
뛰는 놈 위에 나는 공대생
JAX로 학습하는 도중에 NAN값이 나와서 어디부터 원인인지 찾기가 어려웠다. 이럴 때는 아래 코드를 추가하면 된다. from jax.config import config config.update("jax_debug_nans", True) 이렇게 할 경우에 NAN이 발생하는 즉시 어떤 코드에서 문제가 발생하는지를 알려주고 코드가 종료된다.
Woman Might Double Down on Romance With Gambler - March 22, 2023 - DEAR ABBY: My ex-husband and I separated two months after our wedding. Our divorce was final five months ago. After I left him, I started talking to a younger guy I had a lot in common with. However, he has a gambling problem and ended up stealing money from my cash app. He eventually paid me back and has done everything in his p..
Gaussian process에서 사용하는 커널 종류는 다양할 수 있지만 여기서는 Radial Basis Fuction을 이용해서 gaussian process 샘플들을 구하고 이에 대한 관찰을 시각화하는 방법에 대해서 이야기한다. RBF 함수는 Paris Perdikaris 교수님의 수업자료를 참고하였다. $k(x_1,x_2)=\eta \exp\left( \dfrac{(x_1 -x_2)^{2}}{2l^2}\right)$ 커널함수가 이렇게 설정되어 있을 때 우리가 조절할 수 있는 파라미터는 scale factor인 $\eta$와 length인 $l$이다. 개념적으로 생각하였을 때 random process인 gaussian process는 $\mathbf{x}~\mathcal{N}(\mathbf{0}, ..
가장 simple하게 신경망을 구성하는 방법에 대해서 저장해놓은 글이다.차츰 업데이트 할 예정 1. 기본 학습 코드import jaximport jax.numpy as jnpfrom jax import grad, jit, vmapfrom jax import random# Define a simple neural network modeldef init_params(layer_sizes, key): params = [] for i in range(1, len(layer_sizes)): key, subkey = random.split(key) w = random.normal(subkey, (layer_sizes[i-1], layer_sizes[i])) b = j..
본 글에서는 JAX로 미분값을 구하는 방법에 대해서 다룬다. JAX에서는 미분값을 구하기 위해 grad, jacfwd, jacrev를 제공하기 때문에 몇 가지 예제를 통해서 익숙해지고자 한다. 일단 크게 scalar-valued function과 vector-valued function으로 나누고, 각 function이 한 개의 변수에만 의존하는지, 또는 두 개 이상의 변수에만 의존하는지를 따진다. 예제코드는 유튜브 튜토리얼 + JAX 매뉴얼을 참고하였다. 1. Scalar-valued function일 때 Gradient는 scalar-valued univariate function에 대한 기울기 Jacobian은 vector-valued or scalar-valued multivariate funct..
현재 기준(230318)으로 cholesky decomposition을 사용할 때 행렬 크기가 50정도 넘어가면 nan을 출력하는 오류가 있다. jnp.linalg.cholesky(K) jax.random.multivariate_normal(subkeys[0], np.zeros((N_samples,)), K) 이 때문에 cholesky decomposition을 쓰는 다른 함수들도 영향을 받았는데 jax.random.multivariate_normal의 경우에도 랜덤하게 추출하는 과정에서 cholesky decomposition을 쓴다. cholesky decomposition은 어쩔 수 없을 것 같고 jax.random.multivariate_normal(subkeys[0], np.zeros((N_sa..
아직 jax가 한글화가 많이 안 되어있어서 기본적인 기능은 내가 적어놓으려고 한다. jax.vmap(fun, in_axes=0, out_axes=0, axis_name=None, axis_size=None, spmd_axis_name=None) function을 argument axes에 대해서 mapping해주는 기능. fun : mapping할 function in_axes : function에 들어가는 input을 의미한다. 정수, None, Python container(tuple/list/dict 모두 가능)을 지원한다. 이는 모두 mapping할 input array 축을 의미한다. 만약 fun의 argument가 array이면 in_axes에는 정수, None, 튜플(Integer, None..
Coming-Out Creates Tension Between Longtime Friends - March 14, 2023 - DEAR ABBY: A dear friend, "Lorraine," contacted me because her daughter "Gabby" came out to her as bisexual and Lorraine knew I had experience with "this type of thing." My daughter is bisexual. Lorraine was repulsed by her daughter's revelation and upset that Gabby expected her to be supportive and wear pride stickers, etc. ..
위의 짤에서 알 수 있듯이 뭐하나 만들려고 하면 계속 수정해야하고 결국 옆에 'v1','v2'... 끝없이 버전이 늘어나거나 '최종', '진짜_최종'.. 계속 늘어난다. 이렇게 하는 거는 둘째치더라도 뭐가 바뀌었는지, 변경사항이 제대로 반영이 된 것인지 알 수 없을 때가 생겼다. 그래서 좀 편하게 변경사항을 확인하기 위한 방법을 여기서 소개한다. 1. 코드의 경우 코드는 깃(git)에서 관리하고 있다면 버전관리 측면에서 좀 더 편하게 수행할 수 있다. 그런데 꼭 깃을 쓰지 않더라도 코드 변경을 빨리 파악하고자 한다면 WinMerge라는 프로그램으로 코드 두개를 나란히 두고 비교해볼 수 있다. https://winmerge.org/ 에서 다운로드 가능하다. 2. 문서의 경우 2-1) pdf의 경우 논문 최..
LaTeX는 주석처리를 하려면 주석처리하고 싶은 줄을 드래그하고 CTRL+/ 단축키를 통해 %를 추가하여 주석으로 만들 수 있다. 그런데 긴 줄의 코드를 주석처리하고 싶으면 이런 방식이 어려울 것이다. 이 글에서는 여러 줄을 한 보이게 하는 방법에 대해 다룬다. 1. 패키지 comment 또는 verbatim을 통해 comment 블록 생성 내가 찾아본 방법으로 가장 간단한 것은 \usepackage{verbatim} \begin{comment} % 주석처리할 내용 \end{comment} 다음과 같이 주석내용을 comment 블럭으로 감싸주는 것이다. package verbatim도 필요하니 같이 넣어준다. 그런데 verbatim의 경우 문제가 발생할 수도 있다고 한다. 따라서 \usepackage{c..