Evaluating a classification model is how you check whether it is labeling conversations correctly. Tekst walks you through a short guided flow: you pick a batch of real conversations, confirm or correct the label the model predicted for each one, and Tekst reports the resulting accuracy and offers improvements you can apply.
A batch is ten conversations and takes around five minutes to work through.
Before you start
Make sure you have:
- Access to the Models section of the Tekst platform.
- A classification model that already has its labels configured. The evaluate action stays disabled until then, with a tooltip telling you to add labels first.
- At least one inbox linked to the model, so Tekst has real conversations to sample.
If you have not built a model yet, start with Set up your first classification model.
Start an evaluation
- Go to Models and open the classification model you want to evaluate.
- In the header, find the Model accuracy figure.
- Select Evaluate model.
Tekst opens the Model evaluation panel, which shows the three steps ahead of you and an estimate of how long they take.
Select Start to begin.
Once a model has been evaluated at least once, the header shows the accuracy percentage instead, and you can reopen this flow from there. A pill next to the figure tells you when something needs your attention, for example Review evaluation when results are waiting or Evaluating while a run is in progress.
Step 1: Choose the conversations to review
In the Selection step you decide which conversations Tekst should pull in.
- Inboxes - limit the sample to specific inboxes, or leave it as All inboxes selected.
- Tags - narrow the sample to conversations carrying particular labels. The default is All Tags. Opening the dropdown lists the models linked to the selected inboxes, and expanding one lets you search its labels and pick individual ones. Parent and child labels are shown together, so you can target a specific branch of your label hierarchy.
Select Continue. Tekst samples ten matching conversations and runs the current model on each one, so you have a prediction to check against. If nothing matches your filters, Tekst tells you so and you can adjust them.
Narrowing by label is useful when you want to test one specific part of your label hierarchy rather than the model as a whole. Leaving the filters open gives you a more representative picture of everyday performance.
Step 2: Correct what the model got wrong
You now move through the ten conversations one at a time. Each one is shown with the label the model predicted below it.
- Select Correct if the prediction is right.
- Select Incorrect if it is wrong. The wrong label is struck through in red and a Choose tag picker opens so you can search for the right one. If the label you need does not exist yet, add it with Add new tag.
Once you have picked the right label, the correction is spelled out for you: the wrong label struck through on the left, an arrow, and your chosen label in green on the right. That is your confirmation the correction registered before you move on.
If a conversation was predicted with no label at all, you are asked to choose one directly. You can also Undo a decision if you change your mind.
The numbered squares at the bottom track your progress and let you jump back to an earlier conversation. Your confirmations and corrections become the validated examples Tekst measures accuracy against, so accuracy is only as good as the care you take here.
Skipping and removing
Two options behave differently:
- Skip moves past a conversation without recording anything. Nothing is saved for it.
- Remove from example set, in the menu next to Skip, deletes the conversation from your examples entirely. Use it for a conversation that should never have been an example, not for one you simply do not want to judge now.
When you reach the last conversation, Continue becomes Evaluate model. Select it, and Tekst compares everything you confirmed against what the model predicted. Your progress is saved while this runs, so you can close the panel and come back.
Closing the panel before you finish discards the corrections for the current batch, and Tekst warns you before it does.
Step 3: Read the accuracy results
The Evaluation step opens with Model accuracy: a Current model card showing the percentage of your reviewed examples the model labeled correctly.
Below it is Tag evaluation, the per-label breakdown. Each label is marked either All correct or with the number of conversations it got wrong. Labels that had nothing to review in this batch are listed without a marker. When your labels are nested, they are grouped under their parent, so you can collapse a branch you are not looking at.
Select any label to open its detail view, which puts the label you confirmed beside the one the model predicted, conversation by conversation. Conversations the model got wrong are listed first and the correct ones are collapsed behind a Show correct toggle, so what needs your attention is what you see. That comparison is the fastest way to spot a label description that is too vague or overlaps with a neighboring label.
Two things to keep in mind when reading the number:
- It reflects the examples reviewed so far, not your whole message history. Reviewing more conversations can move it up or down without the model itself having changed.
- Select Review 10 more conversations to sample another batch and build a firmer picture.
For the detail of how the score itself is computed, see How classification accuracy is measured.
Apply suggested improvements
When the results show room to improve, select Suggest improvements. Tekst uses the corrections you just made to work out better label descriptions.
This runs in the background and your progress is saved, so you can close the panel and pick the result up later from the model header.
When it finishes you get two cards side by side: Current model and Suggested model, each with its own accuracy. Selecting either one switches the breakdown below between the two, so you can see exactly which labels the suggestion changes before you commit to it.
Select a label in the breakdown to see what is actually being proposed. Its description opens on the right, with the reworded version marked Suggested description, above a Correct and Current model comparison of the conversations behind the score. Read that before you apply: the description is what the model works from, so it is worth agreeing with the wording.
- Apply improvements updates the model. Tekst confirms with Improvement applied.
- Discard improvements throws the suggestion away. This cannot be undone, though you can run a new optimization later.
Two cases where the button is not offered:
- The model is already at 100% on your examples, so there is nothing to improve.
- The model assigns more than one label per conversation. Suggested improvements are available for single-label classification models.
If Tekst cannot find anything better, it tells you the classification is already well optimized and invites you to correct more conversations. That is the right next move: more corrections give the optimization more to learn from.
Where your corrections are kept
Everything you confirm during an evaluation is stored as an example on the model. To see or edit those examples later, open the Model accuracy panel from the model header and switch to the Examples tab. There you can review each conversation, change the confirmed label, filter the list by label, and remove examples you no longer want counted.
You can also add an example without running the whole flow: open a conversation in the message feed, confirm the label the model assigned, and add it as an example from there.
If you change a model's labels after building up examples, some of those examples no longer line up with the new configuration. Tekst marks these as needing correction and leaves them out of the accuracy figure until you revisit them, which it prompts you to do with Add missing corrections.
0 comments
Please sign in to leave a comment.