Machine learning is a method of programming a computer in which, instead of a human programmer explicitly encoding the desired behavior, the computer learns the proper instructions to optimize the desired behavior based on past observations recorded in the data that it sees.
Machine learning allows novice user to essentially program computers using data. This means that, given some data containing examples of how one wants the computer to behave, one can "teach" the computer to behave that way using the data.