This is the thing most photo tools get wrong, and it took building Topit to see why. Score 40 photos individually, take the top 6, and you get six near-identical headshots. Every one of them is genuinely your best available shot. Together they're a bad profile, because five of the six slots are answering a question the first one already answered.
A good set answers different questions per slot: what you look like, what your build is, what you actually do, who you're around, what's worth asking you about. Once you frame it that way, the math changes completely. A mediocre photo that fills an empty role beats an excellent one that duplicates a filled role, which is not something a scoring model will ever tell you. So we built Topit around set selection rather than ranking, with diversity constraints operating across the whole lineup instead of scoring each photo in isolation. It's also why the same photos come back in a different order depending on whether you're posting to Hinge, Instagram, or LinkedIn: different destination, different set of questions to answer.
The open edge is near-duplicates from burst shots, which are the hardest case because they're genuinely similar, not just alike. If you've built subset selection anywhere else, I'd like to hear what worked. And if you're just a person with a camera roll: would you rather have six great photos, or five great ones plus a weaker one that adds something the others don't?