Skip to content

Instantly share code, notes, and snippets.

View gravitino's full-sized avatar
🎯
Focusing

Christian Hundt gravitino

🎯
Focusing
View GitHub Profile

Keybase proof

I hereby claim:

  • I am gravitino on github.
  • I am hundt (https://keybase.io/hundt) on keybase.
  • I have a public key whose fingerprint is D3F4 A995 7D3A 7400 874C D1A9 C584 38B7 5FAA 47C7

To claim this, I am signing this object:

@gravitino
gravitino / inplace.hpp
Created February 11, 2016 14:08
Inplace Permutation
#ifndef INPLACE_ALGORITHMS
#define INPLACE_ALGORITHMS
template<
class value_t,
class index_t>
void permute(
value_t * data,
index_t * perm,
index_t length) {
@gravitino
gravitino / rngpu.hpp
Created February 11, 2016 14:20
lightweight cuRand alternative
#ifndef RNGPU_HPP
#define RNGPU_HPP
#if defined(__CUDA_ARCH__)
#define INLINE_QUALIFIERS __host__ __device__ __forceinline__
#else
#include <math.h>
#define INLINE_QUALIFIERS inline
#endif
@gravitino
gravitino / cuda_if.cu
Last active February 16, 2016 14:09
branch divergent-free if in CUDA considered harmful (benchmarked on Titan X)
#include <iostream>
// error makro
#define CUERR { \
cudaError_t err; \
if ((err = cudaGetLastError()) != cudaSuccess) { \
std::cout << "CUDA error: " << cudaGetErrorString(err) << " : " \
<< __FILE__ << ", line " << __LINE__ << std::endl; \
exit(1); \
} \
@gravitino
gravitino / oss.py
Created February 28, 2016 17:04
scalable spectral clustering using efficient out of sample extension by estimating the feature transform
import numpy as np
import pylab as pl
#import seaborn as sns
from sklearn.datasets import make_blobs, make_circles
def rbf_kernel(X, beta=None, p=2):
num_data, num_feat = X.shape
kernel = np.zeros((num_data, num_data))
@gravitino
gravitino / mf.py
Created March 22, 2017 08:00
dense matrix factorization
import tensorflow as tf
import tqdm
def tfmf(D, k,
params_dict={"iters":2**14, "p":2, "h":1E-2, "init":"kmeans"},
regularizer_dict={"lambda_C":1E-3, "lambda_B":1E-3, "p":1}):
m, n = D.shape[0], D.shape[1]
D_con = tf.constant(D)
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.
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.