nbsynthetic : シンプルで堅牢な教師なし合成タブデータ生成のためのPythonライブラリ
NextBrain.aiが発表 nbsyntheticKerasに基づくGenerative Adversarial Network(GAN)アーキテクチャを使用した、シンプルで安定した無監視合成表形式データ生成の解決策を提供することを目的としたオープンソースプロジェクトです。
シンプルさと堅牢性を考慮して設計されたnbsyntheticは、Kerasで構築されたシンプルで安定した無監視GANアーキテクチャを利用しています。特定のハイパーパラメータチューニングにより、トレーニングの安定性が確保され、計算コストが最小限に抑えられます。
nbsyntheticの利点
- 事前定義されたターゲットは不要:無監視アーキテクチャとして、nbsyntheticはユーザーに事前定義されたターゲットを持つ必要を排除します。
- 小規模データセットに最適:主に連続的およびカテゴリカルな特徴の両方を含む小規模データセットを対象としています。
- CPU互換性:シンプルさのため、モデルはCPU上で実行できます。
- 便利なデータ準備:このライブラリには、迅速な入力データ準備と特徴エンジニアリングのためのモジュールが含まれています。
- 統計テストと比較:nbsyntheticは、最大平均差(MMD)統計テストを使用して、統計テストを実行し、実データと合成データを比較するためのモジュールを提供します。このテストは、再生カーネルヒルベルト空間(RKHS)にマッピングされた2つのサンプルの平均の距離を測定します。
- プロットユーティリティ:元のデータと合成データの確率分布を比較するためのプロットユーティリティが含まれています。
表形式の合成データ生成の重要性 合成データ生成は画像や音声生成のようなアプリケーションで人気を集めていますが、合成表形式データの開発はあまり野心的ではありません。しかし、表形式データは世界中で最も一般的なデータの種類であり、自動運転車、医療、金融サービスなどの産業に重要な影響を与えます。合成表形式データは、医療業界のプライバシーの懸念に対処し、合成ゲノムデータセットをシミュレートし、患者の医療記録に関わる研究プロジェクトを促進することができます。
スプレッドシートユーザーのエンパワーメント 毎日、約7億人がスプレッドシートを使って小さなサンプルの表形式データを扱っています。しかし、これらのデータセットは不完全さや統計的有意性の欠如のため、しばしば質が低いと見なされます。Machine Learning技術、特にGANsのようなものは、そのようなアプリケーションに対して貴重な洞察や意思決定能力を提供できます。残念ながら、現在のMLの進歩は主に大規模データセットに焦点を当てており、小規模データセットを扱う多くの潜在的なユーザーを除外しています。さらに、小サンプルサイズデータに適用されたMLアルゴリズムの信頼性は、現代の統計における懸念事項です。
新しい表形式のGAN
GANの制限に対処する nbsyntheticの中核技術は生成敵対ネットワーク(GAN)です。GANは、生成器と識別器という2つのニューラルネットワークから構成され、互いに競い合います。両方のモデルを同時にトレーニングすると、不安定性やモード崩壊を引き起こす可能性があります。これらの問題に対処するために、nbsyntheticは非条件GANアプローチを採用しています。この構成は、異なる特徴に対して予測を行いたいアクティブなスプレッドシートユーザーにとって非常に柔軟です。
nbsyntheticを使ってシンプルで堅牢なGANを構築する シンプルで堅牢な教師なしGANを確保するために、nbsyntheticは以下の考慮事項を組み込んでいます:
- 初期化:ランダムな重みの初期化とバッチ正規化が対称性を破り、学習を安定させるために使用されます。
- 収束:畳み込みネットワークを使用する代わりに、nbsyntheticは小サンプルサイズの表形式データに適したシンプルで密なアーキテクチャを採用しています。
- 活性化関数:生成器と識別器の逐次モデルの両方にLeakyReLUが使用されます。生成器にはtanh活性化関数が使用され、識別器にはシグモイド関数が使用されます。
- 最適化:小さな学習率と減少したモメンタム項を使用して、Adamオプティマイザーを用いた確率的勾配降下法が採用され、安定性を高めています。
- ノイズ注入:固定長のランダムベクトルを使用したノイズ注入
GitHubでライブラリを見つけることができます ここ.
ライブラリの最もわかりやすい説明も見つけることができます ここ.