Aditya Chatterjee's Blog, page 89

May 15, 2022

Decrease and Conquer

In this article, we will discuss about the technique Decrease and Conquer which is similar to Divide and Conquer. Decrease and Conquer can be used to solve several important problems such as Fake Coin Problem, Generating Subsets and much more.

What we'll see,

Decrease and Conquer TechniqueVariations in Divide and Conquer TechniqueThe Fake Coin ProblemThe Selection ProblemGenerating SubsetsConclusionReferenceDecrease and Conquer Technique

As divide and conquer technique, which includes d...

 •  0 comments  •  flag
Share on Twitter
Published on May 15, 2022 03:14

Different Classification Trees in Machine Learning

In this article, we will be learning about different Classification tree methods such as C4.5, CHAID and much more along with some key similarities and differences between them. An implementation in Python is also explained.

ContentsIntroduction to Decision TreesCommon Distinguishing FeaturesDifferent Decision Tree Classification AlgorithmsImplementationConclusionIntroduction to Decision Trees

A decision tree is a type of supervised machine learning algorithm that is used to categorize o...

 •  0 comments  •  flag
Share on Twitter
Published on May 15, 2022 03:05

May 14, 2022

Local response normalization (LRN)

In this article, we have explained the concept of Local response normalization (LRN) in depth along with comparison with Batch Normalization.

Table of contents:

Introduction to NormalizationLocal response normalization (LRN)Local response normalization (LRN) in TensorFlowBatch Normalization vs Local response normalization (LRN)

Pre-requisite:

Normalization in Machine Learning: A Breakdown in detailBatch NormalizationIntroduction to Normalization

Normalization is used in deep neural netw...

 •  0 comments  •  flag
Share on Twitter
Published on May 14, 2022 07:32

May 13, 2022

Longest Geometric Progression

In this article, we have explained how to solve the problem of Longest Geometric Progression efficiently using Dynamic Programming. It involves the use of Map data structure in implementation which is different from other standard problems.

Table of contents:

Problem statement: Longest Geometric ProgressionNaive ApproachDynamic Programming Approach

We can solve it via Naive Approch or via Dynamic Programming (where we have to use Map of Float Map).

Problem statement: Longest Geometric Progre...
 •  0 comments  •  flag
Share on Twitter
Published on May 13, 2022 09:23

May 12, 2022

Fitting Shelves Problem [Greedy Algorithm]

In this article, we will understand what fitting shelves problem is and will see a greedy approach algorithm of solving this problem.

What does Fitting Shelves Problem say?

So, the problem states that given a wall having length W, and two shelves of length m, and n, we are tasked with fitting the wall of length W with shelves of length m and n in such a way that the space left empty(which can't be filled with shelf) is to be minimized, and if possible the solution having larger number of longer ...

 •  0 comments  •  flag
Share on Twitter
Published on May 12, 2022 13:52

Neural Architecture Search (NAS)

The aim of this article is to provide a clear and intuitive inderstanding of the deep learning paradigm known as Neural Architecture Search (NAS).

Table of Contents

The sections of the article are outlined as below:

Justification for NASNAS: What is it?Analogy TimeNAS ComponentsApplication of NASQuestionsResourcesConclusionJustification for NAS

From LeNet to Resnet and beyond, the search for new and better neural network paradigms has been a heated activity. This is exacerbated even ...

 •  0 comments  •  flag
Share on Twitter
Published on May 12, 2022 13:45

Add support of Debugging: DWARF, Functions, Source locations, Variables

In this article, we continue to discuss other aspects involved with debugging and debugging information in a Programming Language. We discuss how to include function definitions, source locations, and variable locations in debug information.

Table of contents.Introduction.DWARF emission setup.Function definitions.Source locations.Variable locationsSummary.References.Prerequisites.

Add debugging support in Programming Language

Introduction.

We will learn how to include debug information...

 •  0 comments  •  flag
Share on Twitter
Published on May 12, 2022 03:23

Building a Compiler Front-End

The front-end of a compiler comprises four phases, source code is converted from high-level code to an intermediate representation which is optimized and compiled to machine code.

Table of contents.Introduction.The compiler front-end.LLVM.Kaleidoscope.Summary.References.Prerequisite.

LLVM: IR, Assembly, SSA.

The compiler front-end.

The front-end of a compiler comprises four phases, these are lexical analysis, syntax analysis, and semantic analysis.

llvm2-5

Lexical analysis.
Here source code wr...

 •  0 comments  •  flag
Share on Twitter
Published on May 12, 2022 03:19

May 10, 2022

Pure and Mixed Strategy Nash equilibrium

In this article, we will discuss about the pure and mixed strategy nash equilibrium which are important concepts in Game Theory.

What we'll see,

Game TheoryNash Equilibrium in Game TheoryExample of a nash equilibriumPure strategy Nash EquilibriumMixed strategy Nash EquilibriumExplained through examplesConclusionGame TheoryGame theory is the study of mathematical models of strategic interactions among rational agents. It has various applications in fields of social science, in logic, sy...
 •  0 comments  •  flag
Share on Twitter
Published on May 10, 2022 13:47

Add debugging support in Programming Language

A good programming language should also be able to support debugging and debug information. In this article, we add support for debugging and debug information.

Table of contents.Introduction.Ahead-of-time(AOT) compilation.Summary.References.Prerequisites.

Compiling to object code.

Introduction.

Until now, we can use functions and variables in Kaleidoscope, however, the main purpose of compilers is to report errors so we can debug code before shipping it to the client.

In this article, we...

 •  0 comments  •  flag
Share on Twitter
Published on May 10, 2022 11:50