KneeSplatNet Res-B
3D-ветка для МРТ колена
KneeSplatNet — исследовательская архитектура для выявления 12 патологий колена по МРТ. Это residual-вариант Res-B: 8 фолд-моделей, веса и код инференса. В финал Kaggle RSNA 2026 не вошла: по macro AUC она сравнялась с 2.5D-двойником и не прошла заранее заданный порог.
➕ Ключевые особенности
- 1⃣ 2.5D ConvNeXt-Tiny дополнен явной 3D-сеткой: признаки срезов раскладываются в канонический объём колена по геометрии DICOM.
- 2⃣ Вход — 6 серий DICOM, 24 триплета срезов по 384 px; модель предсказывает вероятности для ACL, MCL, менисков, OA, выпота, синовита, кисты Бейкера, контузии и перелома.
- 3⃣ 29,81 млн параметров на модель: 28,25 млн в 2.5D-базе и 1,56 млн в модулях KneeSplatNet.
- 4⃣ 8 чекпоинтов по фолдам, общий вес около 0,96 ГБ; есть пример инференса на CPU и на competition-style данных.
- 5⃣ Только research use: не для клинической диагностики, метки получены языковыми моделями, а не рентгенологами.
▶ Пример
import torch, kneesplat_patch
from model import KneeNet
Net = kneesplat_patch.make_ks_class(KneeNet)
ck = torch.load("model/w_ksresb8_f0.pt", map_location="cpu", weights_only=True)
net = Net(ck["backbone"], ck["n_targets"], ck["n_slots"], pretrained=False,
img_size=ck["size"], k=ck["k"], slice_pos=ck["slice_pos"],
target_query=ck["target_query"], in_chans=3, pool=ck["pool"], spatial=ck["spatial"])
Подробнее
На folds 0–2 (795 исследований) macro AUC: 0,9408 у Res-B против 0,9381 у 2.5D-двойника; с отключённой 3D-веткой — 0,9391.Порог включения не пройден: нужно было ≥ +0,0010 macro и ≥ +0,0020 на пяти слабых находках; в ансамбле прирост составил −0,0001.
Нужны корректные DICOM-теги позиции/ориентации и сагиттальная + коронарная FS-серии; ошибки landmark смещают все признаки в 3D-сетке.
Лицензия CC BY-NC 4.0; данные RSNA MIRA не входят в репозиторий.








Комментарии