BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//pretalx//programme.europython.eu//europython-2024//speaker//XRZT3
 B
BEGIN:VTIMEZONE
TZID:CET
BEGIN:STANDARD
DTSTART:20001029T040000
RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10
TZNAME:CET
TZOFFSETFROM:+0200
TZOFFSETTO:+0100
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:20000326T030000
RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=3
TZNAME:CEST
TZOFFSETFROM:+0100
TZOFFSETTO:+0200
END:DAYLIGHT
END:VTIMEZONE
BEGIN:VEVENT
UID:pretalx-europython-2024-MGMLPS@programme.europython.eu
DTSTART;TZID=CET:20240711T160500
DTEND;TZID=CET:20240711T165000
DESCRIPTION:Want to make all your code faster? With matrices\, library know
 ledge\, and a sprinkle of creativity\, you can consistently speed up multi
 variate Python functions by 1000x!\n\nModal optimization requires simple a
 xioms - arithmetic\, checking a case\, calling the right sklearn function\
 , and so on. When that’s not sufficient\, three core tricks - converting
  conditional logic to set theory\, stacking vectors into a matrix\, and sh
 aping data to match library expectations - cover the vast majority of real
  world cases (90% of the ~400 functions we vectorized). \n\nAt Bloomberg\,
  ESG (Environmental\, Social\, and Governance) Scores require complex comp
 utations on large data sets. Time-series computations are fundamental for 
 Governance - one UDF infers board support for a policy from prior cyclical
  votes and other time offset inputs. By rewriting the pandas backfill as a
  series of reductions on a 4-tensor\, we reduced the runtime from 45 minut
 es to 10 milliseconds! Analogously\, due to real world complexity\, financ
 e UDFs can end up with 100+ if/else branches in one function. With a mix o
 f De Morgan’s laws and sparse matrix representations\, we simplified the
  cases and achieved 1000x+ speedups.\n\nWe’ll conclude with a quick over
 view of cutting-edge tools\, and hope you’ll leave with a concrete strat
 egy for vectorizing financial models!
DTSTAMP:20260612T011248Z
LOCATION:Forum Hall
SUMMARY:How we used vectorization for 1000x Python speedups (no C or Spark 
 needed!) - Justine Wezenaar\, Jonathan Hollenbeck
URL:https://programme.europython.eu/europython-2024/talk/MGMLPS/
END:VEVENT
END:VCALENDAR
