This is a web application to classify the risk of pre-eclampsia based on user inputs. It uses a machine learning model, Flask as the backend server, and a simple HTML form for user interaction.
Before you begin, ensure you have the following installed:
- Python 3.6+ - The application is written in Python and requires Python 3.6 or higher.
- Flask - A micro web framework for Python.
- Joblib - To load and save the machine learning model.
- Scikit-Learn - For building and running the machine learning model.
- NumPy - For handling numerical data.
Follow these steps to set up the application:
Clone the repository to your local machine:
git clone <repository-url>
cd preeclampsia-classificationSetting up a virtual environment helps manage dependencies. Run the following commands:
python -m venv venv
source venv/bin/activate # On macOS/Linux
# OR
venv\Scripts\activate # On WindowsInstall the necessary packages by running:
pip install -r requirements.txtIf you don’t have a requirements.txt, use the following commands instead:
pip install flask joblib scikit-learn numpyEnsure that the trained machine learning model (model.pkl) is placed in the same directory as app.py. If you don’t have a model, you will need to train one and save it as model.pkl using joblib.
Once everything is set up, you can start the Flask application.
In your terminal, make sure you’re in the project directory and your virtual environment is activated. Then run:
python app.pyThe application will start on http://127.0.0.1:5000/. You should see output indicating the server is running.
Open your web browser and navigate to http://127.0.0.1:5000/.
Fill out the fields in the form, including the radio buttons for options like "Tingkat aktivitas" and "Kesibukan pekerjaan". Once filled, click the "Klasifikasi Risiko" button to submit the form.
After submitting, the application will display the predicted risk level on the same page.
You can also test the API endpoint directly using Postman or curl.
For example, using curl:
curl -X POST http://127.0.0.1:5000/classify -H "Content-Type: application/json" -d "{\"age\": 30, \"gest_age\": 20, \"height\": 160, ...}"- ModuleNotFoundError: Ensure all required packages are installed and that you are using the correct virtual environment.
- Server Not Starting: Check that Flask is installed and that
app.pyis in the correct directory. - Model Loading Error: Verify that
model.pklexists in the directory and is compatible with the code.
Aplikasi web ini digunakan untuk mengklasifikasikan risiko pre-eklamsia berdasarkan input pengguna. Aplikasi ini menggunakan model machine learning, Flask sebagai server backend, dan formulir HTML sederhana untuk interaksi pengguna.
Sebelum memulai, pastikan Anda sudah menginstal:
- Python 3.6+ - Aplikasi ini ditulis dalam Python dan memerlukan Python versi 3.6 atau lebih tinggi.
- Flask - Framework web micro untuk Python.
- Joblib - Untuk memuat dan menyimpan model machine learning.
- Scikit-Learn - Untuk membuat dan menjalankan model machine learning.
- NumPy - Untuk mengelola data numerik.
Ikuti langkah-langkah berikut untuk menyiapkan aplikasi:
Clone repository ke komputer lokal Anda:
git clone <repository-url>
cd preeclampsia-classificationMembuat virtual environment membantu dalam mengelola dependensi. Jalankan perintah berikut:
python -m venv venv
source venv/bin/activate # Pada macOS/Linux
# ATAU
venv\Scripts\activate # Pada WindowsInstal paket yang diperlukan dengan menjalankan:
pip install -r requirements.txtJika tidak memiliki requirements.txt, gunakan perintah berikut:
pip install flask joblib scikit-learn numpyPastikan model machine learning yang telah dilatih (model.pkl) ditempatkan di direktori yang sama dengan app.py. Jika Anda tidak memiliki model, Anda perlu melatih dan menyimpannya sebagai model.pkl menggunakan joblib.
Setelah semuanya siap, Anda bisa memulai aplikasi Flask.
Di terminal Anda, pastikan Anda berada di direktori proyek dan virtual environment aktif. Kemudian jalankan:
python app.pyAplikasi akan dimulai di http://127.0.0.1:5000/. Anda akan melihat output yang menunjukkan server sedang berjalan.
Buka web browser dan buka http://127.0.0.1:5000/.
Isi kolom-kolom dalam formulir, termasuk pilihan radio untuk "Tingkat aktivitas" dan "Kesibukan pekerjaan". Setelah selesai, klik tombol "Klasifikasi Risiko" untuk mengirimkan formulir.
Setelah dikirim, aplikasi akan menampilkan tingkat risiko yang diprediksi di halaman yang sama.
Anda juga dapat menguji endpoint API langsung menggunakan Postman atau curl.
Contohnya, menggunakan curl:
curl -X POST http://127.0.0.1:5000/classify -H "Content-Type: application/json" -d "{\"age\": 30, \"gest_age\": 20, \"height\": 160, ...}"- ModuleNotFoundError: Pastikan semua paket yang diperlukan telah terinstal dan Anda menggunakan virtual environment yang benar.
- Server Tidak Berjalan: Pastikan Flask telah diinstal dan
app.pyberada di direktori yang benar. - Kesalahan Memuat Model: Verifikasi bahwa
model.pklada di direktori dan kompatibel dengan kode.
Aplikasi web ini digunakan untuk mengklasifikasikan risiko pre-eklamsia berdasarkan input pengguna. Aplikasi ini menggunakan model machine learning, Flask sebagai server backend, dan formulir HTML sederhana untuk interaksi pengguna.
Sebelum memulai, pastikan Anda sudah menginstal:
- Python 3.6+ - Aplikasi ini ditulis dalam Python dan memerlukan Python versi 3.6 atau lebih tinggi.
- Flask - Framework web micro untuk Python.
- Joblib - Untuk memuat dan menyimpan model machine learning.
- Scikit-Learn - Untuk membuat dan menjalankan model machine learning.
- NumPy - Untuk mengelola data numerik.
Ikuti langkah-langkah berikut untuk menyiapkan aplikasi:
Clone repository ke komputer lokal Anda:
git clone <repository-url>
cd preeclampsia-risk-classificationMembuat virtual environment membantu dalam mengelola dependensi. Jalankan perintah berikut:
python -m venv venv
source venv/bin/activate # Pada macOS/Linux
# ATAU
venv\Scripts\activate # Pada WindowsInstal paket yang diperlukan dengan menjalankan:
pip install -r requirements.txtJika tidak memiliki requirements.txt, gunakan perintah berikut:
pip install flask joblib scikit-learn numpyPastikan model machine learning yang telah dilatih (model.pkl) ditempatkan di direktori yang sama dengan app.py. Jika Anda tidak memiliki model, Anda perlu melatih dan menyimpannya sebagai model.pkl menggunakan joblib.
Setelah semuanya siap, Anda bisa memulai aplikasi Flask.
Di terminal Anda, pastikan Anda berada di direktori proyek dan virtual environment aktif. Kemudian jalankan:
python app.pyAplikasi akan dimulai di http://127.0.0.1:5000/. Anda akan melihat output yang menunjukkan server sedang berjalan.
Buka web browser dan buka http://127.0.0.1:5000/.
Isi kolom-kolom dalam formulir, termasuk pilihan radio untuk "Tingkat aktivitas" dan "Kesibukan pekerjaan". Setelah selesai, klik tombol "Klasifikasi Risiko" untuk mengirimkan formulir.
Setelah dikirim, aplikasi akan menampilkan tingkat risiko yang diprediksi di halaman yang sama.
Anda juga dapat menguji endpoint API langsung menggunakan Postman atau curl.
Contohnya, menggunakan curl:
curl -X POST http://127.0.0.1:5000/classify -H "Content-Type: application/json" -d "{\"age\": 30, \"gest_age\": 20, \"height\": 160, ...}"- ModuleNotFoundError: Pastikan semua paket yang diperlukan telah terinstal dan Anda menggunakan virtual environment yang benar.
- Server Tidak Berjalan: Pastikan Flask telah diinstal dan
app.pyberada di direktori yang benar. - Kesalahan Memuat Model: Verifikasi bahwa
model.pklada di direktori dan kompatibel dengan kode.