Fastai Versions Save

The fastai deep learning library

2.2.5

3 years ago

New Features

  • Enhancement: Let TextDataLoaders take in a custom tok_text_col (#3208), thanks to @muellerzr
  • Changed dataloaders arguments to have consistent overrides (#3178), thanks to @marii-moe
  • Better support for iterable datasets (#3173), thanks to @jcaw

Bugs Squashed

  • BrokenProcessPool in download_images() on Windows (#3196)
  • error on predict() or using interp with resnet and MixUp (#3180)
  • Fix 'cat' attribute with pandas dataframe: AttributeError: Can only use .cat accessor with a 'category' dtype (#3165), thanks to @dreamflasher
  • cont_cat_split does not support pandas types (#3156)
  • DataBlock.dataloaders does not support the advertised "shuffle" argument (#3133)

2.2.3

3 years ago

New Features

  • Calculate correct nf in create_head based on concat_pool (#3115), thanks to @muellerzr

Bugs Squashed

  • wandb integration failing with latest wandb library (#3066)
  • Learner.load and LRFinder not functioning properly for the optimizer states (#2892)

2.2.2

3 years ago

Bugs Squashed

  • tensorboard and wandb can not access smooth_loss (#3131)

2.2.0

3 years ago

Breaking Changes

  • Promote NativeMixedPrecision to default MixedPrecision (and similar for Learner.to_fp16); old MixedPrecision is now called NonNativeMixedPrecision (#3127)
    • Use the new GradientClip callback instead of the clip parameter to use gradient clipping
  • Adding a Callback which has the same name as an attribute no longer raises an exception (#3109)
  • RNN training now requires RNNCallback, but does not require RNNRegularizer; out and raw_out have moved to RNNRegularizer (#3108)
    • Call rnn_cbs to get all callbacks needed for RNN training, optionally with regularization
  • replace callback run_after with order; do not run after cbs on exception (#3101)

New Features

  • Add GradientClip callback (#3107)
  • Make Flatten cast to TensorBase to simplify type compatibility (#3106)
  • make flattened metrics compatible with all tensor subclasses (#3105)
  • New class method TensorBase.register_func to register types for __torch_function__ (#3097)
  • new dynamic flag for controlling dynamic loss scaling in NativeMixedPrecision (#3096)
  • remove need to call to_native_fp32 before predict; set skipped in NativeMixedPrecision after NaN from dynamic loss scaling (#3095)
  • make native fp16 extensible with callbacks (#3094)
  • Calculate correct nf in create_head based on concat_pool (#3115) thanks to @muellerzr

2.1.10

3 years ago

New Features

Bugs Squashed

  • NoneType object has no attribute append in fastbook chapter 6 BIWI example (#3091)

2.1.9

3 years ago

New Features

  • Refactor MixUp and CutMix into MixHandler (#3037), thanks to @muellerzr
    • Refactors into a general MixHandler class, with MixUp and CutMix simply implementing a before_batch to perform the data augmentation. See fastai.callback.mixup

Bugs Squashed

  • Gradient Accumulation + Mixed Precision shows artificially high training loss (#3048)

2.1.8

3 years ago

2.1.8

New Features

Bugs Squashed

  • Update for fastcore negate_func->not_
  • LR too high for gradient accumulation (#3040), thanks to @marii-moe
  • Torchscript transforms incompatibility with nn.Sequential (#2920)

2.1.7

3 years ago

2.1.7

New Features

  • Pytorch 1.7 subclassing support (#2769)

Bugs Squashed

  • unsupported operand type(s) for +=: 'TensorCategory' and 'TensorText' when using AWD_LSTM for text classification (#3027)
  • UserWarning when using SaveModelCallback() on after_epoch (#3025)
  • Segmentation error: no implementation found for 'torch.nn.functional.cross_entropy' on types that implement torch_function (#3022)
  • TextDataLoaders.from_df() returns TypeError: 'float' object is not iterable (#2978)
  • Internal assert error in awd_qrnn (#2967)

2.1.6

3 years ago

2.1.6

New Features

  • Option to preserve filenames in download_images (#2983), thanks to @mess-lelouch
  • Deprecate config in create_cnn and instead pass kwargs directly (#2966), thanks to @borisdayma

Bugs Squashed

  • Progress and Recorder callbacks serialize their data, resulting in large Learner export file sizes (#2981)
  • TextDataLoaders.from_df() returns TypeError: 'float' object is not iterable (#2978)
  • "only one element tensors can be converted to Python scalars" exception in Siamese Tutorial (#2973)
  • Learn.load and LRFinder not functioning properly for the optimizer states (#2892)

2.1.5

3 years ago

2.1.5

Breaking Changes

  • remove log_args (#2954)

New Features

  • Improve performance of RandomSplitter (h/t @muellerzr) (#2957)

Bugs Squashed

  • Exporting TabularLearner via learn.export() leads to huge file size (#2945)
  • TensorPoint object has no attribute img_size (#2950)