일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- pytorch
- Python
- IEEE
- 논문작성법
- 수식삽입
- Numerical Analysis
- Julia
- 옵시디언
- obsidian
- teps
- 인공지능
- 텝스
- 생산성
- JAX
- 텝스공부
- ChatGPT
- Dear abby
- 딥러닝
- Linear algebra
- LaTeX
- 고체역학
- WOX
- 수치해석
- MATLAB
- 논문작성
- 우분투
- 에러기록
- Zotero
- Statics
- matplotlib
- Today
- Total
목록분류 전체보기 (434)
뛰는 놈 위에 나는 공대생
Game theory는 수학 분야 중의 하나로 여러 agents가 있을 때의 최적 의사결정을 다루는 학문이다. Game theory는 경제, 통신 등 다양한 분야에서도 쓰이지만 Optimal control 분야에서도 많이 쓰이는데 대표적으로 Pursuit-evasion problem이다. 이는 Non-cooperative, two player, zero-sum game으로 볼 수 있고 이에 대한 formulation을 Pontryagin's maximum principle과 Bellman's equation 두 가지 approach를 통해 analytical solution을 구할 수 있다. Pontryagin's maximum principle의 경우에는 시간에 대한 입력으로 결과가 나오기 때문에 op..
LaTeX(레이텍)를 시작하는 가장 간단한 방법은 overleaf를 사용하는 것이다. 하지만 직접 레이텍 편집기를 쓰거나 다른 프로그램(VS code나 PPT)에서 LaTeX를 사용할 수 있는 환경을 구축하기 위해서는 기본적인 내용은 파악해야한다는 결론에 이르렀다. 1. 왜 LaTeX를 쓰나요 레이텍이 원래 시초가 아니라 사실 TeX이 시초이다. TeX는 MATLAB에서도 Legend나 title을 작성할 때 'a_2' 이런 식으로 작성하면 간단한 TeX interpreter를 사용해서 $a_{2}$로 바꿔준다. TeX는 로널드 커누스 교수가 1978년 개발한 프로그램이고, 이를 좀 더 발전시킨 것이 LaTeX라고 한다. 그래서 우리가 작성하는 파일은 .tex 파일이고 이를 컴파일하여 보기 좋은 형태(p..
ChatGPT를 연구에 활용할 수 있는 방안에 대한 강연을 듣고 내용을 정리하는 글. 나에게 도움이 될 만한 것 위주로 작성했기 때문에 직접 듣고 싶다면 연사 분이었던 커맨드스페이스의 구요한 대표님의 유튜브 채널을 참고해보는 것도 좋을 것 같다. 1. chatGPT 사용법 chatGPT는 3.5보다는 4.0 활용을 권한다. 파일을 업로드해서 파일을 기반으로 대화 가능하다. chatGPT에 다양한 플러그인(울프람알파, 파이썬 등)을 통해 그래프를 그리고 수식을 해결할 수 있다. custom instructions 기능을 통해 미리 내가 어떤 배경을 가진 사람인지를 알려줌으로써 대화에 더 도움을 받을 수 있다. 한 대화 당 토큰 수가 제한되어있기 때문에 이 기능을 유용하게 쓸 수 있다. (3.5와 4.0 모..
인공지능을 하다보면 경험적으로 알게 되는 것들이 있는데 그 중 하나가 scaling의 문제이다. 간단한 regression 문제를 풀어보자. import jax import jax.numpy as jnp from jax import random, vmap from jax.example_libraries import optimizers def diffusion(t, y, args): sigma = 0.15 diff = sigma * jnp.sqrt(y) return diff # Define a simple neural network model def init_params(layer_sizes, key): params = [] for i in range(1, len(layer_sizes)): key, sub..
JAX를 쓰다보니 분명 vmap을 사용했음에도 안에 있는 루프는 빨리 되지만 정작 vmap을 나올 때 느려지는 현상을 발견하였다. 구체적으로 알아보려면 jax.make_jaxpr 또는 jax.block_until_ready를 써보라고 하는데 make_jaxpr 같은 경우에는 컴파일할 때 각 변수 flow를 보여주는 역할을 해서 도움이 될 수도 있다. vmap과 jit의 시간 차이를 알아보려면 아래의 예제를 사용해볼 수 있다. from functools import partial from timeit import timeit from jax import vmap, jit, random, numpy as jnp n, d = 512, 64 a = random.normal(random.PRNGKey(0), (n..
그래프를 여러개 그리는데 색깔이 설정에서 계속 동일하게 반복된다. (아래 그림 참고) 나의 경우에는 색상을 classic으로 설정해서 클래식 색상의 7가지가 반복되게 되어있다. 이게 마음에 안 들어서 살펴보다가 최신 matplotlib 버전부터는 axes.set_prop_cycle을 이용하면 색상도 편하게 다르게 할 수 있고 마커도 일정 패턴을 반복하도록 할 수 있음을 알게 되었다. 아래는 그 예시 코드로 Spectral cmap에서 내가 원하는 그래프 개수만큼을 간격을 추출해서 그래프를 그리기 전에 미리 cycler를 정의해놓으면 편하게 색상을 지정할 수 있다. import matplotlib.pyplot as plt ax = plt.subplot(111) num_lines = 30 colors = [..
이런저런 생각을 하다가 미분방정식의 최종 시간에서의 값이 정해질 때 역으로 풀면 (즉, 시간을 거꾸로 해서 풀면) 풀릴 지에 대한 궁금증이 생겨서 테스트한 것이다. % Solve differential equation using MATLAB odesolver tspan = [0 5]; y0 = 10; [t,y] = ode45(@(t,y) -2*y, tspan, y0); figure; plot(t,y,'-o'); dt = 0.01 ; N = tspan(2) / dt ; x = zeros(N+1,1) ; f = @(t,y) -2*y ; x(1) = y(end) ; % solve reversely for i =1:N t_tmp = 5 - dt * i ; x(i+1) = x(i) - dt * f(t_tmp,x(..
*주의 : 이 글은 overleaf를 기준으로 작성되었음 다음과 같이 style을 custom해서 설정한다. \usepackage{listings} \definecolor{backcolour}{rgb}{0.95,0.95,0.92} \definecolor{codegreen}{rgb}{0,0.6,0} \definecolor{myred1}{rgb}{255, 0, 0} % Define a custom style \lstdefinestyle{myStyle}{ backgroundcolor=\color{backcolour}, commentstyle=\color{codegreen}, basicstyle=\ttfamily\footnotesize, breakatwhitespace=false, breaklines=true,..
논문을 작성하다보면 어쩔 수 없이 word에 논문을 써야할 때가 있는데 이 때 수식을 추가하는 방법에 대해 고민했었다. 수식을 삽입하는 방법은 2가지가 있다.옵션 1) 이미지로 삽입하기 (MathType이나 LaTeX 수식을 이미지로 변환 후 사용하는 경우) 옵션 2) word 자체 수식을 사용하기 각 옵션마다 가능한 방법이 있다. 옵션 1의 경우방법1. 수식을 이미지화 후 텍스트 줄 안으로 넣고 문장 끝에 번호 추가수식을 이미지화(jpg, png 등)한 후에 그림 옵션을 '텍스트 줄 안'으로 선정하고 이미지를 삽입한다. 그리고 탭을 눌러서 맨 끝에 (1)등의 변호를 추가한다.이 경우는 수식을 이미지화했다는 전제가 있는데, mathtype 같은 다른 프로그램을 통해 수식을 이미지로 가지고 있는 경우에 편..
(컴퓨터 지식이 부족한 사람의 서버 연결법에 대한 설명이므로 자세한 내용은 전문가 분을 참고하세요 / 참고한 글은 아래에 링크로 달아놓았습니다.) 연결 세팅은 다음과 같다. 1. 고정아이피로 할당된 공유기(IPTIME)가 존재한다. 2. 공유기에서 유선으로 연결된 나의 컴퓨터가 있다. 이 컴퓨터가 원격으로 접속할 클라이언트다. 3. 동일한 공유기에서 유선으로 연결된 서버 컴퓨터가 있다. 여기서 강조할 부분은 '같은 공유기를 쓴다'는 점이다. 만약 클라이언트와 서버 둘 다 각자의 랜선으로 연결되어 각자의 아이피를 가지고 있다면 컴퓨터의 주소인 아이피가 명확하기 때문에 중간에 있는 몇 가지 단계들을 그냥 넘어갈 수 있다. 하지만 현실적인 문제로 공유기를 통해 두 개를 연결한 경우이다. 이 경우, 공유기에 유..