아카이브
close
프로필 사진

아카이브

github: @denev6

  • 모두 보기 (170)
    • 일기장 (13)
    • AI (34)
      • study (9)
    • 프로그래밍 언어 (4)
      • Python (30)
      • Go (13)
      • C++ (10)
    • 기타 주제 (31)
      • 웹 (26)
  • 소개
  • 프로젝트
  • 일기장
북극곰은 판다를 찢어

북극곰은 판다를 찢어

본 글은 Cluade 4 Sonnet으로 작성 후 수정했습니다.데이터 처리 작업에서 Pandas는 오랫동안 Python 개발자들의 필수 도구였다. 하지만 데이터 규모가 커지고 성능에 대한 요구가 높아지면서 새로운 대안이 필요해졌다. 바로 Polars다.Polars의 핵심 장점테스트에 사용한 하드웨어: Ryzen5, 32G RAM1. 성능 최적화Polars는 Rust로 구현되어 C/C++ 수준의 성능을 제공한다. 가장 큰 차이점은 멀티스레드 병렬 처리와 벡터화 연산이다.import pandas as pdimport polars as plimport time# 대용량 데이터셋 생성 (1천만 행)df_pandas = pd.DataFrame({ 'A': range(10_000_000), 'B': ra..

  • format_list_bulleted AI
  • · 2025. 9. 3.

Onnx에서 TFlite로

필자는 pytorch로 학습하는 것을 선호하고, 최근 많은 모델이 pytorch로 연구되고 있다. 하지만 경령화나 최적화를 위해서는 tensorflow나 tflite가 많이 사용된다. 이때 pytorch → onnx → tensorflow → tflite를 걸쳐 변환한다.본 글은 onnx를 tflite로 바꾸는 과정에서 했던 삽집을 기록한다.우선, onnx-tf는 사용하지 마라. Python ↔ tensorflow ↔ keras ↔ onnx 간에 버전 충돌이 있다. 삽질 결과 현재(25.07.23)는 사용이 불가능하다는 결론을 얻었다. 따라서 onnx2tf를 이용해 변환에 성공했다.Environment개발 환경과 패키지 버전은 다음과 같다.Linux (Ubuntu 24.02 LTS)Python 3.10[..

  • format_list_bulleted AI
  • · 2025. 7. 23.

RAG 성능 향상을 위한 Reranker 구현

본 글은 Claude Sonnet 4로 작성한 후 수정한 글입니다.Reranker의 이론적 원리정보 검색에서 Reranker는 전통적인 "retrieve-then-rerank" 패러다임의 핵심 구성 요소이다. 이 접근법은 두 단계로 이루어진다: 먼저 효율적인 검색 방법으로 후보 문서들을 수집하고, 그 다음 더 정교한 모델로 이들을 재정렬한다.초기 검색 단계에서는 벡터 유사도나 BM25와 같은 빠른 검색 방법을 사용하여 수천 개의 문서에서 수십 개의 후보를 선별한다. 이 과정은 높은 recall을 목표로 하며, 관련성이 있을 만한 문서들을 놓치지 않는 것에 중점을 둔다.두 번째 단계인 재정렬에서는 계산 비용이 높지만 정확도가 뛰어난 모델을 사용한다. 이 모델은 각 쿼리-문서 쌍을 정밀하게 분석하여 실제 관..

  • format_list_bulleted AI
  • · 2025. 7. 9.

Mem0로 기억하기

본 글은 Claude Sonnet 4로 작성 후, 수정한 글입니다.mem0란?mem0는 AI 애플리케이션을 위한 메모리 관리 시스템이다. 쉽게 말하면, 챗봇이 사용자와의 대화를 기억하고 맥락을 유지할 수 있게 도와주는 도구다. 사용자의 선호도, 대화 히스토리, 중요한 정보들을 자동으로 저장하고 관리한다.자동 메모리 추출: 대화에서 중요한 정보를 자동으로 식별하고 저장맥락 유지: 이전 대화 내용을 바탕으로 더 자연스러운 대화 가능개인화: 사용자별로 맞춤화된 응답 제공다양한 저장소 지원: 벡터 데이터베이스, 그래프 데이터베이스 등 다양한 백엔드 지원데이터 저장 방식mem0는 설정에 따라 다양한 방식으로 데이터를 저장할 수 있다:In-memory: 메모리에 임시 저장 (재시작 시 사라짐)파일 시스템: 로컬 파..

  • format_list_bulleted AI
  • · 2025. 7. 7.

TensorFlow와 tf.GradientTape를 활용한 딥러닝

본 글은 Claude Sonnet 4로 작성 후, 수정한 내용입니다.TensorFlow의 저수준 API인 tf.GradientTape를 활용한 딥러닝 학습 과정을 살펴보겠습니다. PyTorch에 익숙한 분들이라면 분명 Keras의 고수준 API가 답답했을 텐데, tf.GradientTape는 훨씬 직관적이고 세밀한 제어를 제공합니다.tf.GradientTape란?tf.GradientTape는 TensorFlow에서 자동미분을 위한 컨텍스트 관리자입니다. 테이프에 연산을 기록하고, 나중에 그 연산들의 gradient를 계산하는 역할을 합니다. PyTorch의 autograd와 매우 유사한 개념이죠.import tensorflow as tf# 간단한 예제with tf.GradientTape() as tape..

  • format_list_bulleted AI
  • · 2025. 7. 6.

TensorFlow 대용량 데이터 처리

100GB가 넘는 이미지 데이터를 처리해야 한다. 이 정도 데이터라면 절대 한 번에 읽고 처리할 수 없다. 따라서 데이터를 샘플 단위로 나눠서 I/O 작업 효율을 높여야 한다. Tensorflow에서 사용하는 아이디어는 다음과 같다.바이트를 순차적(sequantial)으로 접근할 수 있도록 저장한다.한 번에 읽을 수 있는 단위로 나누어 저장한다.I/O 작업을 병렬로 처리해 효율성을 높인다.데이터 저장import tensorflow as tf# 🔥이미지를 byte로 직렬화하고 수치 정보를 포함하여 하나의 Example로 만든다.def serialize_example(image, numeric_features): feature = { 'image': tf.train.Feature(byte..

  • format_list_bulleted AI
  • · 2025. 6. 28.
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • ···
  • 8
  • navigate_next
전체 카테고리
  • 모두 보기 (170)
    • 일기장 (13)
    • AI (34)
      • study (9)
    • 프로그래밍 언어 (4)
      • Python (30)
      • Go (13)
      • C++ (10)
    • 기타 주제 (31)
      • 웹 (26)
Copyright © denev6 모든 권리 보유.
SKIN: Copyright © 쭈미로운 생활 All rights reserved. Designed by JJuum.
and Current skin "dev-roo" is modified by Jin.

티스토리툴바