수업소개
얼마나 학습이 되었는가를 파악할 수 있는 시각적인 방법이 있습니다. tfjs-vis 를 이용해서 학습상황을 시각적으로 확인해보세요.
강의
11.html
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 | <!DOCTYPE html> < html > < head > < title >TensorFlow.js Tutorial - boston housing </ title > <!-- Import TensorFlow.js --> < script src = "10.3.js" ></ script > </ head > < body > < script > /* var 보스톤_원인 = [ [0.00632,18,2.31,0,0.538,6.575,65.2,4.09,1,296,15.3,396.9,4.98], [0.02731,0,7.07,0,0.469,6.421,78.9,4.9671,2,242,17.8,396.9,9.14] ]; var 보스톤_결과 = [ [24], [21.6] ]; */ // 1. 과거의 데이터를 준비합니다. var 원인 = tf.tensor(보스톤_원인); var 결과 = tf.tensor(보스톤_결과); // 2. 모델의 모양을 만듭니다. var X = tf.input({ shape: [13] }); var Y = tf.layers.dense({ units: 1 }).apply(X); var model = tf.model({ inputs: X, outputs: Y }); var compileParam = { optimizer: tf.train.adam(), loss: tf.losses.meanSquaredError } model.compile(compileParam); tfvis.show.modelSummary({name:'요약', tab:'모델'}, model); // 3. 데이터로 모델을 학습시킵니다. // var fitParam = {epochs: 100} var _history = []; var fitParam = { epochs: 100, callbacks:{ onEpochEnd: function(epoch, logs){ console.log('epoch', epoch, logs, 'RMSE=>', Math.sqrt(logs.loss)); _history.push(logs); tfvis.show.history({name:'loss', tab:'역사'}, _history, ['loss']); } } } // loss 추가 예제 model.fit(원인, 결과, fitParam).then(function (result) { // 4. 모델을 이용합니다. // 4.1 기존의 데이터를 이용 var 예측한결과 = model.predict(원인); 예측한결과.print(); }); // 4.2 새로운 데이터를 이용 // var 다음주온도 = [15,16,17,18,19] // var 다음주원인 = tf.tensor(다음주온도); // var 다음주결과 = model.predict(다음주원인); // 다음주결과.print(); </ script > </ body > </ html > |