collect structured data clean and prepare features split data into train and test sets choose a model train the model evaluate generalization tune complexity if needed