Identifikasi ARIA-Tengara
Proyek ini menyimpan skrip untuk evaluasi pendekatan untuk mengidentifikasi ARIA-Landmarks secara otomatis dalam aplikasi web. Pendekatan ini didasarkan pada klasifikasi dan pengelompokan elemen DOM untuk mengidentifikasi elemen dengan probabilitas tertinggi untuk menjadi ARIA Landmark.
Proyek ini diimplementasikan dengan Python dan menyajikan Dockerfile untuk menghasilkan image Docker yang mampu menjalankan skrip.
File utama proyek (main.py) menjalankan beberapa aktivitas untuk melakukan identifikasi ARIA-Landmarks. Kegiatan dan sumber daya input/outputnya dijelaskan sebagai berikut:
- Pelatihan pengklasifikasi (pipeline.cross_validation.fit_classifier) : melatih pengklasifikasi (SVM, KNN, DT atau RF) menggunakan kumpulan data pelatihan (./data/training.classified.csv) dan menyimpan file acar ekstraktor dan pengklasifikasi yang dihasilkan di ;/results /folder pengklasifikasi. Skrip juga menjalankan CV 10 kali lipat untuk menghasilkan laporan akurasi untuk pengklasifikasi.
- Gabungkan laporan CV (pipeline.merge_cv_reports.merge_reports) : gabungkan laporan akurasi CV yang dihasilkan pada aktivitas sebelumnya ke dalam satu spreadsheet untuk dianalisis (./results/accuracy.xlsx). File ini berisi laporan akurasi yang mempertimbangkan Skor F1/Presisi dan Recall untuk setiap kelas, rata-rata makro, dan nilai rata-rata tertimbang. Spreadsheet juga menyajikan frekuensi setiap fitur model klasifikasi digunakan untuk menyusun pasangan ekstraktor/pengklasifikasi.
- Klasifikasi kumpulan data pengujian (pipeline.classify_test_dataset) : menggunakan ekstraktor/pengklasifikasi RF yang dipasang (./results/classifier) untuk mengklasifikasikan sampel yang tersedia dalam kumpulan data pengujian (./data/test/). Kumpulan data pengujian terdiri dari data yang diekstraksi dari elemen aplikasi web yang berbeda. Hasil kegiatan ini disimpan pada folder ./resutls/test.
- Prediksi kumpulan data pengujian pengelompokan (pipeline.clustering_rows.cluster_rows) : mengelompokkan hasil klasifikasi kumpulan data pengujian sesuai dengan denominasi kelas dan fitur posisi/ukurannya. Untuk setiap cluster, hanya elemen dengan probabilitas tertinggi untuk menjadi landmark ARIA yang dilaporkan. Hasil kegiatan ini disimpan dalam folder ./results/clusters.
- Menghasilkan laporan gambar (pipeline.image_report.generate_reports) : menghasilkan laporan gambar untuk landmark ARIA yang diidentifikasi dalam aktivitas sebelumnya (folder ./results/clusters) dan tangkapan layar dari masing-masing aplikasi web (folder ./data/screenshots). Laporan gambar dihasilkan untuk setiap landmark ARIA yang diidentifikasi dalam aktivitas sebelumnya dan disimpan di folder ./results/image-reports.