-
Notifications
You must be signed in to change notification settings - Fork 17
Pull request for issues #123 #121 #64 #135
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
| add_subdirectory(blifat) | ||
| add_subdirectory(altai) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Что-то здесь не то. У сеток различаются нейроны, однако топология почти дублируется.
Зачем столько копипаста?
| add_executable(mnist_learn_altai_example main.cpp construct_network.cpp train.cpp inference.cpp time_string.cpp) | ||
| target_link_libraries(mnist_learn_altai_example PRIVATE KNP::BaseFramework::Core ${Boost_LIBRARIES}) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Вероятно, надо сделать один пример, в котором опциями будет выбираться сеть.
Для построения лучше использовать шаблонные функции.
И передавать им тип нейрона.
|
|
||
| enum PopIndexes | ||
| { | ||
| L, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Комментарий, что ещё за "L" (а лучше поменять название)?
| l_neuron.d_h_ = -0.1765261f * 1000; | ||
|
|
||
| // stability_resource_change_ratio | ||
| l_neuron.stability_change_parameter_ = 0.0497573 / 1000; | ||
|
|
||
| // silent synapses | ||
| l_neuron.resource_drain_coefficient_ = 27; | ||
|
|
||
| // chartime * hebbian_plasticity_chartime_ratio | ||
| // l_neuron.dopamine_plasticity_time_ = 3 * 2.72f; | ||
|
|
||
| // threshold_excess_weight_dependent | ||
| l_neuron.synapse_sum_threshold_coefficient_ = 0.217654; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Немного бы рассказать о том, что это за магические числа, откуда взялись, почему такие, - это пример для пользователя.
| struct PopulationRole | ||
| { | ||
| PopulationData<ResourceNeuron> pd_; | ||
| bool for_inference_; | ||
| bool output_; | ||
| std::string name_; | ||
| }; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Не стоит ли отметить это для фреймворка?
|
|
||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
-пустая строка.
| #include <vector> | ||
|
|
||
| #include "impl/populations/interface.h" | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+пустая строка.
| future_messages.erase(out_iter); | ||
| } | ||
| } | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+пустая строка.
| impl::calculate_projection_multithreaded_interface( | ||
| projection, message_in_data, future_messages, step_n, part_start, part_size, mutex); | ||
| } | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
-пустая строка.
| auto call_calculate_post_input_state = [](T &pop_ref, | ||
| knp::core::messaging::SpikeMessage &message_ref, | ||
| size_t start, size_t end, std::mutex &mutex_ref) | ||
| { | ||
| uint64_t part_end = std::min<uint64_t>(start + end, pop_ref.size()); | ||
| knp::core::messaging::SpikeMessage buffer_message; | ||
| knp::backends::cpu::populations::calculate_post_impact_population_state( | ||
| pop_ref, buffer_message, start, part_end); | ||
| const std::lock_guard lock(mutex_ref); | ||
| message_ref.neuron_indexes_.reserve( | ||
| message_ref.neuron_indexes_.size() + buffer_message.neuron_indexes_.size()); | ||
| message_ref.neuron_indexes_.insert( | ||
| message_ref.neuron_indexes_.end(), buffer_message.neuron_indexes_.begin(), | ||
| buffer_message.neuron_indexes_.end()); | ||
| }; | ||
| calc_pool_->post( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Тут явно что-то поехало.
artiomn
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Надо разбить на три.
No description provided.