<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Shridipa Dhar</title>
    <description>The latest articles on DEV Community by Shridipa Dhar (@shridipa_dhar_079d540328a).</description>
    <link>https://dev.to/shridipa_dhar_079d540328a</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3974355%2Ffe6902ce-350e-485b-add6-5675bb2e3ae6.png</url>
      <title>DEV Community: Shridipa Dhar</title>
      <link>https://dev.to/shridipa_dhar_079d540328a</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/shridipa_dhar_079d540328a"/>
    <language>en</language>
    <item>
      <title>Building a Multilayer Perceptron from Scratch: What It Taught Me About Neural Networks</title>
      <dc:creator>Shridipa Dhar</dc:creator>
      <pubDate>Mon, 08 Jun 2026 14:53:04 +0000</pubDate>
      <link>https://dev.to/shridipa_dhar_079d540328a/building-a-multilayer-perceptron-from-scratch-what-it-taught-me-about-neural-networks-1dgj</link>
      <guid>https://dev.to/shridipa_dhar_079d540328a/building-a-multilayer-perceptron-from-scratch-what-it-taught-me-about-neural-networks-1dgj</guid>
      <description>&lt;p&gt;Introduction&lt;br&gt;
When learning machine learning, it is easy to rely on powerful frameworks such as PyTorch and TensorFlow.&lt;/p&gt;

&lt;p&gt;A few lines of code can create a neural network, train it on thousands of examples, and achieve impressive results.&lt;/p&gt;

&lt;p&gt;For a long time, that was how I approached deep learning.&lt;/p&gt;

&lt;p&gt;I understood the high-level concepts, but many of the mechanics remained hidden behind library abstractions.&lt;/p&gt;

&lt;p&gt;What actually happens during backpropagation?&lt;/p&gt;

&lt;p&gt;How are gradients computed?&lt;/p&gt;

&lt;p&gt;Why do weights update the way they do?&lt;/p&gt;

&lt;p&gt;How does a network gradually learn meaningful patterns from data?&lt;/p&gt;

&lt;p&gt;To answer these questions, I decided to build a Multilayer Perceptron (MLP) completely from scratch using NumPy, without relying on any deep learning framework.&lt;/p&gt;

&lt;p&gt;The project turned out to be one of the most educational experiences in my machine learning journey.&lt;/p&gt;

&lt;p&gt;Why Build an MLP from Scratch?&lt;br&gt;
At first glance, building a neural network manually may seem unnecessary.&lt;/p&gt;

&lt;p&gt;Modern frameworks already provide:&lt;/p&gt;

&lt;p&gt;Automatic differentiation&lt;/p&gt;

&lt;p&gt;Optimized training loops&lt;/p&gt;

&lt;p&gt;GPU acceleration&lt;/p&gt;

&lt;p&gt;Efficient tensor operations&lt;/p&gt;

&lt;p&gt;However, abstractions can sometimes hide understanding.&lt;/p&gt;

&lt;p&gt;I wanted to move beyond:&lt;/p&gt;

&lt;p&gt;model.fit(X, y)&lt;/p&gt;

&lt;p&gt;and understand what happens underneath.&lt;/p&gt;

&lt;p&gt;The goal was not performance.&lt;/p&gt;

&lt;p&gt;The goal was understanding.&lt;/p&gt;

&lt;p&gt;What Is a Multilayer Perceptron?&lt;br&gt;
A Multilayer Perceptron is one of the simplest forms of a neural network.&lt;/p&gt;

&lt;p&gt;It consists of:&lt;/p&gt;

&lt;p&gt;Input Layer&lt;/p&gt;

&lt;p&gt;Hidden Layers&lt;/p&gt;

&lt;p&gt;Output Layer&lt;/p&gt;

&lt;p&gt;Each layer contains neurons connected through learnable weights.&lt;/p&gt;

&lt;p&gt;A simple architecture looks like:&lt;/p&gt;

&lt;p&gt;Input Layer&lt;br&gt;
     │&lt;br&gt;
     ▼&lt;br&gt;
Hidden Layer 1&lt;br&gt;
     │&lt;br&gt;
     ▼&lt;br&gt;
Hidden Layer 2&lt;br&gt;
     │&lt;br&gt;
     ▼&lt;br&gt;
Output Layer&lt;/p&gt;

&lt;p&gt;Although simple, MLPs contain the fundamental ideas that power modern deep learning systems.&lt;/p&gt;

&lt;p&gt;Understanding the Building Blocks&lt;br&gt;
Before writing any code, I broke the network into smaller components.&lt;/p&gt;

&lt;p&gt;Weights&lt;br&gt;
Weights determine how much influence one neuron has on another.&lt;/p&gt;

&lt;p&gt;Initially, these values are random.&lt;/p&gt;

&lt;p&gt;Training gradually adjusts them to improve predictions.&lt;/p&gt;

&lt;p&gt;Biases&lt;br&gt;
Biases allow neurons to shift decision boundaries.&lt;/p&gt;

&lt;p&gt;Without biases, neural networks become significantly less flexible.&lt;/p&gt;

&lt;p&gt;Activation Functions&lt;br&gt;
Activation functions introduce non-linearity.&lt;/p&gt;

&lt;p&gt;Without them, multiple layers collapse into a simple linear transformation.&lt;/p&gt;

&lt;p&gt;Common choices include:&lt;/p&gt;

&lt;p&gt;ReLU&lt;/p&gt;

&lt;p&gt;Sigmoid&lt;/p&gt;

&lt;p&gt;Tanh&lt;/p&gt;

&lt;p&gt;For my implementation, I experimented primarily with ReLU and Sigmoid.&lt;/p&gt;

&lt;p&gt;Implementing Forward Propagation&lt;br&gt;
The first step was teaching the network how to make predictions.&lt;/p&gt;

&lt;p&gt;Each layer performs:&lt;/p&gt;

&lt;p&gt;z = Wx + b&lt;/p&gt;

&lt;p&gt;followed by an activation function.&lt;/p&gt;

&lt;p&gt;The output becomes the input for the next layer.&lt;/p&gt;

&lt;p&gt;The complete forward pass looks like:&lt;/p&gt;

&lt;p&gt;Input&lt;br&gt;
  ↓&lt;br&gt;
Linear Transformation&lt;br&gt;
  ↓&lt;br&gt;
Activation Function&lt;br&gt;
  ↓&lt;br&gt;
Hidden Representation&lt;br&gt;
  ↓&lt;br&gt;
Output Prediction&lt;/p&gt;

&lt;p&gt;Writing this manually helped me understand that neural networks are ultimately sequences of matrix operations.&lt;/p&gt;

&lt;p&gt;The Moment Everything Clicked: Backpropagation&lt;br&gt;
Forward propagation was straightforward.&lt;/p&gt;

&lt;p&gt;Backpropagation was where the real learning began.&lt;/p&gt;

&lt;p&gt;Initially, backpropagation felt mysterious.&lt;/p&gt;

&lt;p&gt;Most explanations describe it as:&lt;/p&gt;

&lt;p&gt;"The network calculates gradients and updates weights."&lt;/p&gt;

&lt;p&gt;But where do those gradients come from?&lt;/p&gt;

&lt;p&gt;Implementing the algorithm forced me to understand the answer.&lt;/p&gt;

&lt;p&gt;The key insight was that every parameter contributes to the final error.&lt;/p&gt;

&lt;p&gt;Using the chain rule, we can compute how much each weight influenced the loss.&lt;/p&gt;

&lt;p&gt;This influence becomes the gradient.&lt;/p&gt;

&lt;p&gt;The network then updates weights in the direction that reduces error.&lt;/p&gt;

&lt;p&gt;For the first time, backpropagation stopped feeling like magic and started feeling like mathematics.&lt;/p&gt;

&lt;p&gt;Understanding Gradient Descent&lt;br&gt;
Once gradients are available, learning becomes an optimization problem.&lt;/p&gt;

&lt;p&gt;The update rule is:&lt;/p&gt;

&lt;p&gt;w_{new}=w_{old}-\eta\frac{\partial L}{\partial w}&lt;/p&gt;

&lt;p&gt;where:&lt;/p&gt;

&lt;p&gt;(w) represents weights&lt;/p&gt;

&lt;p&gt;(L) is the loss function&lt;/p&gt;

&lt;p&gt;(\eta) is the learning rate&lt;/p&gt;

&lt;p&gt;Watching loss decrease over training iterations was incredibly satisfying because every update was now something I had implemented myself.&lt;/p&gt;

&lt;p&gt;Challenges I Faced&lt;br&gt;
Building the MLP was not as straightforward as expected.&lt;/p&gt;

&lt;p&gt;Several issues repeatedly appeared.&lt;/p&gt;

&lt;p&gt;Shape Mismatches&lt;br&gt;
Matrix multiplication requires precise dimensions.&lt;/p&gt;

&lt;p&gt;A single incorrect shape can break the entire network.&lt;/p&gt;

&lt;p&gt;I spent a surprising amount of time debugging tensor dimensions.&lt;/p&gt;

&lt;p&gt;Numerical Stability&lt;br&gt;
Large values sometimes caused exploding outputs.&lt;/p&gt;

&lt;p&gt;This taught me why activation choices and initialization strategies matter.&lt;/p&gt;

&lt;p&gt;Learning Rate Selection&lt;br&gt;
If the learning rate was too large:&lt;/p&gt;

&lt;p&gt;Loss explodes&lt;/p&gt;

&lt;p&gt;If it was too small:&lt;/p&gt;

&lt;p&gt;Training becomes extremely slow&lt;/p&gt;

&lt;p&gt;Finding the right balance helped me understand optimization dynamics.&lt;/p&gt;

&lt;p&gt;Gradient Debugging&lt;br&gt;
Incorrect gradients often produced networks that appeared to train but never improved.&lt;/p&gt;

&lt;p&gt;Verifying gradient calculations manually was one of the most valuable learning experiences.&lt;/p&gt;

&lt;p&gt;What Building It Taught Me&lt;br&gt;
The project fundamentally changed how I think about deep learning.&lt;/p&gt;

&lt;p&gt;Neural Networks Are Not Magic&lt;br&gt;
Before this project, neural networks felt complex and mysterious.&lt;/p&gt;

&lt;p&gt;After implementing one from scratch, they became sequences of understandable mathematical operations.&lt;/p&gt;

&lt;p&gt;Matrix Operations Matter&lt;br&gt;
Deep learning relies heavily on linear algebra.&lt;/p&gt;

&lt;p&gt;Understanding matrix multiplication, vectorization, and dimensions became significantly more important than memorizing model architectures.&lt;/p&gt;

&lt;p&gt;Backpropagation Is Elegant&lt;br&gt;
Initially, backpropagation seemed intimidating.&lt;/p&gt;

&lt;p&gt;After implementing it manually, I realized it is simply an efficient application of calculus.&lt;/p&gt;

&lt;p&gt;Frameworks Became Easier to Understand&lt;br&gt;
After building the underlying components myself, PyTorch APIs suddenly made much more sense.&lt;/p&gt;

&lt;p&gt;Functions such as:&lt;/p&gt;

&lt;p&gt;loss.backward()&lt;br&gt;
optimizer.step()&lt;/p&gt;

&lt;p&gt;were no longer black boxes.&lt;/p&gt;

&lt;p&gt;I understood exactly what they were doing internally.&lt;/p&gt;

&lt;p&gt;Comparing My Implementation with PyTorch&lt;br&gt;
Building from scratch also helped me appreciate modern frameworks.&lt;/p&gt;

&lt;p&gt;PyTorch automatically handles:&lt;/p&gt;

&lt;p&gt;Gradient computation&lt;/p&gt;

&lt;p&gt;Efficient tensor operations&lt;/p&gt;

&lt;p&gt;GPU acceleration&lt;/p&gt;

&lt;p&gt;Computational graphs&lt;/p&gt;

&lt;p&gt;My implementation was slower and less optimized.&lt;/p&gt;

&lt;p&gt;However, it provided something more valuable:&lt;/p&gt;

&lt;p&gt;Understanding.&lt;/p&gt;

&lt;p&gt;Results&lt;br&gt;
The final implementation successfully included:&lt;/p&gt;

&lt;p&gt;Multiple hidden layers&lt;/p&gt;

&lt;p&gt;Forward propagation&lt;/p&gt;

&lt;p&gt;Backpropagation&lt;/p&gt;

&lt;p&gt;Gradient descent optimization&lt;/p&gt;

&lt;p&gt;Configurable activation functions&lt;/p&gt;

&lt;p&gt;Loss calculation&lt;/p&gt;

&lt;p&gt;Training and evaluation loops&lt;/p&gt;

&lt;p&gt;Most importantly, the network was able to learn meaningful patterns from data entirely through code I had written myself.&lt;/p&gt;

&lt;p&gt;Lessons for Anyone Learning Deep Learning&lt;br&gt;
If I could give one recommendation to students learning neural networks, it would be:&lt;/p&gt;

&lt;p&gt;Build at least one neural network completely from scratch.&lt;/p&gt;

&lt;p&gt;You do not need to build a state-of-the-art model.&lt;/p&gt;

&lt;p&gt;You do not need GPUs.&lt;/p&gt;

&lt;p&gt;You do not need millions of parameters.&lt;/p&gt;

&lt;p&gt;Even a simple MLP can teach:&lt;/p&gt;

&lt;p&gt;Linear algebra&lt;/p&gt;

&lt;p&gt;Optimization&lt;/p&gt;

&lt;p&gt;Gradient computation&lt;/p&gt;

&lt;p&gt;Neural network architecture&lt;/p&gt;

&lt;p&gt;Training dynamics&lt;/p&gt;

&lt;p&gt;better than dozens of tutorials.&lt;/p&gt;

&lt;p&gt;Conclusion&lt;br&gt;
Building a Multilayer Perceptron from scratch was one of the most valuable projects in my machine learning journey.&lt;/p&gt;

&lt;p&gt;The goal was never to outperform PyTorch or TensorFlow.&lt;/p&gt;

&lt;p&gt;The goal was to understand what happens beneath the abstractions.&lt;/p&gt;

&lt;p&gt;By implementing forward propagation, backpropagation, gradient descent, and training loops manually, I gained a much deeper appreciation for both the mathematics and engineering behind modern deep learning systems.&lt;/p&gt;

&lt;p&gt;Today, when I work with frameworks such as PyTorch, I no longer see a collection of APIs.&lt;/p&gt;

&lt;p&gt;I see the mathematical machinery operating underneath them.&lt;/p&gt;

&lt;p&gt;And that understanding has made me a better machine learning engineer.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>machinelearning</category>
    </item>
    <item>
      <title>Building Elo Learn: An Explainable Adaptive Learning System with Knowledge Tracing and Recommendation Intelligence</title>
      <dc:creator>Shridipa Dhar</dc:creator>
      <pubDate>Mon, 08 Jun 2026 14:48:12 +0000</pubDate>
      <link>https://dev.to/shridipa_dhar_079d540328a/building-elo-learn-an-explainable-adaptive-learning-system-with-knowledge-tracing-and-2m4b</link>
      <guid>https://dev.to/shridipa_dhar_079d540328a/building-elo-learn-an-explainable-adaptive-learning-system-with-knowledge-tracing-and-2m4b</guid>
      <description>&lt;p&gt;Traditional online learning platforms often treat every student the same way.&lt;/p&gt;

&lt;p&gt;Two students may receive identical lessons, exercises, and recommendations despite having completely different strengths, weaknesses, and learning histories.&lt;/p&gt;

&lt;p&gt;I wanted to explore how machine learning and educational analytics could be combined to create a more personalized learning experience.&lt;/p&gt;

&lt;p&gt;This led to the development of Elo Learn, an adaptive learning prototype built using FastAPI and Streamlit that models student mastery, recommends personalized learning paths, explains its decisions, and schedules review sessions automatically.&lt;/p&gt;

&lt;p&gt;The goal was not simply content recommendation, but building an end-to-end educational intelligence system capable of understanding how students learn over time.&lt;/p&gt;

&lt;p&gt;Most learning platforms rely on simple completion metrics:&lt;/p&gt;

&lt;p&gt;Completed a lesson&lt;/p&gt;

&lt;p&gt;Passed a quiz&lt;/p&gt;

&lt;p&gt;Watched a video&lt;/p&gt;

&lt;p&gt;These signals provide limited insight into actual understanding.&lt;/p&gt;

&lt;p&gt;A more effective system should answer questions such as:&lt;/p&gt;

&lt;p&gt;What concepts has a student truly mastered?&lt;/p&gt;

&lt;p&gt;Which prerequisite topics are missing?&lt;/p&gt;

&lt;p&gt;What should they learn next?&lt;/p&gt;

&lt;p&gt;Why was a recommendation made?&lt;/p&gt;

&lt;p&gt;When should concepts be reviewed?&lt;/p&gt;

&lt;p&gt;Building a system capable of answering these questions became the core motivation behind Elo Learn.&lt;/p&gt;

&lt;p&gt;The platform combines several AI-driven components into a unified pipeline.&lt;/p&gt;

&lt;p&gt;Student Interactions&lt;br&gt;
          │&lt;br&gt;
          ▼&lt;br&gt;
Bayesian Knowledge Tracing&lt;br&gt;
          │&lt;br&gt;
          ▼&lt;br&gt;
Student Mastery Estimation&lt;br&gt;
          │&lt;br&gt;
 ┌───────────┼────────────────────┐&lt;br&gt;
 │           │                    │&lt;br&gt;
 ▼           ▼                    ▼&lt;br&gt;
Embeddings  Knowledge Graph  Review Engine&lt;br&gt;
 │            │              │&lt;br&gt;
 ▼            ▼              ▼&lt;br&gt;
Recommendations  Readiness  Spaced Repetition&lt;br&gt;
         │&lt;br&gt;
         ▼&lt;br&gt;
 Explainable Learning Path&lt;/p&gt;

&lt;p&gt;Instead of relying on a single metric, Elo Learn combines multiple educational signals to generate recommendations.&lt;/p&gt;

&lt;p&gt;The first challenge was estimating student mastery.&lt;/p&gt;

&lt;p&gt;To accomplish this, I implemented Bayesian Knowledge Tracing (BKT).&lt;/p&gt;

&lt;p&gt;BKT models the probability that a student has mastered a concept based on their historical interactions.&lt;/p&gt;

&lt;p&gt;Rather than treating learning as binary, the model continuously updates confidence scores as new evidence becomes available.&lt;/p&gt;

&lt;p&gt;This allows the platform to distinguish between:&lt;/p&gt;

&lt;p&gt;Concepts that are mastered&lt;/p&gt;

&lt;p&gt;Concepts requiring reinforcement&lt;/p&gt;

&lt;p&gt;Concepts that have not yet been learned&lt;/p&gt;

&lt;p&gt;Knowledge tracing provides mastery estimates, but it does not capture broader behavioral similarities.&lt;/p&gt;

&lt;p&gt;To address this, I created student and topic embeddings.&lt;/p&gt;

&lt;p&gt;These representations allow the system to:&lt;/p&gt;

&lt;p&gt;Compare learning patterns between students&lt;/p&gt;

&lt;p&gt;Identify similar learners&lt;/p&gt;

&lt;p&gt;Discover related concepts&lt;/p&gt;

&lt;p&gt;Improve recommendation quality&lt;/p&gt;

&lt;p&gt;Embedding-based representations help move beyond simple score tracking and enable richer personalization.&lt;/p&gt;

&lt;p&gt;Building a Knowledge Graph&lt;br&gt;
One of the most important components of Elo Learn is its concept graph.&lt;/p&gt;

&lt;p&gt;Learning rarely happens in isolation.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;p&gt;Algebra&lt;br&gt;
    ↓&lt;br&gt;
Functions&lt;br&gt;
    ↓&lt;br&gt;
Calculus&lt;/p&gt;

&lt;p&gt;A student struggling with Calculus may actually have gaps in prerequisite concepts.&lt;/p&gt;

&lt;p&gt;The knowledge graph enables the platform to:&lt;/p&gt;

&lt;p&gt;Identify dependencies between concepts&lt;/p&gt;

&lt;p&gt;Calculate readiness scores&lt;/p&gt;

&lt;p&gt;Recommend prerequisite material&lt;/p&gt;

&lt;p&gt;Generate remediation pathways&lt;/p&gt;

&lt;p&gt;This makes recommendations significantly more educationally meaningful.&lt;/p&gt;

&lt;p&gt;Recommendation systems often operate as black boxes.&lt;/p&gt;

&lt;p&gt;I wanted Elo Learn to provide transparency.&lt;/p&gt;

&lt;p&gt;Instead of simply recommending a topic, the platform explains:&lt;/p&gt;

&lt;p&gt;Why the topic was selected&lt;/p&gt;

&lt;p&gt;Which concepts influenced the recommendation&lt;/p&gt;

&lt;p&gt;Current mastery levels&lt;/p&gt;

&lt;p&gt;Confidence scores&lt;/p&gt;

&lt;p&gt;Prerequisite readiness&lt;/p&gt;

&lt;p&gt;This creates trust and helps both students and instructors understand the reasoning behind recommendations.&lt;/p&gt;

&lt;p&gt;Learning does not end after a concept is mastered.&lt;/p&gt;

&lt;p&gt;Without reinforcement, knowledge decays over time.&lt;/p&gt;

&lt;p&gt;To address this challenge, Elo Learn incorporates an SM2-inspired spaced repetition algorithm.&lt;/p&gt;

&lt;p&gt;The review engine:&lt;/p&gt;

&lt;p&gt;Tracks concept mastery&lt;/p&gt;

&lt;p&gt;Calculates optimal review intervals&lt;/p&gt;

&lt;p&gt;Identifies overdue concepts&lt;/p&gt;

&lt;p&gt;Prioritizes revision sessions&lt;/p&gt;

&lt;p&gt;This allows students to retain knowledge more effectively while reducing unnecessary review effort.&lt;/p&gt;

&lt;p&gt;The platform was designed not only for students but also for educators.&lt;/p&gt;

&lt;p&gt;Instructor dashboards provide:&lt;/p&gt;

&lt;p&gt;Cohort Analytics&lt;br&gt;
Track overall class performance and mastery trends.&lt;/p&gt;

&lt;p&gt;At-Risk Student Detection&lt;br&gt;
Identify students requiring intervention.&lt;/p&gt;

&lt;p&gt;Weak Topic Identification&lt;br&gt;
Highlight concepts causing widespread difficulty.&lt;/p&gt;

&lt;p&gt;These analytics transform raw student interactions into actionable educational insights.&lt;/p&gt;

&lt;p&gt;Backend Architecture&lt;br&gt;
The backend was built using FastAPI and organized into modular components.&lt;/p&gt;

&lt;p&gt;backend/&lt;br&gt;
frontend/&lt;br&gt;
recommendation_engine/&lt;br&gt;
knowledge_graph/&lt;br&gt;
ml_models/&lt;br&gt;
datasets/&lt;br&gt;
tests/&lt;/p&gt;

&lt;p&gt;The system exposes endpoints for:&lt;/p&gt;

&lt;p&gt;Mastery estimation&lt;/p&gt;

&lt;p&gt;Recommendation generation&lt;/p&gt;

&lt;p&gt;Knowledge graph reasoning&lt;/p&gt;

&lt;p&gt;Cohort analytics&lt;/p&gt;

&lt;p&gt;Review scheduling&lt;/p&gt;

&lt;p&gt;This separation makes experimentation and future extensions easier.&lt;/p&gt;

&lt;p&gt;The final system includes:&lt;/p&gt;

&lt;p&gt;Bayesian Knowledge Tracing&lt;/p&gt;

&lt;p&gt;Student and concept embeddings&lt;/p&gt;

&lt;p&gt;Knowledge graph reasoning&lt;/p&gt;

&lt;p&gt;Explainable recommendations&lt;/p&gt;

&lt;p&gt;Spaced repetition scheduling&lt;/p&gt;

&lt;p&gt;Cohort analytics&lt;/p&gt;

&lt;p&gt;Instructor dashboards&lt;/p&gt;

&lt;p&gt;FastAPI REST APIs&lt;/p&gt;

&lt;p&gt;Streamlit visualization interface&lt;/p&gt;

&lt;p&gt;Building Elo Learn revealed several interesting challenges.&lt;/p&gt;

&lt;p&gt;Educational Data Is Complex&lt;br&gt;
Student performance is not always a reliable indicator of understanding.&lt;/p&gt;

&lt;p&gt;Explainability Is Essential&lt;br&gt;
Recommendations become significantly more useful when accompanied by reasoning.&lt;/p&gt;

&lt;p&gt;Knowledge Graph Design Matters&lt;br&gt;
Incorrect prerequisite relationships can produce poor recommendations.&lt;/p&gt;

&lt;p&gt;Multiple Signals Outperform Single Metrics&lt;br&gt;
Combining mastery estimates, graph reasoning, and embeddings produced more meaningful recommendations than any individual component.&lt;/p&gt;

&lt;p&gt;Several directions could make Elo Learn even stronger:&lt;/p&gt;

&lt;p&gt;Graph Neural Networks for concept reasoning&lt;/p&gt;

&lt;p&gt;Deep Knowledge Tracing using Transformers&lt;/p&gt;

&lt;p&gt;Real-time adaptive assessments&lt;/p&gt;

&lt;p&gt;Reinforcement learning for recommendation policies&lt;/p&gt;

&lt;p&gt;Large-scale deployment with cloud infrastructure&lt;/p&gt;

&lt;p&gt;Integration with Learning Management Systems&lt;/p&gt;

&lt;p&gt;Elo Learn began as an exploration of adaptive learning systems and evolved into a complete educational intelligence platform.&lt;/p&gt;

&lt;p&gt;Check it out here -&amp;gt; &lt;a href="https://github.com/Shridipa/Elo-Learn" rel="noopener noreferrer"&gt;https://github.com/Shridipa/Elo-Learn&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;By combining Bayesian Knowledge Tracing, knowledge graphs, recommendation systems, explainability, and spaced repetition, the project demonstrates how multiple AI techniques can work together to support personalized education.&lt;/p&gt;

&lt;p&gt;The biggest lesson from building Elo Learn was that effective learning recommendations require more than predicting what a student might like. They require understanding what a student knows, what they are ready to learn next, and why a particular learning path makes sense.&lt;/p&gt;




</description>
      <category>ai</category>
      <category>python</category>
      <category>machinelearning</category>
    </item>
  </channel>
</rss>
