{
  "id": 509034,
  "title": "Incorrect metric weights?",
  "url": "/competitions/rsna-2024-lumbar-spine-degenerative-classification/discussion/509034",
  "author_name": "",
  "post_date": "2024-05-31T23:26:58.646746700Z",
  "votes": 8,
  "comment_count": 14,
  "views": 0,
  "content": "<p>Thank you to the hosts and Kaggle for this interesting competition. I have a question about the condition weights for the metric.</p>\n<pre><code>condition_losses = \ncondition_weights = \n\n condition  :\n  condition_indices = solution == condition]\n  condition_loss = sklearn(\n      y_true=solution,\n      y_pred=submission,\n      sample_weight=solution\n  )\n  condition_losses(condition_loss)\n  condition_weights( / solution())\n</code></pre>\n<p>When I run this code block, I get <code>condition_weights = [0.2, 0.1, 0.1]</code>, then appending <code>any_severe_scalar</code>, it becomes <code>[0.2, 0.1, 0.1, 1.0]</code>.</p>\n<p>This implies that spinal stenosis grading is worth twice as much as foraminal or subarticular stenosis grading, and that <code>any_severe_spinal</code> is worth 5x as much as spinal and 10x as much as foraminal or subarticular. I am not sure if this is the intended weighting, so I wanted to ask for clarification.</p>",
  "messages": [
    {
      "id": "2848237",
      "postDate": "05/31/2024 23:26:58",
      "content": "<p>Thank you to the hosts and Kaggle for this interesting competition. I have a question about the condition weights for the metric.</p>\n<pre><code>condition_losses = \ncondition_weights = \n\n condition  :\n  condition_indices = solution == condition]\n  condition_loss = sklearn(\n      y_true=solution,\n      y_pred=submission,\n      sample_weight=solution\n  )\n  condition_losses(condition_loss)\n  condition_weights( / solution())\n</code></pre>\n<p>When I run this code block, I get <code>condition_weights = [0.2, 0.1, 0.1]</code>, then appending <code>any_severe_scalar</code>, it becomes <code>[0.2, 0.1, 0.1, 1.0]</code>.</p>\n<p>This implies that spinal stenosis grading is worth twice as much as foraminal or subarticular stenosis grading, and that <code>any_severe_spinal</code> is worth 5x as much as spinal and 10x as much as foraminal or subarticular. I am not sure if this is the intended weighting, so I wanted to ask for clarification.</p>",
      "rawMarkdown": "Thank you to the hosts and Kaggle for this interesting competition. I have a question about the condition weights for the metric.\n\n```\ncondition_losses = []\ncondition_weights = []\n\nfor condition in ['spinal', 'foraminal', 'subarticular']:\n  condition_indices = solution.loc[solution['condition'] == condition].index.values\n  condition_loss = sklearn.metrics.log_loss(\n      y_true=solution.loc[condition_indices, target_levels].values,\n      y_pred=submission.loc[condition_indices, target_levels].values,\n      sample_weight=solution.loc[condition_indices, 'sample_weight'].values\n  )\n  condition_losses.append(condition_loss)\n  condition_weights.append(1 / solution.loc[condition_indices, 'location'].nunique())\n```\n\nWhen I run this code block, I get `condition_weights = [0.2, 0.1, 0.1]`, then appending `any_severe_scalar`, it becomes `[0.2, 0.1, 0.1, 1.0]`.\n\nThis implies that spinal stenosis grading is worth twice as much as foraminal or subarticular stenosis grading, and that `any_severe_spinal` is worth 5x as much as spinal and 10x as much as foraminal or subarticular. I am not sure if this is the intended weighting, so I wanted to ask for clarification.",
      "votes": null
    },
    {
      "id": "2848243",
      "postDate": "05/31/2024 23:33:36",
      "content": "<p>This is easier to think about if you flip to a wide format, with one column per condition &amp; location pair. If you do that, you'll end up with five spinal columns, ten each for foraminal and subarticular, and one for any_severe_spinal. There are twice as many foraminal and subarticular columns as those conditions consider separate diagnoses for the left and right sides of the spine. The overall effect is that each of those major categories has the same impact in aggregate. </p>",
      "rawMarkdown": "This is easier to think about if you flip to a wide format, with one column per condition & location pair. If you do that, you'll end up with five spinal columns, ten each for foraminal and subarticular, and one for any_severe_spinal. There are twice as many foraminal and subarticular columns as those conditions consider separate diagnoses for the left and right sides of the spine. The overall effect is that each of those major categories has the same impact in aggregate.",
      "votes": null
    },
    {
      "id": "2848250",
      "postDate": "05/31/2024 23:40:24",
      "content": "<p>If <code>condition_loss</code> is the weighted mean log loss across all of the samples, doesn't that remove the effect of having right and left sides for foraminal and subarticular stenoses? Since for those categories, we are averaging across both right and left, if I understand the code correctly. </p>",
      "rawMarkdown": "If `condition_loss` is the weighted mean log loss across all of the samples, doesn't that remove the effect of having right and left sides for foraminal and subarticular stenoses? Since for those categories, we are averaging across both right and left, if I understand the code correctly.",
      "votes": null
    },
    {
      "id": "2848450",
      "postDate": "06/01/2024 03:26:20",
      "content": "<p>Yes, but removing the effect of having left and right sides is the intent.</p>",
      "rawMarkdown": "Yes, but removing the effect of having left and right sides is the intent.",
      "votes": null
    },
    {
      "id": "2849168",
      "postDate": "06/01/2024 12:53:10",
      "content": "<p>What I meant was by averaging across the both right and left sides, we have already removed that effect, so there is no need for different weightings.</p>\n<p>The log loss as calculated reflects the average loss across all samples in that condition. Let's say there were 1000 studies with 5 levels, so 5000 for spinal, 10000 for foraminal, 10000 for subarticular, and 1000 for spinal.</p>\n<p>We are then taking the average log loss across each of the 5000 spinal, 10000 foraminal, 10000 subarticular, and 1000 spinal values, resulting in 1 loss value for each. This weighted loss value does not take into consideration, for example, that there are twice as many foraminal values than spinal values - it just reflects the average loss value across all of them. </p>\n<p>So there is no need to weight them differently, if the goal of the weighting is to account for the differences <br>\nin the number of levels and sides.</p>\n<p>If the code was written as:</p>\n<p><code>for condition in ['spinal', 'right_foraminal', 'right_subarticular', 'left_foraminal', 'left_subarticular']:</code></p>\n<p>Then I would understand why foraminal and subarticular would be weighted half as much. Similarly if this were further expanded by level, I would see why any severe spinal would be weighted 5x more than spinal. </p>",
      "rawMarkdown": "What I meant was by averaging across the both right and left sides, we have already removed that effect, so there is no need for different weightings.\n\nThe log loss as calculated reflects the average loss across all samples in that condition. Let's say there were 1000 studies with 5 levels, so 5000 for spinal, 10000 for foraminal, 10000 for subarticular, and 1000 for spinal.\n\nWe are then taking the average log loss across each of the 5000 spinal, 10000 foraminal, 10000 subarticular, and 1000 spinal values, resulting in 1 loss value for each. This weighted loss value does not take into consideration, for example, that there are twice as many foraminal values than spinal values - it just reflects the average loss value across all of them. \n\nSo there is no need to weight them differently, if the goal of the weighting is to account for the differences \nin the number of levels and sides.\n\nIf the code was written as:\n\n`for condition in ['spinal', 'right_foraminal', 'right_subarticular', 'left_foraminal', 'left_subarticular']:`\n\nThen I would understand why foraminal and subarticular would be weighted half as much. Similarly if this were further expanded by level, I would see why any severe spinal would be weighted 5x more than spinal.",
      "votes": null
    },
    {
      "id": "2851041",
      "postDate": "06/02/2024 14:15:05",
      "content": "<p>Within the <code>condition_loss</code> for loop:</p>\n<ol>\n<li>The average log loss for spinal is calculated.</li>\n<li>The average log loss for foraminal is calculated (<strong>this is already averaged across both sides at this point</strong>).</li>\n<li>The average log loss for subarticular is calculated (<strong>this too is already averaged across both sides</strong>).</li>\n</ol>\n<p>Therefore, since the weights for both sides have already been averaged, if we consider the weight from <code>1 / solution.loc[condition_indices, 'location'].nunique()</code>, does this mean that the conditions for foraminal and subarticular, which are twice as many as spinal, will be further halved. </p>\n<p>Correct?</p>",
      "rawMarkdown": "Within the `condition_loss` for loop:\n\n1. The average log loss for spinal is calculated.\n2. The average log loss for foraminal is calculated (**this is already averaged across both sides at this point**).\n3. The average log loss for subarticular is calculated (**this too is already averaged across both sides**).\n\nTherefore, since the weights for both sides have already been averaged, if we consider the weight from `1 / solution.loc[condition_indices, 'location'].nunique()`, does this mean that the conditions for foraminal and subarticular, which are twice as many as spinal, will be further halved. \n\nCorrect?",
      "votes": null
    },
    {
      "id": "2852663",
      "postDate": "06/03/2024 12:01:41",
      "content": "<p>That is my understanding with the current metric.</p>",
      "rawMarkdown": "That is my understanding with the current metric.",
      "votes": null
    },
    {
      "id": "2853805",
      "postDate": "06/04/2024 01:32:47",
      "content": "<p>I also agree.<br>\nWhat are your thoughts on this? <a href=\"https://www.kaggle.com/sohier\" target=\"_blank\">@sohier</a> </p>",
      "rawMarkdown": "I also agree.\nWhat are your thoughts on this? @sohier",
      "votes": null
    },
    {
      "id": "2857471",
      "postDate": "06/05/2024 22:22:41",
      "content": "<p>Thank you for flagging this, Ian. I see what you mean now and have posted a more detailed response here: <a href=\"https://www.kaggle.com/competitions/rsna-2024-lumbar-spine-degenerative-classification/discussion/510363\" target=\"_blank\">https://www.kaggle.com/competitions/rsna-2024-lumbar-spine-degenerative-classification/discussion/510363</a></p>",
      "rawMarkdown": "Thank you for flagging this, Ian. I see what you mean now and have posted a more detailed response here: https://www.kaggle.com/competitions/rsna-2024-lumbar-spine-degenerative-classification/discussion/510363",
      "votes": null
    },
    {
      "id": "2857475",
      "postDate": "06/05/2024 22:28:05",
      "content": "<p>Thanks for the response and quick turnaround!</p>",
      "rawMarkdown": "Thanks for the response and quick turnaround!",
      "votes": null
    },
    {
      "id": "2857505",
      "postDate": "06/05/2024 23:40:08",
      "content": "<p>Thank you for raising the issue. <br>\nIn short, am I correct in saying that we have gone from a total of 5 averages of spinal cord, 2 foraminal, and 2 subarticular to a total of 3 averages of spinal cord, foraminal, and subarticular?</p>",
      "rawMarkdown": "Thank you for raising the issue. \nIn short, am I correct in saying that we have gone from a total of 5 averages of spinal cord, 2 foraminal, and 2 subarticular to a total of 3 averages of spinal cord, foraminal, and subarticular?",
      "votes": null
    },
    {
      "id": "2858859",
      "postDate": "06/06/2024 17:18:32",
      "content": "<p>Thanks for pointing out this issue</p>",
      "rawMarkdown": "Thanks for pointing out this issue",
      "votes": null
    },
    {
      "id": "2860542",
      "postDate": "06/07/2024 16:43:14",
      "content": "<p><a href=\"https://www.kaggle.com/kosukekita\" target=\"_blank\">@kosukekita</a> <br>\nIn my understanding,</p>\n<ol>\n<li>The calculation starts by calculating the weighted averages for 'spinal', 'foraminal', and 'subarticular', where each category is weighted according to its severity. (we get \"weighted mean loss of spinal (n=5 per case)\", \"weighted mean loss of foraminal (n=10 per case)\", \"weighted mean loss of subarticular (n=10 per case)\")</li>\n<li>Additionally, the weighted average is calculated for any severe spinal conditions. (\"weighted loss of any severe spinal\")</li>\n<li>As the <code>any_severe_scalar</code> is set to 1, the overall final score is simply the average of these four losses.</li>\n</ol>",
      "rawMarkdown": "kosukekita \nIn my understanding,\n\n1. The calculation starts by calculating the weighted averages for 'spinal', 'foraminal', and 'subarticular', where each category is weighted according to its severity. (we get \"weighted mean loss of spinal (n=5 per case)\", \"weighted mean loss of foraminal (n=10 per case)\", \"weighted mean loss of subarticular (n=10 per case)\")\n2. Additionally, the weighted average is calculated for any severe spinal conditions. (\"weighted loss of any severe spinal\")\n3. As the `any_severe_scalar` is set to 1, the overall final score is simply the average of these four losses.",
      "votes": null
    },
    {
      "id": "2860952",
      "postDate": "06/07/2024 22:40:58",
      "content": "<p><a href=\"https://www.kaggle.com/YYama\" target=\"_blank\">@YYama</a><br>\nThank you for your instruction.<br>\nI'm gonna update the loss function in my local environment.</p>",
      "rawMarkdown": "YYama\nThank you for your instruction.\nI'm gonna update the loss function in my local environment.",
      "votes": null
    },
    {
      "id": "2892841",
      "postDate": "06/27/2024 13:35:00",
      "content": "<p><a href=\"https://www.kaggle.com/vaillant\" target=\"_blank\">@vaillant</a> can you update on what are new condition weights after 2nd patch of metric ?</p>",
      "rawMarkdown": "vaillant can you update on what are new condition weights after 2nd patch of metric ?",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 2848243,
      "author_name": "sohier",
      "author_url": "",
      "post_date": "05/31/2024 23:33:36",
      "content": "<p>This is easier to think about if you flip to a wide format, with one column per condition &amp; location pair. If you do that, you'll end up with five spinal columns, ten each for foraminal and subarticular, and one for any_severe_spinal. There are twice as many foraminal and subarticular columns as those conditions consider separate diagnoses for the left and right sides of the spine. The overall effect is that each of those major categories has the same impact in aggregate. </p>",
      "votes": null,
      "replies": [
        {
          "id": 2848250,
          "author_name": "vaillant",
          "author_url": "",
          "post_date": "05/31/2024 23:40:24",
          "content": "<p>If <code>condition_loss</code> is the weighted mean log loss across all of the samples, doesn't that remove the effect of having right and left sides for foraminal and subarticular stenoses? Since for those categories, we are averaging across both right and left, if I understand the code correctly. </p>",
          "votes": null,
          "replies": [
            {
              "id": 2848450,
              "author_name": "sohier",
              "author_url": "",
              "post_date": "06/01/2024 03:26:20",
              "content": "<p>Yes, but removing the effect of having left and right sides is the intent.</p>",
              "votes": null,
              "replies": [
                {
                  "id": 2849168,
                  "author_name": "vaillant",
                  "author_url": "",
                  "post_date": "06/01/2024 12:53:10",
                  "content": "<p>What I meant was by averaging across the both right and left sides, we have already removed that effect, so there is no need for different weightings.</p>\n<p>The log loss as calculated reflects the average loss across all samples in that condition. Let's say there were 1000 studies with 5 levels, so 5000 for spinal, 10000 for foraminal, 10000 for subarticular, and 1000 for spinal.</p>\n<p>We are then taking the average log loss across each of the 5000 spinal, 10000 foraminal, 10000 subarticular, and 1000 spinal values, resulting in 1 loss value for each. This weighted loss value does not take into consideration, for example, that there are twice as many foraminal values than spinal values - it just reflects the average loss value across all of them. </p>\n<p>So there is no need to weight them differently, if the goal of the weighting is to account for the differences <br>\nin the number of levels and sides.</p>\n<p>If the code was written as:</p>\n<p><code>for condition in ['spinal', 'right_foraminal', 'right_subarticular', 'left_foraminal', 'left_subarticular']:</code></p>\n<p>Then I would understand why foraminal and subarticular would be weighted half as much. Similarly if this were further expanded by level, I would see why any severe spinal would be weighted 5x more than spinal. </p>",
                  "votes": null,
                  "replies": [
                    {
                      "id": 2851041,
                      "author_name": "yosukeyama",
                      "author_url": "",
                      "post_date": "06/02/2024 14:15:05",
                      "content": "<p>Within the <code>condition_loss</code> for loop:</p>\n<ol>\n<li>The average log loss for spinal is calculated.</li>\n<li>The average log loss for foraminal is calculated (<strong>this is already averaged across both sides at this point</strong>).</li>\n<li>The average log loss for subarticular is calculated (<strong>this too is already averaged across both sides</strong>).</li>\n</ol>\n<p>Therefore, since the weights for both sides have already been averaged, if we consider the weight from <code>1 / solution.loc[condition_indices, 'location'].nunique()</code>, does this mean that the conditions for foraminal and subarticular, which are twice as many as spinal, will be further halved. </p>\n<p>Correct?</p>",
                      "votes": null,
                      "replies": [
                        {
                          "id": 2852663,
                          "author_name": "vaillant",
                          "author_url": "",
                          "post_date": "06/03/2024 12:01:41",
                          "content": "<p>That is my understanding with the current metric.</p>",
                          "votes": null,
                          "replies": [
                            {
                              "id": 2853805,
                              "author_name": "yosukeyama",
                              "author_url": "",
                              "post_date": "06/04/2024 01:32:47",
                              "content": "<p>I also agree.<br>\nWhat are your thoughts on this? <a href=\"https://www.kaggle.com/sohier\" target=\"_blank\">@sohier</a> </p>",
                              "votes": null,
                              "replies": [
                                {
                                  "id": 2857471,
                                  "author_name": "sohier",
                                  "author_url": "",
                                  "post_date": "06/05/2024 22:22:41",
                                  "content": "<p>Thank you for flagging this, Ian. I see what you mean now and have posted a more detailed response here: <a href=\"https://www.kaggle.com/competitions/rsna-2024-lumbar-spine-degenerative-classification/discussion/510363\" target=\"_blank\">https://www.kaggle.com/competitions/rsna-2024-lumbar-spine-degenerative-classification/discussion/510363</a></p>",
                                  "votes": null,
                                  "replies": [
                                    {
                                      "id": 2857475,
                                      "author_name": "vaillant",
                                      "author_url": "",
                                      "post_date": "06/05/2024 22:28:05",
                                      "content": "<p>Thanks for the response and quick turnaround!</p>",
                                      "votes": null,
                                      "replies": [
                                        {
                                          "id": 2858859,
                                          "author_name": "manaidu",
                                          "author_url": "",
                                          "post_date": "06/06/2024 17:18:32",
                                          "content": "<p>Thanks for pointing out this issue</p>",
                                          "votes": null,
                                          "replies": []
                                        }
                                      ]
                                    }
                                  ]
                                }
                              ]
                            }
                          ]
                        },
                        {
                          "id": 2857505,
                          "author_name": "kosukekita",
                          "author_url": "",
                          "post_date": "06/05/2024 23:40:08",
                          "content": "<p>Thank you for raising the issue. <br>\nIn short, am I correct in saying that we have gone from a total of 5 averages of spinal cord, 2 foraminal, and 2 subarticular to a total of 3 averages of spinal cord, foraminal, and subarticular?</p>",
                          "votes": null,
                          "replies": [
                            {
                              "id": 2860542,
                              "author_name": "yosukeyama",
                              "author_url": "",
                              "post_date": "06/07/2024 16:43:14",
                              "content": "<p><a href=\"https://www.kaggle.com/kosukekita\" target=\"_blank\">@kosukekita</a> <br>\nIn my understanding,</p>\n<ol>\n<li>The calculation starts by calculating the weighted averages for 'spinal', 'foraminal', and 'subarticular', where each category is weighted according to its severity. (we get \"weighted mean loss of spinal (n=5 per case)\", \"weighted mean loss of foraminal (n=10 per case)\", \"weighted mean loss of subarticular (n=10 per case)\")</li>\n<li>Additionally, the weighted average is calculated for any severe spinal conditions. (\"weighted loss of any severe spinal\")</li>\n<li>As the <code>any_severe_scalar</code> is set to 1, the overall final score is simply the average of these four losses.</li>\n</ol>",
                              "votes": null,
                              "replies": [
                                {
                                  "id": 2860952,
                                  "author_name": "kosukekita",
                                  "author_url": "",
                                  "post_date": "06/07/2024 22:40:58",
                                  "content": "<p><a href=\"https://www.kaggle.com/YYama\" target=\"_blank\">@YYama</a><br>\nThank you for your instruction.<br>\nI'm gonna update the loss function in my local environment.</p>",
                                  "votes": null,
                                  "replies": []
                                }
                              ]
                            }
                          ]
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "id": 2892841,
      "author_name": "rohitchaudhari25",
      "author_url": "",
      "post_date": "06/27/2024 13:35:00",
      "content": "<p><a href=\"https://www.kaggle.com/vaillant\" target=\"_blank\">@vaillant</a> can you update on what are new condition weights after 2nd patch of metric ?</p>",
      "votes": null,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "2848237": "Thank you to the hosts and Kaggle for this interesting competition. I have a question about the condition weights for the metric.\n\n```\ncondition_losses = []\ncondition_weights = []\n\nfor condition in ['spinal', 'foraminal', 'subarticular']:\n  condition_indices = solution.loc[solution['condition'] == condition].index.values\n  condition_loss = sklearn.metrics.log_loss(\n      y_true=solution.loc[condition_indices, target_levels].values,\n      y_pred=submission.loc[condition_indices, target_levels].values,\n      sample_weight=solution.loc[condition_indices, 'sample_weight'].values\n  )\n  condition_losses.append(condition_loss)\n  condition_weights.append(1 / solution.loc[condition_indices, 'location'].nunique())\n```\n\nWhen I run this code block, I get `condition_weights = [0.2, 0.1, 0.1]`, then appending `any_severe_scalar`, it becomes `[0.2, 0.1, 0.1, 1.0]`.\n\nThis implies that spinal stenosis grading is worth twice as much as foraminal or subarticular stenosis grading, and that `any_severe_spinal` is worth 5x as much as spinal and 10x as much as foraminal or subarticular. I am not sure if this is the intended weighting, so I wanted to ask for clarification.",
    "2848243": "This is easier to think about if you flip to a wide format, with one column per condition & location pair. If you do that, you'll end up with five spinal columns, ten each for foraminal and subarticular, and one for any_severe_spinal. There are twice as many foraminal and subarticular columns as those conditions consider separate diagnoses for the left and right sides of the spine. The overall effect is that each of those major categories has the same impact in aggregate.",
    "2848250": "If `condition_loss` is the weighted mean log loss across all of the samples, doesn't that remove the effect of having right and left sides for foraminal and subarticular stenoses? Since for those categories, we are averaging across both right and left, if I understand the code correctly.",
    "2848450": "Yes, but removing the effect of having left and right sides is the intent.",
    "2849168": "What I meant was by averaging across the both right and left sides, we have already removed that effect, so there is no need for different weightings.\n\nThe log loss as calculated reflects the average loss across all samples in that condition. Let's say there were 1000 studies with 5 levels, so 5000 for spinal, 10000 for foraminal, 10000 for subarticular, and 1000 for spinal.\n\nWe are then taking the average log loss across each of the 5000 spinal, 10000 foraminal, 10000 subarticular, and 1000 spinal values, resulting in 1 loss value for each. This weighted loss value does not take into consideration, for example, that there are twice as many foraminal values than spinal values - it just reflects the average loss value across all of them. \n\nSo there is no need to weight them differently, if the goal of the weighting is to account for the differences \nin the number of levels and sides.\n\nIf the code was written as:\n\n`for condition in ['spinal', 'right_foraminal', 'right_subarticular', 'left_foraminal', 'left_subarticular']:`\n\nThen I would understand why foraminal and subarticular would be weighted half as much. Similarly if this were further expanded by level, I would see why any severe spinal would be weighted 5x more than spinal.",
    "2851041": "Within the `condition_loss` for loop:\n\n1. The average log loss for spinal is calculated.\n2. The average log loss for foraminal is calculated (**this is already averaged across both sides at this point**).\n3. The average log loss for subarticular is calculated (**this too is already averaged across both sides**).\n\nTherefore, since the weights for both sides have already been averaged, if we consider the weight from `1 / solution.loc[condition_indices, 'location'].nunique()`, does this mean that the conditions for foraminal and subarticular, which are twice as many as spinal, will be further halved. \n\nCorrect?",
    "2852663": "That is my understanding with the current metric.",
    "2853805": "I also agree.\nWhat are your thoughts on this? @sohier",
    "2857471": "Thank you for flagging this, Ian. I see what you mean now and have posted a more detailed response here: https://www.kaggle.com/competitions/rsna-2024-lumbar-spine-degenerative-classification/discussion/510363",
    "2857475": "Thanks for the response and quick turnaround!",
    "2857505": "Thank you for raising the issue. \nIn short, am I correct in saying that we have gone from a total of 5 averages of spinal cord, 2 foraminal, and 2 subarticular to a total of 3 averages of spinal cord, foraminal, and subarticular?",
    "2858859": "Thanks for pointing out this issue",
    "2860542": "kosukekita \nIn my understanding,\n\n1. The calculation starts by calculating the weighted averages for 'spinal', 'foraminal', and 'subarticular', where each category is weighted according to its severity. (we get \"weighted mean loss of spinal (n=5 per case)\", \"weighted mean loss of foraminal (n=10 per case)\", \"weighted mean loss of subarticular (n=10 per case)\")\n2. Additionally, the weighted average is calculated for any severe spinal conditions. (\"weighted loss of any severe spinal\")\n3. As the `any_severe_scalar` is set to 1, the overall final score is simply the average of these four losses.",
    "2860952": "YYama\nThank you for your instruction.\nI'm gonna update the loss function in my local environment.",
    "2892841": "vaillant can you update on what are new condition weights after 2nd patch of metric ?"
  },
  "source": "meta"
}