Open in new window / Try shogun cloud
--- Log opened Wed Oct 10 00:00:13 2012
--- Day changed Wed Oct 10 2012
-!- zxtx [] has joined #shogun00:00
blackburnheiko: any news?00:58
heikoblackburn, I am doing some more advanced two sample tests currently01:16
heikobased on the information about the optimal kernel for that I could get 65% with a gaussian SVM :)01:16
heikobut these things will have to run over night.01:16
heikonext thing I will try is a more sophisticated kernel01:16
heikosince that also works for two sample testing01:16
heikoso I have a benchmark01:17
heikobut going to bed now01:17
heikoso see you :)01:17
blackburnI see01:27
blackburnokay I'm off too01:27
blackburnsee you01:27
-!- blackburn [~blackburn@] has quit [Quit: Leaving.]01:29
shogun-buildbotbuild #128 of nightly_default is complete: Failure [failed test]  Build details are at
-!- zxtx [] has quit [Ping timeout: 260 seconds]03:51
-!- zxtx [~zv@] has joined #shogun07:05
-!- zxtx [~zv@] has quit [Ping timeout: 245 seconds]08:25
-!- zxtx [] has joined #shogun09:27
wikingmmm do we have api for doing a dot product of a dense and a sparse vector?10:31
sonne|workwiking: you mean SGSparseVector * SGVector?10:34
wikingor for that matter SGSparseVector * SGSparseVector10:34
sonne|workunfortunately not...10:34
sonne|workwe have that code in CSparseFeatures10:35
wikingi saw that10:35
sonne| needs to be extracted to SGSparseVector10:35
wikingi'll do that10:35
wikingwill send a PR about it10:35
wikingdense_dot will be a good name for the feature there as well... right?10:36
sonne|workhmmhh last update 2006??10:46
wikingi wonder if there's other lib out there for efficient sparse calculations10:47
wikingThe Matrix Template Library version 4 is a generic C++ template library providing sparse and dense BLAS functionality. MTL4 establishes an intuitive interface (similar to MATLAB) and broad applicability thanks to Generic programming.10:48
wikingeigen seems to have something for sparse matrices10:48
sonne|workthen better use eigen10:48
sonne|worknothing hurts more than depending on some lib that gets no longer maintained10:49
wikingso it seems there is10:50
wikingthe only thing is now that we store sparse matrices differently than in eigen :)10:52
wikingbut yeah i dont care about this now10:52
wikingi'll optimize later10:52
wikingi just want to see results :)10:53
sonne|workwiking: however this needs to work even if eigen is not available so I guess extracting the function from sparse features is simplest10:53
sonne|workwiking: and if you look at dense_dot10:53
sonne|workthe function is trivial10:53
sonne|work5 lines or so10:53
wikingyeah i've did that10:56
wikingdoing tests now10:56
ptizoomhi, I had a break through, or more like a punny leap, with my perl-swig-sg activity and unslaught your git with a "pull-request", there are lots of things to tie up, help needed!12:04
-!- ptizoom [~ptizoom@] has quit [Remote host closed the connection]12:52
-!- romi_ [~mizobe@] has joined #shogun13:10
-!- romi_ [~mizobe@] has quit [Remote host closed the connection]13:56
-!- romi_ [~mizobe@] has joined #shogun14:09
-!- ptizoom [~christian@] has joined #shogun15:08
-!- ptizoom [~christian@] has left #shogun []15:12
-!- ptizoom [~christian@] has joined #shogun15:13
sonne|workptizoom: to get you right - it is OK for you if we just start cherry picking patches right?15:22
sonne|workptizoom: you don't get credit in git logs, only some AUTHORS file later  - that is why I am asking15:23
ptizoomhaaa, credits!15:24
ptizoomI am not there yet.15:24
ptizoomI was saying that my pull-request is not really appropriate to a master.15:26
sonne|workptizoom: yes I read that and it is true15:26
ptizoombut, yet I would like to be endorsed by this community!15:27
sonne|workhowever it does not hurt to add perl configure / make automagic and typemaps for perl15:27
sonne|workthe interface will be marked pre alpha or so anyways15:28
sonne|workonce some more examples work and we have no leaks we can go to beta :D15:28
ptizoomhold the horses15:29
ptizoomthere is a chain of picks to climbs, and lots of crevasses on the way.15:29
ptizoomthe stuff I started is very rough, and I let lots of noise in the files, but the whole structure is there , I guess.15:32
ptizoomand it needs more than one soul to complete...15:33
ptizoomhence trying to advert it on a branch of your shogun-toolbox/perl...15:35
ptizoomalternatively I made enough noise so you might direct other benevolence to the ptizoom/shogun/perl_swig_120924?15:36
ptizoomhere some example of work:15:41
ptizoommake run-testsuite15:41
ptizoommake -C src run-testsuite15:41
ptizoommake[1]: Entering directory `/usr/src/shogun/src'15:41
ptizoommake -C interfaces/perldl_modular run-testsuite-perldl_modular && true15:41
ptizoommake[2]: Entering directory `/usr/src/shogun/src/interfaces/perldl_modular'15:41
ptizoomcd ../../../tests/integration/perldl_modular && (\15:41
ptizoom LD_LIBRARY_PATH=/usr/local/lib PERLDL=pdl PERLDLPATH="/usr/local/lib/perl/5.14.2" \15:41
ptizoom LD_LIBRARY_PATH="/usr/src/shogun/src/interfaces/perldl_modular:/usr/src/shogun/src/shogun" \15:41
ptizoom ./    )15:41
ptizoom#!/bin/bash -vx15:41
ptizoomif test -z "$PERL"15:41
ptizoom    PERL=perl15:41
ptizoom+ test -z ''15:41
ptizoom+ PERL=perl15:41
ptizoom+ DATAPATH=../data15:41
ptizoomfunction test_all () {15:41
ptizoom    datapath="$1"15:41
ptizoom    if echo "$datapath" | grep -q '\.\./data/tests'15:41
ptizoom    then15:41
ptizoom    fi15:41
ptizoom    echo "*** Testing in $datapath"15:41
ptizoom    sleep 115:41
ptizoom    for file in $datapath; do15:41
ptizoomecho -n "$file"15:41
ptizoomecho -n -e "\t\t"15:41
ptizoomoutput=`./ "$file"`15:42
ptizoomif [ $ret -eq 0 ] ; then15:42
ptizoom    echo 'OK'15:42
ptizoom    echo 'ERROR'15:42
ptizoom    echo $output15:42
ptizoom    done15:42
ptizoom    sleep 115:42
ptizoom    echo15:42
ptizoomif [ -n "$1" ]; then15:42
ptizoom    test_all "$DATAPATH/$1/*.m"15:42
ptizoom    for i in $DATAPATH/*; do15:42
ptizoomtest_all "$i/*.m"15:42
ptizoom    done15:42
ptizoom+ '[' -n '' ']'15:42
ptizoom+ for i in '$DATAPATH/*'15:42
ptizoom+ test_all '../data/classifier/*.m'15:42
ptizoom+ datapath='../data/classifier/*.m'15:42
ptizoom+ echo '../data/classifier/*.m'15:42
ptizoom+ grep -q '\.\./data/tests'15:42
ptizoom+ echo '*** Testing in ../data/classifier/*.m'15:42
ptizoom*** Testing in ../data/classifier/*.m15:42
ptizoom+ sleep 115:42
ptizoom+ for file in '$datapath'15:43
ptizoom+ echo -n ../data/classifier/LibLinear_0017_1en05_1_True.m15:43
ptizoom../data/classifier/LibLinear_0017_1en05_1_True.m+ echo -n -e '\t\t'15:43
ptizoom./ "$file"15:43
ptizoom++ ./ ../data/classifier/LibLinear_0017_1en05_1_True.m15:43
ptizoom+ output='LibLinear - yesclassified: 5.949422e-02, bias: 1.784163e-14 <--- accuracy: 1.000000e-04'15:43
ptizoom+ ret=015:43
ptizoom+ '[' 0 -eq 0 ']'15:43
ptizoom+ echo OK15:43
ptizoom+ for file in '$datapath'15:43
ptizoom+ echo -n ../data/classifier/LibLinear_023_1en05_1_True.m15:43
ptizoom../data/classifier/LibLinear_023_1en05_1_True.m+ echo -n -e '\t\t'15:43
ptizoom./ "$file"15:43
ptizoom++ ./ ../data/classifier/LibLinear_023_1en05_1_True.m15:43
ptizoom+ output='LibLinear - yesclassified: 3.048510e-01, bias: 1.043610e-14 <--- accuracy: 1.000000e-04'15:43
ptizoom+ ret=015:43
ptizoom+ '[' 0 -eq 0 ']'15:43
ptizoom+ echo OK15:43
ptizoom+ for file in '$datapath'15:43
ptizoom+ echo -n ../data/classifier/LibLinear_15_1en05_1_True.m15:43
ptizoom../data/classifier/LibLinear_15_1en05_1_True.m+ echo -n -e '\t\t'15:43
ptizoom./ "$file"15:43
ptizoom++ ./ ../data/classifier/LibLinear_15_1en05_1_True.m15:43
ptizoom+ output='LibLinear - yesclassified: 9.949554e-01, bias: 1.378421e-05 <--- accuracy: 1.000000e-04'15:43
ptizoom+ ret=015:43
ptizoom+ '[' 0 -eq 0 ']'15:43
ptizoom+ echo OK15:44
ptizoomnote:I think it is not converging because I coked up the transfer of vector into a sv_pv memory... (sigh)15:44
sonne|workptizoom: good enough to me. I will have a look15:48
ptizoomcheck out swig_typemap.i, pdl.i15:49
wikingeh this was a big spam :)15:53
sonne|workI will15:55
wikingsonne|work: SGVector<T>::add(SGSParseVector<T> v) ?16:03
wikingor at least we should have an SGVector(const SGSparseVector<T>& orig) copy constructor in SGVector16:04
sonne|workboth make sense!16:05
wikingor of course SGVector<T> SGSParseVector::construct_dense_vector () const; function16:05
wikinghehe yeah16:06
wikingok will extend them16:06
sonne|workjust do it :D16:06
wikingnote: candidate function not viable: no known conversion from 'SGSparseVector<float64_t> *' to16:24
wiking      'const SGSparseVector<double>' for 1st argument; dereference the argument with *16:24
wiking                void add(const SGSparseVector<T> x);16:24
wikingah ok my bad16:25
wikingah ok my bad16:25
-!- blackburn [~blackburn@] has joined #shogun17:29
blackburnptizoom: you appear to be so poetic in your explanations :)18:06
-!- heiko [] has left #shogun []19:25
ptizoomnothing worse than failing the turing test...19:45
--- Log closed Thu Oct 11 00:00:17 2012