In [1]:
import numpy as np
import models as ml
In [2]:
feature_size = 2
class_cnt = 3
sample_cnt = 4
In [3]:
x = np.random.randn(sample_cnt*feature_size).reshape((sample_cnt, feature_size))
y = np.array([1 if r>0.5 else 0 for r in np.random.randn(sample_cnt*class_cnt)]).reshape((sample_cnt, class_cnt))
w = np.random.randn(feature_size*class_cnt).reshape((feature_size, class_cnt))
b = np.random.randn(class_cnt).reshape((1, class_cnt))
In [4]:
x
Out[4]:
In [5]:
y
Out[5]:
In [6]:
w
Out[6]:
In [7]:
b
Out[7]:
In [8]:
w, b = ml.create_parameters(2, 3)
for epoch in range(0, 10):
h = ml.softmax_regression_model(x, w, b)
dw, db = ml.crossentropy_cost_dev(x, y, h)
w, b = ml.gd_update(w, b, dw, db, lr=0.01)
cost = ml.crossentropy_cost(h, y)
print("epoch {0}, cost {1}".format(epoch, cost))
In [ ]: