Esempio n. 1
0
 def node_imp(self):
     self._node1 = [None] + [
         nodes.mul_node() for _ in range(self._feature_dim)
     ]
     self._node2 = [None] + [
         nodes.plus_node() for _ in range(self._feature_dim)
     ]
import basic_nodes as nodes
from dataset_generator import dataset_generator

plt.style.use('seaborn')
np.random.seed(0)


dataset_gen = dataset_generator()

dataset_gen.set_coefficient([5,2])
x_data, y_data = dataset_gen.make_dataset()
data = np.hstack((x_data, y_data))


# model implementation
node1 = nodes.mul_node()
node2 = nodes.plus_node()

# square loss/MSE cost implementation
node3 = nodes.minus_node()
node4 = nodes.square_node()

th1, th0 = 1,0
lr = 0.01
epochs = 2

th1_list, th0_list = [], []
loss_list = []

for epoch in range(epochs):
    for data_idx, (x,y) in enumerate(data):
Esempio n. 3
0
##### Dataset Preparation
dataset_gen = dataset_generator(feature_dim = 2, n_sample = 100)
dataset_gen.set_coefficient([3,3,3])
distribution_params = {'feature_0': {'mean':0,'std':1}, 'feature_1': {'mean':0,'std':1}}

dataset_gen.set_distribution_params(distribution_params)
data = dataset_gen.make_dataset()

x_data, y_data = data[:,:-1], data[:,-1].reshape(-1,1)

data = np.hstack((x_data, y_data))

##### Model/Loss Implementation
# Model
node1_1 = nodes.mul_node()
node1_2 = nodes.mul_node()
node2_1 = nodes.plus_node()
node2_2 = nodes.plus_node()

# Loss
node3 = nodes.minus_node()
node4 = nodes.square_node()

th2, th1, th0 = 0.5, 0.5, 0.5
epochs, lr = 3, 0.005
th_accum = np.array([th2, th1, th0]).reshape(-1,1)
loss_list = []

for epoch in range(epochs):
    for data_idx, (x2, x1, y) in enumerate(data):
Esempio n. 4
0
        'std': 1
    },
}
##### End Your Code(Dataset Setting) #####

##### Start Your Code(Dataset Generation) #####
data_gen = LR_dataset_generator(feature_dim=3)
data_gen.set_coefficient(coefficient_list)
data_gen.set_distribution_params(distribution_params)
x_data, y_data = data_gen.make_dataset()
dataset = np.hstack((x_data, y_data))
##### End Your Code(Dataset Generation) #####

#%%
feature_dim = 3
node1 = [None] + [nodes.mul_node() for _ in range(feature_dim)]
node2 = [None] + [nodes.plus_node() for _ in range(feature_dim)]
node3 = nodes.minus_node()
node4 = nodes.square_node()
node5 = nodes.mean_node()

#%%
th3, th2, th1, th0 = 0.1, 0.1, 0.1, 0.1
batch_size = 8
batch_idx = 0
n_batch = int(np.ceil(dataset.shape[0] / batch_size))

batch = get_data_batch(dataset, batch_idx, batch_size, n_batch)
print("batch.shape : ", batch.shape)
X, Y = batch[:, :-1], batch[:, -1]
print("X.shape : ", X.shape)
 def model_imp(self):
     self.node1 = nodes.mul_node()
     self.node2 = nodes.plus_node()
Esempio n. 6
0
 def node_imp(self):
     self._node1 = nodes.mul_node()
     self._node2 = nodes.plus_node()