Two settings, a familiar habit
Sport and artificial intelligence can look like separate chapters. For me, they share patience, repeated attempts and curiosity about what did not work. In freestyle football, a small change in timing matters. In a model experiment, an equally important detail may be the data split, a label mapping or the choice of baseline.
My physical-education background at AWF and experience working with groups taught me to pay attention to the process. At the University of Strathclyde, I added the tools of machine learning and evaluation. Sport is not proof of technical ability. It is part of my story and of the way I approach learning.
Name the task before improving the score
A number becomes useful when we know which question it answers. Am I evaluating retrieval of the right document, classification of an image or prediction of a numeric value? Even inside one project, these questions may require different metrics. I want to know what a result supports and which conclusion goes beyond the test that produced it.
In practice, I write down the task, data, baseline and evaluation criterion before interpreting the outcome. That keeps an attractive number attached to its conditions. The same description should remain visible in a portfolio, even when it takes more space than the percentage alone.
From a question to an honest conclusion
My proposed order of work.
- 01Task
What am I trying to establish?
- 02Baseline
What am I comparing against?
- 03Test
Which data and labels?
- 04Limits
What does the result not prove?
Clinical RAG: finding a passage is not the same as answering well
The public Clinical RAG project uses synthetic record snippets, TF-IDF retrieval, patient filtering and template-based answers with citations. Its reported Recall@3 is 1.000 and Precision@3 is 0.583. The first describes finding the labelled evidence in that evaluation set. The second shows that some returned passages are not relevant.
I would not call that perfect answer quality. Retrieval, faithfulness to the source and behaviour when evidence is missing are different problems. The public prototype is also not a clinical product. Keeping the claim within the evidence is part of an honest account of the work.
Sign Language MNIST: keep the less comfortable number
In the neural-networks-from-scratch project, accuracy on the original held-out labels is 45.84%. A diagnostic alignment of the label mapping produces 88.62%. Showing only the higher number would remove the most interesting part of the work: investigating why those results differ.
The primary result and the diagnostic therefore need separate labels. A diagnostic interpretation does not automatically turn the original test into a better test. The next step is independent validation of the labels. This example reminds me that error analysis is a worthwhile project outcome, even when it does not end in one impressive score.
Spotify: compare what can be compared
For music popularity modelling, the public CatBoost benchmark reports RMSE 6.52657, while quick local validation reports 9.8633. They come from different evaluation conditions. Showing them together provides context, but does not demonstrate a deterioration of the model by a specific amount. The datasets also serve different purposes.
Additional complexity does not guarantee a benefit. A classification variant with TF-IDF text features remained an experiment because the default tabular Linear SVC had the stronger reproducible validation result. A useful portfolio explains that decision as well as naming the selected tool.
Movement Lab: a small experiment you can inspect
Movement Lab is now available on this site. A pretrained MediaPipe model estimates body landmarks from a photo or a selected video frame. My contribution is the local browser workflow, landmark display, visibility filtering and angle geometry. I did not train the model from scratch, and that distinction matters.
The sample photo shows the upper body. If the knees are outside the frame, the interface should show a dash rather than a convincing number. An angle calculated in a 2D image depends on camera position. That makes this a useful starting point for a conversation about computer vision, but not a biomechanical measurement or an assessment of training quality.
Five questions for the next project
What exactly am I trying to establish? Which simple solution am I comparing the model with? Are the test data and labels trustworthy? In which cases does the system fail? What does a person need to see to interpret the result correctly? These questions organise the work long before the choice of the newest library.
Answering them takes more than running code. It means preserving the experiment configuration, naming limitations and exposing sources. Sometimes the next step will be a larger model. At other times it will be better labels, a simpler method or the conclusion that the available evidence cannot support a stronger claim.
Technology with room for the person
I have completed the requirements for the MSc Artificial Intelligence and Applications and am awaiting the formal award. I want this site to be a place where people can inspect my work and understand the person behind it. That is why the code and results sit alongside sport, Smile Camp and everyday curiosity.
My aim is to explain AI in a way that lets a reader check the basis of a conclusion. If you start with Movement Lab, compare two frames and see what changes as more of the body becomes visible. If the projects interest you, look at the reports. Either route can be the start of a useful conversation.

