Two months ago I hadn’t looked at a line of Python code – it was never a requirement when I was a developer and as I moved into management I worked with teams and projects using everything from C and COBOL through LAMP to .Net, while Python sat on the periphery. I’d always considered it to be a modern BASIC – something you did to learn how to code or for a quick prototype but not something to be taken seriously in a professional environment.
I’ve always believed that really good programmers understand the boundaries and strengths of multiple languages, able to choose the right tool for the job, and finding the correct compromise for consistency and maintainability. People like this are really hard to find1 although I do tend to veer away from individuals who can only evangalise a single language and say all the others are rubbish2. Due to the projects I’ve been involved with, Python ability has been irrelevant and never considered part of that toolbox. Continue reading Python: serious language or just for beginners?
At the ReworkDL conference in Boston last month I listened to a fantastic presentation by Ryan Adams of Whetlab on how they’d created a business to add some science to the art of tuning deep learning engines. I signed up to participate to their closed beta and came back to the UK very excited to use their system once I’d got my architecture in place. Yesterday they announced that they had signed a deal with Twitter and the beta would be closed. I was delighted for the team – the business side of me is always happy when a start-up is successful enough to get attention of a big corporate, although I was personally gutted as it means I won’t be able to make use of their software to improve my own project.
It’s been a while since I’ve had the time to really dedicate to gaming in the way I’d like. My XBox360 is languishing unloved, my World of Warcraft account dormant since I got the Insane achievement in Cataclysm and the most I can manage now is the odd game of Hearthstone on my Nexus 71. I still keep an eye on what’s going on as the gaming industry is pushing the development of a lot of technologies that make their way into our lives in one way or another and I always have that hope that maybe something will give me the free time to immerse myself into some of the latest games again.
I was watching the announcements for XBox at E3 as they popped up on twitter this evening and two things really stood out for me.
The first session kicked off with Kevin O’Brian from GreatHorn. There are 3 major problems facing the infosec community at the moment:
Modern infrastructure is far more complex than it used to be – we are using AWS, Azure as extensions of our physical networks and spaces such as GitHub as code repositories and Docker for automation. It is very difficult for any IT professional to keep up with all of the potential vulnerabilities and ensure that everything is secure.
(Security) Technical debt – there is too much to monitor/fix even if business released the time and funds to address it.
Shortfall in skilled people – there is a 1.5 million shortage in infosec people – this isn’t going to be resolved quickly.
So, day one of the ReWork Deep Learning Summit Boston 2015 is over. A lot of interesting talks and demonstrations all round. All talks were recorded so I will update this post as they become available with the links to wherever the recordings are posted – I know I’ll be rewatching them.
Following a brief introduction the day kicked off with a presentation from Christian Szegedy of Google looking at the deep learning they had set up to analyse YouTube videos. They’d taken the traditional networks used in Google and made them smaller, discovering that an architecture with several layers of small networks was more computationally efficient that larger ones, with a 5 level (inception-5) most efficient. Several papers were referenced, which I’ll need to look up later, but the results looked interesting.
If you’ve been following this blog you’ll know that I’ve started a new role that requires me to build a deep learning system and I’ve been catching up on the 10+ years of research since I completed my PhD. With a background in computing and mathematics I jumped straight in to what I thought would be skimming through the literature. I soon realised that it would be better all round to jump back to first principles rather than be constrained with the methods I had learned over a decade ago.
So, I found a lot of universities who had put their machine learning courses online and have decided to work through what’s out there as if I was an undergraduate and then use my experience to build on top of that. I don’t want to miss an advantage because I wasn’t aware of it.
I’m four weeks in to my new role and one of the threads of work I have is looking into machine learning and how this has advanced since my own thesis. The current approach to machine intelligence is via learning networks where the data is abstracted: rather than recognising specifics about the problem, the algorithm learns the common elements of the problem and solution to match an input to the expected output, without needing an exact match. Our brains are very good at this: from a very early age we can recognise familiar faces from unfamiliar ones and quickly this progresses to identification in bad light, different angles, when the face is obscured. Getting machines to do the same has been notoriously difficult. Continue reading Machine intelligence – training and plasticity
If you’ve been watching anything on Channel 4 recently you’ll have seen a trailer for PersonaSynthetics – advertising the latest home must-have gadget. The ad itself is slightly creepy, despite the smiling family images, and the website supports this sterile AI view to an extent that some people have expressed concern over a genuine product being available. It’s a fantastic ad campaign for their new series Humans, which in itself looks like it’d be worth a watch (there’s a nice trailer on the website), but it has raised again the issues around artificial intelligence, and how far should it go.
This is of particular interest to me as I am starting a new project in machine learning and, while my work isn’t going to lead to a home based automaton, there are some interesting questions to be considered in this area to ensure that we don’t end up making ourselves obsolete as a species. Continue reading Artificial Intelligence
I’ve had a few discussions recently as to why I’m building a 3D printer using one of these collect the parts magazine rather than either a) buying one outright or b) getting a “proper” build-it-yourself kit from an online store. Now seems like a reasonable time to address the reasons behind this.
If you’ve been following my 3D printing posts you’ll know I’ve subscribed to Eaglemoss’ 3D Create and Print magazine and am gradually building my own printer. With the weekly cost of the magazine this will eventually cost me £650 and I won’t have a complete printer until the middle of next year. While this is cheaper than buying one outright now, with the speed of change and improvement it’s likely that the printer will be out of date, and this is not the only argument:
Following from building the Y-axis assembly of my 3D printer, this post covers the fitting of the motor and the circuit boards to test, using the pieces in issues 7 to 10 of the 3D Create and Print magazine. It’s a good job that, even though this is a “weekly” magazine, the issues arrive in sets of four as otherwise I imagine it could be very frustrating waiting, not able to add to the printer, until issue 10.
I don’t actually see why this stage was any different to the earlier steps – if the pieces had been delivered in a different order then there would have been no need to wait until the 10th issue before starting. I can only assume that someone may have been tempted to power it all up before it was ready, which is why the motor itself is the last piece from this stage to arrive. Continue reading 3D Printer Part 3: Y-axis motor and testing