Changelogs¶
0.5¶
DL:
Renamed
k1lib.formattok1lib.fmt, and exposed it automatically.Added
sizeOf()Exposed
selectorautomatically.Deleted
k1lib.websiteFixed infinity elements in
landscape.Landscape’s plots.
Cli:
Added chained mode to
itemFixed ignoreTensor mechanic in
derefAdded prefetch mode in
applyMpAdded
applyMpBatchedthat executes lots of transformations in a single job.Added
clearPools()andpools().Added
activeSamples.Removed aliases
splitColumnsandjoinColumns.Removed
stitch, asto1Str().all()does the same thing.
0.4¶
This update moves things around a lot. The actual coding experience stays the same, but a lot of links < 0.4 will be broken in 0.4 docs. Go to 0.3 docs if you wish to follow links.
Molecule (k1lib.mo):
Added close coulomb force calculations to simulator to make it more realistic (cyclohexane chair config possible now!)
Added optional Hydrogen viewing to various functions in
moFixed parsing bug where it doesn’t recognize “3-methyl” group in “3-methylpentane”.
DL:
Don’t let
AutoIncrement’svalueproperty to auto increment internal value.Removed
CyclicRandomSampler, asrange(n) | repeatFrom() | randomize(n)`does the same thing.Removed
FunctionDataset, added simplerFunctionDataas replacement.Removed
DataLoader,DataandDatasetWithSampler, as they’re complex and obsolete.Added
tfImg(),tfFloat(),analyzeFloat()Monkey-patched
torch.nn.Moduleto have piping capabilities.Renamed
k1lib.datatok1lib.kdata, and exposed it automatically inimports.Renamed
k1lib.nntok1lib.knn, and exposed it automatically.
Bioinfo cli:
Renamed
k1lib.bioinfo.clitok1lib.cliAdded
stagger()as the new interface for dataloaders.Added PIL conversion mode to
utils.toTensorAdded Tensor shape mode in
utils.shape.Added
othersmodule, withcrissCross()Added Tensor mode to
toSum,toAvg,toMin,toMaxandoneToMany.Added alias
toMean.Added dtype choice to
toTensor.
0.3¶
Background stuff:
Added mo tutorial
DL:
Added
FAnim()Added
mofor stuff related to molecular dynamicsAdded
graph(),digraph(),__call__()Huge revamp of
scheduleto make it more intuitive. There’s only 1 main schedule object now:Fn.Added
k1lib.wraps(),k1lib.Object.__delitem__(),k1lib.Range.fromRange()Added
k1lib.Every
Bioinfo cli:
Removed
notIn, asinSetdoes the job just as wellIncluded cli import command in
importsby defaultModified
toFloat()andmodifier.toInt()so they can force weird values to 0.Moved existing
toDicttotoDictF, and created a newtoDict.
0.2¶
Pretty minor update. I just want to push this out as soon as possible
Background stuff:
Changed versioning system so that it makes more sense
Added osic and mp tutorials
Added more speed analysis in the cli tutorial
Bioinfo cli:
Removed
dirsandfilesparameters inls, asisFileis good enoughDisable module
ctxby default, to improve performanceReplaced
nonEmptyStreamtoempty
0.1.13¶
Background stuff:
Removed walrus operator library-wide, so that it can be used with Python < 3.8
Bioinfo cli:
Added
breakIf,isFileReplaced
infiniteFwithrepeatFReplaced
infiniteFromwithrepeatFromReplaced
dereferencewithderefReplaced
ctx.dereferencewithctx.derefModified
applyMpto usedillto deserialize everythingModified
to1Strso that it returns a string, instead of yieldingModified
toStrso that it can accept an optional columnModified
splitListso that it accepts *argsRemoved
applySingle, but retainapplyS
DL:
Added class
CaptureStdoutPatched
torch.TensorwithcrissCross(),histBounds()andhistScaled()
0.1.12¶
Background stuff:
Removed docs’s generated
fontsfolder, as it takes 8MB and isn’t even used. Should now be sustainable for 100 versions on github pages.
Bioinfo cli:
Removed wrapping
__ror__operator if__init__is not defined, to make things performant.Added speed analysis in the cli tutorial.
Added
init.BaseCli.__call__(),consume,ctx.ctx(),ctx.f,peekF,expandE,utils.dereference.__invert__(),unique,notIn,sortF,toMax,toMin,union,ls(),instanceOf(),randomizeRemoved
ctx.identityAdded shortcuts to
ctx.setC()andctx.getC()Made
headerIdx()context-awarePut
ctx.Promisedereferencing atinit.BaseCli.__ror__(), instead of dynamic patching atk1lib.bioinfo.cliconstruction timeGet rid of
stdoutstyle inconsistencies. Previously, it looks like[1, 2] | stdout, now it looks like[1, 2] | stdout().Added multiprocessing capabilities with
applyMpAdded
maxDepthoption fordereferenceAdded
includeLastoption tobatchedAdded
float("inf")option tobsparameter ofbatchedFixed
permuteto be able to take in generator for rows.Fixed
stdoutto be able to display non-iterable inputsFixed
dereferenceso that it will handle poking errorsFixed
countso that it can deal with list. Used to throw unhashable type: ‘list’Added more flexibility with
toFloat(),toInt()andsort
DL:
Added classes
AutoIncrement,WrapperAdded functions
positionalEncode(),debounce()Fixed
executeNb’s_globalsdoc-backref problem. Also clears plot automatically after executing a cell now.
0.1.11¶
Background stuff:
Added testing section for unit tests (simple assert statements inside the notebooks)
Bioinfo cli:
Added numpy/torch checks to
dereferenceRenamed
sampletopeekAdded
infiniteFrom,joinStreamsRandom,batched,collate,splitListAdded
infiniteFAdded
toTensorReplaced
infinitein favor ofrepeatUpdated all cli tools to use
super().__init__()Added
ctxmodule, withPromise,enum,identityclasses, andgetC(),setC()methods
DL:
Added
k1lib.data.CyclicRandomSamplerandk1lib.data.DatasetWithSamplerAdded highlight feature in
callbacks.Callbacks.checkpointGraph()Added
k1lib.viz.Carousel.pop(),k1lib.viz.Carousel.__getitem__()Added
k1lib.Learner.sample()Disallow
k1lib.executeNb()to execute lines that starts with “!”, also removed parametercatchErrors, as it’s quite uselessAdded
k1lib.Object()
0.1.10¶
Background stuff:
Added notebook regression tests
Added tutorials automated building tool
Added
k1lib.ignoreWarningsTutorials part moved to official docs (rather than .md files on github)
Added covid tutorial
Bioinfo cli:
Reintroduced
permute, asrowsis inadequateAdded
lengths,applySingleExposed
serial,oneToMany,manyToMany, andmanyToManySpecific
DL:
Added
confusionMatrix.ConfusionMatrixandk1lib.viz.confusionMatrix()Modified
k1lib.Objectto allow settinggetdocfieldAdded
k1lib.viz.Carousel.saveBytes(),k1lib.viz.Carousel.saveFile(),k1lib.viz.Carousel.saveGraphviz(), and handle different image formats much better now
0.1.9¶
Bioinfo cli:
Added
k1lib.DomainclassAdded
__invert__option forrowsandcolumnsby incorporatingk1lib.DomainSped up
rowssignificantlyRemoved cli tool
everyasrowsis good enoughAdded
__invert__option forhead. As a result, removednheadAdded
till()mechanism togrepcli toolAdded
gbcli module to deal with genbank file formatAdded
tableFromList()as alias oflistToTable()Renamed
avgtotoAvgAdded
toSum
DL:
Added Callbacks tab completion to
k1lib.LearnerandCallbacksRefactored
lossLandscape.LossLandscapetolandscape.Landscapethat can be used by any other callbacks, right now it’sLossandAccuracyAdded
callbacks.Callback.pause()to help withAccuracy’sLandscape
0.1.8¶
Fixed installation bug where readme.md would be absent, and setup.py won’t work at all.
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
grepToTable,joinList,contains,table,stitch,listToTable,insertColumncli toolsRemoved
joinRowsbut still keepjoinStreamsas “joinRows” is not really obviousRemoved
permuteascolumnsis pretty much identicalRenamed
insidetoinSetCut out nested functionality from
greptogrepToTable
0.1.7¶
Interface with external modules:
Swapped out
register_backward_hookwithregister_full_backward_hook()inHookModulecallbackAdded
torch.nn.Module.preserveDevice()context manager
Callbacks:
Changed
Callbacks.suspend()to take in names onlyAdded
Callbacks.suspendClasses()to take in classesChanged
Callbacks.suspendEvaluation()toCallbacks.suspendEval(), also added functionality for white and black listsRipped out complex
Callback.__getattr__()mechanism (that automatically searches the parent learner for missing attributes) to improve speedAdded
k1lib.callbacks.corecallbacksCoreNormalandCoreRNNAdded more plot decorators for
MemoryProfiler, including backward-forward separator with their textChanged
LossLandscapecallback so that it follows the common flow structure. Before, it implements a whole newcbs(...)schema that essentially duplicated the loop inside ofk1lib.Learner
Learner:
Implemented grace stop handling for
Learner. Before, if someone throwsCancelRunExceptionwhile 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 checkpointscancelBatchandendBatchand rethrow it. Same thing withCancelEpochExceptionMoved loss function from being a core functionality inside
Learnerto an external callback, so that adapting multiple loss functions are possibleAdded
Learner.__call__()
Bioinfo cli:
Added
isValue,intersection,AA_,infinite,dereferencecli toolsModified
catto be able to take in file name by pipeAdded new joining operator “+” between
init.BaseCli
Style changes:
Changed
Callbacks.learnertoCallbacks.lChanged
Callback.learnertoCallbacks.lRemoved
k1lib.eqnfromk1lib.imports’s namespace
0.1.6¶
I don’t really keep track of things 0.1.6 and before, so nothing here really.