2025/03 27

Conda vs venv 차이 정리

관리 툴Conda (Anaconda/Miniconda)Python 내장 도구패키지 설치 방식conda install, pip install 모두 가능pip install만 가능비-Python 패키지 관리가능 (예: conda install libpng)불가능 (Python 패키지만 설치됨)환경 생성 속도비교적 느릴 수 있음매우 빠름의존성 해결 능력매우 강력하고 충돌 방지 기능 있음pip 기반, 충돌 가능성 높음가상환경 위치 관리conda activate, 이름 기반으로 관리로컬 디렉토리에 venv/ 생성됨크로스 플랫폼Windows, macOS, Linux 모두 지원마찬가지로 모두 지원용량초기 용량 큼 (기본 패키지 포함)매우 가볍고 최소 구성복잡한 과학 패키지 설치매우 쉬움 (바이너리 기반)빌드 툴이 없..

IT 2025.03.28

Java식 협업 API 스타일이란?(FastAPI)

"Java처럼 협업 중심의 API 개발" — 즉, **타입 안전성, 명세 기반 개발, 명확한 계약(contract)**을 원하신다면 아래 포인트들을 고려해봐야 해요:🎯 목표: Java식 협업 API 스타일이란?팀원이 서로 **계약(Interface)**을 기반으로 개발 (Ex. Swagger / OpenAPI 기반)API 스펙이 자동 문서화되고, 프론트엔드/백엔드가 명확한 경계로 개발 가능입력/출력 타입이 명확해서 IDE 자동완성, 타입검사, 테스트 용이Mock 서버나 클라이언트 코드 자동 생성도 가능🔥 그럼 무엇을 써야 할까?기준추천Python 기반 + Java스러운 협업 경험✅ FastAPISpring 수준의 타입 안정성과 문서화✅ FastAPI + Pydantic + OpenAPI복잡한 API,..

AI 2025.03.28

FastAPI vs Flask

FastAPI와 Flask는 모두 Python 기반의 웹 프레임워크지만, 철학, 성능, 생산성 면에서 큰 차이점이 있어요.⚔️ FastAPI vs Flask 비교표항목FastAPIFlask🚀 속도매우 빠름 (Starlette 기반, 비동기 지원)보통 (동기 기반)🧠 타입 지원✅ 강력한 타입 힌트 (Pydantic)❌ 타입 지원 거의 없음📝 문서 자동화✅ Swagger UI, ReDoc 자동 생성❌ 수동으로 Swagger 설정 필요🧵 비동기 처리✅ async/await 완전 지원⚠️ 제한적 (기본은 동기)👨‍🔧 개발자 경험매우 뛰어남 (IDE 자동완성, 타입 검사)단순하고 익숙함🏗️ 설계 철학현대적인, 명시적, 타입기반 API최소주의, 자유로운 설계🧪 유효성 검사자동 (Pydantic 모델)..

AI 2025.03.28

SHAP이란?

SHAP은 머신러닝 모델이 왜 그런 예측을 했는지 설명해주는 도구예요.특히 XGBoost나 LightGBM 같은 블랙박스 모델의 예측 결과를 해석할 수 있게 해줘요.🧠 SHAP이란?🔍 SHAP = SHapley Additive exPlanations원래는 게임 이론의 Shapley 값에서 나온 개념이에요."각 피처가 예측값에 얼마나 기여했는가?"를 계산합니다.예:모델이 전표 A를 "반려 확률 90%"로 예측했다면:적요: +40%금액: +20%계정코드: +30%→ 이런 식으로 기여도를 보여줘요.📊 어떻게 생겼냐면?예시 그래프:예측: 반려 확률 90%-------------------------적요 +0.40계정코드 +0.30금액 +0.20거래처..

AI 2025.03.27

이진분류를 통한 반려예측모델 구축

✅ 1. 문제 정의입력(Input): 전표 데이터 (예: 적요, 금액, 계정과목, 날짜, 작성자 등)출력(Output): 반려 여부 (반려/통과 → 이진 분류)이 문제는 이진 분류(Binary Classification) 문제입니다.✅ 2. 데이터 준비🎯 타겟 변수 설정label = 1 : 반려됨 (결재반려, 재경반려)label = 0 : 정상 통과됨🧾 입력 피처 예시적요 (자연어 처리 필요)금액 (숫자형)계정코드, 거래처 (범주형)입력일자 (날짜 → 요일/월/분기 등으로 파생 가능)사용자 ID, 부서 ID (범주형)반려 사유 (학습 시 제외하고, 추후 해석에만 사용 가능)✅ 3. 전처리/특징 엔지니어링적요: TF-IDF, BERT 임베딩, 혹은 SentenceTransformer 등으로 변환범주형:..

AI 2025.03.27

XGBoost 모델에서의 피처(Feature) 관리 중요성

XGBoost 모델에서의 피처(Feature) 관리 중요성XGBoost는 머신러닝 분야에서 널리 사용되는 강력한 알고리즘 중 하나로, 높은 예측 성능과 빠른 처리 속도로 많은 주목을 받고 있습니다. 하지만 모델을 성공적으로 구축하고 활용하기 위해서는 피처(Feature) 관리가 매우 중요합니다. 특히 모델 학습 시 사용한 피처와 예측 시 사용하는 피처가 반드시 일치해야 한다는 점을 반드시 기억해야 합니다.학습 피처와 예측 피처가 동일해야 하는 이유XGBoost는 지도 학습(Supervised Learning) 기반으로 동작하며, 훈련 데이터에서 피처를 학습하여 각 피처가 예측에 얼마나 중요한지 학습합니다. 따라서 예측 단계에서도 학습 시와 동일한 피처를 동일한 순서와 구조로 입력받아야 정확한 예측을 수행..

AI 2025.03.27

Gemma2:9B을 csv데이터 10만개로 파인튜닝하려면 ?

Gemma2:9B 모델을 사용해 10만 개의 CSV 데이터를 파인튜닝하려면 몇 가지 단계를 거쳐야 합니다. 여기서 중요한 것은 모델 아키텍처, 파인튜닝 과정, 그리고 GPU 리소스를 고려하여 시간을 예측하는 부분입니다.1. 데이터 준비 및 전처리CSV 데이터를 모델에 적합한 형식으로 변환하는 것이 첫 번째 단계입니다.CSV 데이터 로딩: pandas를 사용하여 CSV 데이터를 로드하고 필요한 특성(features)만 선택합니다.텍스트 데이터 전처리: 파인튜닝하는 모델이 텍스트 데이터를 처리할 수 있도록 텍스트 정제(예: 특수문자 제거, 불용어 제거 등)를 해야 합니다.라벨링 처리: 모델이 텍스트를 예측할 수 있도록 라벨을 준비합니다.예시:python import pandas as pdfrom transf..

IT 2025.03.25

LLM (대형 언어 모델)이 CSV 전체 데이터 바탕으로 추천 시스템을 만든다면?

시간, 속도, 비용 측면에서 고려해야 할 주요 사항은 다음과 같습니다:시간 측면:모델 처리 시간: LLM은 전체 데이터를 처리하는 데 시간이 많이 걸릴 수 있습니다. 특히, 대규모 CSV 데이터를 한 번에 처리하려면 모델이 많은 양의 데이터를 다루어야 하므로 시간이 많이 소요될 수 있습니다.데이터 양: CSV의 크기에 따라 LLM이 데이터를 처리하는 시간은 선형적으로 증가할 수 있습니다. 예를 들어, 데이터가 수백 메가바이트(MB)나 기가바이트(GB)에 달하는 경우, 모델의 응답 시간이 길어질 수 있습니다.질의 처리 시간: LLM에 질의를 보내는 데 걸리는 시간은 보통 몇 초에서 수십 초 정도 소요될 수 있지만, 전체 데이터셋을 바탕으로 추천을 생성하려면 모델이 데이터를 빠르게 탐색하고 학습해야 하므로 ..

IT 2025.03.25

AI 기반 추천 시스템 아키텍쳐와 Python 코드

AI 기반 추천 시스템은 사용자의 과거 행동과 선호도를 분석하여 개인화된 추천을 제공하는 시스템입니다. 이 시스템은 크게 데이터 수집, 데이터 처리 및 전처리, 모델 훈련, 추천 예측의 단계로 나눌 수 있습니다. 이 글에서는 AI 기반 추천 시스템을 구축하기 위한 AI 아키텍쳐와 Python 코드 예시를 제공합니다.1. AI 기반 추천 시스템 아키텍쳐1.1. 데이터 수집추천 시스템의 첫 번째 단계는 데이터를 수집하는 것입니다. 사용자 행동 데이터(구매 이력, 클릭 이력, 검색 기록 등), 상품 정보, 사용자 프로필 데이터 등을 수집하여 모델 훈련에 사용할 수 있습니다. 데이터를 DB나 파일 시스템에서 읽어옵니다.1.2. 데이터 전처리수집된 데이터는 모델 학습에 적합하도록 전처리가 필요합니다. 전처리 과정..

AI 2025.03.25

AI 기반 추천 시스템 vs DB 검색을 통한 상품 추천 비교

AI를 통한 사용자의 구매 이력 및 선호도를 기반으로 하는 상품 추천 모델과 전통적인 DB 검색 방식은 상품을 추천하는 데 각기 다른 접근 방식과 장점을 가집니다. 아래는 이 두 방법을 비교한 내용입니다.1. AI 기반 추천 시스템 (구매 이력 및 선호도 기반)AI 기반 추천 시스템은 사용자의 구매 이력, 검색 패턴, 선호도 등을 학습하여, 개별 사용자의 특성에 맞춘 상품을 추천하는 시스템입니다. 일반적으로 기계학습(Machine Learning) 또는 딥러닝(Deep Learning) 기법을 사용하여, 사용자의 데이터를 바탕으로 상품을 추천합니다.장점개인화된 추천: AI 모델은 사용자의 과거 행동(구매, 클릭, 장바구니에 담은 상품 등)을 기반으로 추천합니다. 예를 들어, 특정 카테고리나 브랜드에 대한..

AI 2025.03.25