{"id":28907719,"url":"https://github.com/mukeshthenraj/video-engagement-prediction","last_synced_at":"2026-04-30T20:32:22.958Z","repository":{"id":299928738,"uuid":"1004652155","full_name":"Mukeshthenraj/Video-engagement-prediction","owner":"Mukeshthenraj","description":"ML project to predict video engagement using Random Forest \u0026 XGBoost","archived":false,"fork":false,"pushed_at":"2025-06-19T01:41:52.000Z","size":744,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-19T02:24:04.120Z","etag":null,"topics":["gridsearchcv","matplotlib","numpy","pandas","random-forest-classifier","roc-auc-curve","scikit-learn","video-analytics","xgboost"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Mukeshthenraj.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-19T01:12:50.000Z","updated_at":"2025-06-19T01:47:36.000Z","dependencies_parsed_at":"2025-06-19T02:24:12.825Z","dependency_job_id":"87886b1e-4069-469c-8b9a-bb7c272aec81","html_url":"https://github.com/Mukeshthenraj/Video-engagement-prediction","commit_stats":null,"previous_names":["mukeshthenraj/video-engagement-prediction"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Mukeshthenraj/Video-engagement-prediction","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mukeshthenraj%2FVideo-engagement-prediction","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mukeshthenraj%2FVideo-engagement-prediction/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mukeshthenraj%2FVideo-engagement-prediction/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mukeshthenraj%2FVideo-engagement-prediction/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Mukeshthenraj","download_url":"https://codeload.github.com/Mukeshthenraj/Video-engagement-prediction/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mukeshthenraj%2FVideo-engagement-prediction/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261153583,"owners_count":23116915,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gridsearchcv","matplotlib","numpy","pandas","random-forest-classifier","roc-auc-curve","scikit-learn","video-analytics","xgboost"],"created_at":"2025-06-21T16:05:33.021Z","updated_at":"2026-04-30T20:32:22.951Z","avatar_url":"https://github.com/Mukeshthenraj.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🎯 Video Engagement Prediction\n\nThis project uses machine learning to predict how engaging an educational video will be based on transcript, audio, and metadata features.\n\n## 📊 Problem Statement\n\nEngagement is critical for learning. We use features like `easiness`, `document_entropy`, and `speaker_speed` to predict if viewers will watch at least 30% of the video.\n\n## 🧠 Models Used\n\n- Random Forest Classifier\n- XGBoost Classifier\n- GridSearchCV for hyperparameter tuning\n- ROC AUC for evaluation\n\n## 📁 Project Structure\n\n```\nvideo-engagement-prediction/\n├── data/\n│   ├── train.csv\n│   └── test.csv\n├── scripts/\n│   └── Video-engagement-prediction.py\n├── notebooks/\n├── visuals/\n│   ├── roc_curve.png\n│   └── feature_importance.png\n├── LICENSE\n├── README.md\n├── requirements.txt\n```\n\n## 📌 Features\n\n- `title_word_count`\n- `document_entropy`\n- `freshness`\n- `easiness`\n- `fraction_stopword_presence`\n- `speaker_speed`\n- `silent_period_rate`\n\n## 🧪 Evaluation Metric\n\n- ROC AUC Score (≥ 0.85 = high performance)\n- Feature importance comparison (RandomForest vs. XGBoost)\n\n## 🖼️ Sample Visuals\n\n### ROC Curve\n\n![ROC Curve](visuals/roc_curve.png)\n\n### Feature Importance Comparison\n\n![Feature Importance Comparison](visuals/feature_importance.png)\n\n## 🔧 Run Locally\n\n```bash\npip install -r requirements.txt\npython scripts/assignment4.py\n```\n\n## 👨‍💻 Author\n\nMukesh Thenraj\n\n## 📄 License\n\nThis project is licensed under the [MIT License](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmukeshthenraj%2Fvideo-engagement-prediction","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmukeshthenraj%2Fvideo-engagement-prediction","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmukeshthenraj%2Fvideo-engagement-prediction/lists"}