{
  "id": 589191,
  "title": "Debugging \"Submission Format Error\"",
  "url": "/competitions/cmi-detect-behavior-with-sensor-data/discussion/589191",
  "author_name": "yapan",
  "post_date": "2025-07-10T20:28:30.735000",
  "votes": 0,
  "comment_count": 0,
  "views": 0,
  "content": "<p>I am running int \"Submission Format Error\". Any thoughts / tips on how I can debug this.</p>\n<p>Every thing seems to look ok when I run the notebook with the test data - no errors, the submission.parquet file looks reasonable. Partial code - </p>\n<pre><code> numpy  np, polars  pl, pathlib, torch\n\nROOT = pathlib.Path()\nRAW_COLS     = json.load((ROOT / RAW_COLS_FILE))\nscaler_np    = np.load()\nscaler_mean, scaler_std = scaler_np[], scaler_np[]\n\n\n () -&gt; torch.Tensor:\n    ts  = build_raw_tensor(sequence_pl, RAW_COLS)          \n    vec = stats64_from_tensor(ts)                          \n    vec = (vec - scaler_mean) / scaler_std\n     torch.tensor(vec, dtype=torch.float32, device=DEVICE).unsqueeze()\n\n () -&gt; torch.Tensor:\n    ts = build_raw_tensor(sequence_pl, RAW_COLS)           \n     torch.from_numpy(ts).unsqueeze().to(DEVICE)    \n\n\n ():\n    xb_ts  = build_ts(sequence)\n    xb_vec = build_vec(sequence)\n    logits = model(xb_ts.(), xb_vec)\n    idx    = (torch.argmax(logits, ))\n     collapse_for_submission((OFFICIAL_8 + [FALLBACK])[idx])\n MODE==:\n     kaggle_evaluation.cmi_inference_server  cmis\n    \n    model = HybridNet(\n        imu_dim   = ,\n        n_classes = (ALL_LBLS),       \n        in_ch_raw = (RAW_COLS)        \n        ).to(DEVICE)\n    model.load_state_dict(torch.load())\n    model.()\n\n    server = cmis.CMIInferenceServer(predict)\n     os.getenv():\n        server.serve()\n    :\n        server.run_local_gateway(\n            data_paths=(\n                ,\n                ,\n            )\n    )\n\n    ()\n</code></pre>",
  "messages": [
    {
      "id": 3246382,
      "postDate": "2025-07-10T20:28:30.737Z",
      "content": "<p>I am running int \"Submission Format Error\". Any thoughts / tips on how I can debug this.</p>\n<p>Every thing seems to look ok when I run the notebook with the test data - no errors, the submission.parquet file looks reasonable. Partial code - </p>\n<pre><code> numpy  np, polars  pl, pathlib, torch\n\nROOT = pathlib.Path()\nRAW_COLS     = json.load((ROOT / RAW_COLS_FILE))\nscaler_np    = np.load()\nscaler_mean, scaler_std = scaler_np[], scaler_np[]\n\n\n () -&gt; torch.Tensor:\n    ts  = build_raw_tensor(sequence_pl, RAW_COLS)          \n    vec = stats64_from_tensor(ts)                          \n    vec = (vec - scaler_mean) / scaler_std\n     torch.tensor(vec, dtype=torch.float32, device=DEVICE).unsqueeze()\n\n () -&gt; torch.Tensor:\n    ts = build_raw_tensor(sequence_pl, RAW_COLS)           \n     torch.from_numpy(ts).unsqueeze().to(DEVICE)    \n\n\n ():\n    xb_ts  = build_ts(sequence)\n    xb_vec = build_vec(sequence)\n    logits = model(xb_ts.(), xb_vec)\n    idx    = (torch.argmax(logits, ))\n     collapse_for_submission((OFFICIAL_8 + [FALLBACK])[idx])\n MODE==:\n     kaggle_evaluation.cmi_inference_server  cmis\n    \n    model = HybridNet(\n        imu_dim   = ,\n        n_classes = (ALL_LBLS),       \n        in_ch_raw = (RAW_COLS)        \n        ).to(DEVICE)\n    model.load_state_dict(torch.load())\n    model.()\n\n    server = cmis.CMIInferenceServer(predict)\n     os.getenv():\n        server.serve()\n    :\n        server.run_local_gateway(\n            data_paths=(\n                ,\n                ,\n            )\n    )\n\n    ()\n</code></pre>",
      "rawMarkdown": "I am running int \"Submission Format Error\". Any thoughts / tips on how I can debug this.\n\nEvery thing seems to look ok when I run the notebook with the test data - no errors, the submission.parquet file looks reasonable. Partial code - \n\n```\nimport numpy as np, polars as pl, pathlib, torch\n\nROOT = pathlib.Path(\"/kaggle/input/cmi-metadata\")\nRAW_COLS     = json.load(open(ROOT / RAW_COLS_FILE))\nscaler_np    = np.load(\"/kaggle/input/ae-scaler/ae_scaler.npz\")\nscaler_mean, scaler_std = scaler_np[\"mean\"], scaler_np[\"std\"]\n\n\ndef build_vec(sequence_pl: pl.DataFrame) -> torch.Tensor:\n    ts  = build_raw_tensor(sequence_pl, RAW_COLS)          # (C,T)\n    vec = stats64_from_tensor(ts)                          # (64,)\n    vec = (vec - scaler_mean) / scaler_std\n    return torch.tensor(vec, dtype=torch.float32, device=DEVICE).unsqueeze(0)\n\ndef build_ts(sequence_pl: pl.DataFrame) -> torch.Tensor:\n    ts = build_raw_tensor(sequence_pl, RAW_COLS)           # (C,T)\n    return torch.from_numpy(ts).unsqueeze(0).to(DEVICE)    # (1,C,T)\n\n@torch.no_grad()\ndef predict(sequence: pl.DataFrame, demographics: pl.DataFrame):\n    xb_ts  = build_ts(sequence)\n    xb_vec = build_vec(sequence)\n    logits = model(xb_ts.float(), xb_vec)\n    idx    = int(torch.argmax(logits, 1))\n    return collapse_for_submission((OFFICIAL_8 + [FALLBACK])[idx])\nif MODE=='score':\n    import kaggle_evaluation.cmi_inference_server as cmis\n    # load artifacts produced in train mode (attach as dataset)\n    model = HybridNet(\n        imu_dim   = 64,\n        n_classes = len(ALL_LBLS),       # 9\n        in_ch_raw = len(RAW_COLS)        # e.g. 64 or 12\n        ).to(DEVICE)\n    model.load_state_dict(torch.load('/kaggle/input/cmi_hybrid_tscnn/pytorch/default/1/cmi_hybrid_tscnn_v2.pt'))\n    model.eval()\n    \n    server = cmis.CMIInferenceServer(predict)\n    if os.getenv('KAGGLE_IS_COMPETITION_RERUN'):\n        server.serve()\n    else:\n        server.run_local_gateway(\n            data_paths=(\n                \"/kaggle/input/cmi-detect-behavior-with-sensor-data/test.csv\",\n                \"/kaggle/input/cmi-detect-behavior-with-sensor-data/test_demographics.csv\",\n            )\n    )\n\n    print(\"Finished score\")\n```"
    }
  ],
  "comments": [],
  "raw_markdown_by_id": {
    "3246382": "I am running int \"Submission Format Error\". Any thoughts / tips on how I can debug this.\n\nEvery thing seems to look ok when I run the notebook with the test data - no errors, the submission.parquet file looks reasonable. Partial code - \n\n```\nimport numpy as np, polars as pl, pathlib, torch\n\nROOT = pathlib.Path(\"/kaggle/input/cmi-metadata\")\nRAW_COLS     = json.load(open(ROOT / RAW_COLS_FILE))\nscaler_np    = np.load(\"/kaggle/input/ae-scaler/ae_scaler.npz\")\nscaler_mean, scaler_std = scaler_np[\"mean\"], scaler_np[\"std\"]\n\n\ndef build_vec(sequence_pl: pl.DataFrame) -> torch.Tensor:\n    ts  = build_raw_tensor(sequence_pl, RAW_COLS)          # (C,T)\n    vec = stats64_from_tensor(ts)                          # (64,)\n    vec = (vec - scaler_mean) / scaler_std\n    return torch.tensor(vec, dtype=torch.float32, device=DEVICE).unsqueeze(0)\n\ndef build_ts(sequence_pl: pl.DataFrame) -> torch.Tensor:\n    ts = build_raw_tensor(sequence_pl, RAW_COLS)           # (C,T)\n    return torch.from_numpy(ts).unsqueeze(0).to(DEVICE)    # (1,C,T)\n\n@torch.no_grad()\ndef predict(sequence: pl.DataFrame, demographics: pl.DataFrame):\n    xb_ts  = build_ts(sequence)\n    xb_vec = build_vec(sequence)\n    logits = model(xb_ts.float(), xb_vec)\n    idx    = int(torch.argmax(logits, 1))\n    return collapse_for_submission((OFFICIAL_8 + [FALLBACK])[idx])\nif MODE=='score':\n    import kaggle_evaluation.cmi_inference_server as cmis\n    # load artifacts produced in train mode (attach as dataset)\n    model = HybridNet(\n        imu_dim   = 64,\n        n_classes = len(ALL_LBLS),       # 9\n        in_ch_raw = len(RAW_COLS)        # e.g. 64 or 12\n        ).to(DEVICE)\n    model.load_state_dict(torch.load('/kaggle/input/cmi_hybrid_tscnn/pytorch/default/1/cmi_hybrid_tscnn_v2.pt'))\n    model.eval()\n    \n    server = cmis.CMIInferenceServer(predict)\n    if os.getenv('KAGGLE_IS_COMPETITION_RERUN'):\n        server.serve()\n    else:\n        server.run_local_gateway(\n            data_paths=(\n                \"/kaggle/input/cmi-detect-behavior-with-sensor-data/test.csv\",\n                \"/kaggle/input/cmi-detect-behavior-with-sensor-data/test_demographics.csv\",\n            )\n    )\n\n    print(\"Finished score\")\n```"
  }
}