전체 글(833)
-
DataView) DataViewJS를 사용하여, 현재 페이지 Header 기준으로 테이블 형태로 정리하기
obsidian을 사용할 때 각 Header 별로 위에서 아래로 쭉 내려서 봐야하는데, 이걸 좀 더 구조화해서 쉽게 볼 수 있게 dataviewjs로 하는 방법을 공유한다. 기본적으로 obsidian을 markdown을 이용해서 만드는 것이라서 쉽게 만들 수는 있지만, 위에서 아래로 쭉 내려오는 형태로 작성하게 된다. 물론 이렇게 해도 개요 기능을 통해 쉽게 전체적인 윤곽은 확인할 수 있지만, 전체적으로 한눈에 보기가 어렵다는 생각이 들었다 그래서 보통 저런 구조를 만들 때 테이블형태로 만들게 되는데, 그러한 테이블 구조에서 현재 Make.md 플러그인에서는 url을 정리해서 보여주는 기능이 없다. 위에 보면 Link라는 기능이 있지만 저 기능은 다른 문서를 참고할 때 쓰는 기능이다. (아직 초보자라 잘..
2024.01.12 -
Git Branch 협업 방법론 정리
전략을 정리하다 보니 2개가 만들어진 것 같은데, 둘 다 괜찮은 것 같아서 공유합니다. Branch 전략 정리-1 전략 장점 단점 적합한 시나리오 Gitflow 명확한 구조, 다양한 작업 유형 분리, 예정된 릴리스 지원, 병렬 릴리스 관리 가능 복잡하고 시간 소요가 많음, 브랜치 관리에 엄격한 규율 필요, 연속 배포에는 적합하지 않음 예정된 릴리스 주기가 있는 프로젝트, 여러 릴리스를 병렬로 관리해야 하는 팀에 적합 GitHub Flow 단순하고 이해하기 쉬움, 신속한 배포 가능, 자주 작은 변경을 장려 예정된 릴리스 지원 부족, 개발/스테이징/생산 간 명확한 구분 없음 연속 배포 프로젝트, 자주 작은 변경을 선호하는 팀에 적합 GitLab Flow Gitflow와 GitHub Flow..
2023.12.28 -
Windows) Obsidian에서 Pandoc Plugin을 사용하여 문서(doc,pdf,etc)로 만들어 보기
배경 obsidian을 사용해서 노트들을 관리하고 있는데, 사용하다 보니, 문서화해서 제공해야하는 일이 생겼다. 실제로 기본적으로 문서화하는 것을 찾다 보니 pdf 내보기와 같은 기능이 있는 것을 확인했지만, 먼가 수정도 가능하면서 다른 식의 문서로도 변환할 수 있는 방법을 찾고 있었다. 방법 찾다 보니 커뮤니티 플러그인 중에서 obsidian pandoc plugin 을 사용해서 할 수 있는 것을 알게 되었다. https://github.com/OliverBalfour/obsidian-pandoc 하지만 실제로 우리가 원하는 문서로 바꾸기 위해서는 추가적인 작업이 있어 공유한다. 위에 있는 것처럼 다양한 문서로 출력할 수 있는 것을 알 수 있어서 잘 사용하면 좋을 것 같다는 생각이 들었다. 추가 설치 ..
2023.12.23 -
DVC 설명 및 필수 활용 방법 정리
소개 모든 머신 러닝(ML) 개발자들은 ML 프로젝트의 성공에 있어서 데이터가 얼마나 중요한지 잘 알고 있습니다. 아주 조금의 데이터 변경도 결과에 극적인 변화를 가져올 수 있습니다. 그래서 데이터에 발생하는 모든 변화를 추적하는 것이 매우 중요합니다. 우리가 이야기하는 것은 'data versioning'라고 불립니다. data versioning란 무엇인가? data versioning(버전 관리)는 프로젝트의 다양한 시점에서 스냅샷을 유지하는 행위입니다. 이 방법은 수십 년 동안 소프트웨어 공학에서 흔히 알려져 있으며, 현대 소프트웨어 개발 과정에서 매우 중요해졌습니다. 버전 관리를 하는 것은 프로젝트 소유자에게 두 가지 주요 이점을 제공합니다: 가시성: 작업의 버전을 유지함으로써 소유자는 시간이 ..
2023.12.08 -
GPTs) 영단어 생성기 GPT 만들어보기
전에 이런 주제로 영단어 프롬프트를 만든 적이 있다. 이 프롬프트를 만들어 보면서, 먼가 나만의 앱이라는 느낌이 없었는데, 이번에 DevDay에서 나온 GPTs를 보면서, ㅇ제 GPT Store라는 개념이 생기면서 나만의 앱을 만들 수 있게 되었다. 2023.04.29 - [관심있는 주제/ChatGPT Prompt] - ChatGPT) 영단어 빈칸 문제 내는 프롬프트 공유 그래서 이번에, 기존에 했던 것을 이어서 한다는 개념으로 GPTs로 만든 My Vocab Teacher를 소개해본다. https://chat.openai.com/g/g-ZZaTrccMK-my-vocab-teacher ChatGPT - My Vocab Teacher Provides English vocab quizzes and evalu..
2023.11.12 -
LLM) Milvus 라는 Vector Database 알아보기
우선 Milvus를 알아보기 전에 Vector Database에 대해서 간단히 알아보고자 한다. Vector Database "벡터 데이터베이스"는 머신 러닝 모델에서 나온 임베딩 기술의 능력을 활용하여 대규모의 비구조화 데이터 집합을 저장, 인덱싱, 검색하기 위한 관리형이면서 간단한 솔루션입니다. 이것은 대용량 및 복잡한 데이터 집합에서 정보를 효율적으로 구성하고 검색할 수 있게 해주며, 데이터 포인트를 고차원 공간의 벡터로 표현하여 유사성 검색 및 다양한 데이터 기반 작업을 수행하기가 더 쉬워집니다. 벡터 데이터베이스는 특히 자연어 처리, 이미지 인식, 추천 시스템 등과 같은 응용 분야에서 유용하며 데이터 패턴을 이해하고 비교하는 것이 중요한 경우에 활용됩니다. 여기서 또 이해를 하기 위해선 임베딩이..
2023.11.11 -
Docker) 에러 해결하기 - exec: "docker-credential-desktop.exe": executable file not found in $PATH, out:
윈도우 환경에서 WSL2로 Ubuntu 환경을 만들어 도커를 테스트 하는 도중 발생하는 에러 로그인이 안되는 문제가 발생함. 에러 해결 방법 vi ~/.docker/config.json credsStore 라고 되어 있는 것을 credStore 로 변경 그 다음에 다시 로그인을 실행하니 잘됨. https://forums.docker.com/t/docker-credential-desktop-exe-executable-file-not-found-in-path-using-wsl2/100225 Docker-credential-desktop.exe executable file not found in $PATH using wsl2 Using the latest build of Windows 10 and Docker..
2023.11.10 -
LLM) BloombergGPT 논문 읽기
LLM 모델 중에서 파인 튜닝을 이용해 개발한 BloombergGPT에 대해서 알아보고자 합니다. 해당 논문을 통해, 어떻게 데이터 셋을 구성하고, 훈련하고 평가하는 지를 알아보고자 합니다. 개요 NLP(Natural Language Processing)의 금융 기술 분야에서의 활용은 다양하고 복잡하며, 감정 분석, 명명된 엔터티 인식부터 질문 응답까지 다양한 응용 분야에 걸쳐 있습니다. 그러나 금융 분야를 위한 특화된 대형 언어 모델 (LLM)은 학문 문헌에서 보고된 바가 없습니다. 이 연구에서는 금융 데이터 범위에서 훈련된 500억 개 파라미터 언어 모델인 BloombergGPT를 제시합니다. 저자는 Bloomberg의 다양한 데이터 소스를 기반으로 3630억 토큰 데이터셋을 구축했으며, 이는 아마도..
2023.11.02 -
LLM) Large Language Model 기본 개념 알아보기
본 글에서는 요즘 가장 핫 한 LLM에 대해서 알아보고자 한다. LLM이란? LLM은 "Large Language Model"의 약자로, 대규모 언어 모델을 의미합니다. LLM은 빅 데이터 시대에 등장한 수억 개의 매개변수를 가진 거대한 언어 모델로, 대량의 텍스트 데이터에 대해 학습됩니다. 이러한 모델은 주어진 문맥 정보를 바탕으로 텍스트를 생성하거나 이해하는 데 사용됩니다. LLM의 주요 특징 대량의 데이터 학습: LLM은 인터넷의 텍스트, 책, 기사 등 다양한 소스에서 수십 또는 수백 기가바이트의 텍스트 데이터에 대해 학습됩니다. 수억 개의 매개변수: LLM은 수억 또는 그 이상의 매개변수를 포함할 수 있으며, 이로 인해 더 복잡한 패턴과 구조를 학습할 수 있습니다. 다양한 태스크 수행: LLM은 ..
2023.10.28 -
TimeSeries) TSMixer 논문 및 구현 살펴보기
2023.07.05 - [ML(머신러닝)/Time Series] - Transformer 기반 Time Series Forecast 논문 알아보기 2023.07.06 - [ML(머신러닝)/Time Series] - TimeSeries Forecast) Transformer보다 좋다는 LSTF-Linear 알아보기 2023.07.12 - [ML(머신러닝)/Time Series] - TimeSeries) PatchTST 논문과 코드 살펴보기 2023.10.13 - [분류 전체보기] - TimeSeries) TSMixer 논문 및 구현 살펴보기 해당 논문은 구글 클라우드 AI Research 팀에서 작성을 한 것이라, 믿고 보는 논문이라 생각하고 논문을 읽어보고자 한다. 현재 기준(2023.10.07) 기준으..
2023.10.13 -
Tabular) 좋은 피처 만드는 전처리 방법 정리해보기 (preprocessing)
정형 데이터를 딥러닝에 사용할 때 임베딩하는 방법에 대해서 정리해보고자 한다. 흔히 아는 머신러닝과 딥러닝의 차이를 이런 식으로 표현한다. (물론 딥러닝은 머신러닝의 부분집합이긴 해서 이렇게 구분하는 게 맞지는 않기는 한 것 같다) 여기서 말하는 머신 러닝은 흔히 이야기하는 tree 계열 알고리즘이나 회귀분석 같은 통계 기반의 방법론들을 생각해 주면 될 것 같다. 정형데이터 AI 모델 개발 방식 말하고자 하는 것은 흔히 딥러닝을 써서 얻을 수 있는 기대효과는 알아서 데이터에 대한 정보를 추출(feature extraction)할 수 있다는 믿음하에 딥러닝 방법론을 많이 사용하게 된다. 정형데이터 AI 모델 개발 방식 트렌드 크게 현재 데이터로 많이 사용하는 것이 tabular, image, text, g..
2023.10.04 -
TimeSeries) [MultiHead Self Attention] multi target 예측
새로운 모델 구조 만들어보기 해당 시도는 Multi Head Self Attention을 이용하면, 각 Head 마다 고유한 특징을 잡는 것을 이용하여 예측하는 코드와 분석을 통해서, gradient 실제로 다르게 가는 지를 확인하고자 함. Load Library import numpy as np import torch import matplotlib.pyplot as plt import torch.optim as optim from IPython.display import clear_output 데이터 정의 이번 블로그에서는 타깃 3개를 예측하는 것을 정의해서 예측하고자 함. # 예제 데이터 생성 t = np.linspace(0, 100, 1000) # 0에서 100까지 1000개의 점 y1 = np...
2023.09.23