AutoGluon极速体验Kaggle多模态比赛
使用AutoGluon感受一下Kaggle多模态类型的比赛
一、环境准备
注意事项:需要使用GPU运行,使用CPU打Kaggle多模态比赛会比较困难,想体验的话,可以自行试一下LeNet或者AlexNet
1. 安装AutoGluon
%%time
!pip uninstall torch torchaudio -y >/dev/null 2>&1
!python -m pip install --upgrade pip >/dev/null 2>&1
!python -m pip install autogluon >/dev/null 2>&1 2. 导入依赖库
import os
import numpy as np
import pandas as pd
from autogluon.multimodal import MultiModalPredictor
np.random.seed(42)二、数据加载与预处理
注意事项:AutoGluon需要两列。一列是图像的存储路径,一列是标签值。
1. 读取训练数据
train_data = pd.read_csv('/kaggle/input/open-data-day-2025-dates-types-classification/train_labels.csv')
image_col = 'filename'
label_col = 'label'2. 读取测试数据
test_folder = '/kaggle/input/open-data-day-2025-dates-types-classification/test'
image_files = [f for f in os.listdir(test_folder) if f.lower().endswith(('.jpg', '.jpeg', '.png'))]
test_data = pd.DataFrame({'filename': image_files, 'label': None})
3. 扩展文件路径
def path_expander(path, base_folder):
return os.path.abspath(os.path.join(base_folder, path))
train_data['filename'] = train_data['filename'].apply(lambda x: path_expander(x, base_folder="/kaggle/input/open-data-day-2025-dates-types-classification/train"))
test_data['filename'] = test_data['filename'].apply(lambda x: path_expander(x, base_folder=test_folder))
三、训练AutoGluon模型
3.1、模型定义及训练
predictor = MultiModalPredictor(label=label_col).fit(train_data=train_data, time_limit=3600) 3.2、AutoGluon训练过程的总结信息
predictor.fit_summary()返回一个字典,其中包含训练的关键指标
{'val_accuracy': 1.0, 'training_time': 1245.3602871894836} 四、进行预测并生成提交文件
predictions = predictor.predict(test_data.drop(columns='label'))
test_data['label'] = predictions
test_data['filename'] = test_data['filename'].apply(lambda x: os.path.basename(x))
submission_df = test_data[['filename', 'label']]
os.makedirs('AutogluonFiles', exist_ok=True)
submission_df.to_csv('AutogluonFiles/submission.csv', index=False) 五、参考链接
Kaggle图像分类任务AutoGluon开源Baseline
六、总结
- 通过AutoGluon,我们可以快速构建图像分类模型。
- 训练过程自动选择最优模型,并进行超参数调优。
- 如果想提高分数,还需要进行数据增强或者更换其他模型架构
这样,你就完成了一个完整的图像分类任务!🚀 虽然分数可能不高,但AutoGluon确实能省去一些麻烦
评论
目录