Checklist IOAI TST 2025 IOAI Team Selection Test · Task 4
Missing Word Position in Kazakh Sentences
Predict the zero-based position of the word removed from a Kazakh sentence.
The task
Kazakh has rich grammar and flexible word order. In each sentence exactly one word has been removed, and the contestant must predict the index (starting from 0) of the position where the word stood; for example, removing 'дүкенге' from 'Мен дүкенге барып келдім.' gives the target 1.
The training data come from OCR'd scans of Kazakh school textbooks and are therefore noisy (misrecognised characters and punctuation, broken sentence structure, interface and annotation artefacts); contestants are expected to build models robust to this noise. The test set comes from a separate, carefully cleaned corpus. Pre-trained models are allowed for this task.
Abridged and translated by SOTA from the official Russian materials. The official statement has the exact rules, and it wins wherever this summary differs.
In English
This task was published in Russian. SOTA translated its 2 files into English on 17 September 2026.
- Competition overview Russian original of Competition overview
- Data description Russian original of Data description
Read the competition overview in English
Missing Word Position in Kazakh Sentences
English translation by SOTA – AI Community of the Russian original. Licensed CC BY-NC-SA 4.0, like the original. Organisers who would like this translation removed can email [email protected].
Contest 4 (29 June 2025) of the Kazakhstan IOAI Team Selection Test (Отборочные на IOAI), 2025. This is the Overview tab of the Kaggle competition "TST Day4 Upsolving", the host's public upsolving copy of the contest, open from 29 June to 15 July 2025. Its subtitle reads: "Determine at which place in a Kazakh sentence a word is missing." Original: kaggle.com/competitions/tst-day-4-upsolving. The Data tab is translated in a separate file. The example sentences are in Kazakh; their English meaning is given in square brackets.
Overview
📝 Task description:
In this competition participants are given sentences in the Kazakh language from which one word has been removed.
Task:
You are given sentences in Kazakh from which one word has been removed. Your task is to predict the index (position) at which this missing word stood. Indexing starts from zero.
Using pretrained models is allowed
Description
📝 Description:
Kazakh is a language with a rich grammar and a flexible word order, which makes it particularly interesting for natural language processing tasks. In this competition participants are asked to solve a task on understanding sentence structure: determine at which place in the sentence a word was removed.
Example:
Original sentence:
Мен дүкенге барып келдім. [I went to the shop and came back.]
After removal:
Мен барып келдім. [I went and came back.]
Target value:
1, because the word "дүкенге" [to the shop] was in second place (index 1).
Why does this matter?
This task assesses how well a model is able to understand:
- the syntax of the Kazakh language,
- the logical order of words,
- the semantic continuity of a text.
It is also a useful step towards training language models in Kazakh, especially when resources are limited.
Evaluation
🧪 Evaluation
📊 Main metric: Accuracy
This competition uses the Accuracy metric to evaluate participants' solutions. This means that a prediction is counted as correct if the position of the missing word (an integer) matches the correct one.
📌 Definition:
For example, if out of 1000 sentences the model correctly identified the position of the missing word in 873 of them, then:
Translated by SOTA. The Russian original is the official version and wins wherever the two differ. This translates the Overview and Data tabs of the host's public upsolving copy on Kaggle; the Rules tab (code of conduct, allowed websites and libraries) is not included. The sentences in the data are in Kazakh; the translation gives the English meaning of the Kazakh example in square brackets. The Description's example simply deletes the word, whereas the Data tab says the missing word is replaced by a special token in masked_sentence. The pages do not describe the columns of train.csv or of the submission file. The competition data on Kaggle are licensed CC BY-NC-SA 4.0. If you organise this olympiad and would like the translation removed, email [email protected] and we will take it down.
At a glance
- You get
- Noisy Kazakh training text from OCR'd textbooks; a clean test set with columns ID and
masked_sentence. - You submit
- A CSV with the predicted zero-based word index for each test ID (column names are not given on the public pages; a participant's solution writes ID and
word_index). - Scoring
- Accuracy of the predicted position (Kaggle 'Accuracy Score'; 48% of the test data on the public leaderboard). Contest scoring (hub page): each task is worth at most 100 points; Norm_Score = (Submission_Score - Min_Score) / (Max_Score - Min_Score) x 100, where Min_Score is the lower of 0.9 x baseline score and the lowest participant score, and Max_Score is the higher of 0.9 x the Scientific Committee solution score and the best participant score.
- Rules
- Read-only access to stackoverflow.com, scikit-learn.org, pytorch.org, huggingface.co, numpy.org, github.com, python.org, pypi.org, a search engine restricted to these sites and a translation site.
- GPT-4o (or a newer version announced before the contest) is allowed through the platform integration; other LLMs, chats, Copilot tools and APIs are forbidden unless the task says otherwise.
- Allowed libraries include torch, scikit-learn, xgboost, catboost, lightgbm, transformers, spacy, nltk, gensim, fasttext, pandas, numpy, scipy, opencv-python, Pillow, torchvision, scikit-image, matplotlib, seaborn, plotly and common utilities; TensorFlow and Keras are not available.
- Pre-trained models are explicitly allowed for this task; no extra training time after the contest ends.
- Format
- Kazakhstan IOAI Team Selection Test 2025, contest 4 of 4 (29 June 2025), run as a private Kaggle competition; the public Kaggle copy is an upsolving clone of it.