라벨이 machine-learning인 게시물 표시

Unsloth 웹 기반 모델 트레이닝 프로그램 (프로젝트 설명/버그)

Unsloth은 웹 기반 로컬 모델 개발 도구다. 자세한 설명은 아래 링크를 참고. https://unsloth.ai/ 설치  최근 AI 관련 프로젝트 전용 SSD를 추가로 장착하여 C: 경로에 있던 Unsloth를 삭제하고  E: 경로에 재설치하려고 했는데 여전히 공간을 많이 차지 하고 있었다. Unsloth docs에 나와있는 Uninstall 방법은 프로그램만 삭제되고 프로그램을 통해 다운받은 모델 파일은 삭제되지 않는다.   WSL로 설치했을 경우 {home}/.cache/huggingface/에 다운로드 받은 모델들이 저장되어있다. Uninstall 할 때 참고. 버그 2025.5.2 버전으로 업데이트하고나서 한/중/일어가 <textarea>에 입력되지 않는 현상 발생. https://github.com/unslothai/unsloth/issues/5318 일본어 입력이 안 된다고 이슈가 생겼고 같은 IME이슈라 생각해서 나도 한국어 입력 테스트와 환경 정보를 제공했다. 영자와 달리 한국어/중국어/일어의 경우 여러 영자 입력 조합으로 글자가 완성된다. 이들은 영자와 달리 키 하나에 1:1 대응이 안 되므로 먼저 buffer에 저장한 뒤 조합이 완성되면 문자를 input으로 출력한다.  한/영 전환 키를 눌렀을 때부터 입력이 되지 않았다. <한영전환> KeyboardEvent isTruste:true, key:HangulMode, code:'Lang1' <영문 입력> KeyboardEvent isTrusted:true, key: 'k', code: 'KeyK' <한글 입력> TextEvent > textinput isTrusted:true, data: 'ㅎ' key: Process   12시간도 안돼서 수정되었다. https://github.com/unslothai/unsloth/pull/5327 FE > unsloth / studio / fr...

구글 Gemma Python 라이브러리 설치 시, OSError 오류 해결법

이미지
구글에서 배포한 Gemma4 경량 모델을 파인튜닝하기 위해 로컬에 환경 구축을 하다가 생긴 에러를 해결하였습니다. 배경 구글에서 배포한 gemma 라이브러리는 gemma 모델을 활용할 뿐 아니라 튜닝하고, 테스트하고, 체크포인팅하는 등 연구용으로 적합하게 사용할 수 있도록 다양한 라이브러리를 포함하고 있다. gemma가 포함하고 있는 오픈소스 라이브러리 중 orbax은 모델 체크포인팅, optax는 Gradient 작업과 관련된 연산, kauldron은 머신러닝 모델을 학습시키기 위한 라이브러리다. JAX라는 파이썬 고성능 수치계산 라이브러리를 알아둘 필요가 있다. gemma가 포함하고 있는 라이브러리들이 JAX에 기반하고 있기 때문이다. 경쟁 라이브러리에는 PyTorch, Tensorflow가 있다.    orbax는 orbax-checkpoint, orbax-export 라는 orbax 네임스페이스를 가진 다른 라이브러리로 이뤄져있다. 본론 Python 버전 3.11 이상 이어야 하기 때문에  Python 3.13의 가상환경에 설치하는데 다음과 같은 에러가 발생했다. [orbax-checkpoint]ERROR: Could not install packages due to an OSError: [Errno 2] No such file or directory: 'e:\\Users\\...\gemma\\.venv\\Lib\\site-packages\\orbax\\checkpoint\\experimental\\v1\\_src\\testing\\compatibility\\checkpoints\\v0_checkpoints\\composite_checkpoint\\checkpoint_metadata_missing\\pytree_checkpointable_has_metadata\\state\\d\\ea2cd2503f2fab2439cfe73cda290980' HINT: This error might have occurred since this sy...

ML모델 서빙 프레임워크

이미지
<ML 모델 서빙 파이프라인>은 다음 3개의 파트로 나뉜다. 1. 데이터 파이프라인 : 실시간 or 배치로 데이터를 수집 2. 모델 파이프라인 : 모델을 학습시킴 3. 서빙 파이프라인 : 학습된 모델을 서비스로 서빙. 서빙 파이프라인에서는 또 3.1 전처리 3.2 추론  3.3 후처리 을 거쳐 사용자에게 결과를 전달한다. 서빙 파이프라인을 위한 "모델 서빙 프레임워크"에 대해서 정리했다. 모델 서빙 프레임워크 선정 기준 https://tech.kakaopay.com/post/model-serving-framework/#user-content-fnref-1 Warm-up 전, 후 Latency 개선 여부 모델 저장소에 따른 업데이트 방식 Concurrent model execution               여러 개의 모델을 같이 인퍼런스               하나의 모델을 여러 인스턴스로 실행시켜 병렬적으로 인퍼런스 Dynamic Batch 성능 ( Triton )                    Triton 서버에서 동적으로 배치 크기를 만들어 인퍼런스 수행   안정성 : 장시간 인퍼런스 가동시 메모리 누수등의 이슈 * 링크의 포스팅에 따르면 모델 서빙 프레임워크 비교를 위해 모델을 Tensorflow 모델로 고정해서 테스트했다. 다른 모델을 사용한다면 결과가 달라질 수도 있다. * 모델 개발을 하는 머신러닝 리서치는 파이썬으로 모델 서빙 백엔드 개발자는 Kotlin+Spring boot로 서버를 개발했다. * 모델별 최적의 포맷이 다른 상황은 여러 개의 모델을 서빙하는 인공지능 서비스에서 개발 생산성 저하와 운영의 부담을 가중시킨다. 모델 서빙 프레임워크 FastAPI Python F...

목적변수 존재 여부에 따른 머신러닝 모델 분류

지도학습 정답 라벨이 포함된 학습 데이터로 모델을 학습시킨다. 분류, 수치 예측 작업을 수행한다. 회귀, 로지스틱 회귀 인공신경망 분석 - DNN,CNN,RNN, 의사결정나무 SVM 이진 선형 분류모델 랜덤 포레스트 감성 분석 K-NN 비지도학습 목적변수에 대한 정보 없이 학습이 수행됨. 예측보다는 현상 설명, 패턴 도출, 패턴 탐색, 클러스터링을 위해 쓰인다. Deep learning 분석에서 입력 특성의 차원을 줄이는 데에 비지도학습 분석을 사용하기도한다. 군집화/클러스터링 사전에 정의된 라벨링 없이 최적의 그룹을 찾아가는 문제. 클래스에 대한 정보없이 단순한 입력값만 제공됨. - DBSCAN : 개체들의 밀도 계산 기반 그룹핑 알고리즘 자율학습 인공신경망에 의한 클러스터링 - SOM : 그래프 기반 군집 차원축소 연관 관계분석 강화학습 Action-Reward. Find case returns biggest reward. 준지도 학습 - 레이블이 포함되어있는 훈련 데이터 + 레이블이 없는 훈련 데이터를    모두 훈련에 사용하는 학습 방법. 시계열 분석의 경우 지도학습, 비지도학습 중 어느 것이라고 특정하기 어렵다. 시계열은 데이터 형태일 뿐이고 목적에 따라 학습을 어떻게 할 것인지는 지도학습/비지도학습 중 하나를 선택하면 됨. 시계열 모델로 Prophet, ARIMA 모델에 시계열 데이터로 사용한다면 이것은 지도학습임.

이 블로그의 인기 게시물

Blogger 커스터마이징 : CSS 수정 (sticky-header)

노마드코더 개발자북클럽 Clean code 완주, 독후감

Python의 빌트인 class들의 관계