Spaces:
Sleeping
Sleeping
title: Neuro Orion - NYC Taxi Traffic Time Series Anomaly Detection | |
emoji: 🐨 | |
colorFrom: indigo | |
colorTo: yellow | |
sdk: streamlit | |
sdk_version: "1.41.1" | |
app_file: src/app.py | |
pinned: true | |
[![Sync to Hugging Face hub](https://github.com/gdtan02/NeuroOrion_Time_Series_Anomaly_Detection/actions/workflows/main.yml/badge.svg)](https://github.com/gdtan02/NeuroOrion_Time_Series_Anomaly_Detection/actions/workflows/main.yml) | |
# NYC Taxi Traffic - Time Series Anomaly Detection | |
## Project Overview | |
This project is developed for WID3011 Deep Learning Assignment. | |
SDG 8: Sustainable Cities & Communities: | |
This problem examines an anomaly detection challenge using the NYC Taxi Traffic dataset, available on Kaggle | |
([https://www.kaggle.com/datasets/julienjta/nyc-taxi-traffic]) and provided by the NYC Taxi and Limousine | |
Commission. The dataset presents a univariate time series of total taxi passenger counts from July 2014 to January | |
2015, aggregated every 30 minutes. It includes five notable anomalies, occurring during the NYC Marathon, | |
Thanksgiving, Christmas, New Year’s Day, and a snowstorm. | |
The task involves implementing a complete anomaly detection pipeline: analyzing the NYC Taxi Traffic dataset, | |
developing a Long Short Term Memory (LSTM) model to detect outliers and anomaly. | |
**Group Name:** | |
Neuro Orion | |
**Group Members:** | |
1. Poo Wei Chien | |
2. Tan Guo Dong | |
3. Tan Zhi Jian | |
4. Sanjivan A/L Balajawahar | |
5. Marvin Chin Yi Kai | |
--- | |
## Acknowledgements | |
We acknowledge the contributors to the following resources: | |
- All the members of Neuro Orion for their contributions to the project. | |
- NYC Taxi Traffic dataset provided by NYC Taxi and Limousine Commission. | |
- Open-source tools and frameworks like TensorFlow, PyTorch, and Jupyter Notebook. | |
--- | |
## Installation Guide | |
Follow these steps to set up the project locally: | |
### 1. Clone the repository to your local machine: | |
Run the following command in your terminal: | |
```bash | |
git clone https://github.com/gdtan02/NeuroOrion_Time_Series_Anomaly_Detection.git | |
cd nyc-taxi-anomaly-detection | |
``` | |
### 2. Set up a Python Virtual Environment (Optional): | |
You can use `venv` or `conda` to create and activate a virtual environment to manage dependencies. | |
Using `venv`: | |
For Windows user, run the following command: | |
```commandline | |
python -m venv venv | |
venv\Scripts\activate | |
``` | |
For MacOS/Linux user, run the following command: | |
```commandline | |
python3 -m venv venv | |
source venv/bin/activate | |
``` | |
Using `conda`: | |
```commandline | |
conda create --name nyc-taxi-env python=3.8 -y | |
conda activate nyc-taxi-env | |
``` | |
### 3. Install dependencies: | |
Install all the required dependencies listed in `requirements.txt` file using `pip`: | |
```commandline | |
pip install -r requirements.txt | |
``` | |
### 4. Install Jupyter Notebook (Optional): | |
If Jupyter Notebook is not already installed, you can install it using `pip`: | |
```commandline | |
pip install notebook | |
``` | |
Alternatively, if you are using `conda`, you can install Jupyter Notebook using the following command: | |
```commandline | |
conda install -c conda-forge notebook | |
``` | |
### 5: Start Jupyter Notebook | |
Launch Jupyter Notebook to execute the project code: | |
```commandline | |
jupyter notebook | |
``` | |
A browser window should open, displaying the Jupyter Notebook interface. | |
If it does not open automatically, copy and paste the link shown in the terminal into your web browser. | |
You are now ready to run the project code in the Jupyter Notebook. | |
--- | |
## Development Setup | |
### 1: Code Formatting | |
We use Black for code formatting. To set up: | |
1. Install black and pre-commit: | |
```bash | |
pip install black pre-commit | |
``` | |
2. Run pre-commit hooks: | |
```bash | |
pre-commit install | |
``` | |
3. Run Black manually: | |
```bash | |
black . | |
``` | |
4. Configure VS Code (optional): | |
```json | |
{ | |
"python.formatting.provider": "black", | |
"editor.formatOnSave": true | |
} | |
``` | |
Refer to the [Black documentation](https://black.readthedocs.io/en/stable/) for more information. Reference from the article [here](https://dev.to/emmo00/how-to-setup-black-and-pre-commit-in-python-for-auto-text-formatting-on-commit-4kka) | |
--- | |