연구 22

JAX 공부 4 - out of bounds indexing, non array input, random numbers

https://jax.readthedocs.io/en/latest/notebooks/Common_Gotchas_in_JAX.html 🔪 JAX - The Sharp Bits 🔪 — JAX documentation jax.readthedocs.io Out of bound를 만나면 그냥 실행을 안 해버린다. (넘겨서 실행한다). Non array input은 다음과 같다. try: jnp.sum([1, 2, 3]) except TypeError as e: print(f"TypeError: {e}") TypeError: sum requires ndarray or scalar arguments, got at position 0. 즉, 기존의 numpy와 다르게 list를 안 받는 걸 체크할 수 있다. 사실 이 ..

연구/JAX 2022.07.18

JAX 공부 3 - Pure function, array updates

https://jax.readthedocs.io/en/latest/notebooks/Common_Gotchas_in_JAX.html 🔪 JAX - The Sharp Bits 🔪 — JAX documentation jax.readthedocs.io Pure function 개념에 대해서 좀 헷갈려서 적으면서 정리하고자 한다. def impure_print_side_effect(x): print("Executing function") # This is a side-effect return x # The side-effects appear during the first run print ("First call: ", jit(impure_print_side_effect)(4.)) # Subsequent runs..

연구/JAX 2022.07.18

JAX 공부 2 - JIT 기초

https://jax.readthedocs.io/en/latest/notebooks/thinking_in_jax.html를 읽으며 공부하고 있다. How to Think in JAX — JAX documentation jax.readthedocs.io JIT이란 just in time이라는 뜻이다. 이 decorator를 사용한다면, operation이 최적화된 다음에 한 번에 돌아간다. (데코레이터 : https://dojang.io/mod/page/view.php?id=2427 참고) 모든 JAX 코드가 JIT complied 될 수 있는 건 아니다. (static, known at complie time이어야 한다). 아.. 이래서 training에서는 시간이 비슷하고 infernece에서 속도가 ..

연구/JAX 2022.07.18

JAX 공부 - jax.numpy, jax.lax 기초

JAX는 XLA를 이용해서 Numpy code를 accelerator에서 돌리는 것이다. 요즘 하두 JAX에 대한 말이 많아서, 나도 빠르게 익혀서 내 분야인 강화 학습, 딥러닝에 적용하고자 한다. 기본적으로 JAX document를 하나하나 읽어보고, 이후에 더 추가적으로 구현들을 봐보려 생각한다. 특히 Diffusion Model이나 RL 내에서 적어도 3배 정도 빨라진다 지인들이 추천해서, 안 할 수가 없다. 공부하면서 적은 블로그이니, 틀릴 수 있음을 감안해주면 좋을 거 같다. 생각이 나서, vscode에 colab도 연동해서 공부해보려 한다. (https://dacon.io/forum/406050에서 참고해보려 한다) 평소에는 연구실의 gpu를 썼는데 살짝 갭 타임이 있어서 (MIT에 입학 전에..

연구/JAX 2022.07.18

LOGML 후기

https://chanwoopark.tistory.com/15 LOGML 시작 https://www.logml.ai/ LOGML 2022 | London Geometry and Machine Learning The London Geometry and Machine Learning Summer School 2022 (LOGML) aims to bring together geometers and machine learners to w.. chanwoopark.tistory.com 교수님이 주제를 어느 정도 제시해주셨다. Frame Averaging에 대해서 약점을 찾는 것이었는데, 사실 너무 well defined 되지 않은 task라서 오랫동안 (개인적으로는) 고민을 많이 했다. 1. 영어로 대화하다 보니..

연구 2022.07.15

LOGML 시작

https://www.logml.ai/ LOGML 2022 | London Geometry and Machine Learning The London Geometry and Machine Learning Summer School 2022 (LOGML) aims to bring together geometers and machine learners to work together on a variety of problems. There will be a selection of group projects, each overseen by an experienced mentor, talks www.logml.ai 그래프 (GNN) 관련 여름학교인데, 매우 기대가 된다. 여러 관련 논문들을 미리 읽었고, 학생들과 유..

연구 2022.07.10

학부시절 coursework map

이거보다 실제로 self-studied는 더 많을 것이다. 개인적으로 존경하는 연구자인 Allen-Zhu의 http://people.csail.mit.edu/zeyuan/courses.htm 을 따라 했다. 요즘 내가 하는 것들은 또 거리가 있지만, 어떤 식으로 수학, 통계를 공부해야 하냐의 하나의 로드맵이 될 수 있을 거라 생각한다. 학부시절에는 통계를 구성하는 수학을 공부하고 싶었다. 성격이 깊게 알지 못하면 넘어가질 못해서 수학을 하다가 컴퓨터도 공부하게 되고, 기반에 있던 물리도 공부하게 되었다. 컴퓨터는 별개로 예전에 알고리즘 문제풀이 코딩들을 많이 했다. (백준) 많이 했다고 하면 민망하고, 적당히 백준 기준 골드~플레 사이이다. PS를 전문으로 하기에는 잘 못하지만, 꽤 코딩 능력을 올려준 ..

연구 2022.06.21

논문 억셉 - Factor root2 acceleration of NAG

드디어 억셉이 되었다. Applied Mathematics and Optimization이라는 저널이다. 2021 ICML에서 한 끗 차이로 떨어졌다. (라고 깊게 믿고 있다. ) 말도 안 되는 소리를 하는 리뷰어가 한 명 있었고, 정말 평균 점수로 보면 붙을 수도 있었는데 떨어졌다. 이후에 1개 저널의 데스크 리젝, 1개 저널에서 말도 안 되는 소리를 하는 리뷰어들만 만났다. 논문 자체를 읽지 않은 사람들이라 믿어졌다. 그리고 드디어, 논문을 이해하고 논문의 본질을 질문하는 리뷰어들을 만났고, 억셉되었다. 1년 반 동안 arxiv만 유랑하던 논문이 드디어 붙어 기분이 좋다. https://scholar.google.com/citations?view_op=view_citation&hl=en&user=FD..

연구 2022.06.21

Vim 약어 (추가 예정)

G : 글 맨 끝 gg : 글 맨 처음 A : 줄 맨 뒤 insert i : 커서 위치 insert I : 줄 맨 앞 insert O: 커서 위 한 줄 띄우고 insert o : 아래로 한 줄 띄우고 insert w: 단어 첫 글자 기준으로 다음으로 이동 W : 공백 기준으로 다음 이동 b : 단어 첫 글자 기준으로 이전 이동 B : 공백 기준으로 이전으로 이동 E : 단어의 끝으로 ^ : 문장 맨앞 $ : 문장 맨뒤 dd : 줄 잘라내기 yy : 현재 줄 복사 p : 붙여 넣기 u : 실행 취소 ctrl + r. = redo https://wayhome25.github.io/etc/2017/03/27/vi/ 에서 보고 공부.

연구/Latex 2022.06.09