Deep Learning C library ported to RISC OS
Pages: 1 2
David Feugey (2125) 2709 posts |
Thanks for the tip :) |
Rick Murray (539) 13890 posts |
Indeed, RISC OS, in the absence of a specific command (such as Obey XXX or BASIC -chain XXX) will look to see what the filetype is to figure out what to do with it. I’ve used Obey, TaskObey, Exec, and BASIC. Don’t see why it couldn’t be Lua if there’s an appropriate Run action known to the system.
Indeed. Unless one was to intentionally break Lua in such a way as to allow it to recognise and correctly execute the traditional Obey files that we’ve had since the mid ‘80s, I’m not sure this is a good idea. Wouldn’t it be better, if making !Run a Lua file doesn’t work, to make !Run be an Obey that starts up the Lua script? That way one can have the power of Lua without unforeseen consequences. Between you and me, it might be better to start with Obey having a flag that can be set to not bail out on error. That way, the boot sequence might be able to complete without Harinezumi/Reporter if/when something goes wrong. ;-) |
GavinWraith (26) 1563 posts |
I was not really thinking of replacing Obeyfiles, but musing that scripting languages, and Lua in particular, do the sort of things that in Unix would be done by Bash or one of its cousins. RiscLua2.32 back in 2004 was realised as a relocatable module, which provided lua and luac as *commands. I guess that made it more a part of RISC OS. I reverted to making it an application in later versions because I had not sorted the error handling for wimp programs. In retrospect I should have made only standard Lua a relocatable module, because that can be guaranteed safe, and put the SWI calling part, which later became the riscos library and cannot, in application space. But the relocatable module system is a bit clunky – no dynamic linking, SWIs the only way of exporting functions to other stuff that might need to use them, and so on. |
Paolo Fabio Zaino (28) 1882 posts |
Rick:
Indeed, meanwhile we improve Obey, an ON ERROR using a BASIC based !Run will do the trick too, just sayin… BTW, I am not advocating to use BASIC or any other scripting language, I just answered David’s question (and the lua/rexx/anything else sub-thread) in the (desperate) hope that this would help to bring back the discussion on the ANN topic to help me improve Genann for the people who want to use it and want to try Deep Learning on RISC OS. :-) But guys I remember it has always be like this in RISC OS forums ahahahah since back in the days, so happy to see the “good” traditions are been kept alive (smiling for real at the moment) :-) |
Paolo Fabio Zaino (28) 1882 posts |
For who’s interested, I also added a script to automatically copy the just-built shared lib to your !SharedLibs folder and in the right abi path, but right now it’s commented out, so if you feel brave uncomment it in the BuildGCC and please let me know if it’s working fine for you or not. This is the first step required to add Lua Wrappers (and possibly also Python Wrappers) to Genann. Thanks and enjoy! |
Paolo Fabio Zaino (28) 1882 posts |
For everyone following this thread and interested on the subject I added the first article of a series that introduce the matter on RISC OS and why: Also Gennan is pretty stable so I started to packaging it as a RiscPkg Library etc… , it’s taking a bit of time to complete this part due RiscPkg packaging automation works so, I’ll probably release soon the first official version packaged manually. @ Gavin Wraith
The link above gives you some info on how the “triangle” would be detected, but no there is no calculation of a triangle’s area to identify a triangle in a picture. They work more from a classification stand point. So the training is fundamentally first generates datasets that can be ingested in ANN to generate a model and then use the generated model to “classify” new data in that context. More details on the article and also linked it to a ton of ref on wikipedia (that should work fine on NetSurf) so there should be enough details on a subject, if not please let me know and I’ll try to improve the information presented on the first part (which should be what’s missing from the Gennan documentation basically) |
Pages: 1 2