You are on page 1of 51

Research Topics for Undergraduates

Presented by

Search Engine Pipilika


Department of Computer Science and Engineering, SUST.
First Part
- Why you are here?
- Academic overview of each year
- Research Topics in Computer Science
- Cutting edge technologies of Computer Science
- AI: Its all about probability
- Why we need Machine Learning
- Introduction to Natural Language Processing
- NLP research topics
- Where to start learning?
Why you are here?

Introduction to some of the research areas in Computer Science


Where to start learning so that you can work in these fields

The idea is to introduce these cutting edge technologies to you a bit earlier so that you can explore it for a bit longer
and see if you can use these knowledges in your future career.
Why you study what you study?
Academic Overview : First Year

How to convert your thoughts into computer programs using programming language (data
structures and algorithms)
+ Some theories on how computer works.
Academic Overview : Second Year

How to manage relatively large and complex computer programs in more structured way (object
oriented concepts)
+ More theories on how computer works.
Academic Overview : Third Year

How to store and retrieve data in a structured way(DBMS)


How to effectively use reusable codes (frameworks, design patterns) for redundant tasks.
A bit of how to manage really large and complex real life projects/services that involves multiple
people (Software Engineering)
+ More and more theories on how computer really works
Academic Overview : Fourth Year

Now that you (almost) know how to write large and complex programs, and how computers really
works, You are introduced cutting edge technologies of computer science.
You are introduced a fancy term called Research with all those technical jargons.

But one year is not enough time to learn all the prerequisites and solve complex R&D problems.
Research Topics
Optimization and Algorithm
System software and Operating system
Computer Graphics
Computer Networking
Computational theories and computer architecture
Artificial Intelligence
Machine Learning and Pattern Recognition
Natural language Processing
Image processing and computer vision
Bioinformatics
Robotics
Human Computer Interaction
Data analysis
Artificial intelligence and Machine Learning
AI: Its all about probability

What people think AI looks like. What AI actually looks like!


What is Machine Learning

Machine learning is the science of getting computers to


learn without being explicitly programmed.

Sebastian Thrun, Chairman and co-founder of Udacity.


Types of Machine Learning
Three types of Machine Learning.

Supervised Learning
Unsupervised Learning
Reinforcement Learning

Goal: You have some data and (maybe) their outcomes (Training Set). Your job is to find a pattern in the data using
Learning Algorithms (Model), so that you can predict the outcome of a new data in the future (Test set).
Machine Learning: Supervised Learning
In supervised learning, the properties and
the outcome of the data is known.
Goal is to find a boundary between different
outcomes.

Classification Problem
Machine Learning: Unsupervised Learning
In Unsupervised learning, the properties of
the data is known, but the outcome of the
data is not known.
Goal is to detect different types, and find the
boundaries between these types.
Some Learning Algorithms
Supervised: Unsupervised:

Linear Regression K-means Clustering


Logistic Regression Ward Clustering
Hidden Markov Model Anomaly Detection
Naive Bayes classifier Neural Networks
Support Vector machine Deep Neural networks
Conditional Random field
Neural Networks
Deep Neural networks
Machine Learning Libraries
For Supervised Learning and
Unsupervised Learning, Use Scikit-learn
(python).

For Neural networks and Deep


Learning, use TensorFlow (python).
Natural Language Processing

Balance is not something you find, it's something you create.


NLP: Problems
Language Modeling
Spell Checker
Text Classification
Parts of speech tagging
Sentiment Analysis
Named Entity Recognition
Semantic role labeling
Information Extraction
Text Understanding
Text to speech
Machine Translation
NLP: Problems
Language Modeling
Spell Checker
Text Classification
Parts of speech tagging N-gram Language modeling
Sentiment Analysis Word Embedding
Named Entity Recognition
Semantic role labeling
Information Extraction
Text Understanding
Text to speech
Machine Translation
NLP: Problems
Language Modeling
Spell Checker
Text Classification
Parts of speech tagging -
Sentiment Analysis
Named Entity Recognition ..
Semantic role labeling
Information Extraction
Text Understanding
Text to speech
Machine Translation
NLP: Problems
Language Modeling
Spell Checker
Text Classification
Parts of speech tagging
Sentiment Analysis
Named Entity Recognition
Semantic role labeling
Information Extraction
Text Understanding
Text to speech
Machine Translation
NLP: Problems
Language Modeling
Spell Checker
Text Classification
Parts of speech tagging Hidden Markov Model
Sentiment Analysis Support Vector Machine
Named Entity Recognition Conditional random Field
Semantic role labeling
Information Extraction
Text Understanding
Text to speech
Machine Translation
NLP: Problems
Language Modeling
Spell Checker
Text Classification

Parts of speech tagging

Sentiment Analysis
Named Entity Recognition

Semantic role labeling

Information Extraction

Text Understanding
Text to speech
Machine Translation
NLP: Problems
Language Modeling
Spell Checker
Text Classification
Parts of speech tagging
Sentiment Analysis
Named Entity Recognition
Semantic role labeling Information Extraction
Information Extraction
Text Understanding NER: [place] , [place] ,
Text to speech [person]

Machine Translation SRL: -


NLP: Problems
Language Modeling
Spell Checker
Text Classification
Parts of speech tagging
Sentiment Analysis
Named Entity Recognition
Semantic role labeling
Information Extraction
Text Understanding
Text to speech
Machine Translation
NLP: Problems
Language Modeling
Spell Checker
Text Classification
Parts of speech tagging
Sentiment Analysis
Named Entity Recognition
Semantic role labeling
Information Extraction
Text Understanding
Text to speech
Machine Translation
NLP: Problems
Language Modeling
Spell Checker Balance is not something you find, it's something
Text Classification you create.
Parts of speech tagging
Sentiment Analysis
Named Entity Recognition
Semantic role labeling
Information Extraction
Text Understanding
Text to speech
Machine Translation
Research Goals
Make things Time efficient.
Make things Memory efficient.
Make things cost efficient.
Make things more Accurate.
Solve something that was previously unsolved.
Show a new way of doing something.

Where to get idea?


- Try to solve a real-life problem.
Before start working
Once you decide to work with some problem, you should:

Read as many paper as possible on that topic (See how other people solved the problem).
What is the latest state-of-the-art solution?

Try to use standard dataset (If not available, create it) for that problem.
Use standard implementation of the algorithms (Never try to implement by yourself).
ML and NLP: Where to start
Introduction to Statistics
Introduction to Machine Learning
Natural Language Processing
ML and NLP: Where to start
Introduction to Statistics
Introduction to Machine Learning
Natural Language Processing

Alison Jeffrey
ML and NLP: Where to start
Introduction to Statistics
Introduction to Machine Learning
Natural Language Processing

Andrew Ng.
ML and NLP: Where to start
Introduction to Statistics
Introduction to Machine Learning
Natural Language Processing

D. Jurafsky C. Manning
Thank You!
Second Part
Eaiman Shoshi

- Search Engine
- Components of search Engine
- Crawler
- Crawler Technologies
- Indexer
- Indexer Technologies
- Pipilika Services
- What can be done more (Future Work)
- Learning resources
Search Engine
A program that searches for and identifies items in a database that correspond to keywords or characters
specified by the user, used especially for finding particular sites on the World Wide Web (WWW).
Components of
Search Engine
- Crawler
- Indexer
- Database
- Web Interface
Crawler
A Web crawler, sometimes
called a spider, is an
Internet bot that
systematically browses
the World Wide Web,
typically for the purpose
of Web indexing (web
spidering)
Crawler
Name Language Platform

Scrapy Python Cross-platform

Nutch Java Cross-platform

GRUB C#, C, Python, Perl Cross-platform

PHP-Crawler PHP Cross-platform

crawler4j Java Cross-platform

ht://Dig C++ Unix


Indexer
Search engine indexing
collects, parses, and stores
data to facilitate fast and
accurate information retrieval
Indexer

Name Licence

Apache Solr Open Source

Apache Lucene Core Open Source

Elasticsearch Open Source

Nutch Open Source

Microsoft Azure Paid

Amazon Cloudsearch Paid


Pipilika Services

developers.pipilika.com/docs

news.pipilika.com

spellchecker.pipilika.com

jobs.pipilika.com

library.pipilika.com

product.pipilika.com
What can be done
more?
- Image search
- Knowledge Graph
- Voice Search
- Point of Interest
- And .
Image Search
- Upload a picture from your desktop, tablet or mobile phone, and show all the other web pages on the
Internet that have similar images.

- The metadata of the image is indexed and stored in a large database and when a search query is
performed the image search engine looks up the index, and queries are matched with the stored
information.

- Example: Google Image Search.


Knowledge Graph
- The Knowledge Graph is a
knowledge base to enhance
search engine's search results
with semantic-search
information gathered from a
wide variety of sources.

- The goal is that users would be


able to use this information to
resolve their query without
having to navigate to other
sites and assemble the
information themselves
Voice Search
- Voice Search allows users to use
Search Engine by speaking on a
mobile phone or computer

- Example: Google Voice Search


Point of Interest (POI)
- Its a term most often used on a map
or in a guidebook, to indicate an
attraction that might be of interest
to visitors. It could be a site where
something historic happened, where
someone famous was born, or died,
or is buried, a building, a monument,
a museum, any number of things.
- A point of interest, or POI, is a
specific point location that someone
may find useful or interesting.
- Most consumers use the term when
referring to hotels, campsites, fuel
stations or any other categories
used in modern navigation systems.
And many more...
- Stock Market
- Product Categorization
- News Categorization
- Weather Prediction
- etc.
The End

You might also like