Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/d-kleine/natural_language_processing

Natural Language Processing Nanodegree - Udacity
https://github.com/d-kleine/natural_language_processing

nlp

Last synced: 17 days ago
JSON representation

Natural Language Processing Nanodegree - Udacity

Awesome Lists containing this project

README

        

# Natural Language Processing

This repository contains resources and projects for the Natural Language Processing Nanodegree offered by Udacity.

## Course Overview

The Natural Language Processing Nanodegree is designed to provide students with the skills and knowledge necessary to build applications that can understand, interpret, and generate human language. The course covers various techniques and tools used in Natural Language Processing (NLP), including text preprocessing, sentiment analysis, part-of-speech tagging, named entity recognition, machine translation, and sequence-to-sequence models.

## Projects
**Part of Speech Tagging**
* Using several techniques, including table lookups, n-grams, and hidden Markov models, to tag parts of speech in sentences, and compare their performance.

[Project](https://github.com/d-kleine/Natural_Language_Processing/tree/main/project1_pos-tagging)

**Machine Translation**
* Building a deep neural network that functions as part of an end-to-end machine translation pipeline. Your completed pipeline will accept English text as input and return the French translation. You’ll be able to explore several recurrent neural network architectures and compare their performance.

[Project](https://github.com/d-kleine/Natural_Language_Processing/tree/main/project2_machine-translation)

**Speech Recognizer**
* Building a deep neural network that functions as part of an end-to-end automatic speech recognition (ASR) pipeline. The model will convert raw audio into feature representations, which will then turn them into transcribed text.

[Project](https://github.com/d-kleine/Natural_Language_Processing/tree/main/project3_speech-recognition)

## Course Syllabus
**Introduction to NLP**
* Overview of NLP and its applications
* Text preprocessing techniques
* Regular expressions for pattern matching

**Sentiment Analysis**
* Understanding sentiment analysis and its use cases
* Building a sentiment analysis model using machine learning algorithms
* Deep learning techniques for sentiment analysis

**Part-of-Speech Tagging and Named Entity Recognition**
* Introduction to part-of-speech tagging and named entity recognition
* Hidden Markov Models (HMM) for part-of-speech tagging
* Conditional Random Fields (CRF) for named entity recognition

**Language Modeling and Machine Translation**
* Understanding language modeling and its applications
* Building n-gram language models
* Introduction to machine translation and neural machine translation (NMT)

**Sequence-to-Sequence Models**
* Introduction to sequence-to-sequence models
* Encoder-Decoder architecture for NMT
* Attention mechanisms in NMT

**Building a Machine Translation Model**
* Implementing a neural machine translation model using PyTorch
* Training and evaluating the model on a translation dataset

Speech Recognition with DeepSpeech
* Introduction to automatic speech recognition (ASR)
* Training a deep learning model for speech recognition using DeepSpeech

**Building a Question Answering System**
* Designing and implementing a question answering system
* Using pre-trained language models for question answering