⚡ Bolt: vectorized BasicEstimator.predict and find_faces#34
Conversation
- Vectorized BasicEstimator.predict using the L2 expansion formula. - Optimized BasicEstimator.fit by pre-calculating squared norms. - Vectorized FaceEngine.find_faces bounding box area calculation. - Fixed extra metadata slicing bug in FaceEngine.find_faces. - Added guard for empty embeddings in predict. Co-authored-by: guesswh0 <10531675+guesswh0@users.noreply.github.com>
|
👋 Jules, reporting for duty! I'm here to lend a hand with this pull request. When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down. I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job! For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with New to Jules? Learn more at jules.google/docs. For security, I will only act on instructions from the user who triggered this task. |
💡 What: Vectorized
BasicEstimator.predictusing the L2 distance expansion formula and optimizedBasicEstimator.fitwith pre-calculated norms. Also vectorized bounding box area calculation and fixed a metadata slicing bug inFaceEngine.find_faces.🎯 Why:
BasicEstimator.predictused a loop withnp.linalg.norm, which is inefficient for large batches.find_facesused a list comprehension for area calculation and had a bug that misalignedextrametadata when limiting detections.📊 Impact: Achieved ~13x speedup in
BasicEstimator.predict(from ~0.25s to ~0.018s for a batch of 500 queries vs 2000 targets). Improved efficiency and correctness inFaceEngine.find_faces.🔬 Measurement: Verified with benchmark scripts (baseline vs opt) and mock detector script for
find_faces. All existing unit tests pass.PR created automatically by Jules for task 8092146456918900583 started by @guesswh0