Is anyone studying Data Science / Machine Learning with RemNote?

Hello fellow RemNoters!

I’m currently trying to study Data Science & Machine Learning using RemNote, and am struggling to get to grips with a good structure for building up my knowledge base in RemNote.

Does anyone have some pointers, tips, or notes they can share that I can learn from your structure?

Thanks!

3 Likes

I’m doing pure mathematics (at research level), which might have similar challenges. What are you trying to accomplish and what do you feel like you’re struggling with?

I guess when I think about it, my question isn’t necessarily specific to Data Science/ML, but more about how do I effectively structure my notes for studying a specific field of knowledge in RemNote.

The first problem I have is that I want to have a kind of holistic view of Data Science and all the topics within this sphere of knowledge. So for example, it might look something like this:

  • Machine Learning
    • Types of Machine Learning
      • Supervised Learning
        • Regression
          • Algorithms
            • Linear Regression
            • Lasso Regression
        • Classification
          • Algorithms
            • Decision Trees
            • Random Forest
          • Evaluation of Classification Models
            • Confusion Matrix
            • Accuracy, Precision, Recall
            • ROC
            • AUC
      • Unsupervised Learning
        • Clustering
          • Algorithms
            • K-means
            • K-NN
        • Anomaly Detection
          • Algorithms

The main purpose of this is to give me a holistic overview of the fields and subfields of data science and machine learning.

But I have 2 issues with this approach:

  1. If I were to use this structure in a page, should I simply make Rem References to each of these ‘Concepts’, or should I add a portal to each of these concepts. For example in the picture below, I have basically brough a portal in for Supervised Machine Learning, and Unsupervised Machine Learning to mimic the bullet structure l called out in the start of this post:

But then, for Classification and Regression, should those be separate portals, within Supervised Machine Learning? If I am to follow the idea of atomic/modular notes, surely that is the approach?

  1. The second issue with this approach is the obvious limitation of trying to fit all these concepts and topics into a hierarchical structure. This obviously goes against the focus of RemNote and linking ideas. For example, in my hierachical structure above, people familiar will note that Decision Trees are actually used both for Classification and Regression, and could also fall under a separate parent of ‘Tree-based Methods’.

So to sum up my current issues:

  • How can I form a holistic overview of the field of Data Science and Machine Learning in RemNote, so that I can essentially get a birds eye view of all the fields and subfields.
  • How can I build this holistic overview, whilst maintaining the concept of modular/atomic notes? Is leaning heavily on portals to form these holistic view pages a good strategy?

Keen to hear your thoughts and recommendations, and perhaps how you implement it for studying fields within Mathematics.

1 Like

Why did you choose to place a portal to the Supervised Machine Learning Rem in this outline rather than the Supervised Machine Learning Rem itself? I ask not to suggest that this approach is wrong, but to understand your workflow.

I think multiple strategies can work. RemNote has a fair number of tools for restructuring data as well as structuring it in the first place. So, you can experiment with a structure without worrying too much about being stuck with it. I think ease of restructuring is an advantage of everything being a Rem; most other applications in this space have a distinction between documents and blocks that complicate restructuring.

In my workflow, I keep a Topic index. That is where I would put the Machine Learning, Supervised Machine Learning, Classification, and Regression Rem:

  • Topic
    • Machine Learning
      • Supervised Machine Learning
        • Classification
        • Regression

As I take notes on sources–one document Rem per source–I insert references to the Rems in the Topic index. Then, I occasionally review the Rems in the Topic index and its backlinks, and I write “new” Rems that summarize what I’ve learned from sources. The new Rems might be minimally edited copies of the source notes, or even just a portal pointing to the source notes.

One nifty trick that RemNote has is that hierarchical search works during reference creation. This allows you to create Rem and place them somewhere in the hierarchy on the fly just by inserting references. So, if I were taking notes on an article about tree-based methods, but I didn’t have tree-based methods in my topic index yet, I could create Topic > Machine Learning > Supervised Learning > Tree-based Methods on the fly. This is really handy for building what the Obsidian community calls “maps of content” and what the Zettelkasten.de fellows call “structure notes”.

I have found it beneficial to my own learning to restructure my topic index as I go along. But I am doing this as a life-long learner rather than a student pursuing a degree and taking classes, so there’s not a lot of time pressure involved.

TL; DR: There are lots of viable methods for building an overview in RemNote, and RemNote has tools for revising that overview, too.

I hope this is helpful.

4 Likes

I agree with mpmanti that it’s better not to worry about structuring too much in advance. It’s probably neither possible nor desirable to put everything about any large topic into a hierarchical outline. Unless the hierarchical structure is itself something you are trying to learn, I don’t see any advantage to doing this. It might feel like you’re getting a holistic view, but this kind of extensive taxonomy was surely imposed by someone else rather than something that arose intrinsically from the subject.

I think of RemNote as more of a tool for active learning rather than reference, so my structure is derived from what I’m doing. At the moment I have a folder of books and papers I am reading and a separate folder of random auxiliary topics. For my reading notes, I borrow the structure from the reading, and for each of the random topics I don’t use any hierarchy at all until the topic document becomes unwieldy.

The synthesis and organization comes from internal linking rather than hierarchy, and RemNote provides four ways to do this: highlights, tags, rem references, and portals. I’m not making much use of tags right now, but I have separate highlight colors for definitions, theorems, examples, techniques, etc., so filtering by color gives a quick overview of what the top-level information is in a document. I use rem references extensively, and only use portals when the rem reference mouseover doesn’t provide enough information.

3 Likes

Hello!
I don’t study ML, but I do research as well. My take is that atomic notes also require an index for future re-reading and navigation in concepts. The index is nothing more than shortcuts to main nodes in your networked knowledge. To me, a compromise of organic writing and structure is necessary
I’m not 100% sure I understand the details of your problem statement, but I encountered something similar (I think, but let me know).

For more info about the indexing, second part of my notes on a relevant paper: RemNote

This is how I treat this problem: there is a structure B of the source material, and then there is a structure A of what is sensible conceptually.
I always start with B: I follow the same structure in my rem that I create for each material I’m reading. Whenever I encounter a concept that transcends the material (meaning that it makes sense beyond the paper, ex: regression analysis), then instead of creating it and there, I create in my Index rem.
This “index” rem is one I created to provide me the bird eye view on my knowledge base. This index has its own structure that is conceptually sound.
The index is therefore a rem, with a very “deep” hierarchy of concepts (with some definition using :: when very new to me). From this list and structure you can jump into all material that mention this concept.

Note two things:

  1. with experience, If in the structure of index (A) you feel something should be in two places, maybe there your need to have a disambiguation on the concept (like wiki)
  2. my knowledge base, doesn’t have exclusive relation to the index rem: my rems reference each other. The index rem is just a shortcut!

In practice, I write [[Index, then tab, then search for (if already existing) or create a rem “regression analysis” under

To summarize, I would say this: with remnote you are master of you KB, leave yourself trails to find information again, in a way that makes sense to you. I’ve exposed you mine, but yours will be more appropriate to you.

4 Likes

Just to add that you may create smaller indices with references per smaller topics (aka entrynotes or keynotes if using Zettelkasten terminology) or use the main index entries as tags for individual atomic notes as well (going the other way to arrive at the same result).

@liam.gower I have no field-specific expertise, but it looks like for the moment your own knowledge is at best identical to the contents of your single source, so first exhaust it while following it relatively closely, then look to expand or change using more sources or your related knowledge. As long as the “trees” make sense (whether you are using concept-descriptor or just outlining), you should be able to shuffle them around relatively frictionlessly.

If in doubt, slap a portal in multiple places and see whether one of them becomes more useful than the original location - this way you save on hassle of making a decision up front and gain more understanding of which topics are more meaningful to which areas of your work.

2 Likes

I like this. I drew a rough picture summarising what I got from it:

Take your master topic (e.g. ML) as one long rem. Bend that into a ‘U’. Summary index comes at the front at the top of the topic (on the left side with the shapes), original source-specific notes at the bottom (to the right the little trees).

Step 1:
Source-specific notes, structured in the same way those individual sources do it. These make atomic notes (marked as :small_red_triangle::red_circle:). Ideas that are unique per source stay with those source notes.

Step 2:
If an atomic note has SHARED material, it gets promoted to living in the index (:small_red_triangle::red_circle: move from sources to index). Either you just more the concept rem (and leave the details behind). Or a portal to the details gets left where it started life in the original source (so that your original source notes aren’t disrupted), and you move the whole entry to the index.

Step 3:
As more sources get added, more concepts (:red_square:) develop, and can get synthesised into the index. If something is awesome but not shared, you could arbitrarily promote it to the index even if it isn’t shared, but try to keep the index trim.

The index can be structured in the way that makes the most sense to you. It doesn’t need to follow how the sources do things.

The two sorting rules I always try to follow are:
A. Like with Like. (Keep similar things in the same cupboard)
B. Place for everything. (I don’t have random unsorted orphan rem kicking around, at worst lone things get sorted under “Misc”).

My biggest takeaway from multiple rounds of trying to make good RemNotes: structure is emergent.
Just start, just try, it will be ugly and messy, but you can only refactor things once you can SEE those things and their details/patterns.

FIRST make things, THEN sort them.

Strict tree hiearchy is neat, but is also strictly linear. Often different topics have more than one ‘type’ of neighbor.

If you want to use branching trees, branch roots based on distinctions that you USE and that make sense to you intuitively.

As long as you know how to get there, it doesn’t strictly matter if your stuff is sorted perfectly logically.

In your example, make the definition of Decision Trees live under Classification and remember how to get there. Just add a little detail to Regression linking to Decision Trees reminding you that it can also apply there. (In file-folders you can leave an alias/shortcut to relevant folders which aren’t actually contained).

4 Likes

Amazing! Could you share a screenshot of yout workflow?
Thanks

TBH I put that there as an aspiration and note-to-self for whenever I bother to get back into making proper RemNote notes.

Currently I’ve been swamped with work so I haven’t been doing any structured RemNote studying recently. (Apart from basic things like memorising the times of my regularly-scheduled meetings.)

But if it helps, here’s my actual IRL workflow:

  1. A calendar (using Acuity) where people can book me for meetings, and I can block-off my own times.

  2. A TODO.txt in Sublime Text where I list things due on upcoming dates. It’s synced through the Google Drive desktop app so that I can view/edit it with the QuickEdit Android app if needed. It’s literally just a plain-text file where I write the date (e.g. Today is Nov 18 Thu ) and can add emoji to highlight important things, type Unicode checkboxes ☐☑ for tasks, and “@@” to specify an event at a specific time.


    (Pro-Tip: for GDPR compliance, make your own private abbreviation system for the names of colleagues and clients e.g. cJS = client James Smith, wJD = work Jane Doe etc. It’ll make sense to you, but be pre-anonymised to everyone else.)

  3. 2021_Notes.txt where I store notes from this work year (archived and replaced each year). Notes on meetings, instructions on how to do things, the text from any useful emails that I’d be able to re-use or access later. Just search this with Ctrl+F and the keyword to find stuff later, collapse things using indentation + code-folding.

I preface things with the date it was taken with a nifty Start-Key+y shortcut using this AutoHotkey snippet:

  #y::
    FormatTime, CurrentDateTime,, yyyy.MM.dd ddd HH'h'mm'm
    SendInput %CurrentDateTime%
    return

These notes are messy, but low-priority, so there’s little benefit to going back later and cleaning up the structure, I just have it here to keep a record.

Here’s the biggest ‘workflow insight’ I took away from using RemNote: “messy & fast & doable >> neat & slow & unrealistic”. Overcome the urge to compulsively ‘re-sort’ and ‘prune’ and ‘tend’ notes — ONLY do that when it actually benefit you (and usually, it won’t).

2 Likes

checkout the knowledge tree from Machine Learning - GeeksforGeeks