--- Log opened Sun Mar 22 00:00:09 2015 | ||
-!- curiousguy13 [~curiousgu@59.177.202.172] has quit [Ping timeout: 272 seconds] | 01:05 | |
-!- PirosB3_ [~pirosb3@host33-99-dynamic.181-80-r.retail.telecomitalia.it] has joined #shogun | 01:15 | |
-!- curiousguy13 [~curiousgu@120.59.110.184] has joined #shogun | 01:18 | |
-!- PirosB3_ [~pirosb3@host33-99-dynamic.181-80-r.retail.telecomitalia.it] has quit [Quit: PirosB3_] | 03:14 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Quit: leaving] | 04:14 | |
-!- pickle27 [~pickle27@192-0-134-235.cpe.teksavvy.com] has quit [Remote host closed the connection] | 04:15 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 04:21 | |
-!- mode/#shogun [+o wiking] by ChanServ | 04:21 | |
-!- vortex_ape [~vortex_ap@182.64.177.121] has joined #shogun | 06:54 | |
-!- curiousguy13 [~curiousgu@120.59.110.184] has quit [Ping timeout: 264 seconds] | 07:05 | |
-!- curiousguy13 [~curiousgu@120.57.234.247] has joined #shogun | 07:18 | |
-!- kshitijk [~kshitijk@220.227.149.86] has joined #shogun | 09:19 | |
-!- Nilesh [67157d50@gateway/web/freenode/ip.103.21.125.80] has joined #shogun | 09:46 | |
Nilesh | Hello everyone | 09:46 |
---|---|---|
-!- Nilesh is now known as Guest69125 | 09:46 | |
Guest69125 | I am Nilesh Kulkarni from Mumbai India | 09:47 |
Guest69125 | I needed help with working on LpBoost in shogun. | 09:47 |
Guest69125 | A C++ Example would be a great place to start | 09:52 |
-!- kshitijk [~kshitijk@220.227.149.86] has quit [Ping timeout: 264 seconds] | 10:47 | |
-!- vortex_ape [~vortex_ap@182.64.177.121] has quit [Ping timeout: 246 seconds] | 10:57 | |
-!- Guest69125 [67157d50@gateway/web/freenode/ip.103.21.125.80] has quit [Quit: Page closed] | 11:05 | |
-!- vortex_ape [~vortex_ap@182.64.177.121] has joined #shogun | 11:16 | |
-!- HeikoS [~heiko@0543fcaf.skybroadband.com] has joined #shogun | 11:49 | |
-!- mode/#shogun [+o HeikoS] by ChanServ | 11:49 | |
-!- vortex_ape [~vortex_ap@182.64.177.121] has quit [Ping timeout: 246 seconds] | 12:18 | |
-!- vortex_ape [~vortex_ap@59.177.108.135] has joined #shogun | 12:30 | |
-!- shogun-notifier- [~irker@7nn.de] has joined #shogun | 12:51 | |
shogun-notifier- | shogun: jiaolong_cvc228 :develop * cb71681 / src/shogun/structure/GEMPLP.cpp: https://github.com/shogun-toolbox/shogun/commit/cb71681f8e4dc40d1b4e787a90abe7de73fc19bb | 12:51 |
shogun-notifier- | shogun: fix defects reported by coverity scan | 12:51 |
shogun-notifier- | shogun: Heiko Strathmann :develop * f4a2100 / src/shogun/structure/GEMPLP.cpp: https://github.com/shogun-toolbox/shogun/commit/f4a2100cdfb43cd278843cf771c316056ae75ac8 | 12:51 |
shogun-notifier- | shogun: Merge pull request #2776 from Jiaolong/fix_defects_gemplp | 12:51 |
shogun-notifier- | shogun: | 12:51 |
shogun-notifier- | shogun: fix defects reported by coverity scan | 12:51 |
-!- nileshK [uid75191@gateway/web/irccloud.com/x-dqeidlpjndlozdle] has joined #shogun | 13:00 | |
shogun-buildbot | build #1012 of FCRH - libshogun is complete: Failure [failed test] Build details are at http://buildbot.shogun-toolbox.org/builders/FCRH%20-%20libshogun/builds/1012 blamelist: Heiko Strathmann <heiko.strathmann@gmail.com>, jiaolong_cvc228 <jiaolongxu@gmail.com> | 13:01 |
-!- travis-ci [~travis-ci@ec2-54-80-86-64.compute-1.amazonaws.com] has joined #shogun | 13:04 | |
travis-ci | it's Heiko Strathmann's turn to pay the next round of drinks for the massacre he caused in shogun-toolbox/shogun: http://travis-ci.org/shogun-toolbox/shogun/builds/55362179 | 13:04 |
-!- travis-ci [~travis-ci@ec2-54-80-86-64.compute-1.amazonaws.com] has left #shogun [] | 13:04 | |
-!- curiousguy13 [~curiousgu@120.57.234.247] has quit [Ping timeout: 256 seconds] | 13:05 | |
shogun-buildbot | build #270 of osx2 - modular_interfaces is complete: Failure [failed csharp modular] Build details are at http://buildbot.shogun-toolbox.org/builders/osx2%20-%20modular_interfaces/builds/270 blamelist: jiaolong_cvc228 <jiaolongxu@gmail.com> | 13:09 |
shogun-buildbot | build #271 of osx2 - modular_interfaces is complete: Failure [failed csharp modular] Build details are at http://buildbot.shogun-toolbox.org/builders/osx2%20-%20modular_interfaces/builds/271 blamelist: Heiko Strathmann <heiko.strathmann@gmail.com> | 13:13 |
-!- PirosB3_ [~pirosb3@host33-99-dynamic.181-80-r.retail.telecomitalia.it] has joined #shogun | 13:15 | |
-!- curiousguy13 [~curiousgu@120.57.238.221] has joined #shogun | 13:17 | |
-!- rajul [~rajul@node-wei.pool-125-24.dynamic.totbb.net] has joined #shogun | 14:08 | |
-!- kshitijk [~kshitijk@220.227.149.86] has joined #shogun | 14:32 | |
-!- vortex_ape [~vortex_ap@59.177.108.135] has quit [Ping timeout: 246 seconds] | 15:04 | |
-!- vortex_ape [~vortex_ap@182.64.69.25] has joined #shogun | 15:17 | |
-!- kshitijk [~kshitijk@220.227.149.86] has quit [Ping timeout: 245 seconds] | 15:47 | |
shogun-buildbot | build #560 of debian wheezy - memcheck is complete: Failure [failed memory check] Build details are at http://buildbot.shogun-toolbox.org/builders/debian%20wheezy%20-%20memcheck/builds/560 blamelist: Heiko Strathmann <heiko.strathmann@gmail.com>, jiaolong_cvc228 <jiaolongxu@gmail.com> | 15:48 |
-!- HeikoS [~heiko@0543fcaf.skybroadband.com] has quit [Quit: Leaving.] | 15:51 | |
-!- shogun-notifier- [~irker@7nn.de] has quit [Quit: transmission timeout] | 15:51 | |
-!- kshitijk [~kshitijk@220.227.149.86] has joined #shogun | 17:08 | |
-!- PirosB3_ [~pirosb3@host33-99-dynamic.181-80-r.retail.telecomitalia.it] has quit [Quit: PirosB3_] | 17:39 | |
-!- kshitijk [~kshitijk@220.227.149.86] has quit [Ping timeout: 250 seconds] | 17:41 | |
-!- kshitijk [~kshitijk@220.227.149.86] has joined #shogun | 17:42 | |
-!- PirosB3_ [~pirosb3@host33-99-dynamic.181-80-r.retail.telecomitalia.it] has joined #shogun | 17:49 | |
nileshK | Hi I am facing a problem while running the ./classifier_lda example in shogun. Following is the output that I receive | 17:56 |
nileshK | >>>> PrimalMosekSOSVM trained in 3.4499 | 17:57 |
nileshK | >>>> BMRM trained in 5.5729 | 17:57 |
nileshK | >>>> SGD trained in 0.7817 | 17:57 |
nileshK | [WARN] In file /home/nilesh/BTP2/code2/shogun-3.1.1/src/shogun/multiclass/MulticlassStrategy.cpp line 45: MulticlassStrategy::CMulticlassStrategy(): register parameters! | 17:57 |
nileshK | 0.516125 -0.226967 -0.528333 0.014236 0.421021 -0.353790 0.466174 -0.324728 -0.001395 0.298950 0.365580 0.115346 0.093586 0.312563 -0.510199 0.001264 -0.513814 -0.014525 -0.308745 0.177651 | 17:57 |
nileshK | 0.002279 -0.001445 -0.008696 -0.001968 -0.003419 -0.004643 0.007452 -0.006987 -0.004022 0.002983 0.001389 -0.000190 0.005914 0.004093 -0.004909 -0.005150 -0.006687 -0.006737 -0.003896 0.000975 | 17:57 |
nileshK | [ERROR] In file /home/nilesh/BTP2/code2/shogun-3.1.1/src/shogun/evaluation/StructuredAccuracy.cpp line 51: Unknown structured data type for evaluation | 17:57 |
nileshK | terminate called after throwing an instance of 'shogun::ShogunException' | 17:57 |
nileshK | Aborted (core dumped) | 17:57 |
@wiking | mmm | 17:59 |
@wiking | why do you use still 3.1.1 version? | 17:59 |
@wiking | why not 4.0.0? | 17:59 |
nileshK | yeah, I was unable to compile | 18:04 |
nileshK | the 4.0.0 version | 18:04 |
nileshK | I was getting some compilation with qsort something | 18:04 |
nileshK | I got this version on the quickstart guide. | 18:05 |
nileshK | I want a version of Shogun where I can easily get LpBoost working | 18:05 |
nileshK | I have just been able to get the minimal part running | 18:05 |
-!- hargup [uid10222@gateway/web/irccloud.com/x-ohwbjurzeaqtvuph] has joined #shogun | 18:06 | |
-!- kshitijk [~kshitijk@220.227.149.86] has quit [Ping timeout: 264 seconds] | 18:06 | |
nileshK | And the above errors w.r.t to running ./so_multiclas | 18:06 |
nileshK | What is major change across 3.1.1 and 4.0.0? | 18:08 |
nileshK | Would I be better off using it? In trying to get LpBoost working. | 18:08 |
nileshK | Also, if you pin point to me the exact commit I should use for compilation | 18:08 |
@wiking | what's the error with qsort? | 18:08 |
-!- PirosB3_ [~pirosb3@host33-99-dynamic.181-80-r.retail.telecomitalia.it] has quit [Quit: PirosB3_] | 18:09 | |
nileshK | The file : examples/undocumented/libshogun/so_multilabel.cpp | 18:10 |
nileshK | line no: 69 multilabel_sample.qsort(); | 18:10 |
nileshK | has a compilation issue | 18:10 |
-!- pickle27 [~pickle27@192-0-134-235.cpe.teksavvy.com] has joined #shogun | 18:52 | |
-!- vortex_ape [~vortex_ap@182.64.69.25] has quit [Ping timeout: 252 seconds] | 18:55 | |
-!- vortex_ape [~vortex_ap@120.57.204.102] has joined #shogun | 18:56 | |
-!- HeikoS [~heiko@0543fcaf.skybroadband.com] has joined #shogun | 19:01 | |
-!- mode/#shogun [+o HeikoS] by ChanServ | 19:01 | |
-!- curiousguy13 [~curiousgu@120.57.238.221] has quit [Ping timeout: 244 seconds] | 19:04 | |
-!- kshitijk [~kshitijk@220.227.149.86] has joined #shogun | 19:13 | |
-!- curiousguy13 [~curiousgu@59.177.204.193] has joined #shogun | 19:17 | |
-!- rajul [~rajul@node-wei.pool-125-24.dynamic.totbb.net] has quit [Quit: Leaving] | 19:22 | |
-!- hargup [uid10222@gateway/web/irccloud.com/x-ohwbjurzeaqtvuph] has quit [Quit: Connection closed for inactivity] | 20:31 | |
@HeikoS | wiking: around? | 20:48 |
nileshK | Heiko are you there? | 20:52 |
-!- vortex_ape [~vortex_ap@120.57.204.102] has quit [Ping timeout: 246 seconds] | 21:05 | |
-!- vortex_ape [~vortex_ap@120.59.75.255] has joined #shogun | 21:06 | |
@lisitsyn | HeikoS: hey | 21:08 |
@lisitsyn | can I help with that stuff? | 21:08 |
@lisitsyn | need some guidance to dive in | 21:08 |
@HeikoS | lisitsyn: yes | 21:09 |
@HeikoS | I need help! :=) | 21:09 |
@HeikoS | Want to get some intro? | 21:09 |
@HeikoS | this is about hackinh sphinx | 21:09 |
@HeikoS | I can tell you where I am | 21:09 |
@lisitsyn | yes please | 21:09 |
@HeikoS | https://groups.google.com/forum/#!topic/sphinx-users/1NmjM50DtMA | 21:09 |
@HeikoS | so | 21:10 |
@HeikoS | sphinx can do templates | 21:10 |
@HeikoS | see this one: | 21:10 |
@HeikoS | https://github.com/karlnapf/shogun_manual/commit/518a5204f687472156e12bca3628b2bd55f97c4c | 21:10 |
@HeikoS | the page.html is used to render the pages | 21:10 |
@lisitsyn | HeikoS: ok so you need a jinja | 21:10 |
@HeikoS | as you can see, its quite easy to put the things in there | 21:10 |
@HeikoS | sphinx is based in jinja | 21:10 |
@lisitsyn | to render a page that supports switching langs | 21:10 |
@HeikoS | no sphinx can do all that | 21:11 |
@HeikoS | if the {{body_python}} was defined | 21:11 |
@HeikoS | then we would be done | 21:11 |
@HeikoS | but one can only call {{body}} currently | 21:11 |
@lisitsyn | oh | 21:11 |
@HeikoS | understand? | 21:11 |
@lisitsyn | where body_python comes from? | 21:11 |
@HeikoS | I put it | 21:11 |
@HeikoS | by hand | 21:11 |
@HeikoS | the remplate wont change its used for all sites | 21:11 |
@HeikoS | so quite nice | 21:11 |
@HeikoS | we just need to create the corresponding body | 21:11 |
@HeikoS | now | 21:12 |
@lisitsyn | hmm I'd avoid that | 21:12 |
@lisitsyn | why not to have some 'bodies' | 21:12 |
@lisitsyn | and iterate over that? | 21:12 |
@HeikoS | that doesnt matter its a detail | 21:12 |
@HeikoS | not important now | 21:12 |
@HeikoS | this is just straight jinja2 templating | 21:12 |
@HeikoS | the problem is a different one | 21:12 |
@lisitsyn | seems important as while we have body_* we can't iterate over that | 21:12 |
@lisitsyn | ok then | 21:12 |
@lisitsyn | I don't get the problem ;) | 21:13 |
@lisitsyn | what's it? | 21:13 |
@HeikoS | i did not tell you yet | 21:13 |
@lisitsyn | oh ok :) | 21:13 |
@HeikoS | do you have sphinx installed? | 21:13 |
@lisitsyn | can install that | 21:13 |
@HeikoS | open sphinx.builders.html.py | 21:13 |
@lisitsyn | where? | 21:14 |
@lisitsyn | https://github.com/karlnapf/shogun_manual | 21:14 |
@lisitsyn | here? | 21:14 |
@HeikoS | no | 21:15 |
@HeikoS | just plain sphinx | 21:15 |
@HeikoS | need to dive into its source code | 21:15 |
@lisitsyn | uhm | 21:15 |
@HeikoS | as not properly documented | 21:15 |
@lisitsyn | I am not sure I have such a file | 21:15 |
@HeikoS | it comes with spinx | 21:15 |
@lisitsyn | oh sorry | 21:16 |
@HeikoS | got it? | 21:16 |
@lisitsyn | I brewed wrong sphinx | 21:16 |
@HeikoS | let me know once you have it | 21:17 |
@lisitsyn | HeikoS: a sec | 21:17 |
@lisitsyn | HeikoS: okay I am here | 21:17 |
@HeikoS | ok | 21:18 |
@HeikoS | so where the body is created is the function write_doc | 21:18 |
@HeikoS | def write_doc(self, docname, doctree): | 21:18 |
@HeikoS | see it? | 21:18 |
@HeikoS | now see here: | 21:19 |
@HeikoS | https://gist.github.com/karlnapf/d231d9d5587671645e73 | 21:19 |
@HeikoS | I added some functions to it | 21:19 |
@HeikoS | that manipulate the doctree, replace language specific parts, and then puts multiple "body" fields into the context dictionary | 21:20 |
@HeikoS | so far so good | 21:20 |
@HeikoS | but the problem is: the doctree already contains the parsed sphinx .rst file | 21:20 |
@lisitsyn | okay I found write_doc | 21:20 |
@HeikoS | the function bascially takes the document tree representation, and produces the html | 21:21 |
@HeikoS | handle_page call at the end adds it | 21:21 |
@HeikoS | and ctx is a dictionary with the template arguments that will be replaced via jinja2 | 21:21 |
@HeikoS | so ctx['body'] containts the html code that one can put in with {{body}} in the page.html | 21:21 |
@HeikoS | get it? | 21:22 |
@lisitsyn | yeah probably | 21:22 |
@HeikoS | ok | 21:22 |
@lisitsyn | I need some explanation what .rst is | 21:22 |
@HeikoS | ah | 21:22 |
@HeikoS | see here: | 21:22 |
@HeikoS | https://gist.github.com/karlnapf/b97c4a07fcbd99595496 | 21:23 |
@HeikoS | its the way to write the page | 21:23 |
@HeikoS | its where the code listings are included | 21:23 |
@HeikoS | lisitsyn: ah you have to look at raw | 21:24 |
@HeikoS | https://gist.githubusercontent.com/karlnapf/b97c4a07fcbd99595496/raw/a85f1dc49dfd88614b892c45c9941b3e713df8b0/knn.rst | 21:24 |
@lisitsyn | looks like markdown | 21:24 |
@lisitsyn | similar to | 21:24 |
@HeikoS | its super similar | 21:24 |
@HeikoS | its a superset though | 21:24 |
@lisitsyn | alright | 21:24 |
@lisitsyn | it it transformed to html | 21:24 |
@lisitsyn | it is* | 21:24 |
@lisitsyn | right? | 21:24 |
@HeikoS | so now this literalinclude thing is transformed to syntax tree | 21:24 |
@HeikoS | then syntax tree is put into body | 21:24 |
@HeikoS | I already know how to put in multiple body fields | 21:24 |
@HeikoS | but they are all based on the syntax tree which already contains the parsed python code | 21:25 |
@HeikoS | so need access to the function that parses | 21:25 |
@HeikoS | once we have that, its done | 21:25 |
@HeikoS | somehow combine all | 21:25 |
@HeikoS | so if you could check whether you can hack this thing to that the ctx dictionary in write_doc contains "body_python" | 21:26 |
@HeikoS | then all good | 21:26 |
@HeikoS | its inserted into the template then | 21:26 |
@HeikoS | and the page already works I have it running here locally | 21:26 |
@HeikoS | which is cool as only a single sphinx make html produces all languages | 21:26 |
@HeikoS | then just need to do some finetuning, but not important for now | 21:26 |
@HeikoS | important is to get the syntax tree for the different files | 21:26 |
@lisitsyn | ok I think I understand | 21:27 |
@HeikoS | check this thing, it contains the way to add body_python etc | 21:27 |
@HeikoS | https://gist.github.com/karlnapf/d231d9d5587671645e73 | 21:27 |
@lisitsyn | ah so you patched sphinx to do that | 21:27 |
@HeikoS | but since the function receives the doctree as input (already parsed), it might not work this way | 21:28 |
@HeikoS | one can also write sphinx extensions: | 21:28 |
@HeikoS | http://sphinx-doc.org/extensions.html#extensions | 21:28 |
@HeikoS | I think that might be the cleaner way | 21:28 |
@HeikoS | we can then just define our own .rst command | 21:28 |
@HeikoS | and then simply iterate | 21:28 |
@HeikoS | lisitsyn: check this | 21:29 |
@HeikoS | http://sphinx-doc.org/extdev/tutorial.html | 21:29 |
@HeikoS | might be the way | 21:30 |
@lisitsyn | yeah looks like | 21:30 |
@lisitsyn | need to glance over it a bit | 21:30 |
@HeikoS | somehow overload the :literalinclude | 21:30 |
@HeikoS | new command | 21:30 |
@HeikoS | :shoguninclude | 21:30 |
@HeikoS | where the python code calls the :literalinclude | 21:30 |
@HeikoS | but I think we also need to mofy the html builder to include multiple body fields | 21:31 |
@HeikoS | lisitsyn: btw the code I sent in gist is not patching sphinx | 21:31 |
@HeikoS | one can overload the class and tell sphinx to use it | 21:31 |
@HeikoS | so thats fine | 21:31 |
@lisitsyn | can we write :ourownliteralinclude? | 21:31 |
@HeikoS | lisitsyn: yes | 21:31 |
@HeikoS | lisitsyn: I guess :ourownliteralinclude would just concatenate multiple :literalinclude | 21:32 |
@lisitsyn | it seems that we shouldn't multiply boides | 21:32 |
@lisitsyn | bodies* | 21:32 |
@lisitsyn | but just create a tab for each lang | 21:32 |
@lisitsyn | HeikoS: can this command be defined with jinja? | 21:33 |
@HeikoS | which command | 21:33 |
@HeikoS | lisitsyn: currently we have global tabs | 21:33 |
@lisitsyn | HeikoS: myliteralinclude | 21:34 |
@HeikoS | with a single body, tabs have to be local | 21:34 |
@HeikoS | which is fine | 21:34 |
@lisitsyn | as wiking I like tabs just right to code more | 21:34 |
@HeikoS | lisitsyn: I dont know, but I dont think thats the idea | 21:34 |
@HeikoS | lisitsyn: well I was just going for easiest | 21:34 |
@HeikoS | I think global is better in fact | 21:34 |
@HeikoS | user doesnt want to change locally for every snippet | 21:34 |
@HeikoS | but only once | 21:34 |
@lisitsyn | no | 21:34 |
@HeikoS | but thats super easy to do with template | 21:34 |
@lisitsyn | we put it to parameter | 21:34 |
@HeikoS | yeah | 21:34 |
@lisitsyn | &lang=py | 21:35 |
@HeikoS | but thats all not important | 21:35 |
@HeikoS | as its so easy to change | 21:35 |
@lisitsyn | once selected | 21:35 |
@HeikoS | meat is in this problem here | 21:35 |
@lisitsyn | HeikoS: can we define a command :myinclude that is rendered by jinja template? | 21:35 |
@HeikoS | so then your :shoguninclude would create the html tabs | 21:35 |
@HeikoS | lisitsyn: I dont think it works that way | 21:35 |
@HeikoS | have a look at | 21:35 |
@HeikoS | http://sphinx-doc.org/extdev/appapi.html#sphinx.application.Sphinx.add_directive | 21:36 |
@HeikoS | lisitsyn: more this: | 21:36 |
@HeikoS | http://sphinx-doc.org/extdev/index.html#dev-extensions | 21:36 |
@HeikoS | lisitsyn: it all works via nodes and python code | 21:37 |
@HeikoS | so quite flexible | 21:37 |
@HeikoS | one can iterate over all parameters | 21:37 |
@HeikoS | we could do: | 21:37 |
@HeikoS | .. shogun:: examples/knn | 21:38 |
@HeikoS | :start-after: ![load_data] | 21:38 |
@HeikoS | :end-before: ![load_data] | 21:38 |
@lisitsyn | yes I think that's the idea | 21:38 |
@HeikoS | which then iterates over all languages and calls the same code as in :literalinclude | 21:38 |
@HeikoS | so why need jinja here? | 21:38 |
@lisitsyn | hmmm how do we define | 21:38 |
@lisitsyn | how it is being rendered | 21:39 |
@lisitsyn | if it is just in body? | 21:39 |
@lisitsyn | HeikoS: in other words | 21:39 |
@lisitsyn | say you have this shogun directive | 21:40 |
@lisitsyn | it loads all examples/knn.[lang] | 21:40 |
@lisitsyn | right? | 21:40 |
-!- kshitijk [~kshitijk@220.227.149.86] has quit [Ping timeout: 246 seconds] | 21:40 | |
@HeikoS | BuilderThe builder object (usually called builder) is an instance of a specific subclass of Builder. Each builder class knows how to convert the parsed documents into an output format, or otherwise process them (e.g. check external links).If you have the application object, the builder is available as app.builder. | 21:40 |
@HeikoS | lisitsyn: yes | 21:40 |
@lisitsyn | ok then where is the format is defined? | 21:40 |
@HeikoS | the builder thing would then do the tabbing | 21:40 |
@HeikoS | Builder | 21:40 |
@lisitsyn | ohh | 21:40 |
@lisitsyn | complex thing | 21:40 |
@lisitsyn | :D | 21:40 |
@HeikoS | yes | 21:41 |
@lisitsyn | is there a jinja builder? | 21:41 |
@HeikoS | lisitsyn: no need | 21:41 |
@lisitsyn | how do we write html then? | 21:41 |
@HeikoS | you have python | 21:41 |
@HeikoS | you overload some methods | 21:41 |
@HeikoS | write_doc method | 21:41 |
@HeikoS | dont think thats a lot of work | 21:41 |
@HeikoS | OR | 21:41 |
@HeikoS | ah no | 21:41 |
@HeikoS | just overload | 21:42 |
@lisitsyn | ok theeen | 21:42 |
@HeikoS | lisitsyn: wanna have a go on this? | 21:42 |
@lisitsyn | yes want to try | 21:42 |
@HeikoS | Ill have dinner now but would be back in an hour or so to help? | 21:42 |
@HeikoS | I want to tackle this today! :) | 21:42 |
@lisitsyn | HeikoS: ok I'll try just now | 21:42 |
@HeikoS | how long are you staying? :) | 21:42 |
@lisitsyn | HeikoS: for some random time | 21:43 |
@lisitsyn | gf could force me to talk | 21:43 |
@lisitsyn | :D | 21:43 |
@lisitsyn | but I can continue tomorrow anyway | 21:43 |
@HeikoS | lisitsyn: ok | 21:44 |
@HeikoS | well ill have a look on the chat | 21:44 |
@HeikoS | share whatever you got | 21:44 |
@HeikoS | Ill work a bit more on it later | 21:44 |
@lisitsyn | HeikoS: I just need a way to generate that stuff | 21:44 |
@lisitsyn | is cloning your repo enough? | 21:44 |
@HeikoS | no | 21:47 |
@HeikoS | do | 21:47 |
@HeikoS | lisitsyn: sphinx-quickstart | 21:47 |
@HeikoS | and then copy the knn.rst in | 21:47 |
@HeikoS | Ill add cource of the python and octave | 21:47 |
@lisitsyn | HeikoS: where to call sphinx-quickstart? | 21:49 |
@HeikoS | lisitsyn: any dir | 21:49 |
@HeikoS | and then populate with those files here: | 21:50 |
@HeikoS | https://gist.github.com/karlnapf/b97c4a07fcbd99595496 | 21:50 |
@HeikoS | the html go to source/_templates | 21:50 |
@HeikoS | the .rst go to source | 21:50 |
@HeikoS | and the examples to any folder of choice (matching the knn.rst) | 21:50 |
@lisitsyn | ohh | 21:50 |
@HeikoS | lisitsyn: good? | 21:50 |
@lisitsyn | okay | 21:50 |
@lisitsyn | yes I think I got it | 21:50 |
@HeikoS | its just a minimal working sphinx config | 21:51 |
@HeikoS | and the layout.html adds the bootstrap javascript | 21:51 |
@HeikoS | and the page.html contains the layout for the tabs | 21:51 |
@HeikoS | if you want to activate the bootstrap tabs, then you have to run | 21:51 |
@HeikoS | python -m SimpleHTTPServer 8000 | 21:52 |
@HeikoS | and then navigate the the build/index.html | 21:52 |
@lisitsyn | ok got it | 21:52 |
-!- PirosB3_ [~pirosb3@host33-99-dynamic.181-80-r.retail.telecomitalia.it] has joined #shogun | 22:12 | |
@HeikoS | lisitsyn: hi | 22:22 |
@HeikoS | lisitsyn: any progress? | 22:22 |
@lisitsyn | HeikoS: just set up this thing | 22:23 |
@HeikoS | lisitsyn: shall we maybe synch | 22:25 |
@HeikoS | sync? | 22:25 |
@HeikoS | push to repo and then push incremental changes | 22:25 |
@HeikoS | to see whats going on? | 22:25 |
@HeikoS | or wanna stay in private? | 22:25 |
@lisitsyn | HeikoS: repo is better for sure | 22:25 |
@HeikoS | lisitsyn: wanna push? | 22:27 |
@lisitsyn | HeikoS: yeah just a sec | 22:27 |
@HeikoS | cool | 22:27 |
@lisitsyn | HeikoS: hmm I see just tabs | 22:28 |
@lisitsyn | I guess something is b0rken | 22:28 |
@HeikoS | that means the body twas not found | 22:28 |
@HeikoS | do you have body_python ? | 22:28 |
@lisitsyn | ah | 22:28 |
@HeikoS | or just plain body? | 22:28 |
@lisitsyn | plain | 22:28 |
@HeikoS | no that should do it | 22:29 |
@HeikoS | I can also set up example and push? | 22:29 |
@HeikoS | maybe better? | 22:29 |
@HeikoS | as I already got it working? | 22:29 |
@lisitsyn | HeikoS: yeah | 22:29 |
@lisitsyn | HeikoS: would be better | 22:29 |
@lisitsyn | HeikoS: you want all the doc be in sphinx? | 22:31 |
@HeikoS | yes for now | 22:32 |
@HeikoS | about to push ... | 22:32 |
@lisitsyn | HeikoS: no I mean in general | 22:33 |
@HeikoS | I dont care about this atm | 22:33 |
@HeikoS | probably in doc/manual/ | 22:33 |
@HeikoS | I want this to be seperate from doxygen | 22:33 |
@HeikoS | and then populate/experiment | 22:33 |
@HeikoS | and then maybe at some point use it for class docs also | 22:33 |
@lisitsyn | so doxygen stays for class reference? | 22:33 |
@HeikoS | but no need to do that now | 22:33 |
@HeikoS | can change later | 22:33 |
@HeikoS | purpose is kind of different | 22:34 |
@lisitsyn | just want to understand what you think | 22:34 |
@HeikoS | but it would be cool to have a uniform design | 22:34 |
@HeikoS | ah | 22:34 |
@HeikoS | this is an addition for now, so not replacing anything | 22:34 |
@HeikoS | But I want to move *all* doxygen documentation that is not md-file or class docs to sphinx | 22:34 |
@lisitsyn | I see | 22:34 |
@HeikoS | md files come from doc submodule | 22:35 |
@HeikoS | and class docs are fine for now | 22:35 |
@HeikoS | serve purpose | 22:35 |
@HeikoS | we should also add a :shogunclass directive | 22:35 |
@HeikoS | that links against class docs for a class | 22:35 |
@HeikoS | rather than using hard-links in the examples | 22:35 |
@HeikoS | but let me push | 22:35 |
@HeikoS | lisitsyn: ok | 22:39 |
@HeikoS | clone it | 22:39 |
@HeikoS | go to sphinx dir | 22:39 |
@HeikoS | type make html | 22:39 |
@HeikoS | and then python -m SimpleHTTPServer 8000 | 22:39 |
@HeikoS | then you will see the tabs | 22:39 |
@lisitsyn | cool thanks | 22:40 |
@HeikoS | lisitsyn: for now I left the global tabs | 22:41 |
@HeikoS | but they all just include {{body}} | 22:41 |
@HeikoS | see page.html | 22:41 |
@HeikoS | lets try to write this extension together | 22:41 |
@HeikoS | maybe for now clone the :literalinclude? | 22:42 |
@HeikoS | and then modify? | 22:42 |
@lisitsyn | HeikoS: ok it works | 22:42 |
@lisitsyn | HeikoS: where literalinclude is defined? | 22:42 |
@HeikoS | his is what you can do in an extension: First, you can add new builders to support new output formats or actions on the parsed documents. Then, it is possible to register custom reStructuredText roles and directives, extending the markup. And finally, there are so-called "hook points" at strategic places throughout the build process, where an extension can register a hook and run specialized code. | 22:43 |
@HeikoS | http://sphinx-doc.org/extdev/index.html#dev-extensions | 22:43 |
@HeikoS | lets do this : | 22:44 |
@HeikoS | http://sphinx-doc.org/extdev/tutorial.html | 22:44 |
@HeikoS | so we need this setup function first | 22:45 |
-!- vortex_ape [~vortex_ap@120.59.75.255] has quit [Ping timeout: 264 seconds] | 22:45 | |
@lisitsyn | hmm | 22:45 |
@lisitsyn | looks simple lets try | 22:45 |
@HeikoS | where does this file go? | 22:46 |
@HeikoS | just python path? | 22:46 |
@lisitsyn | HeikoS: I am not sure | 22:46 |
@lisitsyn | have the same question | 22:46 |
@lisitsyn | HeikoS: I think source | 22:46 |
@lisitsyn | conf.py is already here | 22:46 |
@HeikoS | kk | 22:46 |
@lisitsyn | HeikoS: lets just copy paste | 22:46 |
@lisitsyn | HeikoS: I added this thing | 22:47 |
@lisitsyn | nothing happened | 22:47 |
@HeikoS | yeah | 22:48 |
@HeikoS | I think this todo.py adds directives | 22:48 |
@HeikoS | in the conf.py we might be able to add the extension | 22:48 |
@lisitsyn | HeikoS: I am not sure it is loaded | 22:48 |
@HeikoS | extensions = [ | 22:49 |
@HeikoS | 'sphinx.ext.mathjax', | 22:49 |
@HeikoS | 'todo' | 22:49 |
@HeikoS | ] | 22:49 |
@HeikoS | in conf.py | 22:49 |
@lisitsyn | ahhh | 22:49 |
@lisitsyn | I see | 22:49 |
@lisitsyn | no module named todo | 22:49 |
@HeikoS | move to makefile dir | 22:49 |
@HeikoS | then youll get another error ;) | 22:49 |
@HeikoS | got it? | 22:50 |
@HeikoS | todolist not defined? | 22:50 |
@HeikoS | they say in the tutorial: We need to create the two node classes todo and todolist later. | 22:50 |
@lisitsyn | ah yeah | 22:50 |
@lisitsyn | HeikoS: then it just catches modules from currentpath + PYTHONPATH | 22:51 |
@HeikoS | yes | 22:51 |
@HeikoS | but thats fine | 22:51 |
@lisitsyn | yeah more or less | 22:51 |
@HeikoS | the thing can be in makefile dir | 22:51 |
@HeikoS | or somewhere else | 22:51 |
@lisitsyn | we just modify PYTHONPATH | 22:51 |
@HeikoS | yep | 22:51 |
@HeikoS | ok so next step is to define the classes | 22:51 |
@lisitsyn | HeikoS: pythonpath again I guess | 22:52 |
@HeikoS | I copied this to the same file | 22:52 |
@HeikoS | to the beginning | 22:52 |
@lisitsyn | yeah that' s good | 22:52 |
@HeikoS | lisitsyn: but also doesnt work yet | 22:52 |
@lisitsyn | HeikoS: I put all the things below | 22:54 |
@lisitsyn | works | 22:54 |
@HeikoS | lisitsyn: can you past your file in some gist? | 22:54 |
@HeikoS | lisitsyn: I get | 22:55 |
@HeikoS | File "/home/heiko/git/shogun/shogun_manual/sphinx/todo.py", line 4, in setup | 22:55 |
@HeikoS | app.add_node(todolist) | 22:55 |
@HeikoS | NameError: global name 'todolist' is not defined | 22:55 |
@lisitsyn | HeikoS: https://gist.github.com/lisitsyn/a885cd193a4b1b7fae79 | 22:55 |
@HeikoS | doesnt work | 22:56 |
@HeikoS | sigh | 22:56 |
@HeikoS | ah | 22:56 |
@HeikoS | my mistake | 22:56 |
@HeikoS | works | 22:56 |
@lisitsyn | HeikoS: ok then it is quite simple | 22:57 |
@lisitsyn | following this example we can add shoguninclude thing | 22:57 |
@HeikoS | did you try to use it? | 22:57 |
@HeikoS | ill try | 22:57 |
@lisitsyn | not yet | 22:57 |
@HeikoS | dont get a todo list | 22:59 |
@lisitsyn | yeah me too | 22:59 |
@HeikoS | but dont know the syntax of the directive | 23:00 |
@HeikoS | .. todo:: asdasd | 23:00 |
@HeikoS | .. todo:: asdasd2 | 23:00 |
@HeikoS | .. todolist | 23:00 |
@HeikoS | I suggest we try to add tabs around the todolist :) | 23:01 |
@lisitsyn | HeikoS: :todo_include_todos: true | 23:02 |
@lisitsyn | according to http://sphinx-doc.org/ext/todo.html?highlight=todo#module-sphinx.ext.todo | 23:02 |
@HeikoS | config? | 23:02 |
@lisitsyn | yeah I guess | 23:02 |
@lisitsyn | hmm still not | 23:03 |
@HeikoS | I get lots of non existing references when building | 23:05 |
@lisitsyn | HeikoS: ha! | 23:05 |
@lisitsyn | worked | 23:05 |
@HeikoS | push! | 23:06 |
@lisitsyn | ok | 23:06 |
@HeikoS | and then we can add the tabs to the todo list | 23:06 |
@lisitsyn | HeikoS: a second | 23:08 |
@HeikoS | lisitsyn: you have push rights | 23:09 |
@lisitsyn | HeikoS: done | 23:10 |
@lisitsyn | try that | 23:10 |
@lisitsyn | HeikoS: use make preview | 23:10 |
@lisitsyn | that's just make html and python -m thing | 23:10 |
@HeikoS | I see | 23:11 |
@HeikoS | pulled | 23:11 |
@lisitsyn | ok that's pretty straightforward | 23:11 |
@lisitsyn | HeikoS: let me take care of this but tomorrow morning | 23:11 |
@HeikoS | wanna stop? | 23:12 |
@lisitsyn | HeikoS: gf is waiting sorry :) | 23:12 |
@HeikoS | no worries | 23:12 |
@HeikoS | I might play a bit | 23:12 |
@HeikoS | have a good night! | 23:12 |
@lisitsyn | HeikoS: I think that's the way to go | 23:13 |
@lisitsyn | I guess sphinx people would suggest the same thing | 23:13 |
@lisitsyn | ok see you tomorrow | 23:13 |
@HeikoS | see you! | 23:14 |
@lisitsyn | HeikoS: still here? | 23:25 |
@lisitsyn | https://www.kaggle.com/c/otto-group-product-classification-challenge lets beat people on this small data | 23:25 |
@lisitsyn | HeikoS: your GP expertise should rock here | 23:26 |
@HeikoS | haha | 23:26 |
@HeikoS | yes | 23:26 |
@HeikoS | would love to | 23:27 |
@HeikoS | but time issues as usual | 23:27 |
@lisitsyn | HeikoS: be my shogun consultant then | 23:27 |
@HeikoS | sure :) | 23:28 |
@lisitsyn | I love small data | 23:28 |
@lisitsyn | building infinite dimensional models is like touching the god | 23:28 |
@lisitsyn | so I start with kernel svm | 23:28 |
@lisitsyn | HeikoS: what kernel rocks for 0,1,2,...~40 counters? | 23:29 |
@HeikoS | hehe | 23:30 |
@HeikoS | uh thats discrete | 23:30 |
@HeikoS | use Gaussian | 23:30 |
@HeikoS | is it ordered? | 23:30 |
@HeikoS | then Gaussian is fine | 23:30 |
@lisitsyn | HeikoS: 0,0,0,0,0,0,0,4,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,16,0,0,3,0,0,0,0,23,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,1,0,0,0,0,0,0,Class_9 | 23:31 |
@lisitsyn | typisch vector | 23:31 |
@HeikoS | use gaussian as a baseline | 23:32 |
@HeikoS | will do good | 23:32 |
@HeikoS | to me it seems sparse? | 23:33 |
@HeikoS | actually | 23:33 |
@HeikoS | try a linear model | 23:33 |
@HeikoS | liblinear | 23:33 |
@HeikoS | should do as well | 23:33 |
@HeikoS | then compare to Gaussian | 23:33 |
@HeikoS | then compare to random forest | 23:33 |
@HeikoS | we need this supervised learning framework | 23:33 |
@HeikoS | for shogun | 23:33 |
@HeikoS | where all models are fitted, parameters learned automagically | 23:33 |
@HeikoS | and then boosting or so learns the weights | 23:33 |
@lisitsyn | HeikoS: the more kaggle tries I do the better I understand how should it look liek | 23:33 |
@lisitsyn | HeikoS: I bet linear would not win here | 23:34 |
@HeikoS | try | 23:34 |
@HeikoS | baseline for sure | 23:34 |
@lisitsyn | # features <<< # vectors | 23:34 |
@lisitsyn | 38 features | 23:34 |
@lisitsyn | 60K train examples | 23:35 |
@lisitsyn | HeikoS: obviously more complex thing is possible | 23:35 |
@lisitsyn | HeikoS: would this diffusion kernel rock here? | 23:35 |
@lisitsyn | HeikoS: I have been thinking about it as a panacea for such discrete features haha | 23:36 |
@lisitsyn | they look very math :D | 23:36 |
@HeikoS | the diffusion kernel is for unordered discrete data | 23:37 |
@HeikoS | if you have an ordering its fine to embed into real space | 23:37 |
@lisitsyn | ah | 23:37 |
@lisitsyn | I see | 23:37 |
@HeikoS | but shogun doesnt have categorial feature representation that is good | 23:37 |
@HeikoS | if we had | 23:37 |
@HeikoS | I could implement the diffusion kernel | 23:37 |
@HeikoS | which is very good | 23:37 |
@lisitsyn | did you try it on any task? | 23:37 |
@HeikoS | better then 1-in-n encoding and then gaussian | 23:37 |
@HeikoS | yes | 23:37 |
@HeikoS | uci dataset | 23:37 |
@HeikoS | mushrooms | 23:37 |
@lisitsyn | HeikoS: do you think there is possible linear approximation ? | 23:38 |
@lisitsyn | like random gaussian features or HKM | 23:38 |
@HeikoS | yes for sure | 23:38 |
@HeikoS | though not that clear | 23:38 |
@lisitsyn | is it known already? | 23:38 |
@HeikoS | dont know | 23:38 |
@lisitsyn | lets formulate if not | 23:39 |
@lisitsyn | and win all the kaggles | 23:39 |
@lisitsyn | HeikoS: I'd google for that tomorrow | 23:40 |
@lisitsyn | ok I think I am in danger if I keep using my notebook now | 23:40 |
@lisitsyn | see you tomorrow :) | 23:40 |
@HeikoS | hehe | 23:41 |
@HeikoS | good luck | 23:41 |
--- Log closed Mon Mar 23 00:00:11 2015 |
Generated by irclog2html.py 2.10.0 by Marius Gedminas - find it at mg.pov.lt!