1. Produk
  2.   OMR
  3.   Python
  4.   Open-MCR
 
  

API Pembaca Ujian Pilihan Ganda Python Sumber Terbuka

API Pembaca Ujian Pilihan Ganda Python Gratis yang Memungkinkan Pengembang Perangkat Lunak untuk Membuat Lembar Ujian, Pemindai, dan Perangkat Lunak Pemrosesan melalui API Python.

Apa itu Open-MCR Library?

Sebuah paket Python yang kuat bernama Open-MCR dibuat untuk mempermudah penerapan Multichannel Convolutional Recurrent Neural Networks (MCRNNs). Proyek sumber terbuka ini, yang dibuat oleh programmer berbakat Ian San, menawarkan akademisi dan pengembang kerangka kerja yang serbaguna dan efektif untuk tugas seperti pengenalan suara, analisis video, dan berbagai aplikasi deret waktu. Menggunakannya dalam proyek Anda dapat menghasilkan prediksi model yang lebih dapat diandalkan dan akurat, yang pada akhirnya akan membantu pembelajaran mesin berkembang di berbagai bidang. Perpustakaan Open-MCR dibuat dengan mempertimbangkan kemudahan penggunaan. Perpustakaan ini dapat diakses oleh praktisi pemula maupun berpengalaman berkat dokumentasi dan contoh yang komprehensif.

Dalam pembelajaran mesin, Klasifikasi Multi-Kelas (MCC) adalah tugas populer di mana tujuan adalah mengkategorikan input dari serangkaian kelas yang telah ditentukan sebelumnya. Dengan menambahkan opsi penolakan, Open-MCR melangkah lebih jauh dan memungkinkan model untuk tidak menghasilkan prediksi dalam kasus ketika tidak jelas. Ini meningkatkan kinerja keseluruhan dan sangat membantu dalam situasi di mana tingkat kepercayaan model rendah. Pada dasarnya, Open-MCR memproses dan memahami input berurutan dengan memanfaatkan keunggulan jaringan saraf konvolusional dan berulang. Model ini merupakan alat fleksibel untuk berbagai aplikasi berkat desain multisaluran, yang meningkatkan kemampuannya mengidentifikasi pola dan hubungan yang rumit. Pengguna dapat mengintegrasikan perpustakaan ini ke dalam aplikasi mereka dengan cepat karena implementasinya yang sederhana. Perpustakaan ini berada pada posisi untuk secara signifikan memajukan bidang pemrosesan data berurutan dan pembelajaran mendalam seiring perkembangannya.

Previous Next

Memulai dengan Open-MCR

Cara yang direkomendasikan untuk menginstal pustaka Open-MCR adalah menggunakan pip. Silakan gunakan perintah berikut untuk instalasi yang lancar.

Instal Open-MCR Library via pip

 pip install open-mcr 

Anda dapat mengunduh pustaka langsung dari GitHub

Gunakan Mekanisme Penolakan dalam Aplikasi Python

Fitur menonjol Open-MCR adalah mekanisme penolakan, yang memungkinkan model menolak membuat prediksi ketika dihadapkan pada contoh yang ambigu atau menantang. Kemampuan ini sangat penting dalam aplikasi dunia nyata di mana menghindari prediksi yang salah sangat penting. Berikut adalah contoh yang menunjukkan cara menggunakan mekanisme penolakan dengan hanya beberapa baris kode. Untuk penggunaan yang lancar, pertama Impor kelas OpenMCR dari pustaka dan inisialisasi dengan model pembelajaran mesin pilihan Anda. Atur parameter rejection_threshold untuk mengontrol tingkat kepercayaan dalam penolakan.

Bagaimana Cara Menggunakan Mekanisme Penolakan di Dalam Aplikasi Python?

from openmcr import OpenMCR
from sklearn.ensemble import RandomForestClassifier

# Initialize Open-MCR with a RandomForestClassifier
model = RandomForestClassifier()
mcr_model = OpenMCR(model, rejection_threshold=0.3)

# Train the model
mcr_model.fit(X_train, y_train)

# Make predictions with rejection
predictions = mcr_model.predict(X_test)

Baca & Ekstrak Data dari Gambar melalui API Python

Perpustakaan Python sumber terbuka Open-MCR telah menyediakan dukungan lengkap untuk memuat dan membaca data dari gambar di dalam aplikasi Python. Untuk menangani ujian dan membaca lembar, pertama pengguna harus memindai semua lembar menggunakan pemindai standar. Konversikan mereka menjadi gambar individu dan tempatkan dalam satu folder, termasuk kunci jawaban. Selain membaca gambar yang dipindai, ia juga dapat secara otomatis menilai hasil ujian. Ia melakukan ini dengan membandingkan kunci yang disediakan dengan output. Setelah program selesai memproses, hasil akan disimpan sebagai file CSV di folder output yang Anda pilih. Perpustakaan juga menyediakan dukungan untuk mengekstrak data saat membaca gambar yang sedikit terdistorsi. Dengan rilis terbaru, perpustakaan meningkatkan algoritma pencarian grid dan mendapatkan hasil yang lebih baik dengan gambar Anda. Ia membangun grid berdasarkan empat tanda sudut dan kemudian membaca gelembung dari lokasi dalam grid. Contoh berikut menunjukkan cara menghitung hasil melalui kode Python.

Bagaimana Menghitung Hasil Lembar Jawaban Ujian Menggunakan API Python?

import csv
import pathlib
import typing as tp

import data_exporting
import grid_info
import list_utils
import math_utils

def score_results(results: data_exporting.OutputSheet,
                  answer_keys: data_exporting.OutputSheet,
                  num_questions: int) -> data_exporting.OutputSheet:
    answers = results.data
    keys = establish_key_dict(answer_keys)
    form_code_column_name = data_exporting.COLUMN_NAMES[
        grid_info.Field.TEST_FORM_CODE]
    form_code_index = list_utils.find_index(answers[0], form_code_column_name)
    answers_start_index = list_utils.find_index(
        answers[0][form_code_index + 1:], "Q1") + form_code_index + 1
    virtual_fields: tp.List[grid_info.RealOrVirtualField] = [
        grid_info.VirtualField.SCORE, grid_info.VirtualField.POINTS
    ]
    columns = results.field_columns + virtual_fields
    scored_results = data_exporting.OutputSheet(columns, num_questions)

    for exam in answers[1:]:  # Skip header row
        fields = {
            k: v
            for k, v in zip(results.field_columns, exam[:answers_start_index])
        }
        form_code = exam[form_code_index]
        try:
            if "*" in keys:
                key = keys["*"]
            else:
                key = keys[form_code]
        except KeyError:
            fields[grid_info.VirtualField.
                   SCORE] = data_exporting.KEY_NOT_FOUND_MESSAGE
            fields[grid_info.VirtualField.
                   POINTS] = data_exporting.KEY_NOT_FOUND_MESSAGE
            scored_answers = []
        else:
            scored_answers = [
                int(actual == correct)
                for actual, correct in zip(exam[answers_start_index:], key)
            ]
            fields[grid_info.VirtualField.SCORE] = str(
                round(math_utils.mean(scored_answers) * 100, 2))
            fields[grid_info.VirtualField.POINTS] = str(sum(scored_answers))
        string_scored_answers = [str(s) for s in scored_answers]
        scored_results.add(fields, string_scored_answers)

    return scored_results

Akurasi dan Ketahanan yang Ditingkatkan

Perpustakaan sumber terbuka Open-MCR merupakan tambahan berharga bagi perangkat kerja praktisi pembelajaran mesin yang ingin meningkatkan kinerja model klasifikasi multi‑kelas mereka. Mekanisme penolakan meningkatkan akurasi keseluruhan model klasifikasi multi‑kelas, terutama dalam situasi di mana model tradisional mungkin mengalami kesulitan. Mekanisme ini juga meningkatkan ketangguhan model dengan mencegahnya membuat prediksi yang tidak dapat diandalkan, memastikan hasil yang lebih dapat dipercaya dalam berbagai skenario dunia nyata.

 Indonesia