データ拡張のための 10 個の Python ライブラリ

データ拡張のための 10 個の Python ライブラリ

データ拡張は、人工知能と機械学習の分野における重要な技術です。モデルのパフォーマンスと一般化を向上させるために、既存のデータセットのバリエーションを作成します。 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)

nlpaug

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

Text Augmentation and Adversarial Examples (TAAE) ライブラリは、テキスト拡張の​​ためのもう 1 つのツールです。同義語の置換や文のシャッフルなどのテクニックが含まれます。

 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 は、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)

要約する

これらのライブラリは、画像やテキストデータに対する幅広いデータ拡張技術をカバーしており、皆さんのお役に立てば幸いです。

<<:  人工知能は将来の建築をどのように変えるのでしょうか?

>>:  大規模言語モデルの効率的なパラメータ微調整 - BitFit/Prefix/Prompt 微調整シリーズ

ブログ    
ブログ    

推薦する

Huggingfaceの機械学習科学者が、ホットなラマ2を特集する分析記事を執筆

Meta は無料の商用バージョンである Llama 2 をリリースし、ネットワーク全体を席巻しました...

予知保全のための機械学習

[[197940]]要点:将来のシステム障害を監視し、事前にメンテナンスをスケジュールするための予測...

スマートホームにはスマートロボットが必要ですか?

スマートホームの人気が高まっていることは間違いありません。テクノロジーに精通した早期導入者から一般の...

OpenAI も参入したいと考えている GPU とは一体何でしょうか?

ChatGPTなどの大規模言語モデルがAI変革の新たな波を引き起こすにつれ、AIチップの不足はます...

...

Li Ziqing教授はPBODの主任コンピュータービジョン科学者を務めています。

最近、中国のビッグデータおよび人工知能製品と技術の大手プロバイダーであるPERCENTは、コンピュー...

メーター読み取りシステムにおける無線データ伝送モジュールの応用

周知のとおり、従来の手動メーター読み取り方法は時間がかかり、労働集約的であり、その正確性と適時性は保...

質問で機械学習を学ぶ: 機械学習とは何ですか?

機械学習は受け入れるのが難しいものです。事件があったらいいな、じゃあ行こうよ〜 Q: 機械学習とは何...

FenyintaのCTO、張明氏:観光産業を深く掘り下げ、AI技術を使って異言語コミュニケーションの問題を解決する

[51CTO.comからのオリジナル記事] 1930年代初頭、フランスの科学者GBアルチュニは翻訳に...

GPT-5が稼働を開始しました!ウルトラマン:月7億では足りない。マイクロソフトがもっと投資してくれることを願う

月収7億元でもGPTのトレーニングへの巨額の投資を賄うことはできません。これはOpenAIのCEO、...

主流のブロックチェーンコンセンサスアルゴリズムの包括的なガイド

あらゆる優れた暗号通貨の背後には、優れたコンセンサス アルゴリズムが存在します。完璧なコンセンサス ...

OpenAIはニューヨークタイムズの声明は一方的であると不公平だと叫び、アンドリュー・ン氏もそれを擁護した。

2023年末、ニューヨーク・タイムズはマイクロソフトとOpenAIを訴えるための強力な証拠を提示し...

美団のドローンの暴露:インターネットはインターネットに別れを告げる

美団ドローンは、ドローンそのもの以上のものを見せてくれるだけでなく、インターネットがインターネットに...

製造業におけるコンピューター ビジョン: 機会と導入のヒント

時計職人の片眼鏡から、絵を描くのに便利な「ルシーダカメラ」まで、職人たちは光学技術を使って感覚を高め...

...