changing the way the file is loaded
This commit is contained in:
parent
3268e9fada
commit
e4c07e1835
|
|
@ -2,6 +2,7 @@
|
||||||
Utility functions for `Bayesian quantification <https://arxiv.org/abs/2302.09159>`_ methods.
|
Utility functions for `Bayesian quantification <https://arxiv.org/abs/2302.09159>`_ methods.
|
||||||
"""
|
"""
|
||||||
import numpy as np
|
import numpy as np
|
||||||
|
import importlib.resources
|
||||||
|
|
||||||
try:
|
try:
|
||||||
import jax
|
import jax
|
||||||
|
|
@ -82,6 +83,9 @@ def sample_posterior(
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def load_stan_file():
|
||||||
|
return importlib.resources.files('quapy.method').joinpath('stan/pq.stan').read_text(encoding='utf-8')
|
||||||
|
|
||||||
def pq_stan(stan_code, n_bins, pos_hist, neg_hist, test_hist, number_of_samples, num_warmup, stan_seed):
|
def pq_stan(stan_code, n_bins, pos_hist, neg_hist, test_hist, number_of_samples, num_warmup, stan_seed):
|
||||||
"""
|
"""
|
||||||
Perform Bayesian prevalence estimation using a Stan model for probabilistic quantification.
|
Perform Bayesian prevalence estimation using a Stan model for probabilistic quantification.
|
||||||
|
|
|
||||||
|
|
@ -624,8 +624,7 @@ class PQ(AggregativeSoftQuantifier, BinaryAggregativeQuantifier):
|
||||||
self.num_samples = num_samples
|
self.num_samples = num_samples
|
||||||
self.region = region
|
self.region = region
|
||||||
self.stan_seed = stan_seed
|
self.stan_seed = stan_seed
|
||||||
with open('quapy/method/stan/pq.stan', 'r') as f:
|
self.stan_code = _bayesian.load_stan_file()
|
||||||
self.stan_code = str(f.read())
|
|
||||||
|
|
||||||
def aggregation_fit(self, classif_predictions, labels):
|
def aggregation_fit(self, classif_predictions, labels):
|
||||||
y_pred = classif_predictions[:, self.pos_label]
|
y_pred = classif_predictions[:, self.pos_label]
|
||||||
|
|
|
||||||
2
setup.py
2
setup.py
|
|
@ -124,7 +124,7 @@ setup(
|
||||||
# Similar to `install_requires` above, these must be valid existing
|
# Similar to `install_requires` above, these must be valid existing
|
||||||
# projects.
|
# projects.
|
||||||
extras_require={ # Optional
|
extras_require={ # Optional
|
||||||
'bayes': ['jax', 'jaxlib', 'numpyro'],
|
'bayes': ['jax', 'jaxlib', 'numpyro', 'pystan'],
|
||||||
'neural': ['torch'],
|
'neural': ['torch'],
|
||||||
'tests': ['certifi'],
|
'tests': ['certifi'],
|
||||||
'docs' : ['sphinx-rtd-theme', 'myst-parser'],
|
'docs' : ['sphinx-rtd-theme', 'myst-parser'],
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue