var data_set = [ [0,1], [1,3], [2,5], [3,7], [4,9] ]; var w = -10054; var b = 1; var lr = 0.1; function step(point){ console.log(w); let dy = point[1]; let y = w*point[0]+b; let err = dy-y; w += lr*(dy-y); //!! THE ADJUSTMENT WHICH MAKES w CONVERGE TO CORRECT VAL }; console.clear(); for(var i = 0; i < 20; i++) for(var j = 0; j < data_set.length; j++) step(data_set[j]); console.log(w); console.log(w*3+b)