DN

Divija Nagaraju

NLP and ML enthusiast

Email

About Me

My primary interests lie in the fields of Information Retrieval and Natural Language Processing. Be it to form generalisations about large chunks of textual data, or to understand natural language at an abstract level. When I'm not reading or teaching machines to read, I spend my time swimming, travelling and trying out different cuisines.

Latest Projects


Knowledge extraction from unstructured textual literature using NLP and deep learning techniques

The work was undertaken at Siemens R&D Centre and came under the scope of ’Knowledge based engineering and simulations’. The aim was to automatically process technical literature such as research papers and industry manuals so that a machine can understand such data and guide decision making processes in the engineering design domain. Consequently, a Question and Answering system was developed which takes in a user query and provides outputs in the form of a single sentence answer, a knowledge panel and an inferenced answer using Bi-directional attention flow(BIDAF) mechanisms, unsupervised dependency parsing and Markov Logic Networks respectively.


Samsung Internship Project

Improvement of the Natural Language Understanding unit of Bixby

Worked on evaluating and improving the efficiency of the natural language understanding unit of Samsung's Bixby. Studied the underlying architecture for the voice assistant including how Recurrent Neural Networks are used to understand phrases of spoken language.


Clinical Narratives

Automated event extraction from Clinical Narratives

The aim of the project was to digitise and annotate medical records. Some of the various steps taken include performing named entity recognition on the raw medical records, classifying entities (into cause, symptoms and cure) , extracting temporal references and marking of various events in a patient’s document onto a timeline in an automated way.


Android Malware Detection

Android Malware Detection

This project dealt with classification of android apps into malware or benign using One Class SVM. Android APKs and their manifest files were preprocessed several times to generate feature vectors using their smali respresentations, control flow graphs and other reverse engineered features.

View on GitHub


Efficient Manifold Ranking for Image Retrieval

A computationally more efficient version of the original Manifold Ranking algorithm was implemented with a scalable graph construction. Manifold Ranking (MR) is a technique that can be used in further optimizing precision and recall in Medical image retrieval applications as it ranks items by traversing a dynamically constructed content-specific information graph.

Publication Link


Robust Twin Support Vector Machine for Pattern Classification

As a part of the project, instead of the classic Support Vector Machines, a robust & twin SVM was implemented which is capable of handling datasets with noise efficiently. A comparison was made between the results obtained thus and those produced using the traditional SVM and the former was confirmed to give better results for noisy datasets and has a better classification accuracy.

Base paper Link


Recommendation System (Item-Based Collaborative Filtering) in Python

Created an Ecommerce website from scratch and performed tasks like scraping data, designing the GUI, developing a recommendation system and adding a semantic ontology based search feature for efficient product retrieval.

Other Projects

Connected Components Labelling for Binary Images in C/C++

Implemented Suzuki and 2 pass algorithms for labelling of connected components. The algorithms were optimised by adopting a parallel as well as distributed approach using OpenMP directives and MPI respectively.

View on GitHub

Emotion Recognition System in Python

Built a system to track understandability quotient among conference attendees. This was done by using the sub processes of image segmentation, face recognition and subsequently tracking the movements of the corresponding facial features.

View on GitHub

Maximum Clique Problem in C++

Implemented a branch-and-bound algorithm for the maximum clique problem with a new pruning strategy. An attempt was made to optimise the algorithm previously presented by guaranteeing an upper bound on the maximum size of the clique by implementing a greedy colouring strategy.

View on GitHub

Braille-Toolbox

A toolbox created using HTML CSS JS and uses Python scripts for basic fuctionality. A web based application was built to facilitate the visually impaired to perform basic text editing tasks.

View on GitHub

Chain Reaction Game and Automata in HTML CSS

Developed a multiplayer chain reaction game using HTML, CSS, JS Framework. Additionally a Non Deterministic Finite Automata was developed to portray the various states of the game board to facilitate future development of a heuristic.

View on GitHub

Ghost Word Game in Java

Developed a Multiplayer and Uniplayer game in Android which predicts words and assigns scores based on the length of the words. Major work done includes implementation of the A* algorithm for improved efficiency and using Tries for faster access and storage.

View on GitHub

Dice Game in Java

Developed a single player game in Android which uses motion detection and assigns scores based on random numbers which appear on the dice’ surface. Major work done includes smooth updation of the dice’ images and utilising Android Studio’s various animation libraries.

View on GitHub

Work Experience

Knowledge Representations and Reasoning Engineer-I -
Samsung Research Institute (Jun 2018 - Present)

Presently working on a mobile application recommendation system for Samsung phone users by profiling phone usage and building a user specific knowledge graph.

Research Intern - Siemens Research and Development (Jul 2017 - Dec 2017)

Worked on building a Domain Specific knowledge graph by automated natural language understanding of scientific literatures and research papers.

Software Intern - Samsung Research Institute (May 2017 - Jul 2017)

Worked on the Natural language Understanding unit of Bixby- Samsung's new voice assistant. The work undertaken included understanding of Long short term memory networks and an error analysis of the current Bixby version.