## 01. Human-Language-and-NLP

<div align="center">
  <table>
    <tr>
      <td align="center"><img src="https://cdn-icons-png.flaticon.com/512/2299/2299713.png" width="80"/></td>
      <td align="center"><img src="https://cdn-icons-png.flaticon.com/512/2408/2408814.png" width="80"/></td>
      <td align="center"><img src="https://cdn-icons-png.flaticon.com/512/2351/2351559.png" width="80"/></td>
    </tr>
  </table>
</div>

## 01.1. What is Human Language?

### <td align="center"><img src="https://cdn-icons-png.flaticon.com/512/7963/7963858.png" width="80"/> Introduction

Human Language and Natural Language Processing (NLP) focus on how humans communicate using language and how machines can be designed to understand, interpret, and generate that language. Human language is inherently complex, ambiguous, contextual, and dynamic. NLP sits at the intersection of linguistics, computer science, and artificial intelligence, aiming to bridge the gap between human communication and computational systems.

This module establishes the conceptual foundations needed to understand how language works and how it can be modeled computationally, serving as the basis for more advanced topics such as transformers, large language models, and retrieval-augmented generation.

---

### <td align="center"><img src="https://cdn-icons-png.flaticon.com/512/5557/5557844.png" width="80"/> Why use it?

Understanding Human Language and NLP is essential because:

- Language is the primary interface between humans and intelligent systems  
- Most real-world data (documents, chats, logs, emails) is unstructured text  
- NLP enables machines to extract meaning, intent, and knowledge from text  
- Modern AI systems (LLMs, chatbots, copilots) are built on NLP foundations  

Without these concepts, it is difficult to reason about why models behave the way they do, how errors arise, or how to design robust language-based systems.

---

### <td align="center"><img src="https://cdn-icons-png.flaticon.com/512/7527/7527144.png" width="80"/> How it works?

At a high level, NLP systems follow a layered process:

1. **Language Observation** — raw human language (text or speech) is collected  
2. **Preprocessing** — text is cleaned, normalized, and segmented  
3. **Representation** — language is converted into machine-readable forms (tokens, vectors, embeddings)  
4. **Understanding (NLU)** — the system identifies intent, entities, syntax, and semantics  
5. **Generation (NLG)** — the system produces coherent, context-aware language output  
6. **Evaluation** — outputs are measured using linguistic and task-based metrics  

These steps may be implemented using symbolic rules, statistical methods, neural networks, or hybrid approaches.

---

### <td align="center"><img src="https://cdn-icons-png.flaticon.com/512/2299/2299623.png" width="80"/> Components

Core components covered in this section include:

- **Human Language Concepts**
  - Syntax, semantics, pragmatics
  - Structure vs. meaning
  - Ambiguity and context

- **NLP Paradigms**
  - Statistical NLP
  - Symbolic NLP
  - Neural NLP
  - Hybrid approaches

- **NLP Pipeline**
  - Text cleaning and normalization
  - Tokenization
  - Syntactic parsing
  - Semantic parsing
  - Evaluation metrics

- **NLU (Natural Language Understanding)**
  - Intent classification
  - Named entity recognition
  - Semantic role labeling

- **NLG (Natural Language Generation)**
  - Text planning
  - Surface realization
  - Output evaluation

---

### <td align="center"><img src="https://cdn-icons-png.flaticon.com/512/6404/6404564.png" width="80"/> Use Cases

Human Language and NLP concepts power a wide range of applications, including:

- Search engines and information retrieval  
- Chatbots and virtual assistants  
- Machine translation  
- Text summarization  
- Sentiment analysis and opinion mining  
- Document classification and routing  
- Question answering systems  
- Large Language Models (LLMs) and AI copilots  

These use cases rely on a deep understanding of how language encodes meaning and how machines can approximate that understanding.

---

### <img src="https://cdn-icons-png.flaticon.com/512/2956/2956457.png" width="80"> Contents
- [GeeksForGeeks](https://www.geeksforgeeks.org/nlp/natural-language-processing-overview)
- [IBM](https://www.ibm.com/think/topics/natural-language-processing)
- [AWS](https://aws.amazon.com/what-is/nlp/)

---

### <img src="https://cdn-icons-png.flaticon.com/512/2112/2112889.png" width="80"> Videos

A few recommended resources to visualize:

<div align="center">
  <a href="https://www.youtube.com/watch?v=NXN4xFh-tgI" target="_blank">
      <img width="640" height="360" src="https://i.ytimg.com/vi/NXN4xFh-tgI/hq720.jpg?sqp=-oaymwEnCNAFEJQDSFryq4qpAxkIARUAAIhCGAHYAQHiAQoIGBACGAY4AUAB&rs=AOn4CLDDpJqG1sq0dmiTbpKFFVF2DiKxbw"/>
  </a>
</div>

---

<div align="center">
  <a href="https://www.youtube.com/watch?v=fLvJ8VdHLA0&t" target="_blank">
      <img width="640" height="360" src="https://i.ytimg.com/vi/fLvJ8VdHLA0/hq720.jpg?sqp=-oaymwEnCNAFEJQDSFryq4qpAxkIARUAAIhCGAHYAQHiAQoIGBACGAY4AUAB&rs=AOn4CLCjq8wRRS16ldH-MyWo-oAgb3SjzQ"/>
  </a>
</div>
