探索多模态数据融合的终极利器:Fusilli
项目介绍
🍝 欢迎来到 fusilli
,这是一个专为机器学习中的多模态数据融合而设计的终极库!Fusilli
让数据融合变得轻而易举,提供了一个高效的平台来结合不同类型的数据。无论你是数据科学家、研究人员还是开发者,Fusilli
都能帮助你轻松应对多模态数据融合的挑战。
项目技术分析
Fusilli
基于强大的 PyTorch Lightning 和 PyTorch Geometric 构建,确保了高性能和灵活性。它支持多种数据融合场景,包括:
- 表格数据与表格数据的融合:结合两种不同类型的表格数据。
- 表格数据与图像数据的融合:将表格数据与图像数据(2D 或 3D)结合。
此外,Fusilli
支持多种预测任务,如回归、二分类和多分类。虽然目前不支持聚类或分割任务,但其灵活的架构为未来的扩展提供了无限可能。
项目及技术应用场景
Fusilli
的应用场景广泛,尤其适用于需要结合多种数据类型进行预测的领域。例如:
- 医疗诊断:结合血液检测结果和神经影像数据,预测患者是否可能患上某种疾病。
- 金融分析:结合市场数据和社交媒体情绪分析,预测股票价格走势。
- 智能交通:结合交通流量数据和天气数据,优化交通信号灯的控制策略。
无论你的应用场景是什么,Fusilli
都能帮助你轻松实现多模态数据的融合与分析。
项目特点
- 易用性:
Fusilli
提供了简洁的 API 和详细的文档,即使是初学者也能快速上手。 - 高性能:基于 PyTorch Lightning 和 PyTorch Geometric,确保了高效的计算性能。
- 灵活性:支持多种数据融合场景和预测任务,满足不同应用需求。
- 社区支持:项目活跃,社区支持强大,欢迎开发者贡献新的融合方法或改进现有功能。
快速开始
想要体验 Fusilli
的魅力?只需几行代码即可开始:
from fusilli.data import prepare_fusion_data
from fusilli.train import train_and_save_models
from fusilli.eval import RealsVsPreds
import matplotlib.pyplot as plt
# 导入示例融合模型
from fusilli.fusionmodels.tabularfusion.example_model import ExampleModel
data_paths = {
"tabular1": "path/to/tabular_1.csv",
"tabular2": "path/to/tabular_2.csv",
"image": "path/to/image_file.pt",
}
output_paths = {
"checkpoints": "path/to/checkpoints/dir",
"losses": "path/to/losses/dir",
"figures": "path/to/figures/dir",
}
# 准备数据
data_module = prepare_fusion_data(prediction_task="regression",
fusion_model=ExampleModel,
data_paths=data_paths,
output_paths=output_paths)
# 训练模型
trained_model = train_and_save_models(data_module=data_module,
fusion_model=ExampleModel)
# 评估模型并绘制真实值与预测值的对比图
RealsVsPreds_figure = RealsVsPreds.from_final_val_data(trained_model)
plt.show()
贡献与支持
Fusilli
是一个开源项目,欢迎开发者贡献新的融合方法或改进现有功能。详细的贡献指南可以在 贡献文档 中找到。
作者与致谢
Fusilli
由 Florence J Townend、James Chapman 和 James H Cole 共同开发。Florence J Townend 得到了 UCL UKRI 博士培训中心的支持。
许可证
本项目基于 AGPLv3 许可证。详细信息请参阅 LICENSE 文件。
无论你是数据融合的新手还是专家,Fusilli
都能为你提供强大的工具和支持。立即开始你的多模态数据融合之旅吧!
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考