{"cells":[{"cell_type":"markdown","metadata":{},"source":"# RSNA Knee Abnormality Detection: per label prior\n\nThis deterministic baseline uses a separate Beta smoothing strength for each target. The strengths were selected with leave one study out validation on complete expert labels."},{"cell_type":"code","execution_count":null,"metadata":{},"outputs":[],"source":"from pathlib import Path\nimport pandas as pd\nlabels = ['ACL', 'MCL', 'Medial Meniscus', 'Lateral Meniscus', 'Medial OA', 'Lateral OA', 'PF OA', 'Effusion', 'Synovitis', \"Baker's\", 'Contusion', 'Fracture']\nalphas = [16, 2, 16, 16, 2, 2, 8, 16, 16, 2, 4, 4]\nroot = next(p for p in Path('/kaggle/input').glob('**/train.csv') if (p.parent / 'test.csv').exists())\ntrain = pd.read_csv(root)\nsubmission = pd.read_csv(root.parent / 'sample_submission.csv')\ngold = train.dropna(subset=labels)[labels].astype(float)\nfor label, alpha in zip(labels, alphas):\n    submission[label] = (gold[label].sum() + alpha) / (len(gold) + 2 * alpha)\nsubmission.to_csv('/kaggle/working/submission.csv', index=False)\nprint(f'gold studies: {len(gold)}')\ndisplay(submission.head())"}],"metadata":{"kernelspec":{"display_name":"Python 3","language":"python","name":"python3"},"language_info":{"name":"python","version":"3.10"}},"nbformat":4,"nbformat_minor":5}