Skip to content

Instantly share code, notes, and snippets.

View JasonTam's full-sized avatar
🍣
⊂(´・◡・⊂ )∘˚˳°

Jason Tam JasonTam

🍣
⊂(´・◡・⊂ )∘˚˳°
View GitHub Profile
@JasonTam
JasonTam / .i3config
Created February 6, 2015 03:25
i3 config
# This file has been auto-generated by i3-config-wizard(1).
# It will not be overwritten, so edit it as you like.
#
# Should you change your keyboard layout somewhen, delete
# this file and re-run i3-config-wizard(1).
#
# i3 config file (v4)
#
# Please see http://i3wm.org/docs/userguide.html for a complete reference!
/server add twitch irc.twitch.tv/6667 -password=oauth:****************************** -username=TWITCHUSERNAME -nicks=TWITCHUSERNAME
/join TWITCHCHANNEL
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@JasonTam
JasonTam / benchmark_sparse_pos_check.ipynb
Last active June 7, 2017 21:05
sparse neg sampling benchmark
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@JasonTam
JasonTam / parq_vs_avro_msg.ipynb
Last active October 24, 2017 16:22
Comparison of avro, msgpack, parquet
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@JasonTam
JasonTam / approx_auc_dist.ipynb
Created November 1, 2017 15:15
Calculating AUC can take a long-ass time for large number of samples
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@JasonTam
JasonTam / lightfm_freeze-emb_example.ipynb
Last active November 7, 2017 20:14
example of how to freeze embeddings in lightfm by exploiting the accumulated gradient in adagrad
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@JasonTam
JasonTam / binary_search_membership.py
Last active February 28, 2018 01:20
Most of the time `in` is good enough (even for lists)
from bisect import bisect_left
def in_bs(a, x):
i = bisect_left(a, x)
return (i != len(a)) and (a[i] == x)
@JasonTam
JasonTam / neg_samp.py
Last active February 28, 2018 03:37
vectorized negative sampling for sparse positive interactions
"""
Pretty efficient way to sample negatives using binary search.
Imagine `pos_inds` are items a user has interacted with,
and we want a vectorized approach to uniformly sample many negative items.
This is better than (in the case where `n_samp` is large)
sampling from the entire catalog and then checking if it's a positive item.
Ahem... negative sampling for sparse interaction matrices.
"""