def _grad(self, pv0, pos_h, neg_v, neg_h):
        grad = {}
        num_points = pv0.shape[0]
        E_v = neg_v[1]
        E_h = neg_h[1]
        E_hgv = pos_h[1]
        E_vh = E_h.T.dot(E_v)
        E_vhgv = E_hgv.T.dot(pv0)
        grad['W'] = (E_vhgv - E_vh) / num_points
        grad['vbias'] = (pv0 - E_v).mean(0)
        grad['hbias'] = (E_hgv - E_h).mean(0)
        return grad
No polling needed for a demo garage door.
dataset/ETHPy150Open theusual/kaggle-seeclickfix-ensemble/Miroslaw/sparserbm.py/SparseRBM._grad--crossover with--dataset/ETHPy150Open home-assistant/home-assistant/homeassistant/components/garage_door/demo.py/DemoGarageDoor.should_poll