{
  "id": 664948,
  "title": "The translation column of the final test predictions into the corresponding <gap> and <big_gap> tags",
  "url": "/competitions/deep-past-initiative-machine-translation/discussion/664948",
  "author_name": "耶✌",
  "post_date": "2025-12-29T06:00:07.259000",
  "votes": 55,
  "comment_count": 65,
  "views": 0,
  "content": "<p><strong>Note: The dataset has been updated. The <code>&lt;big_gap&gt;</code> tag and certain symbols are no longer included. For details, please refer to the official update announcement and the latest dataset released by the organizers.</strong></p>\n<p><strong>2025.12.29</strong>: I trained the model by replacing all instances of … [x], x, etc. in the <strong>transliteration column</strong> of train.csv with <code>&lt;gap&gt;</code> and <code>&lt;big_gap&gt;</code>, then made predictions on test.csv. Meanwhile, I replaced all … in the prediction results with <code>&lt;big_gap&gt;</code>and all x with <code>&lt;gap&gt;</code>.</p>\n<p>My LB score reached 30.3, and I have released the training code, the converted datasets as well as the submission code. :)</p>\n<p>I’ll share my scoring progress and <strong>implementation details</strong> here in the next steps, and hope this helps you all.</p>\n<table>\n<thead>\n<tr>\n<th>LB</th>\n<th>size</th>\n<th>submit time</th>\n<th>epoch</th>\n<th>Training Loss</th>\n<th>Validation Loss</th>\n<th>Chrf</th>\n<th>progress</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>31.3</td>\n<td>725B</td>\n<td>-</td>\n<td>10</td>\n<td>0.290900</td>\n<td>0.418788</td>\n<td>5.175934</td>\n<td>revised the <code>&lt;gap&gt;</code> <code>&lt;big_gap&gt;</code></td>\n</tr>\n<tr>\n<td>31.0</td>\n<td>569B</td>\n<td>19min</td>\n<td>10</td>\n<td>0.304600</td>\n<td>0.421686</td>\n<td>5.082081</td>\n<td>revised the <code>&lt;gap&gt;</code> <code>&lt;big_gap&gt;</code>, determinatives, fraction such as ¼, curly braces {} and delete parentheses ().</td>\n</tr>\n<tr>\n<td>31.5</td>\n<td>762B</td>\n<td>21min</td>\n<td>10</td>\n<td>0.282200</td>\n<td>0.389588</td>\n<td>5.320788</td>\n<td>Shortened and aligned the 14 sentences with length exceeding 512, resulting in a total of <strong>1595 pieces of data</strong>; meanwhile, revised the <code>&lt;gap&gt;</code> <code>&lt;big_gap&gt;</code>, determinatives, fraction such as ¼, curly braces {} ,and delete slash /, parentheses ().</td>\n</tr>\n<tr>\n<td>31.8</td>\n<td>749B</td>\n<td>-</td>\n<td>10</td>\n<td>0.297200</td>\n<td>0.400207</td>\n<td>5.364566</td>\n<td>Shortened and aligned the 14 sentences with length exceeding 512, resulting in a total of <strong>1595 pieces of data</strong>; meanwhile, revised the <code>&lt;gap&gt;</code> <code>&lt;big_gap&gt;</code></td>\n</tr>\n<tr>\n<td>32.3</td>\n<td>695B</td>\n<td>19min</td>\n<td>10</td>\n<td>0.296600</td>\n<td>0.385465</td>\n<td>5.364575</td>\n<td>Shortened and aligned the 16 sentences with length exceeding 512, resulting in a total of <strong>1604 pieces of data</strong>; meanwhile, revised the <code>&lt;gap&gt;</code> <code>&lt;big_gap&gt;</code>,determinatives, fraction such as ¼, curly braces {} ,keep ! ? (),and delete slash / ,fem. plur. sing. pl.</td>\n</tr>\n</tbody>\n</table>\n<hr>\n<p><strong>The Second Stage</strong></p>\n<p>I'm back—but actually, I never left. 32.8 This result is definitely not up to my expectations, lol, but the task isn’t finished yet, so there should still be room for improvement.</p>\n<table>\n<thead>\n<tr>\n<th>LB</th>\n<th>size</th>\n<th>submit time</th>\n<th>epoch</th>\n<th>Training Loss</th>\n<th>Validation Loss</th>\n<th>Chrf</th>\n<th>progress</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>32.8</td>\n<td>797B</td>\n<td>17min</td>\n<td>10</td>\n<td>0.277100</td>\n<td>0.370077</td>\n<td>6.596245</td>\n<td><strong>MAX_LENGTH</strong>=385,revised the <code>&lt;gap&gt;</code> <code>&lt;big_gap&gt;</code>,Ensure that the <code>&lt;gap&gt;</code> on both sides exist simultaneously or are absent simultaneously, All subscript numbers uppercase, keep determinatives(Ḫ,ḫ), delete ! ? () \" ; — - – &lt; &gt; ⌈ [ ] + ʾ / ,fem. plur. sing. pl. , total of <strong>1703 pieces of data</strong></td>\n</tr>\n<tr>\n<td>33.0</td>\n<td>699B</td>\n<td>17min</td>\n<td>10</td>\n<td>0.276200</td>\n<td>0.353537</td>\n<td>5.957525</td>\n<td><strong>MAX_LENGTH</strong>=475,revised the <code>&lt;gap&gt;</code> <code>&lt;big_gap&gt;</code>,Ensure that the <code>&lt;gap&gt;</code> on both sides exist simultaneously or are absent simultaneously, All subscript numbers uppercase, keep determinatives(Ḫ,ḫ), delete ! ? () \" ; — - – &lt; &gt; ⌈ [ ] + ʾ / ,fem. plur. sing. pl. , total of <strong>1703 pieces of data</strong></td>\n</tr>\n<tr>\n<td>33.3</td>\n<td>820B</td>\n<td>18min</td>\n<td>10</td>\n<td>0.284400</td>\n<td>0.351412</td>\n<td>5.638265</td>\n<td><strong>MAX_LENGTH</strong>=512,revised the <code>&lt;gap&gt;</code> <code>&lt;big_gap&gt;</code>,Ensure that the <code>&lt;gap&gt;</code> on both sides exist simultaneously or are absent simultaneously, All subscript numbers uppercase, keep determinatives(Ḫ,ḫ), delete ! ? () \" ; — - – &lt; &gt; ⌈ [ ] + ʾ / ,fem. plur. sing. pl. , total of <strong>1703 pieces of data</strong></td>\n</tr>\n</tbody>\n</table>\n<p>At present, I have basically aligned the 94 filtered documents with lengths exceeding 512 characters, and revised nearly 100 documents with abnormal <strong>length ratios</strong>. As for why <strong>MAX_LENGTH</strong> is set to 385, the reason is <strong>CUDA out of memory</strong>.</p>\n<hr>\n<p><strong>Note:</strong>After the new update, <code>&lt;big_gap&gt;</code> has been permanently removed.</p>",
  "messages": [
    {
      "id": 3383010,
      "postDate": "2025-12-29T06:00:07.260Z",
      "content": "<p><strong>Note: The dataset has been updated. The <code>&lt;big_gap&gt;</code> tag and certain symbols are no longer included. For details, please refer to the official update announcement and the latest dataset released by the organizers.</strong></p>\n<p><strong>2025.12.29</strong>: I trained the model by replacing all instances of … [x], x, etc. in the <strong>transliteration column</strong> of train.csv with <code>&lt;gap&gt;</code> and <code>&lt;big_gap&gt;</code>, then made predictions on test.csv. Meanwhile, I replaced all … in the prediction results with <code>&lt;big_gap&gt;</code>and all x with <code>&lt;gap&gt;</code>.</p>\n<p>My LB score reached 30.3, and I have released the training code, the converted datasets as well as the submission code. :)</p>\n<p>I’ll share my scoring progress and <strong>implementation details</strong> here in the next steps, and hope this helps you all.</p>\n<table>\n<thead>\n<tr>\n<th>LB</th>\n<th>size</th>\n<th>submit time</th>\n<th>epoch</th>\n<th>Training Loss</th>\n<th>Validation Loss</th>\n<th>Chrf</th>\n<th>progress</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>31.3</td>\n<td>725B</td>\n<td>-</td>\n<td>10</td>\n<td>0.290900</td>\n<td>0.418788</td>\n<td>5.175934</td>\n<td>revised the <code>&lt;gap&gt;</code> <code>&lt;big_gap&gt;</code></td>\n</tr>\n<tr>\n<td>31.0</td>\n<td>569B</td>\n<td>19min</td>\n<td>10</td>\n<td>0.304600</td>\n<td>0.421686</td>\n<td>5.082081</td>\n<td>revised the <code>&lt;gap&gt;</code> <code>&lt;big_gap&gt;</code>, determinatives, fraction such as ¼, curly braces {} and delete parentheses ().</td>\n</tr>\n<tr>\n<td>31.5</td>\n<td>762B</td>\n<td>21min</td>\n<td>10</td>\n<td>0.282200</td>\n<td>0.389588</td>\n<td>5.320788</td>\n<td>Shortened and aligned the 14 sentences with length exceeding 512, resulting in a total of <strong>1595 pieces of data</strong>; meanwhile, revised the <code>&lt;gap&gt;</code> <code>&lt;big_gap&gt;</code>, determinatives, fraction such as ¼, curly braces {} ,and delete slash /, parentheses ().</td>\n</tr>\n<tr>\n<td>31.8</td>\n<td>749B</td>\n<td>-</td>\n<td>10</td>\n<td>0.297200</td>\n<td>0.400207</td>\n<td>5.364566</td>\n<td>Shortened and aligned the 14 sentences with length exceeding 512, resulting in a total of <strong>1595 pieces of data</strong>; meanwhile, revised the <code>&lt;gap&gt;</code> <code>&lt;big_gap&gt;</code></td>\n</tr>\n<tr>\n<td>32.3</td>\n<td>695B</td>\n<td>19min</td>\n<td>10</td>\n<td>0.296600</td>\n<td>0.385465</td>\n<td>5.364575</td>\n<td>Shortened and aligned the 16 sentences with length exceeding 512, resulting in a total of <strong>1604 pieces of data</strong>; meanwhile, revised the <code>&lt;gap&gt;</code> <code>&lt;big_gap&gt;</code>,determinatives, fraction such as ¼, curly braces {} ,keep ! ? (),and delete slash / ,fem. plur. sing. pl.</td>\n</tr>\n</tbody>\n</table>\n<hr>\n<p><strong>The Second Stage</strong></p>\n<p>I'm back—but actually, I never left. 32.8 This result is definitely not up to my expectations, lol, but the task isn’t finished yet, so there should still be room for improvement.</p>\n<table>\n<thead>\n<tr>\n<th>LB</th>\n<th>size</th>\n<th>submit time</th>\n<th>epoch</th>\n<th>Training Loss</th>\n<th>Validation Loss</th>\n<th>Chrf</th>\n<th>progress</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>32.8</td>\n<td>797B</td>\n<td>17min</td>\n<td>10</td>\n<td>0.277100</td>\n<td>0.370077</td>\n<td>6.596245</td>\n<td><strong>MAX_LENGTH</strong>=385,revised the <code>&lt;gap&gt;</code> <code>&lt;big_gap&gt;</code>,Ensure that the <code>&lt;gap&gt;</code> on both sides exist simultaneously or are absent simultaneously, All subscript numbers uppercase, keep determinatives(Ḫ,ḫ), delete ! ? () \" ; — - – &lt; &gt; ⌈ [ ] + ʾ / ,fem. plur. sing. pl. , total of <strong>1703 pieces of data</strong></td>\n</tr>\n<tr>\n<td>33.0</td>\n<td>699B</td>\n<td>17min</td>\n<td>10</td>\n<td>0.276200</td>\n<td>0.353537</td>\n<td>5.957525</td>\n<td><strong>MAX_LENGTH</strong>=475,revised the <code>&lt;gap&gt;</code> <code>&lt;big_gap&gt;</code>,Ensure that the <code>&lt;gap&gt;</code> on both sides exist simultaneously or are absent simultaneously, All subscript numbers uppercase, keep determinatives(Ḫ,ḫ), delete ! ? () \" ; — - – &lt; &gt; ⌈ [ ] + ʾ / ,fem. plur. sing. pl. , total of <strong>1703 pieces of data</strong></td>\n</tr>\n<tr>\n<td>33.3</td>\n<td>820B</td>\n<td>18min</td>\n<td>10</td>\n<td>0.284400</td>\n<td>0.351412</td>\n<td>5.638265</td>\n<td><strong>MAX_LENGTH</strong>=512,revised the <code>&lt;gap&gt;</code> <code>&lt;big_gap&gt;</code>,Ensure that the <code>&lt;gap&gt;</code> on both sides exist simultaneously or are absent simultaneously, All subscript numbers uppercase, keep determinatives(Ḫ,ḫ), delete ! ? () \" ; — - – &lt; &gt; ⌈ [ ] + ʾ / ,fem. plur. sing. pl. , total of <strong>1703 pieces of data</strong></td>\n</tr>\n</tbody>\n</table>\n<p>At present, I have basically aligned the 94 filtered documents with lengths exceeding 512 characters, and revised nearly 100 documents with abnormal <strong>length ratios</strong>. As for why <strong>MAX_LENGTH</strong> is set to 385, the reason is <strong>CUDA out of memory</strong>.</p>\n<hr>\n<p><strong>Note:</strong>After the new update, <code>&lt;big_gap&gt;</code> has been permanently removed.</p>",
      "rawMarkdown": "**Note: The dataset has been updated. The `<big_gap>` tag and certain symbols are no longer included. For details, please refer to the official update announcement and the latest dataset released by the organizers.**\n\n**2025.12.29**: I trained the model by replacing all instances of ... [x], x, etc. in the **transliteration column** of train.csv with `<gap>` and `<big_gap>`, then made predictions on test.csv. Meanwhile, I replaced all ... in the prediction results with `<big_gap> `and all x with `<gap>`.\n\nMy LB score reached 30.3, and I have released the training code, the converted datasets as well as the submission code. :)\n\n\nI’ll share my scoring progress and **implementation details** here in the next steps, and hope this helps you all.\n| LB | size |submit time| epoch | Training Loss| Validation Loss|Chrf|progress | \n| --- | --- |\n| 31.3 | 725B |-|10|0.290900|0.418788|5.175934|revised the `<gap>` `<big_gap>`|\n| 31.0 | 569B |19min|10|0.304600|0.421686|5.082081|revised the `<gap>` `<big_gap>`, determinatives, fraction such as ¼, curly braces {} and delete parentheses ().|\n| 31.5 | 762B |21min|10|0.282200|0.389588|5.320788|Shortened and aligned the 14 sentences with length exceeding 512, resulting in a total of **1595 pieces of data**; meanwhile, revised the `<gap>` `<big_gap>`, determinatives, fraction such as ¼, curly braces {} ,and delete slash /, parentheses ().|\n| 31.8 | 749B |-|10|0.297200|0.400207|5.364566|Shortened and aligned the 14 sentences with length exceeding 512, resulting in a total of **1595 pieces of data**; meanwhile, revised the `<gap>` `<big_gap>`|\n| 32.3 | 695B |19min|10|0.296600|0.385465|5.364575|Shortened and aligned the 16 sentences with length exceeding 512, resulting in a total of **1604 pieces of data**; meanwhile, revised the `<gap>` `<big_gap>`,determinatives, fraction such as ¼, curly braces {} ,keep ! ? (),and delete slash / ,fem. plur. sing. pl.|\n\n---------------------------------------------------------------------------------------------------------------------------------------------\n\n**The Second Stage**\n\nI'm back—but actually, I never left. 32.8 This result is definitely not up to my expectations, lol, but the task isn’t finished yet, so there should still be room for improvement.\n| LB | size |submit time| epoch | Training Loss| Validation Loss|Chrf|progress | \n| --- | --- |\n| 32.8 | 797B |17min|10|0.277100|0.370077|6.596245|**MAX_LENGTH**=385,revised the `<gap>` `<big_gap>`,Ensure that the `<gap>` on both sides exist simultaneously or are absent simultaneously, All subscript numbers uppercase, keep determinatives(Ḫ,ḫ), delete ! ? () \" ; — - – < > ⌈ [ ] + ʾ / ,fem. plur. sing. pl. , total of **1703 pieces of data**|\n| 33.0 | 699B |17min|10|0.276200|0.353537|5.957525|**MAX_LENGTH**=475,revised the `<gap>` `<big_gap>`,Ensure that the `<gap>` on both sides exist simultaneously or are absent simultaneously, All subscript numbers uppercase, keep determinatives(Ḫ,ḫ), delete ! ? () \" ; — - – < > ⌈ [ ] + ʾ / ,fem. plur. sing. pl. , total of **1703 pieces of data**|\n| 33.3 | 820B |18min|10|0.284400|0.351412|5.638265|**MAX_LENGTH**=512,revised the `<gap>` `<big_gap>`,Ensure that the `<gap>` on both sides exist simultaneously or are absent simultaneously, All subscript numbers uppercase, keep determinatives(Ḫ,ḫ), delete ! ? () \" ; — - – < > ⌈ [ ] + ʾ / ,fem. plur. sing. pl. , total of **1703 pieces of data**|\n\nAt present, I have basically aligned the 94 filtered documents with lengths exceeding 512 characters, and revised nearly 100 documents with abnormal **length ratios**. As for why **MAX_LENGTH** is set to 385, the reason is **CUDA out of memory**.\n\n-----------------------------------------\n**Note:**After the new update, `<big_gap>` has been permanently removed.",
      "votes": 55
    },
    {
      "id": 3406412,
      "postDate": "2026-02-15T15:45:16.203Z",
      "content": "<p>I dunno got me batch size has been funny in lower recording better cv than big .. trying to figure out the reason why :( and smaller models working better so far</p>",
      "rawMarkdown": "I dunno got me batch size has been funny in lower recording better cv than big .. trying to figure out the reason why :( and smaller models working better so far",
      "votes": 1,
      "replies": [
        {
          "id": 3406455,
          "postDate": "2026-02-15T16:45:52.883Z",
          "content": "<p>It actually doesn’t have much to do with the batch size. The main issue is that the data has a lot of truncation and inconsistency, which leads to large score fluctuations. So standardizing the data well is the key to this competition.good luck.</p>",
          "rawMarkdown": "It actually doesn’t have much to do with the batch size. The main issue is that the data has a lot of truncation and inconsistency, which leads to large score fluctuations. So standardizing the data well is the key to this competition.good luck.",
          "votes": 1,
          "replies": [
            {
              "id": 3406472,
              "postDate": "2026-02-15T17:40:39.713Z",
              "content": "<p>Thanks ya but run same seed diff batch size also seeing this but ya think you are right .. larger models also on same pipes give different results was stranger </p>",
              "rawMarkdown": "Thanks ya but run same seed diff batch size also seeing this but ya think you are right .. larger models also on same pipes give different results was stranger ",
              "votes": 1
            }
          ]
        }
      ]
    },
    {
      "id": 3406319,
      "postDate": "2026-02-15T10:49:27.740Z",
      "content": "<p>Thank you for sharing. This discussion is very helpful for me.  I'm a beginner, so please excuse my question, but why does your training strategy table only show chrF? In my own training, the BLEU score is extremely low, like 0.00… Since the final evaluation metric is the geometric mean of BLEU and chrF, is this really okay?</p>",
      "rawMarkdown": "Thank you for sharing. This discussion is very helpful for me.  I'm a beginner, so please excuse my question, but why does your training strategy table only show chrF? In my own training, the BLEU score is extremely low, like 0.00... Since the final evaluation metric is the geometric mean of BLEU and chrF, is this really okay?",
      "votes": 1,
      "replies": [
        {
          "id": 3406452,
          "postDate": "2026-02-15T16:42:51.970Z",
          "content": "<p>It doesn’t really matter much. Although this can’t directly reflect the leaderboard score, it still gives us a general idea of how the model is performing, and I think that’s sufficient for now.</p>",
          "rawMarkdown": "It doesn’t really matter much. Although this can’t directly reflect the leaderboard score, it still gives us a general idea of how the model is performing, and I think that’s sufficient for now.",
          "replies": [
            {
              "id": 3406469,
              "postDate": "2026-02-15T17:31:45.863Z",
              "content": "<p>Thank you for your response. I have another question.\nLooking at public inference notebooks, I noticed that many people are using almost the same training models. Why is this the case?\nAlso, is it considered a best practice to take these publicly available models and fine-tune them as a starting point (pre-trained model) on a new dataset that has been pre-processed with tags like ?</p>",
              "rawMarkdown": "Thank you for your response. I have another question.\nLooking at public inference notebooks, I noticed that many people are using almost the same training models. Why is this the case?\nAlso, is it considered a best practice to take these publicly available models and fine-tune them as a starting point (pre-trained model) on a new dataset that has been pre-processed with tags like <gap>?",
              "votes": 1
            }
          ]
        }
      ]
    },
    {
      "id": 3384498,
      "postDate": "2026-01-01T11:29:40.623Z",
      "content": "<p>i can ask u? what u use method for solve problems hallucination and repetition word???</p>",
      "rawMarkdown": "i can ask u? what u use method for solve problems hallucination and repetition word???",
      "votes": 1,
      "replies": [
        {
          "id": 3384503,
          "postDate": "2026-01-01T11:45:14.917Z",
          "content": "<p>I haven't reached the stage of solving this problem yet. The maximum token capacity of my current code model is 512, and hallucinations tend to come with repeated words when the text length increases. I think this issue can be addressed through the following two approaches:</p>\n<ol>\n<li>Increase the token capacity, which however requires greater computing power.</li>\n<li>Truncate long sentences into smaller ones by semantic meaning for training, but it will take some time to do.</li>\n</ol>\n<p>good luck</p>",
          "rawMarkdown": "I haven't reached the stage of solving this problem yet. The maximum token capacity of my current code model is 512, and hallucinations tend to come with repeated words when the text length increases. I think this issue can be addressed through the following two approaches:\n \n1. Increase the token capacity, which however requires greater computing power.\n2. Truncate long sentences into smaller ones by semantic meaning for training, but it will take some time to do.\n\ngood luck",
          "replies": [
            {
              "id": 3384601,
              "postDate": "2026-01-01T15:16:21.260Z",
              "content": "<p>How the heck are you aligning sentences to actually improve your score? I’ve spent hours going through the sentence alignment file to create sentences and manually verified everything and all it did was lower my score. </p>",
              "rawMarkdown": "How the heck are you aligning sentences to actually improve your score? I’ve spent hours going through the sentence alignment file to create sentences and manually verified everything and all it did was lower my score. ",
              "votes": 2
            },
            {
              "id": 3384626,
              "postDate": "2026-01-01T16:13:00.190Z",
              "content": "<p>That's a great question, and I'll break down the answer into three points:</p>\n<ol>\n<li><p><strong>First, the sentences I’m currently processing:</strong> sentences where both the <strong>transliteration and translation</strong> columns exceed 512 characters, and their oare_id exists in <strong>Sentences_Oare_FirstWord_LinNum.csv</strong> (the critical basis for my segmentation). So far, I’ve filtered out only 94 sentences that meet the above criteria.</p></li>\n<li><p><strong>How I process these sentences:</strong> I perform truncation using the sentence start words and English translations from Sentences_Oare_FirstWord_LinNum.csv, while striving to preserve semantic integrity and avoiding truncation of single isolated sentences. Minor punctuation adjustments may be made during truncation—for example, <strong>removing or reinserting</strong> the closing quotation mark if there is no matching \" after said:\". Additionally, translations in Sentences_Oare_FirstWord_LinNum.csv may have slight discrepancies with those in train.csv, and the <strong>two datasets are complementary to each other</strong>. Ultimately, the only requirement is that the truncated length does not exceed 512 characters, as I aim to avoid losing semantic information of the entire passage.</p></li>\n<li><p><strong>On score improvement:</strong>  I remain somewhat skeptical here. Although truncating sentences alone boosted my score by 0.5, my random seed is still set to <strong>42</strong>. As the total number of rows in train.csv increases, the split results for the validation and training sets will change. This may cause the model to train on and learn new content, which could be the actual reason for the score increase.</p></li>\n</ol>\n<p><strong>Conclusion</strong>: I will continue aligning partial sentences and monitor the LB score. A significant LB score improvement will confirm the effectiveness of this approach. In fact, with the current token limit of 512, a large volume of <strong>data is undoubtedly omitted</strong>. Sentence alignment should yield certain benefits, but it requires meticulous execution (there is no definitive rule for this task).Hope this helps you.</p>",
              "rawMarkdown": "That's a great question, and I'll break down the answer into three points:\n1. **First, the sentences I’m currently processing:** sentences where both the **transliteration and translation** columns exceed 512 characters, and their oare_id exists in **Sentences_Oare_FirstWord_LinNum.csv** (the critical basis for my segmentation). So far, I’ve filtered out only 94 sentences that meet the above criteria.\n\n2. **How I process these sentences:** I perform truncation using the sentence start words and English translations from Sentences_Oare_FirstWord_LinNum.csv, while striving to preserve semantic integrity and avoiding truncation of single isolated sentences. Minor punctuation adjustments may be made during truncation—for example, **removing or reinserting** the closing quotation mark if there is no matching \" after said:\". Additionally, translations in Sentences_Oare_FirstWord_LinNum.csv may have slight discrepancies with those in train.csv, and the **two datasets are complementary to each other**. Ultimately, the only requirement is that the truncated length does not exceed 512 characters, as I aim to avoid losing semantic information of the entire passage.\n\n3. **On score improvement:**  I remain somewhat skeptical here. Although truncating sentences alone boosted my score by 0.5, my random seed is still set to **42**. As the total number of rows in train.csv increases, the split results for the validation and training sets will change. This may cause the model to train on and learn new content, which could be the actual reason for the score increase.\n\n**Conclusion**: I will continue aligning partial sentences and monitor the LB score. A significant LB score improvement will confirm the effectiveness of this approach. In fact, with the current token limit of 512, a large volume of **data is undoubtedly omitted**. Sentence alignment should yield certain benefits, but it requires meticulous execution (there is no definitive rule for this task).Hope this helps you.",
              "votes": 2
            },
            {
              "id": 3384642,
              "postDate": "2026-01-01T16:41:05.540Z",
              "content": "<p>Want to check my sentence alignment results from my programmatic + manual approach with what you've got? </p>",
              "rawMarkdown": "Want to check my sentence alignment results from my programmatic + manual approach with what you've got? "
            },
            {
              "id": 3384653,
              "postDate": "2026-01-01T16:48:58.587Z",
              "content": "<p>You can share you data,public</p>",
              "rawMarkdown": "You can share you data,public"
            },
            {
              "id": 3386982,
              "postDate": "2026-01-06T07:03:08.987Z",
              "content": "<p>Hello, I have a question. Does your statement that the length exceeds 512 refer to the length of the characters themselves, or the length after space splitting (len(xxx.split(\" \"))))?</p>",
              "rawMarkdown": "Hello, I have a question. Does your statement that the length exceeds 512 refer to the length of the characters themselves, or the length after space splitting (len(xxx.split(\" \"))))?"
            },
            {
              "id": 3386986,
              "postDate": "2026-01-06T07:08:06.397Z",
              "content": "<p>没有经过任何处理，是原始的长度，包含了<code>\" \"</code></p>",
              "rawMarkdown": "没有经过任何处理，是原始的长度，包含了`\" \"`"
            },
            {
              "id": 3387039,
              "postDate": "2026-01-06T09:08:35.570Z",
              "content": "<p>Thank you. Could you please explain your understanding of the <code>first_word_number</code>, <code>first_word_obj_in_text</code>, <code>line_number</code>, and <code>side column</code> fields?</p>",
              "rawMarkdown": "Thank you. Could you please explain your understanding of the `first_word_number`, `first_word_obj_in_text`, `line_number`, and `side column` fields?",
              "votes": 2
            },
            {
              "id": 3387139,
              "postDate": "2026-01-06T12:49:24.423Z",
              "content": "<p>我目前认为比较好理解的是first_word_number和side column。</p>\n<p>first_word_number: 就是这个单词是这一段话里的第几个词(不包含数值 很重要！)</p>\n<p>side column: 这个你要结合实际，Akkadian 其实有很多载体，最主要的就是泥板(tablet),然后泥板的每个面都可以写东西(最主要有 Obverse  Reverse Edge Left Seal A Seal F )等等面</p>",
              "rawMarkdown": "我目前认为比较好理解的是first_word_number和side column。\n\nfirst_word_number: 就是这个单词是这一段话里的第几个词(不包含数值 很重要！)\n\nside column: 这个你要结合实际，Akkadian 其实有很多载体，最主要的就是泥板(tablet),然后泥板的每个面都可以写东西(最主要有 Obverse  Reverse Edge Left Seal A Seal F )等等面"
            },
            {
              "id": 3387498,
              "postDate": "2026-01-07T06:25:44.950Z",
              "content": "<p>Given these split sentences, will you delete the original entire paragraph to merge the split sentences, or will you merge the split sentences directly without deleting them?</p>",
              "rawMarkdown": "Given these split sentences, will you delete the original entire paragraph to merge the split sentences, or will you merge the split sentences directly without deleting them?"
            },
            {
              "id": 3387503,
              "postDate": "2026-01-07T06:34:37.133Z",
              "content": "<p>会删除已经合并的片段，因为512token截断了句子，我们本来就是想通过句子对齐来解决这个问题</p>",
              "rawMarkdown": "会删除已经合并的片段，因为512token截断了句子，我们本来就是想通过句子对齐来解决这个问题"
            },
            {
              "id": 3387688,
              "postDate": "2026-01-07T13:23:57.280Z",
              "content": "<p>Thank you for your answer. I look forward to hearing your data processing method.</p>",
              "rawMarkdown": "Thank you for your answer. I look forward to hearing your data processing method."
            }
          ]
        }
      ]
    },
    {
      "id": 3384086,
      "postDate": "2025-12-31T13:15:59.263Z",
      "content": "<p>\"Shortened and aligned the 14 sentences with length exceeding 512, resulting in a total of 1595 pieces of data\"</p>\n<p>How is this implemented?</p>",
      "rawMarkdown": "\"Shortened and aligned the 14 sentences with length exceeding 512, resulting in a total of 1595 pieces of data\"\n\nHow is this implemented?",
      "votes": 1,
      "replies": [
        {
          "id": 3384090,
          "postDate": "2025-12-31T13:24:53.500Z",
          "content": "<p>I implemented this manually. Although the organizer released the file <strong>Sentences_Oare_FirstWord_LinNum.csv</strong>, I noticed that the truncation logic does not seem to include numeric characters, which prevented me from truncating sentences accurately. (It is also possible that I misunderstood the usage instructions.) Therefore, I manually truncated the <strong>translation and transliteration</strong> columns with content length exceeding 512 to achieve sentence-level alignment. This process also helped me gain a better understanding of Akkadian. </p>\n<p>The current 0.5-point improvement has boosted my confidence significantly. My next task will likely be to further optimize sentence alignment. Given my lack of computing resources and reliance on Kaggle's GPU, a <strong>512 token limit</strong> is currently the optimal choice.:)</p>",
          "rawMarkdown": "I implemented this manually. Although the organizer released the file **Sentences_Oare_FirstWord_LinNum.csv**, I noticed that the truncation logic does not seem to include numeric characters, which prevented me from truncating sentences accurately. (It is also possible that I misunderstood the usage instructions.) Therefore, I manually truncated the **translation and transliteration** columns with content length exceeding 512 to achieve sentence-level alignment. This process also helped me gain a better understanding of Akkadian. \n\nThe current 0.5-point improvement has boosted my confidence significantly. My next task will likely be to further optimize sentence alignment. Given my lack of computing resources and reliance on Kaggle's GPU, a **512 token limit** is currently the optimal choice.:)",
          "votes": 2,
          "replies": [
            {
              "id": 3384092,
              "postDate": "2025-12-31T13:29:23.237Z",
              "content": "<p>Thank you. I'm also studying Sentences_Oare_FirstWord_LinNum.csv and have made some attempts, but the LB  has dropped. I need to take another look.</p>",
              "rawMarkdown": "Thank you. I'm also studying Sentences_Oare_FirstWord_LinNum.csv and have made some attempts, but the LB  has dropped. I need to take another look.",
              "votes": 1
            },
            {
              "id": 3384127,
              "postDate": "2025-12-31T14:59:04.917Z",
              "content": "<p>Same here 😅 it'll be worth it to figure out though</p>",
              "rawMarkdown": "Same here 😅 it'll be worth it to figure out though",
              "votes": 1
            }
          ]
        }
      ]
    },
    {
      "id": 3391741,
      "postDate": "2026-01-15T15:30:13.357Z",
      "content": "<p>想问下，连词符号应该去掉吗？例如A-mur-{d}UTU 转换成Amur D UTU 或 Amur DUTU ？  看到你之前清洗后的数据还是包含连词符的，官方给的描述还是比较含糊的😅</p>",
      "rawMarkdown": "想问下，连词符号应该去掉吗？例如A-mur-{d}UTU 转换成Amur D UTU 或 Amur DUTU ？  看到你之前清洗后的数据还是包含连词符的，官方给的描述还是比较含糊的😅",
      "votes": -2,
      "replies": [
        {
          "id": 3391781,
          "postDate": "2026-01-15T16:52:28.580Z",
          "content": "<p>不能去掉，完全不可以，需要处理的主要是转换为gap和big_gap,以及浮点数字从0.3333到⅓这样，没有任何/,然后是罗马数字变为阿拉伯数值 X-&gt;10,还有就是限定词，transliteration列的()转为{},其他的标点符号就看你自己个人了，目前没有统一的方法，你可以融合几个不同训练数据的模型，来弥补这些差异，至少现在公开的code，就是这样，竟然达到了34.2。所以保留你的A-mur-{d}UTU，现在就是最完美的样子了</p>",
          "rawMarkdown": "不能去掉，完全不可以，需要处理的主要是转换为gap和big_gap,以及浮点数字从0.3333到⅓这样，没有任何/,然后是罗马数字变为阿拉伯数值 X->10,还有就是限定词，transliteration列的()转为{},其他的标点符号就看你自己个人了，目前没有统一的方法，你可以融合几个不同训练数据的模型，来弥补这些差异，至少现在公开的code，就是这样，竟然达到了34.2。所以保留你的A-mur-{d}UTU，现在就是最完美的样子了"
        }
      ]
    },
    {
      "id": 3388612,
      "postDate": "2026-01-09T08:37:02.300Z",
      "content": "<p>Your 33.0 LB is really great. I believe 33.0 is definitely not your limit. Currently, I haven't made any significant breakthroughs in sentence alignment. I'll study it some more.</p>",
      "rawMarkdown": "Your 33.0 LB is really great. I believe 33.0 is definitely not your limit. Currently, I haven't made any significant breakthroughs in sentence alignment. I'll study it some more.",
      "replies": [
        {
          "id": 3388614,
          "postDate": "2026-01-09T08:41:24.703Z",
          "content": "<p>Aligning documents with a length of over 512 characters should only serve to expand vocabulary. For score improvement, it is still necessary to truncate the corresponding erroneous sentences in the transliteration and translation columns. These errors can be easily identified using the ratio metric. Thank you for your response.:)</p>",
          "rawMarkdown": "Aligning documents with a length of over 512 characters should only serve to expand vocabulary. For score improvement, it is still necessary to truncate the corresponding erroneous sentences in the transliteration and translation columns. These errors can be easily identified using the ratio metric. Thank you for your response.:)",
          "replies": [
            {
              "id": 3388632,
              "postDate": "2026-01-09T09:30:01.103Z",
              "content": "<p><img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F15950992%2F60952875d5fd642a0469db8e4bf78715%2F_1767950967720.png?generation=1767950992032498&amp;alt=media\" alt=\"\">\nYes, I found that many character lengths didn't match. I thought it was because my character segmentation wasn't good enough, haha, turns out that just deleting those characters solved the problem.</p>",
              "rawMarkdown": "![](https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F15950992%2F60952875d5fd642a0469db8e4bf78715%2F_1767950967720.png?generation=1767950992032498&alt=media)\nYes, I found that many character lengths didn't match. I thought it was because my character segmentation wasn't good enough, haha, turns out that just deleting those characters solved the problem.",
              "votes": 2
            },
            {
              "id": 3388635,
              "postDate": "2026-01-09T09:34:59.440Z",
              "content": "<p>Some transliterations or translations are truncated and don't match. I made <a href=\"https://www.kaggle.com/code/angantyr/deep-past-2025-1st-word-in-sentence-idx-analysis#Transliterations-from-train.csv-are-too-short\" target=\"_blank\">a list of the transliteration OARE IDs along with a short analysis</a> based on the texts covering <code>train.csv</code> and <code>Sentences_Oare_FirstWord_LinNum.csv</code>.</p>",
              "rawMarkdown": "Some transliterations or translations are truncated and don't match. I made [a list of the transliteration OARE IDs along with a short analysis](https://www.kaggle.com/code/angantyr/deep-past-2025-1st-word-in-sentence-idx-analysis#Transliterations-from-train.csv-are-too-short) based on the texts covering `train.csv` and `Sentences_Oare_FirstWord_LinNum.csv`.",
              "votes": 2
            },
            {
              "id": 3388637,
              "postDate": "2026-01-09T09:36:48.443Z",
              "content": "<p>Yes, direct deletion is the fastest method. However, attempting truncation allows us to retain a great deal of semantic information.</p>",
              "rawMarkdown": "Yes, direct deletion is the fastest method. However, attempting truncation allows us to retain a great deal of semantic information."
            }
          ]
        }
      ]
    },
    {
      "id": 3387147,
      "postDate": "2026-01-06T13:01:23.450Z",
      "content": "<p>i think mayby domain in test very difference train set and format text diff. i trained model by sentence level. i sentence alignment 8000 sentence can more gm in val set so high (train 80% val 20%) but submit get score 30\n<img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F7898876%2F16aa65f73e09534bc99dec8122b5529e%2FScreenshot%202026-01-06%20200055.png?generation=1767704476286546&amp;alt=media\" alt=\"\"></p>",
      "rawMarkdown": "i think mayby domain in test very difference train set and format text diff. i trained model by sentence level. i sentence alignment 8000 sentence can more gm in val set so high (train 80% val 20%) but submit get score 30\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F7898876%2F16aa65f73e09534bc99dec8122b5529e%2FScreenshot%202026-01-06%20200055.png?generation=1767704476286546&alt=media)",
      "replies": [
        {
          "id": 3387149,
          "postDate": "2026-01-06T13:03:54.767Z",
          "content": "<p>My situation is similar to yours; my score is 31.6.</p>",
          "rawMarkdown": "My situation is similar to yours; my score is 31.6.",
          "replies": [
            {
              "id": 3387156,
              "postDate": "2026-01-06T13:07:24.090Z",
              "content": "<p>i think preprocess and postprocess more important than model </p>",
              "rawMarkdown": "i think preprocess and postprocess more important than model "
            },
            {
              "id": 3387157,
              "postDate": "2026-01-06T13:09:34.337Z",
              "content": "<p>i think we should try to be as close to the hidden test set format as possible and denoise it. maybe can get more gm score. but idk what i should do.</p>",
              "rawMarkdown": "i think we should try to be as close to the hidden test set format as possible and denoise it. maybe can get more gm score. but idk what i should do."
            },
            {
              "id": 3387182,
              "postDate": "2026-01-06T14:10:18.403Z",
              "content": "<p>Haha, this competition has become a challenge of understanding and processing data, and has little to do with the model.</p>",
              "rawMarkdown": "Haha, this competition has become a challenge of understanding and processing data, and has little to do with the model.",
              "votes": 4
            },
            {
              "id": 3406413,
              "postDate": "2026-02-15T15:46:21.130Z",
              "content": "<p>Ya 💯 Seems s as of now</p>",
              "rawMarkdown": "Ya 💯 Seems s as of now"
            }
          ]
        }
      ]
    },
    {
      "id": 3383333,
      "postDate": "2025-12-29T22:33:19.503Z",
      "content": "<p><a href=\"https://www.kaggle.com/qifeihhh666\" target=\"_blank\">@qifeihhh666</a> what is the rationale of replacing all instances of … [x], x, etc. in the transliteration column only and not in the translation column as well? </p>",
      "rawMarkdown": "@qifeihhh666 what is the rationale of replacing all instances of ... [x], x, etc. in the transliteration column only and not in the translation column as well? ",
      "replies": [
        {
          "id": 3383395,
          "postDate": "2025-12-30T02:32:18.573Z",
          "content": "<p>The translation column needs to be converted into<code>&lt;gap&gt;&lt;big_gap&gt;</code></p>",
          "rawMarkdown": "The translation column needs to be converted into` <gap><big_gap>`\n",
          "replies": [
            {
              "id": 3397014,
              "postDate": "2026-01-26T09:42:10.880Z",
              "content": "<p><a href=\"https://www.kaggle.com/qifeihhh666\" target=\"_blank\">@qifeihhh666</a> Yes, I get that the translation needs to be converted to &lt;gap&gt; and &lt;big_gap&gt;. However, if I understood correctly, you are predicting translations with x, [x], .. (i.e. without &lt;gap&gt; and &lt;big_gap&gt;) and then as a post-processing step, you are converting the predictions with x, [x], … to &lt;gap&gt; and &lt;big_gap&gt; (am I right?).</p>\n<p>I wonder why one would do this as a post-processing step. Why not just clean the transliteration and translation before training in the first place? Is there some logic behind that?</p>",
              "rawMarkdown": "@qifeihhh666 Yes, I get that the translation needs to be converted to \\<gap> and \\<big_gap>. However, if I understood correctly, you are predicting translations with x, [x], .. (i.e. without \\<gap> and \\<big_gap>) and then as a post-processing step, you are converting the predictions with x, [x], ... to \\<gap> and \\<big_gap> (am I right?).\n\nI wonder why one would do this as a post-processing step. Why not just clean the transliteration and translation before training in the first place? Is there some logic behind that?",
              "votes": 1
            },
            {
              "id": 3397264,
              "postDate": "2026-01-26T20:28:02.700Z",
              "rawMarkdown": "",
              "isDeleted": true
            },
            {
              "id": 3397265,
              "postDate": "2026-01-26T20:28:16.203Z",
              "content": "<p>That was the case at the very beginning, but it’s totally different now, ever since the score of 31.3.</p>",
              "rawMarkdown": "That was the case at the very beginning, but it’s totally different now, ever since the score of 31.3."
            }
          ]
        }
      ]
    },
    {
      "id": 3383317,
      "postDate": "2025-12-29T21:08:07.927Z",
      "content": "<p>It's strange i tried this and dropped to from 28.3 to 27.6 I wonder what I did wrong</p>",
      "rawMarkdown": "It's strange i tried this and dropped to from 28.3 to 27.6 I wonder what I did wrong",
      "replies": [
        {
          "id": 3383396,
          "postDate": "2025-12-30T02:33:50.177Z",
          "content": "<p>The translation column needs to be converted into <code>&lt;gap&gt;&lt;big_gap&gt;</code></p>",
          "rawMarkdown": "The translation column needs to be converted into `<gap><big_gap>`",
          "replies": [
            {
              "id": 3383491,
              "postDate": "2025-12-30T09:26:06.420Z",
              "content": "<p>Strange I did this though I did it for both the translation and transliteration.</p>\n<p>Then based on your comment in another notebook i did only the transliteration. </p>\n<p>Neither work for me I really wonder what i'm missing.</p>\n<pre><code>def replace_gaps(text):\n    if pd.isna(text): \n        return text\n\n    text = re.sub(r'\\[\\.{3}(?:\\s+\\.{3})+\\]\\s+\\.{3}(?:\\s+\\.{3})+', '&lt;big_gap&gt;', text)\n    text = re.sub(r'\\[\\.{3}(?:\\s+\\.{3})+\\]', '&lt;big_gap&gt;', text)\n    text = re.sub(r'\\.{3}(?:\\s+\\.{3})+', '&lt;big_gap&gt;', text)\n\n    text = re.sub(r'\\[x\\]', '&lt;gap&gt;', text)\n    text = re.sub(r' x ', ' &lt;gap&gt; ', text)\n    text = re.sub(r'\\[…\\]', '&lt;big_gap&gt;', text)\n    text = re.sub(r'\\[\\.\\.\\.\\]', '&lt;big_gap&gt;', text)\n    text = re.sub(r'…', '&lt;big_gap&gt;', text)\n    text = re.sub(r'\\.\\.\\.', '&lt;big_gap&gt;', text)\n\n    return text\n\n train_expanded = simple_sentence_aligner(train_df)\n\n train_expanded['transliteration'] = train_expanded['transliteration'].apply(lambda x:replace_gaps(x))\n#train_expanded['translation'] = train_expanded['translation'].apply(lambda x:replace_gaps(x))\n\n train_expanded.head()\n</code></pre>",
              "rawMarkdown": "Strange I did this though I did it for both the translation and transliteration.\n\nThen based on your comment in another notebook i did only the transliteration. \n\nNeither work for me I really wonder what i'm missing.\n\n```\ndef replace_gaps(text):\n    if pd.isna(text): \n        return text\n    \n    text = re.sub(r'\\[\\.{3}(?:\\s+\\.{3})+\\]\\s+\\.{3}(?:\\s+\\.{3})+', '<big_gap>', text)\n    text = re.sub(r'\\[\\.{3}(?:\\s+\\.{3})+\\]', '<big_gap>', text)\n    text = re.sub(r'\\.{3}(?:\\s+\\.{3})+', '<big_gap>', text)\n\n    text = re.sub(r'\\[x\\]', '<gap>', text)\n    text = re.sub(r' x ', ' <gap> ', text)\n    text = re.sub(r'\\[…\\]', '<big_gap>', text)\n    text = re.sub(r'\\[\\.\\.\\.\\]', '<big_gap>', text)\n    text = re.sub(r'…', '<big_gap>', text)\n    text = re.sub(r'\\.\\.\\.', '<big_gap>', text)\n\n    return text\n\n train_expanded = simple_sentence_aligner(train_df)\n\n train_expanded['transliteration'] = train_expanded['transliteration'].apply(lambda x:replace_gaps(x))\n#train_expanded['translation'] = train_expanded['translation'].apply(lambda x:replace_gaps(x))\n\n train_expanded.head()\n```",
              "votes": 1
            },
            {
              "id": 3383494,
              "postDate": "2025-12-30T09:33:07.520Z",
              "content": "<p>You're doing the right thing. When I used this code on Kaggle, I found the results inconsistent with those processed on my local machine. I first completed the processing locally and double-checked all formatting details like x, xx… […], and everything was perfect. So I recommend processing on your local machine as it’s easier to verify. I’ll publish the 31.3 train.csv dataset shortly, and you can compare the differences with your processed version.good luck</p>",
              "rawMarkdown": "You're doing the right thing. When I used this code on Kaggle, I found the results inconsistent with those processed on my local machine. I first completed the processing locally and double-checked all formatting details like x, xx... [...], and everything was perfect. So I recommend processing on your local machine as it’s easier to verify. I’ll publish the 31.3 train.csv dataset shortly, and you can compare the differences with your processed version.good luck"
            },
            {
              "id": 3383496,
              "postDate": "2025-12-30T09:36:09.197Z",
              "content": "<p>This is the dataset I used for training.<a href=\"https://www.kaggle.com/datasets/qifeihhh666/train-gap-all-1\" target=\"_blank\">train data</a></p>",
              "rawMarkdown": "This is the dataset I used for training.[train data](https://www.kaggle.com/datasets/qifeihhh666/train-gap-all-1)",
              "votes": 2
            },
            {
              "id": 3383501,
              "postDate": "2025-12-30T09:46:19.250Z",
              "content": "<p>[3510/3510 1:22:44, Epoch 10/10]</p>\n<table>\n<thead>\n<tr>\n<th>Epoch</th>\n<th>Training Loss</th>\n<th>Validation Loss</th>\n<th>Chrf</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>1</td>\n<td>0.786000</td>\n<td>0.640140</td>\n<td>4.082023</td>\n</tr>\n<tr>\n<td>2</td>\n<td>0.616300</td>\n<td>0.551597</td>\n<td>4.468811</td>\n</tr>\n<tr>\n<td>3</td>\n<td>0.536500</td>\n<td>0.497410</td>\n<td>4.932824</td>\n</tr>\n<tr>\n<td>4</td>\n<td>0.456200</td>\n<td>0.455575</td>\n<td>5.027439</td>\n</tr>\n<tr>\n<td>5</td>\n<td>0.397200</td>\n<td>0.426659</td>\n<td>5.080146</td>\n</tr>\n<tr>\n<td>6</td>\n<td>0.353600</td>\n<td>0.415668</td>\n<td>5.103130</td>\n</tr>\n<tr>\n<td>7</td>\n<td>0.332700</td>\n<td>0.410799</td>\n<td>5.150165</td>\n</tr>\n<tr>\n<td>8</td>\n<td>0.312800</td>\n<td>0.409823</td>\n<td>5.140119</td>\n</tr>\n<tr>\n<td>9</td>\n<td>0.294000</td>\n<td>0.410092</td>\n<td>5.141407</td>\n</tr>\n<tr>\n<td>10</td>\n<td>0.287300</td>\n<td>0.410267</td>\n<td>5.161873</td>\n</tr>\n</tbody>\n</table>",
              "rawMarkdown": " [3510/3510 1:22:44, Epoch 10/10]\n|  Epoch| Training Loss |Validation Loss|Chrf|\n| --- | --- |\n|1|0.786000|0.640140|4.082023|\n2|0.616300|0.551597|4.468811\n3|0.536500|0.497410|4.932824\n4|0.456200|0.455575|5.027439\n5|0.397200|0.426659|5.080146\n6|0.353600|0.415668|5.103130\n7|0.332700|0.410799|5.150165\n8|0.312800|0.409823|5.140119\n9|0.294000|0.410092|5.141407\n10|0.287300|0.410267|5.161873"
            },
            {
              "id": 3383523,
              "postDate": "2025-12-30T10:35:07.780Z",
              "content": "<p>I appreciate all the support and advice here i'll give that a try now by the way one thing i noticed in your training notebook. I'm not sure the simple_sentence_aligner is doing anything I get the same number of rows before and after running it after i get this gap trick to work I plan to pivot to alignment.</p>",
              "rawMarkdown": "I appreciate all the support and advice here i'll give that a try now by the way one thing i noticed in your training notebook. I'm not sure the simple_sentence_aligner is doing anything I get the same number of rows before and after running it after i get this gap trick to work I plan to pivot to alignment.",
              "votes": 3
            },
            {
              "id": 3383530,
              "postDate": "2025-12-30T10:44:59.970Z",
              "content": "<p>Yes, because the final test.csv is in a sentence-aligned format, rather than the document-level alignment used in the current train.csv. Meanwhile, the maximum input length of the model being trained is 512, which results in truncation of a large amount of training data. Converting document-level data into sentence-level alignment is a crucial method to boost performance in subsequent experiments.</p>\n<p>This is also one of the sources for supplementing data.</p>",
              "rawMarkdown": "Yes, because the final test.csv is in a sentence-aligned format, rather than the document-level alignment used in the current train.csv. Meanwhile, the maximum input length of the model being trained is 512, which results in truncation of a large amount of training data. Converting document-level data into sentence-level alignment is a crucial method to boost performance in subsequent experiments.\n\n\nThis is also one of the sources for supplementing data.\n ",
              "votes": 4
            },
            {
              "id": 3383781,
              "postDate": "2025-12-30T20:24:57.683Z",
              "content": "<p>Good news i trained on the set you provided and it worked I'm now at 31.1. I'm transitioning to work on the sentence alignment challenge I have some ideas of how to do this if I am able to make progress I will share with you the segmented sentence pairs.</p>",
              "rawMarkdown": "Good news i trained on the set you provided and it worked I'm now at 31.1. I'm transitioning to work on the sentence alignment challenge I have some ideas of how to do this if I am able to make progress I will share with you the segmented sentence pairs.",
              "votes": 2
            },
            {
              "id": 3383786,
              "postDate": "2025-12-30T20:36:44.053Z",
              "content": "<p>Congratulations! Yes, At the begining I try sentence alignment, but the results were unsatisfactory (probably because the format hasn't been properly adjusted). So I've been following up on the discussion to fix the formatting issues continuously.Through these days' efforts, tomorrow I'll retry the sentence-aligned dataset with the corrected format conversion. Good luck!</p>",
              "rawMarkdown": "Congratulations! Yes, At the begining I try sentence alignment, but the results were unsatisfactory (probably because the format hasn't been properly adjusted). So I've been following up on the discussion to fix the formatting issues continuously.Through these days' efforts, tomorrow I'll retry the sentence-aligned dataset with the corrected format conversion. Good luck!"
            },
            {
              "id": 3383960,
              "postDate": "2025-12-31T07:36:00.887Z",
              "content": "<p>I'm doing the same job as you.</p>",
              "rawMarkdown": "I'm doing the same job as you.",
              "votes": 1
            },
            {
              "id": 3384038,
              "postDate": "2025-12-31T11:02:11.497Z",
              "content": "<p>Something amazing—I did maybe exactly these things and got an LB score of 31.5.lol</p>",
              "rawMarkdown": "Something amazing—I did maybe exactly these things and got an LB score of 31.5.lol"
            },
            {
              "id": 3384061,
              "postDate": "2025-12-31T12:06:14.023Z",
              "content": "<p>Congratulations!</p>",
              "rawMarkdown": "Congratulations!"
            },
            {
              "id": 3384309,
              "postDate": "2026-01-01T00:22:57.560Z",
              "content": "<p>I digged into the issue <a href=\"https://www.kaggle.com/einherjer\" target=\"_blank\">@einherjer</a> posted earlier: <a href=\"https://www.kaggle.com/competitions/deep-past-initiative-machine-translation/discussion/664177#3383842\" target=\"_blank\">https://www.kaggle.com/competitions/deep-past-initiative-machine-translation/discussion/664177#3383842</a></p>\n<p>There's a portion of texts where <code>(2 broken lines)</code> string is clearly counted as <code>x x x</code> instead of <code>...</code>. I'm guessing that if the problem is present in <code>Sentences_Oare_FirstWord_LinNum.csv</code> and in the <code>hidden test</code> then taking that into account could boost the score a bit further (at least until the issue is resolved :D).</p>",
              "rawMarkdown": "I digged into the issue @einherjer posted earlier: https://www.kaggle.com/competitions/deep-past-initiative-machine-translation/discussion/664177#3383842\n\nThere's a portion of texts where `(2 broken lines)` string is clearly counted as `x x x` instead of `...`. I'm guessing that if the problem is present in `Sentences_Oare_FirstWord_LinNum.csv` and in the `hidden test` then taking that into account could boost the score a bit further (at least until the issue is resolved :D).",
              "votes": 1
            },
            {
              "id": 3384522,
              "postDate": "2026-01-01T12:50:08.657Z",
              "content": "<p>Can I ask you how to deal with the oare_id ?</p>",
              "rawMarkdown": "Can I ask you how to deal with the oare_id ?"
            },
            {
              "id": 3384597,
              "postDate": "2026-01-01T15:09:27.940Z",
              "content": "<p><a href=\"https://www.kaggle.com/ilanwang\" target=\"_blank\">@ilanwang</a> What do you mean by \"dealing with the oare_id\"?</p>",
              "rawMarkdown": "@ilanwang What do you mean by \"dealing with the oare_id\"?"
            },
            {
              "id": 3384636,
              "postDate": "2026-01-01T16:29:13.433Z",
              "content": "<p>I convert any <code>broken lines</code> and <code>large break</code> to <code>&lt;big_gap&gt;</code>.</p>",
              "rawMarkdown": "I convert any `broken lines` and `large break` to `<big_gap>`.",
              "votes": 1
            },
            {
              "id": 3386394,
              "postDate": "2026-01-05T08:03:10.343Z",
              "content": "<p>Thanks so much for your share, would you like to show how to preprocess this training data especally replace progress</p>",
              "rawMarkdown": "Thanks so much for your share, would you like to show how to preprocess this training data especally replace progress"
            },
            {
              "id": 3386580,
              "postDate": "2026-01-05T14:35:12.690Z",
              "content": "<p>我目前还卡在32.3，应该是格式还有很多错的，我一直在修改，你可以先看看别人和主办方给的归一化建议，等我完善我的归一化格式之后再分享代码。🙂</p>",
              "rawMarkdown": "我目前还卡在32.3，应该是格式还有很多错的，我一直在修改，你可以先看看别人和主办方给的归一化建议，等我完善我的归一化格式之后再分享代码。🙂"
            },
            {
              "id": 3386954,
              "postDate": "2026-01-06T06:19:39.200Z",
              "content": "<p>感谢 大佬 回复 很硬核的分享</p>",
              "rawMarkdown": "感谢 大佬 回复 很硬核的分享"
            }
          ]
        }
      ]
    },
    {
      "id": 3385430,
      "postDate": "2026-01-03T09:30:58.350Z",
      "rawMarkdown": "",
      "votes": 1,
      "isDeleted": true,
      "replies": [
        {
          "id": 3385432,
          "postDate": "2026-01-03T09:33:21.257Z",
          "content": "<p>The <code>oare_id</code> from the <code>train.csv</code> matches the <code>text_uuid</code> from the <code>Sentences_Oare_FirstWord_LinNum.csv</code>.</p>",
          "rawMarkdown": "The `oare_id` from the `train.csv` matches the `text_uuid` from the `Sentences_Oare_FirstWord_LinNum.csv`.",
          "votes": 4
        },
        {
          "id": 3385436,
          "postDate": "2026-01-03T09:59:10.080Z",
          "content": "<p>The <code>oare_id</code> from the train.csv matches the <code>text_uuid</code> from the Sentences_Oare_FirstWord_LinNum.csv.</p>",
          "rawMarkdown": "The `oare_id` from the train.csv matches the `text_uuid` from the Sentences_Oare_FirstWord_LinNum.csv.",
          "votes": 2,
          "replies": [
            {
              "id": 3385440,
              "postDate": "2026-01-03T10:13:33.113Z",
              "content": "<p>I got it! Thank you very much!</p>",
              "rawMarkdown": "I got it! Thank you very much!",
              "votes": 1
            }
          ]
        }
      ]
    }
  ],
  "comments": [
    {
      "id": 3406412,
      "author_name": "Gaurav Rawat",
      "author_url": "",
      "post_date": "2026-02-15T15:45:16.203000",
      "content": "<p>I dunno got me batch size has been funny in lower recording better cv than big .. trying to figure out the reason why :( and smaller models working better so far</p>",
      "votes": 1,
      "replies": [
        {
          "id": 3406455,
          "author_name": "耶✌",
          "author_url": "",
          "post_date": "2026-02-15T16:45:52.883000",
          "content": "<p>It actually doesn’t have much to do with the batch size. The main issue is that the data has a lot of truncation and inconsistency, which leads to large score fluctuations. So standardizing the data well is the key to this competition.good luck.</p>",
          "votes": 1,
          "replies": [
            {
              "id": 3406472,
              "author_name": "Gaurav Rawat",
              "author_url": "",
              "post_date": "2026-02-15T17:40:39.713000",
              "content": "<p>Thanks ya but run same seed diff batch size also seeing this but ya think you are right .. larger models also on same pipes give different results was stranger </p>",
              "votes": 1,
              "replies": []
            }
          ]
        }
      ]
    },
    {
      "id": 3406319,
      "author_name": "YShunT",
      "author_url": "",
      "post_date": "2026-02-15T10:49:27.740000",
      "content": "<p>Thank you for sharing. This discussion is very helpful for me.  I'm a beginner, so please excuse my question, but why does your training strategy table only show chrF? In my own training, the BLEU score is extremely low, like 0.00… Since the final evaluation metric is the geometric mean of BLEU and chrF, is this really okay?</p>",
      "votes": 1,
      "replies": [
        {
          "id": 3406452,
          "author_name": "耶✌",
          "author_url": "",
          "post_date": "2026-02-15T16:42:51.970000",
          "content": "<p>It doesn’t really matter much. Although this can’t directly reflect the leaderboard score, it still gives us a general idea of how the model is performing, and I think that’s sufficient for now.</p>",
          "votes": 0,
          "replies": [
            {
              "id": 3406469,
              "author_name": "YShunT",
              "author_url": "",
              "post_date": "2026-02-15T17:31:45.863000",
              "content": "<p>Thank you for your response. I have another question.\nLooking at public inference notebooks, I noticed that many people are using almost the same training models. Why is this the case?\nAlso, is it considered a best practice to take these publicly available models and fine-tune them as a starting point (pre-trained model) on a new dataset that has been pre-processed with tags like ?</p>",
              "votes": 1,
              "replies": []
            }
          ]
        }
      ]
    },
    {
      "id": 3384498,
      "author_name": "Preechanon Chatthai",
      "author_url": "",
      "post_date": "2026-01-01T11:29:40.623000",
      "content": "<p>i can ask u? what u use method for solve problems hallucination and repetition word???</p>",
      "votes": 1,
      "replies": [
        {
          "id": 3384503,
          "author_name": "耶✌",
          "author_url": "",
          "post_date": "2026-01-01T11:45:14.917000",
          "content": "<p>I haven't reached the stage of solving this problem yet. The maximum token capacity of my current code model is 512, and hallucinations tend to come with repeated words when the text length increases. I think this issue can be addressed through the following two approaches:</p>\n<ol>\n<li>Increase the token capacity, which however requires greater computing power.</li>\n<li>Truncate long sentences into smaller ones by semantic meaning for training, but it will take some time to do.</li>\n</ol>\n<p>good luck</p>",
          "votes": 0,
          "replies": [
            {
              "id": 3384601,
              "author_name": "Jack",
              "author_url": "",
              "post_date": "2026-01-01T15:16:21.260000",
              "content": "<p>How the heck are you aligning sentences to actually improve your score? I’ve spent hours going through the sentence alignment file to create sentences and manually verified everything and all it did was lower my score. </p>",
              "votes": 2,
              "replies": []
            },
            {
              "id": 3384626,
              "author_name": "耶✌",
              "author_url": "",
              "post_date": "2026-01-01T16:13:00.190000",
              "content": "<p>That's a great question, and I'll break down the answer into three points:</p>\n<ol>\n<li><p><strong>First, the sentences I’m currently processing:</strong> sentences where both the <strong>transliteration and translation</strong> columns exceed 512 characters, and their oare_id exists in <strong>Sentences_Oare_FirstWord_LinNum.csv</strong> (the critical basis for my segmentation). So far, I’ve filtered out only 94 sentences that meet the above criteria.</p></li>\n<li><p><strong>How I process these sentences:</strong> I perform truncation using the sentence start words and English translations from Sentences_Oare_FirstWord_LinNum.csv, while striving to preserve semantic integrity and avoiding truncation of single isolated sentences. Minor punctuation adjustments may be made during truncation—for example, <strong>removing or reinserting</strong> the closing quotation mark if there is no matching \" after said:\". Additionally, translations in Sentences_Oare_FirstWord_LinNum.csv may have slight discrepancies with those in train.csv, and the <strong>two datasets are complementary to each other</strong>. Ultimately, the only requirement is that the truncated length does not exceed 512 characters, as I aim to avoid losing semantic information of the entire passage.</p></li>\n<li><p><strong>On score improvement:</strong>  I remain somewhat skeptical here. Although truncating sentences alone boosted my score by 0.5, my random seed is still set to <strong>42</strong>. As the total number of rows in train.csv increases, the split results for the validation and training sets will change. This may cause the model to train on and learn new content, which could be the actual reason for the score increase.</p></li>\n</ol>\n<p><strong>Conclusion</strong>: I will continue aligning partial sentences and monitor the LB score. A significant LB score improvement will confirm the effectiveness of this approach. In fact, with the current token limit of 512, a large volume of <strong>data is undoubtedly omitted</strong>. Sentence alignment should yield certain benefits, but it requires meticulous execution (there is no definitive rule for this task).Hope this helps you.</p>",
              "votes": 2,
              "replies": []
            },
            {
              "id": 3384642,
              "author_name": "Jack",
              "author_url": "",
              "post_date": "2026-01-01T16:41:05.540000",
              "content": "<p>Want to check my sentence alignment results from my programmatic + manual approach with what you've got? </p>",
              "votes": 0,
              "replies": []
            },
            {
              "id": 3384653,
              "author_name": "耶✌",
              "author_url": "",
              "post_date": "2026-01-01T16:48:58.587000",
              "content": "<p>You can share you data,public</p>",
              "votes": 0,
              "replies": []
            },
            {
              "id": 3386982,
              "author_name": "QianYuu",
              "author_url": "",
              "post_date": "2026-01-06T07:03:08.987000",
              "content": "<p>Hello, I have a question. Does your statement that the length exceeds 512 refer to the length of the characters themselves, or the length after space splitting (len(xxx.split(\" \"))))?</p>",
              "votes": 0,
              "replies": []
            },
            {
              "id": 3386986,
              "author_name": "耶✌",
              "author_url": "",
              "post_date": "2026-01-06T07:08:06.397000",
              "content": "<p>没有经过任何处理，是原始的长度，包含了<code>\" \"</code></p>",
              "votes": 0,
              "replies": []
            },
            {
              "id": 3387039,
              "author_name": "QianYuu",
              "author_url": "",
              "post_date": "2026-01-06T09:08:35.570000",
              "content": "<p>Thank you. Could you please explain your understanding of the <code>first_word_number</code>, <code>first_word_obj_in_text</code>, <code>line_number</code>, and <code>side column</code> fields?</p>",
              "votes": 2,
              "replies": []
            },
            {
              "id": 3387139,
              "author_name": "耶✌",
              "author_url": "",
              "post_date": "2026-01-06T12:49:24.423000",
              "content": "<p>我目前认为比较好理解的是first_word_number和side column。</p>\n<p>first_word_number: 就是这个单词是这一段话里的第几个词(不包含数值 很重要！)</p>\n<p>side column: 这个你要结合实际，Akkadian 其实有很多载体，最主要的就是泥板(tablet),然后泥板的每个面都可以写东西(最主要有 Obverse  Reverse Edge Left Seal A Seal F )等等面</p>",
              "votes": 0,
              "replies": []
            },
            {
              "id": 3387498,
              "author_name": "QianYuu",
              "author_url": "",
              "post_date": "2026-01-07T06:25:44.950000",
              "content": "<p>Given these split sentences, will you delete the original entire paragraph to merge the split sentences, or will you merge the split sentences directly without deleting them?</p>",
              "votes": 0,
              "replies": []
            },
            {
              "id": 3387503,
              "author_name": "耶✌",
              "author_url": "",
              "post_date": "2026-01-07T06:34:37.133000",
              "content": "<p>会删除已经合并的片段，因为512token截断了句子，我们本来就是想通过句子对齐来解决这个问题</p>",
              "votes": 0,
              "replies": []
            },
            {
              "id": 3387688,
              "author_name": "QianYuu",
              "author_url": "",
              "post_date": "2026-01-07T13:23:57.280000",
              "content": "<p>Thank you for your answer. I look forward to hearing your data processing method.</p>",
              "votes": 0,
              "replies": []
            }
          ]
        }
      ]
    },
    {
      "id": 3384086,
      "author_name": "QianYuu",
      "author_url": "",
      "post_date": "2025-12-31T13:15:59.263000",
      "content": "<p>\"Shortened and aligned the 14 sentences with length exceeding 512, resulting in a total of 1595 pieces of data\"</p>\n<p>How is this implemented?</p>",
      "votes": 1,
      "replies": [
        {
          "id": 3384090,
          "author_name": "耶✌",
          "author_url": "",
          "post_date": "2025-12-31T13:24:53.500000",
          "content": "<p>I implemented this manually. Although the organizer released the file <strong>Sentences_Oare_FirstWord_LinNum.csv</strong>, I noticed that the truncation logic does not seem to include numeric characters, which prevented me from truncating sentences accurately. (It is also possible that I misunderstood the usage instructions.) Therefore, I manually truncated the <strong>translation and transliteration</strong> columns with content length exceeding 512 to achieve sentence-level alignment. This process also helped me gain a better understanding of Akkadian. </p>\n<p>The current 0.5-point improvement has boosted my confidence significantly. My next task will likely be to further optimize sentence alignment. Given my lack of computing resources and reliance on Kaggle's GPU, a <strong>512 token limit</strong> is currently the optimal choice.:)</p>",
          "votes": 2,
          "replies": [
            {
              "id": 3384092,
              "author_name": "QianYuu",
              "author_url": "",
              "post_date": "2025-12-31T13:29:23.237000",
              "content": "<p>Thank you. I'm also studying Sentences_Oare_FirstWord_LinNum.csv and have made some attempts, but the LB  has dropped. I need to take another look.</p>",
              "votes": 1,
              "replies": []
            },
            {
              "id": 3384127,
              "author_name": "Jack",
              "author_url": "",
              "post_date": "2025-12-31T14:59:04.917000",
              "content": "<p>Same here 😅 it'll be worth it to figure out though</p>",
              "votes": 1,
              "replies": []
            }
          ]
        }
      ]
    },
    {
      "id": 3391741,
      "author_name": "cswwp",
      "author_url": "",
      "post_date": "2026-01-15T15:30:13.357000",
      "content": "<p>想问下，连词符号应该去掉吗？例如A-mur-{d}UTU 转换成Amur D UTU 或 Amur DUTU ？  看到你之前清洗后的数据还是包含连词符的，官方给的描述还是比较含糊的😅</p>",
      "votes": -2,
      "replies": [
        {
          "id": 3391781,
          "author_name": "耶✌",
          "author_url": "",
          "post_date": "2026-01-15T16:52:28.580000",
          "content": "<p>不能去掉，完全不可以，需要处理的主要是转换为gap和big_gap,以及浮点数字从0.3333到⅓这样，没有任何/,然后是罗马数字变为阿拉伯数值 X-&gt;10,还有就是限定词，transliteration列的()转为{},其他的标点符号就看你自己个人了，目前没有统一的方法，你可以融合几个不同训练数据的模型，来弥补这些差异，至少现在公开的code，就是这样，竟然达到了34.2。所以保留你的A-mur-{d}UTU，现在就是最完美的样子了</p>",
          "votes": 0,
          "replies": []
        }
      ]
    },
    {
      "id": 3388612,
      "author_name": "QianYuu",
      "author_url": "",
      "post_date": "2026-01-09T08:37:02.300000",
      "content": "<p>Your 33.0 LB is really great. I believe 33.0 is definitely not your limit. Currently, I haven't made any significant breakthroughs in sentence alignment. I'll study it some more.</p>",
      "votes": 0,
      "replies": [
        {
          "id": 3388614,
          "author_name": "耶✌",
          "author_url": "",
          "post_date": "2026-01-09T08:41:24.703000",
          "content": "<p>Aligning documents with a length of over 512 characters should only serve to expand vocabulary. For score improvement, it is still necessary to truncate the corresponding erroneous sentences in the transliteration and translation columns. These errors can be easily identified using the ratio metric. Thank you for your response.:)</p>",
          "votes": 0,
          "replies": [
            {
              "id": 3388632,
              "author_name": "QianYuu",
              "author_url": "",
              "post_date": "2026-01-09T09:30:01.103000",
              "content": "<p><img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F15950992%2F60952875d5fd642a0469db8e4bf78715%2F_1767950967720.png?generation=1767950992032498&amp;alt=media\" alt=\"\">\nYes, I found that many character lengths didn't match. I thought it was because my character segmentation wasn't good enough, haha, turns out that just deleting those characters solved the problem.</p>",
              "votes": 2,
              "replies": []
            },
            {
              "id": 3388635,
              "author_name": "Angantyr",
              "author_url": "",
              "post_date": "2026-01-09T09:34:59.440000",
              "content": "<p>Some transliterations or translations are truncated and don't match. I made <a href=\"https://www.kaggle.com/code/angantyr/deep-past-2025-1st-word-in-sentence-idx-analysis#Transliterations-from-train.csv-are-too-short\" target=\"_blank\">a list of the transliteration OARE IDs along with a short analysis</a> based on the texts covering <code>train.csv</code> and <code>Sentences_Oare_FirstWord_LinNum.csv</code>.</p>",
              "votes": 2,
              "replies": []
            },
            {
              "id": 3388637,
              "author_name": "耶✌",
              "author_url": "",
              "post_date": "2026-01-09T09:36:48.443000",
              "content": "<p>Yes, direct deletion is the fastest method. However, attempting truncation allows us to retain a great deal of semantic information.</p>",
              "votes": 0,
              "replies": []
            }
          ]
        }
      ]
    },
    {
      "id": 3387147,
      "author_name": "Preechanon Chatthai",
      "author_url": "",
      "post_date": "2026-01-06T13:01:23.450000",
      "content": "<p>i think mayby domain in test very difference train set and format text diff. i trained model by sentence level. i sentence alignment 8000 sentence can more gm in val set so high (train 80% val 20%) but submit get score 30\n<img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F7898876%2F16aa65f73e09534bc99dec8122b5529e%2FScreenshot%202026-01-06%20200055.png?generation=1767704476286546&amp;alt=media\" alt=\"\"></p>",
      "votes": 0,
      "replies": [
        {
          "id": 3387149,
          "author_name": "QianYuu",
          "author_url": "",
          "post_date": "2026-01-06T13:03:54.767000",
          "content": "<p>My situation is similar to yours; my score is 31.6.</p>",
          "votes": 0,
          "replies": [
            {
              "id": 3387156,
              "author_name": "Preechanon Chatthai",
              "author_url": "",
              "post_date": "2026-01-06T13:07:24.090000",
              "content": "<p>i think preprocess and postprocess more important than model </p>",
              "votes": 0,
              "replies": []
            },
            {
              "id": 3387157,
              "author_name": "Preechanon Chatthai",
              "author_url": "",
              "post_date": "2026-01-06T13:09:34.337000",
              "content": "<p>i think we should try to be as close to the hidden test set format as possible and denoise it. maybe can get more gm score. but idk what i should do.</p>",
              "votes": 0,
              "replies": []
            },
            {
              "id": 3387182,
              "author_name": "QianYuu",
              "author_url": "",
              "post_date": "2026-01-06T14:10:18.403000",
              "content": "<p>Haha, this competition has become a challenge of understanding and processing data, and has little to do with the model.</p>",
              "votes": 4,
              "replies": []
            },
            {
              "id": 3406413,
              "author_name": "Gaurav Rawat",
              "author_url": "",
              "post_date": "2026-02-15T15:46:21.130000",
              "content": "<p>Ya 💯 Seems s as of now</p>",
              "votes": 0,
              "replies": []
            }
          ]
        }
      ]
    },
    {
      "id": 3383333,
      "author_name": "einherjer",
      "author_url": "",
      "post_date": "2025-12-29T22:33:19.503000",
      "content": "<p><a href=\"https://www.kaggle.com/qifeihhh666\" target=\"_blank\">@qifeihhh666</a> what is the rationale of replacing all instances of … [x], x, etc. in the transliteration column only and not in the translation column as well? </p>",
      "votes": 0,
      "replies": [
        {
          "id": 3383395,
          "author_name": "耶✌",
          "author_url": "",
          "post_date": "2025-12-30T02:32:18.573000",
          "content": "<p>The translation column needs to be converted into<code>&lt;gap&gt;&lt;big_gap&gt;</code></p>",
          "votes": 0,
          "replies": [
            {
              "id": 3397014,
              "author_name": "einherjer",
              "author_url": "",
              "post_date": "2026-01-26T09:42:10.880000",
              "content": "<p><a href=\"https://www.kaggle.com/qifeihhh666\" target=\"_blank\">@qifeihhh666</a> Yes, I get that the translation needs to be converted to &lt;gap&gt; and &lt;big_gap&gt;. However, if I understood correctly, you are predicting translations with x, [x], .. (i.e. without &lt;gap&gt; and &lt;big_gap&gt;) and then as a post-processing step, you are converting the predictions with x, [x], … to &lt;gap&gt; and &lt;big_gap&gt; (am I right?).</p>\n<p>I wonder why one would do this as a post-processing step. Why not just clean the transliteration and translation before training in the first place? Is there some logic behind that?</p>",
              "votes": 1,
              "replies": []
            },
            {
              "id": 3397264,
              "author_name": "",
              "author_url": "",
              "post_date": "2026-01-26T20:28:02.700000",
              "content": "",
              "votes": 0,
              "replies": []
            },
            {
              "id": 3397265,
              "author_name": "耶✌",
              "author_url": "",
              "post_date": "2026-01-26T20:28:16.203000",
              "content": "<p>That was the case at the very beginning, but it’s totally different now, ever since the score of 31.3.</p>",
              "votes": 0,
              "replies": []
            }
          ]
        }
      ]
    },
    {
      "id": 3383317,
      "author_name": "Aaron Bornstein",
      "author_url": "",
      "post_date": "2025-12-29T21:08:07.927000",
      "content": "<p>It's strange i tried this and dropped to from 28.3 to 27.6 I wonder what I did wrong</p>",
      "votes": 0,
      "replies": [
        {
          "id": 3383396,
          "author_name": "耶✌",
          "author_url": "",
          "post_date": "2025-12-30T02:33:50.177000",
          "content": "<p>The translation column needs to be converted into <code>&lt;gap&gt;&lt;big_gap&gt;</code></p>",
          "votes": 0,
          "replies": [
            {
              "id": 3383491,
              "author_name": "Aaron Bornstein",
              "author_url": "",
              "post_date": "2025-12-30T09:26:06.420000",
              "content": "<p>Strange I did this though I did it for both the translation and transliteration.</p>\n<p>Then based on your comment in another notebook i did only the transliteration. </p>\n<p>Neither work for me I really wonder what i'm missing.</p>\n<pre><code>def replace_gaps(text):\n    if pd.isna(text): \n        return text\n\n    text = re.sub(r'\\[\\.{3}(?:\\s+\\.{3})+\\]\\s+\\.{3}(?:\\s+\\.{3})+', '&lt;big_gap&gt;', text)\n    text = re.sub(r'\\[\\.{3}(?:\\s+\\.{3})+\\]', '&lt;big_gap&gt;', text)\n    text = re.sub(r'\\.{3}(?:\\s+\\.{3})+', '&lt;big_gap&gt;', text)\n\n    text = re.sub(r'\\[x\\]', '&lt;gap&gt;', text)\n    text = re.sub(r' x ', ' &lt;gap&gt; ', text)\n    text = re.sub(r'\\[…\\]', '&lt;big_gap&gt;', text)\n    text = re.sub(r'\\[\\.\\.\\.\\]', '&lt;big_gap&gt;', text)\n    text = re.sub(r'…', '&lt;big_gap&gt;', text)\n    text = re.sub(r'\\.\\.\\.', '&lt;big_gap&gt;', text)\n\n    return text\n\n train_expanded = simple_sentence_aligner(train_df)\n\n train_expanded['transliteration'] = train_expanded['transliteration'].apply(lambda x:replace_gaps(x))\n#train_expanded['translation'] = train_expanded['translation'].apply(lambda x:replace_gaps(x))\n\n train_expanded.head()\n</code></pre>",
              "votes": 1,
              "replies": []
            },
            {
              "id": 3383494,
              "author_name": "耶✌",
              "author_url": "",
              "post_date": "2025-12-30T09:33:07.520000",
              "content": "<p>You're doing the right thing. When I used this code on Kaggle, I found the results inconsistent with those processed on my local machine. I first completed the processing locally and double-checked all formatting details like x, xx… […], and everything was perfect. So I recommend processing on your local machine as it’s easier to verify. I’ll publish the 31.3 train.csv dataset shortly, and you can compare the differences with your processed version.good luck</p>",
              "votes": 0,
              "replies": []
            },
            {
              "id": 3383496,
              "author_name": "耶✌",
              "author_url": "",
              "post_date": "2025-12-30T09:36:09.197000",
              "content": "<p>This is the dataset I used for training.<a href=\"https://www.kaggle.com/datasets/qifeihhh666/train-gap-all-1\" target=\"_blank\">train data</a></p>",
              "votes": 2,
              "replies": []
            },
            {
              "id": 3383501,
              "author_name": "耶✌",
              "author_url": "",
              "post_date": "2025-12-30T09:46:19.250000",
              "content": "<p>[3510/3510 1:22:44, Epoch 10/10]</p>\n<table>\n<thead>\n<tr>\n<th>Epoch</th>\n<th>Training Loss</th>\n<th>Validation Loss</th>\n<th>Chrf</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>1</td>\n<td>0.786000</td>\n<td>0.640140</td>\n<td>4.082023</td>\n</tr>\n<tr>\n<td>2</td>\n<td>0.616300</td>\n<td>0.551597</td>\n<td>4.468811</td>\n</tr>\n<tr>\n<td>3</td>\n<td>0.536500</td>\n<td>0.497410</td>\n<td>4.932824</td>\n</tr>\n<tr>\n<td>4</td>\n<td>0.456200</td>\n<td>0.455575</td>\n<td>5.027439</td>\n</tr>\n<tr>\n<td>5</td>\n<td>0.397200</td>\n<td>0.426659</td>\n<td>5.080146</td>\n</tr>\n<tr>\n<td>6</td>\n<td>0.353600</td>\n<td>0.415668</td>\n<td>5.103130</td>\n</tr>\n<tr>\n<td>7</td>\n<td>0.332700</td>\n<td>0.410799</td>\n<td>5.150165</td>\n</tr>\n<tr>\n<td>8</td>\n<td>0.312800</td>\n<td>0.409823</td>\n<td>5.140119</td>\n</tr>\n<tr>\n<td>9</td>\n<td>0.294000</td>\n<td>0.410092</td>\n<td>5.141407</td>\n</tr>\n<tr>\n<td>10</td>\n<td>0.287300</td>\n<td>0.410267</td>\n<td>5.161873</td>\n</tr>\n</tbody>\n</table>",
              "votes": 0,
              "replies": []
            },
            {
              "id": 3383523,
              "author_name": "Aaron Bornstein",
              "author_url": "",
              "post_date": "2025-12-30T10:35:07.780000",
              "content": "<p>I appreciate all the support and advice here i'll give that a try now by the way one thing i noticed in your training notebook. I'm not sure the simple_sentence_aligner is doing anything I get the same number of rows before and after running it after i get this gap trick to work I plan to pivot to alignment.</p>",
              "votes": 3,
              "replies": []
            },
            {
              "id": 3383530,
              "author_name": "耶✌",
              "author_url": "",
              "post_date": "2025-12-30T10:44:59.970000",
              "content": "<p>Yes, because the final test.csv is in a sentence-aligned format, rather than the document-level alignment used in the current train.csv. Meanwhile, the maximum input length of the model being trained is 512, which results in truncation of a large amount of training data. Converting document-level data into sentence-level alignment is a crucial method to boost performance in subsequent experiments.</p>\n<p>This is also one of the sources for supplementing data.</p>",
              "votes": 4,
              "replies": []
            },
            {
              "id": 3383781,
              "author_name": "Aaron Bornstein",
              "author_url": "",
              "post_date": "2025-12-30T20:24:57.683000",
              "content": "<p>Good news i trained on the set you provided and it worked I'm now at 31.1. I'm transitioning to work on the sentence alignment challenge I have some ideas of how to do this if I am able to make progress I will share with you the segmented sentence pairs.</p>",
              "votes": 2,
              "replies": []
            },
            {
              "id": 3383786,
              "author_name": "耶✌",
              "author_url": "",
              "post_date": "2025-12-30T20:36:44.053000",
              "content": "<p>Congratulations! Yes, At the begining I try sentence alignment, but the results were unsatisfactory (probably because the format hasn't been properly adjusted). So I've been following up on the discussion to fix the formatting issues continuously.Through these days' efforts, tomorrow I'll retry the sentence-aligned dataset with the corrected format conversion. Good luck!</p>",
              "votes": 0,
              "replies": []
            },
            {
              "id": 3383960,
              "author_name": "QianYuu",
              "author_url": "",
              "post_date": "2025-12-31T07:36:00.887000",
              "content": "<p>I'm doing the same job as you.</p>",
              "votes": 1,
              "replies": []
            },
            {
              "id": 3384038,
              "author_name": "耶✌",
              "author_url": "",
              "post_date": "2025-12-31T11:02:11.497000",
              "content": "<p>Something amazing—I did maybe exactly these things and got an LB score of 31.5.lol</p>",
              "votes": 0,
              "replies": []
            },
            {
              "id": 3384061,
              "author_name": "QianYuu",
              "author_url": "",
              "post_date": "2025-12-31T12:06:14.023000",
              "content": "<p>Congratulations!</p>",
              "votes": 0,
              "replies": []
            },
            {
              "id": 3384309,
              "author_name": "Angantyr",
              "author_url": "",
              "post_date": "2026-01-01T00:22:57.560000",
              "content": "<p>I digged into the issue <a href=\"https://www.kaggle.com/einherjer\" target=\"_blank\">@einherjer</a> posted earlier: <a href=\"https://www.kaggle.com/competitions/deep-past-initiative-machine-translation/discussion/664177#3383842\" target=\"_blank\">https://www.kaggle.com/competitions/deep-past-initiative-machine-translation/discussion/664177#3383842</a></p>\n<p>There's a portion of texts where <code>(2 broken lines)</code> string is clearly counted as <code>x x x</code> instead of <code>...</code>. I'm guessing that if the problem is present in <code>Sentences_Oare_FirstWord_LinNum.csv</code> and in the <code>hidden test</code> then taking that into account could boost the score a bit further (at least until the issue is resolved :D).</p>",
              "votes": 1,
              "replies": []
            },
            {
              "id": 3384522,
              "author_name": "Carol Wang",
              "author_url": "",
              "post_date": "2026-01-01T12:50:08.657000",
              "content": "<p>Can I ask you how to deal with the oare_id ?</p>",
              "votes": 0,
              "replies": []
            },
            {
              "id": 3384597,
              "author_name": "Angantyr",
              "author_url": "",
              "post_date": "2026-01-01T15:09:27.940000",
              "content": "<p><a href=\"https://www.kaggle.com/ilanwang\" target=\"_blank\">@ilanwang</a> What do you mean by \"dealing with the oare_id\"?</p>",
              "votes": 0,
              "replies": []
            },
            {
              "id": 3384636,
              "author_name": "耶✌",
              "author_url": "",
              "post_date": "2026-01-01T16:29:13.433000",
              "content": "<p>I convert any <code>broken lines</code> and <code>large break</code> to <code>&lt;big_gap&gt;</code>.</p>",
              "votes": 1,
              "replies": []
            },
            {
              "id": 3386394,
              "author_name": "HZM",
              "author_url": "",
              "post_date": "2026-01-05T08:03:10.343000",
              "content": "<p>Thanks so much for your share, would you like to show how to preprocess this training data especally replace progress</p>",
              "votes": 0,
              "replies": []
            },
            {
              "id": 3386580,
              "author_name": "耶✌",
              "author_url": "",
              "post_date": "2026-01-05T14:35:12.690000",
              "content": "<p>我目前还卡在32.3，应该是格式还有很多错的，我一直在修改，你可以先看看别人和主办方给的归一化建议，等我完善我的归一化格式之后再分享代码。🙂</p>",
              "votes": 0,
              "replies": []
            },
            {
              "id": 3386954,
              "author_name": "HZM",
              "author_url": "",
              "post_date": "2026-01-06T06:19:39.200000",
              "content": "<p>感谢 大佬 回复 很硬核的分享</p>",
              "votes": 0,
              "replies": []
            }
          ]
        }
      ]
    },
    {
      "id": 3385430,
      "author_name": "",
      "author_url": "",
      "post_date": "2026-01-03T09:30:58.350000",
      "content": "",
      "votes": 1,
      "replies": [
        {
          "id": 3385432,
          "author_name": "Angantyr",
          "author_url": "",
          "post_date": "2026-01-03T09:33:21.257000",
          "content": "<p>The <code>oare_id</code> from the <code>train.csv</code> matches the <code>text_uuid</code> from the <code>Sentences_Oare_FirstWord_LinNum.csv</code>.</p>",
          "votes": 4,
          "replies": []
        },
        {
          "id": 3385436,
          "author_name": "耶✌",
          "author_url": "",
          "post_date": "2026-01-03T09:59:10.080000",
          "content": "<p>The <code>oare_id</code> from the train.csv matches the <code>text_uuid</code> from the Sentences_Oare_FirstWord_LinNum.csv.</p>",
          "votes": 2,
          "replies": [
            {
              "id": 3385440,
              "author_name": "Sue the",
              "author_url": "",
              "post_date": "2026-01-03T10:13:33.113000",
              "content": "<p>I got it! Thank you very much!</p>",
              "votes": 1,
              "replies": []
            }
          ]
        }
      ]
    }
  ],
  "raw_markdown_by_id": {
    "3383010": "**Note: The dataset has been updated. The `<big_gap>` tag and certain symbols are no longer included. For details, please refer to the official update announcement and the latest dataset released by the organizers.**\n\n**2025.12.29**: I trained the model by replacing all instances of ... [x], x, etc. in the **transliteration column** of train.csv with `<gap>` and `<big_gap>`, then made predictions on test.csv. Meanwhile, I replaced all ... in the prediction results with `<big_gap> `and all x with `<gap>`.\n\nMy LB score reached 30.3, and I have released the training code, the converted datasets as well as the submission code. :)\n\n\nI’ll share my scoring progress and **implementation details** here in the next steps, and hope this helps you all.\n| LB | size |submit time| epoch | Training Loss| Validation Loss|Chrf|progress | \n| --- | --- |\n| 31.3 | 725B |-|10|0.290900|0.418788|5.175934|revised the `<gap>` `<big_gap>`|\n| 31.0 | 569B |19min|10|0.304600|0.421686|5.082081|revised the `<gap>` `<big_gap>`, determinatives, fraction such as ¼, curly braces {} and delete parentheses ().|\n| 31.5 | 762B |21min|10|0.282200|0.389588|5.320788|Shortened and aligned the 14 sentences with length exceeding 512, resulting in a total of **1595 pieces of data**; meanwhile, revised the `<gap>` `<big_gap>`, determinatives, fraction such as ¼, curly braces {} ,and delete slash /, parentheses ().|\n| 31.8 | 749B |-|10|0.297200|0.400207|5.364566|Shortened and aligned the 14 sentences with length exceeding 512, resulting in a total of **1595 pieces of data**; meanwhile, revised the `<gap>` `<big_gap>`|\n| 32.3 | 695B |19min|10|0.296600|0.385465|5.364575|Shortened and aligned the 16 sentences with length exceeding 512, resulting in a total of **1604 pieces of data**; meanwhile, revised the `<gap>` `<big_gap>`,determinatives, fraction such as ¼, curly braces {} ,keep ! ? (),and delete slash / ,fem. plur. sing. pl.|\n\n---------------------------------------------------------------------------------------------------------------------------------------------\n\n**The Second Stage**\n\nI'm back—but actually, I never left. 32.8 This result is definitely not up to my expectations, lol, but the task isn’t finished yet, so there should still be room for improvement.\n| LB | size |submit time| epoch | Training Loss| Validation Loss|Chrf|progress | \n| --- | --- |\n| 32.8 | 797B |17min|10|0.277100|0.370077|6.596245|**MAX_LENGTH**=385,revised the `<gap>` `<big_gap>`,Ensure that the `<gap>` on both sides exist simultaneously or are absent simultaneously, All subscript numbers uppercase, keep determinatives(Ḫ,ḫ), delete ! ? () \" ; — - – < > ⌈ [ ] + ʾ / ,fem. plur. sing. pl. , total of **1703 pieces of data**|\n| 33.0 | 699B |17min|10|0.276200|0.353537|5.957525|**MAX_LENGTH**=475,revised the `<gap>` `<big_gap>`,Ensure that the `<gap>` on both sides exist simultaneously or are absent simultaneously, All subscript numbers uppercase, keep determinatives(Ḫ,ḫ), delete ! ? () \" ; — - – < > ⌈ [ ] + ʾ / ,fem. plur. sing. pl. , total of **1703 pieces of data**|\n| 33.3 | 820B |18min|10|0.284400|0.351412|5.638265|**MAX_LENGTH**=512,revised the `<gap>` `<big_gap>`,Ensure that the `<gap>` on both sides exist simultaneously or are absent simultaneously, All subscript numbers uppercase, keep determinatives(Ḫ,ḫ), delete ! ? () \" ; — - – < > ⌈ [ ] + ʾ / ,fem. plur. sing. pl. , total of **1703 pieces of data**|\n\nAt present, I have basically aligned the 94 filtered documents with lengths exceeding 512 characters, and revised nearly 100 documents with abnormal **length ratios**. As for why **MAX_LENGTH** is set to 385, the reason is **CUDA out of memory**.\n\n-----------------------------------------\n**Note:**After the new update, `<big_gap>` has been permanently removed.",
    "3406412": "I dunno got me batch size has been funny in lower recording better cv than big .. trying to figure out the reason why :( and smaller models working better so far",
    "3406319": "Thank you for sharing. This discussion is very helpful for me.  I'm a beginner, so please excuse my question, but why does your training strategy table only show chrF? In my own training, the BLEU score is extremely low, like 0.00... Since the final evaluation metric is the geometric mean of BLEU and chrF, is this really okay?",
    "3384498": "i can ask u? what u use method for solve problems hallucination and repetition word???",
    "3384086": "\"Shortened and aligned the 14 sentences with length exceeding 512, resulting in a total of 1595 pieces of data\"\n\nHow is this implemented?",
    "3391741": "想问下，连词符号应该去掉吗？例如A-mur-{d}UTU 转换成Amur D UTU 或 Amur DUTU ？  看到你之前清洗后的数据还是包含连词符的，官方给的描述还是比较含糊的😅",
    "3388612": "Your 33.0 LB is really great. I believe 33.0 is definitely not your limit. Currently, I haven't made any significant breakthroughs in sentence alignment. I'll study it some more.",
    "3387147": "i think mayby domain in test very difference train set and format text diff. i trained model by sentence level. i sentence alignment 8000 sentence can more gm in val set so high (train 80% val 20%) but submit get score 30\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F7898876%2F16aa65f73e09534bc99dec8122b5529e%2FScreenshot%202026-01-06%20200055.png?generation=1767704476286546&alt=media)",
    "3383333": "@qifeihhh666 what is the rationale of replacing all instances of ... [x], x, etc. in the transliteration column only and not in the translation column as well? ",
    "3383317": "It's strange i tried this and dropped to from 28.3 to 27.6 I wonder what I did wrong",
    "3385430": ""
  }
}