본문 바로가기

Python135

[Python] 음성 데이터 품질 검사(QC) 자동화 리포트 만들기 안녕하세요 오늘은Python을 이용해서 음성 데이터 QC(품질 관리, Quality Control ) 리포트를 만드는 방법을 소개하려고 합니다.음성 데이터를 TTS(Text-to-Speech)나 ASR(Automatic Speech Recognition) 같은 모델 학습에 활용하려면, 데이터 품질 관리가 필수적입니다.하지만 수천 개에 달하는 오디오 파일을 사람이 직접 일일이 들어보면서 확인한다는 건 사실상 불가능합니다. 그래서 오늘은 Python과 오디오 라이브러리(librosa, soundfile, pandas 등)를 활용해, 자동으로 품질 지표를 추출하고 CSV 리포트로 정리하는 방법을 살펴보겠습니다. 이 방법을 사용하면 대규모 데이터셋도 훨씬 효율적으로 관리할 수 있습니다.즉, 음성 데이터에서의 .. 2025. 8. 20.
[Python] Pytorch에서 벡터 합치기 (임베딩 결합 방식) 안녕하세요딥러닝에서는 여러 임베딩을 결합해서 새로운 입력으로 활용하는 경우가 많습니다.예를 들어 텍스트 임베딩 + 감정 임베딩, 사용자 임베딩 + 아이템 임베딩, 단어 임베딩 + 위치 임베딩 등이 있습니다.이번 포스팅에서는 PyTorch에서 자주 사용되는 벡터(임베딩) 합치기 방식 5가지에 대해서간단한 예제 코드와 실행 결과를 함께 살펴보겠습니다. 우선 터미널을 통해 파이토치를 설치해줍니다.> pip install torch 전체 코드입니다. """PyTorch 벡터 합치기 예제- 덧셈 (Sum)- 평균 (Mean)- Concatenation- 가중합 (Weighted Sum)- Concatenation + Linear (Projection)"""import torchimport torch.nn as n.. 2025. 8. 19.
[Python] JSONL 포맷으로 음성 데이터셋 정리하기 안녕하세요 오늘은 음성 데이터셋을 정리할 때 자주 사용하는 JSONL 포맷에 대해 이야기해보려고 합니다.AI 프로젝트를 하다 보면 오디오 파일과 그에 대응하는 전사(텍스트)를 한꺼번에 관리해야 하는데,이때 단순 CSV보다 확장성과 유연성이 좋은 형식이 바로 JSONL(JSON Lines) 입니다. 특히 최근 많이 쓰이는 허깅페이스(HuggingFace) 라이브러리에서는 JSONL을 사실상 표준처럼 지원하기 때문에,음성 데이터셋을 학습용으로 준비할 때 JSONL 포맷으로 변환해두면 바로 불러와서 사용할 수 있습니다. 오늘 글에서는JSONL이 무엇인지,왜 음성 데이터셋에서 JSONL을 쓰는지,그리고 Python 코드로 직접 변환하는 방법까지 함께 살펴보겠습니다. JSONL 이란? JSON Lines: 한 .. 2025. 8. 18.
[Python] librosa로 WAV 파일 무음 제거하기 안녕하세요 오늘은 파이썬에서 제공하는 오디오 처리 라이브러리인 librosa 를 활용해 wav 파일 앞뒤의 무음 제거를 해보도록 하겠습니다. WAV 파일이란Waveform Audio File Format 의 약자로 무손실(raw) 방식의 오디오 파일 포맷을 의미합니다. 단순한 PCM (펄스 부호 변조) 데이터로 오디오 처리에 작관적이며 원본에 가까운 소리를 보존하고 프레임 단위 접근이 가능하다는 장점이 있습니다. 단점으로는 용량이 일반적인 MP3 파일에 비해 훨씬 큽니다. WAV 파일의 사용 용도 음악 제작/편집: DAW(Logic, Cubase, Ableton 등)에서 작업 시 기본 포맷방송/미디어: 무손실 퀄리티 필요할 때AI/머신러닝:음성 인식(ASR)텍스트-음성 변환(TTS)스피커 인식/.. 2025. 8. 17.
[Python] PyTorch 활용해서 손글씨 데이터를 숫자로 분류하기 안녕하세요오늘은 PyTorch 활용해서 MNIST 손글씨 데이터를, MLP로 분류하는 간단한 예제를 해보겠습니다. 우선 터미널에서 pip install torch torchvisionpip install certificate 을 설치해줍니다. 전체 코드입니다. mnist_mlp.py"""MNIST 손글씨 숫자(0~9) 분류를 위한 '첫 PyTorch 예제'- Dataset/DataLoader 쓰는 법- nn.Module로 모델 만들기- 손실함수/옵티마이저/학습 루프/평가까지 한 번에"""from typing import Selfimport torch# macOS 의 경우 torchvision의 다운로드가 사용하는 기본 HTTPS 컨텍스트에 certifi 인증서 번들을 물려주기위해 활성화할것# import.. 2025. 8. 13.
[Python] 오디오 데이터 전처리 하기 안녕하세요 오늘은 파이썬 라이브러리를 활용하여 오디오 데이터 전처리 작업을 해보려고 합니다. 음성 AI 학습용 데이터를 만들다 보면 앞뒤 무음, 배경 잡음, 샘플레이트 불일치 같은 문제가 자주 발생합니다.특히 직접 녹음한 경우에는 버튼을 누르는 소리, 에어컨 소리, 주변 환경음이 많이 들어가는데파이썬은 이런 오디오 데이터에 대해 전처리 작업을 할 수 있는 다양한 라이브러리를 제공합니다. 오늘은 그중에서도 librosa, scipy, noisereduce, soundfile을 사용할 예정입니다. 1. preprocess_audio.pyimport argparse, csv, osfrom pathlib import Pathimport numpy as npimport soundfile as sfimport l.. 2025. 8. 12.
[Python] nn.Embedding 사용해보기 이번 포스팅에서는 PyTorch의 nn.Embedding 모듈을 사용하여 정수 인덱스를 임베딩 벡터로 변환해보도록 하겠습니다.nn.Embedding은 텍스트 처리에서 자주 사용되는 모듈입니다.앞으로 자연어처리(NLP), 감정 분석, TTS(음성 합성) 등 다양한 딥러닝 프로젝트에 활용될 수 있습니다. 우선 터미널에서 PyTorch를 다운로드 받아줍니다. > pip install torch 전체 코드입니다. embedding_example.pyimport torchimport torch.nn as nn# 임베딩 정의: 총 10개의 단어, 각 단어를 3차원 벡터로 임베딩embedding = nn.Embedding(num_embeddings=10, embedding_dim=3)# 임베딩할 입력 (정수 인덱스).. 2025. 8. 7.
[Python] 폴더 안 이미지 자동 리사이즈 하기 ( WebP 변환 후 일괄 저장) 안녕하세요.오늘은 특정 폴더 내에 있는 이미지 파일들을 원하는 사이즈로 일괄 리사이즈하고,이미지 포맷인 WebP 형식으로 자동 변환해 저장하는 방법을 소개하려고 합니다.이 작업은 블로그, 앱 썸네일, 웹 최적화 이미지 등을 준비할 때 매우 유용하게 쓰일 수 있습니다. 먼저 아래와 같은 준비물이 필요합니다. Python 3.x 이후 버전Pillow 라이브러리 (pip install pillow 로 설치 가능합니다)리사이즈하고 싶은 이미지 파일들 (예: .jpg, .png, .jfif 등) 전체 코드입니다. from PIL import Imageimport os# 현재 스크립트 실행 위치 기준 상대 경로# 원본 이미지 디렉토리 경로(inuput) 와 변환된 이미지가 저장된 디렉토리(output)경로입니다.. 2025. 7. 10.
[Python] 티스토리 웹 크롤링하기 (requests, BeautifulSoup) 안녕하세요 오늘은 티스토리 특정 블로그 게시글의 제목, 작성일자, 내용을 가져오는 웹 크롤링을 해보겠습니다. Python의 requests와 BeautifulSoup 라이브러리를 이용해, 웹 페이지의 HTML을 파싱하고 필요한 정보를 추출할 예정입니다. 크롤링 과정은 아래와 같은 순서로 이루어집니다:URL 요청 및 응답 받기HTML 파싱제목, 작성일, 본문 정보 추출결과 출력 1. 웹 페이지 요청 및 파싱 response = requests.get(url)response.raise_for_status()soup = BeautifulSoup(response.text, 'html.parser')입력된 URL에 요청을 보내고, 응답이 정상인지 확인합니다 (raise_for_status()).HTML 내용을.. 2025. 7. 10.