--- Log opened Wed Dec 12 00:00:41 2018 | ||
-!- gf712 [90520839@gateway/web/freenode/ip.144.82.8.57] has joined #shogun | 10:23 | |
-!- HeikoS [~heiko@p2E571DD4.dip0.t-ipconnect.de] has joined #shogun | 11:40 | |
-!- mode/#shogun [+o HeikoS] by ChanServ | 11:40 | |
-!- HeikoS [~heiko@p2E571DD4.dip0.t-ipconnect.de] has quit [Ping timeout: 250 seconds] | 11:46 | |
-!- gf712 [90520839@gateway/web/freenode/ip.144.82.8.57] has quit [Ping timeout: 256 seconds] | 13:52 | |
wuwei[m] | HeikoS: hi | 14:00 |
---|---|---|
-!- gf712 [90520839@gateway/web/freenode/ip.144.82.8.57] has joined #shogun | 16:22 | |
-!- HeikoS [~heiko@p2E571DD4.dip0.t-ipconnect.de] has joined #shogun | 16:27 | |
-!- mode/#shogun [+o HeikoS] by ChanServ | 16:27 | |
@HeikoS | gf712: yoyo | 16:28 |
wuwei[m] | HeikoS: hey | 16:30 |
@HeikoS | wuwei[m]: hi! | 16:31 |
@HeikoS | how are you? | 16:31 |
wuwei[m] | great | 16:31 |
@HeikoS | wuwei[m]: what are you up to these days? | 16:31 |
wuwei[m] | in an intern | 16:31 |
wuwei[m] | i'm working on tvm recently | 16:32 |
@HeikoS | tvm? | 16:33 |
@HeikoS | what is what? | 16:33 |
wuwei[m] | yeah, it's a deep learning compiler | 16:33 |
wuwei[m] | or a tensor ir, in analogy to llvm | 16:34 |
@HeikoS | ah I see | 16:35 |
@HeikoS | that sounds interesting | 16:35 |
@HeikoS | it takes probabilistic dl programs and generates fast code? | 16:35 |
@HeikoS | or what does it "compile"? | 16:35 |
wuwei[m] | it compiles a tensor program written in its dsl, and generate cuda or opencl code or other backend | 16:36 |
@HeikoS | that's pretty cool!" | 16:37 |
@HeikoS | wuwei[m]: re the refactor | 16:37 |
wuwei[m] | yeah | 16:37 |
@HeikoS | Our usual approach with such big changes is to develop a replacement that is introduced iteratively | 16:38 |
@HeikoS | and runs next to the old system | 16:38 |
@HeikoS | see paramter framework | 16:38 |
@HeikoS | and then once things are nice and we have some good examples | 16:38 |
@HeikoS | we start slowly removing the old API bit by bit | 16:38 |
@HeikoS | see e.g. clone/equals | 16:38 |
@HeikoS | where we first merged new implementations | 16:38 |
@HeikoS | then increased test coverage over a few months | 16:39 |
@HeikoS | then did the transition inside SGObject | 16:39 |
@HeikoS | and then removed old code | 16:39 |
wuwei[m] | yeah i see | 16:39 |
@HeikoS | with this PR I feel this would be the best approach as well: a completely new API that is added to the base classes and then slowly developed | 16:39 |
@HeikoS | and then we make the old algorithms serve it one by one | 16:39 |
@HeikoS | at some point the approach usually stalls | 16:39 |
@HeikoS | at 80% | 16:39 |
@HeikoS | and this means, the last 20% have to be dropped/removed or require more refactoring efforts (structural changes or so) | 16:40 |
wuwei[m] | so we may add fit + predict first | 16:40 |
wuwei[m] | the problem so far is distance/kernel machine, which need to be initialized with features first | 16:41 |
gf712 | hey, sorry wasn't looking at my screen! Are we talking over here? | 16:48 |
@HeikoS | gf712: no I think hangout will be good | 16:50 |
@HeikoS | wuwei[m]: yes | 16:50 |
@HeikoS | wuwei[m]: I feel that they should have a field that should be set by the user | 16:50 |
@HeikoS | and otherwise he gets a "NoFeaturesException" or soething | 16:51 |
wuwei[m] | a field in distance? | 16:51 |
@HeikoS | yes in the base classes that require some initialization | 16:51 |
wuwei[m] | current way is to call distance.init directly, what do u mean? | 16:52 |
@HeikoS | rather than requiring that, we could do it via put | 16:53 |
wuwei[m] | do we still call init? or call it lazily | 16:54 |
@HeikoS | idk | 16:55 |
@HeikoS | just discussing some options :) | 16:55 |
wuwei[m] | okay, let me rebase that pr first | 16:56 |
@HeikoS | wuwei[m]: maybe we should have a general call before you put in any work | 16:56 |
@HeikoS | since I feel we should discuss/think a bit about this | 16:56 |
@HeikoS | it is quite fundamental | 16:56 |
wuwei[m] | sure | 16:56 |
-!- gf712 [90520839@gateway/web/freenode/ip.144.82.8.57] has quit [Ping timeout: 256 seconds] | 18:25 | |
-!- HeikoS [~heiko@p2E571DD4.dip0.t-ipconnect.de] has quit [Quit: Leaving.] | 18:41 | |
-!- HeikoS1 [~heiko@p2E571DD4.dip0.t-ipconnect.de] has joined #shogun | 18:41 | |
-!- HeikoS1 [~heiko@p2E571DD4.dip0.t-ipconnect.de] has quit [Ping timeout: 250 seconds] | 18:58 | |
-!- HeikoS [~heiko@p2E571DD4.dip0.t-ipconnect.de] has joined #shogun | 19:58 | |
-!- mode/#shogun [+o HeikoS] by ChanServ | 19:58 | |
-!- HeikoS [~heiko@p2E571DD4.dip0.t-ipconnect.de] has quit [Ping timeout: 272 seconds] | 20:13 | |
-!- mrohit[m] [mrohitmatr@gateway/shell/matrix.org/x-dfmkhlnukbavigzd] has quit [Ping timeout: 250 seconds] | 23:29 | |
-!- mrohit[m] [mrohitmatr@gateway/shell/matrix.org/x-ffjhrxanqnlukjga] has joined #shogun | 23:31 | |
--- Log closed Thu Dec 13 00:00:42 2018 |
Generated by irclog2html.py 2.10.0 by Marius Gedminas - find it at mg.pov.lt!