A Beginner’s Guide to Recurrent Networks and LSTMs
deeplearning4j.org
deeplearning4j.org
I know it's a bit off topic, does anyone of you know any practical resource that teaches ML while creating some kind of robot with AI?
Thanks in advance.
Deep learning has only recently made advances in computer vision and robotics - it's still definitely an open area of research. Even in production it's only going to be a component of a larger system. I would bet the vast majority of the work in Google's self-driving car is related to probabilistic inference / mapping / search / feature-engineering, and mostly does not involve machine learning.
No autonomous vehicle that isn't integrally dependent on machine learning algorithms will ever hit the market, unless the entire road system is redesigned and human drivers are outlawed.
Things that I get stuck on, which then takes the wind out of my sails: tokenization (specifically handling the Unicode Emoji entities and ascribing meaning to them - Do I use them as tags/signals, or replace with synonyms?), lemmatizing (do I spend time going down the rabbit hole of simplifying all lines of chat to their most basic words?), grouping likes of dialog (if my reply was within ten minutes, consider it part of a "conversation" object), and how best to time stamp things (everything is individually stamped, but for some correlations, the time of day is the important bucket - for others, it may be the calendar day/season/busy work day).
It's such a huge domain, I keep spinning my wheels trying to feel like I'm going down a path that will lead to some form of success, no matter how small.
Another topic I've tried getting into is using ML to process my Hearthstone logs (live, not historical) to try my own approach on an unreleased project I recently read about that sought to predict opponent's cards. My thought was to create a series of dicts from popular "net decking" sites and compute cosine similarity between the cards an opponent has already played - the other project used game histories to predict the "next card", and I was seeking to predict which archetype my opponent is likely playing, since my own domain knowledge would figure out their likely "signature moves" once I had that clue. I'd maybe expand on it to predict how likely it is the opponent can go lethal on their next turn, given the cards they likely have and the ones on the board. With that topic, I've been trying to figure out state machines and various data structures in Python. Computing similarity I've figured out, with Counters seems to work, but the mechanics of doing so against potentially hundreds of "net decks" is challenging. Is a comprehension the way to go? A matrix function? I have no idea.
I guess I'm making this big dump of my own thoughts to see if anyone has any pointers, guidance, example projects, or general knowledge to share or direct me to that could help me figure this stuff out, because I'm excited to learn and I learn best when I have a pet project to which I can apply my newfound knowledge.
Anyone in the same boat? Or have anything to suggest?
Re:lemmatisation, either grab an existing machine-readable dictionary [1] if you just want all lemmas with their ambiguity, or just do simple PoS-tagging with something like https://honnibal.wordpress.com/2013/09/11/a-good-part-of-spe... (I love that post for its no-nonsense approach)
[1] http://wiki.apertium.org/wiki/Using_an_lttoolbox_dictionary has some (and will tokenise for while analysing).