Psyneulink

Latest version: v0.15.1.0

Safety actively analyzes 629765 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 8 of 10

0.8.2.2

0.8.2.1

0.8.2.0

0.8.0.0

- Compilation
• Added support for the following scheduler conditions in Compiled mode: Not, WhenFinished, WhenFinishedAll, WhenFinishedAny, AfterNCalls, AtNCalls, BeforeNCalls
• Added support for the DDM is_finished condition

- Composition
• Added Mechanisms property that returns a MechanismList containing all mechanisms in a Composition
• Added pathways attribute that stores the set of all Pathway instances associated with a Composition
• Added feedback_projections property that lists Projections assigned as feedback
• Added pathways argument to class constructor, allowing user to specify Pathways to be added to the Composition during initialization
• Instances of new Pathway class can now be used to add nodes to a composition with the following methods: add_pathway, add_backpropagation_learning_pathway, add_linear_learning_pathway, add_linear_processing_pathway, add_reinforcement_learning_pathway, and add_td_learning_pathway. Previously, these methods required lists of nodes (which are still allowed as well).
• output_values property now returns the values of the OutputPorts of a Composition in the most recent context instead of the context with the None execution id
• Added the runtime_params argument to Composition.run, allowing users to specify a set of Composition parameters to use for that specific call to run
• Users can now pass None or {} as the inputs argument to Composition.run or Composition.execute. When doing so, the Composition will use its input nodes’ default variables as inputs
• If input or target mechanisms of Compositions have input or output labels associated with them, then these labels can be used in place of specifying numerical values for inputs and targets, respectively, in a Composition’s input and target specifications
• Renamed the following (item types in parentheses):
◦ (Method) Composition.reinitialize -> Composition.reset
◦ (Method) Mechanism.reinitialize -> Mechanism.reset
◦ (Attribute) Mechanism.reinitialize_when -> Mechanism.reset_stateful_function_when
◦ (Argument of Composition.run) reinitialize_nodes_when -> reset_stateful_functions_when
◦ (Argument of Composition.run) reinitialize_values -> reset_stateful_functions_to
• The reset_stateful_functions_when argument of Composition.run can now accept a dict of {Node:Condition} pairs as its argument

- Control
• When a Composition without a controller is added as a node to a Composition with a controller, and the inner Composition has nodes with parameters that have Control specifications, the outer Composition’s controller will use the Control specifications to create projections to those nodes’ parameters.

- Execution Graph
• Previously, the algorithm used for flattening cyclic compositions traversed the graph and flattened cycles as they were encountered. Now, the largest cycles present within compositions are prioritized for flattening. This may change the results of Compositions containing certain types of cyclic structures (see version 0.7.5.4 for last release with previous cycle-flattening algorithm)

- Learning
• The API for learning in Standard PsyNeuLink Compositions has changed. Previously, methods that added learning pathways to standard Compositions returned a target Mechanism that needed to be maintained by the user or otherwise retrieved in order to call the Composition.learn method. With the addition of the Pathway class (detailed above), these methods now return the instantiated Pathway instead of the target Mechanism. Because the set of all Pathways belonging to a Composition are stored on the Composition instance as an attribute, this frees the user of some of the burden of maintaining the target Mechanism instance (see version 0.7.5.4 for last release with previous API)

- Process
• The Process class has been removed entirely from the codebase (see version 0.7.5.4 for last release including Process)

- Pathway
• implemented the Pathway class, which is used to represent a series of Nodes and Projections connected linearly within a Composition. This change interacts with learning in ways that change the API, as specified below (see version 0.7.5.4 for last release with previous API)

- System
• The System class has been removed entirely from the codebase (see version 0.7.5.4 for last release including System)

- Misc
• Various bugfixes, improvements to documentation, internal refactoring, etc.
• All remaining tests using `System` and `Process` have been converted to use `Composition` or removed

0.7.1.1

* Function
* Fixed a bug that caused all copies of a function with a random state to produce the same random sequence on execution.
* Tests
* Rewrote several tests to use Composition instead of System/Process.
* Deleted tests made redundant by deprecation of System/Process (because equivalent tests using Composition already exist).
* Docs
* Switched to a new theme for docs
* Mechanism
* ProcessingMechanism
* MAX_VAL and MAX_ABS_VAL output ports now return scalars rather than OneHot values
* MAX_ONE_HOT and MAX_ABS_ONE_HOT added to standard output ports
* TransferMechanism
* Added COMBINE to standard output ports
* DDM
* Removed DDM_OUTPUT; replaced with DDM.standard_output_ports, i.e. instead of instantiating pnl.DDM_OUTPUT.<OUTPUT_PORT_NAME>, you can now use pnl.<OUTPUT_PORT_NAME>
* ContrastiveHebbianMechanism
* Fixed bug in which target_size=0 caused crash

0.7.0.0

* AutodiffComposition
* Greatly improved execution speed of AutodiffCompositions running in compiled mode. Benchmarks show speeds up to 4x as fast as the equivalent models implemented in PyTorch
* By default, AutodiffCompositions now use the MSE loss function during Backpropagation
* Added SSE as an option for Backprop loss function
* Composition
* By default, learning enabled Compositions now use the MSE loss function during Backpropagation
* Added SSE as an option for Backprop loss function
* Function
* Added ParameterEstimationFunction, an OptimizationFunction that uses likelihood free inference to estimate values of parameters for a composition so that it best matches some provided ground truth data
* Modulation
* Simplified modulation such that it is now handled entirely by two classes: 1) ControlMechanism, which modulates Mechanisms and 2) LearningMechanism, which modulates projections
* Utilities
* Added functionality for exporting PsyNeuLink models as JSON structures for integration with external packages/libraries
* States (Ports)
* PsyNeuLink States (e.g. InputState, OutputState) have been renamed to Ports (InputPort, OutputPort)
* Documentation
* Figures updated to reflect change in name of State to Port

Page 8 of 10

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.