日本語ユーモア認識のためのマルチモーダル機械学習パイプライン
Japanese CLIPとXGBoostを使用した日本語ユーモア評価システム。画像とテキストの埋め込みを生成し、ユーモアスコアを予測します。
src/
├── dataloader/ # データセット読み込み
├── embedding/ # 埋め込み処理
├── preprocessing/ # データ前処理・コサイン類似度計算
├── model/ # 機械学習モデル
│ └── xgboost/ # XGBoost回帰・分類モデル
└── run/ # メインパイプライン
└── concat_embedding_with_tree/ # 埋め込み+XGBoostパイプライン
├── regression.py # 基本回帰タスク
├── classification.py # 基本分類タスク
├── regression_with_cos_sim.py # 回帰(コサイン類似度付き)
├── classification_with_cos_sim.py # 分類(コサイン類似度付き)
├── regression_only_cos_sim.py # 回帰(類似度のみ)
└── classification_only_cos_sim.py # 分類(類似度のみ)
# イメージビルド
docker-compose build
# 基本パイプライン
docker-compose run --rm pattern-recognition python src/run/concat_embedding_with_tree/regression.py
docker-compose run --rm pattern-recognition python src/run/concat_embedding_with_tree/classification.py
# コサイン類似度特徴量付きパイプライン
docker-compose run --rm pattern-recognition python src/run/concat_embedding_with_tree/regression_with_cos_sim.py
docker-compose run --rm pattern-recognition python src/run/concat_embedding_with_tree/classification_with_cos_sim.py
# コサイン類似度のみパイプライン(軽量)
docker-compose run --rm pattern-recognition python src/run/concat_embedding_with_tree/regression_only_cos_sim.py
docker-compose run --rm pattern-recognition python src/run/concat_embedding_with_tree/classification_only_cos_sim.py
各パイプラインファイルのグローバル定数:
DATA_DIR_PATH = "data/concat_embedding_with_tree" # 出力ディレクトリ(共有)
EMBEDDING_BATCH_SIZE = 128 # 埋め込みバッチサイズ
PCA_COMPONENTS = 128 # PCA次元数
OPTIMIZE_HYPERPARAMS = True # ハイパーパラメータ最適化
回帰: ユーモアスコア回帰(0-4の連続値) → RMSE, R²評価 分類: スコア四捨五入→0-4クラス分類(5値) → Accuracy, F1評価
data/concat_embedding_with_tree/に保存:
train.csv, validation.csv, test.csv: 埋め込みデータ(共有)regression_result/: 基本回帰結果classification_result/: 基本分類結果regression_with_cos_sim_result/: コサイン類似度付き回帰結果classification_with_cos_sim_result/: コサイン類似度付き分類結果regression_only_cos_sim_result/: 類似度のみ回帰結果classification_only_cos_sim_result/: 類似度のみ分類結果回帰:
xgboost_humor_regressor*.pkl: 訓練済みモデルevaluation_results.csv: RMSE, R²などpredictions.png: 予測vs実測プロットfeature_importance.png: 特徴量重要度(類似度版のみ)分類:
xgboost_humor_classifier*.pkl: 訓練済みモデルevaluation_results.csv: Accuracy, F1などconfusion_matrix.png: 混同行列feature_importance.png: 特徴量重要度(類似度版のみ)日本語ユーモア認識のためのマルチモーダル機械学習パイプライン
Japanese CLIPとXGBoostを使用した日本語ユーモア評価システム。画像とテキストの埋め込みを生成し、ユーモアスコアを予測します。
src/
├── dataloader/ # データセット読み込み
├── embedding/ # 埋め込み処理
├── preprocessing/ # データ前処理・コサイン類似度計算
├── model/ # 機械学習モデル
│ └── xgboost/ # XGBoost回帰・分類モデル
└── run/ # メインパイプライン
└── concat_embedding_with_tree/ # 埋め込み+XGBoostパイプライン
├── regression.py # 基本回帰タスク
├── classification.py # 基本分類タスク
├── regression_with_cos_sim.py # 回帰(コサイン類似度付き)
├── classification_with_cos_sim.py # 分類(コサイン類似度付き)
├── regression_only_cos_sim.py # 回帰(類似度のみ)
└── classification_only_cos_sim.py # 分類(類似度のみ)
# イメージビルド
docker-compose build
# 基本パイプライン
docker-compose run --rm pattern-recognition python src/run/concat_embedding_with_tree/regression.py
docker-compose run --rm pattern-recognition python src/run/concat_embedding_with_tree/classification.py
# コサイン類似度特徴量付きパイプライン
docker-compose run --rm pattern-recognition python src/run/concat_embedding_with_tree/regression_with_cos_sim.py
docker-compose run --rm pattern-recognition python src/run/concat_embedding_with_tree/classification_with_cos_sim.py
# コサイン類似度のみパイプライン(軽量)
docker-compose run --rm pattern-recognition python src/run/concat_embedding_with_tree/regression_only_cos_sim.py
docker-compose run --rm pattern-recognition python src/run/concat_embedding_with_tree/classification_only_cos_sim.py
各パイプラインファイルのグローバル定数:
DATA_DIR_PATH = "data/concat_embedding_with_tree" # 出力ディレクトリ(共有)
EMBEDDING_BATCH_SIZE = 128 # 埋め込みバッチサイズ
PCA_COMPONENTS = 128 # PCA次元数
OPTIMIZE_HYPERPARAMS = True # ハイパーパラメータ最適化
回帰: ユーモアスコア回帰(0-4の連続値) → RMSE, R²評価 分類: スコア四捨五入→0-4クラス分類(5値) → Accuracy, F1評価
data/concat_embedding_with_tree/に保存:
train.csv, validation.csv, test.csv: 埋め込みデータ(共有)regression_result/: 基本回帰結果classification_result/: 基本分類結果regression_with_cos_sim_result/: コサイン類似度付き回帰結果classification_with_cos_sim_result/: コサイン類似度付き分類結果regression_only_cos_sim_result/: 類似度のみ回帰結果classification_only_cos_sim_result/: 類似度のみ分類結果回帰:
xgboost_humor_regressor*.pkl: 訓練済みモデルevaluation_results.csv: RMSE, R²などpredictions.png: 予測vs実測プロットfeature_importance.png: 特徴量重要度(類似度版のみ)分類:
xgboost_humor_classifier*.pkl: 訓練済みモデルevaluation_results.csv: Accuracy, F1などconfusion_matrix.png: 混同行列feature_importance.png: 特徴量重要度(類似度版のみ)