일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Linear algebra
- 생산성
- 옵시디언
- 논문작성법
- 텝스공부
- 텝스
- Zotero
- LaTeX
- Julia
- Statics
- matplotlib
- 수치해석
- ChatGPT
- 수식삽입
- 논문작성
- 우분투
- 딥러닝
- obsidian
- 인공지능
- Python
- Numerical Analysis
- teps
- JAX
- 에러기록
- MATLAB
- Dear abby
- WOX
- pytorch
- IEEE
- 고체역학
- Today
- Total
목록분류 전체보기 (430)
뛰는 놈 위에 나는 공대생
사실 물체의 dynamics 자체는 뉴턴 법칙으로 고정되어있기 때문에 익숙하다. 다만 이 dynamics에서 얼마만큼 더 '정밀하게' 모델링할 것인가는 엔지니어의 몫이다. 예를 들면 $\dot{P}=F$ $\dot{H}=M$ 다음과 같이 운동량의 변화율은 힘이고, 각운동량의 변화율은 모멘트 (즉, 힘과 모멘트로 운동량/각운동량을 변화시킬 수 있다)라는 사실은 변하지 않는다. 하지만 제어하는 사람 입장에서는 이 힘이 어떻게 발생하는지를 디테일하게 따져보게 된다. 일례를 들면, 지금 설명할 드론의 경우 공기로 인한 항력이 발생할 수 있다. 나는 이런 유체역학을 기초적인 부분 밖에 모르지만 모터가 돌면 주변의 발생하는 바람으로 인해 힘에 영향을 줄 수 있다. 하지만 측정이 불가능한 영역이라면 이를 무시하고 d..
Quasi Newton method를 이용해서 JAX에서 최적화를 시키고 싶었는데 JAX 자체가 Deep learning에 포커스가 있고 대부분 딥러닝이 Gradient descent method로 최적화를 하다보니 라이브러리를 찾게 되었다. 대부분 jaxopt라는 라이브러리를 추천했기 때문에 이걸로 수행해보았다. jaxopt에는 jaxopt.ScipyMinimize와 jaxopt.LBFGS가 있는데 다른 분들의 시도를 보니 ScipyMinimize가 더 성능이 괜찮은 것 같다. ScipyMinimize는 scipy에 있는 최적화를 사용한 것이고 LBFGS는 직접 만든 것 같은데 line search 방법 등이 다르다고 한다. import jax import jax.numpy as np from jax ..
맨날 Bayesian Neural Network (BNN)에 대해서 얘기를 듣다가 좋은 강의를 접하게 되어서 요약 정리하고 개별 내용을 보는 것이 어떨까 생각한다. 모든 자료들이 notation을 다르게 쓰다보니 따라가기 어려운 점이 있기도 하고.. 만약 BNN 관련한 라이브러리를 한 번쯤 보신 분들이라면 MCMC, Dropout, Stein Variational Gradient Descent, Variational Inference 등 알 수 없는 용어들을 봤을 것이다. 필자도 배우는 단계이기 때문에 공부하면서 이 글이 수정될 수도 있다. 다루고 싶은 내용은 1) Bayesian Neural Network의 이론 기반 2) BNN에 포함되는 알고리즘 3) BNN Implementation (JAX 라이..
티스토리 코드블럭에서 필요한 언어를 지정할 때 자꾸 까먹어서 저장하는 글 다음 링크에 들어가면 확인할 수 있다. highlight.js를 모든 언어용으로 사용하고 있으면 다음과 같이 Aliases에 있는 문자를 보고 HTML에 들어가서 코드 블럭의 class를 바꿔줘야 한다. 예를 들어 나는 LaTeX를 쓰고 싶은데 티스토리 코드 블럭에는 LaTeX 항목이 없어서 직접 입력해준다. Language Aliases Package 1C 1c 4D 4d highlightjs-4d ABAP sap-abap, abap highlight-sap-abap ABNF abnf Access logs accesslog Ada ada Apex apex highlightjs-apex Arduino (C++ w/Arduino li..
코센이라는 과학,공학 커뮤니티에서 홍보를 해서 듣게 된 세미나이다. 해외포닥을 중점적으로 다루는 세미나인데 세미나 이후에는 자료들도 웹사이트에 올라온다고 하니 나중에 참고해도 될 것이다. 다음주 것까지 듣고 더 추가할 생각이다. 1회 주제 : 펠로십 기회 활용: 전략적으로 접근하기 발표자 : 신승우 (University of California Santa Barbara ,UCSB) 1. 본인 분야에서 포닥하시는 사람들이 받은 fellowship 확인해서 지원하면 좋다. 주로 한국연구재단이 많은 것 같다. 2. 본인이 직접 과제를 가져오면 포닥을 지원할 때 유리하다. 최근에는 포닥 월급이 오르면서 채용하는 것을 꺼리고 있기 때문이다. 3. 각 펠로우쉽에 동일한 주제로 내면 불리한지는 알 수 없으나 연사 분..
호주에 단기간 있기 위해서 비자를 발급받을 일이 있었다. 호주는 비자발급하면 발급일로부터 12개월 유효하고 입국 날부터 3개월 동안 지낼 수 있다. 1. 호주 비자 발급 방법은 앱스토어/구글플레이에서 australianETA 설치 2. 여권 준비해서 applicant 등록 3. 호주 비자 application 작성 4. 작성할 때 몇 가지 알아두면 좋은 점은 intended address인데 숙소 예약을 했기 때문에 그 주소를 작성한다. 자세한 항목으로는 1) ETA type : tourist / applicant냐고 물어보면 yes 2) Declaration : box tick 3) 범죄기록 없음 4) 가정폭력 전과 없음, 대상이 된 적 없음(법원이나 기타 기관에서 보호 명령을 받은 적이 있는지) 5)..
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..