Skip to content

Instantly share code, notes, and snippets.

@tklein23
tklein23 / CLR_argmax.cpp
Created July 3, 2014 21:26
CLR for Multilabel classification
CResultSet* CMultilabelClrSOModel::argmax(
SGVector< float64_t > w,
int32_t feat_idx,
bool const training)
{
CDotFeatures* df = (CDotFeatures*) m_features;
REQUIRE(m_feats_dim == df->get_dim_feature_space(),
"given features have dimension %d, but we need %d",
df->get_dim_feature_space(), m_feats_dim);
//printf("argmax(): m_feats_dim:%d\n", m_feats_dim);
@tklein23
tklein23 / create-test-files.sh
Last active August 29, 2015 14:03
Reproducing shogun read-file-bug
while true; do echo "0"; done |head -n 5242882 >test-5242882.csv
head -n 5242881 test-5242882.csv >test-5242881.csv
wc -l test*csv
# 5242881 test-5242881.csv
# 5242882 test-5242882.csv
ls -la test*csv
-rw-rw-r-- 1 tklein tklein 10485762 Jun 29 21:44 test-5242881.csv
-rw-rw-r-- 1 tklein tklein 10485764 Jun 29 21:44 test-5242882.csv
@tklein23
tklein23 / hash-vector-bechmark.cpp
Created June 14, 2014 14:07
benchmark of feature-hashing implementations
/*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
* Written (W) 2014 Thoralf Klein
*/
#include <shogun/base/init.h>
/*
* Written (W) 2013 Thoralf Klein <thoralf.klein@zib.de>
* Copyright (C) 2013 Zuse-Institute-Berlin (ZIB)
* Copyright (C) 2013 Thoralf Klein
*/
#include <shogun/lib/Hash.h>
#include <shogun/lib/SGSparseVector.h>
#include <shogun/lib/SGSparseMatrix.h>
@tklein23
tklein23 / file_input.cpp
Last active August 29, 2015 14:02
Loading SVMlight file using streaming API
/*
* Written (W) 2013 Thoralf Klein <thoralf.klein@zib.de>
* Copyright (C) 2013 Zuse-Institute-Berlin (ZIB)
* Copyright (C) 2013 Thoralf Klein
*/
#include <shogun/io/streaming/StreamingAsciiFile.h>
#include <shogun/features/streaming/StreamingSparseFeatures.h>
#include <shogun/lib/SGVector.h>
// your model should provide a method how to create an "own" structured labels object.
CStructuredLabels* MultilabelSOModel::structured_labels_factory(int32_t num_labels)
{
return new MultilabelSOModel(num_labels);
}
@tklein23
tklein23 / build-before-pr.sh
Last active August 29, 2015 13:57
Small shell script that can be used to compile SHOGUN Machine Learning Toolbox http://www.shogun-toolbox.org/ before sending a pull request
#!/bin/bash
# Taken from: https://gist.github.com/tklein23/9730737
set -ex
NUM_CORES=$(grep '^processor\s*:\s*' /proc/cpuinfo |wc -l)
NUM_JOBS=$((NUM_CORES+3))
BUILDDIR="$(pwd)/build-before-pr"
@tklein23
tklein23 / MultilabelLabelsIO.cpp
Created March 13, 2014 21:43
SHOGUN: MultilabelLabels::save() and MultilabelLabels::load()
// The following includes are only needed for save() and load()
#include <string>
#include <iostream>
#include <fstream>
#include <limits>
void
CMultilabelLabels::save(const char * fname)
{
FILE * fh = fopen(fname, "wb");
/*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
* Written (W) 2014 Thoralf Klein
*/
#include <shogun/lib/config.h>
@tklein23
tklein23 / DualLibQPBMSOSVMNCBM_unittest.cc
Created January 28, 2014 22:41
Example for numerical problems in libncbm.cpp (not terminating)
/*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
* Written (W) 2014 Thoralf Klein
*/
#include <shogun/lib/config.h>