Skip to content

"VSA, Analogy, and Dynamic Similarity" presentation given at the Workshop on Developments in Hyperdimensional Computing and Vector Symbolic Architectures, Heidelberg, Germany, 2020-03-16.

License

Notifications You must be signed in to change notification settings

rgayler/VSA_2020_presentation

Repository files navigation

VSA 2020 Presentation

Ross Gayler 2020-02-22

DOI License: CC BY 4.0

Create the presentation, “VSA, Analogy, and Dynamic Similarity”, to be given at the Workshop on Developments in Hyperdimensional Computing and Vector Symbolic Architectures on 2020-03-16 in Heidelberg, Germany. This event is associated with the 8th Annual Neuro-Inspired Computational Elements (NICE) Workshop.

The workshop was cancelled because of the COVID-19 pandemic, but I have made the presentation available anyway.

The primary purpose of this repository is to archive the source code for creating the presentation. The secondary purpose is to document the process of creating and running the project, in the hope that it will save me some time for the next presentation project.

Project setup

This assumes starting with everything that’s on my computer right now. Your mileage will vary (in particular, you may have to install a bunch of R packages).

  1. Make sure usethis is installed and follow the setup instructions so that user name and other details are set up ready for the project.

  2. Create empty GitHub repo VSA_2020_presentation using these instructions.

  3. Create a local RStudio project by cloning the GitHub repo using these instructions.

  4. Add file .gitattributes with the following contents so that Rmarkdown files are recognised as R by GitHub.
    # Get GitHub to reclassify `.Rmd` files as R
    *.Rmd linguist-language=R

  5. Create a figs subdirectory of the new project to contain figures (which will be copied from past projects).

  6. Guard against leaking credentials to GitHub. This only needs to be done once per user/computer but does no harm to be repeated for each new project.
    usethis::git_vaccinate()

  7. Activate renv package tracking.
    renv::init()
    This starts the project with an empty library, so all the infrastructure will have to be installed as it is first used. You will use renv::install() a lot, in particular, you will have to install usethis into the project.

  8. Install usethis to the project and mark the project as using usethis (updates the project-specific .Rprofile).
    renv::install("usethis")
    usethis::use_usethis()

  9. This presentation document requires the binb package to enable rendering the output as a PDF presentation. The document uses the binb metropolis template. This requires a variety of LaTeX tools and fonts to be installed, in addition to the rmarkdown and knitr infrastructure. See eddelbuettel/binb for binb installation advice.

    • Make sure the Fira Sans and Fira Mono fonts are installed. (Instructions on how to check what fonts are installed. I found it convenient to download Fira Sans and Fira Mono from Font Squirrel. Instructions on how to install fonts - for reasons I don’t understand, using font-manager didn’t work, whereas copying the font files to $/.fonts did work.)
    • The first attempt to knit the presentation may result in the LaTeX package manager running for ages while installing the required LaTeX infrastructure.
    • For a future project it may be worth trying to set up a Docker image with the fonts and LaTeX packages installed.
  10. Copy README.Rmd (this document) from a prior GitHub linked project and edit it to explain what this project is about and how it was set up. Keep this up to date as the project progresses. See GitHub document for instructions on the contents for this kind of README to be rendered on GitHub.

  11. Set the license.
    usethis::use_ccby_license()
    Add the appropriate license badge from lukas-h/license-badges.md to README.Rmd.

  12. Commit, push, rinse, and repeat as the project progresses. Follow these instructions.

Write presentation

  1. Copy in resources from previous projects to use as a starting point.

    • VSA2020_Gayler_abstract.pdf # submitted extended abstract of presentation
    • VSA2020_Gayler_abstract.zip # source code of extended abstract
    • Figures from old presentations
  2. Write presentation, copying figures from prior documents as needed

  3. Render presentation by clicking the Knit button in the notebook editor window.

  4. Insert, into the presentation, links to the published/archived versions of the documents.

    • The URL of the github is already known.
    • The presentation will be published on Zenodo. A DOI can be reserved as part of uploading a work in progress. See here for example instructions.

Clean up and publish

  1. Remove any documents not used in current presentation.

  2. Push the final version to github.

  3. Publish to Zenodo by clicking the “Publish” button on the upload page. Previous work in progress versions were “Save”d rather than “Publish”ed.

About

"VSA, Analogy, and Dynamic Similarity" presentation given at the Workshop on Developments in Hyperdimensional Computing and Vector Symbolic Architectures, Heidelberg, Germany, 2020-03-16.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published