2014-01-09 2 views
0

Надеюсь, кто-то может просветить меня без меня, чтобы опубликовать много путаного кода.Двигатели IPython, возвращающие разные результаты

Я использую IPython.параллельно процессам нейронных сетей. В попытке найти ошибку я решил отправить одну и ту же сеть каждому клиенту с теми же входными данными. Я ожидаю, что каждый клиент вернет тот же ответ, который в большинстве случаев он делает. Однако иногда я получаю совершенно разные результаты от каждого клиента.

вот только образец запуска кода 5 раз. Каждый раз, когда выполняется код, создается новая сеть, поэтому я ожидаю другого решения между прогонами, однако каждый запуск я отправляю одну и ту же сеть каждому клиенту ...

Я использую apply_async для отправки процесс для разных клиентов (все из которых находятся на одном локальном компьютере.)

В процессе обработки не генерируются случайные числа, и единственными математическими функциями, которые я использую, являются встроенные pow() и numpy.tanh().

любые идеи о наилучшем способе отслеживания происходящего?

%> ./ld_cluster.py 
Available workers: 5 
importing sys on engine(s) 
0) b0ca598b-8cc8-4de7-8e6e-f62c1e6eba58 :: 2.020202 
0) b0ca598b-8cc8-4de7-8e6e-f62c1e6eba58 :: 2.020202 
0) b0ca598b-8cc8-4de7-8e6e-f62c1e6eba58 :: 2.020202 
0) b0ca598b-8cc8-4de7-8e6e-f62c1e6eba58 :: 2.020202 
0) b0ca598b-8cc8-4de7-8e6e-f62c1e6eba58 :: 2.020202 
%> ./ld_cluster.py 
Available workers: 5 
importing sys on engine(s) 
0) ff0ac798-3eb9-43cd-940a-6bc77447a3b4 :: 1.846979 
0) ff0ac798-3eb9-43cd-940a-6bc77447a3b4 :: 1.846979 
0) ff0ac798-3eb9-43cd-940a-6bc77447a3b4 :: 1.846979 
0) ff0ac798-3eb9-43cd-940a-6bc77447a3b4 :: 1.846979 
0) ff0ac798-3eb9-43cd-940a-6bc77447a3b4 :: 1.846979 
%> ./ld_cluster.py 
Available workers: 5 
importing sys on engine(s) 
0) f679d9c3-9e00-4b32-84b7-72fcf9fb5da0 :: 2.021491 
0) f679d9c3-9e00-4b32-84b7-72fcf9fb5da0 :: 2.021491 
0) f679d9c3-9e00-4b32-84b7-72fcf9fb5da0 :: 2.021491 
0) f679d9c3-9e00-4b32-84b7-72fcf9fb5da0 :: 2.021491 
0) f679d9c3-9e00-4b32-84b7-72fcf9fb5da0 :: 2.021491 
%> ./ld_cluster.py 
Available workers: 5 
importing sys on engine(s) 
0) f28617ef-72e7-4de3-a0a7-a98057efaa2e :: 1.979795 
0) f28617ef-72e7-4de3-a0a7-a98057efaa2e :: 1.979795 
0) f28617ef-72e7-4de3-a0a7-a98057efaa2e :: 1.979795 
0) f28617ef-72e7-4de3-a0a7-a98057efaa2e :: 1.979795 
0) f28617ef-72e7-4de3-a0a7-a98057efaa2e :: 1.979795 
%> ./ld_cluster.py 
Available workers: 5 
importing sys on engine(s) 
0) dd635626-4881-4470-909f-6a2fbe73b06d :: 2.020196 
0) dd635626-4881-4470-909f-6a2fbe73b06d :: 1.991076 
0) dd635626-4881-4470-909f-6a2fbe73b06d :: 1.952310 
0) dd635626-4881-4470-909f-6a2fbe73b06d :: 1.887462 
0) dd635626-4881-4470-909f-6a2fbe73b06d :: 2.019929 
+0

Как о регистрации значения внутренних переменных, и сравнить их, когда результаты разные. – HYRY

+0

Возможно, что некоторые глобальные или статические переменные не получают повторной инициализации должным образом - перезапустите кластер, чтобы убедиться, что у вас одинаковые начальные условия. – Dietrich

+0

Рабочие всегда подавали точно такие же данные точно в одном порядке? Не знаете, что именно здесь делают ваши работники, но может быть, что заказ выполнения может быть проблемой? –

ответ

0

Мысль я должен показать ответ (если это так можно назвать) и здесь ...

Пожалуйста, см THIS THREAD.

Смежные вопросы