Start with the output
A good starter ML problem has a clear input and one target output. If you cannot write the target in one sentence, the repo will become confusing fast.
Before you think about algorithms, decide what the model must predict: a category, a number, or something you should not model yet.
Two starter shapes
Most first scikit-learn projects fit one of two shapes. Classification predicts a category, like spam or not spam, pass or fail, high risk or low risk.
Regression predicts a number, like house rent in rupees, delivery time in minutes, or marks from study hours. Both are valid. Pick the one that matches your target.
Avoid vague goals
“Use ML for healthcare” is too broad. “Predict if a patient record is high diabetes risk from basic measurements” is clearer.
Also avoid goals where the answer needs private data, live scraping, or expert judgement you cannot verify. For your first repo, choose a dataset with a known target column.
Check the fit
Do each one yourself, then tap it to tick it off. The ticks are only a checklist for you: they are not marked or scored.
0 of 5 done
Use AI safely
You can ask ChatGPT, Gemini, or Claude to turn your idea into ML problem statements. Do not accept the first answer.
Check three things yourself: is there a real dataset, is the target column present, and would the inputs be available before the prediction is made?
Problem card example
Add a small problem card to your repo notes now. Later, it can become part of your README.
This example is for a classification project using a public tabular dataset.
Project: Iris flower species classifier
Dataset source: scikit-learn built-in Iris dataset
Rows: Iris flower samples
Inputs: sepal length, sepal width, petal length, petal width
Target: species
Problem type: classification
Prediction: Given four flower measurements, predict the iris species
Why this fits: target is known, dataset source is clear, task is small enough for a first repoBad to better
A small rewrite can turn a hackathon idea into a trainable ML task.
Notice how the better version says what the rows, inputs, and target are.
Bad: Predict student success using AI
Better: Predict whether a student will pass or fail a course
Rows: Past student records
Inputs: attendance percentage, internal marks, assignment submission count
Target: pass_or_fail
Problem type: classificationDo this now
Do each one yourself, then tap it to tick it off. The ticks are only a checklist for you: they are not marked or scored.
0 of 5 done