Also, tensorflow has a distributed variation, which allegedly will be OSS'd at some point ... and has a more flexible OO architecture, i.e. Theano's architecture is all about multi-D arrays, whereas tensorflow's object structure would in principle let it be used more broadly (with a lot of work)
I sent this to the OpenCog list... **** some quasi-random thoughts on tensorflow, after reading the paper and API (but not actually using the code yet) ... An update on the release of the distributed version of tensorflow is here: https://github.com/tensorflow/tensorflow/issues/23#issuecomment-155608002 Regarding the relationship btw tensorflow and OpenCog -- most simply, an OpenCog Atom is a persistent store of information, whereas a TensorFlow graph is a collection of Operations (each translating input into output). On the face of it, TensorFlow is best for procedural knowledge, whereas Atomspace is best for declarative knowledge.... As it looks to me, the "declarative knowledge" in a TensorFlow graph is pretty much contained in the numerical tensors that the Operations pass around... In terms of OpenCog integration, the most straightforward thing would be to implement -- TensorNode ... with subtypes as appropriate -- GroundedSchemaNodes that wrap up TensorFlow "Operations" This would allow us to basically embed TensorFlow graphs inside the Atomspace... Deep learning operations like convolution are represented as opaque operations in tensorflow, and would also be opaque operations (wrapped inside GSNs) in OpenCog.... The purported advantage over Theano would be that TensorFlow is supposed to be faster (we'll test), whereas Theano has an elegant interface (but not really more elegant than TensorFlow) but is slower than Caffe ... Wrapping Operations inside GSN would add a level of indirection/inefficiency, but if the Operations are expensive things like running convolutions on images or multiplying big matrices, this doesn't matter much... Now if one considered tensorflow as a general dataflow approach rather than just a deep learning architecture, one could potentially use it for more than just perception processing For instance, the URE (Universal Rule Engine) in OpenCog (which underlies our PLN inference algorithms, for example) consists of a set of operations for mapping inputs into outputs; each of these operations could be implemented as a TensorFlow Operation, if one wanted to.... But to do this, TensorFlow would need to be generalized so that "sub-hypergraph" was a Tensor type, basically. Right now TensorFlow is for setting up operations that pass around numerical tensors. But we would need operations that pass around complex sub-hypergraphs... Whether going this route is a good idea, I don't know.... It's more clear that tensorflow will be useful for wrapping up deep learning perception algorithms... Interesting times ;) \**** *** On Wed, Nov 11, 2015 at 12:36 PM, Ben Goertzel <[email protected]> wrote: > > Interface-wise, they're both elegant, it seems... > > My guess would be that tensorflow will do faster learning, but gotta test > to find out... > > On Wed, Nov 11, 2015 at 12:34 PM, J Rao <[email protected]> wrote: > >> Website: http://tensorflow.org/ >> Source code for single machine version: >> https://github.com/tensorflow/tensorflow >> >> I would be interested to know how this compares to Theano. >> >> On 11/11/2015 2:55 AM, Peter Christiansen wrote: >> >>> >>> http://www.wired.com/2015/11/googles-open-source-ai-tensorflow-signals-fast-changing-hardware-world/ >>> >>> >>> Sent from my iPad >>> >>> ------------------------------------------- >>> AGI >>> Archives: https://www.listbox.com/member/archive/303/=now >>> RSS Feed: >>> https://www.listbox.com/member/archive/rss/303/26346070-1cd82ca6 >>> Modify Your Subscription: https://www.listbox.com/member/?& >>> Powered by Listbox: http://www.listbox.com >>> >>> >>> >> >> >> >> ------------------------------------------- >> AGI >> Archives: https://www.listbox.com/member/archive/303/=now >> RSS Feed: >> https://www.listbox.com/member/archive/rss/303/19237892-5029d625 >> Modify Your Subscription: >> https://www.listbox.com/member/?& >> >> Powered by Listbox: http://www.listbox.com >> > > > > -- > Ben Goertzel, PhD > http://goertzel.org > > "The reasonable man adapts himself to the world: the unreasonable one > persists in trying to adapt the world to himself. Therefore all progress > depends on the unreasonable man." -- George Bernard Shaw > -- Ben Goertzel, PhD http://goertzel.org "The reasonable man adapts himself to the world: the unreasonable one persists in trying to adapt the world to himself. Therefore all progress depends on the unreasonable man." -- George Bernard Shaw ------------------------------------------- AGI Archives: https://www.listbox.com/member/archive/303/=now RSS Feed: https://www.listbox.com/member/archive/rss/303/21088071-f452e424 Modify Your Subscription: https://www.listbox.com/member/?member_id=21088071&id_secret=21088071-58d57657 Powered by Listbox: http://www.listbox.com
