Я не могу использовать многоядерную обработку на моем Ma c с Pymc3. Я читал форумы на форумах разработчиков для PyMC3, но похоже, что проблема, с которой я сталкиваюсь, в основном связана с Windows.
По сути, приведенный ниже код просто зависает. Если я работаю на одном ядре, он работает нормально.
Он действительно работает на многоядерном процессоре, если я заключу приведенный ниже фрагмент в функцию, которая вызывает эту функцию после оператора if __name__ == '__main__'
Ниже код, который я использую в своей ячейке Jupyter
print('Running:',specialty_filter)
with pm.Model() as logistic_model:
pm.glm.GLM.from_formula(
"is_noshow ~ binnednoshows + priorthvisitcount + priorthvisitcount + priornoshowvisits + priornoshowvisits:priorthvisitcount + priorthvisitcount:priornoshowvisits:priorthvisitcount + age + C(same_day_yn) + C(is_telehealth_visit) + C(diane_elizabeth) + C(prc_name_binned)", # + priornoshowvisits + priorthvisitcount age
df_hist,
family=pm.glm.families.Binomial(),
)
trace = pm.sample(
10000,
tune=6400,
random_seed=951,
max_treedepth=16,
target_accept=0.98,
# chains=4,
# cores=4,
init="adapt_diag",
)