Essentially, you can't - leads are supposed to be Archived if they are somehow invalid. That way you can keep track of invalid leads and discover if you import them again at a later stage (because archived leads are matched against during duplicate detection).
However, if you REALLY want to, the only way you can bulk delete leads is if you can isolate them using a migration. Isolating means filtering by some field using conditions, or by filtering by state or category.
If you can isolate the leads you want to delete, you can move them to a new list, and then delete that list. This approach will also let you look through the leads in that new leads and move some back one by one if they ended up there by mistake (if the filter was too broad).
If you can't isolate the leads you want to delete, then you'll have to run through the list and archive the leads (optionally with a category) that you want deleted, and then you can isolate them and use the approach described above.