Engineers at OkCupid write about search, matching, A/B testing, image hashing, GraphQL, and Rust.
HN commenters cite it for its Vespa versus Elasticsearch comparison and its work on perceptual image hashes.
I think for handling truly/non-affine arbitrary transformations we will have to resort to ML. Then we could have matching very similar to how humans do it (where we really don't care if the transformation is affine/non-affine we just care if it's a huge transformation the makes the image unrecognisable). But I really don't know much about ML.
Okcupid talked about this in an article about image hashing [0] and they have a nice quote:
"The end-to-end approach of training a Convolutional Net to embed images such that the positive / negative case distances separate nicely is probably the cool new hypebeast way forward. This would have the added advantage of being able to handle whatever transformations you can think of at training time."
[0]https://tech.okcupid.com/evaluating-perceptual-image-hashes-okcupid/
Has anyone ever had success on an app like Hinge, then deleted it only to see a large drop in your success rate when nothing else changed about your profile?
If so, it could be due to things like this:
https://tech.okcupid.com/evaluating-perceptual-image-hashes-at-okcupid-e98a3e74aa3a
Match Group owns OkCupid, Hinge, Tinder and so on.. so wouldn’t be surprising if they all used the same or similar algorithms for spam prevention and noob boost abuse.
They probably also collect other data like your phone number, deviceID, etc.
This is bad because if you ever delete your profile and remake it then your internal ranking could plummet due to these aggressive spam filters.
We've had good success with Vespa [1] for this usecase, both using it to rank by vector similarity and apply business logic oriented filters.
Search latencies are fairly low, even with constantly updating documents.
[1] https://tech.okcupid.com/vespa-vs-elasticsearch-for-matching-millions-of-people-6e3af18eb4dc
we also have a tech blog that we are revitalizing!
http://tech.okcupid.com