1c758ba9d6c14d9b9d3599e44c3508e2692d8d35,pyprob/distributions/empirical.py,Empirical,expectation,#Empirical#Any#,84
Before Change
return util.fast_np_random_choice(self.values, self._weights_numpy_cumsum)
def expectation(self, func):
if self.length == 0:
raise RuntimeError("Empirical distribution instance is empty.")
if self._uniform_weights:
return util.to_tensor(sum(map(func, self.values)) / self.length)
else:
ret = 0.
for i in range(self.length):
ret += util.to_tensor(func(self.values[i]), dtype=torch.float64) * self.weights[i]
After Change
return self._get_value(index)
def expectation(self, func):
self._check_finalized()
ret = 0.
if self._on_disk:
for i in range(self._length):
ret += util.to_tensor(func(self._shelf[str(i)]), dtype=torch.float64) * self._categorical.probs[i].double()
In pattern: SUPERPATTERN
Frequency: 3
Non-data size: 5
Instances Project Name: pyprob/pyprob
Commit Name: 1c758ba9d6c14d9b9d3599e44c3508e2692d8d35
Time: 2018-09-28
Author: atilimgunes.baydin@gmail.com
File Name: pyprob/distributions/empirical.py
Class Name: Empirical
Method Name: expectation
Project Name: pyprob/pyprob
Commit Name: 1c758ba9d6c14d9b9d3599e44c3508e2692d8d35
Time: 2018-09-28
Author: atilimgunes.baydin@gmail.com
File Name: pyprob/distributions/empirical.py
Class Name: Empirical
Method Name: sample
Project Name: pyprob/pyprob
Commit Name: 1c758ba9d6c14d9b9d3599e44c3508e2692d8d35
Time: 2018-09-28
Author: atilimgunes.baydin@gmail.com
File Name: pyprob/distributions/empirical.py
Class Name: Empirical
Method Name: map