- (ML) M312B4KY2530 - Mochammad Dhiya Ulhaq - Universitas Sebelas Maret
- (ML) M312B4KY2631 - Muhamad Faqih Zacky - Universitas Sebelas Maret
- (ML) M312B4KX3214 - Nadya Putri Uswatun Hasanah - Universitas Sebelas Maret
- Stock Recommendation (Financial Freedom Calculator) - Mochammad Dhiya Ulhaq (M312B4KY2530) & Nadya Putri Uswatun Hasanah (M312B4KX3214)
- Stock Prediction (Financial Freedom Calculator) - Mochammad Dhiya Ulhaq (M312B4KY2530) & Nadya Putri Uswatun Hasanah (M312B4KX3214)
- Receipt OCR (Income and Expense Tracking) - Muhamad Faqih Zacky (M312B4KY2631)
- Audio Recognition (Income and Expense Tracking) - Muhamad Faqih Zacky (M312B4KY2631)
This project is our final project for Google Bangkit Academy 2024 Batch 2.
Project Background:
Financial stability is crucial for personal and societal well-being, yet many Indonesians face challenges in achieving it. Data from BPS and a 2023 DBS survey indicate a large portion of household income is spent on non-essential items without proper planning. This issue is compounded by low financial literacy, leading to unnecessary spending and limiting the ability to save. If left unaddressed, these problems may prolong financial instability and negatively affect the quality of life in Indonesia.
To tackle this issue, our team developed Anggar.In, a comprehensive financial management solution. The app helps users track income and expenses through manual input, receipt scanning, and voice commands, offering a clear view of spending patterns. Its personalized budgeting feature aids in managing spending limits, while savings goal planning supports consistent savings. Anggar.In also provides financial analysis tools, presenting spending trends and insights to help users become more aware of their finances. The investment recommendation system can also guide users towards financial freedom.
Leveraging machine learning, cloud computing, and mobile technology, Anggar.In aims to boost financial awareness, foster sustainable habits, and support informed decision-making, helping Indonesians navigate economic challenges and build long-term financial resilience.
Machine Learning:
In the Machine Learning path, we developed several features, starting with our MVP stock prediction and recommendation models for a financial freedom calculator. These models utilize TensorFlow, are saved using TensorFlow.js for web deployment, preprocess data using Min-Max Scaler for normalization, and apply time series forecasting for stock price prediction alongside linear regression for stock recommendations. Beyond the MVP, we also building supplementary features beyond the MVP, such as Receipt OCR and Audio Recognition. The Receipt OCR leverages the Pytesseract library for extracting text from images, while the Audio Recognition feature utilizes the WebSpeech API. Both systems are tuned with preprocessing techniques for image or audio and use regex for data extraction. This feature is useful for automating expense and income tracking.
Dataset:
Before starting, make sure you have installed:
- conda create -n anggarin_stockpredictions python=3.10
- conda activate anggarin_stockpredictions
- pip install numpy pandas matplotlib scikit-learn tensorflow
- Open WSL or Linux Command Prompt
- conda create -n anggarin_stockrecommendation python=3.8
- conda activate anggarin_stockrecommendation
- pip install numpy pandas matplotlib scikit-learn tensorflow=2.13.0
- pip install tensorflowjs
- Remote connect to Visual Studio Code
If you want to run notebook file via Google Colab(optimized), you can open Google Colab and download notebook file on:
- Google Colab: Open
- Receipt OCR Notebook: Download
- Receipt Sample: Download
- Audio Recognition Notebook: Download
- Audio Sample: Download
But if you want to run notebook file on local you can follow the Stock Prediction & Stock Recommendation requirements.
Browser-based file is a Notebook file that has been converted into a Browser-Based program that is ready to use using HTML, CSS and Javascript files. To run this make sure you have installed:
- Live Server Extention (VSCode)
- Open Google Colab
- Download Receipt OCR / Audio Recognition Notebook file
- Upload Receipt OCR / Audio Recognition Notebook file
- Upload Receipt / Audio Sample file
- Change path of receipt / audio sample
- Run every single cell
- Clone this repository.
- Open Receipt_OCR/receiptOCR-js or AudioRecognition/FIle Javascript Folder
- Select index.html file
- Right click and select the Open with Live Server
- For Receipt OCR you can take a photo or upload the Receipt Sample
- For Audio OCR you can just speech with this format: Audio OCR Format
Mobile Development: Anggar.In Mobile Developments Repository
Cloud Computing: Anggar.In Cloud Computing Repository
