<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Posts on timothyckl</title>
    <link>/posts/</link>
    <description>Recent content in Posts on timothyckl</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <copyright>© timothyckl. All rights reserved.</copyright>
    <lastBuildDate>Fri, 19 Jun 2026 10:00:00 +0800</lastBuildDate>
    <atom:link href="/posts/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Tokenising FineWeb-Edu</title>
      <link>/posts/tokenising-fineweb-edu/</link>
      <pubDate>Fri, 19 Jun 2026 10:00:00 +0800</pubDate>
      <guid>/posts/tokenising-fineweb-edu/</guid>
      <description>&lt;p&gt;In the &lt;a href=&#34;/posts/building-a-tiny-gpt-from-scratch/&#34;&gt;previous post&lt;/a&gt;, I laid out the goal for this series: build a small GPT-2-style language model from scratch, train it on a subset of FineWeb-Edu, and use it as a baseline for later experiments.&lt;/p&gt;&#xA;&lt;p&gt;The first concrete step is turning raw text into something the model can learn from. Language models do not read text directly, they operate on sequences of token IDs. So before we can train anything, we need to:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Building a Tiny GPT-2 From Scratch</title>
      <link>/posts/building-a-tiny-gpt-from-scratch/</link>
      <pubDate>Sun, 07 Jun 2026 10:53:28 +0800</pubDate>
      <guid>/posts/building-a-tiny-gpt-from-scratch/</guid>
      <description>&lt;p&gt;In this series, I&amp;rsquo;ll build a small GPT-2-style language model from scratch, train it on a subset of the &lt;a href=&#34;https://huggingface.co/datasets/HuggingFaceFW/fineweb-edu&#34;&gt;HuggingFaceFW/fineweb-edu&lt;/a&gt; dataset, and use it as a baseline for experiments in training, inference optimisation, architecture changes, and mechanistic interpretability.&lt;/p&gt;&#xA;&lt;p&gt;The aim is to understand the full language modelling pipeline from end-to-end: data, tokenisation, model architecture, training, generation , evaluation, inspection.&lt;/p&gt;&#xA;&lt;h2 id=&#34;who-should-read-this&#34;&gt;Who should read this&lt;/h2&gt;&#xA;&lt;p&gt;This series is for developers with some programming and machine learning experience who want to understand decoder-only Transformers by building, training, modifying, and inspecting a small GPT-2- style language model.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Writing LaTeX in Neovim</title>
      <link>/posts/writing-latex/</link>
      <pubDate>Fri, 05 Sep 2025 13:15:40 +0800</pubDate>
      <guid>/posts/writing-latex/</guid>
      <description>&lt;h2 id=&#34;background&#34;&gt;Background&lt;/h2&gt;&#xA;&lt;p&gt;As a university student in the field of computer science, my workflow largely revolves around note-taking, programming, and writing math equations. I heavily rely on Neovim and its plugins as my primary development environment due to its versatility and efficiency.&lt;/p&gt;&#xA;&lt;p&gt;Currently, I write my math notes and tutorials on an iPad, but I would prefer documents that look more professional. After some googling I discovered LaTeX and it&amp;rsquo;s superior formatting and ability to handle equations. However, one gap in my workflow was handing LaTeX documents directly within Neovim without switching to external software.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
