일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 텝스
- Numerical Analysis
- Statics
- 논문작성법
- 논문작성
- 우분투
- Julia
- IEEE
- Dear abby
- JAX
- 에러기록
- 고체역학
- MATLAB
- 생산성
- 수식삽입
- 인공지능
- 딥러닝
- matplotlib
- ChatGPT
- 텝스공부
- Zotero
- 옵시디언
- WOX
- 수치해석
- teps
- pytorch
- Python
- Linear algebra
- obsidian
- LaTeX
- Today
- Total
목록분류 전체보기 (435)
뛰는 놈 위에 나는 공대생
(컴퓨터 지식이 부족한 사람의 서버 연결법에 대한 설명이므로 자세한 내용은 전문가 분을 참고하세요 / 참고한 글은 아래에 링크로 달아놓았습니다.) 연결 세팅은 다음과 같다. 1. 고정아이피로 할당된 공유기(IPTIME)가 존재한다. 2. 공유기에서 유선으로 연결된 나의 컴퓨터가 있다. 이 컴퓨터가 원격으로 접속할 클라이언트다. 3. 동일한 공유기에서 유선으로 연결된 서버 컴퓨터가 있다. 여기서 강조할 부분은 '같은 공유기를 쓴다'는 점이다. 만약 클라이언트와 서버 둘 다 각자의 랜선으로 연결되어 각자의 아이피를 가지고 있다면 컴퓨터의 주소인 아이피가 명확하기 때문에 중간에 있는 몇 가지 단계들을 그냥 넘어갈 수 있다. 하지만 현실적인 문제로 공유기를 통해 두 개를 연결한 경우이다. 이 경우, 공유기에 유..
1. Vector의 norm의 정의 vector space $X$에서 정의된 scalar function 'norm'은 특정한 properties를 만족한다. 즉, 다음의 property를 만족하면 norm이라고 할 수 있다. $x \in \mathbb{R}^{n}$ 와 같은 $n$차원 벡터가 있을 때 1) positivity & positive definiteness $\|x\| \geq 0$ $\|x\|=0 \text{ iff } x=0$ 2) absolute homogeneity $\|\alpha x\|=| \alpha | \|x\|$ 3) triangle inequality $\|x+y\| \leq \|x\| + \|y\|$ 여기서 드는 생각은 왜 norm이라는 것이 중요한가라는 질문이다. 직관적..
모든 scipy interpolation을 다 시도해보았다. 각 interpolation마다 특징이 있으므로 원하는 것을 사용하면 된다. from scipy import interpolate import numpy as np x = np.arange(0, 10) y = np.sin(-x) kind_set = [ "zero", "linear", "quadratic","nearest", "nearest-up", "slinear", "cubic", "previous"] xnew = np.arange(0, 9, 0.1) for i in range(4): f = interpolate.interp1d(x, y, kind=kind_set[i]) ynew = f(xnew) plt.plot(xnew, ynew, labe..
MATLAB을 제외하고 인공지능 툴을 쓸 수 있는 환경은 대부분 파이썬이다. 그런데 파이썬만 있다고 끝나는 것이 아니라 인공지능 라이브러리를 동반해야 한다. 나는 Tensorflow2, Keras, PyTorch, JAX 까지 다 써보고 현재는 Julia도 고려하는 중이다. (Tensorflow1은 써봤는데 불편하기도 하고 그 때는 2가 막 활발해지던 시점이라서 그냥 넘겼다.) 철저히 개인적인 경험을 바탕으로 작성하는 것이라서 연구 쪽에 초점이 맞춰져있고, 그걸 감안하고 보면 될 것이다. 혹시 실무를 하시는 분들이 있으면 본인의 경험을 공유해주시면 정말 좋을 것 같다. 아래가 내용을 정리한 표 Tensorflow Keras PyTorch JAX Julia 특징 Google에서 시작 프랑소와 숄레가 창시한..
MCMC sampling을 위한 라이브러리 marathon : c++ 라이브러리 c++ 라이브러리는 고려하지 않았으므로 패스 Pyro : Pyro is a universal probabilistic programming language (PPL) written in Python and supported by PyTorch on the backend. Pyro enables flexible and expressive deep probabilistic modeling, unifying the best of modern deep learning and Bayesian modeling. It was designed with these key principles Universal: Pyro can represen..
inject_hyperparams라는 함수로 optax의 optimizer를 묶어서 사용하면 hyperparams를 관찰할 수 있다. # Wrap the optimizer to inject the hyperparameters optimizer = optax.inject_hyperparams(optax.adamw)(learning_rate=schedule) def fit(params: optax.Params, optimizer: optax.GradientTransformation) -> optax.Params: opt_state = optimizer.init(params) # Since we injected hyperparams, we can access them directly here print(f'A..
다음과 같이 jax.lax.stop_gradient로 묶어준 결과를 사용하면 그 이전까지는 gradient가 기록되지 않는다. jax.lax.stop_gradient(sol.ts)
다음과 같이 MTR_data = rand(144,4); MTR_titles = {'Put' 'Your' 'Titles' 'Here'}; T = array2table(MTR_data,'VariableNames',MTR_titles) writetable(T,'MTR_Stats.csv') type MTR_Stats.csv % check the resulting file 랜덤데이터를 생성한 다음, header로 사용할 cell array를 만들고 이를 가지고 table을 만들어주면 된다.
JAX에서 값을 쓰다가 어려운 부분이 있으면 대체로 numpy에 있는 함수들과 비슷한 것이 많아서 찾기 쉽다. 1. NaN 값 찾기 import jax.numpy as jnp a = jnp.array([jnp.nan,1,0,jnp.nan]) x = jnp.isnan(a) print(x) >> [ True False False True] 2. +-Inf 값 찾기 import jax.numpy as jnp a = jnp.array([jnp.inf,1,0,-jnp.inf]) x = jnp.isinf(a) print(x) >> [ True False False True] 1,2번 항목을 보면 boolean array으로 나오기 때문에 위 코드에서 'a'라는 array에 대해 indexing하면 NaN값을 추출할..
다음 글에서 재현성을 위해 설정해야하는 것들은 다음과 같다. import random random_seed = 1 torch.manual_seed(random_seed) torch.cuda.manual_seed(random_seed) torch.cuda.manual_seed_all(random_seed) # if use multi-GPU torch.backends.cudnn.deterministic = True torch.backends.cudnn.benchmark = False np.random.seed(random_seed) random.seed(random_seed) 이것까지는 좋은데 주의해야할 점이 있다. 예를 들어 내가 어떤 random integer를 뽑는 상황이 온다고 하자. 그러면 seed..