Using Clustering for Semi-Supervised Learning

Another use case for clustering is in semi-supervised learning, when we have plenty of unlabeled instances and very few labeled instances. Let’s train a logistic regression model on a sample of 50 labeled instances from the digits dataset: n_labeled = 50 log_reg = LogisticRegression() log_reg.fit(X_train[:n_labeled], y_train[:n_labeled]) What is the performance of this model on the … Read more

Using clustering for image segmentation

Image segmentation is the task of partitioning an image into multiple segments. In semantic segmentation, all pixels that are part of the same object type get assigned to the same segment. For example, in a self-driving car’s vision system, all pixels that are part of a pedestrian’s image might be assigned to the “pedestrian” segment … Read more

Accelerated K-Means and Mini-batch K-Means

Introduction Another important improvement to the K-Means algorithm was proposed in a 2003 paper by Charles Elkan. It considerably accelerates the algorithm by avoiding many unnecessary distance calculations: this is achieved by exploiting the triangle inequality (i.e., the straight line is always the shortest) and by keeping track of lower and upper bounds for distances … Read more

Implementation of K-Means Clustering in Machine Learning

Consider the unlabeled dataset represented in Figure below: you can clearly see 5 blobs of instances. The K-Means algorithm is a simple algorithm capable of clustering this kind of dataset very quickly and efficiently, often in just a few iterations. It was proposed by Stuart Lloyd at the Bell Labs in 1957 as a technique … Read more

What is Stacking of Models in Machine Learning?

The last Ensemble method we will discuss in this series is called stacking (short for stacked generalization). It is based on a simple idea: instead of using trivial functions (such as hard voting) to aggregate the predictions of all predictors in an ensemble, why don’t we train a model to perform this aggregation? Figure below … Read more

Locally linear Embedding For Dimensionality Reduction in Machine Learning

Locally Linear Embedding (LLE) is another very powerful nonlinear dimensionality reduction (NLDR) technique. It is a Manifold Learning technique that does not rely on projections like the previous algorithms. In a nutshell, LLE works by first measuring how each training instance linearly relates to its closest neighbors (c.n.), and then looking for a low-dimensional representation … Read more

Web Development Project Guide for Freshers

Web Development Project Guide for Freshers Starting your journey as a web developer can be both exciting and challenging. To make the process smoother, here’s a detailed guide to beginner-friendly projects that will help you gain hands-on experience with full-stack development. Each project leverages modern technologies and includes step-by-step instructions to guide you through the … Read more

Letter Combinations of a phone number

Given a string containing digits from 2-9 inclusive, return all possible letter combinations that the number could represent. Return the answer in any order. A mapping of digits to letters (just like on the telephone buttons) is given below. Note that 1 does not map to any letters. Example 1: Input: digits = “23” Output: [“ad”,”ae”,”af”,”bd”,”be”,”bf”,”cd”,”ce”,”cf”] Example 2: … Read more

3 Sum Closest | LeetCode

Given an integer array nums of length n and an integer target, find three integers in nums such that the sum is closest to target. Return the sum of the three integers. You may assume that each input would have exactly one solution. Example 1: Input: nums = [-1,2,1,-4], target = 1 Output: 2 Explanation: The sum that is closest to the target is … Read more

RAG with Llama 2, LangChain and ChromaDB: A Practical Implementation

Introduction Learn how Retrieval-Augmented Generation (RAG) works by building an end-to-end RAG pipeline with Llama 2, LangChain, Hugging Face embeddings, and ChromaDB — and understand how this early architecture compares with modern production RAG systems. Originally published: August 2, 2024Updated: September 2026 Introduction Large Language Models (LLMs) can answer questions, summarize text, generate code, and … Read more

Finding the Top K Most Frequent Elements in an Array

Python

Finding the top ( k ) most frequent elements in an array is a common question in coding interviews and a useful task in various applications like data analysis and natural language processing. This guide will walk you through three effective methods to solve this problem: using a HashMap with sorting, Min-Heap, and Bucket Sort. … Read more

Finding the Top K Largest Elements in an Array

In many coding interviews and real-world applications, finding the top ( k ) largest elements in an array is a common problem. This tutorial will guide you through three popular methods to solve this problem: Sorting, Min-Heap, and the Quick select algorithm. We’ll focus on the Min-Heap approach due to its efficiency and practical use … Read more

XGBoost in Machine Learning: How It Works, When to Use It, and Python Implementation

Learn how XGBoost works from decision trees and boosting intuition to gradient boosting, regularization, hyperparameter tuning, SHAP explainability, and production deployment. Includes practical Python examples for classification and regression. Originally published: April 18, 2024Updated: 3rd September 2026 Introduction If you have worked with tabular machine learning problems, you have probably encountered XGBoost. XGBoost, short for … Read more

Counting Odd and Even Occurrences in an Array

Introduction: In programming, it’s common to encounter scenarios where you need to count the number of elements occurring an odd number of times and the number of elements occurring an even number of times in an array. This tutorial will guide you through the process of solving such a problem efficiently using Python. Understanding the … Read more

How to Check if a Number is Prime in Python

Introduction:Prime numbers are natural numbers greater than 1 that have no positive divisors other than 1 and themselves. Determining whether a given number is prime or not is a common problem in mathematics and computer science. In this tutorial, we’ll learn how to write a Python program to check if a number is prime or … Read more

Deleting Nodes with Greater Values on the Right Side in a Linked List

Introduction:In programming, efficiently managing linked lists is a crucial skill. Deleting nodes with greater values on the right side is a common problem encountered while working with linked lists. In this tutorial, we’ll explore an optimized algorithm to tackle this problem using Python programming. We’ll delve into the implementation details, algorithmic insights, and optimization techniques … Read more

Finding Maximum Difference Type in an Array

Introduction:Discovering the maximum difference between elements in a Python array is a crucial programming task, often demanding efficient algorithms for optimal results. In this comprehensive tutorial, we’ll delve into Python programming techniques to efficiently solve this problem. We’ll explore the intricacies of implementation, delve into algorithmic insights, and analyze time complexity to comprehend the solution … Read more

Sorting Unique Integers Without Built-in Functions in Python

Introduction:Sorting a list of unique integers is a common task in programming, often requiring efficient algorithms to achieve the desired result. In this tutorial, we’ll explore how to implement a Python function to sort unique integers in ascending order without using any built-in sort functions. We’ll delve into the insertion sort algorithm and demonstrate its … Read more

Character Frequency Counting in Strings

Introduction: Character frequency counting is a common task in string manipulation, often encountered in various programming scenarios. In this tutorial, we’ll explore an efficient approach to calculate the frequency of each character from ‘a’ to ‘z’ in a given string ‘S’, using Python programming. We’ll delve into the algorithmic insights and analyze the time complexity … Read more