Slashdot Mirror


Ask Slashdot: How To Get Into Machine Learning?

An anonymous reader writes: I know this is a vague question, but hoping to get some useful feedback anyway. I'm an experienced SW Engineer/Developer who is looking to get into the Machine Learning arena. I have an MS in CS and a solid 15 years of experience in a variety of areas, but no experience in Machine Learning.With that as background, my question is: What is the most time-efficient (and reasonable cost) way to:
(1) Decide whether Machine Learning is for me and
(2) Make myself employable in the field.
An additional constraint is that I can't afford to quit my full-time day job. Thanks.

123 comments

  1. forsyte psaga by Anonymous Coward · · Score: 0

    Decide whether Machine Learning is for me

    Build a machine and ask it. Sheesh, kids today...

    1. Re:forsyte psaga by penguinoid · · Score: 1

      Build a machine and ask it.

      No, that wouldn't work. If he built it wrong, it might give the wrong answer. He should just ask the chatbot from the previous story.

      --
      Don't waste your vote! Vote for whoever you want, unless you live in a swing state it won't matter anyways
  2. Coursera by Anonymous Coward · · Score: 1

    Coursera have a bunch of free courses in ms that start 4th of jan.

    1. Re:Coursera by ShanghaiBill · · Score: 4, Interesting

      MIT has a good free intro to AI and ML by Patrick Winston. I watched it for an hour a day while I was on the treadmill. I learned a lot, and burned off a few pounds.

      You should also learn CUDA and/or OpenCL. That will not only help you with ML, but also with any other HPC, and make you more employable.

    2. Re:Coursera by Anonymous Coward · · Score: 1

      Way to be completely unhelpful while being amazingly arrogant at the same time. Does it hurt to be that useless? It should.

    3. Re:Coursera by Matheus · · Score: 3, Informative

      ...or he's just bored with the various employment he's had over the years and looking to something that superficially interests him. Machine Learning from the outside seems like a fun field to get into (whether it is or is not on the practical side) so that's where he wants to turn his attention.

      I'm sorry but a lot of your generalizations only apply to someone living in a certain box of life. 15 years of experience "approaching paying off your mortgage"... are you kidding me? Sure for some people but that's certainly not the average. Even with more people getting 15 year mortgages 15 years out of school doesn't necessarily put you into the position to be at the end of that and those first few years you weren't necessarily making that kind of cash anyway. Add in things like Student loan payments, car payments, family, eating and well maybe even living your life outside of the office and being at the end of your mortgage term is SO not to be expected at this point.

      Failed engineer? Maybe but certainly not clearly from his description. The only dig I would say is with a MS in CS and 15 years in the field I would think he would have figured out how to explore new technologies by now without asking /. As for not being able to quit his day job: I like to tell my friends I live paycheck to paycheck on *really large paychecks. That's my choice. I like to live every minute of my life outside of work to the fullest and that costs money ergo I'm not banking it away. I've managed to survive a couple employment hiccups just fine and so like living on that edge. He might have a family to feed (I don't) or huge student loans (remember the MS) or etc etc etc that are burning away those paychecks before they can be saved. Kudos to you for being extremely frugal with your money but most of the population require their paychecks to continue, even those of us with really large ones.

      Anyway... I must've really felt like typing today (or avoiding that pesky day job of mine) since trolls don't typically deserve this kind of bandwidth. Thanks for providing some much needed distraction!

      As for the OP's questions:
      1) It might be... go try it! Google is your friend and will lead you to things like Coursera or Open Source projects or Amazon's Machine Learning tools or or or..
      2) Contributing to Open Source projects is your best bet for practical experience in the field OR taking a hit to get an entryish level job in the field and proving your worth inside to get back to your 15 year salary expectations. Honestly if you've got a solid resume and that MS of yours getting a job shouldn't be the hard part.

    4. Re:Coursera by ShanghaiBill · · Score: 2

      I'm not sure that would help a failed engineer.

      The GP's advice was not just directed at the submitter, but at the hundreds of other people who might have the same question. Machine Learning is a big and growing field, and everyone involved in tech should learn the basics about how ML works and what it can do.

    5. Re:Coursera by Anonymous Coward · · Score: 0

      Aw look, someone's posting from 1992 back when there were jobs!

    6. Re:Coursera by Anonymous Coward · · Score: 1

      Yes but what to answer to such a stupid question? "Dear Slashdot, how can I learn this advanced en-vogue field (that I'm completely new to and not really interested in) and make money fast?"

    7. Re:Coursera by Anonymous Coward · · Score: 0

      He says he has 15 years as a "SW engineer/developer" which I take to literally mean "SW developer with no engineering training."

      He also said "I have an MS in CS", which I took to really mean "I was a Music major who couldn't get a job, so I bought an MS in programming and bluffed my way into a pretty good job".

      But after 15 years, most people cannot afford to give up their day job; he's seen some job postings for machine learning that pay better than what he's earning so now he wants to pick up enough jargon to bluff his way into a better paying job than the one he has.

    8. Re:Coursera by Anonymous Coward · · Score: 0

      Way to be completely unhelpful while being amazingly arrogant at the same time. Does it hurt to be that useless? It should.

      Ok then, what would you have the average Slashdot Denizen say to someone with a fucking MASTERS degree in CS and 15 years experience, who can't figure out how to fucking Google? You really think this place is a hotbed of secret AI R&D activity?

      Buy a couple books, pirate them if you want. Sign up for a couple online courses. Do your own research.

    9. Re: Coursera by Anonymous Coward · · Score: 0

      Lol I also have over 15 years experience and am nowhere close to paying off a mortgage.

    10. Re:Coursera by Anonymous Coward · · Score: 0

      He says he has 15 years as a "SW engineer/developer" which I take to literally mean "SW developer with no engineering training."

      No, he meant what he said. He is a Software Engineer with 15 years experience and/or Software Developer with 15 years experience.

      Obviously he is not an Engineer in an traditional engineering discipline like electrical engineering or mechanical engineering.

      And before you claim that "software development" may not be called "software engineering" then lease tell that to those guys: http://www.cmu.edu/silicon-val... FYI: their degree is called: MS in Software Engineering, oops: so no one claims that developers are "Engineers" es in "Engineer", they are "Master of Science" ... yes, now you claim that CS is not a science ... but well: the people in that field disagree ;D

    11. Re: Coursera by HappyDrgn · · Score: 1

      There's plenty of jobs for experienced people with solid engineering skills. It's harder to get into this industry now than 15-20 years ago, but if you're contributing to open source, attending meetups and have decent soft skills you can still get in to the industry just fine. The market has grown; the influx of new "engineers" is much larger, which just means there's more competition, but there's plenty of jobs out there make no mistake about that.

    12. Re:Coursera by Anonymous Coward · · Score: 0

      1) He also said he had a BS in CS, how many music majors get one of those?

      2) If he was a music major, how on earth did he afford to "buy" an MS in CS?

      3) I agree completely that he must have bluffed his way through most of it; 95% of the people I graduated with in my BSCS class bluffed their way through by plagiarizing reddit and stackoverflow posts. And anyone with an MS in CS should be a damn sight more of an expert on machine learning than the people here on slashdot, unless indeed they had their head under a rock for the last 25 years.

    13. Re: Coursera by Anonymous Coward · · Score: 0

      Like everyone in IT since Y2K when we allowed this industry to have unqualified so called professionals with pissy certificates in basic IT training into the field - some of which are managers of IT today without a fucken clue about technology that is damaging business slowly and steadily. No other profession, lawyers, doctors, teachers, or any trade such as carpentry, plumber, etc, allows for "off the street with no qual" entry into their fields to anyone that can barely type. We need to insist on university and college qualifications if we want quality employees. Otherwise keep outsourcing to India, hiring these morons to try and manage them while they rape your business openly and without will question in terms of quality and cost due to inept managers. That's modern business today. And before you give me some bullshit about Zuckerberg dropping out of Uni, etc - yes, they are the exception. All I'm saying is that you need some indicator that someone is willing and eager and driven to learn and any proper education (not a 5 day Microsoft course) will help, but is not fool proof of course - there are many shit doctors, lawyers, tradesman out there but nowhere near the bottom of he barrel standard in IT today. Tragic.

    14. Re: Coursera by Anonymous Coward · · Score: 0

      Yes, everyone without a degree in the field is inept. Are you one of those "clueless" managers?

    15. Re:Coursera by DNS-and-BIND · · Score: 1

      Yeah, I was talking to a wealthy acquaintance recently and he says he sees a lot of people like you. Make $700,000 a year, spend $700,000 a year. Paycheck to paycheck. He has a solid business so he'll always be around, but he says that type come and go all the time. Part of his business deals with buying up distressed assets cheap, so he sees them on that end as well. Good luck to you and hope your winning streak continues for the rest of your life. If not, I have a friend willing to give a really bad rate when you need lots of cash, fast.

      --
      Shutting down free speech with violence isn't fighting fascism. It IS fascism!
    16. Re:Coursera by ltbarcly · · Score: 1

      Wow, that is a truly autistic comment. Pretty much spot on and completely accurate though, just very insensitive. But True.

      https://www.youtube.com/watch?...

    17. Re:Coursera by plopez · · Score: 1

      "or he's just bored with the various employment he's had over the years and looking to something that superficially interests him"

      I bet it's boredom. Most of what I do is just monkey coding boiler plate. Boring as hell. Management doesn't care about how things could be improved as long as the insane feature delivery schedule is met and I feel constantly working under my potential.

      Poster is bored and wants to try something different.

      --
      putting the 'B' in LGBTQ+
    18. Re:Coursera by Aighearach · · Score: 1

      And is CS the same thing as engineering?

      As a software developer with many years of experience I have to point out, engineering is a specific type of discipline. For example if you think "waterfall" is a bad word, you're not an engineer.

      If he was a real person and not a dice employee acting a role, he'd have to be a complete tool to be looking for jargon with an Ask Slashdot. A person with an advanced degree AND 15 years of experience in the field would simply read a few glossaries and be a lot farther ahead. A person who has a MS should be darn good at research, and they wouldn't be asking broad general questions in the form, "Where do I start to learn about a specialty?"

      It is absurd, and the poorly written character deserves all the criticism he gets.

    19. Re:Coursera by Aighearach · · Score: 1

      Wow, you take the time to post complaining that I was insensitive, and yet you use "autistic" as your descriptive word for that. Why do you need to bring people with disabilities into it, and turn them into a pejorative, when you could use a more sensitive and demographic-neutral term like "asshole?"

    20. Re:Coursera by KGIII · · Score: 1

      It's Slashdot 4.0 (by my count). "What are the hot tips to get into AI and start making money fast!?!"

      It's an improvement from, "Three tricks to make SystemD even faster!"

      --
      "So long and thanks for all the fish."
    21. Re:Coursera by Anonymous Coward · · Score: 0

      Waterfall has been known not to work since 1974. Is an advanced degree these days the same as it was 15 or 30 years ago? Would it suprise you to hear of a student 2 years into a masters in electrical engineering who did not know Ohm's law and yet he will be a "professional" engineer, by being spoon fed through a graduate program, within the next 5 years?

    22. Re:Coursera by Wycliffe · · Score: 1

      Yes but what to answer to such a stupid question? "Dear Slashdot, how can I learn this advanced en-vogue field (that I'm completely new to and not really interested in) and make money fast?"

      You're reading into the question stuff that wasn't said. I could have easily asked this question. I have a BS in Computer Science with a minor in Psychology. I worked with neural networks and genetic algorithms in High School and planned on going into AI (thus the minor in psych). Somewhere along the lines I got into backend web development and had a couple kids. I have now been out of the AI field for almost 20 years. I also would have a hard time quitting my day job because I have a family to support but would love to switch to that line of work. It wouldn't be for the money. I make good money now. It would be to have more interesting and cutting edge work. I would even be willing to take a paycut if it meant I could work with AI, drones, or robots. Don't assume that the OP is not really interested in the field or is just chasing the money.

  3. Start Small by Anonymous Coward · · Score: 1

    First start small like a game.
    Teach a computer how to win a Tic-Tac-Toe, or 8 queens.

    1. Re:Start Small by nospam007 · · Score: 1

      "First start small like a game.
      Teach a computer how to win a Tic-Tac-Toe, or 8 queens."

      Then teach it Poker and run it on 250 Online Poker sites and forget that job change.

  4. Start by using the tools available... by Anonymous Coward · · Score: 2, Informative

    ....Coursera, MIT Distance learning classes, etc. to get a feel for what "machine learning" actually is. Also, bone up on your math skills...it's a math intensive field.

    this is how I'm approaching things and I'm looking at it from a doctoral programme standpoint.

    my 2 cents

    1. Re:Start by using the tools available... by Gorobei · · Score: 1

      The courses are pretty far lagging the state of the art.

      Watch every youtube video by Hinton, LeCun, etc. Read the fundamental papers.

      Once you understand the ideas, write a simple NN program. It's like 100 lines of python/numpy. Train in on MNIST. Compare your results with the published results. Understand where your code is failing. Try to make it better. Get a 2-layer RBM to actually learn better than a 1-layer RBM.

      That's like two months of evenings total work. Do that, and you can at least know if you like the field and have any hope of understanding it.

    2. Re:Start by using the tools available... by ShanghaiBill · · Score: 1

      Also, bone up on your math skills...it's a math intensive field.

      Although ML has a lot of math, the math is not all that deep. If you have taken calculus (up to partial derivatives) and linear algebra (matrices), you have enough math to get started. But you need to be comfortable quickly reading and understanding a lot of mathematical notation. Many of the important ML research papers have more math than text.

    3. Re:Start by using the tools available... by Pseudonym · · Score: 2

      Once you understand the ideas, write a simple NN program.

      How can I put this politely? Err... this is extremely bad advice. If you want to get into machine learning, steer clear of neural networks for the foreseeable future.

      They're just not that useful for the vast majority of problems. For problems of simple-to-moderately complexity, their performance (both accuracy and speed) is atrocious compared to other methods, but more to the point, the model itself is uninformative. You almost always want to use a technique where examining the model will give you insight into the problem that you're trying to solve.

      I would start by finding a problem which interests you. Then pick an appropriate technique and apply it to that problem. Maxent or SVM are good ways to start if it's a classification problem, or go straight to latent variable models (e.g. hierarchical Bayes) if you want to discover structure.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    4. Re:Start by using the tools available... by Pseudonym · · Score: 1

      What you really need for ML is statistics. Lots of statistics.

      How much statistics do you need? It's hard to say, but a good rule of thumb is that if you know what a conjugate prior is and where to look them up, then you certainly have enough.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    5. Re:Start by using the tools available... by KGIII · · Score: 1

      As an outsider looking in and with great curiosity, I'd say that NN would *really* be something that they'd need to steer clear of assuming they had the chops to get back into academia. Barring that, I'd agree entirely. There might be some big hitters (e.g Google, Microsoft, Apple) poking in that direction and with a limited interested but, from what I'm seeing, they're pulling those employs from academia and not off the street.

      I suppose, with some work, they could *build* something and then seek to hawk it, and themselves, and have some chance of success. I do not see them just saying that they've decided on a career change, taking a few online courses, reading a book or two, and then getting a job in the field.

      So, basically, I'm agreeing with you with the caveat being that, if they have the chops, there's some chance at getting into a grad program and then getting some work in academia or the likes.

      --
      "So long and thanks for all the fish."
    6. Re:Start by using the tools available... by Pseudonym · · Score: 1

      There might be some big hitters (e.g Google, Microsoft, Apple) poking in that direction and with a limited interested but, from what I'm seeing, they're pulling those employs from academia and not off the street.

      The main reason why it's the big hitters working in the neural network space is that they have ambitious problems (where there is no "understanding" that can be applied), more data to throw at the problem than we mere mortals, and more people to assign to one project than you do.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    7. Re:Start by using the tools available... by KGIII · · Score: 1

      Absolutely. It's actually a little something that I miss about my old company. I am biased but I like to say that I built the greatest traffic simulation game of all time. It lacked graphics (though we* did add that eventually but it was on smaller data sets, limited in scope, and very compute cycle expensive). It was great having that much horsepower to play with.

      I had a whole server room full of clustered blade servers with giant blinking switches and pretty lights. I had disk arrays that were mind blowing. An example might be, we were working with almost a TB of collected data, to model with, in the very late 1990s. It was awesome! I literally can't imagine what it would be like today. I sold in 2007 and the sale was finalized in very early 2008.

      Today? Today we'd be able to model the chaos that is a human so much better. We'd be able to throw at, account for, utilize, anticipate, optimize for, so many new variables that just weren't possible and then, today, we could lay down real satellite imagery and actually visualize it in 3D! As I left, and this is still rather proprietary so pardon my lack of details, we were modeling store interiors (pedestrian traffic modeling is a thing) in 3D as well as using our own lab, live collected metrics, and positioning ourselves to optimize for very specific behavior characteristics that would appeal to a greater subset of people. (You don't think they set up malls and stores that way by chance, do you?)

      I'd *love* to see what AI could do in that situation. I'd love to see it and I'd love to work on it but, alas, I never will.** However, I agree with your assertion. I've had big iron and thrown it at complex problems and it is exciting. I'm a mathematician and just happened to end up in the industry because that's where my thesis was. My advisor put me in touch with the Mass. DOT folks and the rest is, shall we say, history.

      That said - if you don't mind my picking your brain, what do you expect to come from this? How do you think it will be used? What repercussions do you fear, if any? -- only really important bit in this jumble of text. ;-)

      * I say we but that's very subjective. See, I am not a programmer. I programmed because I had to. I hired professionals who were much more adept than I. I learned a lot from them but, with some time, I also learned to get out of their way, give them the tools they asked for (not what a vendor recommends), and give them clear goals. I have trouble making a stick figure. In short, I did not make anything of the sort but we, the company, added graphics.

      ** I'm pretty much covered by a life-time non-compete that I knowingly, willfully, perhaps eagerly signed. Being a person who's a little fond of doing what I say I'll do, well... That means I'll never work in the industry again. I have been called back in (at consultant wages even) and helped out a couple of times but it has been years since then and I'm not sure that I could do it again - it's difficult to leave every time. In theory, I can go back to work for the new parent company. However, they've got stuff like 'human resource departments,' badges, security, a dress code, and they probably won't let me sleep in the office any more. But there's no way that I could work for another company and not end up using what is now their property - namely Intellectual Property that they've bought and paid for. I simply could not distance myself well enough and that would be dishonest of me and I'm kind of fond of being able to say that I haven't done so.

      --
      "So long and thanks for all the fish."
    8. Re:Start by using the tools available... by Pseudonym · · Score: 1

      I can't say I really work in AI as such, but I am the sort of person who gets paid to (amongst other things) apply machine learning to real-world problems, so I'm not really sure that I could say where all this is headed.

      Right now, I'm more scared of people than I am of machines. The biggest forseeable risk of having a crapload of data and a lot of hardware to throw at it is that it will be used against people by people.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    9. Re:Start by using the tools available... by KGIII · · Score: 1

      Thanks. When I was young, I was born in 1957, there was actually a group of people who were scared of "the big brain." The worried about things like automation taking over their jobs, taking over their lives, and making choices for them. This was not just a recurring theme in science fiction of that era but there were several television shows that touched on it and even a few non-science fiction works. Well, not traditional, era-specific, or hard science fiction works...

      I remember one show, I think it was a movie, where there were a couple of office ladies who worked in accounting. They were losing their jobs due to computers taking over the industry. At several points, they demonstrated fear and felt that one would be taking over the entire world in some not-too-distant future. I seem to recall that being a UNIVAC in that movie and that the computer did get mad and throw paper around.

      The thing is, it wasn't *quite* science fiction, at least not in feel. It was more of a standard work of fiction, just a run of the mill quasi-chick flick and it happened to contain a computer. That's one of them that I recall.

      I don't have any specific fears other than the obvious - that additional automation will likely, at least for some period of time, result in the loss of jobs for certain classes of people. That's pretty much a given and there are lots of ways to deal with it as a society. I'll make no predictions as to how that may go - I'm not qualified to opine.

      Thanks again. I appreciated the insight and the answer(s). Unlike some, perhaps many, of the folks here - I'm comfortable saying that there's stuff that I don't know and that I will never know it unless I ask. I try to not be "wrong" so I often ask questions. I'd have loved to get something like this into traffic modeling. I can only speculate that there are projects, on-going and some advanced, where machine learning is being done on large data sets and then used to fine-tune the models and algorithms. How, I do not know the specifics nor would I admit it if I did. There are still plenty of friends in both the industry and my old company.

      --
      "So long and thanks for all the fish."
    10. Re:Start by using the tools available... by Pseudonym · · Score: 1

      I remember one show, I think it was a movie, where there were a couple of office ladies who worked in accounting. They were losing their jobs due to computers taking over the industry.

      I think you're talking about Desk Set. Katharine Hepburn and Spencer Tracy.

      It's certainly true that technology is a challenge for some jobs, but it also creates new jobs. The speed of revolution just happens to be faster than it ever was. Some industries (e.g. service industries, such as aged care) are booming.

      My biggest concern of all, and it's a concern shared by a lot of Slashdotters I suspect, is that the promise of a better tomorrow won't happen (or won't happen until much later) for reasons unrelated to technology. The current 3D printing boom is a case in point: this game-changing technology was held up for over 20 years by a patent thicket. Only after some of the key patents expired did we all start seeing the benefit.

      Right now, the benefit of the sharing economy is being held back by regulation. I strongly suspect that we won't get the benefit of the "Internet of Things" until the DMCA and its non-US equivalents are reformed.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  5. Certification? by MAXOMENOS · · Score: 4, Informative

    Have you considered online education towards a certificate in machine learning? For example, The University of Washington, via Coursera, offers a certificate in Machine Learning after about 30 weeks of study and a capstone project. You'll need some background in statistics, and familiarity with Python, and you'll have to put in several hours a week. Total cost is about $500.

    1. Re:Certification? by Anonymous Coward · · Score: 2, Informative

      Coursera's Data Science track, through Johns Hopkins' Biostatistics department, has a machine learning course late in the 10-course program. Lot of work to get there; you learn a good bit of R and some statistics along the way. Depends on whether you want to pursue it in such a context.

    2. Re:Certification? by Anonymous Coward · · Score: 0

      Taking classes alone won't make you employable - and that's at an accredited university. Cousera means nothing - that $500 is better spent on beer. No employer has ever took any of my Cousera classes seriously - I even a bunch of certs that state I finished with distinction.

      And even then, to get employed, you need experience. No one hires without experience - unless you got a really good friend who can hire you.

    3. Re:Certification? by tehlinux · · Score: 1

      How do you get experience if you don't have experience?!

      --
      Most linux users don't know this, but the man pages were named after Chuck Norris. Chuck Norris fsck'ing hates noobs!
  6. Coursera, Andrew Ng by Billy+the+Mountain · · Score: 4, Interesting

    Sign up for Coursera and take Andrew Ng's Machine Learning course. It's excellent (took it twice).

    --
    That was the turning point of my life--I went from negative zero to positive zero.
    1. Re:Coursera, Andrew Ng by wonkey_monkey · · Score: 3, Funny

      It's excellent (took it twice).

      If it was that good, you'd've only had to take it once!

      Ba-dum-pum-pum.

      --
      systemd is Roko's Basilisk.
    2. Re:Coursera, Andrew Ng by Anonymous Coward · · Score: 1

      I agree. It's one that I wouldn't mind taking again. You may need to hone up your maths a bit, back to high school level (some calculus and matrices/vectors). Fortunately I took Calculus One also on Coursera just before the machine learning course.

    3. Re:Coursera, Andrew Ng by pr100 · · Score: 1

      Yup - I did it way back when moocs where a new thing. It was a good course then. Presumably the content is much the same now.

    4. Re:Coursera, Andrew Ng by Anonymous Coward · · Score: 0

      So excellent that you failed it once.

      *At least* once.

    5. Re:Coursera, Andrew Ng by UnsignedInt32 · · Score: 1

      After looking at TensorFlow, I realized I'm not very prepared to use it, so I started taking Ander Ng's course and I'm in my 5th week now, and I feel like I'm getting a lot of it. I like the way he seems to have created this course to be fairly self-contained. Fors instance, although calculus shows frequently in the course, he is fairly open that he doesn't consider it to be a prerequisite and derived version of the equation is usually given whenever it comes up. Linear algebra is certainly required in the course, but the course provides nice refresher, and I actually learned it more firmly than I've gone through it previously in the past. (Maybe I'm more motivated than last time I went through it, though...)

    6. Re:Coursera, Andrew Ng by AchilleTalon · · Score: 1

      It is a good course, I took it once. I gives a pretty good idea of many aspects of ML. It is a good introductory course.

      --
      Achille Talon
      Hop!
    7. Re:Coursera, Andrew Ng by AchilleTalon · · Score: 2, Informative

      Go to hell! In USA it is math and in UK it is maths.

      --
      Achille Talon
      Hop!
    8. Re:Coursera, Andrew Ng by Anonymous Coward · · Score: 0

      What is it in hell? Mathematics?

    9. Re:Coursera, Andrew Ng by codeAlDente · · Score: 1

      In hell it is called Real Analysis.

      --
      He once inserted random mutations into his code, just so he could have the experience of debugging.
    10. Re:Coursera, Andrew Ng by Anonymous Coward · · Score: 0

      Lol

    11. Re:Coursera, Andrew Ng by KGIII · · Score: 1

      I am from the US, hold a Ph.D in Applied Mathematics, and call it maths, mathematics, or sometimes math.

      I am doing math.
      I studied mathematics.
      We're learning the maths.

      Those are some examples. I'd not say that I'm an authority on the subject but others might indicate that I am. I'd argue with them and say that the authorities on that subject would actually be those with a background in linguistics.

      --
      "So long and thanks for all the fish."
    12. Re:Coursera, Andrew Ng by Anonymous Coward · · Score: 0

      "Math", not "Maths".

      And that's why everyone hates your country.

  7. Andrew Moore's Data Mining Tutorials by Anonymous Coward · · Score: 1

    Andrew Moore's Data Mining Tutorials are a great resource. http://www.autonlab.org/tutorials/

  8. Get a H1B to get the job! by Joe_Dragon · · Score: 0

    Get a H1B to get the job!

    1. Re:Get a H1B to get the job! by Anonymous Coward · · Score: 0

      [insightful]

  9. Why do you have to ask? by wjcofkc · · Score: 2

    You pretty much answered your own question, especially with criteria number three: Get involved in Open Source AI.

    http://opencog.org/
    http://wiki.opencog.org/w/The_Open_Cognition_Project

    I am sure there is more than OpenCog. Google is your friend on this one.

    --
    Brought to you by Carl's Junior.
    1. Re:Why do you have to ask? by Anonymous Coward · · Score: 0

      I looked it up. Open Cog seems to be crap pushing the narrow work of one guy Ben Goertzel as the model for AI. The language of writing seems to be abstract B.S with suspicious terms like 'synergy'.
      Hey Ben Goertzel, when you make a robot that can as be as good as my domestic help, call me. Till then, yawn.

  10. Stanford Online Learning by SJrX · · Score: 5, Interesting

    I might recommend the following along with the associated free textbook: https://lagunita.stanford.edu/... Textbook: http://www-bcf.usc.edu/~gareth... Afterwards you can look at the more advanced free textbook: http://statweb.stanford.edu/~t...

  11. Data Science by Anonymous Coward · · Score: 0

    First, a simple question back to you: why would you like to get into machine learning? What is it that attracts you to the field? Once you have that clear(er) you might be able to make a more well founded choice.

    Second, you have a massive advantage to everybody else trying to get into this field: your degree in CS. You know how to conceptualise and solve problems using a computer.

    Third, the currently most popular role for someone who does neat stuff with data is called a 'data scientist'. Massive buzzword score, six-legged sheep, but highly employable. Very, very popular in the job market where I live.

    Fourth, get your basic skill sets together (although you should know most of this): know how to do shit with data (sql for instance, some 3rd normal form modelling), learn the relevant programming languages (R, python, matlab), follow the courses on the data science track on Coursera, pay for the certificate, put it on linkedin. Get some extra courses in statistics. And, studying something from a domain you're interested in helps as well; economics, supply chain, retail, finance, etc.

    Fifth, use your network to find assignments (could be in your current job, could be out of that), start building your real world experience.

    Summary: Most importantly: why? Call yourself a data scientist for max buzzword score. Check out Coursera, study a bit. Actually do something with data.

  12. Forget it by prefec2 · · Score: 1

    If you want to earn money with it, forget it. A software engineer is a completely different type of computer scientist than data mining and machine learning. You could get another master program on that. But why wasting your 15 years of experience? You need to relearn all the logic stuff from university and couple it with statistics and signal processing. All in all this is heavy duty math stuff.

    1. Re:Forget it by Anonymous Coward · · Score: 0

      That's absolutely true. And this is exactly why anyone who call themself "software engineers" is anything but. The math involved in stats and DSP is the stuff that real engineers are well versed in.

      The "software engineers" that Facebook, Microsoft etc. are hiring would barely be familiar with basic algebra, let alone topics like convolution, Fourier transforms or anything related to stochastics.

      The gulf is huge. Bottom line is that 99% of hires are "programmers", plain and simple. And that's perfectly ok...but they're certainly not engineers.

    2. Re:Forget it by prefec2 · · Score: 2

      I would more go in the direction that a software engineer (a real one) needs to know the following:
      - Modeling
      - Software Architecture
      - Requirement Engineering
      - Enough to talk to the database guys what he wants as data model stored
      - Project management
      - Programming
      - Continuous integration and delivery
      - Software versioning and building
      As a FB programmer you need to know only a subset mainly programming and using the tools in CI and VCS. In modern companies also modeling.
      For AI a total different skill set is required. It is like being a baker and switching to butcher.

  13. Just do it by phantomfive · · Score: 1

    I happen to know these guys are hiring regular programmers. Start working at a company like that, and you'll soon learn whether you like it or not.

    If you actually want to do research, you'll probably need a PhD, no matter where you start working though.

    --
    "First they came for the slanderers and i said nothing."
    1. Re:Just do it by iMadeGhostzilla · · Score: 1

      I read that YCombinator startups that do AI do not like job candidates who have interest in machine learning -- they want good programmers interested in solving a problem, where AI happens to be a means to an end. So maybe the best thing to do would actually be to quit your day job and get a job at a place that does AI and hires regular programmers!

    2. Re:Just do it by LifesABeach · · Score: 1

      I'm curious about the applications of Machine Learning. What some examples of applied solutions using Machine Learning?

    3. Re:Just do it by phantomfive · · Score: 1

      To decide which ad to show you. That's the biggest use I've seen for it recently.
      In the 80s, there was a huge push to use machine learning in automated diagnosis in medicine, although I don't know if anything practical ever came of that.
      I've also read that machine learning has been effective in determining what chemicals are in unknown substances using a spectrometer.

      --
      "First they came for the slanderers and i said nothing."
    4. Re:Just do it by Perky_Goth · · Score: 2

      Look at the competitions on Kaggle to see what people are up too.
      ML can be used to do OCR, detect diseases from scans or measurements, use sensor data to figure out preventive maintenance, optimize the navigation of websites, voice recognition, marketing (duh, but there's a lot to it), recommendation systems (like netflix and amazon), network analysis (social, electrical...).
      That's all I got right now, but there's more.

  14. Get industrial with it. by Anonymous Coward · · Score: 0

    Experiment.... pick a problem, pick an algorithm, collect your training set, show how well your solution was at solving the problem. Start simple... like using a Naive Bayes categorizer to sort mixed URLs of banks, payday loans, and financial news sites into the correct buckets. Then get into the other algorithms that use a burst of air to knock the bad potatoes off the conveyor. The stuff gets more valuable when you start adding in robotics, mechanical engineering, and electrical engineering... There is CS only work too, but a lot more competition on those jobs so if you can apply machine learning in industrial ways (like using drones to update perennial farm field inventory or something like that) then you will be well on your way to $$$.

  15. Udacity Nanodegree by Simozene · · Score: 1

    If you really want to be employable then I recommend getting a nanodegree in Machine Learning through Udacity. https://www.udacity.com/course... One of the things that makes their program stand out is that they use project based learning. Upon completion you have projects that you can present to perspective employers.

  16. Time Efficiency is the answer by BoRegardless · · Score: 4, Insightful

    Turn off the TV. Go into online learning fast & hard.

    Bust your ass and eventually join some of the OSS project/s and volunteer to help.

    It gets your name out there and the right people do notice that.

    1. Re:Time Efficiency is the answer by Anonymous Coward · · Score: 0

      It gets your name out there

      That's actually the reason I will never contribute regularly to OSS projects: I don't want my name "out there."
      I've donated code anonymously via pastebin and gist.github but I'll never attach my real identity to publicly accessible code or website comments.

      OP may feel the same way (note that he submitted this anonymously).

    2. Re:Time Efficiency is the answer by SethJohnson · · Score: 1

      Turn off the TV. Go into online learning fast & hard.

      I've been thinking about this comment all day. I can't endorse the sentiment more. Especially when machine learning is looming on the horizon.

      Everyone reading this now better be continually expanding their skill set and experience. The promise of machine learning is to make those who aren't doing this obsolete in the workforce. If you think domain knowledge makes you irreplaceable, that's exactly the target of machine learning.

      Udemy has really well-produced online classes available for ten bucks. Go enroll now and thank me when you have a job in ten years.

  17. Kaggle by ZahrGnosis · · Score: 1

    The single most motivating thing for me, personally, was to find real problems to solve and real examples and help on how to solve them. Bonus points for variety and competition and even prizes.

    Enter Kaggle -- data mining competitions with an absurd amount of examples, datasets, community posts, forums, curated examples. I really cannot emphasize how much I've learned in this community. Join and try one of the example competitions -- the Titanic one is popular, follow the getting started guides and go from there.

    I'm sure there are many other ways, and it may not be for everyone, but this has really been a great resource for me.

    1. Re:Kaggle by Anonymous Coward · · Score: 0

      Kaggle is a waste of time for a beginner! I found it extremely user unfriendly and unorganized. Also the Kaggle problems are ridiculous toy problems. Besides competitions are not a mentally healthy place to be in, for a beginner. Instead a beginner must find experts who can mentor her and guide her on what are the ML areas that industry finds valuable and attractive in a resume.

  18. Combine On the Job with some education by jonshern · · Score: 1

    What language are you currently using? Try to start getting into the machine learning languages like R and/or Python. Take some of the stat stuff into your day to day job. Like processing some metrics about the dev process/install process/web stats/etc. Take a udacity course. By combining the two you should be able to write a pretty decent resume that shows your education and some practical applications.

  19. Use machine learning by Blaskowicz · · Score: 3, Funny

    Machine learning is meant to learn itself on its own, right?

  20. Re:15 years experience? by Anonymous Coward · · Score: 0

    +1. You may already be too old and too expensive; but a MOOC or two would probably make you competent enough to train your H1B replacement.

  21. How Motovated Are You? by LifesABeach · · Score: 1

    Try searching the 'net using "PDF Machine Learning." And read the results.

    Ask the question, "what will get me hired?" Easiest way to find that out is searching the 'net using "Jobs Machine Learning"

  22. Let a machine decide by Anonymous Coward · · Score: 0

    Let a machine decide if you should do it.

  23. Do you have passion in it? by yes-but-no · · Score: 2

    Learn xyz because you have a passion in it; job security or employable should not be the reason. xyz will be replaced by abc the moment you are ready. Also the jobs needing xyz may be off-shored.

    If you have already worked 15 years, life is short; start enjoying things which money can't bring. Cut down expenses, manage finances better and hope we reach post-scarcity and you can live off with less money. The point is ..there is only 24 hours in a day -- don't learn something and waste those hours unless you immensely enjoy that field.

    From what I know, MI truly expands the horizons of computer science. So someone who wants to be strong in MI; should have a good grasp on CS, algorithms, data structures.

    1. Re:Do you have passion in it? by Anonymous Coward · · Score: 0

      This post looks like it was made by a machine learning algorithm put together by people who learned english from people who learned english from people who learned english from people who barely knew english.

    2. Re:Do you have passion in it? by Anonymous Coward · · Score: 0

      Re: "...a passion in it; job security or employable should not be the reason"

      AI has indeed been a roller-coaster field. There was the "Great AI Winter" after the 1980's AI bubble. And even before that it, it's had mini booms and busts as some promising technology or products piqued interest, created lots of investor activity, but then failed to live up to promises.

      We just may be in an AI bubble now.

      Have an alternative but related specialty, such as statistical analysis. Statistical analysis has been relatively stable over the years based on my observation.

  24. Five Tribes of Machine Learning by Lserevi · · Score: 1

    I would view this ACM webinar on the five sub-disciplines in machine learning (assuming you can) and then investigate the listed resources:

            http://event.on24.com/wcc/r/10...

  25. Re:15 years experience? by Anonymous Coward · · Score: 1

    Why mod this down? It's fairly accurate. As a 20 year veteran in the field I really do understand where the article poster is coming from and as a 20 year old veteran I also know where the OP of this thread is coming from.
     
    Not to say that people over the age of 40 can't move in the technical world but it's difficult and if pay is a question then it's that much harder. I've been considering moving into other areas of IT myself and I already know that to expect more than 80% of my current pay rate is unrealistic but sometimes it's worth it. I can also say that getting on board with a new technology outside of my exact field is also troublesome and something as intense as machine learning is going to be daunting unless you're already a serious math wiz. Being able to mentally calculate a tip at a restaurant doesn't count as being a math wiz either. Sorry guys, every indicator that the question poster put forth makes me feel bad for him because my guess is that even the best outcome is still going to fall short of where he needs to be at the end of the day. What is a real possibility at 30 is a sad reality at 40. No offense to anyone but we have to face facts.
     
    On a side note, the one thing wrong with the thread poster's attitude is not valuing peer advice. The one thing I can say about this is I'd rather read these threads for good advice on this subject than going through tons of reviews for Jimmy Joe's Bootcamp programs.

  26. do the math by charlesmartin14 · · Score: 1

    The hardest part in machine learning is that while we frequently use the same tools as software engineers, the thinking process is quite different. I work and have worked with some great software engineers as clients, and I hire software engineers as staff. And anyone can learn an API or figure out how to run Hadoop or Spark. This doesn't matter. The main differentiator is math. Projects live and die by the mathematical capacity of the engineers and data scientists working on them. In the end, machine learning is about taking some data, applying some math, and making a prediction. The coding is important--but it is secondary. A staff member who can do real math is worth 10X a good programmer. By that I mean they get their work done faster, require less managerial oversight, and produce better results. And they are not constantly trying to write fancy code. The most important thing you can do is brush up on your math skills. Basic calculus, linear algebra, and statistics.

  27. Caltech online course by Anonymous Coward · · Score: 0

    Caltech has a pretty good introductory course that mixes theory and practical application and its free.

    https://work.caltech.edu/telecourse.html

  28. Russell & Norvig by Anonymous Coward · · Score: 0

    The most-cited book in computer science builds up to machine learning gradually and covers all the other areas of AI as well--essential since hybrid approaches will be important (see: Josh Tenanbaum's work):

    http://aima.cs.berkeley.edu/

  29. Elbot and Cleverbot by MakersDirector · · Score: 0

    First and foremost, credentials for CS related AI and machine learning are largely meaningless right now.

    So my first piece of advice is to quit 'seeking' instruction like a computer waiting for further input and get into motivating yourself through self study.

    Secondly, keep in mind that machine learning is something that will take an enormous amount of time out of your schedule after you've gotten the basics of the learning engine completed. You HAVE to interact with it and allow others to in order for it to truly learn.

    With that said, here's some wonderful ways to help others with their AI projects - and also a way for you to to get started researching and studying, from the outside, the dynamics of dialog and interaction that you'll be working on as a CS programmer.
    Elbot: http://elbot_e.csoica.artifici...
    Cleverbot: http://www.cleverbot.com/
    Existor (her name's Evie) is based on the cleverbot script: https://www.existor.com/en/
    and Skynet: http://www.skynet-ai.com/

    Third. You're an engineer by trade. If you truly want to understand how to make a machine think. Then take psychology courses, marketing courses, education courses, economics beyond macro and micro are all helpful to understand psychological motivation of populations, and more. Why do all this? A machine can 'wait' and consume information, but that doesn't make it intelligent. What makes it intelligent is it's desire to participate in the community it belongs to and that belongs to it. Psychology - whether it's through market forces or internalized - is what we now know as a population motivates. Integrating these into an AI is critical.

    Fourth. Take a look information storage and retrieval systems and become an expert in databases, weighted algorithms, and different levels of normalization. The book 'Data Insights' By Hunter Whitney is a wonderful book on information systems and the different potential ways to perceive data. If you're poor like I am, Hunter has distributed a full copy of Data Insights through torrent web sites, with his only request being: If you can afford it, and the book has provided benefit to you, then please pay for the real copy. you can find at any Barnes and Noble in the country

    This leads directly to neural networking. My advice from there is to dig into peer to peer networking and to understand how these systems function. Bitcoin's open source, and provides a wonderful example of what not to do with a peer to peer network and information storage, which you can see by the massive gigabit chain you have to download.

    Why this is all necessary:

    With a MS in CS and 15 years experience, you should by now be able to create at least a mid sized client server or n-tier application, end to end.

    Now you gotta figure out your input stimulus for your AI. Are you acquiring information from text input alone? Are you acquiring it through a Kinect device connected via a USB and pulling out 3d data and sound? Are you placing your AI on the internet as a chatbot? Will the thing be mobile? If so, how?

    Knowing your stimulus and nailing it down to a few input devices is crucial to developing a learning system.

    From there, your next goal is to develop the support systems which 'go' with the AI.

    And this can WILDLY vary depending on your methods of stimulation.

    For the most part though, if you don't have proficiency with databases and data stores, Then you're not going to understand memory retention schemes for AI properly and how and when to optimize your database and the differences in normalization schemes.

    So go get a job in databases for a few years then come back. These are a dime a dozen and easy to find anywhere. Pick your database wisely, you'll probably stick with it for your career - and it's hard not to be a database bigot afterwa

  30. Re:15 years experience? by fuzzyfuzzyfungus · · Score: 2

    It doesn't help that picking up 'machine learning' isn't exactly on the same scale as picking up the trendy framework or language of the day. It's not clear that the rate we churn through those is actually a good idea; but at least there are huge areas of conceptual similarity that allow somebody versed in yesterday's hot language and environment to pick up today's and tomorrow's with some acclimatization to new vocabulary.

    This is pretty much an entire different branch of mathematics, similar only in that the problems are large enough that you need programming skills to implement useful solutions.

  31. Re:15 years experience? by Anonymous Coward · · Score: 0

    ..and of course, slashdotters still spend more time fantasizing about eating hot dogs on Mars instead of working on age reversal...

  32. Learning ml by Anonymous Coward · · Score: 0

    The Stanford course was the best IMHO. It's available on YouTube.
    Also, gaining application experience by just making things using something like Google TensorFlow is more helpful than memorising all the theoretical bits.
    If you want to hit the scope of the subject then getting a book like "how to solve it: modern heuristics" or the "handbook of metaheuristics" --is a good place to start.
    More out there would be any of the genetic programming books by Koza.
    Good luck!

  33. Re:15 years experience? by ranton · · Score: 1

    Why mod this down? It's fairly accurate. As a 20 year veteran in the field I really do understand where the article poster is coming from and as a 20 year old veteran I also know where the OP of this thread is coming from.

    It was modded down because it didn't do anything other than insult the article poster. You provided enough substance to start an actual discussion, but the original AC just acted like a troll.

    Not to say that people over the age of 40 can't move in the technical world but it's difficult and if pay is a question then it's that much harder.

    This is quite true, especially the last part about pay. I am higher paid than most of my coworkers, but only because of some highly specialized skills I have. If I took a developer job in a completely different technology stack it would be hard to keep my senior developer title and senior developer salary. I assume I would take a 30-40% pay cut to take a job in technologies I am not an expert in. I also assume I could get that pay back in under 5 years; probably under 3. The first time I went from $65k to $130k it took 4 years, so I see little reason why I couldn't reach a similar salary as I have now in a few years. I am a firm belever that any skilled developer can reach an expert level of skill in any area within 3 years.

    --
    -- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
  34. Really? by Anonymous Coward · · Score: 0

    How do you have an MS in CS and not already know the answer to that? 15 years ago the small regional university I went to had extensive graduate courses on it taught by professors with jobs in the field (plus normal research roles).

    If you haven't had enough interest in the field while getting your MS to even take any of those classes, or read enough /. articles in the last 15 years to give you a basic understanding of the field, I don't know how sucessful you will be. That isn't meant to be a harsh criticism, but rather advise from someone who spent some time in the field during their early years.

    At this point, "machine learning" is mostly research based, or done by large pocket companies. You can find some annomolies to that, but most are pretty fringe. So you would either need to go the route of student/professor, or try to get a gig at a company doing the development/research. I think it would be pretty difficult a this stage for you to sucessfully interview at the large shops doing truely innovative work. Most are hiring from the elite of the academic field, and not someone a bit older, with no research/practical history with machine learning. You could probably get a job with less interesting positions, I know Equifax is known to hiring more "recent grad" types without extremely impressive backgrounds to do some of their data processing. These generally tend to be more heuristic based solutions, with the machine being tweaked more by manual manipulation based on data processed. As opposed to the system self identifying and self modifying.

    Good luck, and let us know in 10 years how things went!

  35. Try the netflix data set by rocqua · · Score: 1

    You might look into the netflix data set. Its been well analyzed and deals with a realistic problem. There is quite a bit of info on approaches available, and you can get the set yourself, so you can experiment on it. The best results are known, so you have something to compare your personal ideas against. Getting the set is a bit of a hassle, but should be doable.

  36. Deep Learning by mrlibertarian · · Score: 2

    If you want to start playing with some deep learning models, I would highly recommend this page. It provides some basic examples that run right in your browser. Also, this page provides a great guide to working with neural networks without getting bogged down in a bunch of mathematical equations.

    Another great resource is Caffe. Caffe is a deep learning framework that will let you define a wide variety of neural networks by just writing a text file. You can run Caffe applications in CPU or GPU mode (a lot of open source deep learning code will only work with GPUs, so being able to run things either way is a nice feature).

    If you want to do computer vision, make sure that you read up on fully convolutional neural networks, because they are the big thing right now.

    Remember that story about a program that was able to learn how to play just about any Atari game? That is called reinforcement learning, and that's a big thing right now too. Udacity has a great course on reinforcement learning.

    1. Re: Deep Learning by RandCraw · · Score: 1

      Very nice pointers. I also recommend the other two intro ML courses at Ga Tech on supervised and unsupervised learning (that precede the reinforcement learning course you recommended). IMHO these three are perhaps the most comprehensive and in-depth video intro to ML available.

      Another great resource is the intro to ML video series (course) from Tom Mitchell at Carnegie Mellon. His textbook remains my favorite intro to ML for those who aren't math whizzes.

  37. Machine Learning Litmus Tests by BuckB · · Score: 1

    Machine learning is a pretty big field. What other subjects do you like? That will definitely help figure out what part of Machine Learning would be more interesting to you. Statistics: The core of conceptual clustering is finding data that relate to each other. Both supervised (you define the concepts and say what the data is) and unsupervised (the machine identifies clusters based on proximity to each other) are heavy into using all of those statistics functions on your calculator. Probability: Bayes Nets are the core of diagnosis and analysis. Deriving Bayes net from real world data is a huge problem area. Puzzles/Shortest Path/Graphs: Machine planning or game theory is less math intensive. The idea is that you may not know if you've "won" until you've reached the end of a bunch of steps - like learning a card game. You may win a trick / hand but lose the game.

  38. Sign up for Kaggle by Anonymous Coward · · Score: 0

    If you know a bit of programming Kaggle is an excellent site to learn data science / machine learning. Real problems, tons of scripts and tutorials and the competition admins will answer questions and keep things running smoothly.

    And once you place highly in some competitions it will be obvious to employers you know your stuff.

  39. anecdotal by melchoir55 · · Score: 2

    I worked in a machine learning shop for 2 years (doing machine learning...). In my experience, which is entirely anecdotal and limited, machine learning shops resembled academia more closely than industry. By that I mean:

    1) They valued credentials that most software shops find almost meaningless (PhD level credentials, Masters at least)
    2) The ones I encountered were extremely clique-y. They didn't associate with non-machine learning people.
    3) There was an insane amount of dead weight (people doing lots of work but accomplishing nothing) and a general disinterest in practical application. The cliche of "herding cats" was extremely relevant here.

    I got away from machine learning and more general AI as quickly as I could because I didn't like the culture. It reminded me too much of academia.

    1. Re:anecdotal by Anonymous Coward · · Score: 0

      This comment is spot on. We have a few "machine-learning" focused professors at our university. They pretty much ignore every complaint about it from students, and other departments. Apparently if you just add more layers, and remember that it's highly sensitive to initialization parameters everything will be OK. Translation -> if it doesn't work, do it again... and again...and again!... hopefully after "training" it over and over it will magically find a solution.

    2. Re:anecdotal by Anonymous Coward · · Score: 0

      Machine learning is taking shots in the dark almost by definition. When the alternative is giving up entirely: machine learning starts looking very attractive.

      Some shots in the dark land right on target, and others are false alarms. It's very difficult to know the boundaries of a solution until it breaks. Good validation data is helpful but you never really know when it's going to confuse a black woman for a gorilla.

      That's not that different from human cognition though: I once saw a bag of garbage and thought it was a homeless person until I had an opportunity to examine it more closely.

    3. Re:anecdotal by Anonymous Coward · · Score: 0

      That's surprising, as most shops do need to pay their bills. Didn't they do any machine vision and control jobs for the industry?

  40. Ignore the hype, study the fundamentals by Anonymous Coward · · Score: 0

    Study statistics, actuarial science stuff, network theory, control theory, circuit theory, and numerical optimization classes.

    After that you'll be able to see most books on machine learning are just full of hype. Then you can focus on writing algorithms for problems in the real world.

  41. How I came to work in ML by jmcbain · · Score: 2
    I was in the same position as OP about 5 years ago. I have a PhD in CS from many years back but in operating systems and programming languages. Around 2010 I wanted to get into machine learning and decided to enroll part-time in a university to take some classes. Currently, I am leading a small team of engineers that work on ML-related topics.

    Here are some points that the OP needs to understand.

    1. There are two different levels of expertise with working on machine learning: either as a library/tool user, or as a ML algorithm developer. It is EXACTLY analogous to how one approaches SQL: You can make a great living being a SQL user and knowing how to write efficient queries and build indexes, or you can go deeper and build the SQL engine itself along with its query optimizer, storage layer, etc. If you want to use ML as a library/tool user, you can have a great career as long as you know what tools and algorithms to use. If you want to be a ML algorithm developer, that means you want to work on the innards, such as using new SVM kernels or building new deep learning networks; for this role, you'll usually need a PhD-calibre background heavy in math. I personally started out as a library/tool user with Weka and Mallet, but as I used them more, I was able to understand the math behind them.

    2. ML is an abstract field, and it's best to approach it from an applications point of view. Pick a problem that needs ML, such as natural language processing or image recognition. It's important to pick a problem that has an abundant amount of labelled data. There are some fields such as voice recognition where it is terribly difficult to get real labelled data. For NLP (aka computational linguistics), you can start with some basic problems such as document classification (e.g. for this document, is it about sports, business, entertainment, etc.?) or sentiment analytics (e.g. for this Twitter tweet, is it positive or negative?). There are lots of good datasets in the NLP field.

    3. You can explore datasets from the Kaggle competitions and the University of California, Irvine, repository: http://archive.ics.uci.edu/ml/

    4. Pick a tool and stick with it. I have used Weka, Mallet, and R. You can also use Python and Matlab.

    5. When you read the literature, you will find two nearly-synonymous terms: "machine learning" and "data mining". Both are closely related. Machine learning historically comes from the AI community and generally focuses on building better ML algorithms and solving supervised ML problems. Data mining historically comes from the database community and generally focuses on using tools and solving unsupervised ML problems (e.g. finding clusters of similar customers).

    6. At the end of the day, creating a better solution does not come down to the ML algorithms themselves. Rather, the better solution comes from the amount of data and what features you are able to extract. As for the many ML algorithms for supervised learning: at the end of the day, your main responsibility will come down to picking the one that best suits your application. It is just like picking which sorting algorithm to use: when do you use Quicksort, and when do you use Mergesort?

    7. Here are some really good books that I have personally read:

    Beginner level:
    - Programming Collective Intelligence by T. Segaran.
    - Introduction to Data Mining by P.-N. Tan and M. Steinbach.

    Intermediate level:
    - Data Mining: Practical Machine Learning Tools by I. Witten and E. Frank. (goes with the Weka tool)

    Advanced level:
    - Artificial intelligence: A Modern Approach by S. Russell and P. Norvig. (touches on all aspects of AI, such as tic-tac-toe algorithms with minimax and First Order Logic)
    - Introduction to Machine Learning by E. Alpaydin

    PROTIP: How to tell if you're reading an advanced machine learning book -- if the index contains reference to Vapnik–Chervonenkis dimension or shattering, then the book is hardcore.

    1. Re:How I came to work in ML by Anonymous Coward · · Score: 0

      Well VC dimension concept is not really hardcore unless you are a really math challenged engineer who did his CS from a third rate university. In most good universities, Alpaydin's book is not considered advanced but as a basic intro book for a first course in ML.

    2. Re:How I came to work in ML by jmcbain · · Score: 1

      If you had the reading comprehension skills and common sense of a high school student, you would understand that the OP is a working engineer, not a grad student. But since you seem to be a mathematician or something of that ilk, you can be partially forgiven.

  42. Write a US AI history book by AHuxley · · Score: 1

    Look back at what the US gov/mil was doing in the 1960's, 1970's with advanced digital databases and what it expected from big data sets and emerging AI funding.
    1980's 1990's with grants, funding, emerging private sector, academia. The onto the huge early data sets with internet search results been offered for sale.
    Follow the data, cash, science and projects. What was done, was expected, never worked, was never mentioned much in public again but got a lot of funding...
    Back over the decades that end up with papers like "The Role of Autonomy in DOD Systems" (2012). The funding to change the publics mind on robot, AI "ethics" so a nation can start winning hearts & minds to accept the role of AI controlled weapons systems.
    Follow the grants and consider a look back over US mil AI research.
    Day job is safe, few journalist or historians have the math or science to read deep into advanced papers without an expert "guide" who will then keep the subject away from risking their own gov/mil clearances.
    So a well educated, articulate book bringing together the past and future visions and uses of AI might be a project that fits in with a daily workload. When done, use social media, web 2.0, newspapers, get onto as much US talk radio as you can and get as many interviews in as you can.
    Use your understanding of grants, past work to create a vision of US AI research thats interesting to read about.

    --
    Domestic spying is now "Benign Information Gathering"
  43. OP Here - Thanks for all the input. by Anonymous Coward · · Score: 0

    Thanks to all those that took the time for thoughtful answers. This will be a big help.

    I even got a kick out of the attacks on my intelligence/technical skills/education/lifestyle choices/fiscal responsibility.

  44. machine learning is dumb and useless by Anonymous Coward · · Score: 0

    don't bother

  45. Learn R by Anonymous Coward · · Score: 0

    The days of expensive commercial packages aren't over but they are limited. As a new talent your best bet is to learn R and go into neural networking etc. packages as needed.

  46. Step by Step Homework by Anonymous Coward · · Score: 0

    I've read 100's of pages on Neural Networks/Deep Learning/Caffe/CNN

    Read this to get a first exposure to modern vocabulary:
    https://en.wikipedia.org/wiki/Convolutional_neural_network

    Now Read this:
    http://www.dspguide.com/ch26.htm
    Then this:
    http://www.nervanasys.com/demystifying-deep-reinforcement-learning/
    Then this:
    http://karpathy.github.io/neuralnets/

    Now read this again and it will make more sense:
    https://en.wikipedia.org/wiki/Convolutional_neural_network

    Now study:
    http://openclassroom.stanford.edu/MainFolder/CoursePage.php?course=MachineLearning
    http://cs231n.stanford.edu/syllabus.html
    https://www.coursera.org/learn/machine-learning

    Now practice:
    cs.stanford.edu/people/karpathy/convnetjs/
    http://jsfiddle.net/cor5tjau/
    http://synaptic.juancazala.com/

    Using this data:
    https://www.kaggle.com/
    http://archive.ics.uci.edu/ml/index.html
    http://deeplearning.net/datasets/
    http://ccvl.stat.ucla.edu/datasets/

  47. Thanks by Anonymous Coward · · Score: 0

    While not the OP and doing some AI/ML programming, I thnk very much the posters that posted links to material. Some I had previously bookmarked, others were new.

  48. Re:15 years experience? by Pseudonym · · Score: 1

    It doesn't help that picking up 'machine learning' isn't exactly on the same scale as picking up the trendy framework or language of the day.

    Indeed. Machine learning is the trendy term of the whole decade.

    Here's your handy guide to the field:

    • 1950s - electronic brains
    • 1960s - perceptrons
    • 1970s - neural networks
    • 1980s - knowledge-based systems (or if you're Japanese, 5GLs)
    • 1990s - expert systems
    • 2000s - intelligent agents
    • 2010s - machine learning
    --
    sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  49. Microsoft offers a quick taste of ML for free by Invisible+Now · · Score: 1

    Microsoft has a browser Ml app GUI that is useful and slick. Makes it easy to try many different approaches and get a feel for munging your own data quickly. Find a free trial as part of azure and or Cortana analyics

    --

    "Knowing everything doesn't help..."

  50. MOOCs by Anonymous Coward · · Score: 0

    There are quite a few MOOCs that address machine learning out there ... Coursera, EdX, MIT, etc. A lot of them offer an additional certificate if you want to pay for it.

  51. Weka Mooc by rgbe · · Score: 1

    About a year ago I completed the Weka Mooc (https://weka.waikato.ac.nz/explorer). Weka is an opensource machine learning / data mining tool that has many different machine learning tools and algorithms.

    The mooc part is the course. It was free at the time I did it, but I don't know if it still is. The mooc is run by an experienced machine learning professor. Weka is also maintained and developed in the same department as his.

    I highly recommend this course, it was informative, gave me a grasp of machine learning, as well as experience of a popular tool (weka). I was also able to complete it in my own time while working full time and having a family.

  52. Here's how by ebvwfbw · · Score: 1

    Take your hand and hit it with a hammer. Still here? Ok. You passed the first test. Next test is hit your head with that hammer.

    Machine is very unforgiving. Those that are good at it are close to being artists. They're also very cleaver. The reason for my first comments is because it'll beat you. Everything has to be exactly right or you get nothing.

    My advice is to start with something small. A 6502, if they're still around. An IBM AT class machine is wonderful. Start with a keyboard driver. You can replace the bios code that handles the keyboard. If you can do that to the point it's usable, you have really passed the first test. Hint - don't do a bunch of if statements for the keycodes. That claims around 70% of the people doing this. You have one week to do this. Your big mistake is to wait a minute to start the assignment.

    Next write a disk operating system driver. Any OS will do, however I think you'll find a Linux based OS will be the easiest. I'd use Fedora. You can try something like Debian and after you beat your head for a while, come back to Fedora. Then insert your module and see if it works. Test well with it. Once you think it's solid, install a machine that uses it. Make it your log server or something like that. If you can do this, you probably have what it takes. Understand I'm skipping over a few volumes worth of information. Like how to move your code so the keyboard driver uses it. How to do assember, how to use C, how to bind all this stuff. Moving onto Linux - how to deal with building an OS - as distributed (Why I say use Fedora, it's all there and easy to do). How to deal with spin locks, what are spin locks, and all the other stuff including how to use magic keys. Magic keys will save your butt when debugging kernel code. How to use gdb. This all goes back to my comment on hit your hand with a hammer, hit your head with a hammer. This is very difficult. Perhaps the most difficult part of computer science. If you don't have the drive and dedication to do this, take up something else.

    By the way, the brotherhood of machine language pros can be ruthless. It's not for the faint of heart. You have to have a very tough ass, or they'll make it bloody. Words really can hurt. They get personal sometimes, don't take it personally. Don't get upset if you work on something for years, get it working really well and they decide to throw it away. It's happened to me, multiple times. Nothing to do with the code, it was a business decision in one case and the guy running the project decided to whack his wife and lover in the other case and got caught. Did I mention this could be tough?

    If you have the right stuff, proceed. Glad to have you.