11 Replies - 1876 Views - Last Post: 17 December 2017 - 02:36 PM

#1 whitaker144  Icon User is offline

  • D.I.C Head

Reputation: 4
  • View blog
  • Posts: 56
  • Joined: 20-September 13

Does Machine Learning software retain its learning?

Posted 14 December 2017 - 10:02 PM

Admittedly I'm nowhere near close to being able to produce software that is capable of learning, but I enjoy reading and attempting to understand how it works on a high-level.

Something I don't understand is whether or not a machine retains its learning e.g if the software was restarted. I've read you can train a neural network using training data, validation data, etc. Then once it's sufficiently 'calibrated' it's ready for actual data. Do neural networks generally have a way of also validating the actual data (i.e user feedback?). If so, if the program were stopped and started does it retain and re-calibrate things like the weights accordingly? Or does it need to re-learn from the initial training data and start anew?

I make a lot of assumptions in these questions and I realize a lot of it could be wrong, so any insight or comments are appreciated.

Is This A Good Question/Topic? 2
  • +

Replies To: Does Machine Learning software retain its learning?

#2 macosxnerd101  Icon User is online

  • Games, Graphs, and Auctions
  • member icon




Reputation: 12276
  • View blog
  • Posts: 45,364
  • Joined: 27-December 08

Re: Does Machine Learning software retain its learning?

Posted 14 December 2017 - 10:08 PM

It would depend on whether the calibrations were saved and reloaded. This is more to do with the implementation than the machine learning techniques themselves.
Was This Post Helpful? 4
  • +
  • -

#3 whitaker144  Icon User is offline

  • D.I.C Head

Reputation: 4
  • View blog
  • Posts: 56
  • Joined: 20-September 13

Re: Does Machine Learning software retain its learning?

Posted 14 December 2017 - 10:15 PM

Thanks for the reply. So do you think both are viable options depending on what sort of input needs to be processed? For example an instance where you're running small batches of data through as oneoffs versus an instance where it's long-lived and is required to run for long periods of time. (An example of the latter I can think of is something like Youtube's learning algorithms?)
Was This Post Helpful? 0
  • +
  • -

#4 jon.kiparsky  Icon User is offline

  • Beginner
  • member icon


Reputation: 11022
  • View blog
  • Posts: 18,804
  • Joined: 19-March 11

Re: Does Machine Learning software retain its learning?

Posted 14 December 2017 - 11:40 PM

Bear in mind that the machine doesn't learn anything at all. The only learning that happens is when the user learns useful things from the machine's output. The machine's "learning" is a data state, which like any data state can be saved, reloaded, transformed, folded, spindled, and mutilated however you like.

Quote

Do neural networks generally have a way of also validating the actual data (i.e user feedback?)


If you mean validation in the normal sense, that sounds to me like testing the trained network against a previously unseen test set and comparing the output to the known correct results. If the results are out of tolerance range, you'd scrap the trained network and start over.
If you mean correcting the network's settings by providing new input/output pairs in some way, this is a reasonable thing to expect an implementation to do since it's really just the same process as the original training.
Was This Post Helpful? 2
  • +
  • -

#5 whitaker144  Icon User is offline

  • D.I.C Head

Reputation: 4
  • View blog
  • Posts: 56
  • Joined: 20-September 13

Re: Does Machine Learning software retain its learning?

Posted 15 December 2017 - 07:11 AM

Thanks Jon & macosx. That answers what I was wondering. Cheers!
Was This Post Helpful? 0
  • +
  • -

#6 Skydiver  Icon User is offline

  • Code herder
  • member icon

Reputation: 6112
  • View blog
  • Posts: 21,040
  • Joined: 05-May 12

Re: Does Machine Learning software retain its learning?

Posted 15 December 2017 - 11:17 AM

<grin>Of course. How was Skynet supposed to become self-aware if it was running on Windows and had to be rebooted every few days?</grin>

Seriously, though, +1 for the following:

Quote

Admittedly I'm nowhere near close to being able to produce software that is capable of learning, but I enjoy reading and attempting to understand how it works on a high-level.

Intellectual curiousity is always a good thing and should be encouraged (even if it displeases our robot overlords.)

As noted above, somebody has to choose in their implementation how the program state is meant to be saved (or not saved).
Was This Post Helpful? 2
  • +
  • -

#7 whitaker144  Icon User is offline

  • D.I.C Head

Reputation: 4
  • View blog
  • Posts: 56
  • Joined: 20-September 13

Re: Does Machine Learning software retain its learning?

Posted 15 December 2017 - 02:18 PM

Cheers! Sometimes I wonder if I'm in over my head a bit and trying to understand something that contains too many topics I don't understand well enough. Machine Learning seems like a huge topic though, so I figured I'd dive in and try and understand what I can even if it's high level. Super interesting stuff, even if doomsday is coming as a result :P
Was This Post Helpful? 0
  • +
  • -

#8 jon.kiparsky  Icon User is offline

  • Beginner
  • member icon


Reputation: 11022
  • View blog
  • Posts: 18,804
  • Joined: 19-March 11

Re: Does Machine Learning software retain its learning?

Posted 15 December 2017 - 02:23 PM

Nah. Doomsday is coming because we're too stupid to deal with global warming. Enjoy the next 20 years, after that it's pretty much going to be shit, but not because of machine learning.

As far as ML goes, from what I've looked at the really important choice is whether you're going to care about the math or whether you're going to trust tools that people build for you. Seems to me that caring about the math is the right approach.
Was This Post Helpful? 4
  • +
  • -

#9 whitaker144  Icon User is offline

  • D.I.C Head

Reputation: 4
  • View blog
  • Posts: 56
  • Joined: 20-September 13

Re: Does Machine Learning software retain its learning?

Posted 15 December 2017 - 02:45 PM

Agreed. Living in Canada I can attest to the fact that winters get warmer and warmer each year (I'm still freezing my butt off though)

In university I was lucky enough to take a numerical computing course which was quite math oriented (using C++). Implementing Maclaurin and Taylor series approximations, data/statistical analysis etc. I really enjoyed it and it gave me a new (positive) perspective on math and what you can use it for. Right now I'm in the process of brushing up on linear algebra among other things. Once I have a good base in that I'll expand a little bit until I'm confident I can understand code examples and eventually write something of my own.
Was This Post Helpful? 1
  • +
  • -

#10 Skydiver  Icon User is offline

  • Code herder
  • member icon

Reputation: 6112
  • View blog
  • Posts: 21,040
  • Joined: 05-May 12

Re: Does Machine Learning software retain its learning?

Posted 15 December 2017 - 03:19 PM

I didn't enjoy math until I took certificate course for game programming. Then all the differentiation, integrals, differential equations, and matrices fully flowered beyond simply being used for the sake of getting a passing grade.
Was This Post Helpful? 1
  • +
  • -

#11 whitaker144  Icon User is offline

  • D.I.C Head

Reputation: 4
  • View blog
  • Posts: 56
  • Joined: 20-September 13

Re: Does Machine Learning software retain its learning?

Posted 15 December 2017 - 03:40 PM

Yep it was the same for me with that course. A complete 180 from "Why am I learning this?" to "Why am I not learning more of this"
Was This Post Helpful? 1
  • +
  • -

#12 GazinAtCode  Icon User is offline

  • D.I.C Head

Reputation: 33
  • View blog
  • Posts: 121
  • Joined: 26-September 16

Re: Does Machine Learning software retain its learning?

Posted 17 December 2017 - 02:36 PM

In order to use a neural network without having to train it again, one has to save:

  • its structure (topology),
  • all of the weights (synapses).

Doing that will also let the network resume training where it left off last time.

In the case of neural networks, you basically have to deal with lots of 2-D and sometimes 3-D arrays, stuff like matrix multiplication, transposition, activation functions and their derivatives, etc.

Machine learning can be fun, and I would highly recommend that anyone thinking seriously about it try to write some kind of algorithm from scratch for a better understanding of how it works.

This post has been edited by GazinAtCode: 17 December 2017 - 02:37 PM

Was This Post Helpful? 1
  • +
  • -

Page 1 of 1