개요 웹 페이지에서 LaTeX 수식을 적을 수 있도록 Javasciprt로 작성된 KaTeX를 티스토리 스킨에 적용시켜 봅니다. KaTeX는 MathJax보다 렌더링이 빨라 웹 페이지 로딩 시 거의 바로 수식을 출력해줍니다. hELLO 스킨 사용 시의 충돌 수정이 있습니다! 스크립트 불러오기 KaTeX – The fastest math typesetting library for the web Simple API, no dependencies – yet super fast on all major browsers. katex.org 위 링크는 KaTeX를 브라우저에서 사용하기 위한 원본 문서입니다. 이 글을 보고 모자라거나 궁금한 점이 있으시면 원본을 참조해주시면 되겠습니다. 원글에 표기된대로 우리가 사용하..
개요 참고사항 틈 날 때 지속적으로 내용 보강 중입니다. 지시자 설명과 상세한 예시를 추가할 예정입니다. 정규 표현식이란 문자열의 패턴을 나타내는 일종의 수식이라고 할 수 있겠습니다. 이 표현식을 바탕으로 일치하는 모든 문자열을 탐색해내는 것을 목표로 사용됩니다. 예를 들어보자면, File001, File002, File003, ... , File999가 다른 파일과 마구잡이로 섞여 있을 때 어떻게 그 사이에서 우리가 원하는 것만 모두 선택할 수 있을까요? 이럴 때 우리는 정규 표현식을 써서 원하는 문자열의 패턴, ^File[0-9]{3}을 알려줌으로써 모두 골라낼 수 있습니다. ^$ == == == etc... 문법 설명 지시자 설명 ^ 가장 맨 앞의 문자를 나타내는 지시자. ^의 뒤에 오는 문자열이 ..
개요 참고사항 hELLO v.4.2.0을 기준으로 작성되었습니다. 코드 블럭 오른쪽 상단에 블럭 내 전체 내용을 복사할 수 있는 버튼을 생성합니다. 티스토리에 코드를 일종의 아카이브 하듯이 저장하는 입장에서 코드 블럭이 버튼 하나로 복사가 되는 기능이 있는지 없는지는 꽤나 중요하게 느껴집니다. hELLO 스킨에는 코드블럭 복사버튼이 기본적으로는 내장되어 있지 않기 때문에 다른 글을 참조하여 작성해봤습니다. hELLO 스킨의 다른 기능과의 충돌인지 곧바로 적용되지 않아 어느 정도 수정을 가미했으며, 디자인을 제 취향대로 조금 수정했습니다. 선행작업: clipboard.js 다운로드 (선택) clipboard 기능을 사용하기 위해 미리 작성된 깃 레포지토리로부터 자바스크립트를 얻어와야 합니다. 해당 스크립트..
참고사항 최종 수정이 끝났습니다! 문제가 있는 경우, 댓글 주세요. HTML과 Javascript, CSS를 이용한 스킨 편집을 합니다. hELLO v.4.2.0 스킨을 기본으로 작성되었습니다. 만약 편하게 관리자 창에 들어가기만 하면 된다면 단축키 Q를 사용하는 것도 좋습니다. 블로그에서는 관리자로 / 관리자에서는 블로그로 이동합니다. (관리자인 경우) 개요 먼저 결과물을 보고 시작하겠습니다. 이미지와 같은 형태로 완성됩니다. hELLO 스킨에 관리자 / 글쓰기 버튼이 없어서 불편함을 느끼다가 한 번 바꿔보자 싶어서 이런 저런 자료를 찾아보고 직접 수정했습니다. 디자인은 티스토리의 기본 버튼의 형태를 빌렸으나, 원하는 디자인이 따로 있다면 알맞게 편집하면 되겠습니다. 링크 만들기 본문의 (##_blog..
개요 연구실 서버 관리 중 서버의 호스트네임을 변경해야 할 일이 생겼는데, 대체로 옛날 방법 (/etc/hosts/를 직접 편집하는 것)들은 재부팅을 필요로 하기 때문에 재부팅없는 방법을 조사해봤다. Hostname 확인 먼저 호스트네임을 확인해보자. ~$ hostname {Hostname} # or ~$ hostnamectl Static hostname: {Hostname} ... Hostname 변경 이제 호스트네임을 원하는 이름으로 변경해보자. ~$ hostnamectl set-hostname {new_hostname} ~$ systemctl restart hostname.service example: ~$ hostnamectl set-hostname mushclam ~$ systemctl rest..
Intro Randomization 함수를 많이 사용하는 코드에서 random seed control은 reproducibility를 위해 꼭 필요한 작업이다. 특히 randomness가 성능에 강하게 영향을 미치는 neural network의 코드 내에서 온갖 곳에 적용되고 있는 random 함수들, 예를 들어 initialization과 같은 함수의 randomness를 고정시켜야 추후 동일한 model의 reproduce를 가능하게 하기 때문이다. 이를 위해 간단한 글을 작성한다. Python 가장 먼저 Python의 기본 random package의 seed를 고정시켜야 한다. import random random.seed(seed) Numpy pytorch와 긴밀하게 사용되는 matrix pac..
코딩 중에 Matrix의 대형 연산이 필요하게 되어 EJML을 사용했었는데, EJML은 Single-threaded library라서 32 core cpu 위에서도 computing power를 모두 사용하지 못했다. 주 사용 언어가 Java가 아니다보니 Matrix 연산에 최적화 되어있는 Python의 numpy나 pytorch 같은 모듈들이 생각이 나서, Java code 위에서 Python code를 돌리고자 조사한 결과, Jep과 Jython이라는 외부 라이브러리를 통해 Python code를 실행할 수 있다는 것을 알게 되었으나, 몇 차례 시도 끝에 시도는 실패로 끝났다. 가장 큰 원인은, 1. Jep GIL을 사용한다. pytorch의 autograd 또한 GIL을 기반으로 작동하기 때문에, ..