하이스코어 리팩토링 프로젝트를 진행하면서 경험한 부분을 기록하기 위해서 작성했습니다. 개요 고등학생때 교내 대회 출품용으로 ‘내신계산기’라는 서비스를 개발했었습니다. 대입을 위해서 내신 점수를 계산해보고 싶은 상황이 생기면 매번 계산기를 켜고 계산하는 고등학생들의 귀찮음을 해결해주자 라는 목적으로 개발된 서비스였습니다. 교내 대회에서 최우수상을...
개요 원래는 Transformer 다음 글은 BERT에 대해 연재하려고 했는데, 친구의 요청으로 LoRA 먼저 작성하게 되었습니다. LoRA (Low-Rank Adaptation of Large Language Models)는 점점 커져가는 LLM을 효율적으로 파인튜닝하기 위한 방법입니다. 요즘 LLM은 적게는 300M(Million, 백만), 많...
개요 트랜스포머(Transformer)는 어텐션 매커니즘을 기반으로 설계된 아키텍쳐입니다. 트랜스포머 개념이 등장한 후 말 그대로 인공지능 연구의 패러다임이 바뀌었을정도로 정말 영향력이 큰 개념입니다. 현재 공개된 GPT, 제미나이, 그록 등 텍스트 생성 모델은 모두 트랜스포머 아키택쳐 기반이고, 음성인식(Whisper), 이미지 생성(Sora)...
개요 seq2seq 구조는 길이가 다른 입력과 출력을 학습시킬 수 있는 좋은 솔루션입니다. 그러나 여전히 순환신경망이 가지는 단점은 해결하지 못했죠. Attention은 seq2seq의 문제점을 보완하는 구조입니다. 현재 대부분의 생성형 모델에서 사용되는 trnasformer 구조의 기초적인 구조로, 다양한 최신 모델을 이해하기 위한 중요한 개...
개요 RNN 구조는 이전 데이터를 기억하고 학습한다는 특징이 있어서 문장, 시계열 데이터 등 다양한 데이터를 효과적으로 학습시키는게 가능해졌습니다. 그러나 RNN으로 구성된 모델은 문장을 입력받아 분류하는 Many-to-One이나 각 시점마다 출력하는 Many-to-Many 구조만 가능합니다. 이는 입력과 출력이 다른 번역, 문장 생성과 같은 문...
개요 이전 글에서 JWT에 대해 알아봤었습니다. JWT는 Stateless라는 장점이 있지만, 보안성이 취약하다는 문제가 있었습니다. 저는 제 서비스에서 해당 문제를 보완하기 위해 DPop(Demonstration of Proof-of-Possession)이라는 방법을 이용했습니다. DPop이 뭔지 자세히 알아보겠습니다. DPop? DPop...
JWT? JWT(Json Web Token)는 Json 구조로 인증/인가에 필요한 데이터를 담고 서명하는 방식으로 토큰을 만들어 인증/인가를 진행하는 인증 방식입니다. 토큰에 필요한 정보를 담고 있기 때문에 서버에서 Stateless하게 처리가 가능하다는 장점이 있습니다. 프로세스 JWT의 발급-인증 과정에 대해 살펴보겠습니다. 발급 과정...
개요 RNN과 LSTM은 요즘 핫한 문장 생성에 사용되는 transformer를 이해하는데 필요한 기초적인 신경망입니다. 문장, 음악과 같은 시퀀스 데이터 학습을 위한 신경망으로, 이전 데이터를 학습에 사용한다는 특징이 있습니다. 하나씩 자세히 알아보도록 하겠습니다. RNN(Recurrent Neural Network) 출처: https:/...
세그먼트 트리 비츠는 레이지 세그먼트 트리와 세그먼트 트리에 대한 이해가 선행되어야 합니다. 아직 세그먼트 트리와 레이지 세그먼트 트리를 잘 모르신다면 [자료구조] 세그먼트 트리(Segmenmt Tree)와 [자료구조] 레이지 세그먼트 트리(Lazy Segmenmt Tree)를 먼저 읽고 오시는걸 추천합니다. 개요 레이지 세그먼트는 바로 업데이트...
레이지 세그먼트 트리는 세그먼트 트리에 대한 이해가 선행되어야 합니다. 아직 세그먼트 트리를 잘 모르신다면 [자료구조] 세그먼트 트리(Segmenmt Tree)를 먼저 읽고 오시는걸 추천합니다. 개요 세그먼트 트리는 구간합을 구하는데 시간복잡도를 줄여주는 좋은 자료구조 입니다. 하지만 구간을 정해 값을 업데이트하는 문제와 같이 더 복잡한 연산이...
새 버전의 콘텐츠를 사용할 수 있습니다.