본문으로 바로가기

deep learning POC

category 🤖 ML in browser/🧱 TensorFlow.js 2021. 1. 8. 20:49

단순한 hidden layer 없이 단순한 모델은 아래처럼 작성한다.

y = w1 * x1 + w2 * x2 + b
// 모델의 모양을 만듭니다.
const X = tf.input({ shape: [13] }); // lf 객체. 인자가 12개이므로 shape가 13
const Y = tf.layers.dense({ units: 1 }).apply(X); // lf 객체. 도출하고자 하는 값이 1개이므로 units이 1
const bostenPredictModel = tf.model({ inputs: X, outputs: Y }); // e 객체
bostenPredictModel.compile({
  optimizer: tf.train.adam(),
  loss: tf.losses.meanSquaredError,
});

 

 

여기서 layer를 하나 더 추가하여 deep learning POC를 만들어보자.

// 모델의 모양을 만듭니다.
const X = tf.input({ shape: [13] }); // lf 객체. 인자가 12개이므로 shape가 13
const H1 = tf.layers.dense({ units: 8, activation: "relu" }).apply(X); // hidden layer 추가. 은닉층에 둘 node 갯수는 input layer < n < output layer
const H2 = tf.layers.dense({ units: 4, activation: "relu" }).apply(H1); // hidden layer 추가. 은닉층에 둘 node 갯수는 input layer < n < output layer
const Y = tf.layers.dense({ units: 1 }).apply(H2); // lf 객체. 도출하고자 하는 값이 1개이므로 units이 1
const bostenPredictModel = tf.model({ inputs: X, outputs: Y }); // e 객체
bostenPredictModel.compile({
  optimizer: tf.train.adam(),
  loss: tf.losses.meanSquaredError,
});

 

hidden layer에는 적절한 activation 함수(활성화 함수)를 적용해줍시다. If unspecified, no activation is applied.

export declare type ActivationIdentifier = 
  'elu' | 'hardSigmoid' | 'linear' | 'relu' | 'relu6' | 'selu' | 'sigmoid' | 'softmax' | 'softplus' | 'softsign' | 'tanh';

 

 


darren, dev blog
블로그 이미지 DarrenKwonDev 님의 블로그
VISITOR 오늘 / 전체