Skip to content

Sharing the learning process to promote mastering advanced topics in Machine Learning and Artificial Intelligence

Notifications You must be signed in to change notification settings

pgyrya/SharedMachineLearning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

Welcome to Shared Learning

This is intended as a collaborative place where enthusiasts (with little time on their hands) could share their learning process towards mastering advanced topics in Machine Learning, or learn from experience of others that came before them.

Intention

This repository is intended to supplement other learning materials in several ways:

  • For learners that pioneer content on this site, the idea is to synthesize other materials, explaining concepts in simple enough words so that non-specialized audience can understand and appreciate it. This would help you

    1. Practice and perfect critical communication skills, including publishing content on GitHub
    2. Learn the topic in a way you could be sure you could communicate it
    3. Share your learning experience with your future collaborators, making connections that could support your future endeavors
  • For learners that prefer to learn through reading already-synthesized materials, this should help you

    1. Go through accelerated learning process towards advanced topics, really getting the gist of it
    2. Ask quesitons, contributing to your fellow learners along the way by focusing their attention
    3. Stimulate your own thinking process by participating in discussions and collaborative learning

Contributions

Contributions can be made by adding content (making changes), or asking questions. Before diving into specific topic, let's also align on the structure we'll be giving to this repository, and share a few suggestions on how to organize the learning process.

Making changes

If you'd like to contribute to a topic explanation or code /examples - please create a pull request and we'll review it in a timely manner.

It may be better to start small so we define the direction of the topic first, then proceed incrementally to add content.

Asking questions

If you'd like to make a suggestion, ask a question or simply don't understand something - please ask, as this helps everyone learn,

  • focusing the attention of people who write content and challenges them to explain things better,
  • helping people that didn't think of asking this question - to understand the topic better

Suggested structure

Let's create

  • a separate folder for each topic (by initializing it with a README.md file with overview of intended content),
  • sub-folders for relevant materials - e.g. code, data, pictures, etc.

Please review neighboring folders to maintain consistency in terms of content structure, and share best practices.

Learning suggestions

Before you go, a few words on the learning process... When learning a new topic, I found that it takes time for new concepts to sink in. Our minds tend to wander, often learning process gets interrupted with wide range of life necessities.

In my experience I found that learning happens better in a focused dialog, supported by visual aids and a way to take notes.

The general process I could suggest is:

  • Plan what you learn

    1. Define the topic
    2. Define objective and purpose - these would help you keep track of the big picture (why)
    3. Outline a few questions you'd like to be able to answer
      • these would help you focus on the learning process and give initial structure to help you take notes
  • Take notes

    1. Draft free-form notes about what you are learning as bullet points
    2. Organize these points into topic structure
      • create categories and sub-categories as necessary
      • organize similar concepts by topic / category
      • fill in missing topics to make the organized list more complete
    3. Synthesize the resulting bullet point structure into a flow
      • re-order to focus on the most important points
      • sharpen individual points, completing each thought
      • identify reference material that could be used to support the point, or how to get it (e.g. reference, picture, document.)
  • Review notes

    1. Ensure the notes are valuable, correct and complete (build up to a complete story)
      • it helps to highlight areas that you are not sure about
    2. See if the story can be improved
  • Communicate as a story

    1. Understand the intended audience(s)
    2. Draft communication plan (e.g. agenda), and get feedback to ensure alignment and quality
      • give background to ensure context is introduced
      • include outline in communication so that audience can get oriented
      • make sure the topics are connecting smoothly, and sub-topics are
    3. Execute on each point of communication plan
      • re-shape notes into complete narrative form
      • add supporting material for each point
    4. Review and polish as necessary
      • be eager to learn from negative feedback
      • reflect on what can be done better next time

Given there are quite a few steps to getting this to polished state, it helps to attack this task in a collaborative setting - e.g. contributing collaboratively to learning and writing, or reviewing each other's work and asking targeted questions.

While Google Documents can be a good place to take shared notes and organize collaboration, I thought that GitHub repository would be a better place to save the learning process notes and results - let me know if you have other suggestions.

Good luck!

About

Sharing the learning process to promote mastering advanced topics in Machine Learning and Artificial Intelligence

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published