MedDose هو مشروع ويب يهدف إلى تقديم حل ذكي يساعد المستخدمين على فهم أمان الأدوية والتعامل مع بعض المشكلات المتعلقة باستخدامها، من خلال توفير نظام لاكتشاف التفاعلات المحتملة بين الأدوية، بالإضافة إلى إمكانية البحث عن بدائل دوائية مناسبة.
يعتمد المشروع على تقنيات Artificial Intelligence وMachine Learning لتحليل البيانات الدوائية والمساعدة في التنبؤ بوجود تفاعل بين دواءين. ويقوم النظام باستقبال أسماء الأدوية من المستخدم، ثم الحصول على بعض الخصائص الكيميائية الخاصة بالمركبات من خلال PubChem، مثل Molecular Weight وLogP، واستخدام هذه الخصائص كمدخلات لنموذج التعلم الآلي بدلًا من الاعتماد على أسماء الأدوية فقط.
شملت عملية تطوير الجزء الخاص بالتعلم الآلي عدة مراحل، بدايةً من جمع وتجهيز البيانات وتنظيفها ومعالجتها، ثم اختيار الخصائص المناسبة واستخدامها في تدريب النماذج. كما تمت مقارنة عدد من نماذج Machine Learning، من بينها Decision Tree وRandom Forest وXGBoost، بهدف اختيار النموذج المناسب لمهمة التنبؤ بالتفاعلات الدوائية.
يتيح النظام للمستخدم إدخال دواءين والتحقق من وجود تفاعل محتمل بينهما، ثم عرض نتيجة مبسطة لمستوى الخطورة، مثل High Risk أو Medium Risk أو OK. كما يتضمن المشروع جزءًا خاصًا بالبحث عن Drug Alternatives / Substitutes لمساعدة المستخدم في الوصول إلى بدائل مرتبطة بالدواء.
تم تطوير التطبيق باستخدام Python وStreamlit، مع تصميم واجهة استخدام بسيطة ومنظمة تسهّل الوصول إلى وظائف المشروع المختلفة، مثل صفحة التفاعلات الدوائية وصفحة البدائل الدوائية ومعلومات المشروع.
كان دوري في المشروع يركز بشكل أساسي على جزء Machine Learning، بدايةً من التعامل مع البيانات وتجهيزها، مرورًا باختيار الخصائص وتدريب ومقارنة النماذج، ووصولًا إلى دمج نموذج التنبؤ مع تطبيق الويب. ساعدني المشروع على تطبيق مفاهيم Data Preprocessing, Feature Selection, Classification, Model Comparison وتحويل نموذج Machine Learning إلى تطبيق عملي يمكن للمستخدم التعامل معه من خلال واجهة ويب.
التقنيات والأدوات المستخدمة:
Python – Machine Learning – Pandas – Scikit-learn – Random Forest – Decision Tree – XGBoost – PubChem – PubChemPy – Streamlit – Data Preprocessing.