Data

ONNX, 다양한 ML 프레임워크 간 모델의 상호운용 및 배포를 도와주는 프레임워크

Data

ONNX, 다양한 ML 프레임워크 간 모델의 상호운용 및 배포를 도와주는 프레임워크

Onnx is * Open Neural Network Exchange의 약자로 Pytorchs나 Tensorflow 등 다양한 Framework를 통해 생성된 모델을 결합하여 사용할 수 있도록 일관성과 상호 운용성을 보장하는 오픈소스 프레임워크 * ONNX는 표준화된 연산자 및 데이터 타입을 활용하여 다양한 플랫폼에서 호환성을 보장함 Motivation * Interoperability: 다양한 ML 프레임워크 간 모델을 호환해서 사용할 수 있도록 지원 * Standardization: 표준화된

By Bongho, Lee
대량 데이터에 대한 유사도 측정의 대안, MinHash & LSH

Data

대량 데이터에 대한 유사도 측정의 대안, MinHash & LSH

MinHash & LSH are * MinHash는 두 집합간의 유사도를 측정하는 기술로 각 집합을 기존 데이터보다 적은 형태의 Signature로 변환하여 연산비용을 줄여준다 * LSH는 Locality Sensitivity Hashing의 약자로, 해싱(Hashing()을 이용, 높은 확률도 유사한 아이템을 같은 버킷(Bucket)에 분류하는데 이용된다. Motivation * 대량 데이터셋에서 유사도를 비교하는 것은 연산비용이 크게 들 수 있다.

By Bongho, Lee
Representation Fine Tuning

Data

Representation Fine Tuning

FineTuning 장점 * Privacy * Reliability * Cost-Efficient Performance * More Control FineTuning * Full Fine Tuning: 모든 Layer & Parameter를 업데이트 * Parameter-Efficient Finetuning (PEFT): Parameter의 일부만 업데이트 * Low Rank Adaptation (LoRA) * AdaLoRA * Adaption Prompt (LLaMA Adapter). * Alignment Raining: 사용자 선호도를 반영하기 위한 방식 * Direct Preference Optimization * Representation Finetuning * Parameter(Weight) 업데이트 대신 모델 내

By Bongho, Lee
어떤 데이터를 어떻게 볼지는 엔지니어링 이전에 결정되어야 한다.

Data

어떤 데이터를 어떻게 볼지는 엔지니어링 이전에 결정되어야 한다.

데이터가 없는 회사는 없다. 활용하지 않을 뿐이다. 모든 회사는 데이터를 가지고 있다. 그리고 그러한 데이터가 보다 전사에 체계적으로 흐를 필요가 있다고 느낄 시점이 될 때 대부분 회사는 데이터 조직을 꾸리기 위해서 시장에 뛰어든다. 그리고 그 시작점으로 데이터 엔지니어 채용부터 시작하는 경우들이 있다. 하지만 실상은 그렇지 않다. 오히려 문제를 복잡하게 만들

By Bongho, Lee
AB테스트 시 비회원의 그룹할당을 고민해야 하는 이유

Data

AB테스트 시 비회원의 그룹할당을 고민해야 하는 이유

A/B테스트 시, 비회원은 어떻게 그룹할당할지 고민하지 않으면, 특정 그룹으로 쏠리거나, 아예 반영되지 않는 상황을 야기할 수 있다. 통상 비회원은 회원번호를 공통으로 처리하고 있기 때문이다. 예를 들어 "000000000000"으로 한다. 회원번호를 문자로 하기보다는 Sequence 형태로 Integer Type으로 하는 경우가 많기 때문에 비회원도 수치로 표현하는 경우가 많다. 이렇게 수치로

By Bongho, Lee
Multi Task 기반 확률 모델링으로 배달시간플랫폼을 구축한 DoorDash

Data

Multi Task 기반 확률 모델링으로 배달시간플랫폼을 구축한 DoorDash

Overview Multi Task Model * Multi Task(MT) Model 사용시 장점 * 신규 서비스 배달시간 예측시, Foundation Layer에 추가적으로 레이어릅 붙이는 식으로 대응이 가능 * 플랫폼 내부에서 고객의 여정에 따라 여러번 배달시간을 업데이트해줘야 하는데, 이 부분에 대해서 빠르게 대응 가능, 기존에 별도 모델 사용할 경우,모델간 시간예측 결과 일관성을 보장하기 어려웠음 * 최대한 많은

By Bongho, Lee
Gibbs Sampling과 MH Sampling 공통점과 차이점 정리

Data

Gibbs Sampling과 MH Sampling 공통점과 차이점 정리

공통점 * MCMC 알고리즘: 두 알고리즘 모두 마르코프 체인을 사용하여 확률 분포에서 샘플링합니다. 마르코프 체인은 과거 상태만 고려하여 다음 상태를 결정하는 확률적 모델입니다. * 베이즈 추론: 두 알고리즘 모두 베이즈 추론에서 사후 분포를 추정하는 데 사용됩니다. 베이즈 추론은 사전 정보와 관측 데이터를 결합하여 사후 분포를 계산하는 방법입니다. 차이점 * 제안 분포: 깁스 샘플링은

By Bongho, Lee
Python Decorator @Propery를 이용, Overwrite를 방지할 수 있다.

Data

Python Decorator @Propery를 이용, Overwrite를 방지할 수 있다.

Property Decorator를 이용,  직접 할당을 제한하여 클래스 Attribute를  덮어쓰지 않도록 보호할 수 있다. 이는 실수로 모델이나 데이터를 Overwrite할 수 있는 가능성을 원천차단할 수 있다. class SimpleMLModel: def __init__(self): self._trained = False self._model_parameters = None @property def trained(self): """check if the model has been trained.

By Bongho, Lee
Lazy Evaluation, 메모리 사용 및 계산을 최적화하기 위한 기법

Data

Lazy Evaluation, 메모리 사용 및 계산을 최적화하기 위한 기법

Lazy Evaluation * Lazy evaluation은 프로그램 실행 중에 표현식의 평가를 그 값이 실제로 필요할 때까지 미루는 기법 * 프로그램에서 표현식의 결과가 필요하지 않다면, 해당 표현식의 계산을 미룹니다. 예를 들어, 조건문에서 특정 조건이 거짓으로 평가되어 다른 분기의 결과가 필요하지 않는 경우, 결과가 필요하지 않기 때문에 그 분기의 계산은 수행하지 않음 * 주로 함수형 언어에서

By Bongho, Lee
📦 AI Model에서 AI System으로의 진화

Data

📦 AI Model에서 AI System으로의 진화

1.Compound AI System is LLM의 대중화와 함께, AI Model은 Application의 주요 요소로써 빠르게 관심을 이끌고 있다. Compound AI System은 Traditional Software와 AI Model의 결합으로써 Google의 AlphaCode 2,  AlphaGeometry 등 빅테크의 LLM 모델은 Compound AI System의 효과성을 잘 보여주고 있으며, 모델과 엔지니어링의 조합을 통해서 보다 나은 성과를 만들 수도 있음을

By Bongho, Lee
Quantile Loss는 Quantile Regression시 사용하는 Loss Function이다.

Data

Quantile Loss는 Quantile Regression시 사용하는 Loss Function이다.

* Quantile Loss는 Quantile Regression처럼 Predicted Value의 Quantile을 구하고자 할 때 사용되는 Loss Function이다. * 변수의 75번째 Quantile을 예측하는 것이 목표인 문제를 예로 든다면, 이는  75%의 경우 예측 오차가 음수여야 하고 나머지 25%는 양수여야 한다는 말과 동일하다. * 기본적으로 이러한 경우 Quantile Loss 는 과소 추정된 예측에 대해 과대 추정된 것보다

By Bongho, Lee

Data

Bayesian Modeling이 사회과학연구에 활용하면 좋은 6가지 이유

Coherence * 주관적 확률이 확률 계산의 일반적인 규칙/공리(이러한 규칙의 타당성은 방금 언급한 자기 일관성에 해당함)를 따르고 따라서 이러한 확률로부터 일관된 결정을 얻을 수 있다는 가정 Conditioning on Observed Data * 베이지안 통계학과 빈도주의 통계학 사이의 중요한 차이점은 관측 데이터가 매개변수 추정에서 수행하는 역할에 관한 것 * 구체적으로, 빈도주의 추론은 정확히

By Bongho, Lee

Data

Attention은 가중평균을 통해서 문맥정보를 제공하는 방식이다.

이 글의 시작은 DeeprETA라는 논문에서부터였다. DeeprETA는 Uber에서 사용하는 시간예측 알고리즘으로, Post Processing에 최적화된 모델이다. 즉 Uber의 경우 배차를 하고 Routing을 하는 시점에서 기본적인 예상시간을 계산한다. 이후에 실제 상황을 감안해서 보정을 하는 과정을 거치는데 이 아키텍처 상에서 저자는 Feature간의 Interaction을 반영하기 위해 Linear Self Attention을 활용한다. 이 시점에서 나는 Linear Attention을

By Bongho, Lee