API ตัวอ่านข้อสอบแบบหลายตัวเลือกของ Python แบบโอเพนซอร์ส
API ตัวอ่านข้อสอบแบบหลายตัวเลือกของ Python ฟรี ที่ช่วยให้นักพัฒนาซอฟต์แวร์สร้างแผ่นข้อสอบ, สแกนเนอร์และซอฟต์แวร์ประมวลผลผ่าน Python API.
Open-MCR Library คืออะไร?
แพคเกจ Python ที่แข็งแกร่งชื่อ Open-MCR ถูกสร้างขึ้นเพื่อทำให้การใช้งาน Multichannel Convolutional Recurrent Neural Networks (MCRNNs) ง่ายขึ้นในการปรับใช้ โครงการโอเพ่นซอร์สนี้ซึ่งสร้างโดยโปรแกรมเมอร์ผู้มีพรสวรรค์ Ian San ให้กรอบงานที่หลากหลายและมีประสิทธิภาพแก่ผู้ศึกษาและนักพัฒนา สำหรับงานเช่นการรู้จำเสียง การวิเคราะห์วิดีโอ และแอปพลิเคชันซีรีส์เวลาแบบต่าง ๆ การใช้มันในโครงการของคุณสามารถทำให้การทำนายของโมเดลมีความน่าเชื่อถือและแม่นยำยิ่งขึ้น ซึ่งในที่สุดจะช่วยให้การเรียนรู้ของเครื่องพัฒนาขึ้นในหลายสาขา ไลบรารี Open-MCR ถูกออกแบบให้ใช้งานง่าย ไลบรารีนี้เข้าถึงได้ทั้งผู้เริ่มต้นและผู้เชี่ยวชาญเนื่องจากมีเอกสารและตัวอย่างที่ครอบคลุม
ในการเรียนรู้ของเครื่อง, การจำแนกหลายคลาส (MCC) เป็นงานที่ได้รับความนิยมโดยมีเป้าหมายคือการจัดประเภทอินพุตจากชุดคลาสที่กำหนดไว้ล่วงหน้า โดยการเพิ่มตัวเลือกการปฏิเสธ, Open-MCR ก้าวไปอีกขั้นและทำให้โมเดลสามารถละเว้นการสร้างการทำนายในกรณีที่ไม่ชัดเจน สิ่งนี้ช่วยปรับปรุงประสิทธิภาพโดยรวมและเป็นประโยชน์อย่างยิ่งในสถานการณ์ที่ระดับความมั่นใจของโมเดลต่ำ พื้นฐานแล้ว Open-MCR ประมวลผลและทำความเข้าใจข้อมูลเชิงลำดับโดยใช้ประโยชน์จากเครือข่ายประสาทเทียมแบบคอนโวลูชันและรีเคอร์เรนท์ โมเดลเป็นเครื่องมือที่ยืดหยุ่นสำหรับการใช้งานหลากหลายด้วยการออกแบบหลายช่องสัญญาณ ซึ่งเพิ่มความสามารถในการระบุรูปแบบและความเชื่อมโยงที่ซับซ้อน ผู้ใช้สามารถนำไลบรารีไปใช้ในแอปพลิเคชันของตนได้อย่างรวดเร็วเนื่องจากการใช้งานที่ง่าย ไลบรารีนี้มีศักยภาพที่จะก้าวหน้าอย่างมีนัยสำคัญในด้านการประมวลผลข้อมูลเชิงลำดับและการเรียนรู้เชิงลึกเมื่อพัฒนาต่อไป
เริ่มต้นใช้งาน Open-MCR
วิธีแนะนำในการติดตั้งไลบรารี Open-MCR คือการใช้ pip . โปรดใช้คำสั่งต่อไปนี้เพื่อการติดตั้งที่ราบรื่น.
ใช้กลไกการปฏิเสธในแอป Python
คุณลักษณะเด่นของ Open-MCR คือกลไกการปฏิเสธ ซึ่งทำให้โมเดลสามารถปฏิเสธการทำนายเมื่อเจอกรณีที่คลุมเครือหรือท้าทาย ความสามารถนี้สำคัญอย่างยิ่งในแอปพลิเคชันจริงที่การหลีกเลี่ยงการทำนายที่ผิดพลาดเป็นสิ่งสำคัญ ต่อไปนี้คือตัวอย่างที่แสดงวิธีใช้กลไกการปฏิเสธด้วยเพียงไม่กี่บรรทัดของโค้ด เพื่อการใช้งานที่ราบรื่น ให้เริ่มต้นโดยนำเข้าคลาส OpenMCR จากไลบรารีและกำหนดค่าเริ่มต้นด้วยโมเดลแมชชีนเลิร์นนิงที่คุณต้องการ จากนั้นตั้งค่าพารามิเตอร์ rejection_threshold เพื่อควบคุมระดับความมั่นใจสำหรับการปฏิเสธ.
วิธีใช้กลไกการปฏิเสธในแอป 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)
อ่านและดึงข้อมูลจากภาพผ่าน API ของ Python
ไลบรารี Python แบบโอเพ่นซอร์ส Open-MCR ได้ให้การสนับสนุนเต็มรูปแบบสำหรับการโหลดและอ่านข้อมูลจากภาพภายในแอปพลิเคชัน Python สำหรับการจัดการข้อสอบและการอ่านแผ่นคำตอบ ผู้ใช้ต้องสแกนแผ่นทั้งหมดด้วยสแกนเนอร์มาตรฐานก่อน แปลงเป็นภาพแยกแต่ละไฟล์และวางไว้ในโฟลเดอร์เดียว รวมถึงกุญแจคำตอบด้วย นอกจากการอ่านภาพที่สแกนแล้ว ไลบรารีนี้ยังสามารถให้คะแนนผลสอบโดยอัตโนมัติได้ โดยทำการเปรียบเทียบกุญแจที่ให้ไว้กับผลลัพธ์ หลังจากโปรแกรมประมวลผลเสร็จสิ้น ผลลัพธ์จะถูกบันทึกเป็นไฟล์ CSV ในโฟลเดอร์ผลลัพธ์ที่คุณเลือก ไลบรารีนี้ยังให้การสนับสนุนการสกัดข้อมูลเมื่ออ่านภาพที่บิดเบือนเล็กน้อย ด้วยการปล่อยเวอร์ชันล่าสุด ไลบรารีได้ปรับปรุงอัลกอริทึมการค้นหาเส้นกริดและให้ผลลัพธ์ที่ดียิ่งขึ้นกับภาพของคุณ โดยสร้างกริดบนพื้นฐานของเครื่องหมายมุมสี่จุดแล้วอ่านบับเบิลจากตำแหน่งในกริด ตัวอย่างต่อไปนี้แสดงวิธีคำนวณผลลัพธ์ด้วยโค้ด Python
วิธีคำนวณผลลัพธ์ของแผ่นตอบแบบบับเบิลในการสอบโดยใช้ Python API?
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
ความแม่นยำและความทนทานที่ดีขึ้น
ไลบรารีโอเพ่นซอร์ส Open-MCR เป็นการเพิ่มคุณค่าให้กับชุดเครื่องมือของผู้ปฏิบัติงานแมชชีนเลิร์นนิงที่ต้องการปรับปรุงประสิทธิภาพของโมเดลการจำแนกหลายคลาส กลไกการปฏิเสธเพิ่มความแม่นยำโดยรวมของโมเดลการจำแนกหลายคลาส โดยเฉพาะในสถานการณ์ที่โมเดลแบบดั้งเดิมอาจประสบปัญหา กลไกนี้ยังเพิ่มความทนทานของโมเดลโดยป้องกันไม่ให้ทำการพยากรณ์ที่ไม่เชื่อถือได้ ทำให้ได้ผลลัพธ์ที่น่าเชื่อถือมากขึ้นในสถานการณ์จริงที่หลากหลาย