Skip to content

Commit

Permalink
Update documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
weisscharlesj committed Aug 18, 2024
1 parent 667bd08 commit 74ba2dc
Show file tree
Hide file tree
Showing 198 changed files with 321,259 additions and 11,259 deletions.
8,809 changes: 8,809 additions & 0 deletions _images/01df02a3f4aedb031dab9dbe07fcc74fa3002ab646639720f5ec7d4dfce3ba7a.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1,841 changes: 1,841 additions & 0 deletions _images/0d248390e9edfb25358984270fd751322a6492e941083a47b53eec8ffb665967.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1,811 changes: 1,811 additions & 0 deletions _images/0db7e6618888a5e60c220b9d66ea1e41db247d180d527e1084372edeffff3ce3.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3,549 changes: 3,549 additions & 0 deletions _images/0eb1271ae823732300cd8799eca41e2583d022dcacf4922070b9d9d0353d696a.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1,816 changes: 1,816 additions & 0 deletions _images/137496664162b779d23fc62c04c4c6a90b083f8acda43d8719baec03d24b139b.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1,811 changes: 1,811 additions & 0 deletions _images/1531bcc1700495ae079dcae61eac15d2057ef22380a49d9ed94f6211db6da8f7.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1,816 changes: 1,816 additions & 0 deletions _images/15bab401a0d1eea0291deed40796cb89a16d45f8be8eec8dace0fdb8c63855b4.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1,841 changes: 1,841 additions & 0 deletions _images/15ebb13fd164329a4139fc096401c5e697676974734f68905590060241e85c06.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1,236 changes: 1,236 additions & 0 deletions _images/165eb49c9e9a4099c6eef1835c657b1522bb8f9677bdb5440751670f793d85d6.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8,809 changes: 8,809 additions & 0 deletions _images/19db305e22df9f567ab162d998ca846b8c50e2a68984287358fc4b0823bd0959.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1,271 changes: 1,271 additions & 0 deletions _images/1b0db3fb7769cbe2845f39e14c49fa7e477d9c976f7b7e03ef2125a1c97bcf4f.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1,816 changes: 1,816 additions & 0 deletions _images/1bbed8e6e8279e6ab080c41e22d3fd1b346610ae49d72e4f7c8daee2d143d68e.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1,236 changes: 1,236 additions & 0 deletions _images/1bd483c6182a70003db45f294bcc5de3503bf9db9fa2e400c0f2df799018f293.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

Large diffs are not rendered by default.

1,298 changes: 1,298 additions & 0 deletions _images/24d518c40f6336f11e758df73af90efaaf6d9e8abd928d24be9493829cfe859a.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

8,809 changes: 8,809 additions & 0 deletions _images/279b2eb2f3c876ff10a30c3004ff24e425d8bda7780424fec27fd745ec17c849.svg

Large diffs are not rendered by default.

8,809 changes: 8,809 additions & 0 deletions _images/2a5b632b29ff189932509e4dce26072fcfdf334a840f24ad1a20930b36c8d708.svg

Large diffs are not rendered by default.

1,236 changes: 1,236 additions & 0 deletions _images/2a77a97f3c2d2c94ee5815a01ba8548f4ea283208b6ac01f4f9073ecc9802a36.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,836 changes: 1,836 additions & 0 deletions _images/31353f554a40ea73411752667a98f31ee83eaa8cb7610b9af61ac2ac9dbe9237.svg

Large diffs are not rendered by default.

1,298 changes: 1,298 additions & 0 deletions _images/3135af2e82e25e7a7598fd1ee97ce0e67816c50db9111ea9db44473ce069cfc0.svg

Large diffs are not rendered by default.

1,298 changes: 1,298 additions & 0 deletions _images/31d25ef251789930fc31bd398dfb676513ae7efcea0e466b8caa91400ad42da7.svg

Large diffs are not rendered by default.

1,811 changes: 1,811 additions & 0 deletions _images/33959f372d895b26b2e22d4ee6ef1219986292cfa3936aff5ee79e4a720efc36.svg

Large diffs are not rendered by default.

1,816 changes: 1,816 additions & 0 deletions _images/33c0e6cc72b338678342fdd9f5ee2131a5a88b3d3949dcd725200333d477e1a7.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

3,584 changes: 3,584 additions & 0 deletions _images/384950f001923fc83b321cc1c8dee2ed0169dd45200269b19a4bb927634e28c9.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,836 changes: 1,836 additions & 0 deletions _images/3b4b1251779c8c3bd7a6dd33123f9410d545a94082f2b9cfef6d525f19b5798f.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

3,063 changes: 3,063 additions & 0 deletions _images/40df641a60de08837cf810d1a9657377d2789eaf885c5b62abdf15f979599e7f.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,836 changes: 1,836 additions & 0 deletions _images/4871b28dcf5a8d1d75e667197cfe313da340c5cfb9510c6364bbb1cf86b85ee1.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,298 changes: 1,298 additions & 0 deletions _images/5000069f8fcdc35c90fc9c1b67c4b333891b303ab9e2263d4edd1b6fbeffe93f.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,236 changes: 1,236 additions & 0 deletions _images/57a74599b8bac4cfaad84a92f2b0fc7d3f8bfd6b9859721c0eccf9ff5fcd1dea.svg

Large diffs are not rendered by default.

1,049 changes: 1,049 additions & 0 deletions _images/57b7266fc28e48f001ddc566e3e038739298ac17babad437f2c54ec716fdbead.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,816 changes: 1,816 additions & 0 deletions _images/5d8fbfcab6749ce0165567ddf7d1a3e0b78df837c00b983465fb92ebdec4790a.svg

Large diffs are not rendered by default.

1,841 changes: 1,841 additions & 0 deletions _images/5ef4a245d6130b96cc3e33f75a5e134ed7a0d7ee325388d02b69a4eb69e6ccfe.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,236 changes: 1,236 additions & 0 deletions _images/65f6e4496fd4c7db888971c3b88272b20af6e50350c333d322d3a59d1cd1bc9f.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

8,809 changes: 8,809 additions & 0 deletions _images/67b4609a395662fdd6f0b9325b8e6487456120e253d679cf5a76da8684485f8a.svg

Large diffs are not rendered by default.

1,811 changes: 1,811 additions & 0 deletions _images/67c5c083fe4f0a1640515bc286330d6ba0ece11b55362252c31f08a19efe4d4f.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,298 changes: 1,298 additions & 0 deletions _images/67e193a6c0c72856a84152d6b1f96df32c23431aba49cfe6f057dd0c60ef5ef5.svg

Large diffs are not rendered by default.

8,809 changes: 8,809 additions & 0 deletions _images/68402d7dfcbe5baee8cb8c2a9f9ba61c9f6216fd6f3d7a2fc6f2a4fbfa2b0f42.svg

Large diffs are not rendered by default.

1,811 changes: 1,811 additions & 0 deletions _images/68470d51fafbca6f8b006245c80e9311a7d73cf8c652a8f2f23c32c0278a10bd.svg

Large diffs are not rendered by default.

1,841 changes: 1,841 additions & 0 deletions _images/6944ff9438b45bb532c54541022ee51373248814c29c152c92cecf88f2043d57.svg

Large diffs are not rendered by default.

8,809 changes: 8,809 additions & 0 deletions _images/6c0b0c80f175ae799d381d88b91628234d1a3f6ba203e95e9c58ce1cfc79b8fe.svg

Large diffs are not rendered by default.

1,236 changes: 1,236 additions & 0 deletions _images/6c9c08e40f37761167f721c50c79fe49b0e9bb0507b0747b2b58de3f84275ace.svg

Large diffs are not rendered by default.

1,841 changes: 1,841 additions & 0 deletions _images/6d9845ad086f44b56dca6a892b7f9092d1861500e7471a1d37473ec24af8b0b2.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,298 changes: 1,298 additions & 0 deletions _images/74600cb43f19bab99a36f991bfdb6e5854087fcc2b73d520543950d13fc3337c.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,811 changes: 1,811 additions & 0 deletions _images/7a1b45f592f733674e8a1d4afac01e04a2be38645040e98ccc48d1be9d63d3aa.svg

Large diffs are not rendered by default.

1,236 changes: 1,236 additions & 0 deletions _images/7a4812f53ed315e0643edb837292be2497b539ae44d2ef1f9c519b23e7bf36e9.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,841 changes: 1,841 additions & 0 deletions _images/80b4409f5f154d682ee33845383f2383132741eb5e8a0ec46011e6a2463adccf.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,836 changes: 1,836 additions & 0 deletions _images/8478bdcf6316369ab4e01439590df309d8f3326222f099797605f519707bc553.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,816 changes: 1,816 additions & 0 deletions _images/852854dadc810b4c565ce4d65612ee0be73e338c16161ea9d6bc2bbc85157313.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,816 changes: 1,816 additions & 0 deletions _images/8a482deb327d33b7ae7f29db6c0418a2dbed13a1e9f1ec2f6ee7c4182793f7ea.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,841 changes: 1,841 additions & 0 deletions _images/8ec831936d1d846a841afd241a934c890740ed0c0f10ef6e7dd9d4e0bf8de737.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,811 changes: 1,811 additions & 0 deletions _images/930cf36b5da01c111fdc2c81cf58d349eeb0bd4f321069ee65dd43135ef84346.svg

Large diffs are not rendered by default.

1,816 changes: 1,816 additions & 0 deletions _images/94ef031f878e6ba4bdd944cae6048f996060c054bf54cb297ebfc970b7e64225.svg

Large diffs are not rendered by default.

1,811 changes: 1,811 additions & 0 deletions _images/96ab1ef9c9124f685051fc85dba8a53cea7fdbe2fbf529a2ba9565cf3b5e9850.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,816 changes: 1,816 additions & 0 deletions _images/9912168e424424ad21006db61fd77b0d6b5057b56b1a61494a454d2aad937659.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,836 changes: 1,836 additions & 0 deletions _images/99e1e580e59192bcf20dae4048443c44aeaede81e1674087d79a12501e4af8c0.svg

Large diffs are not rendered by default.

1,236 changes: 1,236 additions & 0 deletions _images/9a7aaed851095ee2e65d365c6bacf9b8a770fa0fa43951b9657d35d32cf78a5c.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,298 changes: 1,298 additions & 0 deletions _images/a5cc796451b423949b1f2dbb66e0cfe715d032306db483d62747930fed5a5227.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,811 changes: 1,811 additions & 0 deletions _images/aab356f8bed7950a3ef784598dfa70bf5c95d98fa90743e37eb8bf5ba8f552b0.svg

Large diffs are not rendered by default.

1,816 changes: 1,816 additions & 0 deletions _images/ac41960eca891026e33b0106963a7cb9bb7c35da1407fe532e8ab23d741a817c.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,841 changes: 1,841 additions & 0 deletions _images/b31944d3223b0b768c3d7b1eb98312945e1132180f137d16ef4aa9b640ba40b5.svg

Large diffs are not rendered by default.

1,841 changes: 1,841 additions & 0 deletions _images/b4c53d45d36dd533590871359fdb4cbb7b1d52c914ee70cf15ce0cbbdd581c1d.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,236 changes: 1,236 additions & 0 deletions _images/c0e3f4a5c0cd932f744cc88466bcbbd48ef8a2f067e552f4b6e7891fbfd67fdd.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

8,809 changes: 8,809 additions & 0 deletions _images/c708148d228014fa3d09259f4c2fdb0cae7e940b9835affc40fbca680f49a2b2.svg

Large diffs are not rendered by default.

1,836 changes: 1,836 additions & 0 deletions _images/c8ffbd9d3ec4d6ff6afc7ff4408f1a98017064600a7487460eb7126e3d4ca1d5.svg

Large diffs are not rendered by default.

3,283 changes: 3,283 additions & 0 deletions _images/c9a10d98630e8a927d1ad8aabc754926a4bbffefe1d946429a18ba4fb5fc8715.svg

Large diffs are not rendered by default.

1,236 changes: 1,236 additions & 0 deletions _images/c9f5320b3d3a1ff2da928a0b058599e4c059098f37dd065b09f644692e2dcf54.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,836 changes: 1,836 additions & 0 deletions _images/cb87a180f4168a82b39bbffac9887d9717032ad7bd7bb5087cc28269a9fb8589.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,236 changes: 1,236 additions & 0 deletions _images/d1fd4857a21be625966e606581e7de1379d343c600e51eab2c85a3f1a2b00d6e.svg

Large diffs are not rendered by default.

1,298 changes: 1,298 additions & 0 deletions _images/d26759e64bf9bb7cd7c37b808382fc011f911fe700d612ae8c3c83fefde5ed83.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,298 changes: 1,298 additions & 0 deletions _images/d8b58bdfd8ba0695ab60b8532b28d0f5771d9216da8bf03768509064355fdc9c.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

8,809 changes: 8,809 additions & 0 deletions _images/e42a24ef3d00c3ded90df02b28eb609871d62e34ad00ad8d558331d8611fe654.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,836 changes: 1,836 additions & 0 deletions _images/e43aada1aa919d11f3d5477783890e54271aaf08675c54cd9a847fd47b62f63f.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,836 changes: 1,836 additions & 0 deletions _images/e56302a1f2f65a7b8de73ed13f71944e88818c01cb3f94fd4f373468132b739e.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

5,359 changes: 5,359 additions & 0 deletions _images/e679e178dd92eeb9432dbcf7533aa38a9d67c679a60bca68871de42e335ceaf8.svg

Large diffs are not rendered by default.

1,811 changes: 1,811 additions & 0 deletions _images/e75917c470ed8aedbb2b1f7eba44663071fa645346a3bfb8a0734dd352189765.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,298 changes: 1,298 additions & 0 deletions _images/e814c1eab720122aac8e726d0272b0e8b47c2ed011b78d6650a88bab59edeba1.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

8,809 changes: 8,809 additions & 0 deletions _images/ec62664e60af33dfdb81b84c82ea9456c6e871fa9f2bdc4651e2011b1d66fc80.svg

Large diffs are not rendered by default.

8,809 changes: 8,809 additions & 0 deletions _images/eca14a9798688712e5b1b08d714b9b66fc89965866441511eaa22516ef7ec183.svg

Large diffs are not rendered by default.

1,836 changes: 1,836 additions & 0 deletions _images/eeeecae878959ffbf7213f0445701ed5725d1da2ce47c02b612601face275bd4.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,298 changes: 1,298 additions & 0 deletions _images/f3f49a6c4bfce1b4b31c50bf5ac71f2b9717ea9321c13e36bb32ac743b8fe5d8.svg

Large diffs are not rendered by default.

1,816 changes: 1,816 additions & 0 deletions _images/f40645277cc75cb15a8dd8f1c1a9031219ee9b8b9772ed6e95877451c91ce6cf.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,811 changes: 1,811 additions & 0 deletions _images/f909338d1b04df9c8a1df8c06ca83d97deacb0072e5196d91ca3291fd360ee60.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,841 changes: 1,841 additions & 0 deletions _images/f9c38e7fedfbc43a3886a12e6bff265e3b79dfa666e880ba2dabcfaca5cc1ca8.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,836 changes: 1,836 additions & 0 deletions _images/fbeb35b1f447b547571b2f7188dbeb699e7d1dc4d586096ef881f6d0fbebd51c.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

1,841 changes: 1,841 additions & 0 deletions _images/fc4f8715322869a489019bfea9e8ab2e84fc28a7234379fbcdaf1b297dd1ddaf.svg

Large diffs are not rendered by default.

Large diffs are not rendered by default.

292 changes: 152 additions & 140 deletions _sources/notebooks/chapter_05/chap_05_notebook.ipynb

Large diffs are not rendered by default.

8,187 changes: 4,799 additions & 3,388 deletions _sources/notebooks/chapter_11/chap_11_notebook.ipynb

Large diffs are not rendered by default.

15,276 changes: 7,670 additions & 7,606 deletions _sources/notebooks/chapter_12/chap_12_notebook.ipynb

Large diffs are not rendered by default.

56 changes: 31 additions & 25 deletions notebooks/chapter_05/chap_05_notebook.html

Large diffs are not rendered by default.

203 changes: 125 additions & 78 deletions notebooks/chapter_11/chap_11_notebook.html

Large diffs are not rendered by default.

42 changes: 21 additions & 21 deletions notebooks/chapter_12/chap_12_notebook.html
Original file line number Diff line number Diff line change
Expand Up @@ -556,7 +556,7 @@ <h2> Contents </h2>
</div>
</div>
<div class="cell_output docutils container">
<img alt="../../_images/fbd69499546a119a61dc9f92c26f9fe6b5f110e80fb329d5b1abff4069c4b181.svg" src="../../_images/fbd69499546a119a61dc9f92c26f9fe6b5f110e80fb329d5b1abff4069c4b181.svg" />
<img alt="../../_images/1b0db3fb7769cbe2845f39e14c49fa7e477d9c976f7b7e03ef2125a1c97bcf4f.svg" src="../../_images/1b0db3fb7769cbe2845f39e14c49fa7e477d9c976f7b7e03ef2125a1c97bcf4f.svg" />
</div>
</div>
</section>
Expand Down Expand Up @@ -1071,7 +1071,7 @@ <h2> Contents </h2>
</div>
</div>
<div class="cell_output docutils container">
<img alt="../../_images/58dd891d60daea45930ebf73d85a8047e410c30bbe9dee3d85449330007d791f.svg" src="../../_images/58dd891d60daea45930ebf73d85a8047e410c30bbe9dee3d85449330007d791f.svg" />
<img alt="../../_images/9b1903ed607516c75c8bb31b753ee5ef2f5cf622c1c7a8ab6da63b90b7ef5d99.svg" src="../../_images/9b1903ed607516c75c8bb31b753ee5ef2f5cf622c1c7a8ab6da63b90b7ef5d99.svg" />
</div>
</div>
<p>This is a substantial improvement from using only the molecular weight to make predictions! If the above code is run again, the results will likely vary because the <code class="docutils literal notranslate"><span class="pre">train_test_split()</span></code> function randomly splits the data set, so each time the above code is run, the algorithm is trained and tested on different portions of the original data set.</p>
Expand All @@ -1086,7 +1086,7 @@ <h2> Contents </h2>
</div>
</div>
<div class="cell_output docutils container">
<div class="output text_plain highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>0.9738116533899366
<div class="output text_plain highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>0.9738116533899365
</pre></div>
</div>
</div>
Expand Down Expand Up @@ -1124,7 +1124,7 @@ <h2> Contents </h2>
</div>
</div>
<div class="cell_output docutils container">
<div class="output text_plain highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>array([0.89586373, 0.95510733, 0.97638277, 0.94560713, 0.94590579])
<div class="output text_plain highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>array([0.94072472, 0.96488556, 0.96473378, 0.99646621, 0.96897233])
</pre></div>
</div>
</div>
Expand All @@ -1137,7 +1137,7 @@ <h2> Contents </h2>
</div>
</div>
<div class="cell_output docutils container">
<div class="output text_plain highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>0.9437733505216374
<div class="output text_plain highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>np.float64(0.967156520158337)
</pre></div>
</div>
</div>
Expand Down Expand Up @@ -1624,8 +1624,8 @@ <h2> Contents </h2>
</div>
</div>
<div class="cell_output docutils container">
<div class="output text_plain highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>array([-989.70417275, 1194.74363874, -29.23666068, 11.72337468,
-15.73980333, 12.26163227])
<div class="output text_plain highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>array([-963.23274446, 1161.64946502, -30.87447331, 13.49861616,
-13.26299315, 12.48242665])
</pre></div>
</div>
</div>
Expand Down Expand Up @@ -1695,8 +1695,8 @@ <h2> Contents </h2>
</div>
</div>
<div class="cell_output docutils container">
<div class="output text_plain highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>array([2, 0, 0, 0, 0, 2, 1, 2, 0, 0, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 2, 0,
1, 2, 0, 0, 0, 2, 2, 0, 2])
<div class="output text_plain highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>array([0, 0, 0, 0, 0, 2, 1, 0, 0, 0, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 2, 0,
1, 2, 0, 1, 0, 2, 2, 0, 2])
</pre></div>
</div>
</div>
Expand All @@ -1709,7 +1709,7 @@ <h2> Contents </h2>
</div>
</div>
<div class="cell_output docutils container">
<div class="output text_plain highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>0.6451612903225806
<div class="output text_plain highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>0.7096774193548387
</pre></div>
</div>
</div>
Expand All @@ -1733,8 +1733,8 @@ <h2> Contents </h2>
</div>
</div>
<div class="cell_output docutils container">
<div class="output text_plain highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>array([[10, 0, 2],
[ 2, 2, 1],
<div class="output text_plain highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>array([[11, 0, 1],
[ 2, 3, 0],
[ 6, 0, 8]])
</pre></div>
</div>
Expand All @@ -1752,7 +1752,7 @@ <h2> Contents </h2>
</div>
</div>
<div class="cell_output docutils container">
<img alt="../../_images/5f1916357284bfb9a4ee39074f4dadf1c7a89f67d47d88c367771611c61996d5.svg" src="../../_images/5f1916357284bfb9a4ee39074f4dadf1c7a89f67d47d88c367771611c61996d5.svg" />
<img alt="../../_images/72b78262644b9524d68de57a99aa6efbcb669324ceda6f512c9b91dcca9ea976.svg" src="../../_images/72b78262644b9524d68de57a99aa6efbcb669324ceda6f512c9b91dcca9ea976.svg" />
</div>
</div>
<p>Every value in the diagonal has the same predicted category as the true value, making them correct predictions, whereas anything off diagonal are incorrect predictions. For example, the bottom left corner shows that six instance were predicted as category 2 but really belong to category 0. Examination of the confusion matrix shows that the most common erroneous prediction is a category 0. This could be due to, for example, the fact that alcohols and amines both tend to have degrees of unsaturation of zero in this data set.</p>
Expand Down Expand Up @@ -1922,7 +1922,7 @@ <h2> Contents </h2>
</div>
</div>
<div class="cell_output docutils container">
<img alt="../../_images/5563694ba749e3ea25e66855e38cd4a11d2f514bf3f7e67fa1870691e29f58c9.svg" src="../../_images/5563694ba749e3ea25e66855e38cd4a11d2f514bf3f7e67fa1870691e29f58c9.svg" />
<img alt="../../_images/1ec9445ed6aea25376eba9fa64a2274c2f3de2eb2937b0eeb8efb43372baf3d9.svg" src="../../_images/1ec9445ed6aea25376eba9fa64a2274c2f3de2eb2937b0eeb8efb43372baf3d9.svg" />
</div>
</div>
<p>We can see that the three categories of wine all form cohesive clusters with class 0 and 2 being well resolved and class 1 exhibiting slight overlap with the other two classes of wine. This suggests that we should have better luck distinguishing between class 0 and 2 than between these two classes and class 1.</p>
Expand All @@ -1946,7 +1946,7 @@ <h2> Contents </h2>
</div>
</div>
<div class="cell_output docutils container">
<img alt="../../_images/bd5d97070b0b07052482042095342ee48e6966cff223f6b190e55a3724d1a911.svg" src="../../_images/bd5d97070b0b07052482042095342ee48e6966cff223f6b190e55a3724d1a911.svg" />
<img alt="../../_images/57b7266fc28e48f001ddc566e3e038739298ac17babad437f2c54ec716fdbead.svg" src="../../_images/57b7266fc28e48f001ddc566e3e038739298ac17babad437f2c54ec716fdbead.svg" />
</div>
</div>
<p>We can see three distinct clusters with the cluster on the bottom being more distinct than the two at the top. Also notice that the scales of the two features are different by roughly a factor of two. Before we can use this data, we will need to normalize the scale of both features as clustering algorithms are sensitive to scale. For this task, we will use the <code class="docutils literal notranslate"><span class="pre">StandardScaler()</span></code> function introduced in <a class="reference internal" href="#id16"><span class="std std-ref">section 12.2.5</span></a>.</p>
Expand Down Expand Up @@ -2405,7 +2405,7 @@ <h2> Contents </h2>
</div>
</div>
<div class="cell_output docutils container">
<img alt="../../_images/a1ed0eef273d148e0a5ca393a47f965f748747342b211f5b7105f873cc862909.svg" src="../../_images/a1ed0eef273d148e0a5ca393a47f965f748747342b211f5b7105f873cc862909.svg" />
<img alt="../../_images/37be6d7165faf50e9b62403307419d121acac3aff4f75e3e726f7985b3f8dacf.svg" src="../../_images/37be6d7165faf50e9b62403307419d121acac3aff4f75e3e726f7985b3f8dacf.svg" />
</div>
</div>
</section>
Expand All @@ -2415,7 +2415,7 @@ <h2> Contents </h2>
<p>To demonstrate this process, we will use infrared (IR) spectroscopy data containing mixtures of acetone, cyclohexane, toluene, and methanol in random ratios. Below are plots of four mixtures. We can see that, for example, the bands at ~3400 cm<span class="math notranslate nohighlight">\(^{-1}\)</span> and ~1000 cm<span class="math notranslate nohighlight">\(^{-1}\)</span> increase together suggesting that they originate from the same compound; this type of information can be used to discriminate which band belongs to which compound. However, instead of doing this manually, we can allow the machine learning algorithms to pick apart the spectra, and even better yet, yield complete spectra of each component.</p>
<div class="cell tag_remove-input docutils container">
<div class="cell_output docutils container">
<img alt="../../_images/7bffb6cbde1ae4a790f5e0900253faa995fd4a4bd594ca3c5b7557f37440d406.svg" src="../../_images/7bffb6cbde1ae4a790f5e0900253faa995fd4a4bd594ca3c5b7557f37440d406.svg" />
<img alt="../../_images/e679e178dd92eeb9432dbcf7533aa38a9d67c679a60bca68871de42e335ceaf8.svg" src="../../_images/e679e178dd92eeb9432dbcf7533aa38a9d67c679a60bca68871de42e335ceaf8.svg" />
</div>
</div>
<p>For this task, we will use the <em>independent component analysis (ICA)</em> function called <code class="docutils literal notranslate"><span class="pre">fastICA()</span></code> available in scikit-learn. The process parallels the other unsupervised learning processes above of first training the algorithm using the <code class="docutils literal notranslate"><span class="pre">fit()</span></code> method followed by transforming the data using the <code class="docutils literal notranslate"><span class="pre">transform()</span></code> method. First we will load the data from the files and stack them into an array called <code class="docutils literal notranslate"><span class="pre">S_mix</span></code> where each column contains the data from a spectrum. For comparison purposes, we will also load IR spectra of each pure component into an array called <code class="docutils literal notranslate"><span class="pre">S_pure</span></code>. Normally we would not have spectra of pure components, hence the “blind” in blind singal seperation, but this is just an example.</p>
Expand Down Expand Up @@ -2505,7 +2505,7 @@ <h2> Contents </h2>
</div>
</div>
<div class="cell_output docutils container">
<img alt="../../_images/8315bf794008f2a0edd5b81ef8fcc537e1154905d892ba274175d6f8f6deeb86.svg" src="../../_images/8315bf794008f2a0edd5b81ef8fcc537e1154905d892ba274175d6f8f6deeb86.svg" />
<img alt="../../_images/c9a10d98630e8a927d1ad8aabc754926a4bbffefe1d946429a18ba4fb5fc8715.svg" src="../../_images/c9a10d98630e8a927d1ad8aabc754926a4bbffefe1d946429a18ba4fb5fc8715.svg" />
</div>
</div>
<div class="cell docutils container">
Expand All @@ -2527,7 +2527,7 @@ <h2> Contents </h2>
</div>
</div>
<div class="cell_output docutils container">
<img alt="../../_images/c60e8a9583f2f7c4ab3867966bac84a64ed975f297210b26aba762b677857603.svg" src="../../_images/c60e8a9583f2f7c4ab3867966bac84a64ed975f297210b26aba762b677857603.svg" />
<img alt="../../_images/0eb1271ae823732300cd8799eca41e2583d022dcacf4922070b9d9d0353d696a.svg" src="../../_images/0eb1271ae823732300cd8799eca41e2583d022dcacf4922070b9d9d0353d696a.svg" />
</div>
</div>
<div class="cell docutils container">
Expand All @@ -2549,7 +2549,7 @@ <h2> Contents </h2>
</div>
</div>
<div class="cell_output docutils container">
<img alt="../../_images/9d17b99abcf0ddaaed5f7443acf2b10347d43dd94516a29fe123800fcd9fd52e.svg" src="../../_images/9d17b99abcf0ddaaed5f7443acf2b10347d43dd94516a29fe123800fcd9fd52e.svg" />
<img alt="../../_images/384950f001923fc83b321cc1c8dee2ed0169dd45200269b19a4bb927634e28c9.svg" src="../../_images/384950f001923fc83b321cc1c8dee2ed0169dd45200269b19a4bb927634e28c9.svg" />
</div>
</div>
<div class="cell docutils container">
Expand All @@ -2571,7 +2571,7 @@ <h2> Contents </h2>
</div>
</div>
<div class="cell_output docutils container">
<img alt="../../_images/563b800d8106f85dc1f9391f32787489794335407263a72eba314cd86b8cdb93.svg" src="../../_images/563b800d8106f85dc1f9391f32787489794335407263a72eba314cd86b8cdb93.svg" />
<img alt="../../_images/40df641a60de08837cf810d1a9657377d2789eaf885c5b62abdf15f979599e7f.svg" src="../../_images/40df641a60de08837cf810d1a9657377d2789eaf885c5b62abdf15f979599e7f.svg" />
</div>
</div>
<p>Overall, the fastICA algorithm did a decent job - sometimes even impressive job of picking out small features, but there are some discrepancies between the extracted and pure IR spectra. The first is that there are peaks that extend above the extracted spectra. A transmittance over 100% is not possible, but the algorithm does not know this. The <em>y</em>-axis scales of the extracted IR spectra also do not match the percent transmittance. While it is not shown here, sometimes the extracted components are also upside down. This is because the mixtures are assumed to be weighted sums of the components, and a component can be negative. If this bothers you, there is a related BSS algorithm called <em>non-negative matrix factorization (NMF)</em> supported in scikit-learn which requires each component to be non-negative. Finally, you may notice that there is a broad feature at around 3400 cm<span class="math notranslate nohighlight">\(^{-1}\)</span> in the acetone extracted component that is not in the pure compound. This is an O-H stretch from the methanol IR spectrum showing up in the acetone spectrum. This may be the result of hydrogen-bonding between methanol and acetone shifting the O-H band breaking down the assumption that the spectra of mixtures are purely additive.</p>
Expand Down
2 changes: 1 addition & 1 deletion searchindex.js

Large diffs are not rendered by default.

0 comments on commit 74ba2dc

Please sign in to comment.