데이터 증강은 인공지능과 머신러닝 분야의 핵심 기술입니다. 여기에는 모델 성능과 일반화를 개선하기 위해 기존 데이터세트에 대한 변형을 만드는 작업이 포함됩니다. Python은 여러 가지 강력한 데이터 증대 라이브러리를 제공하는 인기 있는 AI 및 ML 언어입니다. 이 기사에서는 데이터 증대를 위한 10개의 Python 라이브러리를 소개하고 각 라이브러리에 대한 코드 조각과 설명을 제공합니다.
Augmentor는 이미지 향상을 위한 범용 Python 라이브러리입니다. 회전, 뒤집기, 색상 조작 등 다양한 작업을 이미지에 쉽게 적용할 수 있습니다. 다음은 이미지 향상을 위해 Augmentor를 사용하는 방법에 대한 간단한 예입니다.
import Augmentor p = Augmentor.Pipeline("path/to/your/images") p.rotate(probability=0.7, max_left_rotatinotallow=25, max_right_rotatinotallow=25) p.flip_left_right(probability=0.5) p.sample(100)
Albumentations Master는 무작위 회전, 뒤집기, 밝기 조정과 같은 다양한 향상 기능을 지원합니다. 그는 제가 가장 일반적으로 사용하는 향상 라이브러리 중 하나입니다
import albumentations as A transform = A.Compose([A.RandomRotate90(),A.HorizontalFlip(),A.RandomBrightnessContrast(), ]) augmented_image = transform(image=image)["image"]
Imgaug는 이미지와 비디오를 향상시키는 데 사용되는 라이브러리입니다. 기하학적 변환 및 색 공간 수정을 포함하여 광범위한 향상된 기능을 제공합니다. 다음은 Imgaug를 사용한 예입니다.
import imgaug.augmenters as iaa augmenter = iaa.Sequential([iaa.Fliplr(0.5),iaa.Sometimes(0.5, iaa.GaussianBlur(sigma=(0, 2.0))),iaa.ContrastNormalization((0.5, 2.0)), ]) augmented_image = augmenter.augment_image(image)
nlpaaug는 텍스트 데이터 증대를 위해 특별히 설계된 라이브러리입니다. 동의어 대체, 문자 수준 대체 등 텍스트 변형을 생성하기 위한 다양한 기술을 제공합니다.
import nlpaug.augmenter.word as naw aug = naw.ContextualWordEmbsAug(model_path='bert-base-uncased', actinotallow="insert") augmented_text = aug.augment("This is a sample text.")
imgauge는 이미지 향상에 초점을 맞춘 경량 라이브러리입니다. 사용하기 쉽고 회전, 뒤집기, 색상 조정과 같은 작업을 제공합니다.
from imgaug import augmenters as iaa seq = iaa.Sequential([iaa.Fliplr(0.5),iaa.Sometimes(0.5, iaa.GaussianBlur(sigma=(0, 2.0))),iaa.ContrastNormalization((0.5, 2.0)), ]) augmented_image = seq(image=image)
TextAttack은 자연어 처리(NLP) 모델을 강화하고 공격하기 위한 Python 라이브러리입니다. NLP 작업에 대한 적대적인 예를 생성하기 위한 다양한 변환을 제공합니다. 사용 방법은 다음과 같습니다.
from textattack.augmentation import WordNetAugmenter augmenter = WordNetAugmenter() augmented_text = augmenter.augment("The quick brown fox")
텍스트 증강 및 적대적 예(TAAE) 라이브러리는 텍스트 향상을 위한 또 다른 도구입니다. 여기에는 동의어 대체 및 문장 섞기와 같은 기술이 포함됩니다.
from taae import SynonymAugmenter augmenter = SynonymAugmenter() augmented_text = augmenter.augment("This is a test sentence.")
Audiomentations는 오디오 데이터 향상에 중점을 둡니다. 사운드 처리와 관련된 작업에 필수적인 라이브러리입니다.
import audiomentations as A augmenter = A.Compose([A.PitchShift(),A.TimeStretch(),A.AddBackgroundNoise(), ]) augmented_audio = augmenter(samples=audio_data, sample_rate=sample_rate)
ImageDataAugmentor는 이미지 데이터 증대를 위해 설계되었으며 인기 있는 딥 러닝 프레임워크와 잘 작동합니다. TensorFlow와 함께 사용하는 방법은 다음과 같습니다.
from ImageDataAugmentor.image_data_augmentor import * import tensorflow as tf datagen = ImageDataAugmentor(augment=augmentor,preprocess_input=None, ) train_generator = datagen.flow_from_directory("data/train", batch_size=32, class_mode="binary")
Keras는 Keras와 TensorFlow를 사용할 때 이미지 향상을 위한 내장 솔루션인 ImageDataGenerator 클래스를 제공합니다.
from tensorflow.keras.preprocessing.image import ImageDataGenerator datagen = ImageDataGenerator(rotation_range=40,width_shift_range=0.2,height_shift_range=0.2,shear_range=0.2,zoom_range=0.2,horizontal_flip=True,fill_mode="nearest", ) augmented_images = datagen.flow_from_directory("data/train", batch_size=32)
이 라이브러리는 이미지 및 텍스트 데이터에 대한 광범위한 데이터 증대 기술을 다루고 있으므로 도움이 되길 바랍니다.
위 내용은 데이터 증대를 위한 10개의 Python 라이브러리의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!