Lesson 00

Getting started with the fast.ai course.

These are my notes from the video. Please suggest things to add.

Knowledge

  • How does the Path class work? How do you make a Path that refers to a subdirectory of Path p?

Data Sources

There are a bunch of datasets that are easily available from within the fast.ai framework.

  • Explain untar_data. What does it do? Where does the information go? What kind of information goes in? Look to see if the URLs are exactly the data we have worked with, or if it’s different.

  • Find one “standard” dataset that you can use for classification. Can you find one to use for tabular learning?

Segmentation Data Loaders

  • What do they use segmentation for in the video? Can you think of another use for segmentation?
  • What kind of information do you need to provide to do image segmentation?
  • How does the label_func parameter of from_label_func in a SegmentationDataLoader work? What type of thing is the input to a label func?
  • What information is provided in the fnames parameter?
  • How do you specify codes?
  • What is a unet_learner? (Not explained in the video.) (Possibly not important.)

Tabular Learner

  • When would you use a tabular learner? Give an example that is not straight from the video.
  • cat_names: Names of columns of categorical columns.
  • cont_names: Names of columns with continuous data.
  • fit_one_cycle: Tabular data does not have a pre-trained starter model, so you’re not fine tuning.
  • metrics = accuracy

Collaborative Filtering

  • Describe what this is. When would you use it?
  • show_batch to show one group of data.
  • collab_learner takes in y_range. Leave a gap above and below your data range. fine_tune supposedly isn’t relevant, but they do it anyway. Claim: fit_one_cycle is ok and also appropriate.

Anything

  • show_results()

Attention

  • SegmentationDataLoaders begin about 0h55m.
  • RISE extension: turn a notebook into a presentation.
  • fastpages: Blogging with a notebook. (Introductory post.)
  • first neural network: shown at 1h10m in the video
  • Explanations of what to do 1h19m.

Explanations and FAQ

  • How do Paths work? What are they, anyway?

    A Path object is like path=\Users\docmo\My Documents\Machine Learning. It specifies a location on disk that may or may not exist (yet). In Unix and Python, the slashes go the other way, so you will see it written /Users/docmo/My Documents/Machine Learning and automatically translated into backslashes for Windows.

  • What does this code do?

      dest = (path/o)
      dest.mkdir(exist_ok=True, parents=True)
    

    In the first line, path is an Path object. Using / to put two paths together makes sense because that mark separates folders. Division makes another Path by “operator overloading”. The second line calls the Path method mkdir, which creates the folders specified by the Path. The parents option means it will create more than one folder if it needs to. (Side note: if you look up the usual method os.mkdir you will see it does not have the exist_ok option.)

Last modified August 18, 2023: 2022-2023 End State (7352e87)