ml5js / ml5-website-v02-docsify

This repository is a work-in-progress website, containing documentation and reference materials for the ml5.js library models.
https://docs.ml5js.org/
Other
1 stars 11 forks source link

missing neuroevolution functions from docs #143

Closed shiffman closed 3 months ago

shiffman commented 4 months ago

I'm opening an issue with info and resources about neuroevolution for the website documentation that @sharellb plans to work on! (I just sent an email but realized maybe it makes more sense to track here.)

I cover neuroevolution in Chapter 11 from Nature of Code. (Chapters 9 and 10 have the base material about genetic algorithms and neural network fundamentals).

The functions I added to ml5.neuralNetwork to make neuroevolution "easier" are crossover() and mutate(). I think these are missing from the docs and there might be other elements also missing? I don't remember as I hacked all this together while writing the book under tight deadlines!

There is also this discussion with @ziyuan-linn which may be relevant: https://github.com/ml5js/ml5-next-gen/pull/138

Finally, I highly recommend the work on David Ha for a deeper dive into neuroevolution!

sharellb commented 4 months ago

Awesome, thanks so much @shiffman! I plan to take a look at these starting next week and track questions/updates here

QuinnHe commented 4 months ago

Hi Moon @MOQN, maybe we could discuss whether we add neuroevolution to NN page, or have a dedicated page for it.

Some ideas come to my mind:

  1. list crossover() and mutate() on NN page, and add lightbulb tips saying "this is related to neuroevolution, and please check out our neuroevolution page to learn more"
  2. create a neuroevolution page that has the same formats as other pages, also has demo, example, step by step guidance, and then link to Dan's chapter

OR

  1. create a neuroevolution page that will be included in "Learn" section, make it as an advanced topic. And within that page, we can link to Dan's chapter

OR

  1. we don't have a dedicated page for neuroevolution, we can simply link to Dan's chapter within the Methods of NN

cc @shiffman @sharellb

MOQN commented 4 months ago

@QuinnHe Thanks for addressing this! I am currently indecisive about whether to have a reference page or a page in the Learn section. Let's discuss it (and Gottfried's suggestion) in a webteam meeting?

shiffman commented 4 months ago

I don't feel strongly about this either way but I think it's ok to go with:

we don't have a dedicated page for neuroevolution, we can simply link to Dan's chapter within the Methods of NN

It's not clear to me whether people will use the neuroevolution features of ml5.js broadly or if it's a niche thing just for the nature of code book readers. So I think just documenting them and linking out to my materials is a fine way to start! And if we get a lot of questions or see a lot of neuroevolution projects maybe we build it out more?

QuinnHe commented 4 months ago

I don't feel strongly about this either way but I think it's ok to go with:

we don't have a dedicated page for neuroevolution, we can simply link to Dan's chapter within the Methods of NN

It's not clear to me whether people will use the neuroevolution features of ml5.js broadly or if it's a niche thing just for the nature of code book readers. So I think just documenting them and linking out to my materials is a fine way to start! And if we get a lot of questions or see a lot of neuroevolution projects maybe we build it out more?

Sounds good!! On it, will have them ready before next regroup. Thanks Dan!

QuinnHe commented 3 months ago

done, please review #154 @MOQN

updates: PR merged.

QuinnHe commented 3 months ago

Resolved by #154 .