<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Ml on AAYUSHYA</title>
    <link>https://tiwariji.net/tags/ml/</link>
    <description>Recent content in Ml on AAYUSHYA</description>
    <generator>Hugo -- 0.154.5</generator>
    <language>en</language>
    <lastBuildDate>Tue, 15 Sep 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://tiwariji.net/tags/ml/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Cloud motion prediction v1</title>
      <link>https://tiwariji.net/posts/training-convlstm-simvp/</link>
      <pubDate>Tue, 15 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://tiwariji.net/posts/training-convlstm-simvp/</guid>
      <description>&lt;p&gt;My final year project is &lt;strong&gt;Chase-the-cloud: Cloud motion prediction using INSAT 3DR data&lt;/strong&gt;. And, it&amp;rsquo;s been some time since I&amp;rsquo;ve sat down to write about what I have been working on. And to be fair, this project has made me question my life&amp;rsquo;s existence more than any other project, like ever.&lt;/p&gt;
&lt;p&gt;So, let&amp;rsquo;s talk about it.&lt;/p&gt;
&lt;p&gt;To make you interested in what we&amp;rsquo;re going to be talking about, here&amp;rsquo;s a picture of a trained model&amp;rsquo;s prediction:&lt;/p&gt;</description>
    </item>
    <item>
      <title>text-to-image retrieval</title>
      <link>https://tiwariji.net/posts/text-to-image-retrieval/</link>
      <pubDate>Thu, 27 Aug 2026 00:00:00 +0000</pubDate>
      <guid>https://tiwariji.net/posts/text-to-image-retrieval/</guid>
      <description>&lt;p&gt;With the advancements in AI, there have been a lot of problems that have seen ideas from statistics and math applied to them. One of them is retrieval.&lt;/p&gt;
&lt;p&gt;We can broadly look at retrieval as:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;same modal retrieval&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;cross modal retrieval&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;What I want to discuss today is different ways we can embed information in a &lt;em&gt;vector space&lt;/em&gt; from one modality and use a different modality to access that information.&lt;/p&gt;</description>
    </item>
    <item>
      <title>LSTM from scratch in PyTorch</title>
      <link>https://tiwariji.net/posts/lstm/</link>
      <pubDate>Fri, 22 May 2026 00:00:00 +0000</pubDate>
      <guid>https://tiwariji.net/posts/lstm/</guid>
      <description>&lt;p&gt;Today we&amp;rsquo;re looking at LSTM (Long Short Term Memory) neural networks.&lt;/p&gt;
&lt;p&gt;The standard for sequential data was RNNs (Recurrent Neural Networks).   &lt;br&gt;
RNNs had an issue. They were good at remembering things, but they&amp;hellip; well, they kept forgetting too!    &lt;br&gt;
They had what we call a &lt;strong&gt;vanishing gradient&lt;/strong&gt; problem.&lt;/p&gt;
&lt;p&gt;Small example to guide your visual senses:&lt;/p&gt;
&lt;p&gt;&lt;img loading=&#34;lazy&#34; src=&#34;https://tiwariji.net/posts/lstm/vg.png&#34;&gt;&lt;/p&gt;
&lt;p&gt;The spine of the problem is, when the gradients flow backwards, they get multiplied. And say if that number that we&amp;rsquo;re multiplying with is smaller - which a lot of times the gradients are, then at some point the gradient will be close to zero and boom you&amp;rsquo;ve lost signal.      &lt;br&gt;
At each timestep, the gradient gets multiplied by the derivative of the activation function (like sigmoid) — a number that maxes out at 0.25. Ten steps back, your gradient is 0.25¹⁰ — essentially zero.&lt;/p&gt;</description>
    </item>
    <item>
      <title>From scratch Quantization in neural networks</title>
      <link>https://tiwariji.net/posts/quantization/</link>
      <pubDate>Tue, 07 Apr 2026 00:00:00 +0000</pubDate>
      <guid>https://tiwariji.net/posts/quantization/</guid>
      <description>&lt;p&gt;&lt;strong&gt;&amp;ldquo;compute solves a lot of problem&amp;rdquo;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;If we just had enough compute, a lot of the problems that we experience today would be solved. Loger contexts, smarter weights and biases, etc. But right now we don&amp;rsquo;t have infinite compute.    &lt;br&gt;
That&amp;rsquo;s the sad reality.  &lt;br&gt;
So we optimize. &lt;strong&gt;Quantization&lt;/strong&gt; is our attempt at just that.&lt;/p&gt;
&lt;h1 id=&#34;history&#34;&gt;history&lt;/h1&gt;
&lt;p&gt;Reference: &lt;a href=&#34;https://arxiv.org/abs/2103.13630&#34;&gt;https://arxiv.org/abs/2103.13630&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Quantization is a way of compression. It is a process of mapping a large set of continous or high-precision values into smaller discrete set of values.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How PolyBlocks lowers tensor programs for GPUs</title>
      <link>https://tiwariji.net/posts/polyblocks/</link>
      <pubDate>Sun, 29 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://tiwariji.net/posts/polyblocks/</guid>
      <description>&lt;p&gt;Recently, at PyTorch Day India in Bangalore, I saw a talk on AI compilers.
Here is the link: &lt;a href=&#34;https://www.youtube.com/watch?v=upzLl0mp74I&#34;&gt;YouTube&lt;/a&gt;&lt;/p&gt;
&lt;h5 id=&#34;picture-from-the-session&#34;&gt;Picture from the session&lt;/h5&gt;
&lt;p&gt;&lt;img alt=&#34;picture of Mr Uday&#34; loading=&#34;lazy&#34; src=&#34;https://tiwariji.net/posts/polyblocks/2026-03-29_16-25.png&#34;&gt;&lt;/p&gt;
&lt;br&gt;
I didn&#39;t know there were Indian labs working on the AI compiler problem. But it turns out there are.
&lt;p&gt;&lt;em&gt;&lt;strong&gt;PolyMage Labs&lt;/strong&gt;&lt;/em&gt; is an IISc lab in Bangalore working on &lt;a href=&#34;https://arxiv.org/abs/2603.06731&#34;&gt;PolyBlocks&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Since AI is moving fast, there is a clear need for efficient AI compilers that can lower high-level tensor programs to IR for GPUs, TPUs, and other backends. PolyBlocks minimizes dependency on external vendor libraries like cuBLAS/cuDNN while still generating highly optimized code via compiler-driven transformations and tiling.&lt;/p&gt;</description>
    </item>
    <item>
      <title>What torch.compile actually does under the hood</title>
      <link>https://tiwariji.net/posts/torchcompile/</link>
      <pubDate>Wed, 18 Feb 2026 00:00:00 +0000</pubDate>
      <guid>https://tiwariji.net/posts/torchcompile/</guid>
      <description>&lt;p&gt;Before we see what &lt;code&gt;torch.compile&lt;/code&gt; does, we should first understand pytorch&amp;rsquo;s default mode and why we&amp;rsquo;d ever want to move away from it.&lt;/p&gt;
&lt;p&gt;PyTorch runs in &lt;strong&gt;eager mode&lt;/strong&gt; by default. Think of it as PyTorch reading and executing your code op by op, as Python encounters each line. It&amp;rsquo;s immediate, flexible, and great for prototyping — but it pays a Python interpreter cost on every single operation.&lt;/p&gt;
&lt;p&gt;For production and deployment, we want to skip that cost. That&amp;rsquo;s where compilation comes in.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Backpropagation from scratch</title>
      <link>https://tiwariji.net/posts/backprop/</link>
      <pubDate>Fri, 30 Jan 2026 00:00:00 +0000</pubDate>
      <guid>https://tiwariji.net/posts/backprop/</guid>
      <description>&lt;p&gt;I&amp;rsquo;m assuming you understand the basic idea of neural networks. This essay focuses purely on the backpropagation algorithm itself.&lt;/p&gt;
&lt;h2 id=&#34;what-is-backpropagation&#34;&gt;What is Backpropagation?&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Backpropagation is an algorithm that computes how much each weight and bias should change to reduce the loss.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;It tells us not just whether parameters should go up or down, but by how much, based on their actual impact on the loss function.
We use math to figure out that.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
