Changelogs ========== `0.1.10 `_ ------------------- Background stuff: - Added notebook regression tests - Added tutorials automated building tool - Added :class:`k1lib.ignoreWarnings` - Tutorials part moved to official docs (rather than .md files on github) - Added `covid tutorial `_ .. currentmodule:: k1lib.bioinfo.cli Bioinfo cli: - Reintroduced :class:`~structural.permute`, as :class:`~filt.rows` is inadequate - Added :class:`~utils.lengths`, :class:`~modifier.applySingle` - Exposed :class:`~init.serial`, :class:`~init.oneToMany`, :class:`~init.manyToMany`, and :class:`~init.manyToManySpecific` .. currentmodule:: k1lib.callbacks DL: - Added :class:`confusionMatrix.ConfusionMatrix` and :meth:`k1lib.viz.confusionMatrix` - Added :meth:`callbacks.Callbacks.checkpointGraph` - Added :meth:`torch.nn.modules.Module.paramsContext` - Modified :class:`k1lib.Object` to allow setting ``getdoc`` field - Added :meth:`k1lib.viz.Carousel.saveBytes`, :meth:`k1lib.viz.Carousel.saveFile`, :meth:`k1lib.viz.Carousel.saveGraphviz`, and handle different image formats much better now `0.1.9 `_ ----------------- .. currentmodule:: k1lib.bioinfo.cli Bioinfo cli: - Added :class:`k1lib.Domain` class - Added ``__invert__`` option for :class:`~filt.rows` and :class:`~filt.columns` by incorporating :class:`k1lib.Domain` - Sped up :class:`~filt.rows` significantly - Removed cli tool :class:`~filt.every` as :class:`~filt.rows` is good enough - Added ``__invert__`` option for :class:`~filt.head`. As a result, removed :class:`~filt.nhead` - Added :meth:`~grep.grep.till` mechanism to :class:`~grep.grep` cli tool - Added :mod:`~k1lib.bioinfo.cli.gb` cli module to deal with genbank file format - Added :meth:`~structural.tableFromList` as alias of :meth:`~structural.listToTable` - Renamed :class:`~utils.avg` to :class:`~utils.toAvg` - Added :class:`~utils.toSum` .. currentmodule:: k1lib.callbacks DL: - Added Callbacks tab completion to :class:`k1lib.Learner` and :class:`~callbacks.Callbacks` - Refactored :class:`lossLandscape.LossLandscape` to :class:`landscape.Landscape` that can be used by any other callbacks, right now it's :class:`~loss_accuracy.Loss` and :class:`~loss_accuracy.Accuracy` - Added :meth:`callbacks.Callback.pause` to help with :class:`~loss_accuracy.Accuracy`'s :class:`~landscape.Landscape` `0.1.8 `_ ----------------- - Fixed installation bug where readme.md would be absent, and setup.py won't work at all. .. currentmodule:: k1lib.bioinfo.cli Bioinfo cli: - Huge revamp of how tables are treated. Before, row elements are in a single string, separated by a delimiter. Now each row is a full fledged list - Added :class:`~grep.grepToTable`, :class:`~structural.joinList`, :class:`~filt.contains`, :class:`~structural.table`, :class:`~structural.stitch`, :class:`~structural.listToTable`, :class:`~structural.insertColumn` cli tools - Removed :class:`~structural.joinRows` but still keep :class:`~structural.joinStreams` as "joinRows" is not really obvious - Removed :class:`~structural.permute` as :class:`~filt.columns` is pretty much identical - Renamed :class:`~filt.inside` to :class:`~filt.inSet` - Cut out nested functionality from :class:`~grep.grep` to :class:`~grep.grepToTable` `0.1.7 `_ ------------------ Interface with external modules: - Swapped out ``register_backward_hook`` with :meth:`~torch.nn.Module.register_full_backward_hook` in :class:`~k1lib.callbacks.hookModule.HookModule` callback - Added ``torch.nn.Module.preserveDevice()`` context manager .. currentmodule:: k1lib.callbacks.callbacks Callbacks: - Changed :meth:`Callbacks.suspend` to take in names only - Added :meth:`Callbacks.suspendClasses` to take in classes - Changed :meth:`Callbacks.suspendEvaluation` to :meth:`Callbacks.suspendEval`, also added functionality for white and black lists - Ripped out complex :meth:`Callback.__getattr__` mechanism (that automatically searches the parent learner for missing attributes) to improve speed - Added :mod:`k1lib.callbacks.core` callbacks :class:`~k1lib.callbacks.core.CoreNormal` and :class:`~k1lib.callbacks.core.CoreRNN` - Added more plot decorators for :class:`~k1lib.callbacks.profilers.memory.MemoryProfiler`, including backward-forward separator with their text - Changed :class:`~k1lib.callbacks.lossLandscape.LossLandscape` callback so that it follows the common flow structure. Before, it implements a whole new ``cbs(...)`` schema that essentially duplicated the loop inside of :class:`k1lib.Learner` .. currentmodule:: k1lib Learner: - Implemented grace stop handling for :class:`Learner`. Before, if someone throws :exc:`CancelRunException` while executing a batch, then it will immediately jump to the end of the run. Changed it so that it will be caught in the batch loop, execute checkpoints ``cancelBatch`` and ``endBatch`` and rethrow it. Same thing with :exc:`CancelEpochException` - Moved loss function from being a core functionality inside :class:`Learner` to an external callback, so that adapting multiple loss functions are possible - Added :meth:`Learner.__call__` .. currentmodule:: k1lib.bioinfo.cli Bioinfo cli: - Added :class:`~filt.isValue`, :class:`~filt.intersection`, :class:`~structural.AA_`, :class:`~structural.infinite`, :class:`~utils.dereference` cli tools - Modified :class:`~input.cat` to be able to take in file name by pipe - Added new joining operator "+" between :class:`init.BaseCli` .. currentmodule:: k1lib.callbacks.callbacks Style changes: - Changed :attr:`Callbacks.learner` to :attr:`Callbacks.l` - Changed :attr:`Callback.learner` to :attr:`Callbacks.l` - Removed :mod:`k1lib.eqn` from :mod:`k1lib.imports`'s namespace 0.1.6 ---------------- I don't really keep track of things 0.1.6 and before, so nothing here really.