Welcome to the One Direction AI Analyst & Lyricist project! This is a comprehensive Streamlit application that provides a deep dive into the lyrical world of One Direction. It combines in-depth data analysis to uncover trends in their music with a custom-trained AI model capable of generating original lyrics in their signature style.
This application is designed for fans, researchers, and data enthusiasts alike, offering a unique way to interact with and understand the discography of one of a generation's most iconic bands.
This application offers a wide range of features, including:
- 🌐 Multi-Language Support: Full interface in both English and Indonesian.
- 📊 Comprehensive EDA: Explore detailed statistics and visualizations about the songs, albums, and lyrics.
- 📈 Sentiment Analysis: Analyze the emotional tones (positive, negative, neutral) across albums and individual songs.
- 🎭 Emotion Detection: Delve deeper into the specific emotions (joy, sadness, anger, fear) conveyed in the lyrics.
- 📚 Lexical Analysis: Examine the linguistic complexity, vocabulary richness, and evolution of lyrical patterns over time.
- 🕸️ Network Analysis: Visualize the hidden connections between songs based on lyrical similarity.
- 🔮 Topic Modeling: Uncover the dominant themes in One Direction's music and see how they shifted throughout their career.
- 🤖 AI-Powered Lyrics Generation: Use a custom-trained LSTM model to generate new, original lyrics in the style of One Direction. (Requires a compatible system for TensorFlow installation.)
This project is built with a modern stack of data science and web development tools:
- Core Framework: Streamlit
- Data Manipulation: Pandas, NumPy
- Data Visualization: Plotly, Matplotlib, Seaborn, WordCloud
- Machine Learning/NLP: TensorFlow (Keras), Scikit-learn, NLTK, Spacy, TextBlob
- Environment: Python 3.12
Follow these instructions to get the project up and running on your local machine.
- Python 3.12: This project is configured to run on Python 3.12. Using other versions may cause dependency issues, especially with TensorFlow. You can download it from the official Python website.
- Git: (Optional) For cloning the repository.
-
Clone the Repository (Optional):
git clone <repository-url> cd <repository-directory>
-
Create and Activate a Virtual Environment: It is highly recommended to use a virtual environment to manage project dependencies. This keeps your global Python installation clean.
# Create the virtual environment using Python 3.12 python3.12 -m venv venv # Activate the environment # On macOS/Linux: source venv/bin/activate # On Windows: .\venv\Scripts\activate
-
Install Dependencies: All required packages are listed in
requirements.txt
. Install them with a single command:pip install -r requirements.txt
-
Install TensorFlow for Your System: TensorFlow installation can be system-specific. After installing the other requirements, run the following command. For Apple Silicon (M1/M2/M3) Macs, this will also install
tensorflow-metal
for GPU acceleration.pip install tensorflow
If you are on an Apple Silicon Mac, you can verify the Metal plugin is installed:
pip show tensorflow-metal
Once the installation is complete, you can run the Streamlit application with the following command:
streamlit run app.py
The application will automatically open in your default web browser. If it doesn't, you can access it at http://localhost:8501
.
/UAS_DATMIN
├── csv/ # Contains the primary dataset (one_direction_lyrics.csv)
├── images/ # Stores static image assets for visualizations
├── model/ # Contains the pre-trained AI model files
├── venv/ # Python virtual environment (after setup)
├── app.py # The main Streamlit application script
├── requirements.txt # A list of all Python dependencies
├── README.md # This file
└── UAS_DATAMINING_4818_4829.ipynb # Jupyter Notebook with the original analysis
This project was developed by rizky28eka.# One-Direction-EDA-Lyrics-Generation