commit f2b4eaadb93785b0a082353b506e711ce0e994ae Author: ktyl Date: Fri Jan 24 13:21:11 2025 +0000 week 1 diff --git a/Pipfile b/Pipfile new file mode 100644 index 0000000..5edeb72 --- /dev/null +++ b/Pipfile @@ -0,0 +1,29 @@ +[[source]] +url = "https://pypi.org/simple" +verify_ssl = true +name = "pypi" + +[packages] +numpy = "==1.24.3" +matplotlib = "==3.7.4" +pandas = "==2.0.3" +scikit-learn = "==1.3.2" +seaborn = "==0.13.1" +tensorflow = "==2.13.1" +tensorflow-datasets = "==4.9.2" +jupyterlab = "==4.0.10" +jupyter-book = "==0.15.1" +astroml = "==1.0.2.post1" +nbdime = "==4.0.1" +boto3 = "==1.34.15" +pyarrow = "==14.0.2" +pyspark = "==3.5.0" +pyppeteer = "==1.0.2" +dvc = "==3.38.1" +jupyterlab-rise = "*" + +[dev-packages] + +[requires] +python_version = "3.11" +python_full_version = "3.11.11" diff --git a/Pipfile.lock b/Pipfile.lock new file mode 100644 index 0000000..6935192 --- /dev/null +++ b/Pipfile.lock @@ -0,0 +1,4296 @@ +{ + "_meta": { + "hash": { + "sha256": "c80e309de6ff51f72f12b0bc9b2e5d45339dce4a15e7378f1fdea072111443fe" + }, + "pipfile-spec": 6, + "requires": { + "python_full_version": "3.11.11", + "python_version": "3.11" + }, + "sources": [ + { + "name": "pypi", + "url": "https://pypi.org/simple", + "verify_ssl": true + } + ] + }, + "default": { + "absl-py": { + "hashes": [ + "sha256:526a04eadab8b4ee719ce68f204172ead1027549089702d99b9059f129ff1308", + "sha256:7820790efbb316739cde8b4e19357243fc3608a152024288513dd968d7d959ff" + ], + "markers": "python_version >= '3.7'", + "version": "==2.1.0" + }, + "accessible-pygments": { + "hashes": [ + "sha256:40918d3e6a2b619ad424cb91e556bd3bd8865443d9f22f1dcdf79e33c8046872", + "sha256:88ae3211e68a1d0b011504b2ffc1691feafce124b845bd072ab6f9f66f34d4b7" + ], + "markers": "python_version >= '3.9'", + "version": "==0.0.5" + }, + "aiohappyeyeballs": { + "hashes": [ + "sha256:5fdd7d87889c63183afc18ce9271f9b0a7d32c2303e394468dd45d514a757745", + "sha256:a980909d50efcd44795c4afeca523296716d50cd756ddca6af8c65b996e27de8" + ], + "markers": "python_version >= '3.8'", + "version": "==2.4.4" + }, + "aiohttp": { + "hashes": [ + "sha256:0882c2820fd0132240edbb4a51eb8ceb6eef8181db9ad5291ab3332e0d71df5f", + "sha256:0a6d3fbf2232e3a08c41eca81ae4f1dff3d8f1a30bae415ebe0af2d2458b8a33", + "sha256:0b7fb429ab1aafa1f48578eb315ca45bd46e9c37de11fe45c7f5f4138091e2f1", + "sha256:0eb98d90b6690827dcc84c246811feeb4e1eea683c0eac6caed7549be9c84665", + "sha256:0fd82b8e9c383af11d2b26f27a478640b6b83d669440c0a71481f7c865a51da9", + "sha256:10b4ff0ad793d98605958089fabfa350e8e62bd5d40aa65cdc69d6785859f94e", + "sha256:1642eceeaa5ab6c9b6dfeaaa626ae314d808188ab23ae196a34c9d97efb68350", + "sha256:1dac54e8ce2ed83b1f6b1a54005c87dfed139cf3f777fdc8afc76e7841101226", + "sha256:1e69966ea6ef0c14ee53ef7a3d68b564cc408121ea56c0caa2dc918c1b2f553d", + "sha256:1f21bb8d0235fc10c09ce1d11ffbd40fc50d3f08a89e4cf3a0c503dc2562247a", + "sha256:2170816e34e10f2fd120f603e951630f8a112e1be3b60963a1f159f5699059a6", + "sha256:21fef42317cf02e05d3b09c028712e1d73a9606f02467fd803f7c1f39cc59add", + "sha256:249cc6912405917344192b9f9ea5cd5b139d49e0d2f5c7f70bdfaf6b4dbf3a2e", + "sha256:3499c7ffbfd9c6a3d8d6a2b01c26639da7e43d47c7b4f788016226b1e711caa8", + "sha256:3af41686ccec6a0f2bdc66686dc0f403c41ac2089f80e2214a0f82d001052c03", + "sha256:3e23419d832d969f659c208557de4a123e30a10d26e1e14b73431d3c13444c2e", + "sha256:3ea1b59dc06396b0b424740a10a0a63974c725b1c64736ff788a3689d36c02d2", + "sha256:44167fc6a763d534a6908bdb2592269b4bf30a03239bcb1654781adf5e49caf1", + "sha256:479b8c6ebd12aedfe64563b85920525d05d394b85f166b7873c8bde6da612f9c", + "sha256:4af57160800b7a815f3fe0eba9b46bf28aafc195555f1824555fa2cfab6c1538", + "sha256:4b4fa1cb5f270fb3eab079536b764ad740bb749ce69a94d4ec30ceee1b5940d5", + "sha256:4eed954b161e6b9b65f6be446ed448ed3921763cc432053ceb606f89d793927e", + "sha256:541d823548ab69d13d23730a06f97460f4238ad2e5ed966aaf850d7c369782d9", + "sha256:568c1236b2fde93b7720f95a890741854c1200fba4a3471ff48b2934d2d93fd3", + "sha256:5854be2f3e5a729800bac57a8d76af464e160f19676ab6aea74bde18ad19d438", + "sha256:620598717fce1b3bd14dd09947ea53e1ad510317c85dda2c9c65b622edc96b12", + "sha256:6526e5fb4e14f4bbf30411216780c9967c20c5a55f2f51d3abd6de68320cc2f3", + "sha256:6fba278063559acc730abf49845d0e9a9e1ba74f85f0ee6efd5803f08b285853", + "sha256:70d1f9dde0e5dd9e292a6d4d00058737052b01f3532f69c0c65818dac26dc287", + "sha256:731468f555656767cda219ab42e033355fe48c85fbe3ba83a349631541715ba2", + "sha256:81b8fe282183e4a3c7a1b72f5ade1094ed1c6345a8f153506d114af5bf8accd9", + "sha256:84a585799c58b795573c7fa9b84c455adf3e1d72f19a2bf498b54a95ae0d194c", + "sha256:85992ee30a31835fc482468637b3e5bd085fa8fe9392ba0bdcbdc1ef5e9e3c55", + "sha256:8811f3f098a78ffa16e0ea36dffd577eb031aea797cbdba81be039a4169e242c", + "sha256:88a12ad8ccf325a8a5ed80e6d7c3bdc247d66175afedbe104ee2aaca72960d8e", + "sha256:8be8508d110d93061197fd2d6a74f7401f73b6d12f8822bbcd6d74f2b55d71b1", + "sha256:8e2bf8029dbf0810c7bfbc3e594b51c4cc9101fbffb583a3923aea184724203c", + "sha256:929f3ed33743a49ab127c58c3e0a827de0664bfcda566108989a14068f820194", + "sha256:92cde43018a2e17d48bb09c79e4d4cb0e236de5063ce897a5e40ac7cb4878773", + "sha256:92fc484e34b733704ad77210c7957679c5c3877bd1e6b6d74b185e9320cc716e", + "sha256:943a8b052e54dfd6439fd7989f67fc6a7f2138d0a2cf0a7de5f18aa4fe7eb3b1", + "sha256:9d73ee3725b7a737ad86c2eac5c57a4a97793d9f442599bea5ec67ac9f4bdc3d", + "sha256:9f5b3c1ed63c8fa937a920b6c1bec78b74ee09593b3f5b979ab2ae5ef60d7600", + "sha256:9fd46ce0845cfe28f108888b3ab17abff84ff695e01e73657eec3f96d72eef34", + "sha256:a344d5dc18074e3872777b62f5f7d584ae4344cd6006c17ba12103759d407af3", + "sha256:a60804bff28662cbcf340a4d61598891f12eea3a66af48ecfdc975ceec21e3c8", + "sha256:a8f5f7515f3552d899c61202d99dcb17d6e3b0de777900405611cd747cecd1b8", + "sha256:a9b7371665d4f00deb8f32208c7c5e652059b0fda41cf6dbcac6114a041f1cc2", + "sha256:aa54f8ef31d23c506910c21163f22b124facb573bff73930735cf9fe38bf7dff", + "sha256:aba807f9569455cba566882c8938f1a549f205ee43c27b126e5450dc9f83cc62", + "sha256:ae545f31489548c87b0cced5755cfe5a5308d00407000e72c4fa30b19c3220ac", + "sha256:af01e42ad87ae24932138f154105e88da13ce7d202a6de93fafdafb2883a00ef", + "sha256:b540bd67cfb54e6f0865ceccd9979687210d7ed1a1cc8c01f8e67e2f1e883d28", + "sha256:b6212a60e5c482ef90f2d788835387070a88d52cf6241d3916733c9176d39eab", + "sha256:b63de12e44935d5aca7ed7ed98a255a11e5cb47f83a9fded7a5e41c40277d104", + "sha256:ba74ec819177af1ef7f59063c6d35a214a8fde6f987f7661f4f0eecc468a8f76", + "sha256:bb49c7f1e6ebf3821a42d81d494f538107610c3a705987f53068546b0e90303e", + "sha256:bd176afcf8f5d2aed50c3647d4925d0db0579d96f75a31e77cbaf67d8a87742d", + "sha256:bd7227b87a355ce1f4bf83bfae4399b1f5bb42e0259cb9405824bd03d2f4336a", + "sha256:bf8d9bfee991d8acc72d060d53860f356e07a50f0e0d09a8dfedea1c554dd0d5", + "sha256:bfde76a8f430cf5c5584553adf9926534352251d379dcb266ad2b93c54a29745", + "sha256:c341c7d868750e31961d6d8e60ff040fb9d3d3a46d77fd85e1ab8e76c3e9a5c4", + "sha256:c7a06301c2fb096bdb0bd25fe2011531c1453b9f2c163c8031600ec73af1cc99", + "sha256:cb23d8bb86282b342481cad4370ea0853a39e4a32a0042bb52ca6bdde132df43", + "sha256:d119fafe7b634dbfa25a8c597718e69a930e4847f0b88e172744be24515140da", + "sha256:d40f9da8cabbf295d3a9dae1295c69975b86d941bc20f0a087f0477fa0a66231", + "sha256:d6c9af134da4bc9b3bd3e6a70072509f295d10ee60c697826225b60b9959acdd", + "sha256:dd7659baae9ccf94ae5fe8bfaa2c7bc2e94d24611528395ce88d009107e00c6d", + "sha256:de8d38f1c2810fa2a4f1d995a2e9c70bb8737b18da04ac2afbf3971f65781d87", + "sha256:e595c591a48bbc295ebf47cb91aebf9bd32f3ff76749ecf282ea7f9f6bb73886", + "sha256:ec2aa89305006fba9ffb98970db6c8221541be7bee4c1d027421d6f6df7d1ce2", + "sha256:ec82bf1fda6cecce7f7b915f9196601a1bd1a3079796b76d16ae4cce6d0ef89b", + "sha256:ed9ee95614a71e87f1a70bc81603f6c6760128b140bc4030abe6abaa988f1c3d", + "sha256:f047569d655f81cb70ea5be942ee5d4421b6219c3f05d131f64088c73bb0917f", + "sha256:ffa336210cf9cd8ed117011085817d00abe4c08f99968deef0013ea283547204", + "sha256:ffb3dc385f6bb1568aa974fe65da84723210e5d9707e360e9ecb51f59406cd2e" + ], + "markers": "python_version >= '3.9'", + "version": "==3.11.11" + }, + "aiohttp-retry": { + "hashes": [ + "sha256:66d2759d1921838256a05a3f80ad7e724936f083e35be5abb5e16eed6be6dc54", + "sha256:8eb75e904ed4ee5c2ec242fefe85bf04240f685391c4879d8f541d6028ff01f1" + ], + "markers": "python_version >= '3.7'", + "version": "==2.9.1" + }, + "aiosignal": { + "hashes": [ + "sha256:45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5", + "sha256:a8c255c66fafb1e499c9351d0bf32ff2d8a0321595ebac3b93713656d2436f54" + ], + "markers": "python_version >= '3.9'", + "version": "==1.3.2" + }, + "alabaster": { + "hashes": [ + "sha256:75a8b99c28a5dad50dd7f8ccdd447a121ddb3892da9e53d1ca5cca3106d58d65", + "sha256:b46733c07dce03ae4e150330b975c75737fa60f0a7c591b6c8bf4928a28e2c92" + ], + "markers": "python_version >= '3.9'", + "version": "==0.7.16" + }, + "amqp": { + "hashes": [ + "sha256:43b3319e1b4e7d1251833a93d672b4af1e40f3d632d479b98661a95f117880a2", + "sha256:cddc00c725449522023bad949f70fff7b48f0b1ade74d170a6f10ab044739432" + ], + "markers": "python_version >= '3.6'", + "version": "==5.3.1" + }, + "antlr4-python3-runtime": { + "hashes": [ + "sha256:f224469b4168294902bb1efa80a8bf7855f24c99aef99cbefc1bcd3cce77881b" + ], + "version": "==4.9.3" + }, + "anyio": { + "hashes": [ + "sha256:1d9fe889df5212298c0c0723fa20479d1b94883a2df44bd3897aa91083316f7a", + "sha256:b5011f270ab5eb0abf13385f851315585cc37ef330dd88e27ec3d34d651fd47a" + ], + "markers": "python_version >= '3.9'", + "version": "==4.8.0" + }, + "appdirs": { + "hashes": [ + "sha256:7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41", + "sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + ], + "version": "==1.4.4" + }, + "argon2-cffi": { + "hashes": [ + "sha256:879c3e79a2729ce768ebb7d36d4609e3a78a4ca2ec3a9f12286ca057e3d0db08", + "sha256:c670642b78ba29641818ab2e68bd4e6a78ba53b7eff7b4c3815ae16abf91c7ea" + ], + "markers": "python_version >= '3.7'", + "version": "==23.1.0" + }, + "argon2-cffi-bindings": { + "hashes": [ + "sha256:20ef543a89dee4db46a1a6e206cd015360e5a75822f76df533845c3cbaf72670", + "sha256:2c3e3cc67fdb7d82c4718f19b4e7a87123caf8a93fde7e23cf66ac0337d3cb3f", + "sha256:3b9ef65804859d335dc6b31582cad2c5166f0c3e7975f324d9ffaa34ee7e6583", + "sha256:3e385d1c39c520c08b53d63300c3ecc28622f076f4c2b0e6d7e796e9f6502194", + "sha256:58ed19212051f49a523abb1dbe954337dc82d947fb6e5a0da60f7c8471a8476c", + "sha256:5e00316dabdaea0b2dd82d141cc66889ced0cdcbfa599e8b471cf22c620c329a", + "sha256:603ca0aba86b1349b147cab91ae970c63118a0f30444d4bc80355937c950c082", + "sha256:6a22ad9800121b71099d0fb0a65323810a15f2e292f2ba450810a7316e128ee5", + "sha256:8cd69c07dd875537a824deec19f978e0f2078fdda07fd5c42ac29668dda5f40f", + "sha256:93f9bf70084f97245ba10ee36575f0c3f1e7d7724d67d8e5b08e61787c320ed7", + "sha256:9524464572e12979364b7d600abf96181d3541da11e23ddf565a32e70bd4dc0d", + "sha256:b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f", + "sha256:b746dba803a79238e925d9046a63aa26bf86ab2a2fe74ce6b009a1c3f5c8f2ae", + "sha256:bb89ceffa6c791807d1305ceb77dbfacc5aa499891d2c55661c6459651fc39e3", + "sha256:bd46088725ef7f58b5a1ef7ca06647ebaf0eb4baff7d1d0d177c6cc8744abd86", + "sha256:ccb949252cb2ab3a08c02024acb77cfb179492d5701c7cbdbfd776124d4d2367", + "sha256:d4966ef5848d820776f5f562a7d45fdd70c2f330c961d0d745b784034bd9f48d", + "sha256:e415e3f62c8d124ee16018e491a009937f8cf7ebf5eb430ffc5de21b900dad93", + "sha256:ed2937d286e2ad0cc79a7087d3c272832865f779430e0cc2b4f3718d3159b0cb", + "sha256:f1152ac548bd5b8bcecfb0b0371f082037e47128653df2e8ba6e914d384f3c3e", + "sha256:f9f8b450ed0547e3d473fdc8612083fd08dd2120d6ac8f73828df9b7d45bb351" + ], + "markers": "python_version >= '3.6'", + "version": "==21.2.0" + }, + "array-record": { + "hashes": [ + "sha256:035575c271461f26a0684db5e3b65a487233d0921880933f680e7aeb86130a39", + "sha256:1ea2596fb8bf19eade5e8c2d0dce9c4dc6a9d14222551863d32238f7e5754afe", + "sha256:370cf9bdcdaab7537e897aae017ea607f75ac33378991d2fbb1e52b1fedb2bcf", + "sha256:4c85df128819191a4f85937ab390f59f181ab7b6183626e5d0f5ecab47ecb022", + "sha256:5338900974e2f10b3021b874a4f226783ffdbb0be76c931363a557336d33e478", + "sha256:af81f6ae5404a42962b96f4efacd9a9b098cb2eeddae068cde9be0b8bfbfc457", + "sha256:b28be32f7c81db3ec17d343899a6b5b8ae19f6d6e650448b8044de65774fa3e5", + "sha256:c418b2b83410c630e6662d4ce0156e4e5120ee27ea9ed7672dd87c9cda39a060", + "sha256:c51b53b90c7d4035ae94e8b265196925e6c5f5673aa35e04874aecca78656de3" + ], + "markers": "python_version >= '3.9'", + "version": "==0.6.0" + }, + "arrow": { + "hashes": [ + "sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80", + "sha256:d4540617648cb5f895730f1ad8c82a65f2dad0166f57b75f3ca54759c4d67a85" + ], + "markers": "python_version >= '3.8'", + "version": "==1.3.0" + }, + "astroml": { + "hashes": [ + "sha256:45188a7a88a36ca3ec5a3aa04e5fa227f42d17415a6e168fb523375c1aabe291", + "sha256:e87b2bda2526e678e62954d5230351fe389039390bd0c99a25e6c41a95f863f3" + ], + "index": "pypi", + "version": "==1.0.2.post1" + }, + "astropy": { + "hashes": [ + "sha256:0ada206f13b1e9c9c07ae0fce55e3090d694c555107c23c30b271a58fea1732b", + "sha256:0e5adeb8f955242da5cb4fe58df2f1483d81c10b2b73f089c91fc87dd3b63e1e", + "sha256:14bb14bce6e7cc41066037d8a168b26a5fe6722a9201e9fae8da22a4c34c8780", + "sha256:1ad4483712effdd691c085e7b58805c01a54cebf8f4c6955973ceccd60bd36ed", + "sha256:31614b6451436163eed3744b90edd89dd357bf223c482fa944e627be86a47349", + "sha256:3ced126597ea2d2876a341821d76ba20fb895c2eef117b447b6b3182993794df", + "sha256:446931f9c260294ddc8646684ab2413e1a5eb14dcd4ff1e8a0532fa143b0844e", + "sha256:5c14ca39b607af23273ee2b86cecee782a4feb4220b8f7a93b1dc3fe07582779", + "sha256:62d62d3603bb8b243f6bac21f02341f963418ccf6f299be1d45d8c3918e64c91", + "sha256:6f2ee5872b0fffd8b9c4d9ce9af51c69f24cdad0d2f4fffbabfcfd4debd303f8", + "sha256:733be30f52e7ed5ace7fc5ab9bbfbf1f2f604661682141f177ea356893b58cc4", + "sha256:74c6df5c68cc4acb86e343db6d4b96419d585c7ba5fd41fe3023f47ee9f5dbc9", + "sha256:7ecaaeeb017cceb02512d5505c43e162b3e26d951cece2b021e786f4c0af17a7", + "sha256:9fcfb92043994dfbd1a267b893398aab8f680b0587b4333dacbfa034a3159aa0", + "sha256:b103516dd54a90f9b9652dff3dd47ad6d43436c61ed800023943a562b7ea9712", + "sha256:b47d7af967e51dc612fd8440ed65ad371c0c2bbf5d739ef4aa147bcd2fbe6b13", + "sha256:b7b28a144165e4e7f4f0467fb6d8ed079f320fc99969a907614d98b18c7cea99", + "sha256:c6a14810e596b9d437fbfe40733d61afccc9d4b7b9f7504228ba492f545d197f", + "sha256:d5f5657a1443421b0ab8ae6afa85fc7934f5e384648b7acef21aca5918acfca8", + "sha256:db36b632989060ce4f7c3058ffc860af38df5c8ee7ee7ef2daad1f441c416c12", + "sha256:e92d7c9fee86eb3df8714e5dd41bbf9f163d343e1a183d95bf6bd09e4313c940", + "sha256:f8a00fcb30c2317b111d8b6a99eb60a81e8292c24dce65e986ee4610ea16b8d2" + ], + "markers": "python_version >= '3.11'", + "version": "==7.0.0" + }, + "astropy-iers-data": { + "hashes": [ + "sha256:91f4a18afbd129a48555e27fa3b32dd9507835afd9b02f898d273538a619c759", + "sha256:b1ba36295cd64dda4203928ec283d28c7dc529b6503ed036418dcc09d26b9be4" + ], + "markers": "python_version >= '3.8'", + "version": "==0.2025.1.20.0.32.27" + }, + "asttokens": { + "hashes": [ + "sha256:0dcd8baa8d62b0c1d118b399b2ddba3c4aff271d0d7a9e0d4c1681c79035bbc7", + "sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + ], + "markers": "python_version >= '3.8'", + "version": "==3.0.0" + }, + "astunparse": { + "hashes": [ + "sha256:5ad93a8456f0d084c3456d059fd9a92cce667963232cbf763eac3bc5b7940872", + "sha256:c2652417f2c8b5bb325c885ae329bdf3f86424075c4fd1a128674bc6fba4b8e8" + ], + "version": "==1.6.3" + }, + "async-lru": { + "hashes": [ + "sha256:b8a59a5df60805ff63220b2a0c5b5393da5521b113cd5465a44eb037d81a5627", + "sha256:ff02944ce3c288c5be660c42dbcca0742b32c3b279d6dceda655190240b99224" + ], + "markers": "python_version >= '3.8'", + "version": "==2.0.4" + }, + "asyncssh": { + "hashes": [ + "sha256:723dead4d068b558708dc66a4ca7e7a93a813aa9416036eccb9af4c03ae2cf30", + "sha256:bb82ac30ff0cb4393fbaf1114e606ad7a4f13d6c4bdaed423c033ee26b455228" + ], + "markers": "python_version >= '3.6'", + "version": "==2.19.0" + }, + "atpublic": { + "hashes": [ + "sha256:135783dbd887fbddb6ef032d104da70c124f2b44b9e2d79df07b9da5334825e3", + "sha256:abc1f4b3dbdd841cc3539e4b5e4f3ad41d658359de704e30cb36da4d4e9d3022" + ], + "markers": "python_version >= '3.9'", + "version": "==5.1" + }, + "attrs": { + "hashes": [ + "sha256:8f5c07333d543103541ba7be0e2ce16eeee8130cb0b3f9238ab904ce1e85baff", + "sha256:ac96cd038792094f438ad1f6ff80837353805ac950cd2aa0e0625ef19850c308" + ], + "markers": "python_version >= '3.8'", + "version": "==24.3.0" + }, + "babel": { + "hashes": [ + "sha256:368b5b98b37c06b7daf6696391c3240c938b37767d4584413e8438c5c435fa8b", + "sha256:d1f3554ca26605fe173f3de0c65f750f5a42f924499bf134de6423582298e316" + ], + "markers": "python_version >= '3.8'", + "version": "==2.16.0" + }, + "beautifulsoup4": { + "hashes": [ + "sha256:74e3d1928edc070d21748185c46e3fb33490f22f52a3addee9aee0f4f7781051", + "sha256:b80878c9f40111313e55da8ba20bdba06d8fa3969fc68304167741bbf9e082ed" + ], + "markers": "python_full_version >= '3.6.0'", + "version": "==4.12.3" + }, + "billiard": { + "hashes": [ + "sha256:12b641b0c539073fc8d3f5b8b7be998956665c4233c7c1fcd66a7e677c4fb36f", + "sha256:40b59a4ac8806ba2c2369ea98d876bc6108b051c227baffd928c644d15d8f3cb" + ], + "markers": "python_version >= '3.7'", + "version": "==4.2.1" + }, + "bleach": { + "extras": [ + "css" + ], + "hashes": [ + "sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e", + "sha256:123e894118b8a599fd80d3ec1a6d4cc7ce4e5882b1317a7e1ba69b56e95f991f" + ], + "markers": "python_version >= '3.9'", + "version": "==6.2.0" + }, + "boto3": { + "hashes": [ + "sha256:2b74c58f475ff0dcf2f3637da9367a9465d29fad971ff5d8dc54ac39554e9022", + "sha256:f8f16c2d0ec1dca291857f1c138d5c30e01e40f653443cc2679e2f6ae71b05a6" + ], + "index": "pypi", + "markers": "python_version >= '3.8'", + "version": "==1.34.15" + }, + "botocore": { + "hashes": [ + "sha256:2d918b02db88d27a75b48275e6fb2506e9adaaddbec1ffa6a8a0898b34e769be", + "sha256:adc23be4fb99ad31961236342b7cbf3c0bfc62532cd02852196032e8c0d682f3" + ], + "markers": "python_version >= '3.8'", + "version": "==1.34.162" + }, + "cachetools": { + "hashes": [ + "sha256:70f238fbba50383ef62e55c6aff6d9673175fe59f7c6782c7a0b9e38f4a9df95", + "sha256:b76651fdc3b24ead3c648bbdeeb940c1b04d365b38b4af66788f9ec4a81d42bb" + ], + "markers": "python_version >= '3.7'", + "version": "==5.5.1" + }, + "celery": { + "hashes": [ + "sha256:369631eb580cf8c51a82721ec538684994f8277637edde2dfc0dacd73ed97f64", + "sha256:504a19140e8d3029d5acad88330c541d4c3f64c789d85f94756762d8bca7e706" + ], + "markers": "python_version >= '3.8'", + "version": "==5.4.0" + }, + "certifi": { + "hashes": [ + "sha256:1275f7a45be9464efc1173084eaa30f866fe2e47d389406136d332ed4967ec56", + "sha256:b650d30f370c2b724812bee08008be0c4163b163ddaec3f2546c1caf65f191db" + ], + "markers": "python_version >= '3.6'", + "version": "==2024.12.14" + }, + "cffi": { + "hashes": [ + "sha256:045d61c734659cc045141be4bae381a41d89b741f795af1dd018bfb532fd0df8", + "sha256:0984a4925a435b1da406122d4d7968dd861c1385afe3b45ba82b750f229811e2", + "sha256:0e2b1fac190ae3ebfe37b979cc1ce69c81f4e4fe5746bb401dca63a9062cdaf1", + "sha256:0f048dcf80db46f0098ccac01132761580d28e28bc0f78ae0d58048063317e15", + "sha256:1257bdabf294dceb59f5e70c64a3e2f462c30c7ad68092d01bbbfb1c16b1ba36", + "sha256:1c39c6016c32bc48dd54561950ebd6836e1670f2ae46128f67cf49e789c52824", + "sha256:1d599671f396c4723d016dbddb72fe8e0397082b0a77a4fab8028923bec050e8", + "sha256:28b16024becceed8c6dfbc75629e27788d8a3f9030691a1dbf9821a128b22c36", + "sha256:2bb1a08b8008b281856e5971307cc386a8e9c5b625ac297e853d36da6efe9c17", + "sha256:30c5e0cb5ae493c04c8b42916e52ca38079f1b235c2f8ae5f4527b963c401caf", + "sha256:31000ec67d4221a71bd3f67df918b1f88f676f1c3b535a7eb473255fdc0b83fc", + "sha256:386c8bf53c502fff58903061338ce4f4950cbdcb23e2902d86c0f722b786bbe3", + "sha256:3edc8d958eb099c634dace3c7e16560ae474aa3803a5df240542b305d14e14ed", + "sha256:45398b671ac6d70e67da8e4224a065cec6a93541bb7aebe1b198a61b58c7b702", + "sha256:46bf43160c1a35f7ec506d254e5c890f3c03648a4dbac12d624e4490a7046cd1", + "sha256:4ceb10419a9adf4460ea14cfd6bc43d08701f0835e979bf821052f1805850fe8", + "sha256:51392eae71afec0d0c8fb1a53b204dbb3bcabcb3c9b807eedf3e1e6ccf2de903", + "sha256:5da5719280082ac6bd9aa7becb3938dc9f9cbd57fac7d2871717b1feb0902ab6", + "sha256:610faea79c43e44c71e1ec53a554553fa22321b65fae24889706c0a84d4ad86d", + "sha256:636062ea65bd0195bc012fea9321aca499c0504409f413dc88af450b57ffd03b", + "sha256:6883e737d7d9e4899a8a695e00ec36bd4e5e4f18fabe0aca0efe0a4b44cdb13e", + "sha256:6b8b4a92e1c65048ff98cfe1f735ef8f1ceb72e3d5f0c25fdb12087a23da22be", + "sha256:6f17be4345073b0a7b8ea599688f692ac3ef23ce28e5df79c04de519dbc4912c", + "sha256:706510fe141c86a69c8ddc029c7910003a17353970cff3b904ff0686a5927683", + "sha256:72e72408cad3d5419375fc87d289076ee319835bdfa2caad331e377589aebba9", + "sha256:733e99bc2df47476e3848417c5a4540522f234dfd4ef3ab7fafdf555b082ec0c", + "sha256:7596d6620d3fa590f677e9ee430df2958d2d6d6de2feeae5b20e82c00b76fbf8", + "sha256:78122be759c3f8a014ce010908ae03364d00a1f81ab5c7f4a7a5120607ea56e1", + "sha256:805b4371bf7197c329fcb3ead37e710d1bca9da5d583f5073b799d5c5bd1eee4", + "sha256:85a950a4ac9c359340d5963966e3e0a94a676bd6245a4b55bc43949eee26a655", + "sha256:8f2cdc858323644ab277e9bb925ad72ae0e67f69e804f4898c070998d50b1a67", + "sha256:9755e4345d1ec879e3849e62222a18c7174d65a6a92d5b346b1863912168b595", + "sha256:98e3969bcff97cae1b2def8ba499ea3d6f31ddfdb7635374834cf89a1a08ecf0", + "sha256:a08d7e755f8ed21095a310a693525137cfe756ce62d066e53f502a83dc550f65", + "sha256:a1ed2dd2972641495a3ec98445e09766f077aee98a1c896dcb4ad0d303628e41", + "sha256:a24ed04c8ffd54b0729c07cee15a81d964e6fee0e3d4d342a27b020d22959dc6", + "sha256:a45e3c6913c5b87b3ff120dcdc03f6131fa0065027d0ed7ee6190736a74cd401", + "sha256:a9b15d491f3ad5d692e11f6b71f7857e7835eb677955c00cc0aefcd0669adaf6", + "sha256:ad9413ccdeda48c5afdae7e4fa2192157e991ff761e7ab8fdd8926f40b160cc3", + "sha256:b2ab587605f4ba0bf81dc0cb08a41bd1c0a5906bd59243d56bad7668a6fc6c16", + "sha256:b62ce867176a75d03a665bad002af8e6d54644fad99a3c70905c543130e39d93", + "sha256:c03e868a0b3bc35839ba98e74211ed2b05d2119be4e8a0f224fba9384f1fe02e", + "sha256:c59d6e989d07460165cc5ad3c61f9fd8f1b4796eacbd81cee78957842b834af4", + "sha256:c7eac2ef9b63c79431bc4b25f1cd649d7f061a28808cbc6c47b534bd789ef964", + "sha256:c9c3d058ebabb74db66e431095118094d06abf53284d9c81f27300d0e0d8bc7c", + "sha256:ca74b8dbe6e8e8263c0ffd60277de77dcee6c837a3d0881d8c1ead7268c9e576", + "sha256:caaf0640ef5f5517f49bc275eca1406b0ffa6aa184892812030f04c2abf589a0", + "sha256:cdf5ce3acdfd1661132f2a9c19cac174758dc2352bfe37d98aa7512c6b7178b3", + "sha256:d016c76bdd850f3c626af19b0542c9677ba156e4ee4fccfdd7848803533ef662", + "sha256:d01b12eeeb4427d3110de311e1774046ad344f5b1a7403101878976ecd7a10f3", + "sha256:d63afe322132c194cf832bfec0dc69a99fb9bb6bbd550f161a49e9e855cc78ff", + "sha256:da95af8214998d77a98cc14e3a3bd00aa191526343078b530ceb0bd710fb48a5", + "sha256:dd398dbc6773384a17fe0d3e7eeb8d1a21c2200473ee6806bb5e6a8e62bb73dd", + "sha256:de2ea4b5833625383e464549fec1bc395c1bdeeb5f25c4a3a82b5a8c756ec22f", + "sha256:de55b766c7aa2e2a3092c51e0483d700341182f08e67c63630d5b6f200bb28e5", + "sha256:df8b1c11f177bc2313ec4b2d46baec87a5f3e71fc8b45dab2ee7cae86d9aba14", + "sha256:e03eab0a8677fa80d646b5ddece1cbeaf556c313dcfac435ba11f107ba117b5d", + "sha256:e221cf152cff04059d011ee126477f0d9588303eb57e88923578ace7baad17f9", + "sha256:e31ae45bc2e29f6b2abd0de1cc3b9d5205aa847cafaecb8af1476a609a2f6eb7", + "sha256:edae79245293e15384b51f88b00613ba9f7198016a5948b5dddf4917d4d26382", + "sha256:f1e22e8c4419538cb197e4dd60acc919d7696e5ef98ee4da4e01d3f8cfa4cc5a", + "sha256:f3a2b4222ce6b60e2e8b337bb9596923045681d71e5a082783484d845390938e", + "sha256:f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a", + "sha256:f75c7ab1f9e4aca5414ed4d8e5c0e303a34f4421f8a0d47a4d019ceff0ab6af4", + "sha256:f79fc4fc25f1c8698ff97788206bb3c2598949bfe0fef03d299eb1b5356ada99", + "sha256:f7f5baafcc48261359e14bcd6d9bff6d4b28d9103847c9e136694cb0501aef87", + "sha256:fc48c783f9c87e60831201f2cce7f3b2e4846bf4d8728eabe54d60700b318a0b" + ], + "markers": "python_version >= '3.8'", + "version": "==1.17.1" + }, + "charset-normalizer": { + "hashes": [ + "sha256:0167ddc8ab6508fe81860a57dd472b2ef4060e8d378f0cc555707126830f2537", + "sha256:01732659ba9b5b873fc117534143e4feefecf3b2078b0a6a2e925271bb6f4cfa", + "sha256:01ad647cdd609225c5350561d084b42ddf732f4eeefe6e678765636791e78b9a", + "sha256:04432ad9479fa40ec0f387795ddad4437a2b50417c69fa275e212933519ff294", + "sha256:0907f11d019260cdc3f94fbdb23ff9125f6b5d1039b76003b5b0ac9d6a6c9d5b", + "sha256:0924e81d3d5e70f8126529951dac65c1010cdf117bb75eb02dd12339b57749dd", + "sha256:09b26ae6b1abf0d27570633b2b078a2a20419c99d66fb2823173d73f188ce601", + "sha256:09b5e6733cbd160dcc09589227187e242a30a49ca5cefa5a7edd3f9d19ed53fd", + "sha256:0af291f4fe114be0280cdd29d533696a77b5b49cfde5467176ecab32353395c4", + "sha256:0f55e69f030f7163dffe9fd0752b32f070566451afe180f99dbeeb81f511ad8d", + "sha256:1a2bc9f351a75ef49d664206d51f8e5ede9da246602dc2d2726837620ea034b2", + "sha256:22e14b5d70560b8dd51ec22863f370d1e595ac3d024cb8ad7d308b4cd95f8313", + "sha256:234ac59ea147c59ee4da87a0c0f098e9c8d169f4dc2a159ef720f1a61bbe27cd", + "sha256:2369eea1ee4a7610a860d88f268eb39b95cb588acd7235e02fd5a5601773d4fa", + "sha256:237bdbe6159cff53b4f24f397d43c6336c6b0b42affbe857970cefbb620911c8", + "sha256:28bf57629c75e810b6ae989f03c0828d64d6b26a5e205535585f96093e405ed1", + "sha256:2967f74ad52c3b98de4c3b32e1a44e32975e008a9cd2a8cc8966d6a5218c5cb2", + "sha256:2a75d49014d118e4198bcee5ee0a6f25856b29b12dbf7cd012791f8a6cc5c496", + "sha256:2bdfe3ac2e1bbe5b59a1a63721eb3b95fc9b6817ae4a46debbb4e11f6232428d", + "sha256:2d074908e1aecee37a7635990b2c6d504cd4766c7bc9fc86d63f9c09af3fa11b", + "sha256:2fb9bd477fdea8684f78791a6de97a953c51831ee2981f8e4f583ff3b9d9687e", + "sha256:311f30128d7d333eebd7896965bfcfbd0065f1716ec92bd5638d7748eb6f936a", + "sha256:329ce159e82018d646c7ac45b01a430369d526569ec08516081727a20e9e4af4", + "sha256:345b0426edd4e18138d6528aed636de7a9ed169b4aaf9d61a8c19e39d26838ca", + "sha256:363e2f92b0f0174b2f8238240a1a30142e3db7b957a5dd5689b0e75fb717cc78", + "sha256:3a3bd0dcd373514dcec91c411ddb9632c0d7d92aed7093b8c3bbb6d69ca74408", + "sha256:3bed14e9c89dcb10e8f3a29f9ccac4955aebe93c71ae803af79265c9ca5644c5", + "sha256:44251f18cd68a75b56585dd00dae26183e102cd5e0f9f1466e6df5da2ed64ea3", + "sha256:44ecbf16649486d4aebafeaa7ec4c9fed8b88101f4dd612dcaf65d5e815f837f", + "sha256:4532bff1b8421fd0a320463030c7520f56a79c9024a4e88f01c537316019005a", + "sha256:49402233c892a461407c512a19435d1ce275543138294f7ef013f0b63d5d3765", + "sha256:4c0907b1928a36d5a998d72d64d8eaa7244989f7aaaf947500d3a800c83a3fd6", + "sha256:4d86f7aff21ee58f26dcf5ae81a9addbd914115cdebcbb2217e4f0ed8982e146", + "sha256:5777ee0881f9499ed0f71cc82cf873d9a0ca8af166dfa0af8ec4e675b7df48e6", + "sha256:5df196eb874dae23dcfb968c83d4f8fdccb333330fe1fc278ac5ceeb101003a9", + "sha256:619a609aa74ae43d90ed2e89bdd784765de0a25ca761b93e196d938b8fd1dbbd", + "sha256:6e27f48bcd0957c6d4cb9d6fa6b61d192d0b13d5ef563e5f2ae35feafc0d179c", + "sha256:6ff8a4a60c227ad87030d76e99cd1698345d4491638dfa6673027c48b3cd395f", + "sha256:73d94b58ec7fecbc7366247d3b0b10a21681004153238750bb67bd9012414545", + "sha256:7461baadb4dc00fd9e0acbe254e3d7d2112e7f92ced2adc96e54ef6501c5f176", + "sha256:75832c08354f595c760a804588b9357d34ec00ba1c940c15e31e96d902093770", + "sha256:7709f51f5f7c853f0fb938bcd3bc59cdfdc5203635ffd18bf354f6967ea0f824", + "sha256:78baa6d91634dfb69ec52a463534bc0df05dbd546209b79a3880a34487f4b84f", + "sha256:7974a0b5ecd505609e3b19742b60cee7aa2aa2fb3151bc917e6e2646d7667dcf", + "sha256:7a4f97a081603d2050bfaffdefa5b02a9ec823f8348a572e39032caa8404a487", + "sha256:7b1bef6280950ee6c177b326508f86cad7ad4dff12454483b51d8b7d673a2c5d", + "sha256:7d053096f67cd1241601111b698f5cad775f97ab25d81567d3f59219b5f1adbd", + "sha256:804a4d582ba6e5b747c625bf1255e6b1507465494a40a2130978bda7b932c90b", + "sha256:807f52c1f798eef6cf26beb819eeb8819b1622ddfeef9d0977a8502d4db6d534", + "sha256:80ed5e856eb7f30115aaf94e4a08114ccc8813e6ed1b5efa74f9f82e8509858f", + "sha256:8417cb1f36cc0bc7eaba8ccb0e04d55f0ee52df06df3ad55259b9a323555fc8b", + "sha256:8436c508b408b82d87dc5f62496973a1805cd46727c34440b0d29d8a2f50a6c9", + "sha256:89149166622f4db9b4b6a449256291dc87a99ee53151c74cbd82a53c8c2f6ccd", + "sha256:8bfa33f4f2672964266e940dd22a195989ba31669bd84629f05fab3ef4e2d125", + "sha256:8c60ca7339acd497a55b0ea5d506b2a2612afb2826560416f6894e8b5770d4a9", + "sha256:91b36a978b5ae0ee86c394f5a54d6ef44db1de0815eb43de826d41d21e4af3de", + "sha256:955f8851919303c92343d2f66165294848d57e9bba6cf6e3625485a70a038d11", + "sha256:97f68b8d6831127e4787ad15e6757232e14e12060bec17091b85eb1486b91d8d", + "sha256:9b23ca7ef998bc739bf6ffc077c2116917eabcc901f88da1b9856b210ef63f35", + "sha256:9f0b8b1c6d84c8034a44893aba5e767bf9c7a211e313a9605d9c617d7083829f", + "sha256:aabfa34badd18f1da5ec1bc2715cadc8dca465868a4e73a0173466b688f29dda", + "sha256:ab36c8eb7e454e34e60eb55ca5d241a5d18b2c6244f6827a30e451c42410b5f7", + "sha256:b010a7a4fd316c3c484d482922d13044979e78d1861f0e0650423144c616a46a", + "sha256:b1ac5992a838106edb89654e0aebfc24f5848ae2547d22c2c3f66454daa11971", + "sha256:b7b2d86dd06bfc2ade3312a83a5c364c7ec2e3498f8734282c6c3d4b07b346b8", + "sha256:b97e690a2118911e39b4042088092771b4ae3fc3aa86518f84b8cf6888dbdb41", + "sha256:bc2722592d8998c870fa4e290c2eec2c1569b87fe58618e67d38b4665dfa680d", + "sha256:c0429126cf75e16c4f0ad00ee0eae4242dc652290f940152ca8c75c3a4b6ee8f", + "sha256:c30197aa96e8eed02200a83fba2657b4c3acd0f0aa4bdc9f6c1af8e8962e0757", + "sha256:c4c3e6da02df6fa1410a7680bd3f63d4f710232d3139089536310d027950696a", + "sha256:c75cb2a3e389853835e84a2d8fb2b81a10645b503eca9bcb98df6b5a43eb8886", + "sha256:c96836c97b1238e9c9e3fe90844c947d5afbf4f4c92762679acfe19927d81d77", + "sha256:d7f50a1f8c450f3925cb367d011448c39239bb3eb4117c36a6d354794de4ce76", + "sha256:d973f03c0cb71c5ed99037b870f2be986c3c05e63622c017ea9816881d2dd247", + "sha256:d98b1668f06378c6dbefec3b92299716b931cd4e6061f3c875a71ced1780ab85", + "sha256:d9c3cdf5390dcd29aa8056d13e8e99526cda0305acc038b96b30352aff5ff2bb", + "sha256:dad3e487649f498dd991eeb901125411559b22e8d7ab25d3aeb1af367df5efd7", + "sha256:dccbe65bd2f7f7ec22c4ff99ed56faa1e9f785482b9bbd7c717e26fd723a1d1e", + "sha256:dd78cfcda14a1ef52584dbb008f7ac81c1328c0f58184bf9a84c49c605002da6", + "sha256:e218488cd232553829be0664c2292d3af2eeeb94b32bea483cf79ac6a694e037", + "sha256:e358e64305fe12299a08e08978f51fc21fac060dcfcddd95453eabe5b93ed0e1", + "sha256:ea0d8d539afa5eb2728aa1932a988a9a7af94f18582ffae4bc10b3fbdad0626e", + "sha256:eab677309cdb30d047996b36d34caeda1dc91149e4fdca0b1a039b3f79d9a807", + "sha256:eb8178fe3dba6450a3e024e95ac49ed3400e506fd4e9e5c32d30adda88cbd407", + "sha256:ecddf25bee22fe4fe3737a399d0d177d72bc22be6913acfab364b40bce1ba83c", + "sha256:eea6ee1db730b3483adf394ea72f808b6e18cf3cb6454b4d86e04fa8c4327a12", + "sha256:f08ff5e948271dc7e18a35641d2f11a4cd8dfd5634f55228b691e62b37125eb3", + "sha256:f30bf9fd9be89ecb2360c7d94a711f00c09b976258846efe40db3d05828e8089", + "sha256:fa88b843d6e211393a37219e6a1c1df99d35e8fd90446f1118f4216e307e48cd", + "sha256:fc54db6c8593ef7d4b2a331b58653356cf04f67c960f584edb7c3d8c97e8f39e", + "sha256:fd4ec41f914fa74ad1b8304bbc634b3de73d2a0889bd32076342a573e0779e00", + "sha256:ffc9202a29ab3920fa812879e95a9e78b2465fd10be7fcbd042899695d75e616" + ], + "markers": "python_version >= '3.7'", + "version": "==3.4.1" + }, + "click": { + "hashes": [ + "sha256:63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2", + "sha256:ed53c9d8990d83c2a27deae68e4ee337473f6330c040a31d4225c9574d16096a" + ], + "markers": "python_version >= '3.7'", + "version": "==8.1.8" + }, + "click-didyoumean": { + "hashes": [ + "sha256:4f82fdff0dbe64ef8ab2279bd6aa3f6a99c3b28c05aa09cbfc07c9d7fbb5a463", + "sha256:5c4bb6007cfea5f2fd6583a2fb6701a22a41eb98957e63d0fac41c10e7c3117c" + ], + "markers": "python_full_version >= '3.6.2'", + "version": "==0.3.1" + }, + "click-plugins": { + "hashes": [ + "sha256:46ab999744a9d831159c3411bb0c79346d94a444df9a3a3742e9ed63645f264b", + "sha256:5d262006d3222f5057fd81e1623d4443e41dcda5dc815c06b442aa3c02889fc8" + ], + "version": "==1.1.1" + }, + "click-repl": { + "hashes": [ + "sha256:17849c23dba3d667247dc4defe1757fff98694e90fe37474f3feebb69ced26a9", + "sha256:fb7e06deb8da8de86180a33a9da97ac316751c094c6899382da7feeeeb51b812" + ], + "markers": "python_version >= '3.6'", + "version": "==0.3.0" + }, + "colorama": { + "hashes": [ + "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44", + "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5, 3.6'", + "version": "==0.4.6" + }, + "comm": { + "hashes": [ + "sha256:3fd7a84065306e07bea1773df6eb8282de51ba82f77c72f9c85716ab11fe980e", + "sha256:e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3" + ], + "markers": "python_version >= '3.8'", + "version": "==0.2.2" + }, + "configobj": { + "hashes": [ + "sha256:03c881bbf23aa07bccf1b837005975993c4ab4427ba57f959afdd9d1a2386848", + "sha256:1ba10c5b6ee16229c79a05047aeda2b55eb4e80d7c7d8ecf17ec1ca600c79882" + ], + "markers": "python_version >= '3.7'", + "version": "==5.0.9" + }, + "contourpy": { + "hashes": [ + "sha256:041b640d4ec01922083645a94bb3b2e777e6b626788f4095cf21abbe266413c1", + "sha256:05e806338bfeaa006acbdeba0ad681a10be63b26e1b17317bfac3c5d98f36cda", + "sha256:08d9d449a61cf53033612cb368f3a1b26cd7835d9b8cd326647efe43bca7568d", + "sha256:0ffa84be8e0bd33410b17189f7164c3589c229ce5db85798076a3fa136d0e509", + "sha256:113231fe3825ebf6f15eaa8bc1f5b0ddc19d42b733345eae0934cb291beb88b6", + "sha256:14c102b0eab282427b662cb590f2e9340a9d91a1c297f48729431f2dcd16e14f", + "sha256:174e758c66bbc1c8576992cec9599ce8b6672b741b5d336b5c74e35ac382b18e", + "sha256:19c1555a6801c2f084c7ddc1c6e11f02eb6a6016ca1318dd5452ba3f613a1751", + "sha256:19d40d37c1c3a4961b4619dd9d77b12124a453cc3d02bb31a07d58ef684d3d86", + "sha256:1bf98051f1045b15c87868dbaea84f92408337d4f81d0e449ee41920ea121d3b", + "sha256:20914c8c973f41456337652a6eeca26d2148aa96dd7ac323b74516988bea89fc", + "sha256:287ccc248c9e0d0566934e7d606201abd74761b5703d804ff3df8935f523d546", + "sha256:2ba94a401342fc0f8b948e57d977557fbf4d515f03c67682dd5c6191cb2d16ec", + "sha256:31c1b55c1f34f80557d3830d3dd93ba722ce7e33a0b472cba0ec3b6535684d8f", + "sha256:36987a15e8ace5f58d4d5da9dca82d498c2bbb28dff6e5d04fbfcc35a9cb3a82", + "sha256:3a04ecd68acbd77fa2d39723ceca4c3197cb2969633836ced1bea14e219d077c", + "sha256:3e8b974d8db2c5610fb4e76307e265de0edb655ae8169e8b21f41807ccbeec4b", + "sha256:3ea9924d28fc5586bf0b42d15f590b10c224117e74409dd7a0be3b62b74a501c", + "sha256:4318af1c925fb9a4fb190559ef3eec206845f63e80fb603d47f2d6d67683901c", + "sha256:44a29502ca9c7b5ba389e620d44f2fbe792b1fb5734e8b931ad307071ec58c53", + "sha256:47734d7073fb4590b4a40122b35917cd77be5722d80683b249dac1de266aac80", + "sha256:4d76d5993a34ef3df5181ba3c92fabb93f1eaa5729504fb03423fcd9f3177242", + "sha256:4dbbc03a40f916a8420e420d63e96a1258d3d1b58cbdfd8d1f07b49fcbd38e85", + "sha256:500360b77259914f7805af7462e41f9cb7ca92ad38e9f94d6c8641b089338124", + "sha256:523a8ee12edfa36f6d2a49407f705a6ef4c5098de4f498619787e272de93f2d5", + "sha256:573abb30e0e05bf31ed067d2f82500ecfdaec15627a59d63ea2d95714790f5c2", + "sha256:5b75aa69cb4d6f137b36f7eb2ace9280cfb60c55dc5f61c731fdf6f037f958a3", + "sha256:61332c87493b00091423e747ea78200659dc09bdf7fd69edd5e98cef5d3e9a8d", + "sha256:805617228ba7e2cbbfb6c503858e626ab528ac2a32a04a2fe88ffaf6b02c32bc", + "sha256:841ad858cff65c2c04bf93875e384ccb82b654574a6d7f30453a04f04af71342", + "sha256:89785bb2a1980c1bd87f0cb1517a71cde374776a5f150936b82580ae6ead44a1", + "sha256:8eb96e79b9f3dcadbad2a3891672f81cdcab7f95b27f28f1c67d75f045b6b4f1", + "sha256:974d8145f8ca354498005b5b981165b74a195abfae9a8129df3e56771961d595", + "sha256:9ddeb796389dadcd884c7eb07bd14ef12408aaae358f0e2ae24114d797eede30", + "sha256:a045f341a77b77e1c5de31e74e966537bba9f3c4099b35bf4c2e3939dd54cdab", + "sha256:a0cffcbede75c059f535725c1680dfb17b6ba8753f0c74b14e6a9c68c29d7ea3", + "sha256:a761d9ccfc5e2ecd1bf05534eda382aa14c3e4f9205ba5b1684ecfe400716ef2", + "sha256:a7895f46d47671fa7ceec40f31fae721da51ad34bdca0bee83e38870b1f47ffd", + "sha256:a9fa36448e6a3a1a9a2ba23c02012c43ed88905ec80163f2ffe2421c7192a5d7", + "sha256:ab29962927945d89d9b293eabd0d59aea28d887d4f3be6c22deaefbb938a7277", + "sha256:abbb49fb7dac584e5abc6636b7b2a7227111c4f771005853e7d25176daaf8453", + "sha256:ac4578ac281983f63b400f7fe6c101bedc10651650eef012be1ccffcbacf3697", + "sha256:adce39d67c0edf383647a3a007de0a45fd1b08dedaa5318404f1a73059c2512b", + "sha256:ade08d343436a94e633db932e7e8407fe7de8083967962b46bdfc1b0ced39454", + "sha256:b2bdca22a27e35f16794cf585832e542123296b4687f9fd96822db6bae17bfc9", + "sha256:b2f926efda994cdf3c8d3fdb40b9962f86edbc4457e739277b961eced3d0b4c1", + "sha256:b457d6430833cee8e4b8e9b6f07aa1c161e5e0d52e118dc102c8f9bd7dd060d6", + "sha256:c414fc1ed8ee1dbd5da626cf3710c6013d3d27456651d156711fa24f24bd1291", + "sha256:cb76c1a154b83991a3cbbf0dfeb26ec2833ad56f95540b442c73950af2013750", + "sha256:dfd97abd83335045a913e3bcc4a09c0ceadbe66580cf573fe961f4a825efa699", + "sha256:e914a8cb05ce5c809dd0fe350cfbb4e881bde5e2a38dc04e3afe1b3e58bd158e", + "sha256:ece6df05e2c41bd46776fbc712e0996f7c94e0d0543af1656956d150c4ca7c81", + "sha256:efa874e87e4a647fd2e4f514d5e91c7d493697127beb95e77d2f7561f6905bd9", + "sha256:f611e628ef06670df83fce17805c344710ca5cde01edfdc72751311da8585375" + ], + "markers": "python_version >= '3.10'", + "version": "==1.3.1" + }, + "cryptography": { + "hashes": [ + "sha256:1923cb251c04be85eec9fda837661c67c1049063305d6be5721643c22dd4e2b7", + "sha256:37d76e6863da3774cd9db5b409a9ecfd2c71c981c38788d3fcfaf177f447b731", + "sha256:3c672a53c0fb4725a29c303be906d3c1fa99c32f58abe008a82705f9ee96f40b", + "sha256:404fdc66ee5f83a1388be54300ae978b2efd538018de18556dde92575e05defc", + "sha256:4ac4c9f37eba52cb6fbeaf5b59c152ea976726b865bd4cf87883a7e7006cc543", + "sha256:62901fb618f74d7d81bf408c8719e9ec14d863086efe4185afd07c352aee1d2c", + "sha256:660cb7312a08bc38be15b696462fa7cc7cd85c3ed9c576e81f4dc4d8b2b31591", + "sha256:708ee5f1bafe76d041b53a4f95eb28cdeb8d18da17e597d46d7833ee59b97ede", + "sha256:761817a3377ef15ac23cd7834715081791d4ec77f9297ee694ca1ee9c2c7e5eb", + "sha256:831c3c4d0774e488fdc83a1923b49b9957d33287de923d58ebd3cec47a0ae43f", + "sha256:84111ad4ff3f6253820e6d3e58be2cc2a00adb29335d4cacb5ab4d4d34f2a123", + "sha256:8b3e6eae66cf54701ee7d9c83c30ac0a1e3fa17be486033000f2a73a12ab507c", + "sha256:9e6fc8a08e116fb7c7dd1f040074c9d7b51d74a8ea40d4df2fc7aa08b76b9e6c", + "sha256:a01956ddfa0a6790d594f5b34fc1bfa6098aca434696a03cfdbe469b8ed79285", + "sha256:abc998e0c0eee3c8a1904221d3f67dcfa76422b23620173e28c11d3e626c21bd", + "sha256:b15492a11f9e1b62ba9d73c210e2416724633167de94607ec6069ef724fad092", + "sha256:be4ce505894d15d5c5037167ffb7f0ae90b7be6f2a98f9a5c3442395501c32fa", + "sha256:c5eb858beed7835e5ad1faba59e865109f3e52b3783b9ac21e7e47dc5554e289", + "sha256:cd4e834f340b4293430701e772ec543b0fbe6c2dea510a5286fe0acabe153a02", + "sha256:d2436114e46b36d00f8b72ff57e598978b37399d2786fd39793c36c6d5cb1c64", + "sha256:eb33480f1bad5b78233b0ad3e1b0be21e8ef1da745d8d2aecbb20671658b9053", + "sha256:eca27345e1214d1b9f9490d200f9db5a874479be914199194e746c893788d417", + "sha256:ed3534eb1090483c96178fcb0f8893719d96d5274dfde98aa6add34614e97c8e", + "sha256:f3f6fdfa89ee2d9d496e2c087cebef9d4fcbb0ad63c40e821b39f74bf48d9c5e", + "sha256:f53c2c87e0fb4b0c00fa9571082a057e37690a8f12233306161c8f4b819960b7", + "sha256:f5e7cb1e5e56ca0933b4873c0220a78b773b24d40d186b6738080b73d3d0a756", + "sha256:f677e1268c4e23420c3acade68fac427fffcb8d19d7df95ed7ad17cdef8404f4" + ], + "markers": "python_version >= '3.7' and python_full_version not in '3.9.0, 3.9.1'", + "version": "==44.0.0" + }, + "cycler": { + "hashes": [ + "sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30", + "sha256:88bb128f02ba341da8ef447245a9e138fae777f6a23943da4540077d3601eb1c" + ], + "markers": "python_version >= '3.8'", + "version": "==0.12.1" + }, + "debugpy": { + "hashes": [ + "sha256:086b32e233e89a2740c1615c2f775c34ae951508b28b308681dbbb87bba97d06", + "sha256:22a11c493c70413a01ed03f01c3c3a2fc4478fc6ee186e340487b2edcd6f4180", + "sha256:274b6a2040349b5c9864e475284bce5bb062e63dce368a394b8cc865ae3b00c6", + "sha256:2ae5df899732a6051b49ea2632a9ea67f929604fd2b036613a9f12bc3163b92d", + "sha256:36f4829839ef0afdfdd208bb54f4c3d0eea86106d719811681a8627ae2e53dd5", + "sha256:39dfbb6fa09f12fae32639e3286112fc35ae976114f1f3d37375f3130a820969", + "sha256:4703575b78dd697b294f8c65588dc86874ed787b7348c65da70cfc885efdf1e1", + "sha256:4ad9a94d8f5c9b954e0e3b137cc64ef3f579d0df3c3698fe9c3734ee397e4abb", + "sha256:557cc55b51ab2f3371e238804ffc8510b6ef087673303890f57a24195d096e61", + "sha256:5cc45235fefac57f52680902b7d197fb2f3650112379a6fa9aa1b1c1d3ed3f02", + "sha256:646530b04f45c830ceae8e491ca1c9320a2d2f0efea3141487c82130aba70dce", + "sha256:696d8ae4dff4cbd06bf6b10d671e088b66669f110c7c4e18a44c43cf75ce966f", + "sha256:7e94b643b19e8feb5215fa508aee531387494bf668b2eca27fa769ea11d9f498", + "sha256:88a77f422f31f170c4b7e9ca58eae2a6c8e04da54121900651dfa8e66c29901a", + "sha256:898fba72b81a654e74412a67c7e0a81e89723cfe2a3ea6fcd3feaa3395138ca9", + "sha256:9649eced17a98ce816756ce50433b2dd85dfa7bc92ceb60579d68c053f98dff9", + "sha256:9af40506a59450f1315168d47a970db1a65aaab5df3833ac389d2899a5d63b3f", + "sha256:a28ed481d530e3138553be60991d2d61103ce6da254e51547b79549675f539b7", + "sha256:a2ba7ffe58efeae5b8fad1165357edfe01464f9aef25e814e891ec690e7dd82a", + "sha256:a4042edef80364239f5b7b5764e55fd3ffd40c32cf6753da9bda4ff0ac466018", + "sha256:b0232cd42506d0c94f9328aaf0d1d0785f90f87ae72d9759df7e5051be039738", + "sha256:b202f591204023b3ce62ff9a47baa555dc00bb092219abf5caf0e3718ac20e7c", + "sha256:b5c6c967d02fee30e157ab5227706f965d5c37679c687b1e7bbc5d9e7128bd41", + "sha256:cbbd4149c4fc5e7d508ece083e78c17442ee13b0e69bfa6bd63003e486770f45", + "sha256:f30b03b0f27608a0b26c75f0bb8a880c752c0e0b01090551b9d87c7d783e2069", + "sha256:fdb3c6d342825ea10b90e43d7f20f01535a72b3a1997850c0c3cefa5c27a4a2c" + ], + "markers": "python_version >= '3.8'", + "version": "==1.8.12" + }, + "decorator": { + "hashes": [ + "sha256:637996211036b6385ef91435e4fae22989472f9d571faba8927ba8253acbc330", + "sha256:b8c3f85900b9dc423225913c5aace94729fe1fa9763b38939a95226f02d37186" + ], + "markers": "python_version >= '3.5'", + "version": "==5.1.1" + }, + "defusedxml": { + "hashes": [ + "sha256:1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69", + "sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", + "version": "==0.7.1" + }, + "dictdiffer": { + "hashes": [ + "sha256:17bacf5fbfe613ccf1b6d512bd766e6b21fb798822a133aa86098b8ac9997578", + "sha256:442bfc693cfcadaf46674575d2eba1c53b42f5e404218ca2c2ff549f2df56595" + ], + "version": "==0.9.0" + }, + "diskcache": { + "hashes": [ + "sha256:2c3a3fa2743d8535d832ec61c2054a1641f41775aa7c556758a109941e33e4fc", + "sha256:5e31b2d5fbad117cc363ebaf6b689474db18a1f6438bc82358b024abd4c2ca19" + ], + "markers": "python_version >= '3'", + "version": "==5.6.3" + }, + "distro": { + "hashes": [ + "sha256:2fa77c6fd8940f116ee1d6b94a2f90b13b5ea8d019b98bc8bafdcabcdd9bdbed", + "sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + ], + "markers": "python_version >= '3.6'", + "version": "==1.9.0" + }, + "dm-tree": { + "hashes": [ + "sha256:054b461f8176f4bce7a21f7b1870f873a1ced3bdbe1282c816c550bb43c71fa6", + "sha256:09964470f76a5201aff2e8f9b26842976de7889300676f927930f6285e256760", + "sha256:0d3172394079a86c3a759179c65f64c48d1a42b89495fcf38976d11cc3bb952c", + "sha256:0e9620ccf06393eb6b613b5e366469304622d4ea96ae6540b28a33840e6c89cf", + "sha256:0fcaabbb14e7980377439e7140bd05552739ca5e515ecb3119f234acee4b9430", + "sha256:1607ce49aa42f010d1e5e616d92ce899d66835d4d8bea49679582435285515de", + "sha256:181c35521d480d0365f39300542cb6cd7fd2b77351bb43d7acfda15aef63b317", + "sha256:1d7c26e431fc93cc7e0cba867eb000db6a05f6f2b25af11ac4e9dada88fc5bca", + "sha256:1fe962015b2fe1282892b28ebe962faed53c7f98d942da9a4625cbf27baef913", + "sha256:250b692fb75f45f02e2f58fbef9ab338904ef334b90557565621fa251df267cf", + "sha256:2869228d9c619074de501a3c10dc7f07c75422f8fab36ecdcb859b6f1b1ec3ef", + "sha256:28c52cbf4f8b3dbd0beaedf44f69fa85eec5e9dede612e08035e06ada6ec9426", + "sha256:2f7915660f59c09068e428613c480150180df1060561fd0d1470684ae7007bd1", + "sha256:343a4a4ebaa127451ff971254a4be4084eb4bdc0b2513c32b46f6f728fd03f9e", + "sha256:35cc164a79336bfcfafb47e5f297898359123bbd3330c1967f0c4994f9cf9f60", + "sha256:378cc8ad93c5fe3590f405a309980721f021c790ca1bdf9b15bb1d59daec57f5", + "sha256:39070ba268c0491af9fe7a58644d99e8b4f2cde6e5884ba3380bddc84ed43d5f", + "sha256:435227cf3c5dc63f4de054cf3d00183790bd9ead4c3623138c74dde7f67f521b", + "sha256:5483dca4d7eb1a0d65fe86d3b6a53ae717face83c1f17e0887b1a4a64ae5c410", + "sha256:694c3654cfd2a81552c08ec66bb5c4a3d48fa292b9a181880fb081c36c5b9134", + "sha256:75c5d528bb992981c20793b6b453e91560784215dffb8a5440ba999753c14ceb", + "sha256:803bfc53b4659f447ac694dbd04235f94a73ef7c1fd1e0df7c84ac41e0bc963b", + "sha256:81fce77f22a302d7a5968aebdf4efafef4def7ce96528719a354e6990dcd49c7", + "sha256:83b7764de0d855338abefc6e3ee9fe40d301668310aa3baea3f778ff051f4393", + "sha256:8c60a7eadab64c2278861f56bca320b2720f163dca9d7558103c3b77f2416571", + "sha256:8ed3564abed97c806db122c2d3e1a2b64c74a63debe9903aad795167cc301368", + "sha256:94d3f0826311f45ee19b75f5b48c99466e4218a0489e81c0f0167bda50cacf22", + "sha256:96a548a406a6fb15fe58f6a30a57ff2f2aafbf25f05afab00c8f5e5977b6c715", + "sha256:a5d819c38c03f0bb5b3b3703c60e4b170355a0fc6b5819325bf3d4ceb3ae7e80", + "sha256:ad16ceba90a56ec47cf45b21856d14962ac314787975ef786efb5e6e9ca75ec7", + "sha256:af4b3d372f2477dcd89a6e717e4a575ca35ccc20cc4454a8a4b6f8838a00672d", + "sha256:b095ba4f8ca1ba19350fd53cf1f8f3eb0bd406aa28af64a6dfc86707b32a810a", + "sha256:b9bd9b9ccb59409d33d51d84b7668010c04c2af7d4a371632874c1ca356cff3d", + "sha256:b9f89a454e98806b44fe9d40ec9eee61f848388f7e79ac2371a55679bd5a3ac6", + "sha256:bb2d109f42190225112da899b9f3d46d0d5f26aef501c61e43529fe9322530b5", + "sha256:c0a94aba18a35457a1b5cd716fd7b46c5dafdc4cf7869b4bae665b91c4682a8e", + "sha256:c5c8c12e3fda754ef6af94161bacdaeda816d941995fac415d6855c6c386af68", + "sha256:d1612fcaecd79023dbc6a6ae48d51a80beb5c385d6f3f6d71688e57bc8d07de8", + "sha256:d16e1f2a073604cfcc09f7131ae8d534674f43c3aef4c25742eae295bc60d04f", + "sha256:d20f2faa3672b52e5013f4077117bfb99c4cfc0b445d3bde1584c34032b57436", + "sha256:d40fa4106ca6edc66760246a08f500ec0c85ef55c762fb4a363f6ee739ba02ee", + "sha256:de287fabc464b8734be251e46e06aa9aa1001f34198da2b6ce07bd197172b9cb", + "sha256:e4d714371bb08839e4e5e29024fc95832d9affe129825ef38836b143028bd144", + "sha256:ea9e59e0451e7d29aece402d9f908f2e2a80922bcde2ebfd5dcb07750fcbfee8", + "sha256:f7ac31b9aecccb2c6e1ab29706f6ded3eba0c2c69c770322c9c685929c3d6afb", + "sha256:fa42a605d099ee7d41ba2b5fb75e21423951fd26e5d50583a00471238fb3021d" + ], + "version": "==0.1.8" + }, + "docutils": { + "hashes": [ + "sha256:23010f129180089fbcd3bc08cfefccb3b890b0050e1ca00c867036e9d161b98c", + "sha256:679987caf361a7539d76e584cbeddc311e3aee937877c87346f31debc63e9d06" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", + "version": "==0.18.1" + }, + "dpath": { + "hashes": [ + "sha256:34f7e630dc55ea3f219e555726f5da4b4b25f2200319c8e6902c394258dd6a3e", + "sha256:b330a375ded0a0d2ed404440f6c6a715deae5313af40bbb01c8a41d891900576" + ], + "markers": "python_version >= '3.7'", + "version": "==2.2.0" + }, + "dulwich": { + "hashes": [ + "sha256:007d8160b511bb149d31c08548307982f6ce752a46e7088b020517de00c3bd46", + "sha256:01544915c4056d0820de8cf126b971f7c180743ff64c4435c89168e44b30df4b", + "sha256:01e484d44014fef78cdef3b3adc34564808b4677497a57a0950c90a1d6349be3", + "sha256:052715452b729544c611a107b2eef6111e527f041c1b666f8ed36c04e39c36b5", + "sha256:10c5ee20430714ea6a79dde22c1f77078848930d27021aa810204738bc175e95", + "sha256:1782854c10878b5cb8423e74b0ef4256c3667f7b0266513af028ac28dbab1f2d", + "sha256:1cbd5ecbc95e18c745965fc7b2b71209443987a99e499c7bb074234d7c6142e2", + "sha256:2220c8b7cac5794e2260a924e81b05baa7836c18ba805d5a6731071a5ff6b860", + "sha256:257abd49a768a52cf7f508daf2d30fe73f54fd32b7a674abd43817f66b0ca17b", + "sha256:2b7a3ac4baa49bd988cc0d0891a93aa26307c01f35caeed8729b7928a1f483af", + "sha256:40260034a6ecc3141a0d42360e888a73e58b9c0c9363c454cae182957fe602ac", + "sha256:5ada6a2fd400a4f51adfedd0267bfb08c61e2d9846c18ea653b0eb88a7b851d0", + "sha256:5b9806a75f4b74fa891926b1d830e21f9cead80ed6dd803ed668369b26fb8b5f", + "sha256:62027dfccee97268eadf0c54df3d72ce30e4402cf5cf06c021e474b9a9eb3536", + "sha256:637a9ac27512b8c04e6a29bf92e3f73386cd85dfe8609f523ffbc96e659bde4b", + "sha256:6bda2eca0847c30a9312a72f219af9e63feb7d2ca89f47fdaa240b0d0cdd6b84", + "sha256:6bea11b98e854ff2abec390eeac752586b83921a22091dae65470ccbb003fc1b", + "sha256:6c830d63c691b5f979964a2d6b325930b7a53f14836598352690601cd205f04b", + "sha256:71b20bd6a25658e968e813eb69164332d3a2ab6029b51d3c6af8b64f2471847a", + "sha256:74b7cf6f0d46ac777be617dad7c1b992380004de74c0e0652bed174686249f34", + "sha256:753eec461434f0ccbe0956ec825250e12230e8f1b365c8be1604386d94c2d8d0", + "sha256:7649f0c9b4760d72768805155e66579761f282fdca123e351019c85efce811eb", + "sha256:7d72ce1377eac23bd77aa3541ceb91f2d8bd68687659f8625af8301f0b6b0a63", + "sha256:8dd5df3919c648887e550e836f87b4b83f1429876adce5ead5b5977e333c874d", + "sha256:925cec97aeefda3f950e45e8d4c247e4ce6f83b6ee96e383c82f9bced626151f", + "sha256:986943e27a5c94c0be42fdcc688be1ae1a1349a3dbaa773fa7f9bdada1232b68", + "sha256:9c01db2ef6d5f5b9192c0011624701b0de328868fe0c32601368cd337e77cd1a", + "sha256:9f418779837a3249b7dfc4b3dc7266fa40687e5f0249eedfa7185560ba1ee148", + "sha256:9f5954cd491313743d7bd3623d323b72afceb83d2c2a47921f621bdd9d4c615b", + "sha256:a64e61fa6ab60db0f897f1c30f32b26b330d3a9dc264f089ee9c44f5900fb657", + "sha256:a8886b2c9750ba15193356d9e8608e031cd89a780d0afc53b3101391605b3793", + "sha256:aa0bb9afa799c0301b2760e9af99083a2b08f655c55037945b6a5e227566adc1", + "sha256:b25848041c51d09affafd2708236205cc4483bed8f7f43ecbe63b6a66b447604", + "sha256:bb258c62d7fb4cfe03b3fba09f702ebb84a924f2f004833435e32c93fe8a7f13", + "sha256:c68ab3540809bedcdd9b99e51c12adf11c2ab26554f74d899d8cf55bfa2639a6", + "sha256:ca7ed207956001e6a8a2e3f319cdc37591e53f7eb04aedafa78f96768048c53e", + "sha256:cdbcf206d4b1e5ba2affc6189948cb292cc647593876b96a0b71db44e79a05a1", + "sha256:d53935832dd182d4c1415042187093efcee988af5cd397fb1f394f5bb27f0707", + "sha256:df5a179e5d95ac0263b5e0ccd53311eac486091979dcac106c5cc9e0ee4f2aa2", + "sha256:f73668ecc29e0a20d20970489fffe2ba466e5486eae2f20104bc38bcbe611f64", + "sha256:fdbd087e9e99bc809b15864ebc79dbefe869e3038b64c953d7736f6e6b382dc7", + "sha256:fe324dc40b93e8be996c9fa9291a439bef835a92a2e4cb5c8cbdb1171c168fd6" + ], + "markers": "python_version >= '3.9'", + "version": "==0.22.7" + }, + "dvc": { + "hashes": [ + "sha256:3124b5155e15edb6f09e99c63b4e7eb0b5ec3d3680a6d70469c714b5b9daa077", + "sha256:398a73925496a59e1eaa1c355e03996129e0fc468e203dc450eefeb8c71c6ede" + ], + "index": "pypi", + "markers": "python_version >= '3.8'", + "version": "==3.38.1" + }, + "dvc-data": { + "hashes": [ + "sha256:a15d9b5cb24275020a00072c340fb0a7f3652434fa72ef0b0e87c7c8b7decccb", + "sha256:ab8bb2508a7da36d9746a3ea3d2c3ae1db91314d44881f410feae1b8e83ba078" + ], + "markers": "python_version >= '3.8'", + "version": "==3.7.0" + }, + "dvc-http": { + "hashes": [ + "sha256:1bfd57a9eae3cbfa1db564d90d87003841921a644ab35f3f7735c641cc93d72e", + "sha256:f714f8435634aab943c625f659ddac1188c6ddaf3ff161b39715b83ff39637fc" + ], + "markers": "python_version >= '3.8'", + "version": "==2.32.0" + }, + "dvc-objects": { + "hashes": [ + "sha256:1df945658bea9292ddb71af1a367597568f6cfc4c4a47cca9e6cb34289e732e4", + "sha256:c2512131a9b13bf4e656dba2e56ae308fa1137bbaa6ab046634e58bc463b154f" + ], + "markers": "python_version >= '3.8'", + "version": "==3.0.6" + }, + "dvc-render": { + "hashes": [ + "sha256:40d1cd81760daf34b48fa8362b5002fcbe415e3cdbcf42369b6347d01497ffc0", + "sha256:7e3e3cec1200fda41a99984190f14871f3cb878db7f94c853305056f69614ddb" + ], + "markers": "python_version >= '3.9'", + "version": "==1.0.2" + }, + "dvc-studio-client": { + "hashes": [ + "sha256:93006e3812c830b42ff79746e6c6163e97a3c3ead6722ec2f1dec1d7dbf0b071", + "sha256:db212ff5cf73dce886d0713a5d2bf4bc0bbfb499f3ca8548705ca98aab5addd1" + ], + "markers": "python_version >= '3.9'", + "version": "==0.21.0" + }, + "dvc-task": { + "hashes": [ + "sha256:3891b94cf9d349072ee32ce47217b73530b1905e6dd5a1e378bd74afc8b4c030", + "sha256:909af541bf5fde83439da56c4c0ebac592af178a59b702708fadaacfd6e7b704" + ], + "markers": "python_version >= '3.8'", + "version": "==0.40.2" + }, + "entrypoints": { + "hashes": [ + "sha256:b706eddaa9218a19ebcd67b56818f05bb27589b1ca9e8d797b74affad4ccacd4", + "sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + ], + "markers": "python_version >= '3.6'", + "version": "==0.4" + }, + "etils": { + "extras": [ + "enp", + "epath", + "epy" + ], + "hashes": [ + "sha256:a394cf3476bcec51c221426a70c39cd1006e889456ba41e4d7f12fd6814be7a5", + "sha256:aff3278a3be7fddf302dfd80335e9f924244666c71239cd91e836f3d055f1c4a" + ], + "markers": "python_version >= '3.10'", + "version": "==1.11.0" + }, + "executing": { + "hashes": [ + "sha256:11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa", + "sha256:5d108c028108fe2551d1a7b2e8b713341e2cb4fc0aa7dcf966fa4327a5226755" + ], + "markers": "python_version >= '3.8'", + "version": "==2.2.0" + }, + "fastjsonschema": { + "hashes": [ + "sha256:794d4f0a58f848961ba16af7b9c85a3e88cd360df008c59aac6fc5ae9323b5d4", + "sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667" + ], + "version": "==2.21.1" + }, + "filelock": { + "hashes": [ + "sha256:533dc2f7ba78dc2f0f531fc6c4940addf7b70a481e269a5a3b93be94ffbe8338", + "sha256:ee4e77401ef576ebb38cd7f13b9b28893194acc20a8e68e18730ba9c0e54660e" + ], + "markers": "python_version >= '3.9'", + "version": "==3.17.0" + }, + "flatbuffers": { + "hashes": [ + "sha256:0e9736098ba8f4e48246a0640390f4992c0b1a734e7322a9463d5c3eea00558b", + "sha256:e24a34dcd9fb4e0ea8cc0fc8ef9c5cd61c9d21527a6d536967587a37a4ff9676" + ], + "version": "==25.1.21" + }, + "flatten-dict": { + "hashes": [ + "sha256:506a96b6e6f805b81ae46a0f9f31290beb5fa79ded9d80dbe1b7fa236ab43076", + "sha256:7e245b20c4c718981212210eec4284a330c9f713e632e98765560e05421e48ad" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", + "version": "==0.4.2" + }, + "flufl.lock": { + "hashes": [ + "sha256:96d2c0448ba9fd8fc65d5d681ed7217c8e1625149c1c880bba50559bb680a615", + "sha256:af14172b35bbc58687bd06b70d1693fd8d48cbf0ffde7e51a618c148ae24042d" + ], + "markers": "python_version >= '3.7'", + "version": "==7.1.1" + }, + "fonttools": { + "hashes": [ + "sha256:019ab35daacec241d567174e1e8068191b059a7e171f68483778a91485e8e27b", + "sha256:01bf83e07a44a34d58d22a6af0013c94ed7d876c081ed04e6a6db368db3ec4f2", + "sha256:17a14d3a23e894289288d77abcf4b2e6e198c0e1ec6798522bcc51f1ffbfdf6d", + "sha256:1bf14bcec231408581ee3cafcb23a0ef1821a974a6ff5031ccbc1aad65192de9", + "sha256:240927333041df5377a86d4458bdadea1573bd29589040dcab4e52b6277dfae1", + "sha256:25362494d1f9ef467c210fc1d73116811a01fd507345e865c14ecbd80b323380", + "sha256:2c14aae1b255767f2cb2f8c8de4c50d45f94bf125a5149325d3af0e4f6b39060", + "sha256:2ed53c04d444660a2eeef3d8a8fe8c62d9bd99d50a03b0400624144d3131cf4a", + "sha256:365e7f9005df0a0125d0728aa49340030431ba54b33f20226c5529a26ce4980f", + "sha256:41b52283f68b090b85ba5fd94541ef15c21a17b7c7e3917fd9520297975838fc", + "sha256:444e84d8158ed40427827e5ff8db4d05d89560e19f2a6baf90565880d1c7c08f", + "sha256:4f47f9b4f2674b5841d119a5bffade603777729a23cb6d9413146b6b109cd04e", + "sha256:4f8065f503b2abc9d8d2b241da307c58c80df0e28c5ea8464fe8d2ba3bb76990", + "sha256:53f9b4bf0c4744bfabdd488db6eb374beb3ee4778f54019b48486aebbcc6c77d", + "sha256:546b195de57360e52b6f94bf126b1400004643fc2754705b6ae659293c34e449", + "sha256:57e79e3fdb011792be6e9f73cb2154c37a2b3f14ff09ddec32f4d1591ba56d64", + "sha256:58fbc0dba6c87a9ec57be7e6751a6442911e546750e362b39ff07e30445c355f", + "sha256:59b10b408a68f5c1ecb927ad11860bf534312a236c61f3b20cb6e22bb55265b9", + "sha256:59fbfd348fe3c15b4cb31f0cb81a9fad67c1419596e2f349be0a1e48955775fd", + "sha256:5ad2b4a8bfd94ae6792c2f00e585fcdaa5c7803d87eedaeaa30e81616283e712", + "sha256:6261deeaa54a720405fc4a21dc92f722d1b2c5a977910d464029534b9475f716", + "sha256:686ee7f1d0ef1d8d540039219d256ee89724e9dc3db4c394b4c65f6512228924", + "sha256:742c63ba8e2888dc6cf4cce98d16fe77d79a6c283f5c6d1a8e17d128ecde45fc", + "sha256:7cf3dc8051c0b37034c2661934e8795a1e95ac5cf4f97ce9935cf6f10ba481f0", + "sha256:85dc010bb9dc0fc9cfdb050ace4fb810ff5d5edb6a34045bce83dd4307b1a27c", + "sha256:87afe2a1e81a55131bbae66f3f1718b1faee3218b1261abce036d7d189094c36", + "sha256:8c9061a4027bfc62b22c55885e561d6eb36d3f6d058f7894e4d84eb778580e3f", + "sha256:8e8eb7ca7b3ef580114edd6f9ce9424e534b9cb1a98c918a42930f196b1ac59e", + "sha256:91e989b53cdcb301ebd599c32a95cf397082184d46ec73125dbdc83b56720e2e", + "sha256:928d0a093eaab9bde8b295f01859b0463384b86ba800eb959370734588347444", + "sha256:96f6a1ed5181e80b1db8c1352d5f45c8cef875a9633ad69df6af4ee7c6895077", + "sha256:9e747a98062af9dca29d035417c6f547b956908a0711a66697125596c40ad05a", + "sha256:9f64266bbeccd1c289f4ea2ae4cc8b87daa51ba44bdbf27b3950f6f303ee2ee9", + "sha256:a0723737a3fb16e7d359df797c9c4d8a3fd974dfff1c27d245f6670efb4b8ab6", + "sha256:a0c27b2084eb715bce93b4c3cc2080a8b3fb6aff5a105c221f150df42e79120a", + "sha256:a65d4407ca31ec582d1a7105ee08986f6ef964ddcbe0a2878881926bc23cfba3", + "sha256:a7b3c77c5dcf0a1b4e3b57e976253f5ef09966f811b4b06d36f8eb8672c209fb", + "sha256:a853ee8ac47c2e2e68d5a0f07f7f38eb616d60c4438bcff5c0312322451f15c6", + "sha256:a8602b04451e7f62eda75071210ebea4e2ba7d2a24868eba2cf541232b88357c", + "sha256:aa7868dd7d42992ccd722d70a3bd413d875ca51633b094b5867ab09ed8e78bbe", + "sha256:ac1e3139c9776eb3a5119a25da5665fd961f6b39a5307b62bd427afba69b7c5e", + "sha256:acd86a4605586502f6716a543183dcedc4497a7cbce7fb1ca4e793daa5bfdc12", + "sha256:b5e6868d8952a31cb3643080ea1594adde971bf2a05aae5bc47bf0ac91e79575", + "sha256:b788742d99e7e62b3428728f3af743c6e169b53796c2b885adb0080c256c523e", + "sha256:bb11588c41c9e867cebbf72485963252b2d782e97514845aa3fd372b31f63afe", + "sha256:d073d6e0a5576c7b82d7926c8489f326b6c9381871660bbdeeafe5e9a7b400f7", + "sha256:d3686e74b372313495ffbe58b23304772bc2f7c7fb947da382f250bfc1b0417c", + "sha256:d895f363e03697f7941c278fb7a42fca63d52de5416180ef1892dfd67a136698", + "sha256:e1a06e77f956a5857a4444f689f0ca4a1c4bdbcb38c812805f54a1b21380cc24", + "sha256:f51572d1c8277f91b2be575b7069f8765170cbf7c2d5b1cdd53d40dd2323b792" + ], + "markers": "python_version >= '3.8'", + "version": "==4.55.5" + }, + "fqdn": { + "hashes": [ + "sha256:105ed3677e767fb5ca086a0c1f4bb66ebc3c100be518f0e0d755d9eae164d89f", + "sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' and python_version < '4'", + "version": "==1.5.1" + }, + "frozenlist": { + "hashes": [ + "sha256:000a77d6034fbad9b6bb880f7ec073027908f1b40254b5d6f26210d2dab1240e", + "sha256:03d33c2ddbc1816237a67f66336616416e2bbb6beb306e5f890f2eb22b959cdf", + "sha256:04a5c6babd5e8fb7d3c871dc8b321166b80e41b637c31a995ed844a6139942b6", + "sha256:0996c66760924da6e88922756d99b47512a71cfd45215f3570bf1e0b694c206a", + "sha256:0cc974cc93d32c42e7b0f6cf242a6bd941c57c61b618e78b6c0a96cb72788c1d", + "sha256:0f253985bb515ecd89629db13cb58d702035ecd8cfbca7d7a7e29a0e6d39af5f", + "sha256:11aabdd62b8b9c4b84081a3c246506d1cddd2dd93ff0ad53ede5defec7886b28", + "sha256:12f78f98c2f1c2429d42e6a485f433722b0061d5c0b0139efa64f396efb5886b", + "sha256:140228863501b44b809fb39ec56b5d4071f4d0aa6d216c19cbb08b8c5a7eadb9", + "sha256:1431d60b36d15cda188ea222033eec8e0eab488f39a272461f2e6d9e1a8e63c2", + "sha256:15538c0cbf0e4fa11d1e3a71f823524b0c46299aed6e10ebb4c2089abd8c3bec", + "sha256:15b731db116ab3aedec558573c1a5eec78822b32292fe4f2f0345b7f697745c2", + "sha256:17dcc32fc7bda7ce5875435003220a457bcfa34ab7924a49a1c19f55b6ee185c", + "sha256:1893f948bf6681733aaccf36c5232c231e3b5166d607c5fa77773611df6dc336", + "sha256:189f03b53e64144f90990d29a27ec4f7997d91ed3d01b51fa39d2dbe77540fd4", + "sha256:1a8ea951bbb6cacd492e3948b8da8c502a3f814f5d20935aae74b5df2b19cf3d", + "sha256:1b96af8c582b94d381a1c1f51ffaedeb77c821c690ea5f01da3d70a487dd0a9b", + "sha256:1e76bfbc72353269c44e0bc2cfe171900fbf7f722ad74c9a7b638052afe6a00c", + "sha256:2150cc6305a2c2ab33299453e2968611dacb970d2283a14955923062c8d00b10", + "sha256:226d72559fa19babe2ccd920273e767c96a49b9d3d38badd7c91a0fdeda8ea08", + "sha256:237f6b23ee0f44066219dae14c70ae38a63f0440ce6750f868ee08775073f942", + "sha256:29d94c256679247b33a3dc96cce0f93cbc69c23bf75ff715919332fdbb6a32b8", + "sha256:2b5e23253bb709ef57a8e95e6ae48daa9ac5f265637529e4ce6b003a37b2621f", + "sha256:2d0da8bbec082bf6bf18345b180958775363588678f64998c2b7609e34719b10", + "sha256:2f3f7a0fbc219fb4455264cae4d9f01ad41ae6ee8524500f381de64ffaa077d5", + "sha256:30c72000fbcc35b129cb09956836c7d7abf78ab5416595e4857d1cae8d6251a6", + "sha256:31115ba75889723431aa9a4e77d5f398f5cf976eea3bdf61749731f62d4a4a21", + "sha256:31a9ac2b38ab9b5a8933b693db4939764ad3f299fcaa931a3e605bc3460e693c", + "sha256:366d8f93e3edfe5a918c874702f78faac300209a4d5bf38352b2c1bdc07a766d", + "sha256:374ca2dabdccad8e2a76d40b1d037f5bd16824933bf7bcea3e59c891fd4a0923", + "sha256:44c49271a937625619e862baacbd037a7ef86dd1ee215afc298a417ff3270608", + "sha256:45e0896250900b5aa25180f9aec243e84e92ac84bd4a74d9ad4138ef3f5c97de", + "sha256:498524025a5b8ba81695761d78c8dd7382ac0b052f34e66939c42df860b8ff17", + "sha256:50cf5e7ee9b98f22bdecbabf3800ae78ddcc26e4a435515fc72d97903e8488e0", + "sha256:52ef692a4bc60a6dd57f507429636c2af8b6046db8b31b18dac02cbc8f507f7f", + "sha256:561eb1c9579d495fddb6da8959fd2a1fca2c6d060d4113f5844b433fc02f2641", + "sha256:5a3ba5f9a0dfed20337d3e966dc359784c9f96503674c2faf015f7fe8e96798c", + "sha256:5b6a66c18b5b9dd261ca98dffcb826a525334b2f29e7caa54e182255c5f6a65a", + "sha256:5c28f4b5dbef8a0d8aad0d4de24d1e9e981728628afaf4ea0792f5d0939372f0", + "sha256:5d7f5a50342475962eb18b740f3beecc685a15b52c91f7d975257e13e029eca9", + "sha256:6321899477db90bdeb9299ac3627a6a53c7399c8cd58d25da094007402b039ab", + "sha256:6482a5851f5d72767fbd0e507e80737f9c8646ae7fd303def99bfe813f76cf7f", + "sha256:666534d15ba8f0fda3f53969117383d5dc021266b3c1a42c9ec4855e4b58b9d3", + "sha256:683173d371daad49cffb8309779e886e59c2f369430ad28fe715f66d08d4ab1a", + "sha256:6e9080bb2fb195a046e5177f10d9d82b8a204c0736a97a153c2466127de87784", + "sha256:73f2e31ea8dd7df61a359b731716018c2be196e5bb3b74ddba107f694fbd7604", + "sha256:7437601c4d89d070eac8323f121fcf25f88674627505334654fd027b091db09d", + "sha256:76e4753701248476e6286f2ef492af900ea67d9706a0155335a40ea21bf3b2f5", + "sha256:7707a25d6a77f5d27ea7dc7d1fc608aa0a478193823f88511ef5e6b8a48f9d03", + "sha256:7948140d9f8ece1745be806f2bfdf390127cf1a763b925c4a805c603df5e697e", + "sha256:7a1a048f9215c90973402e26c01d1cff8a209e1f1b53f72b95c13db61b00f953", + "sha256:7d57d8f702221405a9d9b40f9da8ac2e4a1a8b5285aac6100f3393675f0a85ee", + "sha256:7f3c8c1dacd037df16e85227bac13cca58c30da836c6f936ba1df0c05d046d8d", + "sha256:81d5af29e61b9c8348e876d442253723928dce6433e0e76cd925cd83f1b4b817", + "sha256:828afae9f17e6de596825cf4228ff28fbdf6065974e5ac1410cecc22f699d2b3", + "sha256:87f724d055eb4785d9be84e9ebf0f24e392ddfad00b3fe036e43f489fafc9039", + "sha256:8969190d709e7c48ea386db202d708eb94bdb29207a1f269bab1196ce0dcca1f", + "sha256:90646abbc7a5d5c7c19461d2e3eeb76eb0b204919e6ece342feb6032c9325ae9", + "sha256:91d6c171862df0a6c61479d9724f22efb6109111017c87567cfeb7b5d1449fdf", + "sha256:9272fa73ca71266702c4c3e2d4a28553ea03418e591e377a03b8e3659d94fa76", + "sha256:92b5278ed9d50fe610185ecd23c55d8b307d75ca18e94c0e7de328089ac5dcba", + "sha256:97160e245ea33d8609cd2b8fd997c850b56db147a304a262abc2b3be021a9171", + "sha256:977701c081c0241d0955c9586ffdd9ce44f7a7795df39b9151cd9a6fd0ce4cfb", + "sha256:9b7dc0c4338e6b8b091e8faf0db3168a37101943e687f373dce00959583f7439", + "sha256:9b93d7aaa36c966fa42efcaf716e6b3900438632a626fb09c049f6a2f09fc631", + "sha256:9bbcdfaf4af7ce002694a4e10a0159d5a8d20056a12b05b45cea944a4953f972", + "sha256:9c2623347b933fcb9095841f1cc5d4ff0b278addd743e0e966cb3d460278840d", + "sha256:a2fe128eb4edeabe11896cb6af88fca5346059f6c8d807e3b910069f39157869", + "sha256:a72b7a6e3cd2725eff67cd64c8f13335ee18fc3c7befc05aed043d24c7b9ccb9", + "sha256:a9fe0f1c29ba24ba6ff6abf688cb0b7cf1efab6b6aa6adc55441773c252f7411", + "sha256:b97f7b575ab4a8af9b7bc1d2ef7f29d3afee2226bd03ca3875c16451ad5a7723", + "sha256:bdac3c7d9b705d253b2ce370fde941836a5f8b3c5c2b8fd70940a3ea3af7f4f2", + "sha256:c03eff4a41bd4e38415cbed054bbaff4a075b093e2394b6915dca34a40d1e38b", + "sha256:c16d2fa63e0800723139137d667e1056bee1a1cf7965153d2d104b62855e9b99", + "sha256:c1fac3e2ace2eb1052e9f7c7db480818371134410e1f5c55d65e8f3ac6d1407e", + "sha256:ce3aa154c452d2467487765e3adc730a8c153af77ad84096bc19ce19a2400840", + "sha256:cee6798eaf8b1416ef6909b06f7dc04b60755206bddc599f52232606e18179d3", + "sha256:d1b3eb7b05ea246510b43a7e53ed1653e55c2121019a97e60cad7efb881a97bb", + "sha256:d994863bba198a4a518b467bb971c56e1db3f180a25c6cf7bb1949c267f748c3", + "sha256:dd47a5181ce5fcb463b5d9e17ecfdb02b678cca31280639255ce9d0e5aa67af0", + "sha256:dd94994fc91a6177bfaafd7d9fd951bc8689b0a98168aa26b5f543868548d3ca", + "sha256:de537c11e4aa01d37db0d403b57bd6f0546e71a82347a97c6a9f0dcc532b3a45", + "sha256:df6e2f325bfee1f49f81aaac97d2aa757c7646534a06f8f577ce184afe2f0a9e", + "sha256:e66cc454f97053b79c2ab09c17fbe3c825ea6b4de20baf1be28919460dd7877f", + "sha256:e79225373c317ff1e35f210dd5f1344ff31066ba8067c307ab60254cd3a78ad5", + "sha256:f1577515d35ed5649d52ab4319db757bb881ce3b2b796d7283e6634d99ace307", + "sha256:f1e6540b7fa044eee0bb5111ada694cf3dc15f2b0347ca125ee9ca984d5e9e6e", + "sha256:f2ac49a9bedb996086057b75bf93538240538c6d9b38e57c82d51f75a73409d2", + "sha256:f47c9c9028f55a04ac254346e92977bf0f166c483c74b4232bee19a6697e4778", + "sha256:f5f9da7f5dbc00a604fe74aa02ae7c98bcede8a3b8b9666f9f86fc13993bc71a", + "sha256:fd74520371c3c4175142d02a976aee0b4cb4a7cc912a60586ffd8d5929979b30", + "sha256:feeb64bc9bcc6b45c6311c9e9b99406660a9c05ca8a5b30d14a78555088b0b3a" + ], + "markers": "python_version >= '3.8'", + "version": "==1.5.0" + }, + "fsspec": { + "extras": [ + "http" + ], + "hashes": [ + "sha256:670700c977ed2fb51e0d9f9253177ed20cbde4a3e5c0283cc5385b5870c8533f", + "sha256:b520aed47ad9804237ff878b504267a3b0b441e97508bd6d2d8774e3db85cee2" + ], + "markers": "python_version >= '3.8'", + "version": "==2024.12.0" + }, + "funcy": { + "hashes": [ + "sha256:3963315d59d41c6f30c04bc910e10ab50a3ac4a225868bfa96feed133df075cb", + "sha256:53df23c8bb1651b12f095df764bfb057935d49537a56de211b098f4c79614bb0" + ], + "version": "==2.0" + }, + "gast": { + "hashes": [ + "sha256:40feb7b8b8434785585ab224d1568b857edb18297e5a3047f1ba012bc83b42c1", + "sha256:b7adcdd5adbebf1adf17378da5ba3f543684dbec47b1cda1f3997e573cd542c4" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", + "version": "==0.4.0" + }, + "gitdb": { + "hashes": [ + "sha256:5ef71f855d191a3326fcfbc0d5da835f26b13fbcba60c32c21091c349ffdb571", + "sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + ], + "markers": "python_version >= '3.7'", + "version": "==4.0.12" + }, + "gitpython": { + "hashes": [ + "sha256:9e0e10cda9bed1ee64bc9a6de50e7e38a9c9943241cd7f585f6df3ed28011110", + "sha256:c87e30b26253bf5418b01b0660f818967f3c503193838337fe5e573331249269" + ], + "markers": "python_version >= '3.7'", + "version": "==3.1.44" + }, + "google-auth": { + "hashes": [ + "sha256:8285113607d3b80a3f1543b75962447ba8a09fe85783432a784fdeef6ac094c4", + "sha256:e7dae6694313f434a2727bf2906f27ad259bae090d7aa896590d86feec3d9d4a" + ], + "markers": "python_version >= '3.7'", + "version": "==2.38.0" + }, + "google-auth-oauthlib": { + "hashes": [ + "sha256:95880ca704928c300f48194d1770cf5b1462835b6e49db61445a520f793fd5fb", + "sha256:e375064964820b47221a7e1b7ee1fd77051b6323c3f9e3e19785f78ab67ecfc5" + ], + "markers": "python_version >= '3.6'", + "version": "==1.0.0" + }, + "google-pasta": { + "hashes": [ + "sha256:4612951da876b1a10fe3960d7226f0c7682cf901e16ac06e473b267a5afa8954", + "sha256:b32482794a366b5366a32c92a9a9201b107821889935a02b3e51f6b432ea84ed", + "sha256:c9f2c8dfc8f96d0d5808299920721be30c9eec37f2389f28904f454565c8a16e" + ], + "version": "==0.2.0" + }, + "googleapis-common-protos": { + "hashes": [ + "sha256:c3e7b33d15fdca5374cc0a7346dd92ffa847425cc4ea941d970f13680052ec8c", + "sha256:d7abcd75fabb2e0ec9f74466401f6c119a0b498e27370e9be4c94cb7e382b8ed" + ], + "markers": "python_version >= '3.7'", + "version": "==1.66.0" + }, + "grandalf": { + "hashes": [ + "sha256:2813f7aab87f0d20f334a3162ccfbcbf085977134a17a5b516940a93a77ea974", + "sha256:793ca254442f4a79252ea9ff1ab998e852c1e071b863593e5383afee906b4185", + "sha256:e62f76c6abadf74e9489bf6a5db0afce544a5e3e543708cf52e4707fd0a1a4f3" + ], + "version": "==0.8" + }, + "greenlet": { + "hashes": [ + "sha256:0153404a4bb921f0ff1abeb5ce8a5131da56b953eda6e14b88dc6bbc04d2049e", + "sha256:03a088b9de532cbfe2ba2034b2b85e82df37874681e8c470d6fb2f8c04d7e4b7", + "sha256:04b013dc07c96f83134b1e99888e7a79979f1a247e2a9f59697fa14b5862ed01", + "sha256:05175c27cb459dcfc05d026c4232f9de8913ed006d42713cb8a5137bd49375f1", + "sha256:09fc016b73c94e98e29af67ab7b9a879c307c6731a2c9da0db5a7d9b7edd1159", + "sha256:0bbae94a29c9e5c7e4a2b7f0aae5c17e8e90acbfd3bf6270eeba60c39fce3563", + "sha256:0fde093fb93f35ca72a556cf72c92ea3ebfda3d79fc35bb19fbe685853869a83", + "sha256:1443279c19fca463fc33e65ef2a935a5b09bb90f978beab37729e1c3c6c25fe9", + "sha256:1776fd7f989fc6b8d8c8cb8da1f6b82c5814957264d1f6cf818d475ec2bf6395", + "sha256:1d3755bcb2e02de341c55b4fca7a745a24a9e7212ac953f6b3a48d117d7257aa", + "sha256:23f20bb60ae298d7d8656c6ec6db134bca379ecefadb0b19ce6f19d1f232a942", + "sha256:275f72decf9932639c1c6dd1013a1bc266438eb32710016a1c742df5da6e60a1", + "sha256:2846930c65b47d70b9d178e89c7e1a69c95c1f68ea5aa0a58646b7a96df12441", + "sha256:3319aa75e0e0639bc15ff54ca327e8dc7a6fe404003496e3c6925cd3142e0e22", + "sha256:346bed03fe47414091be4ad44786d1bd8bef0c3fcad6ed3dee074a032ab408a9", + "sha256:36b89d13c49216cadb828db8dfa6ce86bbbc476a82d3a6c397f0efae0525bdd0", + "sha256:37b9de5a96111fc15418819ab4c4432e4f3c2ede61e660b1e33971eba26ef9ba", + "sha256:396979749bd95f018296af156201d6211240e7a23090f50a8d5d18c370084dc3", + "sha256:3b2813dc3de8c1ee3f924e4d4227999285fd335d1bcc0d2be6dc3f1f6a318ec1", + "sha256:411f015496fec93c1c8cd4e5238da364e1da7a124bcb293f085bf2860c32c6f6", + "sha256:47da355d8687fd65240c364c90a31569a133b7b60de111c255ef5b606f2ae291", + "sha256:48ca08c771c268a768087b408658e216133aecd835c0ded47ce955381105ba39", + "sha256:4afe7ea89de619adc868e087b4d2359282058479d7cfb94970adf4b55284574d", + "sha256:4ce3ac6cdb6adf7946475d7ef31777c26d94bccc377e070a7986bd2d5c515467", + "sha256:4ead44c85f8ab905852d3de8d86f6f8baf77109f9da589cb4fa142bd3b57b475", + "sha256:54558ea205654b50c438029505def3834e80f0869a70fb15b871c29b4575ddef", + "sha256:5e06afd14cbaf9e00899fae69b24a32f2196c19de08fcb9f4779dd4f004e5e7c", + "sha256:62ee94988d6b4722ce0028644418d93a52429e977d742ca2ccbe1c4f4a792511", + "sha256:63e4844797b975b9af3a3fb8f7866ff08775f5426925e1e0bbcfe7932059a12c", + "sha256:6510bf84a6b643dabba74d3049ead221257603a253d0a9873f55f6a59a65f822", + "sha256:667a9706c970cb552ede35aee17339a18e8f2a87a51fba2ed39ceeeb1004798a", + "sha256:6ef9ea3f137e5711f0dbe5f9263e8c009b7069d8a1acea822bd5e9dae0ae49c8", + "sha256:7017b2be767b9d43cc31416aba48aab0d2309ee31b4dbf10a1d38fb7972bdf9d", + "sha256:7124e16b4c55d417577c2077be379514321916d5790fa287c9ed6f23bd2ffd01", + "sha256:73aaad12ac0ff500f62cebed98d8789198ea0e6f233421059fa68a5aa7220145", + "sha256:77c386de38a60d1dfb8e55b8c1101d68c79dfdd25c7095d51fec2dd800892b80", + "sha256:7876452af029456b3f3549b696bb36a06db7c90747740c5302f74a9e9fa14b13", + "sha256:7939aa3ca7d2a1593596e7ac6d59391ff30281ef280d8632fa03d81f7c5f955e", + "sha256:8320f64b777d00dd7ccdade271eaf0cad6636343293a25074cc5566160e4de7b", + "sha256:85f3ff71e2e60bd4b4932a043fbbe0f499e263c628390b285cb599154a3b03b1", + "sha256:8b8b36671f10ba80e159378df9c4f15c14098c4fd73a36b9ad715f057272fbef", + "sha256:93147c513fac16385d1036b7e5b102c7fbbdb163d556b791f0f11eada7ba65dc", + "sha256:935e943ec47c4afab8965954bf49bfa639c05d4ccf9ef6e924188f762145c0ff", + "sha256:94b6150a85e1b33b40b1464a3f9988dcc5251d6ed06842abff82e42632fac120", + "sha256:94ebba31df2aa506d7b14866fed00ac141a867e63143fe5bca82a8e503b36437", + "sha256:95ffcf719966dd7c453f908e208e14cde192e09fde6c7186c8f1896ef778d8cd", + "sha256:98884ecf2ffb7d7fe6bd517e8eb99d31ff7855a840fa6d0d63cd07c037f6a981", + "sha256:99cfaa2110534e2cf3ba31a7abcac9d328d1d9f1b95beede58294a60348fba36", + "sha256:9e8f8c9cb53cdac7ba9793c276acd90168f416b9ce36799b9b885790f8ad6c0a", + "sha256:a0dfc6c143b519113354e780a50381508139b07d2177cb6ad6a08278ec655798", + "sha256:b2795058c23988728eec1f36a4e5e4ebad22f8320c85f3587b539b9ac84128d7", + "sha256:b42703b1cf69f2aa1df7d1030b9d77d3e584a70755674d60e710f0af570f3761", + "sha256:b7cede291382a78f7bb5f04a529cb18e068dd29e0fb27376074b6d0317bf4dd0", + "sha256:b8a678974d1f3aa55f6cc34dc480169d58f2e6d8958895d68845fa4ab566509e", + "sha256:b8da394b34370874b4572676f36acabac172602abf054cbc4ac910219f3340af", + "sha256:c3a701fe5a9695b238503ce5bbe8218e03c3bcccf7e204e455e7462d770268aa", + "sha256:c4aab7f6381f38a4b42f269057aee279ab0fc7bf2e929e3d4abfae97b682a12c", + "sha256:ca9d0ff5ad43e785350894d97e13633a66e2b50000e8a183a50a88d834752d42", + "sha256:d0028e725ee18175c6e422797c407874da24381ce0690d6b9396c204c7f7276e", + "sha256:d21e10da6ec19b457b82636209cbe2331ff4306b54d06fa04b7c138ba18c8a81", + "sha256:d5e975ca70269d66d17dd995dafc06f1b06e8cb1ec1e9ed54c1d1e4a7c4cf26e", + "sha256:da7a9bff22ce038e19bf62c4dd1ec8391062878710ded0a845bcf47cc0200617", + "sha256:db32b5348615a04b82240cc67983cb315309e88d444a288934ee6ceaebcad6cc", + "sha256:dcc62f31eae24de7f8dce72134c8651c58000d3b1868e01392baea7c32c247de", + "sha256:dfc59d69fc48664bc693842bd57acfdd490acafda1ab52c7836e3fc75c90a111", + "sha256:e347b3bfcf985a05e8c0b7d462ba6f15b1ee1c909e2dcad795e49e91b152c383", + "sha256:e4d333e558953648ca09d64f13e6d8f0523fa705f51cae3f03b5983489958c70", + "sha256:ed10eac5830befbdd0c32f83e8aa6288361597550ba669b04c48f0f9a2c843c6", + "sha256:efc0f674aa41b92da8c49e0346318c6075d734994c3c4e4430b1c3f853e498e4", + "sha256:f1695e76146579f8c06c1509c7ce4dfe0706f49c6831a817ac04eebb2fd02011", + "sha256:f1d4aeb8891338e60d1ab6127af1fe45def5259def8094b9c7e34690c8858803", + "sha256:f406b22b7c9a9b4f8aa9d2ab13d6ae0ac3e85c9a809bd590ad53fed2bf70dc79", + "sha256:f6ff3b14f2df4c41660a7dec01045a045653998784bf8cfcb5a525bdffffbc8f" + ], + "markers": "python_version >= '3.7'", + "version": "==3.1.1" + }, + "grpcio": { + "hashes": [ + "sha256:0495c86a55a04a874c7627fd33e5beaee771917d92c0e6d9d797628ac40e7655", + "sha256:07269ff4940f6fb6710951116a04cd70284da86d0a4368fd5a3b552744511f5a", + "sha256:0a5c78d5198a1f0aa60006cd6eb1c912b4a1520b6a3968e677dbcba215fabb40", + "sha256:0ba0a173f4feacf90ee618fbc1a27956bfd21260cd31ced9bc707ef551ff7dc7", + "sha256:0cd430b9215a15c10b0e7d78f51e8a39d6cf2ea819fd635a7214fae600b1da27", + "sha256:0de706c0a5bb9d841e353f6343a9defc9fc35ec61d6eb6111802f3aa9fef29e1", + "sha256:17325b0be0c068f35770f944124e8839ea3185d6d54862800fc28cc2ffad205a", + "sha256:2394e3381071045a706ee2eeb6e08962dd87e8999b90ac15c55f56fa5a8c9597", + "sha256:27cc75e22c5dba1fbaf5a66c778e36ca9b8ce850bf58a9db887754593080d839", + "sha256:2b0d02e4b25a5c1f9b6c7745d4fa06efc9fd6a611af0fb38d3ba956786b95199", + "sha256:374d014f29f9dfdb40510b041792e0e2828a1389281eb590df066e1cc2b404e5", + "sha256:3b0f01f6ed9994d7a0b27eeddea43ceac1b7e6f3f9d86aeec0f0064b8cf50fdb", + "sha256:4119fed8abb7ff6c32e3d2255301e59c316c22d31ab812b3fbcbaf3d0d87cc68", + "sha256:412faabcc787bbc826f51be261ae5fa996b21263de5368a55dc2cf824dc5090e", + "sha256:4f1937f47c77392ccd555728f564a49128b6a197a05a5cd527b796d36f3387d0", + "sha256:5413549fdf0b14046c545e19cfc4eb1e37e9e1ebba0ca390a8d4e9963cab44d2", + "sha256:558c386ecb0148f4f99b1a65160f9d4b790ed3163e8610d11db47838d452512d", + "sha256:58ad9ba575b39edef71f4798fdb5c7b6d02ad36d47949cd381d4392a5c9cbcd3", + "sha256:5ea67c72101d687d44d9c56068328da39c9ccba634cabb336075fae2eab0d04b", + "sha256:7385b1cb064734005204bc8994eed7dcb801ed6c2eda283f613ad8c6c75cf873", + "sha256:7c73c42102e4a5ec76608d9b60227d917cea46dff4d11d372f64cbeb56d259d0", + "sha256:8058667a755f97407fca257c844018b80004ae8035565ebc2812cc550110718d", + "sha256:879a61bf52ff8ccacbedf534665bb5478ec8e86ad483e76fe4f729aaef867cab", + "sha256:880bfb43b1bb8905701b926274eafce5c70a105bc6b99e25f62e98ad59cb278e", + "sha256:8d1584a68d5922330025881e63a6c1b54cc8117291d382e4fa69339b6d914c56", + "sha256:95469d1977429f45fe7df441f586521361e235982a0b39e33841549143ae2851", + "sha256:9e654c4b17d07eab259d392e12b149c3a134ec52b11ecdc6a515b39aceeec898", + "sha256:a31d7e3b529c94e930a117b2175b2efd179d96eb3c7a21ccb0289a8ab05b645c", + "sha256:aa47688a65643afd8b166928a1da6247d3f46a2784d301e48ca1cc394d2ffb40", + "sha256:aa573896aeb7d7ce10b1fa425ba263e8dddd83d71530d1322fd3a16f31257b4a", + "sha256:aba19419aef9b254e15011b230a180e26e0f6864c90406fdbc255f01d83bc83c", + "sha256:ac073fe1c4cd856ebcf49e9ed6240f4f84d7a4e6ee95baa5d66ea05d3dd0df7f", + "sha256:b3c76701428d2df01964bc6479422f20e62fcbc0a37d82ebd58050b86926ef8c", + "sha256:b745d2c41b27650095e81dea7091668c040457483c9bdb5d0d9de8f8eb25e59f", + "sha256:bb491125103c800ec209d84c9b51f1c60ea456038e4734688004f377cfacc113", + "sha256:c1af8e15b0f0fe0eac75195992a63df17579553b0c4af9f8362cc7cc99ccddf4", + "sha256:c78b339869f4dbf89881e0b6fbf376313e4f845a42840a7bdf42ee6caed4b11f", + "sha256:cb5277db254ab7586769e490b7b22f4ddab3876c490da0a1a9d7c695ccf0bf77", + "sha256:cbce24409beaee911c574a3d75d12ffb8c3e3dd1b813321b1d7a96bbcac46bf4", + "sha256:cd24d2d9d380fbbee7a5ac86afe9787813f285e684b0271599f95a51bce33528", + "sha256:ce7df14b2dcd1102a2ec32f621cc9fab6695effef516efbc6b063ad749867295", + "sha256:d24035d49e026353eb042bf7b058fb831db3e06d52bee75c5f2f3ab453e71aca", + "sha256:d405b005018fd516c9ac529f4b4122342f60ec1cee181788249372524e6db429", + "sha256:d63764963412e22f0491d0d32833d71087288f4e24cbcddbae82476bfa1d81fd", + "sha256:dbe41ad140df911e796d4463168e33ef80a24f5d21ef4d1e310553fcd2c4a386", + "sha256:dfa089a734f24ee5f6880c83d043e4f46bf812fcea5181dcb3a572db1e79e01c", + "sha256:e27585831aa6b57b9250abaf147003e126cd3a6c6ca0c531a01996f31709bed1", + "sha256:e7831a0fc1beeeb7759f737f5acd9fdcda520e955049512d68fda03d91186eea", + "sha256:ed9718f17fbdb472e33b869c77a16d0b55e166b100ec57b016dc7de9c8d236bf", + "sha256:ef4c14508299b1406c32bdbb9fb7b47612ab979b04cf2b27686ea31882387cff", + "sha256:f19375f0300b96c0117aca118d400e76fede6db6e91f3c34b7b035822e06c35f", + "sha256:f2af68a6f5c8f78d56c145161544ad0febbd7479524a59c16b3e25053f39c87f", + "sha256:f32090238b720eb585248654db8e3afc87b48d26ac423c8dde8334a232ff53c9", + "sha256:fe9dbd916df3b60e865258a8c72ac98f3ac9e2a9542dcb72b7a34d236242a5ce", + "sha256:ff4a8112a79464919bb21c18e956c54add43ec9a4850e3949da54f61c241a4a6" + ], + "markers": "python_version >= '3.8'", + "version": "==1.70.0" + }, + "gto": { + "hashes": [ + "sha256:22c65b2b2c9438fb2eb31c31f12a759e83d7ea02957a856836ba630ab007e7f2", + "sha256:b422db71df9b3be8d03ab24620040a8c04cbfada1af371940076b5d9821c9ef4" + ], + "markers": "python_version >= '3.8'", + "version": "==1.6.2" + }, + "h5py": { + "hashes": [ + "sha256:018a4597f35092ae3fb28ee851fdc756d2b88c96336b8480e124ce1ac6fb9166", + "sha256:050a4f2c9126054515169c49cb900949814987f0c7ae74c341b0c9f9b5056834", + "sha256:06a903a4e4e9e3ebbc8b548959c3c2552ca2d70dac14fcfa650d9261c66939ed", + "sha256:1473348139b885393125126258ae2d70753ef7e9cec8e7848434f385ae72069e", + "sha256:2f0f1a382cbf494679c07b4371f90c70391dedb027d517ac94fa2c05299dacda", + "sha256:326d70b53d31baa61f00b8aa5f95c2fcb9621a3ee8365d770c551a13dbbcbfdf", + "sha256:3b15d8dbd912c97541312c0e07438864d27dbca857c5ad634de68110c6beb1c2", + "sha256:3fdf95092d60e8130ba6ae0ef7a9bd4ade8edbe3569c13ebbaf39baefffc5ba4", + "sha256:4532c7e97fbef3d029735db8b6f5bf01222d9ece41e309b20d63cfaae2fb5c4d", + "sha256:513171e90ed92236fc2ca363ce7a2fc6f2827375efcbb0cc7fbdd7fe11fecafc", + "sha256:52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8", + "sha256:577d618d6b6dea3da07d13cc903ef9634cde5596b13e832476dd861aaf651f3e", + "sha256:59400f88343b79655a242068a9c900001a34b63e3afb040bd7cdf717e440f653", + "sha256:59685fe40d8c1fbbee088c88cd4da415a2f8bee5c270337dc5a1c4aa634e3307", + "sha256:5c4b41d1019322a5afc5082864dfd6359f8935ecd37c11ac0029be78c5d112c9", + "sha256:62be1fc0ef195891949b2c627ec06bc8e837ff62d5b911b6e42e38e0f20a897d", + "sha256:6fdf6d7936fa824acfa27305fe2d9f39968e539d831c5bae0e0d83ed521ad1ac", + "sha256:7b3b8f3b48717e46c6a790e3128d39c61ab595ae0a7237f06dfad6a3b51d5351", + "sha256:84342bffd1f82d4f036433e7039e241a243531a1d3acd7341b35ae58cdab05bf", + "sha256:ad8a76557880aed5234cfe7279805f4ab5ce16b17954606cca90d578d3e713ef", + "sha256:ba51c0c5e029bb5420a343586ff79d56e7455d496d18a30309616fdbeed1068f", + "sha256:cb65f619dfbdd15e662423e8d257780f9a66677eae5b4b3fc9dca70b5fd2d2a3", + "sha256:ccd9006d92232727d23f784795191bfd02294a4f2ba68708825cb1da39511a93", + "sha256:d2b8dd64f127d8b324f5d2cd1c0fd6f68af69084e9e47d27efeb9e28e685af3e", + "sha256:d3e465aee0ec353949f0f46bf6c6f9790a2006af896cee7c178a8c3e5090aa32", + "sha256:e4d51919110a030913201422fb07987db4338eba5ec8c5a15d6fab8e03d443fc" + ], + "markers": "python_version >= '3.9'", + "version": "==3.12.1" + }, + "hydra-core": { + "hashes": [ + "sha256:8a878ed67216997c3e9d88a8e72e7b4767e81af37afb4ea3334b269a4390a824", + "sha256:fa0238a9e31df3373b35b0bfb672c34cc92718d21f81311d8996a16de1141d8b" + ], + "version": "==1.3.2" + }, + "idna": { + "hashes": [ + "sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9", + "sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3" + ], + "markers": "python_version >= '3.6'", + "version": "==3.10" + }, + "imagesize": { + "hashes": [ + "sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b", + "sha256:69150444affb9cb0d5cc5a92b3676f0b2fb7cd9ae39e947a5e11a36b4497cd4a" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", + "version": "==1.4.1" + }, + "importlib-metadata": { + "hashes": [ + "sha256:02a89390c1e15fdfdc0d7c6b25cb3e62650d0494005c97d6f148bf5b9787525e", + "sha256:310b41d755445d74569f993ccfc22838295d9fe005425094fad953d7f15c8580" + ], + "markers": "python_version >= '3.9'", + "version": "==8.6.1" + }, + "importlib-resources": { + "hashes": [ + "sha256:185f87adef5bcc288449d98fb4fba07cea78bc036455dd44c5fc4a2fe78fed2c", + "sha256:789cfdc3ed28c78b67a06acb8126751ced69a3d5f79c095a98298cd8a760ccec" + ], + "markers": "python_version >= '3.9'", + "version": "==6.5.2" + }, + "ipykernel": { + "hashes": [ + "sha256:afdb66ba5aa354b09b91379bac28ae4afebbb30e8b39510c9690afb7a10421b5", + "sha256:f093a22c4a40f8828f8e330a9c297cb93dcab13bd9678ded6de8e5cf81c56215" + ], + "markers": "python_version >= '3.8'", + "version": "==6.29.5" + }, + "ipython": { + "hashes": [ + "sha256:07232af52a5ba146dc3372c7bf52a0f890a23edf38d77caef8d53f9cdc2584c1", + "sha256:7468edaf4f6de3e1b912e57f66c241e6fd3c7099f2ec2136e239e142e800274d" + ], + "markers": "python_version >= '3.10'", + "version": "==8.23.0" + }, + "isoduration": { + "hashes": [ + "sha256:ac2f9015137935279eac671f94f89eb00584f940f5dc49462a0c4ee692ba1bd9", + "sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + ], + "markers": "python_version >= '3.7'", + "version": "==20.11.0" + }, + "iterative-telemetry": { + "hashes": [ + "sha256:53686c3e912a33e8bf6975b878fd4bd0a7d589c8bad0a6a5573714af9e731dc2", + "sha256:823688e48ef02f25b1aca2e11ddf700fdea2b97619c6aeee3b47c2a0ee58e527" + ], + "markers": "python_version >= '3.8'", + "version": "==0.0.9" + }, + "jedi": { + "hashes": [ + "sha256:4770dc3de41bde3966b02eb84fbcf557fb33cce26ad23da12c742fb50ecb11f0", + "sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + ], + "markers": "python_version >= '3.6'", + "version": "==0.19.2" + }, + "jinja2": { + "hashes": [ + "sha256:8fefff8dc3034e27bb80d67c671eb8a9bc424c0ef4c0826edbff304cceff43bb", + "sha256:aba0f4dc9ed8013c424088f68a5c226f7d6097ed89b246d7749c2ec4175c6adb" + ], + "markers": "python_version >= '3.7'", + "version": "==3.1.5" + }, + "jmespath": { + "hashes": [ + "sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980", + "sha256:90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe" + ], + "markers": "python_version >= '3.7'", + "version": "==1.0.1" + }, + "joblib": { + "hashes": [ + "sha256:06d478d5674cbc267e7496a410ee875abd68e4340feff4490bcb7afb88060ae6", + "sha256:2382c5816b2636fbd20a09e0f4e9dad4736765fdfb7dca582943b9c1366b3f0e" + ], + "markers": "python_version >= '3.8'", + "version": "==1.4.2" + }, + "json5": { + "hashes": [ + "sha256:19b23410220a7271e8377f81ba8aacba2fdd56947fbb137ee5977cbe1f5e8dfa", + "sha256:e66941c8f0a02026943c52c2eb34ebeb2a6f819a0be05920a6f5243cd30fd559" + ], + "markers": "python_full_version >= '3.8.0'", + "version": "==0.10.0" + }, + "jsonpointer": { + "hashes": [ + "sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942", + "sha256:2b2d729f2091522d61c3b31f82e11870f60b68f43fbc705cb76bf4b832af59ef" + ], + "markers": "python_version >= '3.7'", + "version": "==3.0.0" + }, + "jsonschema": { + "extras": [ + "format-nongpl" + ], + "hashes": [ + "sha256:d71497fef26351a33265337fa77ffeb82423f3ea21283cd9467bb03999266bc4", + "sha256:fbadb6f8b144a8f8cf9f0b89ba94501d143e50411a1278633f56a7acf7fd5566" + ], + "markers": "python_version >= '3.8'", + "version": "==4.23.0" + }, + "jsonschema-specifications": { + "hashes": [ + "sha256:0f38b83639958ce1152d02a7f062902c41c8fd20d558b0c34344292d417ae272", + "sha256:a09a0680616357d9a0ecf05c12ad234479f549239d0f5b55f3deea67475da9bf" + ], + "markers": "python_version >= '3.9'", + "version": "==2024.10.1" + }, + "jupyter-book": { + "hashes": [ + "sha256:7671264952abd1ca3f5e713b03e138dda710c92a985c49154f398817fe089968", + "sha256:8a1634ec16f7eedee0d116f1e5fb7c48203289ad92da42e09519dc71d956c010" + ], + "index": "pypi", + "markers": "python_version >= '3.7'", + "version": "==0.15.1" + }, + "jupyter-cache": { + "hashes": [ + "sha256:26f83901143edf4af2f3ff5a91e2d2ad298e46e2cee03c8071d37a23a63ccbfc", + "sha256:2fce7d4975805c77f75bdfc1bc2e82bc538b8e5b1af27f2f5e06d55b9f996a82" + ], + "markers": "python_version ~= '3.8'", + "version": "==0.6.1" + }, + "jupyter-client": { + "hashes": [ + "sha256:35b3a0947c4a6e9d589eb97d7d4cd5e90f910ee73101611f01283732bd6d9419", + "sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + ], + "markers": "python_version >= '3.8'", + "version": "==8.6.3" + }, + "jupyter-core": { + "hashes": [ + "sha256:4f7315d2f6b4bcf2e3e7cb6e46772eba760ae459cd1f59d29eb57b0a01bd7409", + "sha256:aa5f8d32bbf6b431ac830496da7392035d6f61b4f54872f15c4bd2a9c3f536d9" + ], + "markers": "python_version >= '3.8'", + "version": "==5.7.2" + }, + "jupyter-events": { + "hashes": [ + "sha256:36399b41ce1ca45fe8b8271067d6a140ffa54cec4028e95491c93b78a855cacf", + "sha256:c0bc56a37aac29c1fbc3bcfbddb8c8c49533f9cf11f1c4e6adadba936574ab90" + ], + "markers": "python_version >= '3.9'", + "version": "==0.11.0" + }, + "jupyter-lsp": { + "hashes": [ + "sha256:45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da", + "sha256:793147a05ad446f809fd53ef1cd19a9f5256fd0a2d6b7ce943a982cb4f545001" + ], + "markers": "python_version >= '3.8'", + "version": "==2.2.5" + }, + "jupyter-server": { + "hashes": [ + "sha256:872d989becf83517012ee669f09604aa4a28097c0bd90b2f424310156c2cdae3", + "sha256:9d446b8697b4f7337a1b7cdcac40778babdd93ba614b6d68ab1c0c918f1c4084" + ], + "markers": "python_version >= '3.9'", + "version": "==2.15.0" + }, + "jupyter-server-mathjax": { + "hashes": [ + "sha256:416389dde2010df46d5fbbb7adb087a5607111070af65a1445391040f2babb5e", + "sha256:bb1e6b6dc0686c1fe386a22b5886163db548893a99c2810c36399e9c4ca23943" + ], + "markers": "python_version >= '3.7'", + "version": "==0.2.6" + }, + "jupyter-server-terminals": { + "hashes": [ + "sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa", + "sha256:5ae0295167220e9ace0edcfdb212afd2b01ee8d179fe6f23c899590e9b8a5269" + ], + "markers": "python_version >= '3.8'", + "version": "==0.5.3" + }, + "jupyterlab": { + "hashes": [ + "sha256:46177eb8ede70dc73be922ac99f8ef943bdc2dfbc6a31b353c4bde848a35dee1", + "sha256:fe010ad9e37017488b468632ef2ead255fc7c671c5b64d9ca13e1f7b7e665c37" + ], + "index": "pypi", + "markers": "python_version >= '3.8'", + "version": "==4.0.10" + }, + "jupyterlab-pygments": { + "hashes": [ + "sha256:721aca4d9029252b11cfa9d185e5b5af4d54772bb8072f9b7036f4170054d35d", + "sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + ], + "markers": "python_version >= '3.8'", + "version": "==0.3.0" + }, + "jupyterlab-rise": { + "hashes": [ + "sha256:b8a107d5e37d6ba97f78659a8765c0152fb6cbc2530ccb5d670eeecefab88fe4", + "sha256:d4ac7e2018371317510b0e94d29fdcac1ec0a59c610bb06aa7b27257b1d80285" + ], + "index": "pypi", + "markers": "python_version >= '3.8'", + "version": "==0.42.0" + }, + "jupyterlab-server": { + "hashes": [ + "sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4", + "sha256:eb36caca59e74471988f0ae25c77945610b887f777255aa21f8065def9e51ed4" + ], + "markers": "python_version >= '3.8'", + "version": "==2.27.3" + }, + "keras": { + "hashes": [ + "sha256:5ce5f706f779fa7330e63632f327b75ce38144a120376b2ae1917c00fa6136af", + "sha256:5df12cc241a015a11b65ddb452c0eeb2744fce21d9b54ba48db87492568ccc68" + ], + "markers": "python_version >= '3.8'", + "version": "==2.13.1" + }, + "kiwisolver": { + "hashes": [ + "sha256:01c3d31902c7db5fb6182832713d3b4122ad9317c2c5877d0539227d96bb2e50", + "sha256:034d2c891f76bd3edbdb3ea11140d8510dca675443da7304205a2eaa45d8334c", + "sha256:085940635c62697391baafaaeabdf3dd7a6c3643577dde337f4d66eba021b2b8", + "sha256:08e77738ed7538f036cd1170cbed942ef749137b1311fa2bbe2a7fda2f6bf3cc", + "sha256:111793b232842991be367ed828076b03d96202c19221b5ebab421ce8bcad016f", + "sha256:11e1022b524bd48ae56c9b4f9296bce77e15a2e42a502cceba602f804b32bb79", + "sha256:151dffc4865e5fe6dafce5480fab84f950d14566c480c08a53c663a0020504b6", + "sha256:16523b40aab60426ffdebe33ac374457cf62863e330a90a0383639ce14bf44b2", + "sha256:1732e065704b47c9afca7ffa272f845300a4eb959276bf6970dc07265e73b605", + "sha256:1c8ceb754339793c24aee1c9fb2485b5b1f5bb1c2c214ff13368431e51fc9a09", + "sha256:23454ff084b07ac54ca8be535f4174170c1094a4cff78fbae4f73a4bcc0d4dab", + "sha256:23d5f023bdc8c7e54eb65f03ca5d5bb25b601eac4d7f1a042888a1f45237987e", + "sha256:257af1622860e51b1a9d0ce387bf5c2c4f36a90594cb9514f55b074bcc787cfc", + "sha256:286b18e86682fd2217a48fc6be6b0f20c1d0ed10958d8dc53453ad58d7be0bf8", + "sha256:291331973c64bb9cce50bbe871fb2e675c4331dab4f31abe89f175ad7679a4d7", + "sha256:2f0121b07b356a22fb0414cec4666bbe36fd6d0d759db3d37228f496ed67c880", + "sha256:3452046c37c7692bd52b0e752b87954ef86ee2224e624ef7ce6cb21e8c41cc1b", + "sha256:34d142fba9c464bc3bbfeff15c96eab0e7310343d6aefb62a79d51421fcc5f1b", + "sha256:369b75d40abedc1da2c1f4de13f3482cb99e3237b38726710f4a793432b1c5ff", + "sha256:36dbbfd34838500a31f52c9786990d00150860e46cd5041386f217101350f0d3", + "sha256:370fd2df41660ed4e26b8c9d6bbcad668fbe2560462cba151a721d49e5b6628c", + "sha256:3a96c0e790ee875d65e340ab383700e2b4891677b7fcd30a699146f9384a2bb0", + "sha256:3b9b4d2892fefc886f30301cdd80debd8bb01ecdf165a449eb6e78f79f0fabd6", + "sha256:3cd3bc628b25f74aedc6d374d5babf0166a92ff1317f46267f12d2ed54bc1d30", + "sha256:3ddc373e0eef45b59197de815b1b28ef89ae3955e7722cc9710fb91cd77b7f47", + "sha256:4191ee8dfd0be1c3666ccbac178c5a05d5f8d689bbe3fc92f3c4abec817f8fe0", + "sha256:54a62808ac74b5e55a04a408cda6156f986cefbcf0ada13572696b507cc92fa1", + "sha256:577facaa411c10421314598b50413aa1ebcf5126f704f1e5d72d7e4e9f020d90", + "sha256:641f2ddf9358c80faa22e22eb4c9f54bd3f0e442e038728f500e3b978d00aa7d", + "sha256:65ea09a5a3faadd59c2ce96dc7bf0f364986a315949dc6374f04396b0d60e09b", + "sha256:68269e60ee4929893aad82666821aaacbd455284124817af45c11e50a4b42e3c", + "sha256:69b5637c3f316cab1ec1c9a12b8c5f4750a4c4b71af9157645bf32830e39c03a", + "sha256:7506488470f41169b86d8c9aeff587293f530a23a23a49d6bc64dab66bedc71e", + "sha256:768cade2c2df13db52475bd28d3a3fac8c9eff04b0e9e2fda0f3760f20b3f7fc", + "sha256:77e6f57a20b9bd4e1e2cedda4d0b986ebd0216236f0106e55c28aea3d3d69b16", + "sha256:782bb86f245ec18009890e7cb8d13a5ef54dcf2ebe18ed65f795e635a96a1c6a", + "sha256:7a3ad337add5148cf51ce0b55642dc551c0b9d6248458a757f98796ca7348712", + "sha256:7cd2785b9391f2873ad46088ed7599a6a71e762e1ea33e87514b1a441ed1da1c", + "sha256:7e9a60b50fe8b2ec6f448fe8d81b07e40141bfced7f896309df271a0b92f80f3", + "sha256:84a2f830d42707de1d191b9490ac186bf7997a9495d4e9072210a1296345f7dc", + "sha256:856b269c4d28a5c0d5e6c1955ec36ebfd1651ac00e1ce0afa3e28da95293b561", + "sha256:858416b7fb777a53f0c59ca08190ce24e9abbd3cffa18886a5781b8e3e26f65d", + "sha256:87b287251ad6488e95b4f0b4a79a6d04d3ea35fde6340eb38fbd1ca9cd35bbbc", + "sha256:88c6f252f6816a73b1f8c904f7bbe02fd67c09a69f7cb8a0eecdbf5ce78e63db", + "sha256:893f5525bb92d3d735878ec00f781b2de998333659507d29ea4466208df37bed", + "sha256:89c107041f7b27844179ea9c85d6da275aa55ecf28413e87624d033cf1f6b751", + "sha256:918139571133f366e8362fa4a297aeba86c7816b7ecf0bc79168080e2bd79957", + "sha256:99cea8b9dd34ff80c521aef46a1dddb0dcc0283cf18bde6d756f1e6f31772165", + "sha256:a17b7c4f5b2c51bb68ed379defd608a03954a1845dfed7cc0117f1cc8a9b7fd2", + "sha256:a3c44cb68861de93f0c4a8175fbaa691f0aa22550c331fefef02b618a9dcb476", + "sha256:a4d3601908c560bdf880f07d94f31d734afd1bb71e96585cace0e38ef44c6d84", + "sha256:a5ce1e481a74b44dd5e92ff03ea0cb371ae7a0268318e202be06c8f04f4f1246", + "sha256:a66f60f8d0c87ab7f59b6fb80e642ebb29fec354a4dfad687ca4092ae69d04f4", + "sha256:b21dbe165081142b1232a240fc6383fd32cdd877ca6cc89eab93e5f5883e1c25", + "sha256:b47a465040146981dc9db8647981b8cb96366fbc8d452b031e4f8fdffec3f26d", + "sha256:b5773efa2be9eb9fcf5415ea3ab70fc785d598729fd6057bea38d539ead28271", + "sha256:b83dc6769ddbc57613280118fb4ce3cd08899cc3369f7d0e0fab518a7cf37fdb", + "sha256:bade438f86e21d91e0cf5dd7c0ed00cda0f77c8c1616bd83f9fc157fa6760d31", + "sha256:bcb1ebc3547619c3b58a39e2448af089ea2ef44b37988caf432447374941574e", + "sha256:be4816dc51c8a471749d664161b434912eee82f2ea66bd7628bd14583a833e85", + "sha256:c07b29089b7ba090b6f1a669f1411f27221c3662b3a1b7010e67b59bb5a6f10b", + "sha256:c2b9a96e0f326205af81a15718a9073328df1173a2619a68553decb7097fd5d7", + "sha256:c5020c83e8553f770cb3b5fc13faac40f17e0b205bd237aebd21d53d733adb03", + "sha256:c72941acb7b67138f35b879bbe85be0f6c6a70cab78fe3ef6db9c024d9223e5b", + "sha256:c8bf637892dc6e6aad2bc6d4d69d08764166e5e3f69d469e55427b6ac001b19d", + "sha256:cc978a80a0db3a66d25767b03688f1147a69e6237175c0f4ffffaaedf744055a", + "sha256:ce2cf1e5688edcb727fdf7cd1bbd0b6416758996826a8be1d958f91880d0809d", + "sha256:d47b28d1dfe0793d5e96bce90835e17edf9a499b53969b03c6c47ea5985844c3", + "sha256:d47cfb2650f0e103d4bf68b0b5804c68da97272c84bb12850d877a95c056bd67", + "sha256:d5536185fce131780ebd809f8e623bf4030ce1b161353166c49a3c74c287897f", + "sha256:d561d2d8883e0819445cfe58d7ddd673e4015c3c57261d7bdcd3710d0d14005c", + "sha256:d6af5e8815fd02997cb6ad9bbed0ee1e60014438ee1a5c2444c96f87b8843502", + "sha256:d6d6bd87df62c27d4185de7c511c6248040afae67028a8a22012b010bc7ad062", + "sha256:dace81d28c787956bfbfbbfd72fdcef014f37d9b48830829e488fdb32b49d954", + "sha256:e063ef9f89885a1d68dd8b2e18f5ead48653176d10a0e324e3b0030e3a69adeb", + "sha256:e7a019419b7b510f0f7c9dceff8c5eae2392037eae483a7f9162625233802b0a", + "sha256:eaa973f1e05131de5ff3569bbba7f5fd07ea0595d3870ed4a526d486fe57fa1b", + "sha256:eb158fe28ca0c29f2260cca8c43005329ad58452c36f0edf298204de32a9a3ed", + "sha256:ed33ca2002a779a2e20eeb06aea7721b6e47f2d4b8a8ece979d8ba9e2a167e34", + "sha256:fc2ace710ba7c1dfd1a3b42530b62b9ceed115f19a1656adefce7b1782a37794" + ], + "markers": "python_version >= '3.10'", + "version": "==1.4.8" + }, + "kombu": { + "hashes": [ + "sha256:14212f5ccf022fc0a70453bb025a1dcc32782a588c49ea866884047d66e14763", + "sha256:eef572dd2fd9fc614b37580e3caeafdd5af46c1eff31e7fba89138cdb406f2cf" + ], + "markers": "python_version >= '3.8'", + "version": "==5.4.2" + }, + "latexcodec": { + "hashes": [ + "sha256:6f3477ad5e61a0a99bd31a6a370c34e88733a6bad9c921a3ffcfacada12f41a7", + "sha256:917dc5fe242762cc19d963e6548b42d63a118028cdd3361d62397e3b638b6bc5" + ], + "markers": "python_version >= '3.7'", + "version": "==3.0.0" + }, + "libclang": { + "hashes": [ + "sha256:0b2e143f0fac830156feb56f9231ff8338c20aecfe72b4ffe96f19e5a1dbb69a", + "sha256:3f0e1f49f04d3cd198985fea0511576b0aee16f9ff0e0f0cad7f9c57ec3c20e8", + "sha256:4dd2d3b82fab35e2bf9ca717d7b63ac990a3519c7e312f19fa8e86dcc712f7fb", + "sha256:54dda940a4a0491a9d1532bf071ea3ef26e6dbaf03b5000ed94dd7174e8f9592", + "sha256:69f8eb8f65c279e765ffd28aaa7e9e364c776c17618af8bff22a8df58677ff4f", + "sha256:6f14c3f194704e5d09769108f03185fce7acaf1d1ae4bbb2f30a72c2400cb7c5", + "sha256:83ce5045d101b669ac38e6da8e58765f12da2d3aafb3b9b98d88b286a60964d8", + "sha256:a1214966d08d73d971287fc3ead8dfaf82eb07fb197680d8b3859dbbbbf78250", + "sha256:c533091d8a3bbf7460a00cb6c1a71da93bffe148f172c7d03b1c31fbf8aa2a0b", + "sha256:cf4a99b05376513717ab5d82a0db832c56ccea4fd61a69dbb7bccf2dfb207dbe" + ], + "version": "==18.1.1" + }, + "linkify-it-py": { + "hashes": [ + "sha256:68cda27e162e9215c17d786649d1da0021a451bdc436ef9e0fa0ba5234b9b048", + "sha256:6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79" + ], + "markers": "python_version >= '3.7'", + "version": "==2.0.3" + }, + "markdown": { + "hashes": [ + "sha256:2ae2471477cfd02dbbf038d5d9bc226d40def84b4fe2986e49b59b6b472bbed2", + "sha256:7eb6df5690b81a1d7942992c97fad2938e956e79df20cbc6186e9c3a77b1c803" + ], + "markers": "python_version >= '3.8'", + "version": "==3.7" + }, + "markdown-it-py": { + "hashes": [ + "sha256:5a35f8d1870171d9acc47b99612dc146129b631baf04970128b568f190d0cc30", + "sha256:7c9a5e412688bc771c67432cbfebcdd686c93ce6484913dccf06cb5a0bea35a1" + ], + "markers": "python_version >= '3.7'", + "version": "==2.2.0" + }, + "markupsafe": { + "hashes": [ + "sha256:0bff5e0ae4ef2e1ae4fdf2dfd5b76c75e5c2fa4132d05fc1b0dabcd20c7e28c4", + "sha256:0f4ca02bea9a23221c0182836703cbf8930c5e9454bacce27e767509fa286a30", + "sha256:1225beacc926f536dc82e45f8a4d68502949dc67eea90eab715dea3a21c1b5f0", + "sha256:131a3c7689c85f5ad20f9f6fb1b866f402c445b220c19fe4308c0b147ccd2ad9", + "sha256:15ab75ef81add55874e7ab7055e9c397312385bd9ced94920f2802310c930396", + "sha256:1a9d3f5f0901fdec14d8d2f66ef7d035f2157240a433441719ac9a3fba440b13", + "sha256:1c99d261bd2d5f6b59325c92c73df481e05e57f19837bdca8413b9eac4bd8028", + "sha256:1e084f686b92e5b83186b07e8a17fc09e38fff551f3602b249881fec658d3eca", + "sha256:2181e67807fc2fa785d0592dc2d6206c019b9502410671cc905d132a92866557", + "sha256:2cb8438c3cbb25e220c2ab33bb226559e7afb3baec11c4f218ffa7308603c832", + "sha256:3169b1eefae027567d1ce6ee7cae382c57fe26e82775f460f0b2778beaad66c0", + "sha256:3809ede931876f5b2ec92eef964286840ed3540dadf803dd570c3b7e13141a3b", + "sha256:38a9ef736c01fccdd6600705b09dc574584b89bea478200c5fbf112a6b0d5579", + "sha256:3d79d162e7be8f996986c064d1c7c817f6df3a77fe3d6859f6f9e7be4b8c213a", + "sha256:444dcda765c8a838eaae23112db52f1efaf750daddb2d9ca300bcae1039adc5c", + "sha256:48032821bbdf20f5799ff537c7ac3d1fba0ba032cfc06194faffa8cda8b560ff", + "sha256:4aa4e5faecf353ed117801a068ebab7b7e09ffb6e1d5e412dc852e0da018126c", + "sha256:52305740fe773d09cffb16f8ed0427942901f00adedac82ec8b67752f58a1b22", + "sha256:569511d3b58c8791ab4c2e1285575265991e6d8f8700c7be0e88f86cb0672094", + "sha256:57cb5a3cf367aeb1d316576250f65edec5bb3be939e9247ae594b4bcbc317dfb", + "sha256:5b02fb34468b6aaa40dfc198d813a641e3a63b98c2b05a16b9f80b7ec314185e", + "sha256:6381026f158fdb7c72a168278597a5e3a5222e83ea18f543112b2662a9b699c5", + "sha256:6af100e168aa82a50e186c82875a5893c5597a0c1ccdb0d8b40240b1f28b969a", + "sha256:6c89876f41da747c8d3677a2b540fb32ef5715f97b66eeb0c6b66f5e3ef6f59d", + "sha256:6e296a513ca3d94054c2c881cc913116e90fd030ad1c656b3869762b754f5f8a", + "sha256:70a87b411535ccad5ef2f1df5136506a10775d267e197e4cf531ced10537bd6b", + "sha256:7e94c425039cde14257288fd61dcfb01963e658efbc0ff54f5306b06054700f8", + "sha256:846ade7b71e3536c4e56b386c2a47adf5741d2d8b94ec9dc3e92e5e1ee1e2225", + "sha256:88416bd1e65dcea10bc7569faacb2c20ce071dd1f87539ca2ab364bf6231393c", + "sha256:88b49a3b9ff31e19998750c38e030fc7bb937398b1f78cfa599aaef92d693144", + "sha256:8c4e8c3ce11e1f92f6536ff07154f9d49677ebaaafc32db9db4620bc11ed480f", + "sha256:8e06879fc22a25ca47312fbe7c8264eb0b662f6db27cb2d3bbbc74b1df4b9b87", + "sha256:9025b4018f3a1314059769c7bf15441064b2207cb3f065e6ea1e7359cb46db9d", + "sha256:93335ca3812df2f366e80509ae119189886b0f3c2b81325d39efdb84a1e2ae93", + "sha256:9778bd8ab0a994ebf6f84c2b949e65736d5575320a17ae8984a77fab08db94cf", + "sha256:9e2d922824181480953426608b81967de705c3cef4d1af983af849d7bd619158", + "sha256:a123e330ef0853c6e822384873bef7507557d8e4a082961e1defa947aa59ba84", + "sha256:a904af0a6162c73e3edcb969eeeb53a63ceeb5d8cf642fade7d39e7963a22ddb", + "sha256:ad10d3ded218f1039f11a75f8091880239651b52e9bb592ca27de44eed242a48", + "sha256:b424c77b206d63d500bcb69fa55ed8d0e6a3774056bdc4839fc9298a7edca171", + "sha256:b5a6b3ada725cea8a5e634536b1b01c30bcdcd7f9c6fff4151548d5bf6b3a36c", + "sha256:ba8062ed2cf21c07a9e295d5b8a2a5ce678b913b45fdf68c32d95d6c1291e0b6", + "sha256:ba9527cdd4c926ed0760bc301f6728ef34d841f405abf9d4f959c478421e4efd", + "sha256:bbcb445fa71794da8f178f0f6d66789a28d7319071af7a496d4d507ed566270d", + "sha256:bcf3e58998965654fdaff38e58584d8937aa3096ab5354d493c77d1fdd66d7a1", + "sha256:c0ef13eaeee5b615fb07c9a7dadb38eac06a0608b41570d8ade51c56539e509d", + "sha256:cabc348d87e913db6ab4aa100f01b08f481097838bdddf7c7a84b7575b7309ca", + "sha256:cdb82a876c47801bb54a690c5ae105a46b392ac6099881cdfb9f6e95e4014c6a", + "sha256:cfad01eed2c2e0c01fd0ecd2ef42c492f7f93902e39a42fc9ee1692961443a29", + "sha256:d16a81a06776313e817c951135cf7340a3e91e8c1ff2fac444cfd75fffa04afe", + "sha256:d8213e09c917a951de9d09ecee036d5c7d36cb6cb7dbaece4c71a60d79fb9798", + "sha256:e07c3764494e3776c602c1e78e298937c3315ccc9043ead7e685b7f2b8d47b3c", + "sha256:e17c96c14e19278594aa4841ec148115f9c7615a47382ecb6b82bd8fea3ab0c8", + "sha256:e444a31f8db13eb18ada366ab3cf45fd4b31e4db1236a4448f68778c1d1a5a2f", + "sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f", + "sha256:eaa0a10b7f72326f1372a713e73c3f739b524b3af41feb43e4921cb529f5929a", + "sha256:eb7972a85c54febfb25b5c4b4f3af4dcc731994c7da0d8a0b4a6eb0640e1d178", + "sha256:ee55d3edf80167e48ea11a923c7386f4669df67d7994554387f84e7d8b0a2bf0", + "sha256:f3818cb119498c0678015754eba762e0d61e5b52d34c8b13d770f0719f7b1d79", + "sha256:f8b3d067f2e40fe93e1ccdd6b2e1d16c43140e76f02fb1319a05cf2b79d99430", + "sha256:fcabf5ff6eea076f859677f5f0b6b5c1a51e70a376b0579e0eadef8db48c6b50" + ], + "markers": "python_version >= '3.9'", + "version": "==3.0.2" + }, + "matplotlib": { + "hashes": [ + "sha256:0037d066cca1f4bda626c507cddeb6f7da8283bc6a214da2db13ff2162933c52", + "sha256:0604880e4327114054199108b7390f987f4f40ee5ce728985836889e11a780ba", + "sha256:08372696b3bb45c563472a552a705bfa0942f0a8ffe084db8a4e8f9153fbdf9d", + "sha256:0c698b33f9a3f0b127a8e614c8fb4087563bb3caa9c9d95298722fa2400cdd3f", + "sha256:116ef0b43aa00ff69260b4cce39c571e4b8c6f893795b708303fa27d9b9d7548", + "sha256:1707b20b25e90538c2ce8d4409e30f0ef1df4017cc65ad0439633492a973635b", + "sha256:1e6abcde6fc52475f9d6a12b9f1792aee171ce7818ef6df5d61cb0b82816e6e8", + "sha256:24b8f28af3e766195c09b780b15aa9f6710192b415ae7866b9c03dee7ec86370", + "sha256:286332f8f45f8ffde2d2119b9fdd42153dccd5025fa9f451b4a3b5c086e26da5", + "sha256:32183d4be84189a4c52b4b8861434d427d9118db2cec32986f98ed6c02dcfbb6", + "sha256:3640f33632beb3993b698b1be9d1c262b742761d6101f3c27b87b2185d25c875", + "sha256:390920a3949906bc4b0216198d378f2a640c36c622e3584dd0c79a7c59ae9f50", + "sha256:3c557d9165320dff3c5f2bb99bfa0b6813d3e626423ff71c40d6bc23b83c3339", + "sha256:3fa193286712c3b6c3cfa5fe8a6bb563f8c52cc750006c782296e0807ce5e799", + "sha256:44856632ebce88abd8efdc0a0dceec600418dcac06b72ae77af0019d260aa243", + "sha256:55eec941a4743f0bd3e5b8ee180e36b7ea8e62f867bf2613937c9f01b9ac06a2", + "sha256:5661c8639aded7d1bbf781373a359011cb1dd09199dee49043e9e68dd16f07ba", + "sha256:568574756127791903604e315c11aef9f255151e4cfe20ec603a70f9dda8e259", + "sha256:5c9133f230945fe10652eb33e43642e933896194ef6a4f8d5e79bb722bdb2000", + "sha256:62e094d8da26294634da9e7f1856beee3978752b1b530c8e1763d2faed60cc10", + "sha256:632fc938c22117d4241411191cfb88ac264a4c0a9ac702244641ddf30f0d739c", + "sha256:798ff59022eeb276380ce9a73ba35d13c3d1499ab9b73d194fd07f1b0a41c304", + "sha256:7a7709796ac59fe8debde68272388be6ed449c8971362eb5b60d280eac8dadde", + "sha256:7a9981b2a2dd9da06eca4ab5855d09b54b8ce7377c3e0e3957767b83219d652d", + "sha256:7cd4fef8187d1dd0d9dcfdbaa06ac326d396fb8c71c647129f0bf56835d77026", + "sha256:7d479aac338195e2199a8cfc03c4f2f55914e6a120177edae79e0340a6406457", + "sha256:7dfe6821f1944cb35603ff22e21510941bbcce7ccf96095beffaac890d39ce77", + "sha256:81e1a7ac818000e8ac3ca696c3fdc501bc2d3adc89005e7b4e22ee5e9d51de98", + "sha256:83859ac26839660ecd164ee8311272074250b915ac300f9b2eccc84410f8953b", + "sha256:8e6227ca8492baeef873cdd8e169a318efb5c3a25ce94e69727e7f964995b0b1", + "sha256:ab16868714e5cc90ec8f7ff5d83d23bcd6559224d8e9cb5227c9f58748889fe8", + "sha256:b167f54cb4654b210c9624ec7b54e2b3b8de68c93a14668937e7e53df60770ec", + "sha256:b1d70bc1ea1bf110bec64f4578de3e14947909a8887df4c1fd44492eca487955", + "sha256:b71079239bd866bf56df023e5146de159cb0c7294e508830901f4d79e2d89385", + "sha256:be3493bbcb4d255cb71de1f9050ac71682fce21a56089eadbcc8e21784cb12ee", + "sha256:bf91a42f6274a64cb41189120b620c02e574535ff6671fa836cade7701b06fbd", + "sha256:c83f49e795a5de6c168876eea723f5b88355202f9603c55977f5356213aa8280", + "sha256:c90590d4b46458677d80bc3218f3f1ac11fc122baa9134e0cb5b3e8fc3714052", + "sha256:ce163be048613b9d1962273708cc97e09ca05d37312e670d166cf332b80bbaff", + "sha256:de7c07069687be64fd9d119da3122ba13a8d399eccd3f844815f0dc78a870b2c", + "sha256:e4dfee00aa4bd291e08bb9461831c26ce0da85ca9781bb8794f2025c6e925281", + "sha256:e680f49bb8052ba3b2698e370155d2b4afb49f9af1cc611a26579d5981e2852a", + "sha256:f59a70e2ec3212033ef6633ed07682da03f5249379722512a3a2a26a7d9a738e", + "sha256:f757e8b42841d6add0cb69b42497667f0d25a404dcd50bd923ec9904e38414c4", + "sha256:f8c725d1dd2901b2e7ec6cd64165e00da2978cc23d4143cb9ef745bec88e6b04", + "sha256:f8fc2df756105784e650605e024d36dc2d048d68e5c1b26df97ee25d1bd41f9f", + "sha256:ff539c4a17ecdf076ed808ee271ffae4a30dcb7e157b99ccae2c837262c07db6" + ], + "index": "pypi", + "markers": "python_version >= '3.8'", + "version": "==3.7.4" + }, + "matplotlib-inline": { + "hashes": [ + "sha256:8423b23ec666be3d16e16b60bdd8ac4e86e840ebd1dd11a30b9f117f2fa0ab90", + "sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca" + ], + "markers": "python_version >= '3.8'", + "version": "==0.1.7" + }, + "mdit-py-plugins": { + "hashes": [ + "sha256:ca9a0714ea59a24b2b044a1831f48d817dd0c817e84339f20e7889f392d77c4e", + "sha256:eee0adc7195e5827e17e02d2a258a2ba159944a0748f59c5099a4a27f78fcf6a" + ], + "markers": "python_version >= '3.7'", + "version": "==0.3.5" + }, + "mdurl": { + "hashes": [ + "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8", + "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba" + ], + "markers": "python_version >= '3.7'", + "version": "==0.1.2" + }, + "mistune": { + "hashes": [ + "sha256:b05198cf6d671b3deba6c87ec6cf0d4eb7b72c524636eddb6dbf13823b52cee1", + "sha256:dbcac2f78292b9dc066cd03b7a3a26b62d85f8159f2ea5fd28e55df79908d667" + ], + "markers": "python_version >= '3.8'", + "version": "==3.1.0" + }, + "multidict": { + "hashes": [ + "sha256:052e10d2d37810b99cc170b785945421141bf7bb7d2f8799d431e7db229c385f", + "sha256:06809f4f0f7ab7ea2cabf9caca7d79c22c0758b58a71f9d32943ae13c7ace056", + "sha256:071120490b47aa997cca00666923a83f02c7fbb44f71cf7f136df753f7fa8761", + "sha256:0c3f390dc53279cbc8ba976e5f8035eab997829066756d811616b652b00a23a3", + "sha256:0e2b90b43e696f25c62656389d32236e049568b39320e2735d51f08fd362761b", + "sha256:0e5f362e895bc5b9e67fe6e4ded2492d8124bdf817827f33c5b46c2fe3ffaca6", + "sha256:10524ebd769727ac77ef2278390fb0068d83f3acb7773792a5080f2b0abf7748", + "sha256:10a9b09aba0c5b48c53761b7c720aaaf7cf236d5fe394cd399c7ba662d5f9966", + "sha256:16e5f4bf4e603eb1fdd5d8180f1a25f30056f22e55ce51fb3d6ad4ab29f7d96f", + "sha256:188215fc0aafb8e03341995e7c4797860181562380f81ed0a87ff455b70bf1f1", + "sha256:189f652a87e876098bbc67b4da1049afb5f5dfbaa310dd67c594b01c10388db6", + "sha256:1ca0083e80e791cffc6efce7660ad24af66c8d4079d2a750b29001b53ff59ada", + "sha256:1e16bf3e5fc9f44632affb159d30a437bfe286ce9e02754759be5536b169b305", + "sha256:2090f6a85cafc5b2db085124d752757c9d251548cedabe9bd31afe6363e0aff2", + "sha256:20b9b5fbe0b88d0bdef2012ef7dee867f874b72528cf1d08f1d59b0e3850129d", + "sha256:22ae2ebf9b0c69d206c003e2f6a914ea33f0a932d4aa16f236afc049d9958f4a", + "sha256:22f3105d4fb15c8f57ff3959a58fcab6ce36814486500cd7485651230ad4d4ef", + "sha256:23bfd518810af7de1116313ebd9092cb9aa629beb12f6ed631ad53356ed6b86c", + "sha256:27e5fc84ccef8dfaabb09d82b7d179c7cf1a3fbc8a966f8274fcb4ab2eb4cadb", + "sha256:3380252550e372e8511d49481bd836264c009adb826b23fefcc5dd3c69692f60", + "sha256:3702ea6872c5a2a4eeefa6ffd36b042e9773f05b1f37ae3ef7264b1163c2dcf6", + "sha256:37bb93b2178e02b7b618893990941900fd25b6b9ac0fa49931a40aecdf083fe4", + "sha256:3914f5aaa0f36d5d60e8ece6a308ee1c9784cd75ec8151062614657a114c4478", + "sha256:3a37ffb35399029b45c6cc33640a92bef403c9fd388acce75cdc88f58bd19a81", + "sha256:3c8b88a2ccf5493b6c8da9076fb151ba106960a2df90c2633f342f120751a9e7", + "sha256:3e97b5e938051226dc025ec80980c285b053ffb1e25a3db2a3aa3bc046bf7f56", + "sha256:3ec660d19bbc671e3a6443325f07263be452c453ac9e512f5eb935e7d4ac28b3", + "sha256:3efe2c2cb5763f2f1b275ad2bf7a287d3f7ebbef35648a9726e3b69284a4f3d6", + "sha256:483a6aea59cb89904e1ceabd2b47368b5600fb7de78a6e4a2c2987b2d256cf30", + "sha256:4867cafcbc6585e4b678876c489b9273b13e9fff9f6d6d66add5e15d11d926cb", + "sha256:48e171e52d1c4d33888e529b999e5900356b9ae588c2f09a52dcefb158b27506", + "sha256:4a9cb68166a34117d6646c0023c7b759bf197bee5ad4272f420a0141d7eb03a0", + "sha256:4b820514bfc0b98a30e3d85462084779900347e4d49267f747ff54060cc33925", + "sha256:4e18b656c5e844539d506a0a06432274d7bd52a7487e6828c63a63d69185626c", + "sha256:4e9f48f58c2c523d5a06faea47866cd35b32655c46b443f163d08c6d0ddb17d6", + "sha256:50b3a2710631848991d0bf7de077502e8994c804bb805aeb2925a981de58ec2e", + "sha256:55b6d90641869892caa9ca42ff913f7ff1c5ece06474fbd32fb2cf6834726c95", + "sha256:57feec87371dbb3520da6192213c7d6fc892d5589a93db548331954de8248fd2", + "sha256:58130ecf8f7b8112cdb841486404f1282b9c86ccb30d3519faf301b2e5659133", + "sha256:5845c1fd4866bb5dd3125d89b90e57ed3138241540897de748cdf19de8a2fca2", + "sha256:59bfeae4b25ec05b34f1956eaa1cb38032282cd4dfabc5056d0a1ec4d696d3aa", + "sha256:5b48204e8d955c47c55b72779802b219a39acc3ee3d0116d5080c388970b76e3", + "sha256:5c09fcfdccdd0b57867577b719c69e347a436b86cd83747f179dbf0cc0d4c1f3", + "sha256:6180c0ae073bddeb5a97a38c03f30c233e0a4d39cd86166251617d1bbd0af436", + "sha256:682b987361e5fd7a139ed565e30d81fd81e9629acc7d925a205366877d8c8657", + "sha256:6b5d83030255983181005e6cfbac1617ce9746b219bc2aad52201ad121226581", + "sha256:6bb5992037f7a9eff7991ebe4273ea7f51f1c1c511e6a2ce511d0e7bdb754492", + "sha256:73eae06aa53af2ea5270cc066dcaf02cc60d2994bbb2c4ef5764949257d10f43", + "sha256:76f364861c3bfc98cbbcbd402d83454ed9e01a5224bb3a28bf70002a230f73e2", + "sha256:820c661588bd01a0aa62a1283f20d2be4281b086f80dad9e955e690c75fb54a2", + "sha256:82176036e65644a6cc5bd619f65f6f19781e8ec2e5330f51aa9ada7504cc1926", + "sha256:87701f25a2352e5bf7454caa64757642734da9f6b11384c1f9d1a8e699758057", + "sha256:9079dfc6a70abe341f521f78405b8949f96db48da98aeb43f9907f342f627cdc", + "sha256:90f8717cb649eea3504091e640a1b8568faad18bd4b9fcd692853a04475a4b80", + "sha256:957cf8e4b6e123a9eea554fa7ebc85674674b713551de587eb318a2df3e00255", + "sha256:99f826cbf970077383d7de805c0681799491cb939c25450b9b5b3ced03ca99f1", + "sha256:9f636b730f7e8cb19feb87094949ba54ee5357440b9658b2a32a5ce4bce53972", + "sha256:a114d03b938376557927ab23f1e950827c3b893ccb94b62fd95d430fd0e5cf53", + "sha256:a185f876e69897a6f3325c3f19f26a297fa058c5e456bfcff8015e9a27e83ae1", + "sha256:a7a9541cd308eed5e30318430a9c74d2132e9a8cb46b901326272d780bf2d423", + "sha256:aa466da5b15ccea564bdab9c89175c762bc12825f4659c11227f515cee76fa4a", + "sha256:aaed8b0562be4a0876ee3b6946f6869b7bcdb571a5d1496683505944e268b160", + "sha256:ab7c4ceb38d91570a650dba194e1ca87c2b543488fe9309b4212694174fd539c", + "sha256:ac10f4c2b9e770c4e393876e35a7046879d195cd123b4f116d299d442b335bcd", + "sha256:b04772ed465fa3cc947db808fa306d79b43e896beb677a56fb2347ca1a49c1fa", + "sha256:b1c416351ee6271b2f49b56ad7f308072f6f44b37118d69c2cad94f3fa8a40d5", + "sha256:b225d95519a5bf73860323e633a664b0d85ad3d5bede6d30d95b35d4dfe8805b", + "sha256:b2f59caeaf7632cc633b5cf6fc449372b83bbdf0da4ae04d5be36118e46cc0aa", + "sha256:b58c621844d55e71c1b7f7c498ce5aa6985d743a1a59034c57a905b3f153c1ef", + "sha256:bf6bea52ec97e95560af5ae576bdac3aa3aae0b6758c6efa115236d9e07dae44", + "sha256:c08be4f460903e5a9d0f76818db3250f12e9c344e79314d1d570fc69d7f4eae4", + "sha256:c7053d3b0353a8b9de430a4f4b4268ac9a4fb3481af37dfe49825bf45ca24156", + "sha256:c943a53e9186688b45b323602298ab727d8865d8c9ee0b17f8d62d14b56f0753", + "sha256:ce2186a7df133a9c895dea3331ddc5ddad42cdd0d1ea2f0a51e5d161e4762f28", + "sha256:d093be959277cb7dee84b801eb1af388b6ad3ca6a6b6bf1ed7585895789d027d", + "sha256:d094ddec350a2fb899fec68d8353c78233debde9b7d8b4beeafa70825f1c281a", + "sha256:d1a9dd711d0877a1ece3d2e4fea11a8e75741ca21954c919406b44e7cf971304", + "sha256:d569388c381b24671589335a3be6e1d45546c2988c2ebe30fdcada8457a31008", + "sha256:d618649d4e70ac6efcbba75be98b26ef5078faad23592f9b51ca492953012429", + "sha256:d83a047959d38a7ff552ff94be767b7fd79b831ad1cd9920662db05fec24fe72", + "sha256:d8fff389528cad1618fb4b26b95550327495462cd745d879a8c7c2115248e399", + "sha256:da1758c76f50c39a2efd5e9859ce7d776317eb1dd34317c8152ac9251fc574a3", + "sha256:db7457bac39421addd0c8449933ac32d8042aae84a14911a757ae6ca3eef1392", + "sha256:e27bbb6d14416713a8bd7aaa1313c0fc8d44ee48d74497a0ff4c3a1b6ccb5167", + "sha256:e617fb6b0b6953fffd762669610c1c4ffd05632c138d61ac7e14ad187870669c", + "sha256:e9aa71e15d9d9beaad2c6b9319edcdc0a49a43ef5c0a4c8265ca9ee7d6c67774", + "sha256:ec2abea24d98246b94913b76a125e855eb5c434f7c46546046372fe60f666351", + "sha256:f179dee3b863ab1c59580ff60f9d99f632f34ccb38bf67a33ec6b3ecadd0fd76", + "sha256:f4c035da3f544b1882bac24115f3e2e8760f10a0107614fc9839fd232200b875", + "sha256:f67f217af4b1ff66c68a87318012de788dd95fcfeb24cc889011f4e1c7454dfd", + "sha256:f90c822a402cb865e396a504f9fc8173ef34212a342d92e362ca498cad308e28", + "sha256:ff3827aef427c89a25cc96ded1759271a93603aba9fb977a6d264648ebf989db" + ], + "markers": "python_version >= '3.8'", + "version": "==6.1.0" + }, + "myst-nb": { + "hashes": [ + "sha256:0f61386515fab07c73646adca97fff2f69f41e90d313a260217c5bbe419d858b", + "sha256:132ca4d0f5c308fdd4b6fdaba077712e28e119ccdafd04d6e41b51aac5483494" + ], + "markers": "python_version >= '3.7'", + "version": "==0.17.2" + }, + "myst-parser": { + "hashes": [ + "sha256:61b275b85d9f58aa327f370913ae1bec26ebad372cc99f3ab85c8ec3ee8d9fb8", + "sha256:79317f4bb2c13053dd6e64f9da1ba1da6cd9c40c8a430c447a7b146a594c246d" + ], + "markers": "python_version >= '3.7'", + "version": "==0.18.1" + }, + "nbclient": { + "hashes": [ + "sha256:c817c0768c5ff0d60e468e017613e6eae27b6fa31e43f905addd2d24df60c125", + "sha256:d447f0e5a4cfe79d462459aec1b3dc5c2e9152597262be8ee27f7d4c02566a0d" + ], + "markers": "python_full_version >= '3.7.0'", + "version": "==0.7.4" + }, + "nbconvert": { + "hashes": [ + "sha256:c83467bb5777fdfaac5ebbb8e864f300b277f68692ecc04d6dab72f2d8442344", + "sha256:e12eac052d6fd03040af4166c563d76e7aeead2e9aadf5356db552a1784bd547" + ], + "markers": "python_version >= '3.8'", + "version": "==7.16.5" + }, + "nbdime": { + "hashes": [ + "sha256:82538e2b52e0834e9c07607e2dea27aceaaf7e8cf2269a4607c67ea9aa625404", + "sha256:f1a760c0b00c1ba9b4945c16ce92577f393fb51d184f351b7685ba6e8502098e" + ], + "index": "pypi", + "markers": "python_version >= '3.6'", + "version": "==4.0.1" + }, + "nbformat": { + "hashes": [ + "sha256:322168b14f937a5d11362988ecac2a4952d3d8e3a2cbeb2319584631226d5b3a", + "sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + ], + "markers": "python_version >= '3.8'", + "version": "==5.10.4" + }, + "nest-asyncio": { + "hashes": [ + "sha256:6f172d5449aca15afd6c646851f4e31e02c598d553a667e38cafa997cfec55fe", + "sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + ], + "markers": "python_version >= '3.5'", + "version": "==1.6.0" + }, + "networkx": { + "hashes": [ + "sha256:307c3669428c5362aab27c8a1260aa8f47c4e91d3891f48be0141738d8d053e1", + "sha256:df5d4365b724cf81b8c6a7312509d0c22386097011ad1abe274afd5e9d3bbc5f" + ], + "markers": "python_version >= '3.10'", + "version": "==3.4.2" + }, + "notebook-shim": { + "hashes": [ + "sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef", + "sha256:b4b2cfa1b65d98307ca24361f5b30fe785b53c3fd07b7a47e89acb5e6ac638cb" + ], + "markers": "python_version >= '3.7'", + "version": "==0.2.4" + }, + "numpy": { + "hashes": [ + "sha256:0ec87a7084caa559c36e0a2309e4ecb1baa03b687201d0a847c8b0ed476a7187", + "sha256:1a7d6acc2e7524c9955e5c903160aa4ea083736fde7e91276b0e5d98e6332812", + "sha256:202de8f38fc4a45a3eea4b63e2f376e5f2dc64ef0fa692838e31a808520efaf7", + "sha256:210461d87fb02a84ef243cac5e814aad2b7f4be953b32cb53327bb49fd77fbb4", + "sha256:2d926b52ba1367f9acb76b0df6ed21f0b16a1ad87c6720a1121674e5cf63e2b6", + "sha256:352ee00c7f8387b44d19f4cada524586f07379c0d49270f87233983bc5087ca0", + "sha256:35400e6a8d102fd07c71ed7dcadd9eb62ee9a6e84ec159bd48c28235bbb0f8e4", + "sha256:3c1104d3c036fb81ab923f507536daedc718d0ad5a8707c6061cdfd6d184e570", + "sha256:4719d5aefb5189f50887773699eaf94e7d1e02bf36c1a9d353d9f46703758ca4", + "sha256:4749e053a29364d3452c034827102ee100986903263e89884922ef01a0a6fd2f", + "sha256:5342cf6aad47943286afa6f1609cad9b4266a05e7f2ec408e2cf7aea7ff69d80", + "sha256:56e48aec79ae238f6e4395886b5eaed058abb7231fb3361ddd7bfdf4eed54289", + "sha256:76e3f4e85fc5d4fd311f6e9b794d0c00e7002ec122be271f2019d63376f1d385", + "sha256:7776ea65423ca6a15255ba1872d82d207bd1e09f6d0894ee4a64678dd2204078", + "sha256:784c6da1a07818491b0ffd63c6bbe5a33deaa0e25a20e1b3ea20cf0e43f8046c", + "sha256:8535303847b89aa6b0f00aa1dc62867b5a32923e4d1681a35b5eef2d9591a463", + "sha256:9a7721ec204d3a237225db3e194c25268faf92e19338a35f3a224469cb6039a3", + "sha256:a1d3c026f57ceaad42f8231305d4653d5f05dc6332a730ae5c0bea3513de0950", + "sha256:ab344f1bf21f140adab8e47fdbc7c35a477dc01408791f8ba00d018dd0bc5155", + "sha256:ab5f23af8c16022663a652d3b25dcdc272ac3f83c3af4c02eb8b824e6b3ab9d7", + "sha256:ae8d0be48d1b6ed82588934aaaa179875e7dc4f3d84da18d7eae6eb3f06c242c", + "sha256:c91c4afd8abc3908e00a44b2672718905b8611503f7ff87390cc0ac3423fb096", + "sha256:d5036197ecae68d7f491fcdb4df90082b0d4960ca6599ba2659957aafced7c17", + "sha256:d6cc757de514c00b24ae8cf5c876af2a7c3df189028d68c0cb4eaa9cd5afc2bf", + "sha256:d933fabd8f6a319e8530d0de4fcc2e6a61917e0b0c271fded460032db42a0fe4", + "sha256:ea8282b9bcfe2b5e7d491d0bf7f3e2da29700cec05b49e64d6246923329f2b02", + "sha256:ecde0f8adef7dfdec993fd54b0f78183051b6580f606111a6d789cd14c61ea0c", + "sha256:f21c442fdd2805e91799fbe044a7b999b8571bb0ab0f7850d0cb9641a687092b" + ], + "index": "pypi", + "markers": "python_version >= '3.8'", + "version": "==1.24.3" + }, + "oauthlib": { + "hashes": [ + "sha256:8139f29aac13e25d502680e9e19963e83f16838d48a0d71c287fe40e7067fbca", + "sha256:9859c40929662bec5d64f34d01c99e093149682a3f38915dc0655d5a633dd918" + ], + "markers": "python_version >= '3.6'", + "version": "==3.2.2" + }, + "omegaconf": { + "hashes": [ + "sha256:7b4df175cdb08ba400f45cae3bdcae7ba8365db4d165fc65fd04b050ab63b46b", + "sha256:d5d4b6d29955cc50ad50c46dc269bcd92c6e00f5f90d23ab5fee7bfca4ba4cc7" + ], + "markers": "python_version >= '3.6'", + "version": "==2.3.0" + }, + "opt-einsum": { + "hashes": [ + "sha256:69bb92469f86a1565195ece4ac0323943e83477171b91d24c35afe028a90d7cd", + "sha256:96ca72f1b886d148241348783498194c577fa30a8faac108586b14f1ba4473ac" + ], + "markers": "python_version >= '3.8'", + "version": "==3.4.0" + }, + "orjson": { + "hashes": [ + "sha256:035fb83585e0f15e076759b6fedaf0abb460d1765b6a36f48018a52858443514", + "sha256:05ca7fe452a2e9d8d9d706a2984c95b9c2ebc5db417ce0b7a49b91d50642a23e", + "sha256:0a4f27ea5617828e6b58922fdbec67b0aa4bb844e2d363b9244c47fa2180e665", + "sha256:13242f12d295e83c2955756a574ddd6741c81e5b99f2bef8ed8d53e47a01e4b7", + "sha256:17085a6aa91e1cd70ca8533989a18b5433e15d29c574582f76f821737c8d5806", + "sha256:1e6d33efab6b71d67f22bf2962895d3dc6f82a6273a965fab762e64fa90dc399", + "sha256:208beedfa807c922da4e81061dafa9c8489c6328934ca2a562efa707e049e561", + "sha256:295c70f9dc154307777ba30fe29ff15c1bcc9dfc5c48632f37d20a607e9ba85a", + "sha256:305b38b2b8f8083cc3d618927d7f424349afce5975b316d33075ef0f73576b60", + "sha256:33aedc3d903378e257047fee506f11e0833146ca3e57a1a1fb0ddb789876c1e1", + "sha256:3614ea508d522a621384c1d6639016a5a2e4f027f3e4a1c93a51867615d28829", + "sha256:3766ac4702f8f795ff3fa067968e806b4344af257011858cc3d6d8721588b53f", + "sha256:3a63bb41559b05360ded9132032239e47983a39b151af1201f07ec9370715c82", + "sha256:43e17289ffdbbac8f39243916c893d2ae41a2ea1a9cbb060a56a4d75286351ae", + "sha256:552c883d03ad185f720d0c09583ebde257e41b9521b74ff40e08b7dec4559c04", + "sha256:5dd9ef1639878cc3efffed349543cbf9372bdbd79f478615a1c633fe4e4180d1", + "sha256:5e8afd6200e12771467a1a44e5ad780614b86abb4b11862ec54861a82d677746", + "sha256:616e3e8d438d02e4854f70bfdc03a6bcdb697358dbaa6bcd19cbe24d24ece1f8", + "sha256:63309e3ff924c62404923c80b9e2048c1f74ba4b615e7584584389ada50ed428", + "sha256:6875210307d36c94873f553786a808af2788e362bd0cf4c8e66d976791e7b528", + "sha256:6fd9bc64421e9fe9bd88039e7ce8e58d4fead67ca88e3a4014b143cec7684fd4", + "sha256:7066b74f9f259849629e0d04db6609db4cf5b973248f455ba5d3bd58a4daaa5b", + "sha256:73cb85490aa6bf98abd20607ab5c8324c0acb48d6da7863a51be48505646c814", + "sha256:763dadac05e4e9d2bc14938a45a2d0560549561287d41c465d3c58aec818b164", + "sha256:7723ad949a0ea502df656948ddd8b392780a5beaa4c3b5f97e525191b102fff0", + "sha256:781d54657063f361e89714293c095f506c533582ee40a426cb6489c48a637b81", + "sha256:7946922ada8f3e0b7b958cc3eb22cfcf6c0df83d1fe5521b4a100103e3fa84c8", + "sha256:7a1c73dcc8fadbd7c55802d9aa093b36878d34a3b3222c41052ce6b0fc65f8e8", + "sha256:7c203f6f969210128af3acae0ef9ea6aab9782939f45f6fe02d05958fe761ef9", + "sha256:7c2c79fa308e6edb0ffab0a31fd75a7841bf2a79a20ef08a3c6e3b26814c8ca8", + "sha256:7c864a80a2d467d7786274fce0e4f93ef2a7ca4ff31f7fc5634225aaa4e9e98c", + "sha256:88dc3f65a026bd3175eb157fea994fca6ac7c4c8579fc5a86fc2114ad05705b7", + "sha256:8918719572d662e18b8af66aef699d8c21072e54b6c82a3f8f6404c1f5ccd5e0", + "sha256:9d11c0714fc85bfcf36ada1179400862da3288fc785c30e8297844c867d7505a", + "sha256:9e590a0477b23ecd5b0ac865b1b907b01b3c5535f5e8a8f6ab0e503efb896334", + "sha256:9e992fd5cfb8b9f00bfad2fd7a05a4299db2bbe92e6440d9dd2fab27655b3182", + "sha256:a2f708c62d026fb5340788ba94a55c23df4e1869fec74be455e0b2f5363b8507", + "sha256:a330b9b4734f09a623f74a7490db713695e13b67c959713b78369f26b3dee6bf", + "sha256:a61a4622b7ff861f019974f73d8165be1bd9a0855e1cad18ee167acacabeb061", + "sha256:a6be38bd103d2fd9bdfa31c2720b23b5d47c6796bcb1d1b598e3924441b4298d", + "sha256:abc7abecdbf67a173ef1316036ebbf54ce400ef2300b4e26a7b843bd446c2480", + "sha256:acd271247691574416b3228db667b84775c497b245fa275c6ab90dc1ffbbd2b3", + "sha256:b0482b21d0462eddd67e7fce10b89e0b6ac56570424662b685a0d6fccf581e13", + "sha256:b299383825eafe642cbab34be762ccff9fd3408d72726a6b2a4506d410a71ab3", + "sha256:b342567e5465bd99faa559507fe45e33fc76b9fb868a63f1642c6bc0735ad02a", + "sha256:b48f59114fe318f33bbaee8ebeda696d8ccc94c9e90bc27dbe72153094e26f41", + "sha256:b7155eb1623347f0f22c38c9abdd738b287e39b9982e1da227503387b81b34ca", + "sha256:bae0e6ec2b7ba6895198cd981b7cca95d1487d0147c8ed751e5632ad16f031a6", + "sha256:bb00b7bfbdf5d34a13180e4805d76b4567025da19a197645ca746fc2fb536586", + "sha256:bb5cc3527036ae3d98b65e37b7986a918955f85332c1ee07f9d3f82f3a6899b5", + "sha256:c03cd6eea1bd3b949d0d007c8d57049aa2b39bd49f58b4b2af571a5d3833d890", + "sha256:c25774c9e88a3e0013d7d1a6c8056926b607a61edd423b50eb5c88fd7f2823ae", + "sha256:c33be3795e299f565681d69852ac8c1bc5c84863c0b0030b2b3468843be90388", + "sha256:c4cc83960ab79a4031f3119cc4b1a1c627a3dc09df125b27c4201dff2af7eaa6", + "sha256:cf45e0214c593660339ef63e875f32ddd5aa3b4adc15e662cdb80dc49e194f8e", + "sha256:d13b7fe322d75bf84464b075eafd8e7dd9eae05649aa2a5354cfa32f43c59f17", + "sha256:d433bf32a363823863a96561a555227c18a522a8217a6f9400f00ddc70139ae2", + "sha256:d569c1c462912acdd119ccbf719cf7102ea2c67dd03b99edcb1a3048651ac96b", + "sha256:d5ac11b659fd798228a7adba3e37c010e0152b78b1982897020a8e019a94882e", + "sha256:da03392674f59a95d03fa5fb9fe3a160b0511ad84b7a3914699ea5a1b3a38da2", + "sha256:da9a18c500f19273e9e104cca8c1f0b40a6470bcccfc33afcc088045d0bf5ea6", + "sha256:dadba0e7b6594216c214ef7894c4bd5f08d7c0135f4dd0145600be4fbcc16767", + "sha256:dba5a1e85d554e3897fa9fe6fbcff2ed32d55008973ec9a2b992bd9a65d2352d", + "sha256:dd0099ae6aed5eb1fc84c9eb72b95505a3df4267e6962eb93cdd5af03be71c98", + "sha256:ddbeef2481d895ab8be5185f2432c334d6dec1f5d1933a9c83014d188e102cef", + "sha256:e117eb299a35f2634e25ed120c37c641398826c2f5a3d3cc39f5993b96171b9e", + "sha256:e4759b109c37f635aa5c5cc93a1b26927bfde24b254bcc0e1149a9fada253d2d", + "sha256:e78c211d0074e783d824ce7bb85bf459f93a233eb67a5b5003498232ddfb0e8a", + "sha256:eca81f83b1b8c07449e1d6ff7074e82e3fd6777e588f1a6632127f286a968825", + "sha256:eea80037b9fae5339b214f59308ef0589fc06dc870578b7cce6d71eb2096764c", + "sha256:ef5b87e7aa9545ddadd2309efe6824bd3dd64ac101c15dae0f2f597911d46eaa", + "sha256:efcf6c735c3d22ef60c4aa27a5238f1a477df85e9b15f2142f9d669beb2d13fd", + "sha256:f71eae9651465dff70aa80db92586ad5b92df46a9373ee55252109bb6b703307", + "sha256:f93ce145b2db1252dd86af37d4165b6faa83072b46e3995ecc95d4b2301b725a", + "sha256:f95fb363d79366af56c3f26b71df40b9a583b07bbaaf5b317407c4d58497852e", + "sha256:f9875f5fea7492da8ec2444839dcc439b0ef298978f311103d0b7dfd775898ab", + "sha256:fd56a26a04f6ba5fb2045b0acc487a63162a958ed837648c5781e1fe3316cfbf", + "sha256:ff4f6edb1578960ed628a3b998fa54d78d9bb3e2eb2cfc5c2a09732431c678d0", + "sha256:ffe19f3e8d68111e8644d4f4e267a069ca427926855582ff01fc012496d19969" + ], + "markers": "python_version >= '3.8'", + "version": "==3.10.15" + }, + "overrides": { + "hashes": [ + "sha256:55158fa3d93b98cc75299b1e67078ad9003ca27945c76162c1c0766d6f91820a", + "sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49" + ], + "markers": "python_version >= '3.6'", + "version": "==7.7.0" + }, + "packaging": { + "hashes": [ + "sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759", + "sha256:c228a6dc5e932d346bc5739379109d49e8853dd8223571c7c5b55260edc0b97f" + ], + "markers": "python_version >= '3.8'", + "version": "==24.2" + }, + "pandas": { + "hashes": [ + "sha256:04dbdbaf2e4d46ca8da896e1805bc04eb85caa9a82e259e8eed00254d5e0c682", + "sha256:1168574b036cd8b93abc746171c9b4f1b83467438a5e45909fed645cf8692dbc", + "sha256:1994c789bf12a7c5098277fb43836ce090f1073858c10f9220998ac74f37c69b", + "sha256:258d3624b3ae734490e4d63c430256e716f488c4fcb7c8e9bde2d3aa46c29089", + "sha256:32fca2ee1b0d93dd71d979726b12b61faa06aeb93cf77468776287f41ff8fdc5", + "sha256:37673e3bdf1551b95bf5d4ce372b37770f9529743d2498032439371fc7b7eb26", + "sha256:3ef285093b4fe5058eefd756100a367f27029913760773c8bf1d2d8bebe5d210", + "sha256:5247fb1ba347c1261cbbf0fcfba4a3121fbb4029d95d9ef4dc45406620b25c8b", + "sha256:5ec591c48e29226bcbb316e0c1e9423622bc7a4eaf1ef7c3c9fa1a3981f89641", + "sha256:694888a81198786f0e164ee3a581df7d505024fbb1f15202fc7db88a71d84ebd", + "sha256:69d7f3884c95da3a31ef82b7618af5710dba95bb885ffab339aad925c3e8ce78", + "sha256:6a21ab5c89dcbd57f78d0ae16630b090eec626360085a4148693def5452d8a6b", + "sha256:81af086f4543c9d8bb128328b5d32e9986e0c84d3ee673a2ac6fb57fd14f755e", + "sha256:9e4da0d45e7f34c069fe4d522359df7d23badf83abc1d1cef398895822d11061", + "sha256:9eae3dc34fa1aa7772dd3fc60270d13ced7346fcbcfee017d3132ec625e23bb0", + "sha256:9ee1a69328d5c36c98d8e74db06f4ad518a1840e8ccb94a4ba86920986bb617e", + "sha256:b084b91d8d66ab19f5bb3256cbd5ea661848338301940e17f4492b2ce0801fe8", + "sha256:b9cb1e14fdb546396b7e1b923ffaeeac24e4cedd14266c3497216dd4448e4f2d", + "sha256:ba619e410a21d8c387a1ea6e8a0e49bb42216474436245718d7f2e88a2f8d7c0", + "sha256:c02f372a88e0d17f36d3093a644c73cfc1788e876a7c4bcb4020a77512e2043c", + "sha256:ce0c6f76a0f1ba361551f3e6dceaff06bde7514a374aa43e33b588ec10420183", + "sha256:d9cd88488cceb7635aebb84809d087468eb33551097d600c6dad13602029c2df", + "sha256:e4c7c9f27a4185304c7caf96dc7d91bc60bc162221152de697c98eb0b2648dd8", + "sha256:f167beed68918d62bffb6ec64f2e1d8a7d297a038f86d4aed056b9493fca407f", + "sha256:f3421a7afb1a43f7e38e82e844e2bca9a6d793d66c1a7f9f0ff39a795bbc5e02" + ], + "index": "pypi", + "markers": "python_version >= '3.8'", + "version": "==2.0.3" + }, + "pandocfilters": { + "hashes": [ + "sha256:002b4a555ee4ebc03f8b66307e287fa492e4a77b4ea14d3f934328297bb4939e", + "sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", + "version": "==1.5.1" + }, + "parso": { + "hashes": [ + "sha256:a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18", + "sha256:eb3a7b58240fb99099a345571deecc0f9540ea5f4dd2fe14c2a99d6b281ab92d" + ], + "markers": "python_version >= '3.6'", + "version": "==0.8.4" + }, + "pathspec": { + "hashes": [ + "sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08", + "sha256:a482d51503a1ab33b1c67a6c3813a26953dbdc71c31dacaef9a838c4e29f5712" + ], + "markers": "python_version >= '3.8'", + "version": "==0.12.1" + }, + "pexpect": { + "hashes": [ + "sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523", + "sha256:ee7d41123f3c9911050ea2c2dac107568dc43b2d3b0c7557a33212c398ead30f" + ], + "markers": "sys_platform != 'win32' and sys_platform != 'emscripten'", + "version": "==4.9.0" + }, + "pillow": { + "hashes": [ + "sha256:015c6e863faa4779251436db398ae75051469f7c903b043a48f078e437656f83", + "sha256:0a2f91f8a8b367e7a57c6e91cd25af510168091fb89ec5146003e424e1558a96", + "sha256:11633d58b6ee5733bde153a8dafd25e505ea3d32e261accd388827ee987baf65", + "sha256:2062ffb1d36544d42fcaa277b069c88b01bb7298f4efa06731a7fd6cc290b81a", + "sha256:31eba6bbdd27dde97b0174ddf0297d7a9c3a507a8a1480e1e60ef914fe23d352", + "sha256:3362c6ca227e65c54bf71a5f88b3d4565ff1bcbc63ae72c34b07bbb1cc59a43f", + "sha256:368da70808b36d73b4b390a8ffac11069f8a5c85f29eff1f1b01bcf3ef5b2a20", + "sha256:36ba10b9cb413e7c7dfa3e189aba252deee0602c86c309799da5a74009ac7a1c", + "sha256:3764d53e09cdedd91bee65c2527815d315c6b90d7b8b79759cc48d7bf5d4f114", + "sha256:3a5fe20a7b66e8135d7fd617b13272626a28278d0e578c98720d9ba4b2439d49", + "sha256:3cdcdb0b896e981678eee140d882b70092dac83ac1cdf6b3a60e2216a73f2b91", + "sha256:4637b88343166249fe8aa94e7c4a62a180c4b3898283bb5d3d2fd5fe10d8e4e0", + "sha256:4db853948ce4e718f2fc775b75c37ba2efb6aaea41a1a5fc57f0af59eee774b2", + "sha256:4dd43a78897793f60766563969442020e90eb7847463eca901e41ba186a7d4a5", + "sha256:54251ef02a2309b5eec99d151ebf5c9904b77976c8abdcbce7891ed22df53884", + "sha256:54ce1c9a16a9561b6d6d8cb30089ab1e5eb66918cb47d457bd996ef34182922e", + "sha256:593c5fd6be85da83656b93ffcccc2312d2d149d251e98588b14fbc288fd8909c", + "sha256:5bb94705aea800051a743aa4874bb1397d4695fb0583ba5e425ee0328757f196", + "sha256:67cd427c68926108778a9005f2a04adbd5e67c442ed21d95389fe1d595458756", + "sha256:70ca5ef3b3b1c4a0812b5c63c57c23b63e53bc38e758b37a951e5bc466449861", + "sha256:73ddde795ee9b06257dac5ad42fcb07f3b9b813f8c1f7f870f402f4dc54b5269", + "sha256:758e9d4ef15d3560214cddbc97b8ef3ef86ce04d62ddac17ad39ba87e89bd3b1", + "sha256:7d33d2fae0e8b170b6a6c57400e077412240f6f5bb2a342cf1ee512a787942bb", + "sha256:7fdadc077553621911f27ce206ffcbec7d3f8d7b50e0da39f10997e8e2bb7f6a", + "sha256:8000376f139d4d38d6851eb149b321a52bb8893a88dae8ee7d95840431977081", + "sha256:837060a8599b8f5d402e97197d4924f05a2e0d68756998345c829c33186217b1", + "sha256:89dbdb3e6e9594d512780a5a1c42801879628b38e3efc7038094430844e271d8", + "sha256:8c730dc3a83e5ac137fbc92dfcfe1511ce3b2b5d7578315b63dbbb76f7f51d90", + "sha256:8e275ee4cb11c262bd108ab2081f750db2a1c0b8c12c1897f27b160c8bd57bbc", + "sha256:9044b5e4f7083f209c4e35aa5dd54b1dd5b112b108648f5c902ad586d4f945c5", + "sha256:93a18841d09bcdd774dcdc308e4537e1f867b3dec059c131fde0327899734aa1", + "sha256:9409c080586d1f683df3f184f20e36fb647f2e0bc3988094d4fd8c9f4eb1b3b3", + "sha256:96f82000e12f23e4f29346e42702b6ed9a2f2fea34a740dd5ffffcc8c539eb35", + "sha256:9aa9aeddeed452b2f616ff5507459e7bab436916ccb10961c4a382cd3e03f47f", + "sha256:9ee85f0696a17dd28fbcfceb59f9510aa71934b483d1f5601d1030c3c8304f3c", + "sha256:a07dba04c5e22824816b2615ad7a7484432d7f540e6fa86af60d2de57b0fcee2", + "sha256:a3cd561ded2cf2bbae44d4605837221b987c216cff94f49dfeed63488bb228d2", + "sha256:a697cd8ba0383bba3d2d3ada02b34ed268cb548b369943cd349007730c92bddf", + "sha256:a76da0a31da6fcae4210aa94fd779c65c75786bc9af06289cd1c184451ef7a65", + "sha256:a85b653980faad27e88b141348707ceeef8a1186f75ecc600c395dcac19f385b", + "sha256:a8d65b38173085f24bc07f8b6c505cbb7418009fa1a1fcb111b1f4961814a442", + "sha256:aa8dd43daa836b9a8128dbe7d923423e5ad86f50a7a14dc688194b7be5c0dea2", + "sha256:ab8a209b8485d3db694fa97a896d96dd6533d63c22829043fd9de627060beade", + "sha256:abc56501c3fd148d60659aae0af6ddc149660469082859fa7b066a298bde9482", + "sha256:ad5db5781c774ab9a9b2c4302bbf0c1014960a0a7be63278d13ae6fdf88126fe", + "sha256:ae98e14432d458fc3de11a77ccb3ae65ddce70f730e7c76140653048c71bfcbc", + "sha256:b20be51b37a75cc54c2c55def3fa2c65bb94ba859dde241cd0a4fd302de5ae0a", + "sha256:b523466b1a31d0dcef7c5be1f20b942919b62fd6e9a9be199d035509cbefc0ec", + "sha256:b5d658fbd9f0d6eea113aea286b21d3cd4d3fd978157cbf2447a6035916506d3", + "sha256:b6123aa4a59d75f06e9dd3dac5bf8bc9aa383121bb3dd9a7a612e05eabc9961a", + "sha256:bd165131fd51697e22421d0e467997ad31621b74bfc0b75956608cb2906dda07", + "sha256:bf902d7413c82a1bfa08b06a070876132a5ae6b2388e2712aab3a7cbc02205c6", + "sha256:c12fc111ef090845de2bb15009372175d76ac99969bdf31e2ce9b42e4b8cd88f", + "sha256:c1eec9d950b6fe688edee07138993e54ee4ae634c51443cfb7c1e7613322718e", + "sha256:c640e5a06869c75994624551f45e5506e4256562ead981cce820d5ab39ae2192", + "sha256:cc1331b6d5a6e144aeb5e626f4375f5b7ae9934ba620c0ac6b3e43d5e683a0f0", + "sha256:cfd5cd998c2e36a862d0e27b2df63237e67273f2fc78f47445b14e73a810e7e6", + "sha256:d3d8da4a631471dfaf94c10c85f5277b1f8e42ac42bade1ac67da4b4a7359b73", + "sha256:d44ff19eea13ae4acdaaab0179fa68c0c6f2f45d66a4d8ec1eda7d6cecbcc15f", + "sha256:dd0052e9db3474df30433f83a71b9b23bd9e4ef1de13d92df21a52c0303b8ab6", + "sha256:dd0e081319328928531df7a0e63621caf67652c8464303fd102141b785ef9547", + "sha256:dda60aa465b861324e65a78c9f5cf0f4bc713e4309f83bc387be158b077963d9", + "sha256:e06695e0326d05b06833b40b7ef477e475d0b1ba3a6d27da1bb48c23209bf457", + "sha256:e1abe69aca89514737465752b4bcaf8016de61b3be1397a8fc260ba33321b3a8", + "sha256:e267b0ed063341f3e60acd25c05200df4193e15a4a5807075cd71225a2386e26", + "sha256:e5449ca63da169a2e6068dd0e2fcc8d91f9558aba89ff6d02121ca8ab11e79e5", + "sha256:e63e4e5081de46517099dc30abe418122f54531a6ae2ebc8680bcd7096860eab", + "sha256:f189805c8be5ca5add39e6f899e6ce2ed824e65fb45f3c28cb2841911da19070", + "sha256:f7955ecf5609dee9442cbface754f2c6e541d9e6eda87fad7f7a989b0bdb9d71", + "sha256:f86d3a7a9af5d826744fabf4afd15b9dfef44fe69a98541f666f66fbb8d3fef9", + "sha256:fbd43429d0d7ed6533b25fc993861b8fd512c42d04514a0dd6337fb3ccf22761" + ], + "markers": "python_version >= '3.9'", + "version": "==11.1.0" + }, + "platformdirs": { + "hashes": [ + "sha256:cf8ee52a3afdb965072dcc652433e0c7e3e40cf5ea1477cd4b3b1d2eb75495b3", + "sha256:e9d171d00af68be50e9202731309c4e658fd8bc76f55c11c7dd760d023bda68e" + ], + "markers": "python_version >= '3.7'", + "version": "==3.11.0" + }, + "prometheus-client": { + "hashes": [ + "sha256:252505a722ac04b0456be05c05f75f45d760c2911ffc45f2a06bcaed9f3ae3fb", + "sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + ], + "markers": "python_version >= '3.8'", + "version": "==0.21.1" + }, + "promise": { + "hashes": [ + "sha256:dfd18337c523ba4b6a58801c164c1904a9d4d1b1747c7d5dbf45b693a49d93d0" + ], + "version": "==2.3" + }, + "prompt-toolkit": { + "hashes": [ + "sha256:544748f3860a2623ca5cd6d2795e7a14f3d0e1c3c9728359013f79877fc89bab", + "sha256:9b6427eb19e479d98acff65196a307c555eb567989e6d88ebbb1b509d9779198" + ], + "markers": "python_full_version >= '3.8.0'", + "version": "==3.0.50" + }, + "propcache": { + "hashes": [ + "sha256:03ff9d3f665769b2a85e6157ac8b439644f2d7fd17615a82fa55739bc97863f4", + "sha256:049324ee97bb67285b49632132db351b41e77833678432be52bdd0289c0e05e4", + "sha256:081a430aa8d5e8876c6909b67bd2d937bfd531b0382d3fdedb82612c618bc41a", + "sha256:0f022d381747f0dfe27e99d928e31bc51a18b65bb9e481ae0af1380a6725dd1f", + "sha256:12d1083f001ace206fe34b6bdc2cb94be66d57a850866f0b908972f90996b3e9", + "sha256:14d86fe14b7e04fa306e0c43cdbeebe6b2c2156a0c9ce56b815faacc193e320d", + "sha256:160291c60081f23ee43d44b08a7e5fb76681221a8e10b3139618c5a9a291b84e", + "sha256:1672137af7c46662a1c2be1e8dc78cb6d224319aaa40271c9257d886be4363a6", + "sha256:19a0f89a7bb9d8048d9c4370c9c543c396e894c76be5525f5e1ad287f1750ddf", + "sha256:1ac2f5fe02fa75f56e1ad473f1175e11f475606ec9bd0be2e78e4734ad575034", + "sha256:1cd9a1d071158de1cc1c71a26014dcdfa7dd3d5f4f88c298c7f90ad6f27bb46d", + "sha256:1ffc3cca89bb438fb9c95c13fc874012f7b9466b89328c3c8b1aa93cdcfadd16", + "sha256:297878dc9d0a334358f9b608b56d02e72899f3b8499fc6044133f0d319e2ec30", + "sha256:2d3af2e79991102678f53e0dbf4c35de99b6b8b58f29a27ca0325816364caaba", + "sha256:30b43e74f1359353341a7adb783c8f1b1c676367b011709f466f42fda2045e95", + "sha256:3156628250f46a0895f1f36e1d4fbe062a1af8718ec3ebeb746f1d23f0c5dc4d", + "sha256:31f5af773530fd3c658b32b6bdc2d0838543de70eb9a2156c03e410f7b0d3aae", + "sha256:3935bfa5fede35fb202c4b569bb9c042f337ca4ff7bd540a0aa5e37131659348", + "sha256:39d51fbe4285d5db5d92a929e3e21536ea3dd43732c5b177c7ef03f918dff9f2", + "sha256:3f77ce728b19cb537714499928fe800c3dda29e8d9428778fc7c186da4c09a64", + "sha256:4160d9283bd382fa6c0c2b5e017acc95bc183570cd70968b9202ad6d8fc48dce", + "sha256:4a571d97dbe66ef38e472703067021b1467025ec85707d57e78711c085984e54", + "sha256:4e6281aedfca15301c41f74d7005e6e3f4ca143584ba696ac69df4f02f40d629", + "sha256:52277518d6aae65536e9cea52d4e7fd2f7a66f4aa2d30ed3f2fcea620ace3c54", + "sha256:556fc6c10989f19a179e4321e5d678db8eb2924131e64652a51fe83e4c3db0e1", + "sha256:574faa3b79e8ebac7cb1d7930f51184ba1ccf69adfdec53a12f319a06030a68b", + "sha256:58791550b27d5488b1bb52bc96328456095d96206a250d28d874fafe11b3dfaf", + "sha256:5b750a8e5a1262434fb1517ddf64b5de58327f1adc3524a5e44c2ca43305eb0b", + "sha256:5d97151bc92d2b2578ff7ce779cdb9174337390a535953cbb9452fb65164c587", + "sha256:5eee736daafa7af6d0a2dc15cc75e05c64f37fc37bafef2e00d77c14171c2097", + "sha256:6445804cf4ec763dc70de65a3b0d9954e868609e83850a47ca4f0cb64bd79fea", + "sha256:647894f5ae99c4cf6bb82a1bb3a796f6e06af3caa3d32e26d2350d0e3e3faf24", + "sha256:66d4cfda1d8ed687daa4bc0274fcfd5267873db9a5bc0418c2da19273040eeb7", + "sha256:6a9a8c34fb7bb609419a211e59da8887eeca40d300b5ea8e56af98f6fbbb1541", + "sha256:6b3f39a85d671436ee3d12c017f8fdea38509e4f25b28eb25877293c98c243f6", + "sha256:6b6fb63ae352e13748289f04f37868099e69dba4c2b3e271c46061e82c745634", + "sha256:70693319e0b8fd35dd863e3e29513875eb15c51945bf32519ef52927ca883bc3", + "sha256:781e65134efaf88feb447e8c97a51772aa75e48b794352f94cb7ea717dedda0d", + "sha256:819ce3b883b7576ca28da3861c7e1a88afd08cc8c96908e08a3f4dd64a228034", + "sha256:857112b22acd417c40fa4595db2fe28ab900c8c5fe4670c7989b1c0230955465", + "sha256:887d9b0a65404929641a9fabb6452b07fe4572b269d901d622d8a34a4e9043b2", + "sha256:8b3489ff1ed1e8315674d0775dc7d2195fb13ca17b3808721b54dbe9fd020faf", + "sha256:92fc4500fcb33899b05ba73276dfb684a20d31caa567b7cb5252d48f896a91b1", + "sha256:9403db39be1393618dd80c746cb22ccda168efce239c73af13c3763ef56ffc04", + "sha256:98110aa363f1bb4c073e8dcfaefd3a5cea0f0834c2aab23dda657e4dab2f53b5", + "sha256:999779addc413181912e984b942fbcc951be1f5b3663cd80b2687758f434c583", + "sha256:9caac6b54914bdf41bcc91e7eb9147d331d29235a7c967c150ef5df6464fd1bb", + "sha256:a7a078f5d37bee6690959c813977da5291b24286e7b962e62a94cec31aa5188b", + "sha256:a7e65eb5c003a303b94aa2c3852ef130230ec79e349632d030e9571b87c4698c", + "sha256:a96dc1fa45bd8c407a0af03b2d5218392729e1822b0c32e62c5bf7eeb5fb3958", + "sha256:aca405706e0b0a44cc6bfd41fbe89919a6a56999157f6de7e182a990c36e37bc", + "sha256:accb6150ce61c9c4b7738d45550806aa2b71c7668c6942f17b0ac182b6142fd4", + "sha256:ad1af54a62ffe39cf34db1aa6ed1a1873bd548f6401db39d8e7cd060b9211f82", + "sha256:ae1aa1cd222c6d205853b3013c69cd04515f9d6ab6de4b0603e2e1c33221303e", + "sha256:b2d0a12018b04f4cb820781ec0dffb5f7c7c1d2a5cd22bff7fb055a2cb19ebce", + "sha256:b480c6a4e1138e1aa137c0079b9b6305ec6dcc1098a8ca5196283e8a49df95a9", + "sha256:b74c261802d3d2b85c9df2dfb2fa81b6f90deeef63c2db9f0e029a3cac50b518", + "sha256:ba278acf14471d36316159c94a802933d10b6a1e117b8554fe0d0d9b75c9d536", + "sha256:bb6178c241278d5fe853b3de743087be7f5f4c6f7d6d22a3b524d323eecec505", + "sha256:bf72af5e0fb40e9babf594308911436c8efde3cb5e75b6f206c34ad18be5c052", + "sha256:bfd3223c15bebe26518d58ccf9a39b93948d3dcb3e57a20480dfdd315356baff", + "sha256:c214999039d4f2a5b2073ac506bba279945233da8c786e490d411dfc30f855c1", + "sha256:c2f992c07c0fca81655066705beae35fc95a2fa7366467366db627d9f2ee097f", + "sha256:cba4cfa1052819d16699e1d55d18c92b6e094d4517c41dd231a8b9f87b6fa681", + "sha256:cea7daf9fc7ae6687cf1e2c049752f19f146fdc37c2cc376e7d0032cf4f25347", + "sha256:cf6c4150f8c0e32d241436526f3c3f9cbd34429492abddbada2ffcff506c51af", + "sha256:d09c333d36c1409d56a9d29b3a1b800a42c76a57a5a8907eacdbce3f18768246", + "sha256:d27b84d5880f6d8aa9ae3edb253c59d9f6642ffbb2c889b78b60361eed449787", + "sha256:d2ccec9ac47cf4e04897619c0e0c1a48c54a71bdf045117d3a26f80d38ab1fb0", + "sha256:d71264a80f3fcf512eb4f18f59423fe82d6e346ee97b90625f283df56aee103f", + "sha256:d93f3307ad32a27bda2e88ec81134b823c240aa3abb55821a8da553eed8d9439", + "sha256:d9631c5e8b5b3a0fda99cb0d29c18133bca1e18aea9effe55adb3da1adef80d3", + "sha256:ddfab44e4489bd79bda09d84c430677fc7f0a4939a73d2bba3073036f487a0a6", + "sha256:e7048abd75fe40712005bcfc06bb44b9dfcd8e101dda2ecf2f5aa46115ad07ca", + "sha256:e73091191e4280403bde6c9a52a6999d69cdfde498f1fdf629105247599b57ec", + "sha256:e800776a79a5aabdb17dcc2346a7d66d0777e942e4cd251defeb084762ecd17d", + "sha256:edc9fc7051e3350643ad929df55c451899bb9ae6d24998a949d2e4c87fb596d3", + "sha256:f089118d584e859c62b3da0892b88a83d611c2033ac410e929cb6754eec0ed16", + "sha256:f174bbd484294ed9fdf09437f889f95807e5f229d5d93588d34e92106fbf6717", + "sha256:f508b0491767bb1f2b87fdfacaba5f7eddc2f867740ec69ece6d1946d29029a6", + "sha256:f7a31fc1e1bd362874863fdeed71aed92d348f5336fd84f2197ba40c59f061bd", + "sha256:f9479aa06a793c5aeba49ce5c5692ffb51fcd9a7016e017d555d5e2b0045d212" + ], + "markers": "python_version >= '3.9'", + "version": "==0.2.1" + }, + "protobuf": { + "hashes": [ + "sha256:0aebecb809cae990f8129ada5ca273d9d670b76d9bfc9b1809f0a9c02b7dbf41", + "sha256:4be0571adcbe712b282a330c6e89eae24281344429ae95c6d85e79e84780f5ea", + "sha256:5e61fd921603f58d2f5acb2806a929b4675f8874ff5f330b7d6f7e2e784bbcd8", + "sha256:7a183f592dc80aa7c8da7ad9e55091c4ffc9497b3054452d629bb85fa27c2a45", + "sha256:7f8249476b4a9473645db7f8ab42b02fe1488cbe5fb72fddd445e0665afd8584", + "sha256:919ad92d9b0310070f8356c24b855c98df2b8bd207ebc1c0c6fcc9ab1e007f3d", + "sha256:98d8d8aa50de6a2747efd9cceba361c9034050ecce3e09136f90de37ddba66e1", + "sha256:abe32aad8561aa7cc94fc7ba4fdef646e576983edb94a73381b03c53728a626f", + "sha256:b0234dd5a03049e4ddd94b93400b67803c823cfc405689688f59b34e0742381a", + "sha256:b2fde3d805354df675ea4c7c6338c1aecd254dfc9925e88c6d31a2bcb97eb173", + "sha256:fe14e16c22be926d3abfcb500e60cab068baf10b542b8c858fa27e098123e331" + ], + "markers": "python_version >= '3.8'", + "version": "==4.25.5" + }, + "psutil": { + "hashes": [ + "sha256:018aeae2af92d943fdf1da6b58665124897cfc94faa2ca92098838f83e1b1bca", + "sha256:0bdd4eab935276290ad3cb718e9809412895ca6b5b334f5a9111ee6d9aff9377", + "sha256:1924e659d6c19c647e763e78670a05dbb7feaf44a0e9c94bf9e14dfc6ba50468", + "sha256:33431e84fee02bc84ea36d9e2c4a6d395d479c9dd9bba2376c1f6ee8f3a4e0b3", + "sha256:384636b1a64b47814437d1173be1427a7c83681b17a450bfc309a1953e329603", + "sha256:6d4281f5bbca041e2292be3380ec56a9413b790579b8e593b1784499d0005dac", + "sha256:8be07491f6ebe1a693f17d4f11e69d0dc1811fa082736500f649f79df7735303", + "sha256:8df0178ba8a9e5bc84fed9cfa61d54601b371fbec5c8eebad27575f1e105c0d4", + "sha256:97f7cb9921fbec4904f522d972f0c0e1f4fabbdd4e0287813b21215074a0f160", + "sha256:9ccc4316f24409159897799b83004cb1e24f9819b0dcf9c0b68bdcb6cefee6a8", + "sha256:b6e06c20c05fe95a3d7302d74e7097756d4ba1247975ad6905441ae1b5b66003", + "sha256:c777eb75bb33c47377c9af68f30e9f11bc78e0f07fbf907be4a5d70b2fe5f030", + "sha256:ca9609c77ea3b8481ab005da74ed894035936223422dc591d6772b147421f777", + "sha256:cf8496728c18f2d0b45198f06895be52f36611711746b7f30c464b422b50e2f5", + "sha256:eaa912e0b11848c4d9279a93d7e2783df352b082f40111e078388701fd479e53", + "sha256:f35cfccb065fff93529d2afb4a2e89e363fe63ca1e4a5da22b603a85833c2649", + "sha256:fc0ed7fe2231a444fc219b9c42d0376e0a9a1a72f16c5cfa0f68d19f1a0663e8" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'", + "version": "==6.1.1" + }, + "ptyprocess": { + "hashes": [ + "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35", + "sha256:5c5d0a3b48ceee0b48485e0c26037c0acd7d29765ca3fbb5cb3831d347423220" + ], + "markers": "os_name != 'nt'", + "version": "==0.7.0" + }, + "pure-eval": { + "hashes": [ + "sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0", + "sha256:5f4e983f40564c576c7c8635ae88db5956bb2229d7e9237d03b3c0b0190eaf42" + ], + "version": "==0.2.3" + }, + "py4j": { + "hashes": [ + "sha256:0b6e5315bb3ada5cf62ac651d107bb2ebc02def3dee9d9548e3baac644ea8dbb", + "sha256:85defdfd2b2376eb3abf5ca6474b51ab7e0de341c75a02f46dc9b5976f5a5c1b" + ], + "version": "==0.10.9.7" + }, + "pyarrow": { + "hashes": [ + "sha256:059bd8f12a70519e46cd64e1ba40e97eae55e0cbe1695edd95384653d7626b23", + "sha256:06ff1264fe4448e8d02073f5ce45a9f934c0f3db0a04460d0b01ff28befc3696", + "sha256:1e6987c5274fb87d66bb36816afb6f65707546b3c45c44c28e3c4133c010a881", + "sha256:209bac546942b0d8edc8debda248364f7f668e4aad4741bae58e67d40e5fcf75", + "sha256:20e003a23a13da963f43e2b432483fdd8c38dc8882cd145f09f21792e1cf22a1", + "sha256:22a768987a16bb46220cef490c56c671993fbee8fd0475febac0b3e16b00a10e", + "sha256:2cc61593c8e66194c7cdfae594503e91b926a228fba40b5cf25cc593563bcd07", + "sha256:2dbba05e98f247f17e64303eb876f4a80fcd32f73c7e9ad975a83834d81f3fda", + "sha256:32356bfb58b36059773f49e4e214996888eeea3a08893e7dbde44753799b2a02", + "sha256:36cef6ba12b499d864d1def3e990f97949e0b79400d08b7cf74504ffbd3eb025", + "sha256:37c233ddbce0c67a76c0985612fef27c0c92aef9413cf5aa56952f359fcb7379", + "sha256:3c0fa3bfdb0305ffe09810f9d3e2e50a2787e3a07063001dcd7adae0cee3601a", + "sha256:3f16111f9ab27e60b391c5f6d197510e3ad6654e73857b4e394861fc79c37200", + "sha256:52809ee69d4dbf2241c0e4366d949ba035cbcf48409bf404f071f624ed313a2b", + "sha256:5c1da70d668af5620b8ba0a23f229030a4cd6c5f24a616a146f30d2386fec422", + "sha256:63ac901baec9369d6aae1cbe6cca11178fb018a8d45068aaf5bb54f94804a866", + "sha256:64df2bf1ef2ef14cee531e2dfe03dd924017650ffaa6f9513d7a1bb291e59c15", + "sha256:66e986dc859712acb0bd45601229021f3ffcdfc49044b64c6d071aaf4fa49e98", + "sha256:6dd4f4b472ccf4042f1eab77e6c8bce574543f54d2135c7e396f413046397d5a", + "sha256:75ee0efe7a87a687ae303d63037d08a48ef9ea0127064df18267252cfe2e9541", + "sha256:76fc257559404ea5f1306ea9a3ff0541bf996ff3f7b9209fc517b5e83811fa8e", + "sha256:78ea56f62fb7c0ae8ecb9afdd7893e3a7dbeb0b04106f5c08dbb23f9c0157591", + "sha256:87482af32e5a0c0cce2d12eb3c039dd1d853bd905b04f3f953f147c7a196915b", + "sha256:87e879323f256cb04267bb365add7208f302df942eb943c93a9dfeb8f44840b1", + "sha256:a01d0052d2a294a5f56cc1862933014e696aa08cc7b620e8c0cce5a5d362e976", + "sha256:a25eb2421a58e861f6ca91f43339d215476f4fe159eca603c55950c14f378cc5", + "sha256:a51fee3a7db4d37f8cda3ea96f32530620d43b0489d169b285d774da48ca9785", + "sha256:a898d134d00b1eca04998e9d286e19653f9d0fcb99587310cd10270907452a6b", + "sha256:b0c4a18e00f3a32398a7f31da47fefcd7a927545b396e1f15d0c85c2f2c778cd", + "sha256:ba9fe808596c5dbd08b3aeffe901e5f81095baaa28e7d5118e01354c64f22807", + "sha256:c65bf4fd06584f058420238bc47a316e80dda01ec0dfb3044594128a6c2db794", + "sha256:c87824a5ac52be210d32906c715f4ed7053d0180c1060ae3ff9b7e560f53f944", + "sha256:e354fba8490de258be7687f341bc04aba181fc8aa1f71e4584f9890d9cb2dec2", + "sha256:e4b123ad0f6add92de898214d404e488167b87b5dd86e9a434126bc2b7a5578d", + "sha256:f7d029f20ef56673a9730766023459ece397a05001f4e4d13805111d7c2108c0", + "sha256:fc0de7575e841f1595ac07e5bc631084fd06ca8b03c0f2ecece733d23cd5102a" + ], + "index": "pypi", + "markers": "python_version >= '3.8'", + "version": "==14.0.2" + }, + "pyasn1": { + "hashes": [ + "sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629", + "sha256:6f580d2bdd84365380830acf45550f2511469f673cb4a5ae3857a3170128b034" + ], + "markers": "python_version >= '3.8'", + "version": "==0.6.1" + }, + "pyasn1-modules": { + "hashes": [ + "sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd", + "sha256:c28e2dbf9c06ad61c71a075c7e0f9fd0f1b0bb2d2ad4377f240d33ac2ab60a7c" + ], + "markers": "python_version >= '3.8'", + "version": "==0.4.1" + }, + "pybtex": { + "hashes": [ + "sha256:818eae35b61733e5c007c3fcd2cfb75ed1bc8b4173c1f70b56cc4c0802d34755", + "sha256:e1e0c8c69998452fea90e9179aa2a98ab103f3eed894405b7264e517cc2fcc0f" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2'", + "version": "==0.24.0" + }, + "pybtex-docutils": { + "hashes": [ + "sha256:3a7ebdf92b593e00e8c1c538aa9a20bca5d92d84231124715acc964d51d93c6b", + "sha256:8fd290d2ae48e32fcb54d86b0efb8d573198653c7e2447d5bec5847095f430b9" + ], + "markers": "python_version >= '3.7'", + "version": "==1.0.3" + }, + "pycparser": { + "hashes": [ + "sha256:491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6", + "sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc" + ], + "markers": "python_version >= '3.8'", + "version": "==2.22" + }, + "pydantic": { + "hashes": [ + "sha256:0067935d35044950be781933ab91b9a708eaff124bf860fa2f70aeb1c4be7212", + "sha256:08caa8c0468172d27c669abfe9e7d96a8b1655ec0833753e117061febaaadef5", + "sha256:0bb58bbe65a43483d49f66b6c8474424d551a3fbe8a7796c42da314bac712738", + "sha256:185d5f1dff1fead51766da9b2de4f3dc3b8fca39e59383c273f34a6ae254e3e2", + "sha256:1d7c332685eafacb64a1a7645b409a166eb7537f23142d26895746f628a3149b", + "sha256:245e486e0fec53ec2366df9cf1cba36e0bbf066af7cd9c974bbbd9ba10e1e586", + "sha256:266ecfc384861d7b0b9c214788ddff75a2ea123aa756bcca6b2a1175edeca0fe", + "sha256:298d6f765e3c9825dfa78f24c1efd29af91c3ab1b763e1fd26ae4d9e1749e5c8", + "sha256:2b6a04efdcd25486b27f24c1648d5adc1633ad8b4506d0e96e5367f075ed2e0b", + "sha256:2c9b782db6f993a36092480eeaab8ba0609f786041b01f39c7c52252bda6d85f", + "sha256:2ed4a5f13cf160d64aa331ab9017af81f3481cd9fd0e49f1d707b57fe1b9f3ae", + "sha256:35b263b60c519354afb3a60107d20470dd5250b3ce54c08753f6975c406d949b", + "sha256:36ceadef055af06e7756eb4b871cdc9e5a27bdc06a45c820cd94b443de019bbf", + "sha256:38e6d35cf7cd1727822c79e324fa0677e1a08c88a34f56695101f5ad4d5e20e5", + "sha256:3b7693bb6ed3fbe250e222f9415abb73111bb09b73ab90d2d4d53f6390e0ccc1", + "sha256:3c96fed246ccc1acb2df032ff642459e4ae18b315ecbab4d95c95cfa292e8517", + "sha256:46cffa24891b06269e12f7e1ec50b73f0c9ab4ce71c2caa4ccf1fb36845e1ff7", + "sha256:57f0101e6c97b411f287a0b7cf5ebc4e5d3b18254bf926f45a11615d29475793", + "sha256:5d387940f0f1a0adb3c44481aa379122d06df8486cc8f652a7b3b0caf08435f7", + "sha256:5e8148c2ce4894ce7e5a4925d9d3fdce429fb0e821b5a8783573f3611933a251", + "sha256:61da798c05a06a362a2f8c5e3ff0341743e2818d0f530eaac0d6898f1b187f1f", + "sha256:64b48e2b609a6c22178a56c408ee1215a7206077ecb8a193e2fda31858b2362a", + "sha256:662bf5ce3c9b1cef32a32a2f4debe00d2f4839fefbebe1d6956e681122a9c839", + "sha256:6a497bc66b3374b7d105763d1d3de76d949287bf28969bff4656206ab8a53aa9", + "sha256:6b64708009cfabd9c2211295144ff455ec7ceb4c4fb45a07a804309598f36187", + "sha256:6c54f8d4c151c1de784c5b93dfbb872067e3414619e10e21e695f7bb84d1d1fd", + "sha256:79577cc045d3442c4e845df53df9f9202546e2ba54954c057d253fc17cd16cb1", + "sha256:7ce64d23d4e71d9698492479505674c5c5b92cda02b07c91dfc13633b2eef805", + "sha256:8a148410fa0e971ba333358d11a6dea7b48e063de127c2b09ece9d1c1137dde4", + "sha256:8b6350b68566bb6b164fb06a3772e878887f3c857c46c0c534788081cb48adf4", + "sha256:90e85834f0370d737c77a386ce505c21b06bfe7086c1c568b70e15a568d9670d", + "sha256:935b19fdcde236f4fbf691959fa5c3e2b6951fff132964e869e57c70f2ad1ba3", + "sha256:98737c3ab5a2f8a85f2326eebcd214510f898881a290a7939a45ec294743c875", + "sha256:9e3e4000cd54ef455694b8be9111ea20f66a686fc155feda1ecacf2322b115da", + "sha256:a4973232c98b9b44c78b1233693e5e1938add5af18042f031737e1214455f9b8", + "sha256:a621742da75ce272d64ea57bd7651ee2a115fa67c0f11d66d9dcfc18c2f1b106", + "sha256:b6b73ab347284719f818acb14f7cd80696c6fdf1bd34feee1955d7a72d2e64ce", + "sha256:b8460bc256bf0de821839aea6794bb38a4c0fbd48f949ea51093f6edce0be459", + "sha256:b92893ebefc0151474f682e7debb6ab38552ce56a90e39a8834734c81f37c8a9", + "sha256:c0501e1d12df6ab1211b8cad52d2f7b2cd81f8e8e776d39aa5e71e2998d0379f", + "sha256:c1ba253eb5af8d89864073e6ce8e6c8dec5f49920cff61f38f5c3383e38b1c9f", + "sha256:c261127c275d7bce50b26b26c7d8427dcb5c4803e840e913f8d9df3f99dca55f", + "sha256:c677aa39ec737fec932feb68e4a2abe142682f2885558402602cd9746a1c92e8", + "sha256:d356aa5b18ef5a24d8081f5c5beb67c0a2a6ff2a953ee38d65a2aa96526b274f", + "sha256:db70c920cba9d05c69ad4a9e7f8e9e83011abb2c6490e561de9ae24aee44925c", + "sha256:e23a97a6c2f2db88995496db9387cd1727acdacc85835ba8619dce826c0b11a6", + "sha256:e622314542fb48542c09c7bd1ac51d71c5632dd3c92dc82ede6da233f55f4848", + "sha256:e7f0cda108b36a30c8fc882e4fc5b7eec8ef584aa43aa43694c6a7b274fb2b56", + "sha256:f198c8206640f4c0ef5a76b779241efb1380a300d88b1bce9bfe95a6362e674d", + "sha256:f2f4a2305f15eff68f874766d982114ac89468f1c2c0b97640e719cf1a078374" + ], + "markers": "python_version >= '3.7'", + "version": "==1.10.21" + }, + "pydata-sphinx-theme": { + "hashes": [ + "sha256:2136ad0e9500d0949f96167e63f3e298620040aea8f9c74621959eda5d4cf8e6", + "sha256:7762ec0ac59df3acecf49fd2f889e1b4565dbce8b88b2e29ee06fdd90645a06d" + ], + "markers": "python_version >= '3.9'", + "version": "==0.15.4" + }, + "pydot": { + "hashes": [ + "sha256:3ce88b2558f3808b0376f22bfa6c263909e1c3981e2a7b629b65b451eee4a25d", + "sha256:bfa9c3fc0c44ba1d132adce131802d7df00429d1a79cc0346b0a5cd374dbe9c6" + ], + "markers": "python_version >= '3.8'", + "version": "==3.0.4" + }, + "pyee": { + "hashes": [ + "sha256:5c7e60f8df95710dbe17550e16ce0153f83990c00ef744841b43f371ed53ebea", + "sha256:c09f56e36eb10bf23aa2aacf145f690ded75b990a3d9523fd478b005940303d2" + ], + "version": "==8.2.2" + }, + "pyerfa": { + "hashes": [ + "sha256:07b80cd70701f5d066b1ac8cce406682cfcd667a1186ec7d7ade597239a6021d", + "sha256:0e43c7194e3242083f2350b46c09fd4bf8ba1bcc0ebd1460b98fc47fe2389906", + "sha256:171ce9676a448a7eb555f03aa19ad5c749dbced1ce4f9923e4d93443c4a9c612", + "sha256:17d6b24fe4846c65d5e7d8c362dcb08199dc63b30a236aedd73875cc83e1f6c0", + "sha256:4991dee680ff36c87911d8faa4c7d1aa6278ad9b5e0d16158cf22fa7d74ba25c", + "sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0", + "sha256:690e258294202c86f479e78e80fd235cd27bd717f7f60062fccc3dbd6ef0b1a9", + "sha256:b0603e8e1b839327d586c8a627cdc634b795e18b007d84f0cda5500a0908254e", + "sha256:b282d7c60c4c47cf629c484c17ac504fcb04abd7b3f4dfcf53ee042afc3a5944", + "sha256:be1aeb70390dd03a34faf96749d5cabc58437410b4aab7213c512323932427df", + "sha256:d30b9b0df588ed5467e529d851ea324a67239096dd44703125072fd11b351ea2" + ], + "markers": "python_version >= '3.9'", + "version": "==2.0.1.5" + }, + "pygit2": { + "hashes": [ + "sha256:0809029cf804f343abdc9eaeaf9d915f9dbf320d79078c20138a3bf642583365", + "sha256:1011236bab7317b82e6cbc3dff4be8467923b1dcf2ffe28bf2e64805dcb37749", + "sha256:136b1ea44107fb6a3a58e7b1322227e83101bff50a929816d8653a38e0ed0e07", + "sha256:1391762153af9715ed1d0586e3f207c518f03f5874e1f5b8e398697d006a0a82", + "sha256:1ad964b2eea81e0c99d05c6ec0ec8b5715d3d0c99b3b6e09abcdb57c57701592", + "sha256:3029331ddf56a6908547278ab4c354b2d6932eb6a53be81e0093adc98a0ae540", + "sha256:36e3e9225e3f01bb6a2d4589c126900bbc571cd0876ca9c01372a6e3d3693c0e", + "sha256:39e7087e2affdba2530d1fe1ec04c27fa85db405be84e1cd4759891045324a31", + "sha256:507343fa142a82028c8448c2626317dc19885985aba8ea27d381777ac484eefb", + "sha256:5724683b3d239cc1457b9800d9d7988a00cd0cb1797d5caa6f46d16f3f74f1ca", + "sha256:578d78fc97d5c16b1ad44c1e2fda093628c3f29793b42be68b93a46ce7a662a0", + "sha256:5ffce0772167e5c436be57ee3ef0fb421c864657911aeb1a97618e1dd9f8b574", + "sha256:614cfddbf048900da19b016787f153d44ea9fd7ef80f9e03a77024aa1555d5f4", + "sha256:61ff2c8b0fc96fdf45a7a5239cc262b0293a5171f68d67eea239a42c3b2226cb", + "sha256:66431dba77977b9010fac580eaefcc7567ea0955b030d8e8472fdce0f1a7c5f0", + "sha256:6bc04917a680591c6e801df912d7fb722c253b5ac68178ff37b5666dafd06999", + "sha256:7bb1b623cbd16962c3a1ec7f8e1012fa224c9e9642758c65e8e656ecc7ff1574", + "sha256:8101aa723c292892ba46303b19487a9fb0de50d9e30f4c1c2a76e3383b6e4b6d", + "sha256:877ce82239de45301fa9953d50b41c46a5300cf7b3993db86bde64e08521a506", + "sha256:89ff254387d23d107dd2b542907d248a3a988e3be8cda99bcc8af04f56e6e5cf", + "sha256:8b7921016cbec166083206daca20d00f2358b18178122e1b0d1932b410296de1", + "sha256:9ae1967b0c8a2438b3b0e4a63307b5c22c80024a2f09b28d14dfde0001fed8dc", + "sha256:c491db4f71fd5d814023f2ad89ad7023c15738bcbe0807acc2313026600bf1b1", + "sha256:cbe1a3354a3eff0f4e842abcff73b24455ba7205ac959f146d7cb8dcd63cfa45", + "sha256:cce8db6aa40361270b14e1adb3a8e7d4606b9b53088e27321472c9a92f922648", + "sha256:ce938e7a4fdfc816ffceb62babad65fb62e1a5ad261e880b9a072e8da144ccca", + "sha256:d0ef5c3634317295268ef84b99e8acae37cb2f8b17d966b318c79e5211bf78d3", + "sha256:d677d6fb85c426c5f5f8409bdc5a2e391016c99f73b97779b284c4ad25aa75fa", + "sha256:e59de6138787aa3a5365557fb1ad427d3e877868917e0910257fb11f71f3c736", + "sha256:f7224d89a7dda7290e458393941e500c8682f375f41e6d80ee423958a5d4013d", + "sha256:fa2bc050b2c2d3e73b54d6d541c792178561a344f07e409f532d5bb97ac7b894" + ], + "markers": "python_version >= '3.10'", + "version": "==1.17.0" + }, + "pygments": { + "hashes": [ + "sha256:61c16d2a8576dc0649d9f39e089b5f02bcd27fba10d8fb4dcc28173f7a45151f", + "sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + ], + "markers": "python_version >= '3.8'", + "version": "==2.19.1" + }, + "pygtrie": { + "hashes": [ + "sha256:203514ad826eb403dab1d2e2ddd034e0d1534bbe4dbe0213bb0593f66beba4e2", + "sha256:8795cda8105493d5ae159a5bef313ff13156c5d4d72feddefacaad59f8c8ce16" + ], + "version": "==2.5.0" + }, + "pyparsing": { + "hashes": [ + "sha256:506ff4f4386c4cec0590ec19e6302d3aedb992fdc02c761e90416f158dacf8e1", + "sha256:61980854fd66de3a90028d679a954d5f2623e83144b5afe5ee86f43d762e5f0a" + ], + "markers": "python_version >= '3.9'", + "version": "==3.2.1" + }, + "pyppeteer": { + "hashes": [ + "sha256:11a734d8f02c6b128035aba8faf32748f2016310a6a1cbc6aa5b1e2580742e8f", + "sha256:ddb0d15cb644720160d49abb1ad0d97e87a55581febf1b7531be9e983aad7742" + ], + "index": "pypi", + "markers": "python_version >= '3.7' and python_version < '4.0'", + "version": "==1.0.2" + }, + "pyspark": { + "hashes": [ + "sha256:d41a9b76bd2aca370a6100d075c029e22ba44c5940927877e9435a3a9c566558" + ], + "index": "pypi", + "markers": "python_version >= '3.8'", + "version": "==3.5.0" + }, + "python-dateutil": { + "hashes": [ + "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3", + "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2'", + "version": "==2.9.0.post0" + }, + "python-json-logger": { + "hashes": [ + "sha256:8eb0554ea17cb75b05d2848bc14fb02fbdbd9d6972120781b974380bfa162008", + "sha256:cdc17047eb5374bd311e748b42f99d71223f3b0e186f4206cc5d52aefe85b090" + ], + "markers": "python_version >= '3.8'", + "version": "==3.2.1" + }, + "pytz": { + "hashes": [ + "sha256:2aa355083c50a0f93fa581709deac0c9ad65cca8a9e9beac660adcbd493c798a", + "sha256:31c7c1817eb7fae7ca4b8c7ee50c72f93aa2dd863de768e1ef4245d426aa0725" + ], + "version": "==2024.2" + }, + "pyyaml": { + "hashes": [ + "sha256:01179a4a8559ab5de078078f37e5c1a30d76bb88519906844fd7bdea1b7729ff", + "sha256:0833f8694549e586547b576dcfaba4a6b55b9e96098b36cdc7ebefe667dfed48", + "sha256:0a9a2848a5b7feac301353437eb7d5957887edbf81d56e903999a75a3d743086", + "sha256:0b69e4ce7a131fe56b7e4d770c67429700908fc0752af059838b1cfb41960e4e", + "sha256:0ffe8360bab4910ef1b9e87fb812d8bc0a308b0d0eef8c8f44e0254ab3b07133", + "sha256:11d8f3dd2b9c1207dcaf2ee0bbbfd5991f571186ec9cc78427ba5bd32afae4b5", + "sha256:17e311b6c678207928d649faa7cb0d7b4c26a0ba73d41e99c4fff6b6c3276484", + "sha256:1e2120ef853f59c7419231f3bf4e7021f1b936f6ebd222406c3b60212205d2ee", + "sha256:1f71ea527786de97d1a0cc0eacd1defc0985dcf6b3f17bb77dcfc8c34bec4dc5", + "sha256:23502f431948090f597378482b4812b0caae32c22213aecf3b55325e049a6c68", + "sha256:24471b829b3bf607e04e88d79542a9d48bb037c2267d7927a874e6c205ca7e9a", + "sha256:29717114e51c84ddfba879543fb232a6ed60086602313ca38cce623c1d62cfbf", + "sha256:2e99c6826ffa974fe6e27cdb5ed0021786b03fc98e5ee3c5bfe1fd5015f42b99", + "sha256:39693e1f8320ae4f43943590b49779ffb98acb81f788220ea932a6b6c51004d8", + "sha256:3ad2a3decf9aaba3d29c8f537ac4b243e36bef957511b4766cb0057d32b0be85", + "sha256:3b1fdb9dc17f5a7677423d508ab4f243a726dea51fa5e70992e59a7411c89d19", + "sha256:41e4e3953a79407c794916fa277a82531dd93aad34e29c2a514c2c0c5fe971cc", + "sha256:43fa96a3ca0d6b1812e01ced1044a003533c47f6ee8aca31724f78e93ccc089a", + "sha256:50187695423ffe49e2deacb8cd10510bc361faac997de9efef88badc3bb9e2d1", + "sha256:5ac9328ec4831237bec75defaf839f7d4564be1e6b25ac710bd1a96321cc8317", + "sha256:5d225db5a45f21e78dd9358e58a98702a0302f2659a3c6cd320564b75b86f47c", + "sha256:6395c297d42274772abc367baaa79683958044e5d3835486c16da75d2a694631", + "sha256:688ba32a1cffef67fd2e9398a2efebaea461578b0923624778664cc1c914db5d", + "sha256:68ccc6023a3400877818152ad9a1033e3db8625d899c72eacb5a668902e4d652", + "sha256:70b189594dbe54f75ab3a1acec5f1e3faa7e8cf2f1e08d9b561cb41b845f69d5", + "sha256:797b4f722ffa07cc8d62053e4cff1486fa6dc094105d13fea7b1de7d8bf71c9e", + "sha256:7c36280e6fb8385e520936c3cb3b8042851904eba0e58d277dca80a5cfed590b", + "sha256:7e7401d0de89a9a855c839bc697c079a4af81cf878373abd7dc625847d25cbd8", + "sha256:80bab7bfc629882493af4aa31a4cfa43a4c57c83813253626916b8c7ada83476", + "sha256:82d09873e40955485746739bcb8b4586983670466c23382c19cffecbf1fd8706", + "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563", + "sha256:8824b5a04a04a047e72eea5cec3bc266db09e35de6bdfe34c9436ac5ee27d237", + "sha256:8b9c7197f7cb2738065c481a0461e50ad02f18c78cd75775628afb4d7137fb3b", + "sha256:9056c1ecd25795207ad294bcf39f2db3d845767be0ea6e6a34d856f006006083", + "sha256:936d68689298c36b53b29f23c6dbb74de12b4ac12ca6cfe0e047bedceea56180", + "sha256:9b22676e8097e9e22e36d6b7bda33190d0d400f345f23d4065d48f4ca7ae0425", + "sha256:a4d3091415f010369ae4ed1fc6b79def9416358877534caf6a0fdd2146c87a3e", + "sha256:a8786accb172bd8afb8be14490a16625cbc387036876ab6ba70912730faf8e1f", + "sha256:a9f8c2e67970f13b16084e04f134610fd1d374bf477b17ec1599185cf611d725", + "sha256:bc2fa7c6b47d6bc618dd7fb02ef6fdedb1090ec036abab80d4681424b84c1183", + "sha256:c70c95198c015b85feafc136515252a261a84561b7b1d51e3384e0655ddf25ab", + "sha256:cc1c1159b3d456576af7a3e4d1ba7e6924cb39de8f67111c735f6fc832082774", + "sha256:ce826d6ef20b1bc864f0a68340c8b3287705cae2f8b4b1d932177dcc76721725", + "sha256:d584d9ec91ad65861cc08d42e834324ef890a082e591037abe114850ff7bbc3e", + "sha256:d7fded462629cfa4b685c5416b949ebad6cec74af5e2d42905d41e257e0869f5", + "sha256:d84a1718ee396f54f3a086ea0a66d8e552b2ab2017ef8b420e92edbc841c352d", + "sha256:d8e03406cac8513435335dbab54c0d385e4a49e4945d2909a581c83647ca0290", + "sha256:e10ce637b18caea04431ce14fabcf5c64a1c61ec9c56b071a4b7ca131ca52d44", + "sha256:ec031d5d2feb36d1d1a24380e4db6d43695f3748343d99434e6f5f9156aaa2ed", + "sha256:ef6107725bd54b262d6dedcc2af448a266975032bc85ef0172c5f059da6325b4", + "sha256:efdca5630322a10774e8e98e1af481aad470dd62c3170801852d752aa7a783ba", + "sha256:f753120cb8181e736c57ef7636e83f31b9c0d1722c516f7e86cf15b7aa57ff12", + "sha256:ff3824dc5261f50c9b0dfb3be22b4567a6f938ccce4587b38952d85fd9e9afe4" + ], + "markers": "python_version >= '3.8'", + "version": "==6.0.2" + }, + "pyzmq": { + "hashes": [ + "sha256:007137c9ac9ad5ea21e6ad97d3489af654381324d5d3ba614c323f60dab8fae6", + "sha256:034da5fc55d9f8da09015d368f519478a52675e558c989bfcb5cf6d4e16a7d2a", + "sha256:05590cdbc6b902101d0e65d6a4780af14dc22914cc6ab995d99b85af45362cc9", + "sha256:070672c258581c8e4f640b5159297580a9974b026043bd4ab0470be9ed324f1f", + "sha256:0aca98bc423eb7d153214b2df397c6421ba6373d3397b26c057af3c904452e37", + "sha256:0bed0e799e6120b9c32756203fb9dfe8ca2fb8467fed830c34c877e25638c3fc", + "sha256:0d987a3ae5a71c6226b203cfd298720e0086c7fe7c74f35fa8edddfbd6597eed", + "sha256:0eaa83fc4c1e271c24eaf8fb083cbccef8fde77ec8cd45f3c35a9a123e6da097", + "sha256:160c7e0a5eb178011e72892f99f918c04a131f36056d10d9c1afb223fc952c2d", + "sha256:17bf5a931c7f6618023cdacc7081f3f266aecb68ca692adac015c383a134ca52", + "sha256:17c412bad2eb9468e876f556eb4ee910e62d721d2c7a53c7fa31e643d35352e6", + "sha256:18c8dc3b7468d8b4bdf60ce9d7141897da103c7a4690157b32b60acb45e333e6", + "sha256:1a534f43bc738181aa7cbbaf48e3eca62c76453a40a746ab95d4b27b1111a7d2", + "sha256:1c17211bc037c7d88e85ed8b7d8f7e52db6dc8eca5590d162717c654550f7282", + "sha256:1f3496d76b89d9429a656293744ceca4d2ac2a10ae59b84c1da9b5165f429ad3", + "sha256:1fcc03fa4997c447dce58264e93b5aa2d57714fbe0f06c07b7785ae131512732", + "sha256:226af7dcb51fdb0109f0016449b357e182ea0ceb6b47dfb5999d569e5db161d5", + "sha256:23f4aad749d13698f3f7b64aad34f5fc02d6f20f05999eebc96b89b01262fb18", + "sha256:25bf2374a2a8433633c65ccb9553350d5e17e60c8eb4de4d92cc6bd60f01d306", + "sha256:28ad5233e9c3b52d76196c696e362508959741e1a005fb8fa03b51aea156088f", + "sha256:28c812d9757fe8acecc910c9ac9dafd2ce968c00f9e619db09e9f8f54c3a68a3", + "sha256:29c6a4635eef69d68a00321e12a7d2559fe2dfccfa8efae3ffb8e91cd0b36a8b", + "sha256:29c7947c594e105cb9e6c466bace8532dc1ca02d498684128b339799f5248277", + "sha256:2a50625acdc7801bc6f74698c5c583a491c61d73c6b7ea4dee3901bb99adb27a", + "sha256:2ae90ff9dad33a1cfe947d2c40cb9cb5e600d759ac4f0fd22616ce6540f72797", + "sha256:2c4a71d5d6e7b28a47a394c0471b7e77a0661e2d651e7ae91e0cab0a587859ca", + "sha256:2ea4ad4e6a12e454de05f2949d4beddb52460f3de7c8b9d5c46fbb7d7222e02c", + "sha256:2eb7735ee73ca1b0d71e0e67c3739c689067f055c764f73aac4cc8ecf958ee3f", + "sha256:31507f7b47cc1ead1f6e86927f8ebb196a0bab043f6345ce070f412a59bf87b5", + "sha256:35cffef589bcdc587d06f9149f8d5e9e8859920a071df5a2671de2213bef592a", + "sha256:367b4f689786fca726ef7a6c5ba606958b145b9340a5e4808132cc65759abd44", + "sha256:39887ac397ff35b7b775db7201095fc6310a35fdbae85bac4523f7eb3b840e20", + "sha256:3a495b30fc91db2db25120df5847d9833af237546fd59170701acd816ccc01c4", + "sha256:3b55a4229ce5da9497dd0452b914556ae58e96a4381bb6f59f1305dfd7e53fc8", + "sha256:402b190912935d3db15b03e8f7485812db350d271b284ded2b80d2e5704be780", + "sha256:43a47408ac52647dfabbc66a25b05b6a61700b5165807e3fbd40063fcaf46386", + "sha256:4661c88db4a9e0f958c8abc2b97472e23061f0bc737f6f6179d7a27024e1faa5", + "sha256:46a446c212e58456b23af260f3d9fb785054f3e3653dbf7279d8f2b5546b21c2", + "sha256:470d4a4f6d48fb34e92d768b4e8a5cc3780db0d69107abf1cd7ff734b9766eb0", + "sha256:49d34ab71db5a9c292a7644ce74190b1dd5a3475612eefb1f8be1d6961441971", + "sha256:4d29ab8592b6ad12ebbf92ac2ed2bedcfd1cec192d8e559e2e099f648570e19b", + "sha256:4d80b1dd99c1942f74ed608ddb38b181b87476c6a966a88a950c7dee118fdf50", + "sha256:4da04c48873a6abdd71811c5e163bd656ee1b957971db7f35140a2d573f6949c", + "sha256:4f78c88905461a9203eac9faac157a2a0dbba84a0fd09fd29315db27be40af9f", + "sha256:4ff9dc6bc1664bb9eec25cd17506ef6672d506115095411e237d571e92a58231", + "sha256:5506f06d7dc6ecf1efacb4a013b1f05071bb24b76350832c96449f4a2d95091c", + "sha256:55cf66647e49d4621a7e20c8d13511ef1fe1efbbccf670811864452487007e08", + "sha256:5a509df7d0a83a4b178d0f937ef14286659225ef4e8812e05580776c70e155d5", + "sha256:5c2b3bfd4b9689919db068ac6c9911f3fcb231c39f7dd30e3138be94896d18e6", + "sha256:6835dd60355593de10350394242b5757fbbd88b25287314316f266e24c61d073", + "sha256:689c5d781014956a4a6de61d74ba97b23547e431e9e7d64f27d4922ba96e9d6e", + "sha256:6a96179a24b14fa6428cbfc08641c779a53f8fcec43644030328f44034c7f1f4", + "sha256:6ace4f71f1900a548f48407fc9be59c6ba9d9aaf658c2eea6cf2779e72f9f317", + "sha256:6b274e0762c33c7471f1a7471d1a2085b1a35eba5cdc48d2ae319f28b6fc4de3", + "sha256:706e794564bec25819d21a41c31d4df2d48e1cc4b061e8d345d7fb4dd3e94072", + "sha256:70fc7fcf0410d16ebdda9b26cbd8bf8d803d220a7f3522e060a69a9c87bf7bad", + "sha256:7133d0a1677aec369d67dd78520d3fa96dd7f3dcec99d66c1762870e5ea1a50a", + "sha256:7445be39143a8aa4faec43b076e06944b8f9d0701b669df4af200531b21e40bb", + "sha256:76589c020680778f06b7e0b193f4b6dd66d470234a16e1df90329f5e14a171cd", + "sha256:76589f2cd6b77b5bdea4fca5992dc1c23389d68b18ccc26a53680ba2dc80ff2f", + "sha256:77eb0968da535cba0470a5165468b2cac7772cfb569977cff92e240f57e31bef", + "sha256:794a4562dcb374f7dbbfb3f51d28fb40123b5a2abadee7b4091f93054909add5", + "sha256:7ad1bc8d1b7a18497dda9600b12dc193c577beb391beae5cd2349184db40f187", + "sha256:7f98f6dfa8b8ccaf39163ce872bddacca38f6a67289116c8937a02e30bbe9711", + "sha256:8423c1877d72c041f2c263b1ec6e34360448decfb323fa8b94e85883043ef988", + "sha256:8685fa9c25ff00f550c1fec650430c4b71e4e48e8d852f7ddcf2e48308038640", + "sha256:878206a45202247781472a2d99df12a176fef806ca175799e1c6ad263510d57c", + "sha256:89289a5ee32ef6c439086184529ae060c741334b8970a6855ec0b6ad3ff28764", + "sha256:8ab5cad923cc95c87bffee098a27856c859bd5d0af31bd346035aa816b081fe1", + "sha256:8b435f2753621cd36e7c1762156815e21c985c72b19135dac43a7f4f31d28dd1", + "sha256:8be4700cd8bb02cc454f630dcdf7cfa99de96788b80c51b60fe2fe1dac480289", + "sha256:8c997098cc65e3208eca09303630e84d42718620e83b733d0fd69543a9cab9cb", + "sha256:8ea039387c10202ce304af74def5021e9adc6297067f3441d348d2b633e8166a", + "sha256:8f7e66c7113c684c2b3f1c83cdd3376103ee0ce4c49ff80a648643e57fb22218", + "sha256:90412f2db8c02a3864cbfc67db0e3dcdbda336acf1c469526d3e869394fe001c", + "sha256:92a78853d7280bffb93df0a4a6a2498cba10ee793cc8076ef797ef2f74d107cf", + "sha256:989d842dc06dc59feea09e58c74ca3e1678c812a4a8a2a419046d711031f69c7", + "sha256:9cb3a6460cdea8fe8194a76de8895707e61ded10ad0be97188cc8463ffa7e3a8", + "sha256:9dd8cd1aeb00775f527ec60022004d030ddc51d783d056e3e23e74e623e33726", + "sha256:9ed69074a610fad1c2fda66180e7b2edd4d31c53f2d1872bc2d1211563904cd9", + "sha256:9edda2df81daa129b25a39b86cb57dfdfe16f7ec15b42b19bfac503360d27a93", + "sha256:a2224fa4a4c2ee872886ed00a571f5e967c85e078e8e8c2530a2fb01b3309b88", + "sha256:a4f96f0d88accc3dbe4a9025f785ba830f968e21e3e2c6321ccdfc9aef755115", + "sha256:aedd5dd8692635813368e558a05266b995d3d020b23e49581ddd5bbe197a8ab6", + "sha256:aee22939bb6075e7afededabad1a56a905da0b3c4e3e0c45e75810ebe3a52672", + "sha256:b1d464cb8d72bfc1a3adc53305a63a8e0cac6bc8c5a07e8ca190ab8d3faa43c2", + "sha256:b8f86dd868d41bea9a5f873ee13bf5551c94cf6bc51baebc6f85075971fe6eea", + "sha256:bc6bee759a6bddea5db78d7dcd609397449cb2d2d6587f48f3ca613b19410cfc", + "sha256:bea2acdd8ea4275e1278350ced63da0b166421928276c7c8e3f9729d7402a57b", + "sha256:bfa832bfa540e5b5c27dcf5de5d82ebc431b82c453a43d141afb1e5d2de025fa", + "sha256:c0e6091b157d48cbe37bd67233318dbb53e1e6327d6fc3bb284afd585d141003", + "sha256:c3789bd5768ab5618ebf09cef6ec2b35fed88709b104351748a63045f0ff9797", + "sha256:c530e1eecd036ecc83c3407f77bb86feb79916d4a33d11394b8234f3bd35b940", + "sha256:c811cfcd6a9bf680236c40c6f617187515269ab2912f3d7e8c0174898e2519db", + "sha256:c92d73464b886931308ccc45b2744e5968cbaade0b1d6aeb40d8ab537765f5bc", + "sha256:cccba051221b916a4f5e538997c45d7d136a5646442b1231b916d0164067ea27", + "sha256:cdeabcff45d1c219636ee2e54d852262e5c2e085d6cb476d938aee8d921356b3", + "sha256:ced65e5a985398827cc9276b93ef6dfabe0273c23de8c7931339d7e141c2818e", + "sha256:d049df610ac811dcffdc147153b414147428567fbbc8be43bb8885f04db39d98", + "sha256:dacd995031a01d16eec825bf30802fceb2c3791ef24bcce48fa98ce40918c27b", + "sha256:ddf33d97d2f52d89f6e6e7ae66ee35a4d9ca6f36eda89c24591b0c40205a3629", + "sha256:ded0fc7d90fe93ae0b18059930086c51e640cdd3baebdc783a695c77f123dcd9", + "sha256:e3e0210287329272539eea617830a6a28161fbbd8a3271bf4150ae3e58c5d0e6", + "sha256:e6fa2e3e683f34aea77de8112f6483803c96a44fd726d7358b9888ae5bb394ec", + "sha256:ea0eb6af8a17fa272f7b98d7bebfab7836a0d62738e16ba380f440fceca2d951", + "sha256:ea7f69de383cb47522c9c208aec6dd17697db7875a4674c4af3f8cfdac0bdeae", + "sha256:eac5174677da084abf378739dbf4ad245661635f1600edd1221f150b165343f4", + "sha256:fc4f7a173a5609631bb0c42c23d12c49df3966f89f496a51d3eb0ec81f4519d6", + "sha256:fdb5b3e311d4d4b0eb8b3e8b4d1b0a512713ad7e6a68791d0923d1aec433d919" + ], + "markers": "python_version >= '3.7'", + "version": "==26.2.0" + }, + "referencing": { + "hashes": [ + "sha256:363d9c65f080d0d70bc41c721dce3c7f3e77fc09f269cd5c8813da18069a6794", + "sha256:ca2e6492769e3602957e9b831b94211599d2aade9477f5d44110d2530cf9aade" + ], + "markers": "python_version >= '3.9'", + "version": "==0.36.1" + }, + "requests": { + "hashes": [ + "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760", + "sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6" + ], + "markers": "python_version >= '3.8'", + "version": "==2.32.3" + }, + "requests-oauthlib": { + "hashes": [ + "sha256:7dd8a5c40426b779b0868c404bdef9768deccf22749cde15852df527e6269b36", + "sha256:b3dffaebd884d8cd778494369603a9e7b58d29111bf6b41bdc2dcd87203af4e9" + ], + "markers": "python_version >= '3.4'", + "version": "==2.0.0" + }, + "rfc3339-validator": { + "hashes": [ + "sha256:138a2abdf93304ad60530167e51d2dfb9549521a836871b88d7f4695d0022f6b", + "sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", + "version": "==0.1.4" + }, + "rfc3986-validator": { + "hashes": [ + "sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9", + "sha256:3d44bde7921b3b9ec3ae4e3adca370438eccebc676456449b145d533b240d055" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", + "version": "==0.1.1" + }, + "rich": { + "hashes": [ + "sha256:439594978a49a09530cff7ebc4b5c7103ef57baf48d5ea3184f21d9a2befa098", + "sha256:6049d5e6ec054bf2779ab3358186963bac2ea89175919d699e378b99738c2a90" + ], + "markers": "python_full_version >= '3.8.0'", + "version": "==13.9.4" + }, + "rpds-py": { + "hashes": [ + "sha256:009de23c9c9ee54bf11303a966edf4d9087cd43a6003672e6aa7def643d06518", + "sha256:02fbb9c288ae08bcb34fb41d516d5eeb0455ac35b5512d03181d755d80810059", + "sha256:0a0461200769ab3b9ab7e513f6013b7a97fdeee41c29b9db343f3c5a8e2b9e61", + "sha256:0b09865a9abc0ddff4e50b5ef65467cd94176bf1e0004184eb915cbc10fc05c5", + "sha256:0b8db6b5b2d4491ad5b6bdc2bc7c017eec108acbf4e6785f42a9eb0ba234f4c9", + "sha256:0c150c7a61ed4a4f4955a96626574e9baf1adf772c2fb61ef6a5027e52803543", + "sha256:0f3cec041684de9a4684b1572fe28c7267410e02450f4561700ca5a3bc6695a2", + "sha256:1352ae4f7c717ae8cba93421a63373e582d19d55d2ee2cbb184344c82d2ae55a", + "sha256:177c7c0fce2855833819c98e43c262007f42ce86651ffbb84f37883308cb0e7d", + "sha256:1978d0021e943aae58b9b0b196fb4895a25cc53d3956b8e35e0b7682eefb6d56", + "sha256:1a60bce91f81ddaac922a40bbb571a12c1070cb20ebd6d49c48e0b101d87300d", + "sha256:1aef18820ef3e4587ebe8b3bc9ba6e55892a6d7b93bac6d29d9f631a3b4befbd", + "sha256:1e9663daaf7a63ceccbbb8e3808fe90415b0757e2abddbfc2e06c857bf8c5e2b", + "sha256:20070c65396f7373f5df4005862fa162db5d25d56150bddd0b3e8214e8ef45b4", + "sha256:214b7a953d73b5e87f0ebece4a32a5bd83c60a3ecc9d4ec8f1dca968a2d91e99", + "sha256:22bebe05a9ffc70ebfa127efbc429bc26ec9e9b4ee4d15a740033efda515cf3d", + "sha256:24e8abb5878e250f2eb0d7859a8e561846f98910326d06c0d51381fed59357bd", + "sha256:26fd7cac7dd51011a245f29a2cc6489c4608b5a8ce8d75661bb4a1066c52dfbe", + "sha256:27b1d3b3915a99208fee9ab092b8184c420f2905b7d7feb4aeb5e4a9c509b8a1", + "sha256:27e98004595899949bd7a7b34e91fa7c44d7a97c40fcaf1d874168bb652ec67e", + "sha256:2b8f60e1b739a74bab7e01fcbe3dddd4657ec685caa04681df9d562ef15b625f", + "sha256:2de29005e11637e7a2361fa151f780ff8eb2543a0da1413bb951e9f14b699ef3", + "sha256:2e8b55d8517a2fda8d95cb45d62a5a8bbf9dd0ad39c5b25c8833efea07b880ca", + "sha256:2fa4331c200c2521512595253f5bb70858b90f750d39b8cbfd67465f8d1b596d", + "sha256:3445e07bf2e8ecfeef6ef67ac83de670358abf2996916039b16a218e3d95e97e", + "sha256:3453e8d41fe5f17d1f8e9c383a7473cd46a63661628ec58e07777c2fff7196dc", + "sha256:378753b4a4de2a7b34063d6f95ae81bfa7b15f2c1a04a9518e8644e81807ebea", + "sha256:3af6e48651c4e0d2d166dc1b033b7042ea3f871504b6805ba5f4fe31581d8d38", + "sha256:3dfcbc95bd7992b16f3f7ba05af8a64ca694331bd24f9157b49dadeeb287493b", + "sha256:3f21f0495edea7fdbaaa87e633a8689cd285f8f4af5c869f27bc8074638ad69c", + "sha256:4041711832360a9b75cfb11b25a6a97c8fb49c07b8bd43d0d02b45d0b499a4ff", + "sha256:44d61b4b7d0c2c9ac019c314e52d7cbda0ae31078aabd0f22e583af3e0d79723", + "sha256:4617e1915a539a0d9a9567795023de41a87106522ff83fbfaf1f6baf8e85437e", + "sha256:4b232061ca880db21fa14defe219840ad9b74b6158adb52ddf0e87bead9e8493", + "sha256:5246b14ca64a8675e0a7161f7af68fe3e910e6b90542b4bfb5439ba752191df6", + "sha256:5725dd9cc02068996d4438d397e255dcb1df776b7ceea3b9cb972bdb11260a83", + "sha256:583f6a1993ca3369e0f80ba99d796d8e6b1a3a2a442dd4e1a79e652116413091", + "sha256:59259dc58e57b10e7e18ce02c311804c10c5a793e6568f8af4dead03264584d1", + "sha256:593eba61ba0c3baae5bc9be2f5232430453fb4432048de28399ca7376de9c627", + "sha256:59f4a79c19232a5774aee369a0c296712ad0e77f24e62cad53160312b1c1eaa1", + "sha256:5f0e260eaf54380380ac3808aa4ebe2d8ca28b9087cf411649f96bad6900c728", + "sha256:62d9cfcf4948683a18a9aff0ab7e1474d407b7bab2ca03116109f8464698ab16", + "sha256:64607d4cbf1b7e3c3c8a14948b99345eda0e161b852e122c6bb71aab6d1d798c", + "sha256:655ca44a831ecb238d124e0402d98f6212ac527a0ba6c55ca26f616604e60a45", + "sha256:666ecce376999bf619756a24ce15bb14c5bfaf04bf00abc7e663ce17c3f34fe7", + "sha256:68049202f67380ff9aa52f12e92b1c30115f32e6895cd7198fa2a7961621fc5a", + "sha256:69803198097467ee7282750acb507fba35ca22cc3b85f16cf45fb01cb9097730", + "sha256:6c7b99ca52c2c1752b544e310101b98a659b720b21db00e65edca34483259967", + "sha256:6dd9412824c4ce1aca56c47b0991e65bebb7ac3f4edccfd3f156150c96a7bf25", + "sha256:70eb60b3ae9245ddea20f8a4190bd79c705a22f8028aaf8bbdebe4716c3fab24", + "sha256:70fb28128acbfd264eda9bf47015537ba3fe86e40d046eb2963d75024be4d055", + "sha256:7b2513ba235829860b13faa931f3b6846548021846ac808455301c23a101689d", + "sha256:7ef9d9da710be50ff6809fed8f1963fecdfecc8b86656cadfca3bc24289414b0", + "sha256:81e69b0a0e2537f26d73b4e43ad7bc8c8efb39621639b4434b76a3de50c6966e", + "sha256:8633e471c6207a039eff6aa116e35f69f3156b3989ea3e2d755f7bc41754a4a7", + "sha256:8bd7c8cfc0b8247c8799080fbff54e0b9619e17cdfeb0478ba7295d43f635d7c", + "sha256:9253fc214112405f0afa7db88739294295f0e08466987f1d70e29930262b4c8f", + "sha256:99b37292234e61325e7a5bb9689e55e48c3f5f603af88b1642666277a81f1fbd", + "sha256:9bd7228827ec7bb817089e2eb301d907c0d9827a9e558f22f762bb690b131652", + "sha256:9beeb01d8c190d7581a4d59522cd3d4b6887040dcfc744af99aa59fef3e041a8", + "sha256:a63cbdd98acef6570c62b92a1e43266f9e8b21e699c363c0fef13bd530799c11", + "sha256:a76e42402542b1fae59798fab64432b2d015ab9d0c8c47ba7addddbaf7952333", + "sha256:ac0a03221cdb5058ce0167ecc92a8c89e8d0decdc9e99a2ec23380793c4dcb96", + "sha256:b0b4136a252cadfa1adb705bb81524eee47d9f6aab4f2ee4fa1e9d3cd4581f64", + "sha256:b25bc607423935079e05619d7de556c91fb6adeae9d5f80868dde3468657994b", + "sha256:b3d504047aba448d70cf6fa22e06cb09f7cbd761939fdd47604f5e007675c24e", + "sha256:bb47271f60660803ad11f4c61b42242b8c1312a31c98c578f79ef9387bbde21c", + "sha256:bbb232860e3d03d544bc03ac57855cd82ddf19c7a07651a7c0fdb95e9efea8b9", + "sha256:bc27863442d388870c1809a87507727b799c8460573cfbb6dc0eeaef5a11b5ec", + "sha256:bc51abd01f08117283c5ebf64844a35144a0843ff7b2983e0648e4d3d9f10dbb", + "sha256:be2eb3f2495ba669d2a985f9b426c1797b7d48d6963899276d22f23e33d47e37", + "sha256:bf9db5488121b596dbfc6718c76092fda77b703c1f7533a226a5a9f65248f8ad", + "sha256:c58e2339def52ef6b71b8f36d13c3688ea23fa093353f3a4fee2556e62086ec9", + "sha256:cfbc454a2880389dbb9b5b398e50d439e2e58669160f27b60e5eca11f68ae17c", + "sha256:cff63a0272fcd259dcc3be1657b07c929c466b067ceb1c20060e8d10af56f5bf", + "sha256:d115bffdd417c6d806ea9069237a4ae02f513b778e3789a359bc5856e0404cc4", + "sha256:d20cfb4e099748ea39e6f7b16c91ab057989712d31761d3300d43134e26e165f", + "sha256:d48424e39c2611ee1b84ad0f44fb3b2b53d473e65de061e3f460fc0be5f1939d", + "sha256:e0fa2d4ec53dc51cf7d3bb22e0aa0143966119f42a0c3e4998293a3dd2856b09", + "sha256:e32fee8ab45d3c2db6da19a5323bc3362237c8b653c70194414b892fd06a080d", + "sha256:e35ba67d65d49080e8e5a1dd40101fccdd9798adb9b050ff670b7d74fa41c566", + "sha256:e3fb866d9932a3d7d0c82da76d816996d1667c44891bd861a0f97ba27e84fc74", + "sha256:e61b02c3f7a1e0b75e20c3978f7135fd13cb6cf551bf4a6d29b999a88830a338", + "sha256:e67ba3c290821343c192f7eae1d8fd5999ca2dc99994114643e2f2d3e6138b15", + "sha256:e79dd39f1e8c3504be0607e5fc6e86bb60fe3584bec8b782578c3b0fde8d932c", + "sha256:e89391e6d60251560f0a8f4bd32137b077a80d9b7dbe6d5cab1cd80d2746f648", + "sha256:ea7433ce7e4bfc3a85654aeb6747babe3f66eaf9a1d0c1e7a4435bbdf27fea84", + "sha256:eaf16ae9ae519a0e237a0f528fd9f0197b9bb70f40263ee57ae53c2b8d48aeb3", + "sha256:eb0c341fa71df5a4595f9501df4ac5abfb5a09580081dffbd1ddd4654e6e9123", + "sha256:f276b245347e6e36526cbd4a266a417796fc531ddf391e43574cf6466c492520", + "sha256:f47ad3d5f3258bd7058d2d506852217865afefe6153a36eb4b6928758041d831", + "sha256:f56a6b404f74ab372da986d240e2e002769a7d7102cc73eb238a4f72eec5284e", + "sha256:f5cf2a0c2bdadf3791b5c205d55a37a54025c6e18a71c71f82bb536cf9a454bf", + "sha256:f5d36399a1b96e1a5fdc91e0522544580dbebeb1f77f27b2b0ab25559e103b8b", + "sha256:f60bd8423be1d9d833f230fdbccf8f57af322d96bcad6599e5a771b151398eb2", + "sha256:f612463ac081803f243ff13cccc648578e2279295048f2a8d5eb430af2bae6e3", + "sha256:f73d3fef726b3243a811121de45193c0ca75f6407fe66f3f4e183c983573e130", + "sha256:f82a116a1d03628a8ace4859556fb39fd1424c933341a08ea3ed6de1edb0283b", + "sha256:fb0ba113b4983beac1a2eb16faffd76cb41e176bf58c4afe3e14b9c681f702de", + "sha256:fb4f868f712b2dd4bcc538b0a0c1f63a2b1d584c925e69a224d759e7070a12d5", + "sha256:fb6116dfb8d1925cbdb52595560584db42a7f664617a1f7d7f6e32f138cdf37d", + "sha256:fda7cb070f442bf80b642cd56483b5548e43d366fe3f39b98e67cce780cded00", + "sha256:feea821ee2a9273771bae61194004ee2fc33f8ec7db08117ef9147d4bbcbca8e" + ], + "markers": "python_version >= '3.9'", + "version": "==0.22.3" + }, + "rsa": { + "hashes": [ + "sha256:90260d9058e514786967344d0ef75fa8727eed8a7d2e43ce9f4bcf1b536174f7", + "sha256:e38464a49c6c85d7f1351b0126661487a7e0a14a50f1675ec50eb34d4f20ef21" + ], + "markers": "python_version >= '3.6' and python_version < '4'", + "version": "==4.9" + }, + "ruamel.yaml": { + "hashes": [ + "sha256:20c86ab29ac2153f80a428e1254a8adf686d3383df04490514ca3b79a362db58", + "sha256:30f22513ab2301b3d2b577adc121c6471f28734d3d9728581245f1e76468b4f1" + ], + "markers": "python_version >= '3.7'", + "version": "==0.18.10" + }, + "ruamel.yaml.clib": { + "hashes": [ + "sha256:040ae85536960525ea62868b642bdb0c2cc6021c9f9d507810c0c604e66f5a7b", + "sha256:0467c5965282c62203273b838ae77c0d29d7638c8a4e3a1c8bdd3602c10904e4", + "sha256:0b7e75b4965e1d4690e93021adfcecccbca7d61c7bddd8e22406ef2ff20d74ef", + "sha256:11f891336688faf5156a36293a9c362bdc7c88f03a8a027c2c1d8e0bcde998e5", + "sha256:1492a6051dab8d912fc2adeef0e8c72216b24d57bd896ea607cb90bb0c4981d3", + "sha256:20b0f8dc160ba83b6dcc0e256846e1a02d044e13f7ea74a3d1d56ede4e48c632", + "sha256:22353049ba4181685023b25b5b51a574bce33e7f51c759371a7422dcae5402a6", + "sha256:2c59aa6170b990d8d2719323e628aaf36f3bfbc1c26279c0eeeb24d05d2d11c7", + "sha256:32621c177bbf782ca5a18ba4d7af0f1082a3f6e517ac2a18b3974d4edf349680", + "sha256:3bc2a80e6420ca8b7d3590791e2dfc709c88ab9152c00eeb511c9875ce5778bf", + "sha256:3eac5a91891ceb88138c113f9db04f3cebdae277f5d44eaa3651a4f573e6a5da", + "sha256:4a6679521a58256a90b0d89e03992c15144c5f3858f40d7c18886023d7943db6", + "sha256:4c8c5d82f50bb53986a5e02d1b3092b03622c02c2eb78e29bec33fd9593bae1a", + "sha256:4f6f3eac23941b32afccc23081e1f50612bdbe4e982012ef4f5797986828cd01", + "sha256:5a0e060aace4c24dcaf71023bbd7d42674e3b230f7e7b97317baf1e953e5b519", + "sha256:6442cb36270b3afb1b4951f060eccca1ce49f3d087ca1ca4563a6eb479cb3de6", + "sha256:6c8fbb13ec503f99a91901ab46e0b07ae7941cd527393187039aec586fdfd36f", + "sha256:749c16fcc4a2b09f28843cda5a193e0283e47454b63ec4b81eaa2242f50e4ccd", + "sha256:7dd5adc8b930b12c8fc5b99e2d535a09889941aa0d0bd06f4749e9a9397c71d2", + "sha256:811ea1594b8a0fb466172c384267a4e5e367298af6b228931f273b111f17ef52", + "sha256:932205970b9f9991b34f55136be327501903f7c66830e9760a8ffb15b07f05cd", + "sha256:943f32bc9dedb3abff9879edc134901df92cfce2c3d5c9348f172f62eb2d771d", + "sha256:95c3829bb364fdb8e0332c9931ecf57d9be3519241323c5274bd82f709cebc0c", + "sha256:96777d473c05ee3e5e3c3e999f5d23c6f4ec5b0c38c098b3a5229085f74236c6", + "sha256:a274fb2cb086c7a3dea4322ec27f4cb5cc4b6298adb583ab0e211a4682f241eb", + "sha256:a52d48f4e7bf9005e8f0a89209bf9a73f7190ddf0489eee5eb51377385f59f2a", + "sha256:a606ef75a60ecf3d924613892cc603b154178ee25abb3055db5062da811fd969", + "sha256:ab007f2f5a87bd08ab1499bdf96f3d5c6ad4dcfa364884cb4549aa0154b13a28", + "sha256:b82a7c94a498853aa0b272fd5bc67f29008da798d4f93a2f9f289feb8426a58d", + "sha256:bb43a269eb827806502c7c8efb7ae7e9e9d0573257a46e8e952f4d4caba4f31e", + "sha256:bc5f1e1c28e966d61d2519f2a3d451ba989f9ea0f2307de7bc45baa526de9e45", + "sha256:bd0a08f0bab19093c54e18a14a10b4322e1eacc5217056f3c063bd2f59853ce4", + "sha256:beffaed67936fbbeffd10966a4eb53c402fafd3d6833770516bf7314bc6ffa12", + "sha256:bf165fef1f223beae7333275156ab2022cffe255dcc51c27f066b4370da81e31", + "sha256:cf12567a7b565cbf65d438dec6cfbe2917d3c1bdddfce84a9930b7d35ea59642", + "sha256:d84318609196d6bd6da0edfa25cedfbabd8dbde5140a0a23af29ad4b8f91fb1e", + "sha256:d85252669dc32f98ebcd5d36768f5d4faeaeaa2d655ac0473be490ecdae3c285", + "sha256:e143ada795c341b56de9418c58d028989093ee611aa27ffb9b7f609c00d813ed", + "sha256:e188d2699864c11c36cdfdada94d781fd5d6b0071cd9c427bceb08ad3d7c70e1", + "sha256:e2f1c3765db32be59d18ab3953f43ab62a761327aafc1594a2a1fbe038b8b8a7", + "sha256:e5b8daf27af0b90da7bb903a876477a9e6d7270be6146906b276605997c7e9a3", + "sha256:e7e3736715fbf53e9be2a79eb4db68e4ed857017344d697e8b9749444ae57475", + "sha256:e8c4ebfcfd57177b572e2040777b8abc537cdef58a2120e830124946aa9b42c5", + "sha256:f66efbc1caa63c088dead1c4170d148eabc9b80d95fb75b6c92ac0aad2437d76", + "sha256:fc4b630cd3fa2cf7fce38afa91d7cfe844a9f75d7f0f36393fa98815e911d987", + "sha256:fd5415dded15c3822597455bc02bcd66e81ef8b7a48cb71a33628fc9fdde39df" + ], + "markers": "python_version >= '3.9'", + "version": "==0.2.12" + }, + "s3transfer": { + "hashes": [ + "sha256:244a76a24355363a68164241438de1b72f8781664920260c48465896b712a41e", + "sha256:29edc09801743c21eb5ecbc617a152df41d3c287f67b615f73e5f750583666a7" + ], + "markers": "python_version >= '3.8'", + "version": "==0.10.4" + }, + "scikit-learn": { + "hashes": [ + "sha256:0402638c9a7c219ee52c94cbebc8fcb5eb9fe9c773717965c1f4185588ad3107", + "sha256:0ee107923a623b9f517754ea2f69ea3b62fc898a3641766cb7deb2f2ce450161", + "sha256:1215e5e58e9880b554b01187b8c9390bf4dc4692eedeaf542d3273f4785e342c", + "sha256:15e1e94cc23d04d39da797ee34236ce2375ddea158b10bee3c343647d615581d", + "sha256:18424efee518a1cde7b0b53a422cde2f6625197de6af36da0b57ec502f126157", + "sha256:1d08ada33e955c54355d909b9c06a4789a729977f165b8bae6f225ff0a60ec4a", + "sha256:3271552a5eb16f208a6f7f617b8cc6d1f137b52c8a1ef8edf547db0259b2c9fb", + "sha256:35a22e8015048c628ad099da9df5ab3004cdbf81edc75b396fd0cff8699ac58c", + "sha256:535805c2a01ccb40ca4ab7d081d771aea67e535153e35a1fd99418fcedd1648a", + "sha256:5b2de18d86f630d68fe1f87af690d451388bb186480afc719e5f770590c2ef6c", + "sha256:61a6efd384258789aa89415a410dcdb39a50e19d3d8410bd29be365bcdd512d5", + "sha256:64381066f8aa63c2710e6b56edc9f0894cc7bf59bd71b8ce5613a4559b6145e0", + "sha256:67f37d708f042a9b8d59551cf94d30431e01374e00dc2645fa186059c6c5d78b", + "sha256:6c43290337f7a4b969d207e620658372ba3c1ffb611f8bc2b6f031dc5c6d1d03", + "sha256:6fb6bc98f234fda43163ddbe36df8bcde1d13ee176c6dc9b92bb7d3fc842eb66", + "sha256:763f0ae4b79b0ff9cca0bf3716bcc9915bdacff3cebea15ec79652d1cc4fa5c9", + "sha256:785a2213086b7b1abf037aeadbbd6d67159feb3e30263434139c98425e3dcfcf", + "sha256:8db94cd8a2e038b37a80a04df8783e09caac77cbe052146432e67800e430c028", + "sha256:a19f90f95ba93c1a7f7924906d0576a84da7f3b2282ac3bfb7a08a32801add93", + "sha256:a2f54c76accc15a34bfb9066e6c7a56c1e7235dda5762b990792330b52ccfb05", + "sha256:b8692e395a03a60cd927125eef3a8e3424d86dde9b2370d544f0ea35f78a8073", + "sha256:cb06f8dce3f5ddc5dee1715a9b9f19f20d295bed8e3cd4fa51e1d050347de525", + "sha256:dc9002fc200bed597d5d34e90c752b74df516d592db162f756cc52836b38fe0e", + "sha256:e326c0eb5cf4d6ba40f93776a20e9a7a69524c4db0757e7ce24ba222471ee8a1", + "sha256:ed932ea780517b00dae7431e031faae6b49b20eb6950918eb83bd043237950e0", + "sha256:fc4144a5004a676d5022b798d9e573b05139e77f271253a4703eed295bde0433" + ], + "index": "pypi", + "markers": "python_version >= '3.8'", + "version": "==1.3.2" + }, + "scipy": { + "hashes": [ + "sha256:033a75ddad1463970c96a88063a1df87ccfddd526437136b6ee81ff0312ebdf6", + "sha256:0458839c9f873062db69a03de9a9765ae2e694352c76a16be44f93ea45c28d2b", + "sha256:070d10654f0cb6abd295bc96c12656f948e623ec5f9a4eab0ddb1466c000716e", + "sha256:09c52320c42d7f5c7748b69e9f0389266fd4f82cf34c38485c14ee976cb8cb04", + "sha256:0ac102ce99934b162914b1e4a6b94ca7da0f4058b6d6fd65b0cef330c0f3346f", + "sha256:0fb57b30f0017d4afa5fe5f5b150b8f807618819287c21cbe51130de7ccdaed2", + "sha256:100193bb72fbff37dbd0bf14322314fc7cbe08b7ff3137f11a34d06dc0ee6b85", + "sha256:14eaa373c89eaf553be73c3affb11ec6c37493b7eaaf31cf9ac5dffae700c2e0", + "sha256:2114a08daec64980e4b4cbdf5bee90935af66d750146b1d2feb0d3ac30613692", + "sha256:21e10b1dd56ce92fba3e786007322542361984f8463c6d37f6f25935a5a6ef52", + "sha256:2722a021a7929d21168830790202a75dbb20b468a8133c74a2c0230c72626b6c", + "sha256:395be70220d1189756068b3173853029a013d8c8dd5fd3d1361d505b2aa58fa7", + "sha256:3fe1d95944f9cf6ba77aa28b82dd6bb2a5b52f2026beb39ecf05304b8392864b", + "sha256:491d57fe89927fa1aafbe260f4cfa5ffa20ab9f1435025045a5315006a91b8f5", + "sha256:4b17d4220df99bacb63065c76b0d1126d82bbf00167d1730019d2a30d6ae01ea", + "sha256:4c9d8fc81d6a3b6844235e6fd175ee1d4c060163905a2becce8e74cb0d7554ce", + "sha256:55cc79ce4085c702ac31e49b1e69b27ef41111f22beafb9b49fea67142b696c4", + "sha256:5b190b935e7db569960b48840e5bef71dc513314cc4e79a1b7d14664f57fd4ff", + "sha256:5bd8d27d44e2c13d0c1124e6a556454f52cd3f704742985f6b09e75e163d20d2", + "sha256:5dff14e75cdbcf07cdaa1c7707db6017d130f0af9ac41f6ce443a93318d6c6e0", + "sha256:5eb0ca35d4b08e95da99a9f9c400dc9f6c21c424298a0ba876fdc69c7afacedf", + "sha256:63b9b6cd0333d0eb1a49de6f834e8aeaefe438df8f6372352084535ad095219e", + "sha256:667f950bf8b7c3a23b4199db24cb9bf7512e27e86d0e3813f015b74ec2c6e3df", + "sha256:6b3e71893c6687fc5e29208d518900c24ea372a862854c9888368c0b267387ab", + "sha256:71ba9a76c2390eca6e359be81a3e879614af3a71dfdabb96d1d7ab33da6f2364", + "sha256:74bb864ff7640dea310a1377d8567dc2cb7599c26a79ca852fc184cc851954ac", + "sha256:82add84e8a9fb12af5c2c1a3a3f1cb51849d27a580cb9e6bd66226195142be6e", + "sha256:837299eec3d19b7e042923448d17d95a86e43941104d33f00da7e31a0f715d3c", + "sha256:900f3fa3db87257510f011c292a5779eb627043dd89731b9c461cd16ef76ab3d", + "sha256:9f151e9fb60fbf8e52426132f473221a49362091ce7a5e72f8aa41f8e0da4f25", + "sha256:af0b61c1de46d0565b4b39c6417373304c1d4f5220004058bdad3061c9fa8a95", + "sha256:bc7136626261ac1ed988dca56cfc4ab5180f75e0ee52e58f1e6aa74b5f3eacd5", + "sha256:be3deeb32844c27599347faa077b359584ba96664c5c79d71a354b80a0ad0ce0", + "sha256:c09aa9d90f3500ea4c9b393ee96f96b0ccb27f2f350d09a47f533293c78ea776", + "sha256:c352c1b6d7cac452534517e022f8f7b8d139cd9f27e6fbd9f3cbd0bfd39f5bef", + "sha256:c64ded12dcab08afff9e805a67ff4480f5e69993310e093434b10e85dc9d43e1", + "sha256:cdde8414154054763b42b74fe8ce89d7f3d17a7ac5dd77204f0e142cdc9239e9", + "sha256:ce3a000cd28b4430426db2ca44d96636f701ed12e2b3ca1f2b1dd7abdd84b39a", + "sha256:f735bc41bd1c792c96bc426dece66c8723283695f02df61dcc4d0a707a42fc54", + "sha256:f82fcf4e5b377f819542fbc8541f7b5fbcf1c0017d0df0bc22c781bf60abc4d8" + ], + "markers": "python_version >= '3.10'", + "version": "==1.15.1" + }, + "scmrepo": { + "hashes": [ + "sha256:3936d439e75a0f62d0a9dfc727fd37e307b63354560f173eb1a28580f43b5a55", + "sha256:abda58245beced058f2ebbfff6e59b669fb91ab16f419d96a1587f72ed8e30d7" + ], + "markers": "python_version >= '3.9'", + "version": "==2.1.1" + }, + "seaborn": { + "hashes": [ + "sha256:6baa69b6d1169ae59037971491c450c0b73332b42bd4b23570b62a546bc61cb8", + "sha256:bfad65e9c5989e5e1897e61bdbd2f22e62455940ca76fd49eca3ed69345b9179" + ], + "index": "pypi", + "markers": "python_version >= '3.8'", + "version": "==0.13.1" + }, + "semver": { + "hashes": [ + "sha256:6253adb39c70f6e51afed2fa7152bcd414c411286088fb4b9effb133885ab4cc", + "sha256:b1ea4686fe70b981f85359eda33199d60c53964284e0cfb4977d243e37cf4bf4" + ], + "markers": "python_version >= '3.7'", + "version": "==3.0.2" + }, + "send2trash": { + "hashes": [ + "sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9", + "sha256:b18e7a3966d99871aefeb00cfbcfdced55ce4871194810fc71f4aa484b953abf" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'", + "version": "==1.8.3" + }, + "setuptools": { + "hashes": [ + "sha256:c5afc8f407c626b8313a86e10311dd3f661c6cd9c09d4bf8c15c0e11f9f2b0e6", + "sha256:e3982f444617239225d675215d51f6ba05f845d4eec313da4418fdbb56fb27e3" + ], + "markers": "python_version >= '3.9'", + "version": "==75.8.0" + }, + "shellingham": { + "hashes": [ + "sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686", + "sha256:8dbca0739d487e5bd35ab3ca4b36e11c4078f3a234bfce294b0a0291363404de" + ], + "markers": "python_version >= '3.7'", + "version": "==1.5.4" + }, + "shortuuid": { + "hashes": [ + "sha256:3bb9cf07f606260584b1df46399c0b87dd84773e7b25912b7e391e30797c5e72", + "sha256:a482a497300b49b4953e15108a7913244e1bb0d41f9d332f5e9925dba33a3c5a" + ], + "markers": "python_version >= '3.6'", + "version": "==1.0.13" + }, + "shtab": { + "hashes": [ + "sha256:32d3d2ff9022d4c77a62492b6ec875527883891e33c6b479ba4d41a51e259983", + "sha256:4e4bcb02eeb82ec45920a5d0add92eac9c9b63b2804c9196c1f1fdc2d039243c" + ], + "markers": "python_version >= '3.7'", + "version": "==1.7.1" + }, + "six": { + "hashes": [ + "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274", + "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2'", + "version": "==1.17.0" + }, + "smmap": { + "hashes": [ + "sha256:26ea65a03958fa0c8a1c7e8c7a58fdc77221b8910f6be2131affade476898ad5", + "sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + ], + "markers": "python_version >= '3.7'", + "version": "==5.0.2" + }, + "sniffio": { + "hashes": [ + "sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2", + "sha256:f4324edc670a0f49750a81b895f35c3adb843cca46f0530f79fc1babb23789dc" + ], + "markers": "python_version >= '3.7'", + "version": "==1.3.1" + }, + "snowballstemmer": { + "hashes": [ + "sha256:09b16deb8547d3412ad7b590689584cd0fe25ec8db3be37788be3810cbf19cb1", + "sha256:c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a" + ], + "version": "==2.2.0" + }, + "soupsieve": { + "hashes": [ + "sha256:e2e68417777af359ec65daac1057404a3c8a5455bb8abc36f1a9866ab1a51abb", + "sha256:e72c4ff06e4fb6e4b5a9f0f55fe6e81514581fca1515028625d0f299c602ccc9" + ], + "markers": "python_version >= '3.8'", + "version": "==2.6" + }, + "sphinx": { + "hashes": [ + "sha256:b18e978ea7565720f26019c702cd85c84376e948370f1cd43d60265010e1c7b0", + "sha256:d3e57663eed1d7c5c50895d191fdeda0b54ded6f44d5621b50709466c338d1e8" + ], + "markers": "python_version >= '3.6'", + "version": "==5.0.2" + }, + "sphinx-book-theme": { + "hashes": [ + "sha256:927b399a6906be067e49c11ef1a87472f1b1964075c9eea30fb82c64b20aedee", + "sha256:d15f8248b3718a9a6be0ba617a32d1591f9fa39c614469bface777ba06a73b75" + ], + "markers": "python_version >= '3.7'", + "version": "==1.0.1" + }, + "sphinx-comments": { + "hashes": [ + "sha256:00170afff27019fad08e421da1ae49c681831fb2759786f07c826e89ac94cf21", + "sha256:1e879b4e9bfa641467f83e3441ac4629225fc57c29995177d043252530c21d00" + ], + "version": "==0.0.3" + }, + "sphinx-copybutton": { + "hashes": [ + "sha256:4cf17c82fb9646d1bc9ca92ac280813a3b605d8c421225fd9913154103ee1fbd", + "sha256:fb543fd386d917746c9a2c50360c7905b605726b9355cd26e9974857afeae06e" + ], + "markers": "python_version >= '3.7'", + "version": "==0.5.2" + }, + "sphinx-design": { + "hashes": [ + "sha256:7183fa1fae55b37ef01bda5125a21ee841f5bbcbf59a35382be598180c4cefba", + "sha256:823c1dd74f31efb3285ec2f1254caefed29d762a40cd676f58413a1e4ed5cc96" + ], + "markers": "python_version >= '3.7'", + "version": "==0.3.0" + }, + "sphinx-external-toc": { + "hashes": [ + "sha256:9c8ea9980ea0e57bf3ce98f6a400f9b69eb1df808f7dd796c9c8cc1873d8b355", + "sha256:cd93c1e7599327b2a728db12d9819068ce719c4b037ffc62e47f20ffb6310fb3" + ], + "markers": "python_version ~= '3.7'", + "version": "==0.3.1" + }, + "sphinx-jupyterbook-latex": { + "hashes": [ + "sha256:24de689689ddc27c736b15b91c6b9afdcdc31570938572693bb05bfff8f50758", + "sha256:da1d3ad028f55ddbf10b9130bb9f24fc60cafb671cbd39dfd95537aafc90972e" + ], + "markers": "python_version >= '3.6'", + "version": "==0.5.2" + }, + "sphinx-multitoc-numbering": { + "hashes": [ + "sha256:33d2e707a9b2b8ad636b3d4302e658a008025106fe0474046c651144c26d8514", + "sha256:c9607671ac511236fa5d61a7491c1031e700e8d498c9d2418e6c61d1251209ae" + ], + "version": "==0.1.3" + }, + "sphinx-thebe": { + "hashes": [ + "sha256:e8af555c90acba3541fa7108ea5981ae9c4bd406b54d9a242ab054d326ab7441", + "sha256:f4c8c1542054f991b73fcb28c4cf21697e42aba2f83f22348c1c851b82766583" + ], + "version": "==0.2.1" + }, + "sphinx-togglebutton": { + "hashes": [ + "sha256:9647ba7874b7d1e2d43413d8497153a85edc6ac95a3fea9a75ef9c1e08aaae2b", + "sha256:ab0c8b366427b01e4c89802d5d078472c427fa6e9d12d521c34fa0442559dc7a" + ], + "version": "==0.3.2" + }, + "sphinxcontrib-applehelp": { + "hashes": [ + "sha256:2f29ef331735ce958efa4734873f084941970894c6090408b079c61b2e1c06d1", + "sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + ], + "markers": "python_version >= '3.9'", + "version": "==2.0.0" + }, + "sphinxcontrib-bibtex": { + "hashes": [ + "sha256:71b42e5db0e2e284f243875326bf9936aa9a763282277d75048826fef5b00eaa", + "sha256:748f726eaca6efff7731012103417ef130ecdcc09501b4d0c54283bf5f059f76" + ], + "markers": "python_version >= '3.6'", + "version": "==2.5.0" + }, + "sphinxcontrib-devhelp": { + "hashes": [ + "sha256:411f5d96d445d1d73bb5d52133377b4248ec79db5c793ce7dbe59e074b4dd1ad", + "sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + ], + "markers": "python_version >= '3.9'", + "version": "==2.0.0" + }, + "sphinxcontrib-htmlhelp": { + "hashes": [ + "sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8", + "sha256:c9e2916ace8aad64cc13a0d233ee22317f2b9025b9cf3295249fa985cc7082e9" + ], + "markers": "python_version >= '3.9'", + "version": "==2.1.0" + }, + "sphinxcontrib-jsmath": { + "hashes": [ + "sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178", + "sha256:a9925e4a4587247ed2191a22df5f6970656cb8ca2bd6284309578f2153e0c4b8" + ], + "markers": "python_version >= '3.5'", + "version": "==1.0.1" + }, + "sphinxcontrib-qthelp": { + "hashes": [ + "sha256:4fe7d0ac8fc171045be623aba3e2a8f613f8682731f9153bb2e40ece16b9bbab", + "sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + ], + "markers": "python_version >= '3.9'", + "version": "==2.0.0" + }, + "sphinxcontrib-serializinghtml": { + "hashes": [ + "sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331", + "sha256:e9d912827f872c029017a53f0ef2180b327c3f7fd23c87229f7a8e8b70031d4d" + ], + "markers": "python_version >= '3.9'", + "version": "==2.0.0" + }, + "sqlalchemy": { + "hashes": [ + "sha256:00d76fe5d7cdb5d84d625ce002ce29fefba0bfd98e212ae66793fed30af73931", + "sha256:07cc423892f2ceda9ae1daa28c0355757f362ecc7505b1ab1a3d5d8dc1c44ac6", + "sha256:0bb7cedcddffca98c40bb0becd3423e293d1fef442b869da40843d751785beb3", + "sha256:1ca7903d5e7db791a355b579c690684fac6304478b68efdc7f2ebdcfe770d8d7", + "sha256:1d9b3fd5eca3c0b137a5e0e468e24ca544ed8ca4783e0e55341b7ed2807518ee", + "sha256:2587e108463cc2e5b45a896b2e7cc8659a517038026922a758bde009271aed11", + "sha256:29e51f848f843bbd75d74ae64ab1ab06302cb1dccd4549d1f5afe6b4a946edb2", + "sha256:2a479aa1ab199178ff1956b09ca8a0693e70f9c762875d69292d37049ffd0d8f", + "sha256:37e89d965b52e8b20571b5d44f26e2124b26ab63758bf1b7598a0e38fb2c4005", + "sha256:38732884eabc64982a09a846bacf085596ff2371e4e41d20c0734f7e50525d01", + "sha256:396f05c552f7fa30a129497c41bef5b4d1423f9af8fe4df0c3dcd38f3e3b9a14", + "sha256:4a1d4856861ba9e73bac05030cec5852eabfa9ef4af8e56c19d92de80d46fc34", + "sha256:56a0e90a959e18ac5f18c80d0cad9e90cb09322764f536e8a637426afb1cae2f", + "sha256:57ef6f2cb8b09a042d0dbeaa46a30f2df5dd1e1eb889ba258b0d5d7d6011b81c", + "sha256:5f801d85ba4753d4ed97181d003e5d3fa330ac7c4587d131f61d7f968f416862", + "sha256:6db686a1d9f183c639f7e06a2656af25d4ed438eda581de135d15569f16ace33", + "sha256:6db97656fd3fe3f7e5b077f12fa6adb5feb6e0b567a3e99f47ecf5f7ea0a09e3", + "sha256:6f5e75de91c754365c098ac08c13fdb267577ce954fa239dd49228b573ca88d7", + "sha256:7a6209e689d0ff206c40032b6418e3cfcfc5af044b3f66e381d7f1ae301544b4", + "sha256:7ae5d44517fe81079ce75cf10f96978284a6db2642c5932a69c82dbae09f009a", + "sha256:83fa6df0e035689df89ff77a46bf8738696785d3156c2c61494acdcddc75c69d", + "sha256:8f358f5cfce04417b6ff738748ca4806fe3d3ae8040fb4e6a0c9a6973ccf9b6e", + "sha256:9036ebfd934813990c5b9f71f297e77ed4963720db7d7ceec5a3fdb7cd2ef6ce", + "sha256:95bae3d38f8808d79072da25d5e5a6095f36fe1f9d6c614dd72c59ca8397c7c0", + "sha256:9aaaaa846b10dfbe1bda71079d0e31a7e2cebedda9409fa7dba3dfed1ae803e8", + "sha256:9b8d0e8578e7f853f45f4512b5c920f6a546cd4bed44137460b2a56534644205", + "sha256:9bafaa05b19dc07fa191c1966c5e852af516840b0d7b46b7c3303faf1a349bc9", + "sha256:9f29c7f0f4b42337ec5a779e166946a9f86d7d56d827e771b69ecbdf426124ac", + "sha256:9f992e0f916201731993eab8502912878f02287d9f765ef843677ff118d0e0b1", + "sha256:a04191a7c8d77e63f6fc1e8336d6c6e93176c0c010833e74410e647f0284f5a1", + "sha256:a0f611b431b84f55779cbb7157257d87b4a2876b067c77c4f36b15e44ced65e2", + "sha256:a3c2753bf4f48b7a6024e5e8a394af49b1b12c817d75d06942cae03d14ff87b3", + "sha256:a5cd7d30e47f87b21362beeb3e86f1b5886e7d9b0294b230dde3d3f4a1591375", + "sha256:acc58b7c2e40235712d857fdfc8f2bda9608f4a850d8d9ac0dd1fc80939ca6ac", + "sha256:adbd67dac4ebf54587198b63cd30c29fd7eafa8c0cab58893d9419414f8efe4b", + "sha256:b35c35e3923ade1e7ac44e150dec29f5863513246c8bf85e2d7d313e3832bcfb", + "sha256:c6910eb4ea90c0889f363965cd3c8c45a620ad27b526a7899f0054f6c1b9219e", + "sha256:cc889fda484d54d0b31feec409406267616536d048a450fc46943e152700bb79", + "sha256:ccfd336f96d4c9bbab0309f2a565bf15c468c2d8b2d277a32f89c5940f71fcf9", + "sha256:d8e7e8a150e7b548e7ecd6ebb9211c37265991bf2504297d9454e01b58530fc6", + "sha256:db09e424d7bb89b6215a184ca93b4f29d7f00ea261b787918a1af74143b98c06", + "sha256:e17e7e27af178d31b436dda6a596703b02a89ba74a15e2980c35ecd9909eea3a", + "sha256:e69290b921b7833c04206f233d6814c60bee1d135b09f5ae5d39229de9b46cd4", + "sha256:e8398593ccc4440ce6dffcc4f47d9b2d72b9fe7112ac12ea4a44e7d4de364db1", + "sha256:e9d036e343a604db3f5a6c33354018a84a1d3f6dcae3673358b404286204798c", + "sha256:ea490564435b5b204d8154f0e18387b499ea3cedc1e6af3b3a2ab18291d85aa7", + "sha256:f073321a79c81e1a009218a21089f61d87ee5fa3c9563f6be94f8b41ff181812", + "sha256:f0cc0b486a56dff72dddae6b6bfa7ff201b0eeac29d4bc6f0e9725dc3c360d71", + "sha256:fcf84fe93397a0f67733aa2a38ed4eab9fc6348189fc950e656e1ea198f45668" + ], + "markers": "python_version >= '3.7'", + "version": "==2.0.24" + }, + "sqltrie": { + "hashes": [ + "sha256:21489d6f4a6ef3f5144846f7dc98d9a8792fecc622513560277a28b8af2d7e67", + "sha256:56963921dec494881b048e968d5556a90ed273b5dba1ea0aaac462f3b9815d21" + ], + "markers": "python_version >= '3.8'", + "version": "==0.11.1" + }, + "stack-data": { + "hashes": [ + "sha256:836a778de4fec4dcd1dcd89ed8abff8a221f58308462e1c4aa2a3cf30148f0b9", + "sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + ], + "version": "==0.6.3" + }, + "tabulate": { + "hashes": [ + "sha256:0095b12bf5966de529c0feb1fa08671671b3368eec77d7ef7ab114be2c068b3c", + "sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + ], + "markers": "python_version >= '3.7'", + "version": "==0.9.0" + }, + "tensorboard": { + "hashes": [ + "sha256:ab69961ebddbddc83f5fa2ff9233572bdad5b883778c35e4fe94bf1798bd8481" + ], + "markers": "python_version >= '3.8'", + "version": "==2.13.0" + }, + "tensorboard-data-server": { + "hashes": [ + "sha256:7e0610d205889588983836ec05dc098e80f97b7e7bbff7e994ebb78f578d0ddb", + "sha256:9fe5d24221b29625dbc7328b0436ca7fc1c23de4acf4d272f1180856e32f9f60", + "sha256:ef687163c24185ae9754ed5650eb5bc4d84ff257aabdc33f0cc6f74d8ba54530" + ], + "markers": "python_version >= '3.7'", + "version": "==0.7.2" + }, + "tensorflow": { + "hashes": [ + "sha256:04538df649aa0be5050695cdb0c8f2c26e6122ca04c7c1e4471b23c0d6c490cf", + "sha256:17b9a82d69abc487ebad503d61acd11fb24f3b0105be669b5319e55f90f0ca21", + "sha256:2ab5efb2d0e888a1f65539f495744aaab542ae5e36ed33e50e98cf8b9f088c2c", + "sha256:2cd54d7cf979de0e407db182eea27dbed37361af5c329c2dbf71c486be3e432b", + "sha256:3bf992bf62cf628f5ff57694312037885ba8cc7b8b0d51b3d772e350a717d2d0", + "sha256:3dd6555e9248bace921a311ff05d88239a6b7e96bcd024c5df4c2eaeb1678ac3", + "sha256:46024ba77aaf5c0b578aadf0c75320e539e135ddfe731a1ee241b039c332e565", + "sha256:56f35d88c419d59ed5e2823f1c69d794c8f28b77f3aed5300e454e7513a6228e", + "sha256:69add96604b9a4e8e8e00505953478027964445d8eb8d7541538ef38159b7f27", + "sha256:884dbafa213f8bea7869977f88bfb404051b65aa17dc7927ff4bfe47e3fc839b", + "sha256:89959a3a31f17c3a0099d7e3c48b20a02eb01f3c1dbf96c6cc5fbf84a623e176", + "sha256:a3e1e42dd286adf0fd91cf68a405a30a21a2c8c09b9515b91faa5704a09ff803", + "sha256:aaf37fa1b434568b8c853ffdeeff9e477237495d2f2bbdb0eac61a6bcac779e8", + "sha256:c23ebcaa2131062a9bf6fe2634aef8c95f9c043b2dc814bc2f8765ba7a4e3612", + "sha256:c2f109daa5d0cbabb3df5fdebcde0ca895d891e18d03e08cb6742c96a6be7012", + "sha256:dbd7c5c427dacdea1ce2dce29b9a7b3c7409d314fa6f413b7fe58ed5635af754", + "sha256:deb204fc8c98ceff81f0f776ffb5172e1a6892143c7bfee90a865e9d5e4bbee2", + "sha256:e42cdf625125c9ef99d29310774617990915cd046125ef5e9624799659a7d3e8", + "sha256:f2935ea4bdf37c1840f4d6ed1ddbb4990dc5ae68e1bc8bba4587bac413195c2f", + "sha256:fbb68c8ea407f515393ef50bd8ccbbc01914cc76f39e2ca18c238a3189230f71" + ], + "index": "pypi", + "markers": "python_version >= '3.8'", + "version": "==2.13.1" + }, + "tensorflow-datasets": { + "hashes": [ + "sha256:09c6f59cf89b247328ce7b0c623ac37c0d10b7c23d53dfa39a58ecd0e88823e1", + "sha256:aa23fdde1c661f2342fd11d9b373599055899a27b79b1d839adc77fc7daaa15a" + ], + "index": "pypi", + "markers": "python_version >= '3.8'", + "version": "==4.9.2" + }, + "tensorflow-estimator": { + "hashes": [ + "sha256:6f868284eaa654ae3aa7cacdbef2175d0909df9fcf11374f5166f8bf475952aa" + ], + "markers": "python_version >= '3.7'", + "version": "==2.13.0" + }, + "tensorflow-io-gcs-filesystem": { + "hashes": [ + "sha256:0df00891669390078a003cedbdd3b8e645c718b111917535fa1d7725e95cdb95", + "sha256:249c12b830165841411ba71e08215d0e94277a49c551e6dd5d72aab54fe5491b", + "sha256:257aab23470a0796978efc9c2bcf8b0bc80f22e6298612a4c0a50d3f4e88060c", + "sha256:286389a203a5aee1a4fa2e53718c661091aa5fea797ff4fa6715ab8436b02e6c", + "sha256:32c50ab4e29a23c1f91cd0f9ab8c381a0ab10f45ef5c5252e94965916041737c", + "sha256:426de1173cb81fbd62becec2012fc00322a295326d90eb6c737fab636f182aed", + "sha256:6e1f2796b57e799a8ca1b75bf47c2aaa437c968408cc1a402a9862929e104cda", + "sha256:8943036bbf84e7a2be3705cb56f9c9df7c48c9e614bb941f0936c58e3ca89d6f", + "sha256:8febbfcc67c61e542a5ac1a98c7c20a91a5e1afc2e14b1ef0cb7c28bc3b6aa70", + "sha256:9679b36e3a80921876f31685ab6f7270f3411a4cc51bc2847e80d0e4b5291e27", + "sha256:b02f9c5f94fd62773954a04f69b68c4d576d076fd0db4ca25d5479f0fbfcdbad", + "sha256:ee5da49019670ed364f3e5fb86b46420841a6c3cb52a300553c63841671b3e6d", + "sha256:ee7c8ee5fe2fd8cb6392669ef16e71841133041fee8a330eff519ad9b36e4556", + "sha256:fbb33f1745f218464a59cecd9a18e32ca927b0f4d77abd8f8671b645cc1a182f", + "sha256:fe8dcc6d222258a080ac3dfcaaaa347325ce36a7a046277f6b3e19abc1efb3c5", + "sha256:ffebb6666a7bfc28005f4fbbb111a455b5e7d6cd3b12752b7050863ecb27d5cc" + ], + "markers": "python_version < '3.13' and python_version >= '3.7'", + "version": "==0.37.1" + }, + "tensorflow-metadata": { + "hashes": [ + "sha256:2ce72ea31d78a00c0c74c6d465482335aa5cb2a3b2a104dedba0b258bc7bb18a" + ], + "markers": "python_version >= '3.9' and python_version < '4'", + "version": "==1.16.1" + }, + "termcolor": { + "hashes": [ + "sha256:37b17b5fc1e604945c2642c872a3764b5d547a48009871aea3edd3afa180afb8", + "sha256:998d8d27da6d48442e8e1f016119076b690d962507531df4890fcd2db2ef8a6f" + ], + "markers": "python_version >= '3.9'", + "version": "==2.5.0" + }, + "terminado": { + "hashes": [ + "sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0", + "sha256:de09f2c4b85de4765f7714688fff57d3e75bad1f909b589fde880460c753fd2e" + ], + "markers": "python_version >= '3.8'", + "version": "==0.18.1" + }, + "threadpoolctl": { + "hashes": [ + "sha256:082433502dd922bf738de0d8bcc4fdcbf0979ff44c42bd40f5af8a282f6fa107", + "sha256:56c1e26c150397e58c4926da8eeee87533b1e32bef131bd4bf6a2f45f3185467" + ], + "markers": "python_version >= '3.8'", + "version": "==3.5.0" + }, + "tinycss2": { + "hashes": [ + "sha256:10c0972f6fc0fbee87c3edb76549357415e94548c1ae10ebccdea16fb404a9b7", + "sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + ], + "markers": "python_version >= '3.8'", + "version": "==1.4.0" + }, + "toml": { + "hashes": [ + "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b", + "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f" + ], + "markers": "python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2'", + "version": "==0.10.2" + }, + "tomlkit": { + "hashes": [ + "sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde", + "sha256:fff5fe59a87295b278abd31bec92c15d9bc4a06885ab12bcea52c71119392e79" + ], + "markers": "python_version >= '3.8'", + "version": "==0.13.2" + }, + "tornado": { + "hashes": [ + "sha256:072ce12ada169c5b00b7d92a99ba089447ccc993ea2143c9ede887e0937aa803", + "sha256:1a017d239bd1bb0919f72af256a970624241f070496635784d9bf0db640d3fec", + "sha256:2876cef82e6c5978fde1e0d5b1f919d756968d5b4282418f3146b79b58556482", + "sha256:304463bd0772442ff4d0f5149c6f1c2135a1fae045adf070821c6cdc76980634", + "sha256:908b71bf3ff37d81073356a5fadcc660eb10c1476ee6e2725588626ce7e5ca38", + "sha256:92bad5b4746e9879fd7bf1eb21dce4e3fc5128d71601f80005afa39237ad620b", + "sha256:932d195ca9015956fa502c6b56af9eb06106140d844a335590c1ec7f5277d10c", + "sha256:bca9eb02196e789c9cb5c3c7c0f04fb447dc2adffd95265b2c7223a8a615ccbf", + "sha256:c36e62ce8f63409301537222faffcef7dfc5284f27eec227389f2ad11b09d946", + "sha256:c82c46813ba483a385ab2a99caeaedf92585a1f90defb5693351fa7e4ea0bf73", + "sha256:e828cce1123e9e44ae2a50a9de3055497ab1d0aeb440c5ac23064d9e44880da1" + ], + "markers": "python_version >= '3.8'", + "version": "==6.4.2" + }, + "tqdm": { + "hashes": [ + "sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2", + "sha256:f8aef9c52c08c13a65f30ea34f4e5aac3fd1a34959879d7e59e63027286627f2" + ], + "markers": "python_version >= '3.7'", + "version": "==4.67.1" + }, + "traitlets": { + "hashes": [ + "sha256:9ed0579d3502c94b4b3732ac120375cda96f923114522847de4b3bb98b96b6b7", + "sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + ], + "markers": "python_version >= '3.8'", + "version": "==5.14.3" + }, + "typer": { + "hashes": [ + "sha256:7994fb7b8155b64d3402518560648446072864beefd44aa2dc36972a5972e847", + "sha256:a0588c0a7fa68a1978a069818657778f86abe6ff5ea6abf472f940a08bfe4f0a" + ], + "markers": "python_version >= '3.7'", + "version": "==0.15.1" + }, + "types-python-dateutil": { + "hashes": [ + "sha256:18f493414c26ffba692a72369fea7a154c502646301ebfe3d56a04b3767284cb", + "sha256:e248a4bc70a486d3e3ec84d0dc30eec3a5f979d6e7ee4123ae043eedbb987f53" + ], + "markers": "python_version >= '3.8'", + "version": "==2.9.0.20241206" + }, + "typing-extensions": { + "hashes": [ + "sha256:5cb5f4a79139d699607b3ef622a1dedafa84e115ab0024e0d9c044a9479ca7cb", + "sha256:fb33085c39dd998ac16d1431ebc293a8b3eedd00fd4a32de0ff79002c19511b4" + ], + "markers": "python_version >= '3.7'", + "version": "==4.5.0" + }, + "tzdata": { + "hashes": [ + "sha256:24894909e88cdb28bd1636c6887801df64cb485bd593f2fd83ef29075a81d694", + "sha256:7e127113816800496f027041c570f50bcd464a020098a3b6b199517772303639" + ], + "markers": "python_version >= '2'", + "version": "==2025.1" + }, + "uc-micro-py": { + "hashes": [ + "sha256:d321b92cff673ec58027c04015fcaa8bb1e005478643ff4a500882eaab88c48a", + "sha256:db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5" + ], + "markers": "python_version >= '3.7'", + "version": "==1.0.3" + }, + "uri-template": { + "hashes": [ + "sha256:0e00f8eb65e18c7de20d595a14336e9f337ead580c70934141624b6d1ffdacc7", + "sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + ], + "markers": "python_version >= '3.7'", + "version": "==1.3.0" + }, + "urllib3": { + "hashes": [ + "sha256:0ed14ccfbf1c30a9072c7ca157e4319b70d65f623e91e7b32fadb2853431016e", + "sha256:40c2dc0c681e47eb8f90e7e27bf6ff7df2e677421fd46756da1161c39ca70d32" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'", + "version": "==1.26.20" + }, + "vine": { + "hashes": [ + "sha256:40fdf3c48b2cfe1c38a49e9ae2da6fda88e4794c810050a728bd7413811fb1dc", + "sha256:8b62e981d35c41049211cf62a0a1242d8c1ee9bd15bb196ce38aefd6799e61e0" + ], + "markers": "python_version >= '3.6'", + "version": "==5.1.0" + }, + "voluptuous": { + "hashes": [ + "sha256:016348bc7788a9af9520b1764ebd4de0df41fe2138ebe9e06fa036bf86a65566", + "sha256:6ffcab32c4d3230b4d2af3a577c87e1908a714a11f6f95570456b1849b0279aa" + ], + "markers": "python_version >= '3.9'", + "version": "==0.15.2" + }, + "wcwidth": { + "hashes": [ + "sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859", + "sha256:72ea0c06399eb286d978fdedb6923a9eb47e1c486ce63e9b4e64fc18303972b5" + ], + "version": "==0.2.13" + }, + "webcolors": { + "hashes": [ + "sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9", + "sha256:ecb3d768f32202af770477b8b65f318fa4f566c22948673a977b00d589dd80f6" + ], + "markers": "python_version >= '3.9'", + "version": "==24.11.1" + }, + "webencodings": { + "hashes": [ + "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78", + "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923" + ], + "version": "==0.5.1" + }, + "websocket-client": { + "hashes": [ + "sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526", + "sha256:3239df9f44da632f96012472805d40a23281a991027ce11d2f45a6f24ac4c3da" + ], + "markers": "python_version >= '3.8'", + "version": "==1.8.0" + }, + "websockets": { + "hashes": [ + "sha256:00213676a2e46b6ebf6045bc11d0f529d9120baa6f58d122b4021ad92adabd41", + "sha256:00c870522cdb69cd625b93f002961ffb0c095394f06ba8c48f17eef7c1541f96", + "sha256:0154f7691e4fe6c2b2bc275b5701e8b158dae92a1ab229e2b940efe11905dff4", + "sha256:05a7233089f8bd355e8cbe127c2e8ca0b4ea55467861906b80d2ebc7db4d6b72", + "sha256:09a1814bb15eff7069e51fed0826df0bc0702652b5cb8f87697d469d79c23576", + "sha256:0cff816f51fb33c26d6e2b16b5c7d48eaa31dae5488ace6aae468b361f422b63", + "sha256:185929b4808b36a79c65b7865783b87b6841e852ef5407a2fb0c03381092fa3b", + "sha256:2fc8709c00704194213d45e455adc106ff9e87658297f72d544220e32029cd3d", + "sha256:33d69ca7612f0ddff3316b0c7b33ca180d464ecac2d115805c044bf0a3b0d032", + "sha256:389f8dbb5c489e305fb113ca1b6bdcdaa130923f77485db5b189de343a179393", + "sha256:38ea7b82bfcae927eeffc55d2ffa31665dc7fec7b8dc654506b8e5a518eb4d50", + "sha256:3d3cac3e32b2c8414f4f87c1b2ab686fa6284a980ba283617404377cd448f631", + "sha256:40e826de3085721dabc7cf9bfd41682dadc02286d8cf149b3ad05bff89311e4f", + "sha256:4239b6027e3d66a89446908ff3027d2737afc1a375f8fd3eea630a4842ec9a0c", + "sha256:45ec8e75b7dbc9539cbfafa570742fe4f676eb8b0d3694b67dabe2f2ceed8aa6", + "sha256:47a2964021f2110116cc1125b3e6d87ab5ad16dea161949e7244ec583b905bb4", + "sha256:48c08473563323f9c9debac781ecf66f94ad5a3680a38fe84dee5388cf5acaf6", + "sha256:4c6d2264f485f0b53adf22697ac11e261ce84805c232ed5dbe6b1bcb84b00ff0", + "sha256:4f72e5cd0f18f262f5da20efa9e241699e0cf3a766317a17392550c9ad7b37d8", + "sha256:56029457f219ade1f2fc12a6504ea61e14ee227a815531f9738e41203a429112", + "sha256:5c1289596042fad2cdceb05e1ebf7aadf9995c928e0da2b7a4e99494953b1b94", + "sha256:62e627f6b6d4aed919a2052efc408da7a545c606268d5ab5bfab4432734b82b4", + "sha256:74de2b894b47f1d21cbd0b37a5e2b2392ad95d17ae983e64727e18eb281fe7cb", + "sha256:7c584f366f46ba667cfa66020344886cf47088e79c9b9d39c84ce9ea98aaa331", + "sha256:7d27a7e34c313b3a7f91adcd05134315002aaf8540d7b4f90336beafaea6217c", + "sha256:7d3f0b61c45c3fa9a349cf484962c559a8a1d80dae6977276df8fd1fa5e3cb8c", + "sha256:82ff5e1cae4e855147fd57a2863376ed7454134c2bf49ec604dfe71e446e2193", + "sha256:84bc2a7d075f32f6ed98652db3a680a17a4edb21ca7f80fe42e38753a58ee02b", + "sha256:884be66c76a444c59f801ac13f40c76f176f1bfa815ef5b8ed44321e74f1600b", + "sha256:8a5cc00546e0a701da4639aa0bbcb0ae2bb678c87f46da01ac2d789e1f2d2038", + "sha256:8dc96f64ae43dde92530775e9cb169979f414dcf5cff670455d81a6823b42089", + "sha256:8f38706e0b15d3c20ef6259fd4bc1700cd133b06c3c1bb108ffe3f8947be15fa", + "sha256:90fcf8929836d4a0e964d799a58823547df5a5e9afa83081761630553be731f9", + "sha256:931c039af54fc195fe6ad536fde4b0de04da9d5916e78e55405436348cfb0e56", + "sha256:932af322458da7e4e35df32f050389e13d3d96b09d274b22a7aa1808f292fee4", + "sha256:942de28af58f352a6f588bc72490ae0f4ccd6dfc2bd3de5945b882a078e4e179", + "sha256:9bc42e8402dc5e9905fb8b9649f57efcb2056693b7e88faa8fb029256ba9c68c", + "sha256:a7a240d7a74bf8d5cb3bfe6be7f21697a28ec4b1a437607bae08ac7acf5b4882", + "sha256:a9f9a735deaf9a0cadc2d8c50d1a5bcdbae8b6e539c6e08237bc4082d7c13f28", + "sha256:ae5e95cfb53ab1da62185e23b3130e11d64431179debac6dc3c6acf08760e9b1", + "sha256:b029fb2032ae4724d8ae8d4f6b363f2cc39e4c7b12454df8df7f0f563ed3e61a", + "sha256:b0d15c968ea7a65211e084f523151dbf8ae44634de03c801b8bd070b74e85033", + "sha256:b343f521b047493dc4022dd338fc6db9d9282658862756b4f6fd0e996c1380e1", + "sha256:b627c266f295de9dea86bd1112ed3d5fafb69a348af30a2422e16590a8ecba13", + "sha256:b9968694c5f467bf67ef97ae7ad4d56d14be2751000c1207d31bf3bb8860bae8", + "sha256:ba089c499e1f4155d2a3c2a05d2878a3428cf321c848f2b5a45ce55f0d7d310c", + "sha256:bbccd847aa0c3a69b5f691a84d2341a4f8a629c6922558f2a70611305f902d74", + "sha256:bc0b82d728fe21a0d03e65f81980abbbcb13b5387f733a1a870672c5be26edab", + "sha256:c57e4c1349fbe0e446c9fa7b19ed2f8a4417233b6984277cce392819123142d3", + "sha256:c94ae4faf2d09f7c81847c63843f84fe47bf6253c9d60b20f25edfd30fb12588", + "sha256:c9b27d6c1c6cd53dc93614967e9ce00ae7f864a2d9f99fe5ed86706e1ecbf485", + "sha256:d210abe51b5da0ffdbf7b43eed0cfdff8a55a1ab17abbec4301c9ff077dd0342", + "sha256:d58804e996d7d2307173d56c297cf7bc132c52df27a3efaac5e8d43e36c21c48", + "sha256:d6a4162139374a49eb18ef5b2f4da1dd95c994588f5033d64e0bbfda4b6b6fcf", + "sha256:da39dd03d130162deb63da51f6e66ed73032ae62e74aaccc4236e30edccddbb0", + "sha256:db3c336f9eda2532ec0fd8ea49fef7a8df8f6c804cdf4f39e5c5c0d4a4ad9a7a", + "sha256:dd500e0a5e11969cdd3320935ca2ff1e936f2358f9c2e61f100a1660933320ea", + "sha256:dd9becd5fe29773d140d68d607d66a38f60e31b86df75332703757ee645b6faf", + "sha256:e0cb5cc6ece6ffa75baccfd5c02cffe776f3f5c8bf486811f9d3ea3453676ce8", + "sha256:e23173580d740bf8822fd0379e4bf30aa1d5a92a4f252d34e893070c081050df", + "sha256:e3a686ecb4aa0d64ae60c9c9f1a7d5d46cab9bfb5d91a2d303d00e2cd4c4c5cc", + "sha256:e789376b52c295c4946403bd0efecf27ab98f05319df4583d3c48e43c7342c2f", + "sha256:edc344de4dac1d89300a053ac973299e82d3db56330f3494905643bb68801269", + "sha256:eef610b23933c54d5d921c92578ae5f89813438fded840c2e9809d378dc765d3", + "sha256:f2c38d588887a609191d30e902df2a32711f708abfd85d318ca9b367258cfd0c", + "sha256:f55b5905705725af31ccef50e55391621532cd64fbf0bc6f4bac935f0fccec46", + "sha256:f5fc088b7a32f244c519a048c170f14cf2251b849ef0e20cbbb0fdf0fdaf556f", + "sha256:fe10ddc59b304cb19a1bdf5bd0a7719cbbc9fbdd57ac80ed436b709fcf889106", + "sha256:ff64a1d38d156d429404aaa84b27305e957fd10c30e5880d1765c9480bea490f" + ], + "markers": "python_version >= '3.7'", + "version": "==10.4" + }, + "werkzeug": { + "hashes": [ + "sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e", + "sha256:60723ce945c19328679790e3282cc758aa4a6040e4bb330f53d30fa546d44746" + ], + "markers": "python_version >= '3.9'", + "version": "==3.1.3" + }, + "wheel": { + "hashes": [ + "sha256:661e1abd9198507b1409a20c02106d9670b2576e916d58f520316666abca6729", + "sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + ], + "markers": "python_version >= '3.8'", + "version": "==0.45.1" + }, + "wrapt": { + "hashes": [ + "sha256:08e7ce672e35efa54c5024936e559469436f8b8096253404faeb54d2a878416f", + "sha256:0a6e821770cf99cc586d33833b2ff32faebdbe886bd6322395606cf55153246c", + "sha256:0b929ac182f5ace000d459c59c2c9c33047e20e935f8e39371fa6e3b85d56f4a", + "sha256:129a150f5c445165ff941fc02ee27df65940fcb8a22a61828b1853c98763a64b", + "sha256:13e6afb7fe71fe7485a4550a8844cc9ffbe263c0f1a1eea569bc7091d4898555", + "sha256:1473400e5b2733e58b396a04eb7f35f541e1fb976d0c0724d0223dd607e0f74c", + "sha256:18983c537e04d11cf027fbb60a1e8dfd5190e2b60cc27bc0808e653e7b218d1b", + "sha256:1a7ed2d9d039bd41e889f6fb9364554052ca21ce823580f6a07c4ec245c1f5d6", + "sha256:1e1fe0e6ab7775fd842bc39e86f6dcfc4507ab0ffe206093e76d61cde37225c8", + "sha256:1fb5699e4464afe5c7e65fa51d4f99e0b2eadcc176e4aa33600a3df7801d6662", + "sha256:2696993ee1eebd20b8e4ee4356483c4cb696066ddc24bd70bcbb80fa56ff9061", + "sha256:35621ae4c00e056adb0009f8e86e28eb4a41a4bfa8f9bfa9fca7d343fe94f998", + "sha256:36ccae62f64235cf8ddb682073a60519426fdd4725524ae38874adf72b5f2aeb", + "sha256:3cedbfa9c940fdad3e6e941db7138e26ce8aad38ab5fe9dcfadfed9db7a54e62", + "sha256:3d57c572081fed831ad2d26fd430d565b76aa277ed1d30ff4d40670b1c0dd984", + "sha256:3fc7cb4c1c744f8c05cd5f9438a3caa6ab94ce8344e952d7c45a8ed59dd88392", + "sha256:4011d137b9955791f9084749cba9a367c68d50ab8d11d64c50ba1688c9b457f2", + "sha256:40d615e4fe22f4ad3528448c193b218e077656ca9ccb22ce2cb20db730f8d306", + "sha256:410a92fefd2e0e10d26210e1dfb4a876ddaf8439ef60d6434f21ef8d87efc5b7", + "sha256:41388e9d4d1522446fe79d3213196bd9e3b301a336965b9e27ca2788ebd122f3", + "sha256:468090021f391fe0056ad3e807e3d9034e0fd01adcd3bdfba977b6fdf4213ea9", + "sha256:49703ce2ddc220df165bd2962f8e03b84c89fee2d65e1c24a7defff6f988f4d6", + "sha256:4a721d3c943dae44f8e243b380cb645a709ba5bd35d3ad27bc2ed947e9c68192", + "sha256:4afd5814270fdf6380616b321fd31435a462019d834f83c8611a0ce7484c7317", + "sha256:4c82b8785d98cdd9fed4cac84d765d234ed3251bd6afe34cb7ac523cb93e8b4f", + "sha256:4db983e7bca53819efdbd64590ee96c9213894272c776966ca6306b73e4affda", + "sha256:582530701bff1dec6779efa00c516496968edd851fba224fbd86e46cc6b73563", + "sha256:58455b79ec2661c3600e65c0a716955adc2410f7383755d537584b0de41b1d8a", + "sha256:58705da316756681ad3c9c73fd15499aa4d8c69f9fd38dc8a35e06c12468582f", + "sha256:5bb1d0dbf99411f3d871deb6faa9aabb9d4e744d67dcaaa05399af89d847a91d", + "sha256:5c803c401ea1c1c18de70a06a6f79fcc9c5acfc79133e9869e730ad7f8ad8ef9", + "sha256:5cbabee4f083b6b4cd282f5b817a867cf0b1028c54d445b7ec7cfe6505057cf8", + "sha256:612dff5db80beef9e649c6d803a8d50c409082f1fedc9dbcdfde2983b2025b82", + "sha256:62c2caa1585c82b3f7a7ab56afef7b3602021d6da34fbc1cf234ff139fed3cd9", + "sha256:69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845", + "sha256:6d9187b01bebc3875bac9b087948a2bccefe464a7d8f627cf6e48b1bbae30f82", + "sha256:6ed6ffac43aecfe6d86ec5b74b06a5be33d5bb9243d055141e8cabb12aa08125", + "sha256:703919b1633412ab54bcf920ab388735832fdcb9f9a00ae49387f0fe67dad504", + "sha256:766d8bbefcb9e00c3ac3b000d9acc51f1b399513f44d77dfe0eb026ad7c9a19b", + "sha256:80dd7db6a7cb57ffbc279c4394246414ec99537ae81ffd702443335a61dbf3a7", + "sha256:8112e52c5822fc4253f3901b676c55ddf288614dc7011634e2719718eaa187dc", + "sha256:8c8b293cd65ad716d13d8dd3624e42e5a19cc2a2f1acc74b30c2c13f15cb61a6", + "sha256:8fdbdb757d5390f7c675e558fd3186d590973244fab0c5fe63d373ade3e99d40", + "sha256:91bd7d1773e64019f9288b7a5101f3ae50d3d8e6b1de7edee9c2ccc1d32f0c0a", + "sha256:95c658736ec15602da0ed73f312d410117723914a5c91a14ee4cdd72f1d790b3", + "sha256:99039fa9e6306880572915728d7f6c24a86ec57b0a83f6b2491e1d8ab0235b9a", + "sha256:9a2bce789a5ea90e51a02dfcc39e31b7f1e662bc3317979aa7e5538e3a034f72", + "sha256:9a7d15bbd2bc99e92e39f49a04653062ee6085c0e18b3b7512a4f2fe91f2d681", + "sha256:9abc77a4ce4c6f2a3168ff34b1da9b0f311a8f1cfd694ec96b0603dff1c79438", + "sha256:9e8659775f1adf02eb1e6f109751268e493c73716ca5761f8acb695e52a756ae", + "sha256:9fee687dce376205d9a494e9c121e27183b2a3df18037f89d69bd7b35bcf59e2", + "sha256:a5aaeff38654462bc4b09023918b7f21790efb807f54c000a39d41d69cf552cb", + "sha256:a604bf7a053f8362d27eb9fefd2097f82600b856d5abe996d623babd067b1ab5", + "sha256:abbb9e76177c35d4e8568e58650aa6926040d6a9f6f03435b7a522bf1c487f9a", + "sha256:acc130bc0375999da18e3d19e5a86403667ac0c4042a094fefb7eec8ebac7cf3", + "sha256:b18f2d1533a71f069c7f82d524a52599053d4c7166e9dd374ae2136b7f40f7c8", + "sha256:b4e42a40a5e164cbfdb7b386c966a588b1047558a990981ace551ed7e12ca9c2", + "sha256:b5e251054542ae57ac7f3fba5d10bfff615b6c2fb09abeb37d2f1463f841ae22", + "sha256:b60fb58b90c6d63779cb0c0c54eeb38941bae3ecf7a73c764c52c88c2dcb9d72", + "sha256:b870b5df5b71d8c3359d21be8f0d6c485fa0ebdb6477dda51a1ea54a9b558061", + "sha256:ba0f0eb61ef00ea10e00eb53a9129501f52385c44853dbd6c4ad3f403603083f", + "sha256:bb87745b2e6dc56361bfde481d5a378dc314b252a98d7dd19a651a3fa58f24a9", + "sha256:bb90fb8bda722a1b9d48ac1e6c38f923ea757b3baf8ebd0c82e09c5c1a0e7a04", + "sha256:bc570b5f14a79734437cb7b0500376b6b791153314986074486e0b0fa8d71d98", + "sha256:c86563182421896d73858e08e1db93afdd2b947a70064b813d515d66549e15f9", + "sha256:c958bcfd59bacc2d0249dcfe575e71da54f9dcf4a8bdf89c4cb9a68a1170d73f", + "sha256:d18a4865f46b8579d44e4fe1e2bcbc6472ad83d98e22a26c963d46e4c125ef0b", + "sha256:d5e2439eecc762cd85e7bd37161d4714aa03a33c5ba884e26c81559817ca0925", + "sha256:e3890b508a23299083e065f435a492b5435eba6e304a7114d2f919d400888cc6", + "sha256:e496a8ce2c256da1eb98bd15803a79bee00fc351f5dfb9ea82594a3f058309e0", + "sha256:e8b2816ebef96d83657b56306152a93909a83f23994f4b30ad4573b00bd11bb9", + "sha256:eaf675418ed6b3b31c7a989fd007fa7c3be66ce14e5c3b27336383604c9da85c", + "sha256:ec89ed91f2fa8e3f52ae53cd3cf640d6feff92ba90d62236a81e4e563ac0e991", + "sha256:ecc840861360ba9d176d413a5489b9a0aff6d6303d7e733e2c4623cfa26904a6", + "sha256:f09b286faeff3c750a879d336fb6d8713206fc97af3adc14def0cdd349df6000", + "sha256:f393cda562f79828f38a819f4788641ac7c4085f30f1ce1a68672baa686482bb", + "sha256:f917c1180fdb8623c2b75a99192f4025e412597c50b2ac870f156de8fb101119", + "sha256:fc78a84e2dfbc27afe4b2bd7c80c8db9bca75cc5b85df52bfe634596a1da846b", + "sha256:ff04ef6eec3eee8a5efef2401495967a916feaa353643defcc03fc74fe213b58" + ], + "markers": "python_version >= '3.8'", + "version": "==1.17.2" + }, + "yarl": { + "hashes": [ + "sha256:00e5a1fea0fd4f5bfa7440a47eff01d9822a65b4488f7cff83155a0f31a2ecba", + "sha256:02ddb6756f8f4517a2d5e99d8b2f272488e18dd0bfbc802f31c16c6c20f22193", + "sha256:045b8482ce9483ada4f3f23b3774f4e1bf4f23a2d5c912ed5170f68efb053318", + "sha256:09c7907c8548bcd6ab860e5f513e727c53b4a714f459b084f6580b49fa1b9cee", + "sha256:0b0cad37311123211dc91eadcb322ef4d4a66008d3e1bdc404808992260e1a0e", + "sha256:0b3c92fa08759dbf12b3a59579a4096ba9af8dd344d9a813fc7f5070d86bbab1", + "sha256:0fb2171a4486bb075316ee754c6d8382ea6eb8b399d4ec62fde2b591f879778a", + "sha256:1a74a13a4c857a84a845505fd2d68e54826a2cd01935a96efb1e9d86c728e186", + "sha256:1d407181cfa6e70077df3377938c08012d18893f9f20e92f7d2f314a437c30b1", + "sha256:1dd4bdd05407ced96fed3d7f25dbbf88d2ffb045a0db60dbc247f5b3c5c25d50", + "sha256:25b411eddcfd56a2f0cd6a384e9f4f7aa3efee14b188de13048c25b5e91f1640", + "sha256:2d06d3005e668744e11ed80812e61efd77d70bb7f03e33c1598c301eea20efbb", + "sha256:2ec9bbba33b2d00999af4631a3397d1fd78290c48e2a3e52d8dd72db3a067ac8", + "sha256:3236da9272872443f81fedc389bace88408f64f89f75d1bdb2256069a8730ccc", + "sha256:35098b24e0327fc4ebdc8ffe336cee0a87a700c24ffed13161af80124b7dc8e5", + "sha256:41f7ce59d6ee7741af71d82020346af364949314ed3d87553763a2df1829cc58", + "sha256:436c4fc0a4d66b2badc6c5fc5ef4e47bb10e4fd9bf0c79524ac719a01f3607c2", + "sha256:4891ed92157e5430874dad17b15eb1fda57627710756c27422200c52d8a4e393", + "sha256:4ac515b860c36becb81bb84b667466885096b5fc85596948548b667da3bf9f24", + "sha256:5094d9206c64181d0f6e76ebd8fb2f8fe274950a63890ee9e0ebfd58bf9d787b", + "sha256:54d6921f07555713b9300bee9c50fb46e57e2e639027089b1d795ecd9f7fa910", + "sha256:578e281c393af575879990861823ef19d66e2b1d0098414855dd367e234f5b3c", + "sha256:5a3f356548e34a70b0172d8890006c37be92995f62d95a07b4a42e90fba54272", + "sha256:602d98f2c2d929f8e697ed274fbadc09902c4025c5a9963bf4e9edfc3ab6f7ed", + "sha256:61b1a825a13bef4a5f10b1885245377d3cd0bf87cba068e1d9a88c2ae36880e1", + "sha256:61e5e68cb65ac8f547f6b5ef933f510134a6bf31bb178be428994b0cb46c2a04", + "sha256:61ee62ead9b68b9123ec24bc866cbef297dd266175d53296e2db5e7f797f902d", + "sha256:6333c5a377c8e2f5fae35e7b8f145c617b02c939d04110c76f29ee3676b5f9a5", + "sha256:6748dbf9bfa5ba1afcc7556b71cda0d7ce5f24768043a02a58846e4a443d808d", + "sha256:67a283dd2882ac98cc6318384f565bffc751ab564605959df4752d42483ad889", + "sha256:75674776d96d7b851b6498f17824ba17849d790a44d282929c42dbb77d4f17ae", + "sha256:757e81cae69244257d125ff31663249b3013b5dc0a8520d73694aed497fb195b", + "sha256:77a6e85b90a7641d2e07184df5557132a337f136250caafc9ccaa4a2a998ca2c", + "sha256:7c33dd1931a95e5d9a772d0ac5e44cac8957eaf58e3c8da8c1414de7dd27c576", + "sha256:7df647e8edd71f000a5208fe6ff8c382a1de8edfbccdbbfe649d263de07d8c34", + "sha256:7e2ee16578af3b52ac2f334c3b1f92262f47e02cc6193c598502bd46f5cd1477", + "sha256:80316a8bd5109320d38eef8833ccf5f89608c9107d02d2a7f985f98ed6876990", + "sha256:82123d0c954dc58db301f5021a01854a85bf1f3bb7d12ae0c01afc414a882ca2", + "sha256:84b2deecba4a3f1a398df819151eb72d29bfeb3b69abb145a00ddc8d30094512", + "sha256:8503ad47387b8ebd39cbbbdf0bf113e17330ffd339ba1144074da24c545f0069", + "sha256:877d209b6aebeb5b16c42cbb377f5f94d9e556626b1bfff66d7b0d115be88d0a", + "sha256:8874027a53e3aea659a6d62751800cf6e63314c160fd607489ba5c2edd753cf6", + "sha256:88a19f62ff30117e706ebc9090b8ecc79aeb77d0b1f5ec10d2d27a12bc9f66d0", + "sha256:8d39d351e7faf01483cc7ff7c0213c412e38e5a340238826be7e0e4da450fdc8", + "sha256:90adb47ad432332d4f0bc28f83a5963f426ce9a1a8809f5e584e704b82685dcb", + "sha256:913829534200eb0f789d45349e55203a091f45c37a2674678744ae52fae23efa", + "sha256:93b2e109287f93db79210f86deb6b9bbb81ac32fc97236b16f7433db7fc437d8", + "sha256:9d41beda9dc97ca9ab0b9888cb71f7539124bc05df02c0cff6e5acc5a19dcc6e", + "sha256:a440a2a624683108a1b454705ecd7afc1c3438a08e890a1513d468671d90a04e", + "sha256:a4bb030cf46a434ec0225bddbebd4b89e6471814ca851abb8696170adb163985", + "sha256:a9ca04806f3be0ac6d558fffc2fdf8fcef767e0489d2684a21912cc4ed0cd1b8", + "sha256:ac1801c45cbf77b6c99242eeff4fffb5e4e73a800b5c4ad4fc0be5def634d2e1", + "sha256:ac36703a585e0929b032fbaab0707b75dc12703766d0b53486eabd5139ebadd5", + "sha256:b1771de9944d875f1b98a745bc547e684b863abf8f8287da8466cf470ef52690", + "sha256:b464c4ab4bfcb41e3bfd3f1c26600d038376c2de3297760dfe064d2cb7ea8e10", + "sha256:b4f6450109834af88cb4cc5ecddfc5380ebb9c228695afc11915a0bf82116789", + "sha256:b57f4f58099328dfb26c6a771d09fb20dbbae81d20cfb66141251ea063bd101b", + "sha256:b643562c12680b01e17239be267bc306bbc6aac1f34f6444d1bded0c5ce438ca", + "sha256:b958ddd075ddba5b09bb0be8a6d9906d2ce933aee81100db289badbeb966f54e", + "sha256:b9d60031cf568c627d028239693fd718025719c02c9f55df0a53e587aab951b5", + "sha256:ba23302c0c61a9999784e73809427c9dbedd79f66a13d84ad1b1943802eaaf59", + "sha256:ba87babd629f8af77f557b61e49e7c7cac36f22f871156b91e10a6e9d4f829e9", + "sha256:c017a3b6df3a1bd45b9fa49a0f54005e53fbcad16633870104b66fa1a30a29d8", + "sha256:c1e1cc06da1491e6734f0ea1e6294ce00792193c463350626571c287c9a704db", + "sha256:c654d5207c78e0bd6d749f6dae1dcbbfde3403ad3a4b11f3c5544d9906969dde", + "sha256:c69697d3adff5aa4f874b19c0e4ed65180ceed6318ec856ebc423aa5850d84f7", + "sha256:c7d79f7d9aabd6011004e33b22bc13056a3e3fb54794d138af57f5ee9d9032cb", + "sha256:ccaa3a4b521b780a7e771cc336a2dba389a0861592bbce09a476190bb0c8b4b3", + "sha256:ccd17349166b1bee6e529b4add61727d3f55edb7babbe4069b5764c9587a8cc6", + "sha256:ce1af883b94304f493698b00d0f006d56aea98aeb49d75ec7d98cd4a777e9285", + "sha256:d0e883008013c0e4aef84dcfe2a0b172c4d23c2669412cf5b3371003941f72bb", + "sha256:d980e0325b6eddc81331d3f4551e2a333999fb176fd153e075c6d1c2530aa8a8", + "sha256:e17c9361d46a4d5addf777c6dd5eab0715a7684c2f11b88c67ac37edfba6c482", + "sha256:e2c08cc9b16f4f4bc522771d96734c7901e7ebef70c6c5c35dd0f10845270bcd", + "sha256:e35ef8683211db69ffe129a25d5634319a677570ab6b2eba4afa860f54eeaf75", + "sha256:e3b9fd71836999aad54084906f8663dffcd2a7fb5cdafd6c37713b2e72be1760", + "sha256:ef9f7768395923c3039055c14334ba4d926f3baf7b776c923c93d80195624782", + "sha256:f52a265001d830bc425f82ca9eabda94a64a4d753b07d623a9f2863fde532b53", + "sha256:f91c4803173928a25e1a55b943c81f55b8872f0018be83e3ad4938adffb77dd2", + "sha256:fbd6748e8ab9b41171bb95c6142faf068f5ef1511935a0aa07025438dd9a9bc1", + "sha256:fe57328fbc1bfd0bd0514470ac692630f3901c0ee39052ae47acd1d90a436719", + "sha256:fea09ca13323376a2fdfb353a5fa2e59f90cd18d7ca4eaa1fd31f0a8b4f91e62" + ], + "markers": "python_version >= '3.9'", + "version": "==1.18.3" + }, + "zc.lockfile": { + "hashes": [ + "sha256:adb2ee6d9e6a2333c91178dcb2c9b96a5744c78edb7712dc784a7d75648e81ec", + "sha256:ddb2d71088c061dc8a5edbaa346b637d742ca1e1564be75cb98e7dcae715de19" + ], + "markers": "python_version >= '3.7'", + "version": "==3.0.post1" + }, + "zipp": { + "hashes": [ + "sha256:2c9958f6430a2040341a52eb608ed6dd93ef4392e02ffe219417c1b28b5dd1f4", + "sha256:ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931" + ], + "markers": "python_version >= '3.9'", + "version": "==3.21.0" + } + }, + "develop": {} +} diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..722eb0f --- /dev/null +++ b/requirements.txt @@ -0,0 +1,17 @@ +numpy==1.24.3 +matplotlib==3.7.4 +pandas==2.0.3 +scikit-learn==1.3.2 +seaborn==0.13.1 +tensorflow==2.13.1 +tensorflow_datasets==4.9.2 +jupyterlab==4.0.10 +jupyter-book==0.15.1 +jupyterlab_rise== 0.42.0 +astroML==1.0.2.post1 +nbdime==4.0.1 +boto3==1.34.15 +pyarrow==14.0.2 +pyspark==3.5.0 +pyppeteer==1.0.2 +dvc==3.38.1 diff --git a/week1/slides/.ipynb_checkpoints/Lecture01_Intro-checkpoint.ipynb b/week1/slides/.ipynb_checkpoints/Lecture01_Intro-checkpoint.ipynb new file mode 100644 index 0000000..cef0c49 --- /dev/null +++ b/week1/slides/.ipynb_checkpoints/Lecture01_Intro-checkpoint.ipynb @@ -0,0 +1,1373 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "# Lecture 1: Introduction to machine learning" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "skip" + }, + "tags": [] + }, + "source": [ + "![](https://www.tensorflow.org/images/colab_logo_32px.png)\n", + "[Run in colab](https://colab.research.google.com/drive/1zNonj4k0gGhz8Q9kg-5kMk2y9Rq-yjJQ)" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:11.425191Z", + "iopub.status.busy": "2024-01-10T00:13:11.424955Z", + "iopub.status.idle": "2024-01-10T00:13:11.435722Z", + "shell.execute_reply": "2024-01-10T00:13:11.435205Z" + }, + "slideshow": { + "slide_type": "skip" + } + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Last executed: 2024-01-10 00:13:11\n" + ] + } + ], + "source": [ + "import datetime\n", + "now = datetime.datetime.now()\n", + "print(\"Last executed: \" + now.strftime(\"%Y-%m-%d %H:%M:%S\"))" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Course overview" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "### Description and objectives\n", + "\n", + "This module covers how to apply machine learning techniques to large data-sets, so-called *big-data*. \n", + "\n", + "An introduction to machine learning (ML) is presented to provide a general understanding of the concepts of machine learning, common machine learning techniques, and how to apply these methods to data-sets of moderate sizes. \n", + "\n", + "Deep learning and computing frameworks to scale machine learning techniques to big-data are then presented. \n", + "\n", + "Scientific data formats and data curation methods are also discussed." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "source": [ + "### Syllabus\n", + "\n", + "Foundations of ML (e.g. overview of ML, training, data wrangling, scikit-learn, performance analysis, gradient descent), data formats and curation (e.g. data pipelines, data version control, databases, big-data), ML methods (e.g. logistic regression, SVMs, ANNs, decision trees, ensemble learning and random forests, dimensionality reduction), deep learning and scaling to big-data (e.g. TensorFlow, \n", + "Deep ANNs, CNNs, RNNs, Autoencoders) and applications of ML in astrophysics, high-energy physics and industry." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Prerequisites\n", + "\n", + "Students should have a reasonable working knowledge of Python, some familiarity with working in the command line environment in Linux/Unix based operating systems, and a general understanding of elementary mathematics, including linear algebra and calculus. \n", + "\n", + "No previous familiarity with machine learning is required." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Resources" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Textbooks \n", + "\n", + "- VanderPlas, [\"*Python data science handbook*\"](https://jakevdp.github.io/PythonDataScienceHandbook/), O'Reilly, 2017, ISBN 9781491912058\n", + " ([Example code](https://github.com/jakevdp/PythonDataScienceHandbook))\n", + "\n", + "- Geron (1st Edition), [\"*Hands-on machine learning with Scikit-Learn and TensorFlow*\"](https://www.oreilly.com/library/view/hands-on-machine-learning/9781491962282/), O'Reilly, 2017, ISBN 9781491962299\n", + " ([Example code](https://github.com/ageron/handson-ml))\n", + "\n", + "- Geron (2nd Edition), [\"*Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow*\"](https://www.oreilly.com/library/view/hands-on-machine-learning/9781492032632/), O'Reilly, 2019, ISBN 9781492032649 ([Example code](https://github.com/ageron/handson-ml2))\n", + "\n", + "- Goodfellow, Bengio, Courville (GBC), [\"*Deep learning*\"](http://www.deeplearningbook.org), MIT Press, 2016, ISBN 9780262035613" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Tutorials \n", + " \n", + "- [Scikit-Learn tutorial](https://github.com/jakevdp/sklearn_tutorial), VanderPlas" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Main code frameworks and libraries\n", + "\n", + "- [Scikit-Learn](http://scikit-learn.org/stable/)\n", + " \n", + "- [TensorFlow](https://www.tensorflow.org/)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Schedule\n", + "\n", + "Lectures will run on Friday's from 10am-1pm. \n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Jupyter notebooks\n", + "\n", + "Each lecture has an accompaning Jupyter notebook, with executable code.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "These slides are a Jupyter notebook.\n", + "\n", + "Notebooks can be viewed in slide mode using [RISE](https://rise.readthedocs.io/en/stable/)." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "The supporting Jupyter notebooks thus serve as the course *slides*, *lecture notes*, and *examples*.\n", + "\n", + "A book version is also made available." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Course philosophy\n", + "\n", + "This is a practical, hands-on course. While we will cover basic concepts and background theory (but not in great mathematical depth or rigor), a large component of the course will focus on implementing and running machine learning algorithms. Many code examples and exercises will be considered." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "The course Jupyter notebooks will be made available weekly, in advance of lectures. Students can then follow examples in the lectures by running code live (and inspecting variables and making modifications). " + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Exercises\n", + "\n", + "A number of lectures are accompanies by an additional Jupyter notebook with related examples for you to complete. The solutions to these exercises will be made available as the module progresses. These exercises will not be graded but are intended to help improve your understanding of the lecture material." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Assessment\n", + "\n", + "\n", + "- Courseworks: 2 x 20% = 40%\n", + "- Exam: 60%\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Coursework\n", + "\n", + "Courseworks will involve downloading a Jupyter notebook, which you will need to complete. \n", + "\n", + "Throughout the notebook you will need to complete code, analytic exercises and descriptive answers. Much of the grading of the coursework will be performed automatically.\n", + "\n", + "There will be two courseworks. The first coursework will be issued after the first 9 lectures, when all the material required to complete the first coursework will be covered. The second coursework will be issued after the first 15 lectures, when all the material required to complete the second coursework will be covered. " + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Exam\n", + "\n", + "*Answer THREE questions* of the FOUR questions provided.\n", + "\n", + "Each question has equal mark (15 marks per question).\n", + "\n", + "Markers place importance on clarity and a portion of the marks are awarded for clear descriptions, answers, drawings, and diagrams, and attention to precision in quantitative answers." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Computing setup\n", + "\n", + "Students can bring their own laptops to class in order to run notebooks and complete examples.\n", + " \n", + "All examples are implemented in Python 3. \n", + "\n", + "The main Python libraries that are required include the following:\n", + "```\n", + "- numpy \n", + "- scipy\n", + "- matplotlib\n", + "- scikit-learn\n", + "- ipython/jupyter\n", + "- seaborn\n", + "- tensorflow\n", + "- astroML\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "An environment to run the notebooks can be set up with the versions of the libraries in `requirements.txt` (details below), following the steps below in terminal (MacOS, Linux) or anaconda prompt (Windows): \n", + "\n", + "1. Create an environment named mlbd with Python 3.11.\n", + "\n", + " ```\n", + " conda create --name mlbd python=3.11\n", + " ```\n", + "\n", + "2. Activate the `mlbd` environment and then install the libraries in the requirements.txt file. \n", + "\n", + " ```\n", + " conda activate mlbd \n", + " pip install -r requirements.txt \n", + " ```\n", + "3. Finally, start Jupyter, which will open the explorer and let you run the notebooks. \n", + "\n", + " ```\n", + " jupyter lab\n", + " ```" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Content of `requirements.txt`:\n", + "\n", + "```\n", + "numpy==1.24.3\n", + "matplotlib==3.7.4\n", + "pandas==2.0.3\n", + "scikit-learn==1.3.2\n", + "seaborn==0.13.1\n", + "tensorflow==2.13.1\n", + "tensorflow_datasets==4.9.2\n", + "jupyterlab==4.0.10\n", + "jupyter-book==0.15.1\n", + "jupyterlab_rise== 0.42.0\n", + "astroML==1.0.2.post1\n", + "nbdime==4.0.1\n", + "boto3==1.34.15\n", + "pyarrow==14.0.2\n", + "pyspark==3.5.0\n", + "pyppeteer==1.0.2\n", + "dvc==3.38.1\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Content of `requirements_macosx.txt` for Mac:\n", + "\n", + "```\n", + "numpy==1.24.3\n", + "matplotlib==3.7.4\n", + "pandas==2.0.3\n", + "scikit-learn==1.3.2\n", + "seaborn==0.13.1\n", + "tensorflow==2.13.1\n", + "tensorflow-metal==1.1.0\n", + "tensorflow_datasets==4.9.2\n", + "jupyterlab==4.0.10\n", + "jupyter-book==0.15.1\n", + "jupyterlab_rise== 0.42.0\n", + "astroML==1.0.2.post1\n", + "nbdime==4.0.1\n", + "boto3==1.34.15\n", + "pyarrow==14.0.2\n", + "pyspark==3.5.0\n", + "pyppeteer==1.0.2\n", + "dvc==3.38.1\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "## What is machine learning?" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "source": [ + "### Artifical intelligence (AI)\n", + "\n", + "Ironically...\n", + "\n", + "- Solving \"computational problems\" that are difficult for humans is straightforward for machines (i.e. problems described by list of formal mathematical rules).\n", + "\n", + "- Solving \"intuitive problems\" that are easy for humans is difficult for machines (i.e. problems difficult to describe formally).\n", + "\n", + "This is often known as [Moravec's paradox](https://en.wikipedia.org/wiki/Moravec%27s_paradox) (although formal definition is a little more specific)." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "Solution is to allow computers to learn from experience and to build an understanding of the world through a hierarchy of concepts." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Knowledge base approach\n", + "\n", + "Hard-code knowledge about world in formal set of rules and use logical inference.\n", + "\n", + "Very difficult to capture complexity of intuitive problems in this manner.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Machine learning (ML)\n", + "\n", + "Arthur Samuel (1959):\n", + "> \"[Machine learning is the] field of study that gives computers the ability to learn without being explicitly programmed.\"\n", + "\n", + "
\n", + "\n", + "Tom Mitchell (1997):\n", + "> \"A computer program is said to learn from experience E with respect to some task T and some performance measure P, if its performance on T, as measured by P, improves with experience E.\"\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Uses of machine learning\n", + "\n", + "1. **Prediction:** Predict outcome given data.\n", + "2. **Inference:** Better understand data (and their distribution)." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Data representations\n", + "\n", + "\n", + "Performance of machine learning depends on representation of data given.\n", + "\n", + "Data presented to learning algorithm as *features*.\n", + "\n", + "Traditional approach to machine learning involved *\"feature engineering\"*, where a practitioner with domain expertise would develop techniques to extract informative features from raw data. \n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Examples of features\n", + "\n", + "- Computer visions: edges and corners\n", + "- Spam: frequency of words\n", + "- Character recognition: histograms of black pixels along rows/columns, number of holes, number of strokes" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Learning representations\n", + "\n", + "Alternative is to learn features.\n", + "\n", + "- Can discover informative features from data.\n", + "- Minimal human intervention.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Approaches to representation learning\n", + "\n", + "\n", + "\n", + "- Dedicated feature learning, e.g. autoencoder combining encoder and decoder.\n", + "\n", + "- Representation learning integral to overall machine learning technique, e.g. deep learning." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Approaches to artifical intelligence\n", + "\n", + "\n", + "\n", + "[Image credit: [GBC](http://www.deeplearningbook.org/)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### AI pipelines\n", + "\n", + "\n", + "\n", + "[Image credit: [GBC](http://www.deeplearningbook.org/)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "## The unreasonable effectiveness of data" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "As society becomes increasing digitised, the volume of available data is exploding. \n", + "\n", + "A significant increase in the volume of data can lead to dramatic increases in the performance of machine learning techniques.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "(Term coined in Halevy, Norbig & Pereira, 2009, [*The unreasonable effectiveness of data*](http://goo.gl/q6LaZ8).)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Size of benchmark data-sets\n", + "\n", + "\n", + " \n", + "[Image credit: [GBC](http://www.deeplearningbook.org/)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "source": [ + "### Size of data can have a larger impact than algorihm\n", + "\n", + "\n", + "\n", + "Source: Banko & Brill, 2001, [*Scaling to very very large corpora for natural language disambiguation*](http://goo.gl/R5enIE)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "source": [ + "\n", + "\n", + "> As a rule of thumb, a supervised deep learning algorithm will perform reasonably well with around 5,000 labelled samples. \n", + "\n", + "> With 10 million samples, it will match or exceed human performance. \n", + "\n", + "[Source: [GBC](http://www.deeplearningbook.org/)]\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "source": [ + "However, in many cases very large datasets are not available and in some cases not possible. \n", + "\n", + "Hence, developing effective algorithms remains critical." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "## A brief history of deep learning" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "### AlexNet: an inflection point in machine learning\n", + "\n", + "\n", + "\n", + "Source: [*Ten Years of AI in Review*](https://towardsdatascience.com/ten-years-of-ai-in-review-85decdb2a540), Towards Data Science" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "source": [ + "### Deep learning timeline\n", + "\n", + "\n", + "\n", + "Source: [*Ten Years of AI in Review*](https://towardsdatascience.com/ten-years-of-ai-in-review-85decdb2a540), Towards Data Science" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "source": [ + "### A fourth industrial revolution?\n", + "\n", + "\n", + "\n", + "[[Image Source](https://rw-rw.facebook.com/195228108045971/photos/a.195229821379133/195229781379137/)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "- First industrial revolution (1760-1840): mechanisation through steam and water power.\n", + "- Second industrial revolution (1871-1914): electrification, railroad and telegraph networks.\n", + "- Third industrial revolution (late 20th century): digital revolution.\n", + "- Fourth industrial revolution (21st century): AI revolution." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "## Classes of machine learning\n", + "\n", + "1. **Supervised:** Learn to predict output given input (given labelled training data).\n", + "2. **Unsupervised:** Discover internal representation of input.\n", + "3. **Reinforcement:** Learn action to maximise payoff.\n", + "\n", + "\n", + " \n", + "[[Image source](http://beta.cambridgespark.com/courses/jpm/01-module.html)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "source": [ + "### Supervised learning\n", + "\n", + "Learn to predict output given input (given labelled training data).\n", + "\n", + "1. **Regression:** Target output is a (real) number,
\n", + " e.g. estimate flux intensity.\n", + "\n", + "2. **Classification:** Target output is a class label,
\n", + " e.g. classify galaxy morphology." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### How supervised learning works\n", + "\n", + "- Select model defined by function $f$, and model target $y$ from inputs $x$ by\n", + "$y = f(x, \\theta),$\n", + "where $\\theta$ are the parameters of the model that are learnt during training.\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "- Learning typically involves minimising the difference between the inputs and outputs for the model, given a training data-set (more on training, validation and test data-sets later)." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Unsupervised learning\n", + "\n", + "Discover internal representation of input.\n", + "\n", + "1. **Cluster finding:** Learn cluster of similar structure in data.\n", + "2. **Density estimation:** Learn representations of data (probability distributions).\n", + "3. **Dimensionality reduction:** Provides compact, low-dimensional representation of data." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "#### Unsupervised learning examples\n", + "\n", + "\n", + "Anomaly detection, clustering groups of similar objects, visualising high-dimensional data in 2D or 3D plots are examples of unsupervised learning." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Reinforcement learning\n", + "\n", + "Learn action to maximise payoff.\n", + "\n", + "- Output is an action or sequence of actions and the only supervisory signal is an occasional numerical (scalar) reward.\n", + "- Difficult since rewards are delayed.\n", + "- Not covered in this course.\n", + "\n", + "\n", + " \n", + "[[Image credit](https://www.analyticsvidhya.com/blog/2016/12/getting-ready-for-ai-based-gaming-agents-overview-of-open-source-reinforcement-learning-platforms/)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Reinforcement learning examples\n", + "\n", + "Go, playing computer games, driverless cars, self navigating vaccum cleaners, scheduling of elevators are all applications of reinforcement learning.\n", + "\n", + "E.g. [Google [DeepMind] machine learns to master video games](http://www.bbc.co.uk/news/science-environment-31623427)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Training\n", + "\n", + "Machine *learning* often involves solving an *optimization* problem, i.e. finding the parameters $\\theta$ of the model $f$ to best represent the training data (for supervised learning).\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Objective function\n", + "\n", + "Typically maximise/minimise some goodness-of-fit/cost function." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Example of convex objective function\n", + "\n", + "\n", + " \n", + "[Image credit: Kirkby, UC Irvine, LSST Dark Energy Summer School 2017]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Example of non-convex objective function" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "-" + } + }, + "source": [ + "" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "-" + } + }, + "source": [ + "[[Image source](https://cs.hse.ru/data/2016/08/26/1121363361/moml.jpg)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Using gradients to optimize objective function (i.e. perform training)\n", + "\n", + "- **(Batch) Gradient descent:** Use all data at each iteration (full dimension).\n", + "- **Stochastic gradient descent:** Use a random data-point at each iteration (1 dimension).\n", + "- **Backpropagation:** propagate errors backwards through networks.\n", + "\n", + "" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Batch gradient descent \n", + "\n", + "\n", + "#### Stochastic gradient descent \n", + "\n", + "\n", + "[[Image source](http://www.holehouse.org/mlclass)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Batch and online learning\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Batch learning\n", + "\n", + "Algorithm is trained using all available training data at once.\n", + "\n", + "Also called *offline learning*." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "- Requires substantial resources (CPU, memory space, disk space).\n", + "- If want to add new training data, must re-train from scratch on new full set of data (i.e. not just the new data but also the old data)." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Online learning\n", + "\n", + "Algorithm is trained using a sub-set of the training data.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "- Each learning step does *not* require substantial resources. \n", + "- Can integate new training data on the fly.\n", + "- May be able to throw away data once used it (although might not want to).\n", + "- If fed bad data, performance will decline.\n", + "- Noisy training." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Overfitting and underfitting\n", + "\n", + "- **Problem:** The learned model may fit the training set extremely well but fail to generalise to new examples." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### 1D example\n", + "\n", + "\n", + "\n", + "[[Image source](http://scikit-learn.org/stable/_images/sphx_glr_plot_underfitting_overfitting_001.png)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### 2D example\n", + "\n", + "\n", + "\n", + "[[Image source](https://www.safaribooksonline.com/library/view/deep-learning/9781491924570/assets/dpln_0107.png)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Techniques to avoid overfitting\n", + "\n", + "- Reduce complexity of model.\n", + "- Regularization:\n", + " - Place additional constraints (priors) on features/parameters.\n", + " - E.g. smoothness of parameters, sparsity of model (i.e. limit complexity).\n", + "- Split data into training, validation and test sets (e.g. cross-validation). \n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Testing and validation" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### No free lunch theorem\n", + "\n", + "Essentially, all algorithms are equivalent when performance is averaged over all possible problems.\n", + "\n", + "Consequently, there is no a priori model that is guaranteed to work best on all problems.\n", + "\n", + "(Wolpert, 1996, [*The lack of a priori distinctions between learning algorithms*](http://goo.gl/q6LaZ8))\n", + "\n", + "It is therefore a matter of validating models empirically." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Training and test datasets\n", + "\n", + "Split data into training and test sets (e.g. 80% for training and 20% for testing).\n", + "\n", + "The model is trained on the *training set* and then tested on the *test set*. " + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "**No data used in training the method is then used to evaluate it.**" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "Error rate on the test set is called the *generalization error* or *out of sample error*.\n", + "\n", + "If the training error is low but the generalization error is high, it suggests the model is overfitted." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "source": [ + "### Hyperparameters\n", + "\n", + "Many machine learning algorithms contain hyperparameters to control the model. \n", + "\n", + "One (**bad**) approach is to evaluate alternative models defined by different hyperparameters on test set and select the model that performs best.\n", + "\n", + "However, this optimizes the model for the test set and may not generalise to other data well." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Validation\n", + "\n", + "\n", + "A better approach is to split the data into three sets: \n", + "1. Training set\n", + "2. Validation set\n", + "3. Test set\n", + "\n", + "Train models on the training set and evaluate different models (with different hyperparameters) on the validation set.\n", + "\n", + "Only once the final model to be used is fully specified should it be applied to the test set to estimate its generalization performance." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Cross-validation\n", + "\n", + "A disadvantage of the previous approach is that less data are available for training.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "*Cross-validation* addresses this issue by performing a sequence of fits where each subset of the data is used both as a training set and a validation set.\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "[Image credit: [VanderPlas](https://github.com/jakevdp/PythonDataScienceHandbook)]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Get validation accuracy scores for each trial, which could be combined." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "source": [ + "#### Extension to n-fold cross-validation\n", + "\n", + "\n", + "\n", + "[Image credit: [VanderPlas](https://github.com/jakevdp/PythonDataScienceHandbook)]" + ] + } + ], + "metadata": { + "celltoolbar": "Slideshow", + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.7" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/week1/slides/.ipynb_checkpoints/Lecture03_Scikit-Learn-checkpoint.ipynb b/week1/slides/.ipynb_checkpoints/Lecture03_Scikit-Learn-checkpoint.ipynb new file mode 100644 index 0000000..8f6db68 --- /dev/null +++ b/week1/slides/.ipynb_checkpoints/Lecture03_Scikit-Learn-checkpoint.ipynb @@ -0,0 +1,2087 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "# Lecture 3: Introduction to Scikit-Learn" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "skip" + } + }, + "source": [ + "![](https://www.tensorflow.org/images/colab_logo_32px.png)\n", + "[Run in colab](https://colab.research.google.com/drive/1TZW7xcheEHt7DdDraOZUiSG92rqF3TGF)" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:23.213712Z", + "iopub.status.busy": "2024-01-10T00:13:23.213476Z", + "iopub.status.idle": "2024-01-10T00:13:23.223868Z", + "shell.execute_reply": "2024-01-10T00:13:23.223286Z" + }, + "slideshow": { + "slide_type": "skip" + } + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Last executed: 2024-01-10 00:13:23\n" + ] + } + ], + "source": [ + "import datetime\n", + "now = datetime.datetime.now()\n", + "print(\"Last executed: \" + now.strftime(\"%Y-%m-%d %H:%M:%S\"))" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Scikit-Learn overview\n", + "\n", + "[Scikit-Learn](http://scikit-learn.org/stable/) is an extremely popular python machine learning package.\n", + "\n", + "Provides implementations of a number of different machine learning algorithms." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "- Clean, uniform and streamlined API.\n", + "- Useful and complete online documentation.\n", + "- Straightforward to switch models or algorithms." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Two main general concepts:\n", + "- Data representation\n", + "- Estimator API" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Data representations" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Scikit-Learn includes a number of example data-sets" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:23.262339Z", + "iopub.status.busy": "2024-01-10T00:13:23.261807Z", + "iopub.status.idle": "2024-01-10T00:13:23.802820Z", + "shell.execute_reply": "2024-01-10T00:13:23.802100Z" + } + }, + "outputs": [], + "source": [ + "from sklearn import datasets" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:23.806483Z", + "iopub.status.busy": "2024-01-10T00:13:23.805791Z", + "iopub.status.idle": "2024-01-10T00:13:23.810230Z", + "shell.execute_reply": "2024-01-10T00:13:23.809598Z" + } + }, + "outputs": [], + "source": [ + "# Type datasets. to see more\n", + "#datasets." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Data as a table\n", + "\n", + "Best way to think about data in Scikit-Learn is in terms of tables of data.\n", + "\n", + "Using the [`seaborn`](http://seaborn.pydata.org/) library we can read example data-sets as a Pandas `DataFrame`." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:23.813758Z", + "iopub.status.busy": "2024-01-10T00:13:23.813178Z", + "iopub.status.idle": "2024-01-10T00:13:25.297828Z", + "shell.execute_reply": "2024-01-10T00:13:25.297118Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "pandas.core.frame.DataFrame" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import seaborn as sns\n", + "iris = sns.load_dataset('iris')\n", + "type(iris)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:25.301227Z", + "iopub.status.busy": "2024-01-10T00:13:25.300607Z", + "iopub.status.idle": "2024-01-10T00:13:25.313145Z", + "shell.execute_reply": "2024-01-10T00:13:25.312527Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
sepal_lengthsepal_widthpetal_lengthpetal_widthspecies
05.13.51.40.2setosa
14.93.01.40.2setosa
24.73.21.30.2setosa
34.63.11.50.2setosa
45.03.61.40.2setosa
\n", + "
" + ], + "text/plain": [ + " sepal_length sepal_width petal_length petal_width species\n", + "0 5.1 3.5 1.4 0.2 setosa\n", + "1 4.9 3.0 1.4 0.2 setosa\n", + "2 4.7 3.2 1.3 0.2 setosa\n", + "3 4.6 3.1 1.5 0.2 setosa\n", + "4 5.0 3.6 1.4 0.2 setosa" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "iris.head()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Iris data\n", + "\n", + "Here we consider the [Iris flower data](https://en.wikipedia.org/wiki/Iris_flower_data_set).\n", + "\n", + "- Introduced by statistician and biologist Ronald Fisher in 1936 paper.\n", + "\n", + "- Consists of 50 samples of three different species of Iris (Iris Setosa, Iris Virginica and Iris Versicolor).\n", + "\n", + "- Four features were measured from each sample: the length and the width of the sepals and petals, in centimetres. \n" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:25.316231Z", + "iopub.status.busy": "2024-01-10T00:13:25.315790Z", + "iopub.status.idle": "2024-01-10T00:13:25.327069Z", + "shell.execute_reply": "2024-01-10T00:13:25.326456Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
sepal_lengthsepal_widthpetal_lengthpetal_widthspecies
1456.73.05.22.3virginica
1466.32.55.01.9virginica
1476.53.05.22.0virginica
1486.23.45.42.3virginica
1495.93.05.11.8virginica
\n", + "
" + ], + "text/plain": [ + " sepal_length sepal_width petal_length petal_width species\n", + "145 6.7 3.0 5.2 2.3 virginica\n", + "146 6.3 2.5 5.0 1.9 virginica\n", + "147 6.5 3.0 5.2 2.0 virginica\n", + "148 6.2 3.4 5.4 2.3 virginica\n", + "149 5.9 3.0 5.1 1.8 virginica" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "iris.tail()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Parts of a flower\n", + "\n", + "Measured flower [petals](https://en.wikipedia.org/wiki/Petal) and [sepals](https://en.wikipedia.org/wiki/Sepal).\n", + "\n", + "\n", + "\n", + "[Image credit: [Mariana Ruiz](https://en.wikipedia.org/wiki/Sepal#/media/File:Mature_flower_diagram.svg)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Images of different species\n", + "\n", + "\n", + "\n", + "##### Iris Setosa\n", + "\n", + "\n", + "\n", + "##### Iris Versicolor\n", + "\n", + "\n", + "\n", + "##### Iris Virginica\n", + "\n", + "\n", + "\n", + "[[Image source](https://github.com/jakevdp/sklearn_tutorial)]\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Features matrix\n", + "\n", + "Recall data represented to learning algorithm as \"*features*\".\n", + "\n", + "Each row corresponds to an observed (*sampled*) flower, with a number of *features*." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:25.330360Z", + "iopub.status.busy": "2024-01-10T00:13:25.329898Z", + "iopub.status.idle": "2024-01-10T00:13:25.341334Z", + "shell.execute_reply": "2024-01-10T00:13:25.340725Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
sepal_lengthsepal_widthpetal_lengthpetal_widthspecies
05.13.51.40.2setosa
14.93.01.40.2setosa
24.73.21.30.2setosa
34.63.11.50.2setosa
45.03.61.40.2setosa
\n", + "
" + ], + "text/plain": [ + " sepal_length sepal_width petal_length petal_width species\n", + "0 5.1 3.5 1.4 0.2 setosa\n", + "1 4.9 3.0 1.4 0.2 setosa\n", + "2 4.7 3.2 1.3 0.2 setosa\n", + "3 4.6 3.1 1.5 0.2 setosa\n", + "4 5.0 3.6 1.4 0.2 setosa" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "iris.head()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "In this example we extract a feature matrix, removing species (which we want to predict)." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:25.344521Z", + "iopub.status.busy": "2024-01-10T00:13:25.343963Z", + "iopub.status.idle": "2024-01-10T00:13:25.356078Z", + "shell.execute_reply": "2024-01-10T00:13:25.355443Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
sepal_lengthsepal_widthpetal_lengthpetal_width
05.13.51.40.2
14.93.01.40.2
24.73.21.30.2
34.63.11.50.2
45.03.61.40.2
\n", + "
" + ], + "text/plain": [ + " sepal_length sepal_width petal_length petal_width\n", + "0 5.1 3.5 1.4 0.2\n", + "1 4.9 3.0 1.4 0.2\n", + "2 4.7 3.2 1.3 0.2\n", + "3 4.6 3.1 1.5 0.2\n", + "4 5.0 3.6 1.4 0.2" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "X_iris = iris.drop('species', axis='columns')\n", + "X_iris.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:25.358964Z", + "iopub.status.busy": "2024-01-10T00:13:25.358716Z", + "iopub.status.idle": "2024-01-10T00:13:25.365488Z", + "shell.execute_reply": "2024-01-10T00:13:25.364851Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "pandas.core.frame.DataFrame" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "type(X_iris)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Target array\n", + "\n", + "Consider 1D *target array* containing labels or targets that we want to predict.\n", + "\n", + "May be numerical values or discrete classes/labels." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "In this example we want to predict the flower species from other measurements." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:25.368660Z", + "iopub.status.busy": "2024-01-10T00:13:25.368188Z", + "iopub.status.idle": "2024-01-10T00:13:25.374927Z", + "shell.execute_reply": "2024-01-10T00:13:25.374241Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "0 setosa\n", + "1 setosa\n", + "2 setosa\n", + "3 setosa\n", + "4 setosa\n", + "Name: species, dtype: object" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "y_iris = iris['species']\n", + "y_iris.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:25.377983Z", + "iopub.status.busy": "2024-01-10T00:13:25.377595Z", + "iopub.status.idle": "2024-01-10T00:13:25.381761Z", + "shell.execute_reply": "2024-01-10T00:13:25.381237Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "pandas.core.series.Series" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "type(y_iris)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Features matrix and target vector\n", + "\n", + "\"data-layout\"\n", + "\n", + "[[Image source](https://github.com/jakevdp/sklearn_tutorial)]" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:25.384689Z", + "iopub.status.busy": "2024-01-10T00:13:25.384254Z", + "iopub.status.idle": "2024-01-10T00:13:25.390554Z", + "shell.execute_reply": "2024-01-10T00:13:25.390008Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "(150, 4)" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "X_iris.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:25.393600Z", + "iopub.status.busy": "2024-01-10T00:13:25.393051Z", + "iopub.status.idle": "2024-01-10T00:13:25.399664Z", + "shell.execute_reply": "2024-01-10T00:13:25.399032Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "(150,)" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "y_iris.shape" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Visualizing the data" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:25.402904Z", + "iopub.status.busy": "2024-01-10T00:13:25.402329Z", + "iopub.status.idle": "2024-01-10T00:13:29.947973Z", + "shell.execute_reply": "2024-01-10T00:13:29.947247Z" + } + }, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "%matplotlib inline\n", + "import seaborn as sns; sns.set()\n", + "sns.pairplot(iris, hue='species', height=1.5);" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [ + "inclass_exercise" + ] + }, + "source": [ + "\n", + "How well do you expect classification to perform with these features and why?" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + }, + "tags": [ + "solution", + "inclass_exercise" + ] + }, + "source": [ + "Fairly well since the different classes are reasonably well separated in feature space." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Scikit-Learn's Estimator API" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Scikit-Learn API design principles\n", + "\n", + "- Consistency: All objects share a common interface.\n", + "- Inspection: All specified parameter values exposed as public attributes.\n", + "- Limited object hierarchy: Only algorithms are represented by Python classes; data-sets/parameters represented in standard formats.\n", + "- Composition: Many machine learning tasks can be expressed as sequences of more fundamental algorithms.\n", + "- Sensible defaults: Library defines appropriate default value." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Impact of design principles\n", + "\n", + "- Makes Scikit-Learn easy to use, once the basic principles are understood. \n", + "- Every machine learning algorithm in Scikit-Learn implemented via the Estimator API.\n", + "- Provides a consistent interface for a wide range of machine learning applications." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Typical Scikit-Learn Estimator API steps\n", + "\n", + "1. Choose a class of model (import appropriate estimator class).\n", + "2. Choose model hyperparameters (instantiate class with desired values).\n", + "3. Arrange data into a features matrix and target vector.\n", + "4. Fit the model to data (calling `fit` method of model instance).\n", + "5. Apply model to new data:\n", + " - Supervised learning: often predict targets for unknown data using the `predict` method.\n", + " - For unsupervised learning: often transform or infer properties of the data using the `transform` or `predict` method." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Linear regression as machine learning" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:29.951745Z", + "iopub.status.busy": "2024-01-10T00:13:29.951355Z", + "iopub.status.idle": "2024-01-10T00:13:30.270629Z", + "shell.execute_reply": "2024-01-10T00:13:30.269923Z" + } + }, + "outputs": [ + { + "data": { + "image/png": "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yejq7II44vF4VVXVEPD9KSk2OZ0Zqq5uYGJXhFF761B761B761B763RXe5crw9Qqp6iaFAwAABAMAg0AAIh5BBoAABDzCDQAACDmEWgAAEDMI9AAAICYR6ABAAAxj0ADAABiHoEGAADEPAINAACIeQQaAAAQ8wg0AAAg5pk+bRsAgJ7yeg1Oq0ZIEWgAABFVurdSz2wtU3VdU9s1pz1Nc4ryNDY/28KWIZYx5AQAiJjSvZVavXG3T5iRpOq6Jq3euFuleystahliHYEGABARXq+hZ7aW+b1nw9Yyeb1GhFqEeEKgAQBExL6Kmg49M+1V1TVpX0VNZBqEuEKgAQBERE2D/zBj9j7gmwg0AICIyMxIC+l9wDcRaAAAETE0J1NOu/+w4rKfWMINmEWgAQBEhM2WpDlFeX7vmV2Ux340CAqBBgAQMWPzs7Vo5ogOPTUue5oWzRzBPjQIGhvrAQAiamx+tsbkZbFTMEKKQAMAiDibLUnDBjqtbgbiCIEGANAlzlxCrCDQAAA6xZlLiCVMCgYAdMCZS4g1BBoAgA/OXEIsItAAAHxw5hJikek5NAcOHNC6dev00UcfqaysTLm5udq8eXPb5/X19frd736nkpIS7d+/X6mpqRo1apSWLVum/Px8v+9+9913dfXVV3e4ftFFF+nXv/612aYCAILAmUuIRaYDTVlZmUpKSjR69Gh5vV4Zhm+X46FDh/Tss8/qiiuu0M0336ympiatX79eV155pV588UUNGTKk2++49957lZub2/az08nSPgCIFM5cQiwyHWimTp2qoqIiSdLy5cu1e/dun88HDBig119/Xenp6W3XJkyYoKlTp+qZZ57RihUruv2OvLw8jRw50mzTAAAh0Hrmkr9hJ85cQrQxPYfGZvP/yEknneQTZiQpIyNDZ5xxhiormRUPANGOM5cQiyKyD43b7VZZWZnOO++8gO5fsGCBampqlJWVpYsvvlhLly5V7969e9SGlJTAs1tyss3nn4gcam8dam+daKz9+LNOlS3Zpqdf3auqb/TUuBxp+tF383XusPjYhyYaa58oQl37iASaX/7yl0pKStLs2bP93me32zV//nyde+65SktL0zvvvKP169ervLxcjz76aNDfb7MlyenMMP2cw5He/U0IC2pvHWpvnWir/XcnDtYF4wfpk/KjqnI3yuXorYLck5Uchz0z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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "\n", + "n_samples = 50\n", + "rng = np.random.RandomState(42)\n", + "x = 10 * rng.rand(n_samples)\n", + "y = 2 * x - 1 + rng.randn(n_samples)\n", + "plt.scatter(x, y);" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### 1. Choose a class of model\n", + "\n", + "Every class of model is represented by a Python class." + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.274187Z", + "iopub.status.busy": "2024-01-10T00:13:30.273534Z", + "iopub.status.idle": "2024-01-10T00:13:30.331758Z", + "shell.execute_reply": "2024-01-10T00:13:30.331059Z" + } + }, + "outputs": [], + "source": [ + "from sklearn.linear_model import LinearRegression" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### 2. Choose model hyperparameters\n", + "\n", + "Make instance of model with defined hyperparameters (e.g. y-intersect, regularization)." + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.335535Z", + "iopub.status.busy": "2024-01-10T00:13:30.335036Z", + "iopub.status.idle": "2024-01-10T00:13:30.343050Z", + "shell.execute_reply": "2024-01-10T00:13:30.342450Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
LinearRegression()
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" + ], + "text/plain": [ + "LinearRegression()" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "model = LinearRegression(fit_intercept=True)\n", + "model" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### 3. Arrange data into a features matrix and target vector" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.347095Z", + "iopub.status.busy": "2024-01-10T00:13:30.345723Z", + "iopub.status.idle": "2024-01-10T00:13:30.352782Z", + "shell.execute_reply": "2024-01-10T00:13:30.352163Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "(50, 1)" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "X = x.reshape(n_samples,1)\n", + "X.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.355875Z", + "iopub.status.busy": "2024-01-10T00:13:30.355272Z", + "iopub.status.idle": "2024-01-10T00:13:30.361812Z", + "shell.execute_reply": "2024-01-10T00:13:30.361206Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "(50,)" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "y.shape " + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### 4. Fit the model to data\n" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.364747Z", + "iopub.status.busy": "2024-01-10T00:13:30.364379Z", + "iopub.status.idle": "2024-01-10T00:13:30.371856Z", + "shell.execute_reply": "2024-01-10T00:13:30.371202Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
LinearRegression()
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" + ], + "text/plain": [ + "LinearRegression()" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "model.fit(X, y)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "All model parameters that were learned during the `fit()` process have *trailing underscores*." + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.374971Z", + "iopub.status.busy": "2024-01-10T00:13:30.374528Z", + "iopub.status.idle": "2024-01-10T00:13:30.378642Z", + "shell.execute_reply": "2024-01-10T00:13:30.378102Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "-0.9033107255311146" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "model.intercept_" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.381546Z", + "iopub.status.busy": "2024-01-10T00:13:30.380989Z", + "iopub.status.idle": "2024-01-10T00:13:30.387913Z", + "shell.execute_reply": "2024-01-10T00:13:30.387091Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "array([1.9776566])" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "model.coef_" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Intercept and slope are close to the model used to generate the data (-1 and 2 respectively)." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### 5. Predict targets for unknown data" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.391306Z", + "iopub.status.busy": "2024-01-10T00:13:30.390667Z", + "iopub.status.idle": "2024-01-10T00:13:30.396006Z", + "shell.execute_reply": "2024-01-10T00:13:30.395397Z" + } + }, + "outputs": [], + "source": [ + "n_fit = 50\n", + "xfit = np.linspace(-1, 11, n_fit)\n", + "Xfit = xfit.reshape(n_fit,1)\n", + "yfit = model.predict(Xfit)" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.398979Z", + "iopub.status.busy": "2024-01-10T00:13:30.398541Z", + "iopub.status.idle": "2024-01-10T00:13:30.618415Z", + "shell.execute_reply": "2024-01-10T00:13:30.617751Z" + } + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiQAAAGhCAYAAABRZq+GAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8WgzjOAAAACXBIWXMAAA9hAAAPYQGoP6dpAABNLUlEQVR4nO3deWBUVZ73/3dVZV8qC2Rj38ImsogKiKIi7iigooAtirIp2t30+Ou25xmdx+l+pv35TM+MY7MGUBDEHXGJ2OICLrihgohCBMEA2ci+p6ruff5IJ5K9Eiq5leTz+kdTdavqmyMmH+4553tspmmaiIiIiFjIbnUBIiIiIgokIiIiYjkFEhEREbGcAomIiIhYToFERERELKdAIiIiIpZTIBERERHLKZCIiIiI5QKsLsBbpmliGN2rh5vdbut233Nbaay8p7HynsbKexor73WnsbLbbdhsNq+u7TSBxDBM8vJKrS6jwwQE2ImJCaeoqAy327C6HL+msfKexsp7Givvaay8193GKjY2HIfDu0CiKRsRERGxnAKJiIiIWE6BRERERCynQCIiIiKWUyARERERyymQiIiIiOUUSERERMRyCiQiIiJiOQUSERERsZwCiYiIiFhOgUREREQsp0AiIiIillMgEREREcspkIiIiHRzpmlimqalNSiQiIiIdGNl3x/k2B9/T8aaVZbWEWDpp4uIiIglTI+H3Ne3k/fm62CaBCUlWVqPAomIiEg34y7IJ2PtasoPHwIgasplxM2ZZ2lNCiQiIiLdSOmB/WSuS8FTUowtOISEO+/CeeFEq8tSIBEREekOTLeb09u3kf/WmwAE9+1H0tL7CEpItLiyagokIiIiXZwrL5eMNauoOPIjAFGXTyXu1jnYA4MsruwXCiQiIiJdWMm+b8jckIJRWoo9NJSEO+8m8vwLrC6rAQUSERGRLsh0uzn9ykvk/30HAMH9B5C05D6C4uMtrqxxrQokb731Fq+99hrfffcdRUVF9O/fnzvuuIObb74Zm81We92LL77IunXrOHXqFAMHDmT58uVcfvnlPi9eREREGnKdzqmeovnpKADRV1xJz1tuxR4YaHFlTWtVIHn66afp3bs3Dz30EDExMXzyySc8/PDDZGZmcv/99wPw5ptv8vDDD7N06VImTpxIamoq999/P1u2bGHs2LHt8T2IiIjIPxR/tZes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edMt2AI07CIiImfSb8Z2UvzlF2Rt3IBRXo49PJzEBQuJGDvO6rJERET8kgKJjxmuKnJeeI7C998DIGRIMkmLlxIY28PiykRERPyXAokPVWVlVk/R/HwcgJhrr6fnjFmaohEREWmBflP6SNHnn5K18WnMygocEZEkLlxE+KjRVpclIiLSKSiQnCWjqoqc556lcPcHAIQOHUbS4qUERKttu4iIiLcUSM5CVcYpTq1eSdXJE2CzEXv9DfS4YQY2h8Pq0kRERDoVBZI2KtrzMVmbN2FWVuJwOklcuITwkedYXZaIiEinpEDSSkZlJdlbnqHok48ACB0+gqRFSwiIira2MBERkU5MgaQVKk+eJGPNCqpOnQKbjR43ziT2+huw2e1WlyYiItKpKZB4wTRNij7+kOxnN2NWVeGIiiZp0RLCho+wujQREZEuQYGkBUZFOVmbN1H86R4Aws4ZReI9iwlwOi2uTEREpOtQIGlGZfrPnFq9EldWJtjt9Jx5EzHXXKcpGhERER9TIGmEaZoU7v6AnK1bMN1uAmJiSFp8L6HJQ60uTUREpEtSIKnHU15O1sanKPnycwDCR48hccFCHJGRFlcmIiLSdSmQnKHi+DEyVq/ElZMNDgc9b7qFmCuv1hSNiIhIO1MgoXqKpuD9dzn9wnPVUzQ9elRP0QweYnVpIiIi3UK3DySeslKynt5AyVd7AQgfO656iiY83OLKREREuo9uHUhMw+DEfzxO5c/HweEgbvZtRF9xJTabzerSREREupVuHUiw2bAFOAjq1YvEBQsJGTjI6opERES6pW4dSGw2G33/+LDuiIiIiFis228fURgRERGxXrcPJCIiImI9BRIRERGxnAKJiIiIWE6BRERERCynQCIiIiKWUyARERERyymQiIiIiOUUSERERMRyCiQiIiJiOQUSERERsZwCiYiIiFhOgUREREQsp0AiIiIilrOZpmlaXYQ3TNPEMDpFqT7jcNjxeAyry+gUNFbe01h5T2PlPY2V97rTWNntNmw2m1fXdppAIiIiIl2XpmxERETEcgokIiIiYjkFEhEREbGcAomIiIhYToFERERELKdAIiIiIpZTIBERERHLKZCIiIiI5RRIRERExHIKJCIiImI5BRIRERGxnAKJiIiIWE6BRERERCynQOJnjhw5woIFCxg7diyTJ0/m8ccfp6qqyuqy/M5bb73Fvffey5QpUxg7diwzZszgpZdeQodXt6y0tJQpU6YwbNgwvv32W6vL8Uvbtm1j5syZnHvuuUyYMIGFCxdSUVFhdVl+591332X27NmMGzeOiy++mN/85jekp6dbXZbljh8/ziOPPMKMGTMYOXIk06dPb/S6F198kauvvppzzz2XG2+8kffff7+DK/UvAVYXIL8oLCzkzjvvZMCAATz55JNkZWXx2GOPUVFRwSOPPGJ1eX7l6aefpnfv3jz00EPExMTwySef8PDDD5OZmcn9999vdXl+beXKlXg8HqvL8FurVq0iJSWFpUuXMnbsWPLz89mzZ4/GrJ7PPvuM+++/n5kzZ7J8+XIKCgp44oknuPvuu3n99dcJCQmxukTLpKWlsWvXLsaMGYNhGI3+RenNN9/k4YcfZunSpUycOJHU1FTuv/9+tmzZwtixYzu+aH9git9YvXq1OXbsWDM/P7/2seeee84cMWKEmZmZaV1hfig3N7fBY//yL/9innfeeabH47Ggos7hxx9/NMeOHWtu3brVHDp0qLl//36rS/IrR44cMUeOHGl+8MEHVpfi9x5++GFz6tSppmEYtY/t2bPHHDp0qPnFF19YWJn1zvwZ9Ic//MG8/vrrG1xz1VVXmb/73e/qPHbbbbeZCxcubPf6/JWmbPzI7t27mTRpEtHR0bWPXXvttRiGwccff2xdYX4oNja2wWMjRoygpKSEsrIyCyrqHP785z8zZ84cBg4caHUpfumVV16hT58+XHrppVaX4vfcbjfh4eHYbLbaxyIjIwG6/dSp3d78r9b09HSOHTvGtddeW+fx6667jj179nTbaXoFEj9y9OhRBg0aVOcxp9NJXFwcR48etaiqzmPv3r0kJCQQERFhdSl+aceOHRw+fJhly5ZZXYrf2rdvH0OHDmXlypVMmjSJUaNGMWfOHPbt22d1aX7npptu4siRI2zZsoXi4mLS09P5z//8T0aOHMl5551ndXl+rebnef2/GAwePBiXy9Vt1+EokPiRoqIinE5ng8ejoqIoLCy0oKLO48svvyQ1NZW7777b6lL8Unl5OY899hjLly9XYGtGTk4OH330Edu3b+df//VfWbFiBTabjbvvvpvc3Fyry/Mr559/Pn/729/461//yvnnn8+0adPIzc0lJSUFh8NhdXl+rebnef2f9zVfd9ef9wok0ullZmayfPlyJkyYwPz5860uxy+tWrWKHj16cPPNN1tdil8zTZOysjKeeOIJrrnmGi699FJWrVqFaZps3rzZ6vL8yldffcXvf/97br31VjZu3MgTTzyBYRgsXrxYO5KkTbTLxo84nU6Ki4sbPF5YWEhUVJQFFfm/oqIiFi1aRHR0NE8++WSLc7fd0cmTJ9mwYQMrVqyo/fNVs86mrKyM0tJSwsPDrSzRbzidTqKjoxk+fHjtY9HR0YwcOZIff/zRwsr8z5///GcmTpzIQw89VPvY2LFjueyyy9i+fTu33XabhdX5t5qf58XFxcTFxdU+XlRUVOf57kaBxI8MGjSowVqR4uJicnJyGqwtEaioqGDJkiUUFxfz/PPP1y6ok7pOnDiBy+Vi8eLFDZ6bP38+Y8aM4YUXXrCgMv8zZMgQfv7550afq6ys7OBq/NuRI0e44oor6jyWmJhITExMk2Mo1Wp+ntdfN3j06FECAwPp27evVaVZSoHEj0yZMoXVq1fXWUuyY8cO7HY7kydPtrg6/+J2u/ntb3/L0aNH2bJlCwkJCVaX5LdGjBjBpk2b6jz2/fff85e//IVHH32Uc88916LK/M/ll1/OK6+8wvfff8+IESMAyM/P57vvvuOuu+6ytjg/06tXLw4ePFjnsZMnT5Kfn0/v3r0tqqpz6Nu3LwMGDGDHjh1Mmzat9vHU1FQmTZpEUFCQhdVZR4HEj8yZM4dnnnmGZcuWsWTJErKysnj88ceZM2eOfuHW8+ijj/L+++/z0EMPUVJSwjfffFP73MiRI7vt/9CNcTqdTJgwodHnzjnnHM4555wOrsh/TZs2jXPPPZdf//rXLF++nODgYNauXUtQUBDz5s2zujy/MmfOHP793/+dP//5z0ydOpWCgoLatUr1t7N2N+Xl5ezatQuoDmklJSXs2LEDgAsvvJDY2FgeeOABHnzwQfr168eECRNITU1l//793Xqtks3s7hvG/cyRI0f405/+xNdff014eDgzZsxg+fLl+gVbz9SpUzl58mSjz7377rv06dOngyvqXD777DPmz5/PSy+9pDsk9eTl5fGXv/yF999/H5fLxfnnn88f//hHhgwZYnVpfsU0TZ577jm2bt1Keno64eHhjB07luXLlzN48GCry7PUiRMnGkxn1di0aVPtXxBefPFFUlJSOHXqFAMHDuR3v/sdl19+eUeW6lcUSERERMRy2pIgIiIillMgEREREcspkIiIiIjlFEhERETEcgokIiIiYjkFEhEREbGcAomIiIhYToFERERELKdAIiIiIpZTIBERERHLKZCIiIiI5f4fhbmB1Xf/nf4AAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.scatter(x, y)\n", + "plt.plot(xfit, yfit, 'r');" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Supervised learning: classification\n", + "\n", + "Consider Iris data-set and predict species." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Split data into training and test sets (hint: [`train_test_split`](http://scikit-learn.org/stable/modules/generated/sklearn.model_selection.train_test_split.html) is a convenient scikit-learn function for this task)." + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.621937Z", + "iopub.status.busy": "2024-01-10T00:13:30.621464Z", + "iopub.status.idle": "2024-01-10T00:13:30.627694Z", + "shell.execute_reply": "2024-01-10T00:13:30.627089Z" + } + }, + "outputs": [], + "source": [ + "from sklearn.model_selection import train_test_split\n", + "\n", + "X_train, X_test, y_train, y_test = train_test_split(X_iris, y_iris, test_size=0.5, random_state=1)" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.630352Z", + "iopub.status.busy": "2024-01-10T00:13:30.630134Z", + "iopub.status.idle": "2024-01-10T00:13:30.641703Z", + "shell.execute_reply": "2024-01-10T00:13:30.641083Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
sepal_lengthsepal_widthpetal_lengthpetal_width
746.42.94.31.3
1166.53.05.51.8
935.02.33.31.0
1006.33.36.02.5
895.52.54.01.3
\n", + "
" + ], + "text/plain": [ + " sepal_length sepal_width petal_length petal_width\n", + "74 6.4 2.9 4.3 1.3\n", + "116 6.5 3.0 5.5 1.8\n", + "93 5.0 2.3 3.3 1.0\n", + "100 6.3 3.3 6.0 2.5\n", + "89 5.5 2.5 4.0 1.3" + ] + }, + "execution_count": 26, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "X_train.head() " + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "\n", + "Use a Gaussian Naive Bayes (`GaussianNB`) model to predict Iris species. Then evaluate performance on test data.\n", + "\n", + "(Hint: choose, instantiate, fit and predict.) \n", + "\n", + "See Scikit-Learn documentation on [`GaussianNB`](http://scikit-learn.org/stable/modules/generated/sklearn.naive_bayes.GaussianNB.html).\n", + "\n", + "Evaluate performance using simple [`accuracy_score`](http://scikit-learn.org/stable/modules/generated/sklearn.metrics.accuracy_score.html#sklearn.metrics.accuracy_score).\n", + "\n", + "(Do not set any priors.)" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.644869Z", + "iopub.status.busy": "2024-01-10T00:13:30.644398Z", + "iopub.status.idle": "2024-01-10T00:13:30.654902Z", + "shell.execute_reply": "2024-01-10T00:13:30.654270Z" + }, + "tags": [ + "solution" + ] + }, + "outputs": [], + "source": [ + "from sklearn.naive_bayes import GaussianNB # 1. choose model class\n", + "model = GaussianNB() # 2. instantiate model\n", + "model.fit(X_train, y_train) # 3. fit model to data\n", + "y_model = model.predict(X_test) # 4. predict on new data" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "Evaluate performance on test data." + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.658096Z", + "iopub.status.busy": "2024-01-10T00:13:30.657663Z", + "iopub.status.idle": "2024-01-10T00:13:30.665168Z", + "shell.execute_reply": "2024-01-10T00:13:30.664579Z" + }, + "tags": [ + "solution" + ] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "0.96" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from sklearn.metrics import accuracy_score\n", + "accuracy_score(y_test, y_model)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Unsupervised learning: dimensionality reduction\n", + "\n", + "Reduce dimensionality of Iris data for visualisation or to discover structure.\n", + "\n", + "Recall the original Iris data has four features." + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.667996Z", + "iopub.status.busy": "2024-01-10T00:13:30.667639Z", + "iopub.status.idle": "2024-01-10T00:13:30.676274Z", + "shell.execute_reply": "2024-01-10T00:13:30.675749Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
sepal_lengthsepal_widthpetal_lengthpetal_width
05.13.51.40.2
14.93.01.40.2
24.73.21.30.2
34.63.11.50.2
45.03.61.40.2
\n", + "
" + ], + "text/plain": [ + " sepal_length sepal_width petal_length petal_width\n", + "0 5.1 3.5 1.4 0.2\n", + "1 4.9 3.0 1.4 0.2\n", + "2 4.7 3.2 1.3 0.2\n", + "3 4.6 3.1 1.5 0.2\n", + "4 5.0 3.6 1.4 0.2" + ] + }, + "execution_count": 29, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "X_iris.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.679207Z", + "iopub.status.busy": "2024-01-10T00:13:30.678646Z", + "iopub.status.idle": "2024-01-10T00:13:30.685276Z", + "shell.execute_reply": "2024-01-10T00:13:30.684661Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "(150, 4)" + ] + }, + "execution_count": 30, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "X_iris.shape" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Compute principle component analysis (`PCA`), with 2 components, and apply transform. Plot data in PCA space. \n", + "\n", + "(Hint: choose, instantiate, fit and transform.)\n", + "\n", + "See Scikit-Learn documentation on [`PCA`](http://scikit-learn.org/stable/modules/generated/sklearn.decomposition.PCA.html).\n", + "\n", + "See Seaborn documentation on [`lmplot`](https://seaborn.pydata.org/generated/seaborn.lmplot.html)." + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.688494Z", + "iopub.status.busy": "2024-01-10T00:13:30.687909Z", + "iopub.status.idle": "2024-01-10T00:13:30.703068Z", + "shell.execute_reply": "2024-01-10T00:13:30.702344Z" + }, + "tags": [ + "solution" + ] + }, + "outputs": [], + "source": [ + "from sklearn.decomposition import PCA # 1. Choose the model class\n", + "model = PCA(n_components=2) # 2. Instantiate the model with hyperparameters\n", + "model.fit(X_iris) # 3. Fit to data. Notice y is not specified!\n", + "X_2D = model.transform(X_iris) # 4. Transform the data to two dimensions " + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.706164Z", + "iopub.status.busy": "2024-01-10T00:13:30.705697Z", + "iopub.status.idle": "2024-01-10T00:13:30.720075Z", + "shell.execute_reply": "2024-01-10T00:13:30.719309Z" + }, + "tags": [ + "solution" + ] + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
sepal_lengthsepal_widthpetal_lengthpetal_widthspeciesPCA1PCA2
05.13.51.40.2setosa-2.6841260.319397
14.93.01.40.2setosa-2.714142-0.177001
24.73.21.30.2setosa-2.888991-0.144949
34.63.11.50.2setosa-2.745343-0.318299
45.03.61.40.2setosa-2.7287170.326755
\n", + "
" + ], + "text/plain": [ + " sepal_length sepal_width petal_length petal_width species PCA1 \\\n", + "0 5.1 3.5 1.4 0.2 setosa -2.684126 \n", + "1 4.9 3.0 1.4 0.2 setosa -2.714142 \n", + "2 4.7 3.2 1.3 0.2 setosa -2.888991 \n", + "3 4.6 3.1 1.5 0.2 setosa -2.745343 \n", + "4 5.0 3.6 1.4 0.2 setosa -2.728717 \n", + "\n", + " PCA2 \n", + "0 0.319397 \n", + "1 -0.177001 \n", + "2 -0.144949 \n", + "3 -0.318299 \n", + "4 0.326755 " + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "iris['PCA1'] = X_2D[:, 0]\n", + "iris['PCA2'] = X_2D[:, 1]\n", + "iris.head() " + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.723401Z", + "iopub.status.busy": "2024-01-10T00:13:30.723006Z", + "iopub.status.idle": "2024-01-10T00:13:31.391220Z", + "shell.execute_reply": "2024-01-10T00:13:31.390526Z" + }, + "tags": [ + "solution" + ] + }, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "sns.lmplot(data=iris, x=\"PCA1\", y=\"PCA2\", hue='species', fit_reg=False);" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "How well do you expect classification to perform using PCA components as features and why?" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + }, + "tags": [ + "solution" + ] + }, + "source": [ + "Very well since the different classes are well separated in PCA feature space." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Unsupervised learning: clustering\n", + "\n", + "Attempt to find \"groups\" in Iris data without given labels or training data.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + " \n", + "Cluster Iris data into 3 components using Gaussian Mixture Model (GMM). Plot the 3 components separately in PCA space.\n", + "\n", + "(Hint: choose, instantiate, fit and predict.)\n", + "\n", + "See Scikit-Learn documentation on [`GaussianMixture`](http://scikit-learn.org/stable/modules/generated/sklearn.mixture.GaussianMixture.html)." + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:31.394705Z", + "iopub.status.busy": "2024-01-10T00:13:31.394206Z", + "iopub.status.idle": "2024-01-10T00:13:31.493375Z", + "shell.execute_reply": "2024-01-10T00:13:31.492329Z" + }, + "tags": [ + "solution" + ] + }, + "outputs": [], + "source": [ + "from sklearn.mixture import GaussianMixture # 1. Choose the model class\n", + "model = GaussianMixture(n_components=3) # 2. Instantiate the model with hyperparameters\n", + "model.fit(X_iris) # 3. Fit to data. Notice y is not specified!\n", + "y_gmm = model.predict(X_iris) # 4. Determine cluster labels" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:31.497402Z", + "iopub.status.busy": "2024-01-10T00:13:31.496762Z", + "iopub.status.idle": "2024-01-10T00:13:33.256040Z", + "shell.execute_reply": "2024-01-10T00:13:33.255265Z" + }, + "tags": [ + "solution" + ] + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABlAAAAHkCAYAAABBiGI5AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8WgzjOAAAACXBIWXMAAA9hAAAPYQGoP6dpAADVGElEQVR4nOzdfXxcdZn//9c5Z2YymZlMk7RpmiZNQm9MCwUKuNCKUFqhBYKL3MiNylZBrC674OquC+t+V91dV1fXqty4CKJWUNAFEaFIC1oB4Vd25R4pkVKSNGkb0g5pMjOZzJyb3x9DQ9OkbdJOMknm/Xw8eJScc+ac65ppc5K55nNdhud5HiIiIiIiIiIiIiIiItLPzHcAIiIiIiIiIiIiIiIi440KKCIiIiIiIiIiIiIiIvtRAUVERERERERERERERGQ/KqCIiIiIiIiIiIiIiIjsRwUUERERERERERERERGR/aiAIiIiIiIiIiIiIiIish8VUERERERERERERERERPajAoqIiIiIiIiIiIiIiMh+VEARERERERERERERERHZjwooInJEnnnmGRoaGnjmmWfyHYqIiMiEpHupiIjIkdG9VERERosKKCIyrj333HPcdNNNdHd35zuUw5ZOp/nmN7/J+9//fo477jg+/OEP89RTT+U7LBERKRAT/V6aSCS48cYbueqqqzj55JNpaGjgl7/8Zb7DEhGRAjLR76UvvfQS//qv/0pjYyOLFi3ijDPO4LrrruPNN9/Md2giIuOeCigiMq49//zz3HzzzRP2B1WA66+/nh//+Md88IMf5Itf/CKWZfGpT32KP/7xj/kOTURECsBEv5e+/fbb3HLLLWzdupWGhoZ8hyMiIgVoot9Lf/CDH7BhwwaWLFnCF7/4RS655BL++Mc/cuGFF/LnP/853+GJiIxrvnwHICKSD729vRQXF4/6dV566SXWrVvHF77wBa666ioAPvShD3HeeefxX//1X9xzzz2jHoOIiMhoGKt76fTp0/nDH/5ARUUFL7/8MhdffPGoX1NERGQsjNW99OMf/zj/9V//RSAQ6N927rnn8sEPfpDbbruN//qv/xr1GEREJiqtQBGRg+ro6OCf/umfeP/738/ChQtZvnw5X/rSl0in0wd8zPLly7n++usHbb/iiiu44oorBmy78847aWxs5Pjjj+cv/uIvuPDCC3nwwQcBuOmmm/jGN74BwAc+8AEaGhpoaGigra2t//EPPPAAF154Iccddxwnn3wyf/d3f8eOHTsGXfe8887jlVde4aMf/SjHH388a9asOeznZCQeeeQRLMvi0ksv7d9WVFTExRdfzPPPPz8oVhERmXx0Lz0ygUCAioqKMbmWiIiMT7qXHpkTTzxxQPEEoL6+nnnz5rF169YxiUFEZKLSChQROaCOjg4uvvhienp6uOSSS5g9ezYdHR2sX7+eVCo16AewkfrFL37Bv//7v7Ny5Ur+6q/+ir6+PpqamnjxxRf54Ac/yFlnnUVzczMPPfQQN9xwA2VlZQCUl5cD8N///d9897vf5ZxzzuHiiy8mFotx11138dGPfpRf/epXRKPR/mt1dXVx9dVX09jYyF/+5V8yderUA8aVTqeJx+PDymFvLAeyefNm6uvriUQiA7Yfd9xx/furqqqGdS0REZl4dC89tEPdS0VEpLDpXnpoh3Mv9TyPXbt2MW/evBE/VkSkkKiAIiIHtGbNGnbt2sUvfvELjj322P7t1113HZ7nHfH5f//73zNv3jxuvPHGIffPnz+fo48+moceeogzzzyTmpqa/n3t7e3cdNNNfPazn+XTn/50//YVK1ZwwQUX8LOf/WzA9s7OTr7yla9w2WWXHTKuvT8YD0dTU9NB93d2dg75qdm92956661hXUdERCYm3UsP7VD3UhERKWy6lx7a4dxLf/3rX9PR0cG111474seKiBQSFVBEZEiu6/LYY4+xbNmyAT+k7mUYxhFfIxqNsnPnTl566aX+FRnD9eijj+K6Lueccw6xWKx/+7Rp06irq+OZZ54Z8INqIBDgwgsvHNa53//+9/OjH/1oRPEcyIE+EVVUVNS/X0REJifdS3NzLxURkcKle+no3EvfeOMN/vVf/5UTTjiBCy64YFSuISIyWaiAIiJDisVixOPxUV3Oe/XVV/P000/z4Q9/mLq6Ok499VTOO+88TjrppEM+trm5Gc/zWLFixZD7fb6B394qKyuHvbR7+vTpTJ8+fVjHHkowGByyL29fX1//fhERmZx0L83NvVRERAqX7qW5v5d2dnayevVqSkpK+O53v4tlWTm/hojIZKICioiMGcdxBvxwNmfOHB555BF+//vf8+STT7JhwwZ+9rOfcc011xxyGbHruhiGwe233z7kD3yhUGjA1yMpVKRSKXp6eoZ17KGG2lZUVNDR0TFoe2dnJ4DeXBIRkREpxHupiIhILhXyvbSnp4err76anp4efvrTn1JZWTnseERECpUKKCIypPLyciKRCK+//vqIHztlyhS6u7sHbd++fTuzZs0asC0UCnHuuedy7rnnkk6n+du//VtuvfVWVq9eTVFR0QGXZNfW1uJ5HjU1NRx11FEjjvFgHn744Zz1mp0/fz7PPPMM8Xh8wCD5F198EYAFCxYcfqAiIjKu6V6qGSgiInJkdC/N3b20r6+PT3/60zQ3N/OjH/2IuXPnHmmIIiIFQQUUERmSaZqceeaZ/PrXv+bll18e1G/W87wD/hA5a9Ysnn32WdLpdP/y5I0bN7Jjx44BP6i+/fbblJWV9X8dCASYM2cOTzzxBJlMhqKiIoqLiwEGffJmxYoVrFmzhptvvpn/+q//GhCL53l0dXUNOPdI5LLX7Nlnn80Pf/hDfv7zn3PVVVcBkE6n+eUvf8nxxx9PVVVVTq4jIiLjj+6lmoEiIiJHRvfS3NxLHcfhs5/9LC+88ALf+973OOGEE3JyXhGRQqACiogc0Oc+9zmeeuoprrjiCi655BLmzJlDZ2cnjzzyCD/72c+IRqNDPu7DH/4w69ev55Of/CTnnHMOra2tPPjgg9TW1g447qqrrmLatGmceOKJTJ06la1bt3LXXXexdOnS/tUaxxxzDADf/va3Offcc/H7/Sxbtoza2lo++9nP8q1vfYv29nbOPPNMwuEwbW1tPPbYY1xyySX9BYuRymWv2eOPP56zzz6bNWvWsHv3burq6rj//vtpb2/nq1/9ak6uISIi45fupblx11130d3dzVtvvQVk3wDbuXMnAFdccQUlJSU5u5aIiIwvupceua9//ev87ne/Y9myZXR1dfHAAw8M2H/++efn5DoiIpORCigickCVlZX84he/4Lvf/S4PPvgg8XicyspKTj/99IP2bj3ttNO4/vrr+dGPfsR//Md/sHDhQm699Vb+8z//c8Bxl156KQ8++CA/+tGPSCaTzJgxgyuuuIK//uu/7j/muOOO47rrruOee+7hySefxHVdfvvb3xIKhfjUpz5FfX09P/7xj7nlllsAmDFjBqeeeirLly8fnSflMHzjG9/gO9/5Dr/+9a/Zs2cPDQ0N3HrrrfzFX/xFvkMTEZFRpntpbvzwhz+kvb29/+sNGzawYcMGAP7yL/9SBRQRkUlM99Ij99prrwHZDyBs3Lhx0H4VUEREDszwPM/LdxAiIiIiIiIiIiIiIiLjiZnvAERERERERERERERERMYbFVBERERERERERERERET2M+FnoLS0tHDHHXfw4osv8vrrrzN79mweeuihQz5u+fLlA/oo7/XSSy9RVFQ0GqGKiIiIiIiIiIiIiMgEMeELKK+//jqPP/44xx9/PK7rMpKRLitXruTKK68csC0QCOQ6RBERERERERERERERmWAmfAFl+fLlnHnmmQBcf/31vPLKK8N+7LRp01i0aNEoRSYiIiIiIiIiIiIiIhPVhJ+BYpoTPgURERERERERERERERlnCrr68OCDD7Jw4UJOOOEErr76apqamvIdkoiIiIiIiIiIiIiIjAMTvoXX4Vq+fDnHHXccM2fOZNu2bdx666185CMf4Ve/+hWzZs067PM6jkt3d28OIx0ZwzCYMqWYPXt6RzQPZqJRnpNPoeSqPCeXQskThpdrWVk4J9fSvXTsFEquynNyUZ6TT6HkWkj3UtDrOtkoz8mnUHJVnpPLcPPM1f1UBMDwJtG/qr0zUB566KERP/att97inHPO4YMf/CBf/vKXDzsGz/MwDOOwHy8iIlLodC8VERE5MrqXioiIiORGwa5A2d/06dM56aST+NOf/nRE53Fdj+7uZI6iGjnLMolGi+nu7sVx3LzFMdqU5+RTKLkqz8mlUPKE4eWaq0/56F46dgolV+U5uSjPyadQci2keynodZ1slOfkUyi5Ks/JZbh5agWK5JIKKKPAtvP/jcpx3HERx2hTnpNPoeSqPCeXQskTxi7X8fB86nWdfJTn5KI8J59CybWQ7qWg13WyUZ6TT6Hkqjwnl0LJU8aHgh4iv6+Ojg6effZZjj322HyHIiIiIiIiIiIiIiIieTbhV6D09vby+OOPA9De3k48HueRRx4B4OSTT6a8vJxVq1axfft2Hn30UQAeeughNm7cyNKlS5k+fTrbtm3jtttuw7IsPvGJT+QtFxERERERERERERERGR8mfAFl9+7dXHfddQO27f36Jz/5Caeccgqu6+I4Tv/+mpoa3nrrLf7jP/6Dnp4eSkpKWLx4Mddeey2zZs0a0/hFRERERERERERERGT8mfAFlJqaGpqamg56zJ133jng60WLFg3aJiIiIiIiIiIiIiIispdmoIiIiIiIiIiIiIiIiOxHBRQREREREREREREREZH9qIAiIiIiIiIiIiIiIiKyHxVQRERERERERERERERE9qMCioiIiIiIiIiIiIiIyH58+Q5ARERERERERERERMaG67m09WwnnkkQ8YepKZmJaehz9iJDUQFFREREREREREREpAA0xbawoWUjHclOHM/BMiwqQxWsqFtGQ/ncfIcnMu6otCgiIiIiIiIiIiIyyTXFtnB30320x3dQZAWIBiIUWQHaEzu4u+k+mmJb8h2iyLijAoqIiIiIiIiIiIjIJOZ6LhtaNpKy+ygtihKw/JiGScDyUxqIknL62NCyEddz8x2qyLiiAoqIiIiIiIiIiIjIJNbWs52OZCdhfwjDMAbsMwyDsC9ER7KTtp7teYpQZHzSDBQZNa7n0drRQzyZIRLyU1tZgrnfN2gREREREREREREZXfFMAsdz8JnWkPt9pkXSdohnEmMcmcj4pgKKjIrNzTHWbWphZyyJ43hYlsGM8hCNi+tYUF+e7/BEREREREREREQKRsQfxjIsbNchYA1uSmS72YHyEX84D9GJjF9q4SU5t7k5xtr1TbR1xinyW0QjAYr8Fm2dCdaub2JzcyzfIYqIiIiIiIiIiBSMmpKZVIYqSNhJPM8bsM/zPBJ2kspQBTUlM/MUocj4pAKK5JTreazb1EIqbVMaKSLgtzANg4DfojQSIJV2WLepBXe/b9QiIiIiIiIiIiIyOkzDZEXdMoJWEV3pbtJOBtdzSTsZutLdBK0gK+qWYRp6u1hkX/oXITnV2tHDzliScNA/9ECqoI+dsSStHT15ilBERERERERERKTwNJTP5fKGi6gOV9HnpOlOx+lz0lSHq7i84UIayufmO0SRcUczUCSn4skMjuPhKx66NufzmSRTNvFkZowjExERERERERERKWwN5XOZVzabtp7txDMJIv4wNSUztfJE5ABUQJGcioT8WJaBbbsE/Nag/bbtYlkGkZA/D9GJiIiIiIiIiIgUNtMwqY3W5DsMkQlBpUXJqdrKEmaUh0ik7KEHUqVsZpSHqK0syVOEIiIiIiIiIiIiIiKHpgKK5JRpGDQuriMYsOiKp0lnHFzPI51x6IqnCQYsGhfXYe43H0VEREREREREREREZDxRAUVybkF9OatWNlBTEaYv49AdT9OXcaipCLNqZQML6svzHaKIiIiIiIiIiIiIyEFpBoqMigX15TTUldHa0UM8mSES8lNbWaKVJyIiIiIiIiIiIiIyIaiAIqPGNAzqZ0TzHYaIiIiIiIiIiIiIyIiphZeIiIiIiIiIiIiIiMh+VEARERERERERERERERHZjwooIiIiIiIiIiIiIiIi+1EBRUREREREREREREREZD8qoIiIiIiIiIiIiIiIiOxHBRQREREREREREREREZH9qIAiIiIiIiIiIiIiIiKyHxVQRERERERERERERERE9qMCioiIiIiIiIiIiIiIyH58+Q5AxjfX82jt6CGezBAJ+amtLME0jHyHJSIiIiIiIiIiIiIyqlRAkQPa3Bxj3aYWdsaSOI6HZRnMKA/RuLiOBfXl+Q5PRERERERERERExpDrubT1bCeeSRDxh6kpmYlpqMmRTF4qoMiQNjfHWLu+iVTaJhz04ys2sW2Xts4Ea9c3sWplg4ooIiIiIiIiIiIiBaIptoUNLRvpSHbieA6WYVEZqmBF3TIayufmOzyRUaHyoAzieh7rNrWQStuURooI+C1MwyDgtyiNBEilHdZtasH1vHyHKiIiIiIiIiIiIqOsKbaFu5vuoz2+gyIrQDQQocgK0J7Ywd1N99EU25LvEEVGhQooMkhrRw87Y0nCQT/GfvNODMMgHPSxM5aktaMnTxGKiIiIiIiIiIjIWHA9lw0tG0nZfZQWRQlYfkzDJGD5KQ1ESTl9bGjZiOu5+Q5VJOdUQJFB4skMjuPh8w3918PnM3Ecj3gyM8aRiYiIiIiIiIiIyFhq69lOR7KTsD809IetfSE6kp209WzPU4Qio0cFFBkkEvJjWQa2PXTV2LZdLMsgEvKPcWQiIiIiIiIiIiIyluKZBI7n4DOtIff7TAvHc4hnEmMcmcjoUwFFBqmtLGFGeYhEysbbb86J53kkUjYzykPUVpbkKUIREREREREREREZCxF/GMuwsF1nyP22mx0oH/GHxzgykdGnAooMYhoGjYvrCAYsuuJp0hkH1/NIZxy64mmCAYvGxXWY+y3ZExERERERERERkcmlpmQmlaEKEnZy6A9b20kqQxXUlMzMU4Qio0cFFBnSgvpyVq1soKYiTF/GoTuepi/jUFMRZtXKBhbUl+c7RBERERERERERERllpmGyom4ZQauIrnQ3aSeD67mknQxd6W6CVpAVdcswDb3VLJOPL98ByPi1oL6chroyWjt6iCczREJ+aitLtPJERERERERERESkgDSUz+XyhovY0LKRjmQnSTvbtqs6XMWKumU0lM/Nd4gio0IFFDko0zConxHNdxgiIiIiIiIiIiKSRw3lc5lXNpu2nu3EMwki/jA1JTO18kQmNRVQZFhcz9NKFBERERERERERkQJmGia10Zp8hyEyZlRAkUPa3Bxj3aYWdsaSOI6HZRnMKA/RuLhOs1BEREREREREREREZFLS+io5qM3NMdaub6KtM06R3yIaCVDkt2jrTLB2fRObm2P5DlFEREREREREREREJOdUQJEDcj2PdZtaSKVtSiNFBPwWpmEQ8FuURgKk0g7rNrXgel6+QxURERERERERERERySkVUOSAWjt62BlLEg76Mfabd2IYBuGgj52xJK0dPXmKUERERERERERERERkdKiAIgcUT2ZwHA+fb+i/Jj6fieN4xJOZMY5MRERERERERERERGR0qYAiBxQJ+bEsA9t2h9xv2y6WZRAJ+cc4MhERERERERERERGR0aUCihxQbWUJM8pDJFI23n5zTjzPI5GymVEeorayJE8RioiIiIiIiIiIiIiMDhVQ5IBMw6BxcR3BgEVXPE064+B6HumMQ1c8TTBg0bi4DnO/+SgiIiIiIiIiIiIiIhOdCihyUAvqy1m1soGaijB9GYfueJq+jENNRZhVKxtYUF+e7xBFRERERERERERERHLOl+8AZPxbUF9OQ10ZrR09xJMZIiE/tZUlWnkiIiIiIiIiIiIiIpPWhC+gtLS0cMcdd/Diiy/y+uuvM3v2bB566KFDPs7zPG6//XZ+9rOfEYvFWLBgATfccAOLFi0a/aAnINMwqJ8RzXcYIiIiIiIiIiIiIiJjYsK38Hr99dd5/PHHqaurY86cOcN+3O23386NN97Ixz/+cb7//e9TUVHBlVdeybZt20YxWhERERERERERERERmQgmfAFl+fLlPP7449x4440cc8wxw3pMX18f3//+97nyyiv5+Mc/zpIlS1izZg2lpaXccccdoxyxiIiIiIiIiIiIiIiMdxO+gGKaI0/hueeeIx6Pc8455/RvCwQCnHXWWTzxxBO5DE9ERERERERERERERCagCV9AORxbt24FYPbs2QO2z5kzh+3bt5NKpfIRloiIiIiIiIiIiIiIjBMTfoj84eju7iYQCFBUVDRgezQa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npe7XtEvNq7V9t6dcv1sUXF22SxdMX+pTq+dN6Ff+21ve5s+85nPaM2aNXrve987ePvatWslSZdcconWr18/6n0//vGP613vepduuukmlZSUKJVK6QMf+IDKy8v1la98RZJ03333qaenZ0y7Rz7zmc/oHe94h+677z795je/0Ve/+lW1tLTowgsvHPX8ffv26V3vepck6bbbblNDQ4Pa2trU3n7ozVodHR264oor1NjYqHQ6rVWrVuk973mPHn30Uc2ZM2dM36PxoIBSQHxjtGVHj7Z0JSTfU3117IhzS3xjtOrZNqXSripKw4f6VAYdBQO24n1prXq2TS1Nlcw/AQAAyAPLsuXUNB/XfY3xlV6/Kls8iVYObcVVVi3T0yVl+mUySclIxrKkUIkCp5wtb8vzEzbEHgAATG9u5wal16+SH9+hmb6n6uqgdoQSCoYrZYdLBs8zxijhJlUfq1ND2ew8RgxMrJe7XtF3/vxj9WdSKgvHFLADcn1XbfFOfefPP9aNb3j3hBZRysrKdNFFF2nlypVDCigrV67Ueeedp4qKisPe99prr9WNN944+PmPfvQj7d27Vw888IAaGrJt904//XQtXbp0TAWUpUuX6h//8R8lSeeee66efPJJPf7444ctoPz7v/+79u7dq8cee2zw65177rlDzrnlllsG/+77vs477zy99NJL+vnPf67bb7/9qDGNFwWUArFxa7dWPdumru6kfCPZllRbFT3i/JL2rl7t7E4qFgmO3qcyEtDO7qTau3qHDJ4HAADA1OfvaZcf3yErXDriuZ7clORmJONLJRVSICj5vpRJyf37n2SFS2RSfVKsMudD7AEAwPQ1fHer7QT0D6m0HnFcxfu7FTMzFAxH5fqeEm5SESeipU2LaXmFguUbX7/YuFb9mZSqSioOvUHdCamqJKju/v36xca1WnDCqRP6/2DZsmW67bbbtH37ds2ePVu7du3Sf/3Xf+lLX/rSEe/3D//wD0M+f/nll3XqqacOFjMkqaGhQfPmja0AdP755w/+3bIsnXTSSdq5c+dhz3/mmWd0zjnnDPl6w/3973/Xv/zLv+iFF17Q3r17B2/funXrmGIaL356FYCDbbg6dvcpHHJUWRZWOOSoY3dCKx5v1cat3aPery+ZkecZBQKj/zMIBGx5nlFfMjOR4QMAAGACmFSv5HsHWnINOSKT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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "iris['cluster'] = y_gmm\n", + "sns.lmplot(data=iris, x=\"PCA1\", y=\"PCA2\", hue='species',\n", + " col='cluster', fit_reg=False);" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + }, + "tags": [ + "solution" + ] + }, + "source": [ + "The GMM has done a reasonably good job of separating the different classes. Setosa is perfectly separated in one cluster, while there remains some mixing between versicolor and viginica." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [ + "exercise_pointer" + ] + }, + "source": [ + "**Exercises:** *You can now complete Exercise 1 in the exercises associated with this lecture.*" + ] + } + ], + "metadata": { + "celltoolbar": "Slideshow", + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.18" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/week1/slides/Lecture01_Intro.ipynb b/week1/slides/Lecture01_Intro.ipynb new file mode 100644 index 0000000..b29942f --- /dev/null +++ b/week1/slides/Lecture01_Intro.ipynb @@ -0,0 +1,1373 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "# Lecture 1: Introduction to machine learning" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "skip" + }, + "tags": [] + }, + "source": [ + "![](https://www.tensorflow.org/images/colab_logo_32px.png)\n", + "[Run in colab](https://colab.research.google.com/drive/1zNonj4k0gGhz8Q9kg-5kMk2y9Rq-yjJQ)" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:11.425191Z", + "iopub.status.busy": "2024-01-10T00:13:11.424955Z", + "iopub.status.idle": "2024-01-10T00:13:11.435722Z", + "shell.execute_reply": "2024-01-10T00:13:11.435205Z" + }, + "slideshow": { + "slide_type": "skip" + } + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Last executed: 2024-01-10 00:13:11\n" + ] + } + ], + "source": [ + "import datetime\n", + "now = datetime.datetime.now()\n", + "print(\"Last executed: \" + now.strftime(\"%Y-%m-%d %H:%M:%S\"))" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Course overview" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "### Description and objectives\n", + "\n", + "This module covers how to apply machine learning techniques to large data-sets, so-called *big-data*. \n", + "\n", + "An introduction to machine learning (ML) is presented to provide a general understanding of the concepts of machine learning, common machine learning techniques, and how to apply these methods to data-sets of moderate sizes. \n", + "\n", + "Deep learning and computing frameworks to scale machine learning techniques to big-data are then presented. \n", + "\n", + "Scientific data formats and data curation methods are also discussed." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "source": [ + "### Syllabus\n", + "\n", + "Foundations of ML (e.g. overview of ML, training, data wrangling, scikit-learn, performance analysis, gradient descent), data formats and curation (e.g. data pipelines, data version control, databases, big-data), ML methods (e.g. logistic regression, SVMs, ANNs, decision trees, ensemble learning and random forests, dimensionality reduction), deep learning and scaling to big-data (e.g. TensorFlow, \n", + "Deep ANNs, CNNs, RNNs, Autoencoders) and applications of ML in astrophysics, high-energy physics and industry." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Prerequisites\n", + "\n", + "Students should have a reasonable working knowledge of Python, some familiarity with working in the command line environment in Linux/Unix based operating systems, and a general understanding of elementary mathematics, including linear algebra and calculus. \n", + "\n", + "No previous familiarity with machine learning is required." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Resources" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Textbooks \n", + "\n", + "- VanderPlas, [\"*Python data science handbook*\"](https://jakevdp.github.io/PythonDataScienceHandbook/), O'Reilly, 2017, ISBN 9781491912058\n", + " ([Example code](https://github.com/jakevdp/PythonDataScienceHandbook))\n", + "\n", + "- Geron (1st Edition), [\"*Hands-on machine learning with Scikit-Learn and TensorFlow*\"](https://www.oreilly.com/library/view/hands-on-machine-learning/9781491962282/), O'Reilly, 2017, ISBN 9781491962299\n", + " ([Example code](https://github.com/ageron/handson-ml))\n", + "\n", + "- Geron (2nd Edition), [\"*Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow*\"](https://www.oreilly.com/library/view/hands-on-machine-learning/9781492032632/), O'Reilly, 2019, ISBN 9781492032649 ([Example code](https://github.com/ageron/handson-ml2))\n", + "\n", + "- Goodfellow, Bengio, Courville (GBC), [\"*Deep learning*\"](http://www.deeplearningbook.org), MIT Press, 2016, ISBN 9780262035613" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Tutorials \n", + " \n", + "- [Scikit-Learn tutorial](https://github.com/jakevdp/sklearn_tutorial), VanderPlas" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Main code frameworks and libraries\n", + "\n", + "- [Scikit-Learn](http://scikit-learn.org/stable/)\n", + " \n", + "- [TensorFlow](https://www.tensorflow.org/)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Schedule\n", + "\n", + "Lectures will run on Friday's from 10am-1pm. \n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Jupyter notebooks\n", + "\n", + "Each lecture has an accompaning Jupyter notebook, with executable code.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "These slides are a Jupyter notebook.\n", + "\n", + "Notebooks can be viewed in slide mode using [RISE](https://rise.readthedocs.io/en/stable/)." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "The supporting Jupyter notebooks thus serve as the course *slides*, *lecture notes*, and *examples*.\n", + "\n", + "A book version is also made available." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Course philosophy\n", + "\n", + "This is a practical, hands-on course. While we will cover basic concepts and background theory (but not in great mathematical depth or rigor), a large component of the course will focus on implementing and running machine learning algorithms. Many code examples and exercises will be considered." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "The course Jupyter notebooks will be made available weekly, in advance of lectures. Students can then follow examples in the lectures by running code live (and inspecting variables and making modifications). " + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Exercises\n", + "\n", + "A number of lectures are accompanies by an additional Jupyter notebook with related examples for you to complete. The solutions to these exercises will be made available as the module progresses. These exercises will not be graded but are intended to help improve your understanding of the lecture material." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Assessment\n", + "\n", + "\n", + "- Courseworks: 2 x 20% = 40%\n", + "- Exam: 60%\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Coursework\n", + "\n", + "Courseworks will involve downloading a Jupyter notebook, which you will need to complete. \n", + "\n", + "Throughout the notebook you will need to complete code, analytic exercises and descriptive answers. Much of the grading of the coursework will be performed automatically.\n", + "\n", + "There will be two courseworks. The first coursework will be issued after the first 9 lectures, when all the material required to complete the first coursework will be covered. The second coursework will be issued after the first 15 lectures, when all the material required to complete the second coursework will be covered. " + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Exam\n", + "\n", + "*Answer THREE questions* of the FOUR questions provided.\n", + "\n", + "Each question has equal mark (15 marks per question).\n", + "\n", + "Markers place importance on clarity and a portion of the marks are awarded for clear descriptions, answers, drawings, and diagrams, and attention to precision in quantitative answers." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Computing setup\n", + "\n", + "Students can bring their own laptops to class in order to run notebooks and complete examples.\n", + " \n", + "All examples are implemented in Python 3. \n", + "\n", + "The main Python libraries that are required include the following:\n", + "```\n", + "- numpy \n", + "- scipy\n", + "- matplotlib\n", + "- scikit-learn\n", + "- ipython/jupyter\n", + "- seaborn\n", + "- tensorflow\n", + "- astroML\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "An environment to run the notebooks can be set up with the versions of the libraries in `requirements.txt` (details below), following the steps below in terminal (MacOS, Linux) or anaconda prompt (Windows): \n", + "\n", + "1. Create an environment named mlbd with Python 3.11.\n", + "\n", + " ```\n", + " conda create --name mlbd python=3.11\n", + " ```\n", + "\n", + "2. Activate the `mlbd` environment and then install the libraries in the requirements.txt file. \n", + "\n", + " ```\n", + " conda activate mlbd \n", + " pip install -r requirements.txt \n", + " ```\n", + "3. Finally, start Jupyter, which will open the explorer and let you run the notebooks. \n", + "\n", + " ```\n", + " jupyter lab\n", + " ```" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Content of `requirements.txt`:\n", + "\n", + "```\n", + "numpy==1.24.3\n", + "matplotlib==3.7.4\n", + "pandas==2.0.3\n", + "scikit-learn==1.3.2\n", + "seaborn==0.13.1\n", + "tensorflow==2.13.1\n", + "tensorflow_datasets==4.9.2\n", + "jupyterlab==4.0.10\n", + "jupyter-book==0.15.1\n", + "jupyterlab_rise== 0.42.0\n", + "astroML==1.0.2.post1\n", + "nbdime==4.0.1\n", + "boto3==1.34.15\n", + "pyarrow==14.0.2\n", + "pyspark==3.5.0\n", + "pyppeteer==1.0.2\n", + "dvc==3.38.1\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Content of `requirements_macosx.txt` for Mac:\n", + "\n", + "```\n", + "numpy==1.24.3\n", + "matplotlib==3.7.4\n", + "pandas==2.0.3\n", + "scikit-learn==1.3.2\n", + "seaborn==0.13.1\n", + "tensorflow==2.13.1\n", + "tensorflow-metal==1.1.0\n", + "tensorflow_datasets==4.9.2\n", + "jupyterlab==4.0.10\n", + "jupyter-book==0.15.1\n", + "jupyterlab_rise== 0.42.0\n", + "astroML==1.0.2.post1\n", + "nbdime==4.0.1\n", + "boto3==1.34.15\n", + "pyarrow==14.0.2\n", + "pyspark==3.5.0\n", + "pyppeteer==1.0.2\n", + "dvc==3.38.1\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "## What is machine learning?" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "source": [ + "### Artifical intelligence (AI)\n", + "\n", + "Ironically...\n", + "\n", + "- Solving \"computational problems\" that are difficult for humans is straightforward for machines (i.e. problems described by list of formal mathematical rules).\n", + "\n", + "- Solving \"intuitive problems\" that are easy for humans is difficult for machines (i.e. problems difficult to describe formally).\n", + "\n", + "This is often known as [Moravec's paradox](https://en.wikipedia.org/wiki/Moravec%27s_paradox) (although formal definition is a little more specific)." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "Solution is to allow computers to learn from experience and to build an understanding of the world through a hierarchy of concepts." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Knowledge base approach\n", + "\n", + "Hard-code knowledge about world in formal set of rules and use logical inference.\n", + "\n", + "Very difficult to capture complexity of intuitive problems in this manner.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Machine learning (ML)\n", + "\n", + "Arthur Samuel (1959):\n", + "> \"[Machine learning is the] field of study that gives computers the ability to learn without being explicitly programmed.\"\n", + "\n", + "
\n", + "\n", + "Tom Mitchell (1997):\n", + "> \"A computer program is said to learn from experience E with respect to some task T and some performance measure P, if its performance on T, as measured by P, improves with experience E.\"\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Uses of machine learning\n", + "\n", + "1. **Prediction:** Predict outcome given data.\n", + "2. **Inference:** Better understand data (and their distribution)." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Data representations\n", + "\n", + "\n", + "Performance of machine learning depends on representation of data given.\n", + "\n", + "Data presented to learning algorithm as *features*.\n", + "\n", + "Traditional approach to machine learning involved *\"feature engineering\"*, where a practitioner with domain expertise would develop techniques to extract informative features from raw data. \n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Examples of features\n", + "\n", + "- Computer visions: edges and corners\n", + "- Spam: frequency of words\n", + "- Character recognition: histograms of black pixels along rows/columns, number of holes, number of strokes" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Learning representations\n", + "\n", + "Alternative is to learn features.\n", + "\n", + "- Can discover informative features from data.\n", + "- Minimal human intervention.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Approaches to representation learning\n", + "\n", + "\n", + "\n", + "- Dedicated feature learning, e.g. autoencoder combining encoder and decoder.\n", + "\n", + "- Representation learning integral to overall machine learning technique, e.g. deep learning." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Approaches to artifical intelligence\n", + "\n", + "\n", + "\n", + "[Image credit: [GBC](http://www.deeplearningbook.org/)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### AI pipelines\n", + "\n", + "\n", + "\n", + "[Image credit: [GBC](http://www.deeplearningbook.org/)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "## The unreasonable effectiveness of data" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "As society becomes increasing digitised, the volume of available data is exploding. \n", + "\n", + "A significant increase in the volume of data can lead to dramatic increases in the performance of machine learning techniques.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "(Term coined in Halevy, Norbig & Pereira, 2009, [*The unreasonable effectiveness of data*](http://goo.gl/q6LaZ8).)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Size of benchmark data-sets\n", + "\n", + "\n", + " \n", + "[Image credit: [GBC](http://www.deeplearningbook.org/)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "source": [ + "### Size of data can have a larger impact than algorihm\n", + "\n", + "\n", + "\n", + "Source: Banko & Brill, 2001, [*Scaling to very very large corpora for natural language disambiguation*](http://goo.gl/R5enIE)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "source": [ + "\n", + "\n", + "> As a rule of thumb, a supervised deep learning algorithm will perform reasonably well with around 5,000 labelled samples. \n", + "\n", + "> With 10 million samples, it will match or exceed human performance. \n", + "\n", + "[Source: [GBC](http://www.deeplearningbook.org/)]\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "source": [ + "However, in many cases very large datasets are not available and in some cases not possible. \n", + "\n", + "Hence, developing effective algorithms remains critical." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "## A brief history of deep learning" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "### AlexNet: an inflection point in machine learning\n", + "\n", + "\n", + "\n", + "Source: [*Ten Years of AI in Review*](https://towardsdatascience.com/ten-years-of-ai-in-review-85decdb2a540), Towards Data Science" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "source": [ + "### Deep learning timeline\n", + "\n", + "\n", + "\n", + "Source: [*Ten Years of AI in Review*](https://towardsdatascience.com/ten-years-of-ai-in-review-85decdb2a540), Towards Data Science" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "source": [ + "### A fourth industrial revolution?\n", + "\n", + "\n", + "\n", + "[[Image Source](https://rw-rw.facebook.com/195228108045971/photos/a.195229821379133/195229781379137/)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "- First industrial revolution (1760-1840): mechanisation through steam and water power.\n", + "- Second industrial revolution (1871-1914): electrification, railroad and telegraph networks.\n", + "- Third industrial revolution (late 20th century): digital revolution.\n", + "- Fourth industrial revolution (21st century): AI revolution." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "## Classes of machine learning\n", + "\n", + "1. **Supervised:** Learn to predict output given input (given labelled training data).\n", + "2. **Unsupervised:** Discover internal representation of input.\n", + "3. **Reinforcement:** Learn action to maximise payoff.\n", + "\n", + "\n", + " \n", + "[[Image source](http://beta.cambridgespark.com/courses/jpm/01-module.html)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "source": [ + "### Supervised learning\n", + "\n", + "Learn to predict output given input (given labelled training data).\n", + "\n", + "1. **Regression:** Target output is a (real) number,
\n", + " e.g. estimate flux intensity.\n", + "\n", + "2. **Classification:** Target output is a class label,
\n", + " e.g. classify galaxy morphology." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### How supervised learning works\n", + "\n", + "- Select model defined by function $f$, and model target $y$ from inputs $x$ by\n", + "$y = f(x, \\theta),$\n", + "where $\\theta$ are the parameters of the model that are learnt during training.\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "- Learning typically involves minimising the difference between the inputs and outputs for the model, given a training data-set (more on training, validation and test data-sets later)." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Unsupervised learning\n", + "\n", + "Discover internal representation of input.\n", + "\n", + "1. **Cluster finding:** Learn cluster of similar structure in data.\n", + "2. **Density estimation:** Learn representations of data (probability distributions).\n", + "3. **Dimensionality reduction:** Provides compact, low-dimensional representation of data." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "#### Unsupervised learning examples\n", + "\n", + "\n", + "Anomaly detection, clustering groups of similar objects, visualising high-dimensional data in 2D or 3D plots are examples of unsupervised learning." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Reinforcement learning\n", + "\n", + "Learn action to maximise payoff.\n", + "\n", + "- Output is an action or sequence of actions and the only supervisory signal is an occasional numerical (scalar) reward.\n", + "- Difficult since rewards are delayed.\n", + "- Not covered in this course.\n", + "\n", + "\n", + " \n", + "[[Image credit](https://www.analyticsvidhya.com/blog/2016/12/getting-ready-for-ai-based-gaming-agents-overview-of-open-source-reinforcement-learning-platforms/)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Reinforcement learning examples\n", + "\n", + "Go, playing computer games, driverless cars, self navigating vaccum cleaners, scheduling of elevators are all applications of reinforcement learning.\n", + "\n", + "E.g. [Google [DeepMind] machine learns to master video games](http://www.bbc.co.uk/news/science-environment-31623427)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Training\n", + "\n", + "Machine *learning* often involves solving an *optimization* problem, i.e. finding the parameters $\\theta$ of the model $f$ to best represent the training data (for supervised learning).\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Objective function\n", + "\n", + "Typically maximise/minimise some goodness-of-fit/cost function." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Example of convex objective function\n", + "\n", + "\n", + " \n", + "[Image credit: Kirkby, UC Irvine, LSST Dark Energy Summer School 2017]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Example of non-convex objective function" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "-" + } + }, + "source": [ + "" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "-" + } + }, + "source": [ + "[[Image source](https://cs.hse.ru/data/2016/08/26/1121363361/moml.jpg)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Using gradients to optimize objective function (i.e. perform training)\n", + "\n", + "- **(Batch) Gradient descent:** Use all data at each iteration (full dimension).\n", + "- **Stochastic gradient descent:** Use a random data-point at each iteration (1 dimension).\n", + "- **Backpropagation:** propagate errors backwards through networks.\n", + "\n", + "" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Batch gradient descent \n", + "\n", + "\n", + "#### Stochastic gradient descent \n", + "\n", + "\n", + "[[Image source](http://www.holehouse.org/mlclass)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Batch and online learning\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Batch learning\n", + "\n", + "Algorithm is trained using all available training data at once.\n", + "\n", + "Also called *offline learning*." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "- Requires substantial resources (CPU, memory space, disk space).\n", + "- If want to add new training data, must re-train from scratch on new full set of data (i.e. not just the new data but also the old data)." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Online learning\n", + "\n", + "Algorithm is trained using a sub-set of the training data.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "- Each learning step does *not* require substantial resources. \n", + "- Can integate new training data on the fly.\n", + "- May be able to throw away data once used it (although might not want to).\n", + "- If fed bad data, performance will decline.\n", + "- Noisy training." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Overfitting and underfitting\n", + "\n", + "- **Problem:** The learned model may fit the training set extremely well but fail to generalise to new examples." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### 1D example\n", + "\n", + "\n", + "\n", + "[[Image source](http://scikit-learn.org/stable/_images/sphx_glr_plot_underfitting_overfitting_001.png)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### 2D example\n", + "\n", + "\n", + "\n", + "[[Image source](https://www.safaribooksonline.com/library/view/deep-learning/9781491924570/assets/dpln_0107.png)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Techniques to avoid overfitting\n", + "\n", + "- Reduce complexity of model.\n", + "- Regularization:\n", + " - Place additional constraints (priors) on features/parameters.\n", + " - E.g. smoothness of parameters, sparsity of model (i.e. limit complexity).\n", + "- Split data into training, validation and test sets (e.g. cross-validation). \n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Testing and validation" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### No free lunch theorem\n", + "\n", + "Essentially, all algorithms are equivalent when performance is averaged over all possible problems.\n", + "\n", + "Consequently, there is no a priori model that is guaranteed to work best on all problems.\n", + "\n", + "(Wolpert, 1996, [*The lack of a priori distinctions between learning algorithms*](http://goo.gl/q6LaZ8))\n", + "\n", + "It is therefore a matter of validating models empirically." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Training and test datasets\n", + "\n", + "Split data into training and test sets (e.g. 80% for training and 20% for testing).\n", + "\n", + "The model is trained on the *training set* and then tested on the *test set*. " + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "**No data used in training the method is then used to evaluate it.**" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "Error rate on the test set is called the *generalization error* or *out of sample error*.\n", + "\n", + "If the training error is low but the generalization error is high, it suggests the model is overfitted." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "source": [ + "### Hyperparameters\n", + "\n", + "Many machine learning algorithms contain hyperparameters to control the model. \n", + "\n", + "One (**bad**) approach is to evaluate alternative models defined by different hyperparameters on test set and select the model that performs best.\n", + "\n", + "However, this optimizes the model for the test set and may not generalise to other data well." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Validation\n", + "\n", + "\n", + "A better approach is to split the data into three sets: \n", + "1. Training set\n", + "2. Validation set\n", + "3. Test set\n", + "\n", + "Train models on the training set and evaluate different models (with different hyperparameters) on the validation set.\n", + "\n", + "Only once the final model to be used is fully specified should it be applied to the test set to estimate its generalization performance." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Cross-validation\n", + "\n", + "A disadvantage of the previous approach is that less data are available for training.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "*Cross-validation* addresses this issue by performing a sequence of fits where each subset of the data is used both as a training set and a validation set.\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "[Image credit: [VanderPlas](https://github.com/jakevdp/PythonDataScienceHandbook)]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Get validation accuracy scores for each trial, which could be combined." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "source": [ + "#### Extension to n-fold cross-validation\n", + "\n", + "\n", + "\n", + "[Image credit: [VanderPlas](https://github.com/jakevdp/PythonDataScienceHandbook)]" + ] + } + ], + "metadata": { + "celltoolbar": "Slideshow", + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.13.1" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/week1/slides/Lecture02_Pandas.ipynb b/week1/slides/Lecture02_Pandas.ipynb new file mode 100644 index 0000000..79c1133 --- /dev/null +++ b/week1/slides/Lecture02_Pandas.ipynb @@ -0,0 +1,7204 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "# Lecture 2: Data wrangling with Pandas " + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "skip" + } + }, + "source": [ + "![](https://www.tensorflow.org/images/colab_logo_32px.png)\n", + "[Run in colab](https://colab.research.google.com/drive/1L7sAw22PfopC1z8ANRdgFCnJBXiZIdtI)" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:14.768141Z", + "iopub.status.busy": "2024-01-10T00:13:14.767528Z", + "iopub.status.idle": "2024-01-10T00:13:14.775602Z", + "shell.execute_reply": "2024-01-10T00:13:14.775063Z" + }, + "slideshow": { + "slide_type": "skip" + } + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Last executed: 2024-01-10 00:13:14\n" + ] + } + ], + "source": [ + "import datetime\n", + "now = datetime.datetime.now()\n", + "print(\"Last executed: \" + now.strftime(\"%Y-%m-%d %H:%M:%S\"))" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Why Pandas?\n", + "\n", + "[Pandas](https://pandas.pydata.org/) is a very useful package for data wrangling.\n", + "\n", + "Particularly useful when working with real data, which can be messy." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "Combines advantages of a number of different data structures (NumPy arrays, dictionaries, relational databases).\n", + "\n", + "Can also be more efficient than native Python data structures for certain operators (as we will see)." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Particularly useful for dealing with:\n", + "- Labelled data\n", + "- Missing data\n", + "- Heteterogenous types\n", + "- Groupings" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "We will focus mostly on Pandas `Series` and `DataFrame` objects." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Import Pandas" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:14.816280Z", + "iopub.status.busy": "2024-01-10T00:13:14.815818Z", + "iopub.status.idle": "2024-01-10T00:13:15.132633Z", + "shell.execute_reply": "2024-01-10T00:13:15.131910Z" + } + }, + "outputs": [], + "source": [ + "import pandas as pd\n", + "import numpy as np" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Documentation\n", + "\n", + "Recall can check documentation with `pd?`, `pd.`, and/or print documentation for specific function with `print(pd..__doc__)`." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.136072Z", + "iopub.status.busy": "2024-01-10T00:13:15.135754Z", + "iopub.status.idle": "2024-01-10T00:13:15.139939Z", + "shell.execute_reply": "2024-01-10T00:13:15.139326Z" + } + }, + "outputs": [], + "source": [ + "#pd?" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.142929Z", + "iopub.status.busy": "2024-01-10T00:13:15.142560Z", + "iopub.status.idle": "2024-01-10T00:13:15.145430Z", + "shell.execute_reply": "2024-01-10T00:13:15.144796Z" + } + }, + "outputs": [], + "source": [ + "#pd." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.148415Z", + "iopub.status.busy": "2024-01-10T00:13:15.147981Z", + "iopub.status.idle": "2024-01-10T00:13:15.152029Z", + "shell.execute_reply": "2024-01-10T00:13:15.151417Z" + } + }, + "outputs": [], + "source": [ + "#pd.concat?" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.154836Z", + "iopub.status.busy": "2024-01-10T00:13:15.154383Z", + "iopub.status.idle": "2024-01-10T00:13:15.158458Z", + "shell.execute_reply": "2024-01-10T00:13:15.157831Z" + } + }, + "outputs": [], + "source": [ + "#print(pd.concat.__doc__)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Pandas `Series`\n", + "\n", + "A Pandas `Series` is a *1D* array of *indexed* data. " + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "Can be created from a list or array:" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.161285Z", + "iopub.status.busy": "2024-01-10T00:13:15.161073Z", + "iopub.status.idle": "2024-01-10T00:13:15.171895Z", + "shell.execute_reply": "2024-01-10T00:13:15.171212Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "0 0.25\n", + "1 0.50\n", + "2 0.75\n", + "3 1.00\n", + "dtype: float64" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data = pd.Series([0.25, 0.5, 0.75, 1.0])\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "The `Series` wraps both a sequence of *values* and a sequence of *indices*, which we can access with the `values` and `index` attributes." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.174915Z", + "iopub.status.busy": "2024-01-10T00:13:15.174556Z", + "iopub.status.idle": "2024-01-10T00:13:15.181701Z", + "shell.execute_reply": "2024-01-10T00:13:15.181103Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "0 0.25\n", + "1 0.50\n", + "2 0.75\n", + "3 1.00\n", + "dtype: float64" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.184468Z", + "iopub.status.busy": "2024-01-10T00:13:15.184105Z", + "iopub.status.idle": "2024-01-10T00:13:15.188580Z", + "shell.execute_reply": "2024-01-10T00:13:15.187941Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "array([0.25, 0.5 , 0.75, 1. ])" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data.values" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.192321Z", + "iopub.status.busy": "2024-01-10T00:13:15.191893Z", + "iopub.status.idle": "2024-01-10T00:13:15.196459Z", + "shell.execute_reply": "2024-01-10T00:13:15.195837Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "RangeIndex(start=0, stop=4, step=1)" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data.index" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### `Series` as generalized NumPy array \n", + "\n", + "Values are simply NumPy array.\n", + "\n", + "Index need not be an integer, but can consist of values of any desired type. " + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.199711Z", + "iopub.status.busy": "2024-01-10T00:13:15.199076Z", + "iopub.status.idle": "2024-01-10T00:13:15.204940Z", + "shell.execute_reply": "2024-01-10T00:13:15.204319Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "a 0.25\n", + "b 0.50\n", + "c 0.75\n", + "d 1.00\n", + "dtype: float64" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data = pd.Series([0.25, 0.5, 0.75, 1.0],\n", + " index=['a', 'b', 'c', 'd'])\n", + "data" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.207914Z", + "iopub.status.busy": "2024-01-10T00:13:15.207336Z", + "iopub.status.idle": "2024-01-10T00:13:15.211637Z", + "shell.execute_reply": "2024-01-10T00:13:15.210997Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "0.5" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data['b']" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### `Series` as specialized dictionary\n", + "\n", + "Can also think of a Pandas `Series` like a specialization of a Python dictionary." + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.214449Z", + "iopub.status.busy": "2024-01-10T00:13:15.214085Z", + "iopub.status.idle": "2024-01-10T00:13:15.217795Z", + "shell.execute_reply": "2024-01-10T00:13:15.217150Z" + } + }, + "outputs": [], + "source": [ + "population_dict = {'California': 38332521,\n", + " 'Texas': 26448193,\n", + " 'New York': 19651127,\n", + " 'Florida': 19552860,\n", + " 'Illinois': 12882135}\n", + "population = pd.Series(population_dict) # Instantiate from dictionary" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.220887Z", + "iopub.status.busy": "2024-01-10T00:13:15.220288Z", + "iopub.status.idle": "2024-01-10T00:13:15.224757Z", + "shell.execute_reply": "2024-01-10T00:13:15.224118Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "(dict, pandas.core.series.Series)" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "type(population_dict), type(population)" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.228122Z", + "iopub.status.busy": "2024-01-10T00:13:15.227555Z", + "iopub.status.idle": "2024-01-10T00:13:15.231762Z", + "shell.execute_reply": "2024-01-10T00:13:15.231241Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "38332521" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "population['California']" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "- Python dictionary: maps *arbitrary* keys to *arbitrary* values.\n", + "- Pandas `Series`: maps *typed* indices to *typed* values." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "Type information of Pandas `Series` makes it much more efficient than Python dictionaries for certain operations." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Pandas `DataFrame`\n", + "\n", + "`DataFrame` can be thought of as a sequence of aligned `Series` objects, with *indices* and *columns*." + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.234800Z", + "iopub.status.busy": "2024-01-10T00:13:15.234218Z", + "iopub.status.idle": "2024-01-10T00:13:15.242493Z", + "shell.execute_reply": "2024-01-10T00:13:15.241954Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
foobar
a0.1508620.234217
b0.6671930.961023
c0.0306700.910813
\n", + "
" + ], + "text/plain": [ + " foo bar\n", + "a 0.150862 0.234217\n", + "b 0.667193 0.961023\n", + "c 0.030670 0.910813" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pd.DataFrame(np.random.rand(3, 2),\n", + " columns=['foo', 'bar'],\n", + " index=['a', 'b', 'c'])" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### `DataFrame` as generalized NumPy array\n", + "\n", + "`DataFrame` is an analog of a two-dimensional array with both flexible row indices and flexible column names." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "Contstruct another `Series` with same indices." + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.245372Z", + "iopub.status.busy": "2024-01-10T00:13:15.245019Z", + "iopub.status.idle": "2024-01-10T00:13:15.248490Z", + "shell.execute_reply": "2024-01-10T00:13:15.247931Z" + } + }, + "outputs": [], + "source": [ + "area_dict = {'California': 423967, 'Texas': 695662, 'New York': 141297,\n", + " 'Florida': 170312, 'Illinois': 149995}\n", + "area = pd.Series(area_dict)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Combine two `Series` into a `DataFrame`." + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.251243Z", + "iopub.status.busy": "2024-01-10T00:13:15.250893Z", + "iopub.status.idle": "2024-01-10T00:13:15.257216Z", + "shell.execute_reply": "2024-01-10T00:13:15.256698Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
populationarea
California38332521423967
Texas26448193695662
New York19651127141297
Florida19552860170312
Illinois12882135149995
\n", + "
" + ], + "text/plain": [ + " population area\n", + "California 38332521 423967\n", + "Texas 26448193 695662\n", + "New York 19651127 141297\n", + "Florida 19552860 170312\n", + "Illinois 12882135 149995" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "states = pd.DataFrame({'population': population,\n", + " 'area': area})\n", + "states" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "`DataFrame` has both `index` and `column` attributes." + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.260053Z", + "iopub.status.busy": "2024-01-10T00:13:15.259693Z", + "iopub.status.idle": "2024-01-10T00:13:15.263625Z", + "shell.execute_reply": "2024-01-10T00:13:15.263113Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "Index(['California', 'Texas', 'New York', 'Florida', 'Illinois'], dtype='object')" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "states.index" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.266338Z", + "iopub.status.busy": "2024-01-10T00:13:15.265998Z", + "iopub.status.idle": "2024-01-10T00:13:15.269838Z", + "shell.execute_reply": "2024-01-10T00:13:15.269330Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "Index(['population', 'area'], dtype='object')" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "states.columns" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### `DataFrame` as specialized dictionary\n", + "\n", + "Can also think of a Pandas `DataFrame` like a specialization of a Python dictionary." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "`DataFrame` maps a column name to a `Series`." + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.272676Z", + "iopub.status.busy": "2024-01-10T00:13:15.272320Z", + "iopub.status.idle": "2024-01-10T00:13:15.276748Z", + "shell.execute_reply": "2024-01-10T00:13:15.276239Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "California 423967\n", + "Texas 695662\n", + "New York 141297\n", + "Florida 170312\n", + "Illinois 149995\n", + "Name: area, dtype: int64" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "states['area']" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.279494Z", + "iopub.status.busy": "2024-01-10T00:13:15.279148Z", + "iopub.status.idle": "2024-01-10T00:13:15.282910Z", + "shell.execute_reply": "2024-01-10T00:13:15.282377Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "pandas.core.series.Series" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "type(states['area'])" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Pandas `Index`\n", + "\n", + "Both Pandas `Series` and `DataFrame` contain `Index` object(s).\n", + "\n", + "Can be thought of as *immutable array* (i.e. cannot be changed) or *ordered multi-set* (may contain repeated values)." + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.285632Z", + "iopub.status.busy": "2024-01-10T00:13:15.285291Z", + "iopub.status.idle": "2024-01-10T00:13:15.289529Z", + "shell.execute_reply": "2024-01-10T00:13:15.289021Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "Index([2, 3, 5, 7, 11], dtype='int64')" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "ind = pd.Index([2, 3, 5, 7, 11])\n", + "ind " + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### `Index` as immutable array\n", + "\n", + "Immutability makes it safer to share indices between multiple `DataFrames`." + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.292351Z", + "iopub.status.busy": "2024-01-10T00:13:15.291994Z", + "iopub.status.idle": "2024-01-10T00:13:15.295778Z", + "shell.execute_reply": "2024-01-10T00:13:15.295270Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "3" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "ind[1]" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.298395Z", + "iopub.status.busy": "2024-01-10T00:13:15.298061Z", + "iopub.status.idle": "2024-01-10T00:13:15.300547Z", + "shell.execute_reply": "2024-01-10T00:13:15.300030Z" + } + }, + "outputs": [], + "source": [ + "#ind[1] = 0" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### `Index` as ordered multi-set\n", + "\n", + "`Index` objects support many set operations, e.g. joins, unions, intersections, differences." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Example: Compute the intersection and union of the following two `Index` objects." + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.303350Z", + "iopub.status.busy": "2024-01-10T00:13:15.303007Z", + "iopub.status.idle": "2024-01-10T00:13:15.306205Z", + "shell.execute_reply": "2024-01-10T00:13:15.305664Z" + } + }, + "outputs": [], + "source": [ + "indA = pd.Index([1, 3, 5, 7, 9])\n", + "indB = pd.Index([2, 3, 5, 7, 11]) " + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.308868Z", + "iopub.status.busy": "2024-01-10T00:13:15.308513Z", + "iopub.status.idle": "2024-01-10T00:13:15.312952Z", + "shell.execute_reply": "2024-01-10T00:13:15.312424Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "Index([3, 5, 7], dtype='int64')" + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "indA.intersection(indB) # intersection" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.315736Z", + "iopub.status.busy": "2024-01-10T00:13:15.315378Z", + "iopub.status.idle": "2024-01-10T00:13:15.319554Z", + "shell.execute_reply": "2024-01-10T00:13:15.319039Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "Index([1, 2, 3, 5, 7, 9, 11], dtype='int64')" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "indA.union(indB) # union" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Data indexing and selection" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Data selection in a `Series`" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In additional to acting like a dictionary, a `Series` also provies array-style selection like NumPy arrays." + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.322458Z", + "iopub.status.busy": "2024-01-10T00:13:15.322095Z", + "iopub.status.idle": "2024-01-10T00:13:15.327409Z", + "shell.execute_reply": "2024-01-10T00:13:15.326886Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "a 0.25\n", + "b 0.50\n", + "c 0.75\n", + "d 1.00\n", + "dtype: float64" + ] + }, + "execution_count": 29, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data = pd.Series([0.25, 0.5, 0.75, 1.0],\n", + " index=['a', 'b', 'c', 'd'])\n", + "data" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.330109Z", + "iopub.status.busy": "2024-01-10T00:13:15.329744Z", + "iopub.status.idle": "2024-01-10T00:13:15.334772Z", + "shell.execute_reply": "2024-01-10T00:13:15.334235Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "a 0.25\n", + "b 0.50\n", + "c 0.75\n", + "dtype: float64" + ] + }, + "execution_count": 30, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# slicing by explicit index\n", + "data['a':'c']" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.337529Z", + "iopub.status.busy": "2024-01-10T00:13:15.337173Z", + "iopub.status.idle": "2024-01-10T00:13:15.341776Z", + "shell.execute_reply": "2024-01-10T00:13:15.341267Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "a 0.25\n", + "b 0.50\n", + "dtype: float64" + ] + }, + "execution_count": 31, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# slicing by implicit integer index\n", + "data[0:2]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "When slicing by an explicit index (e.g. `data['a':'c']`), the final index *is* included.\n", + "\n", + "When slicing by an implicit index (e.g. `data[0:2]`), the final index *is not* included.\n", + "\n", + "This can be a source of much confusion." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Consider a Series with integer indices." + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.344695Z", + "iopub.status.busy": "2024-01-10T00:13:15.344351Z", + "iopub.status.idle": "2024-01-10T00:13:15.349397Z", + "shell.execute_reply": "2024-01-10T00:13:15.348877Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "1 a\n", + "3 b\n", + "5 c\n", + "dtype: object" + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data = pd.Series(['a', 'b', 'c'], index=[1, 3, 5])\n", + "data" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.352122Z", + "iopub.status.busy": "2024-01-10T00:13:15.351783Z", + "iopub.status.idle": "2024-01-10T00:13:15.355483Z", + "shell.execute_reply": "2024-01-10T00:13:15.354953Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "'a'" + ] + }, + "execution_count": 33, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# explicit index when indexing\n", + "data[1]" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.358468Z", + "iopub.status.busy": "2024-01-10T00:13:15.358085Z", + "iopub.status.idle": "2024-01-10T00:13:15.362748Z", + "shell.execute_reply": "2024-01-10T00:13:15.362199Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "3 b\n", + "5 c\n", + "dtype: object" + ] + }, + "execution_count": 34, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# implicit index when slicing\n", + "data[1:3]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Indexers\n", + "\n", + "Indexers `loc` (explicit) and `iloc` (implicit) are introduced to avoid confusion." + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.365530Z", + "iopub.status.busy": "2024-01-10T00:13:15.365179Z", + "iopub.status.idle": "2024-01-10T00:13:15.369614Z", + "shell.execute_reply": "2024-01-10T00:13:15.369097Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "1 a\n", + "3 b\n", + "5 c\n", + "dtype: object" + ] + }, + "execution_count": 35, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.372452Z", + "iopub.status.busy": "2024-01-10T00:13:15.372086Z", + "iopub.status.idle": "2024-01-10T00:13:15.375935Z", + "shell.execute_reply": "2024-01-10T00:13:15.375418Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "'a'" + ] + }, + "execution_count": 36, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data.loc[1]" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.378492Z", + "iopub.status.busy": "2024-01-10T00:13:15.378208Z", + "iopub.status.idle": "2024-01-10T00:13:15.382914Z", + "shell.execute_reply": "2024-01-10T00:13:15.382378Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "1 a\n", + "3 b\n", + "dtype: object" + ] + }, + "execution_count": 37, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data.loc[1:3]" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.385667Z", + "iopub.status.busy": "2024-01-10T00:13:15.385325Z", + "iopub.status.idle": "2024-01-10T00:13:15.389111Z", + "shell.execute_reply": "2024-01-10T00:13:15.388596Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "'b'" + ] + }, + "execution_count": 38, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data.iloc[1]" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.391891Z", + "iopub.status.busy": "2024-01-10T00:13:15.391527Z", + "iopub.status.idle": "2024-01-10T00:13:15.396244Z", + "shell.execute_reply": "2024-01-10T00:13:15.395728Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "3 b\n", + "5 c\n", + "dtype: object" + ] + }, + "execution_count": 39, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data.iloc[1:3]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Data selection in a `DataFrame`" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In additional to acting like a dictionary of `Series` objects with the same index, a `DataFrame` also provies array-style selection like NumPy arrays." + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.399127Z", + "iopub.status.busy": "2024-01-10T00:13:15.398770Z", + "iopub.status.idle": "2024-01-10T00:13:15.406757Z", + "shell.execute_reply": "2024-01-10T00:13:15.406203Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
areapopulation
California42396738332521
Texas69566226448193
New York14129719651127
Florida17031219552860
Illinois14999512882135
\n", + "
" + ], + "text/plain": [ + " area population\n", + "California 423967 38332521\n", + "Texas 695662 26448193\n", + "New York 141297 19651127\n", + "Florida 170312 19552860\n", + "Illinois 149995 12882135" + ] + }, + "execution_count": 40, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "area = pd.Series({'California': 423967, 'Texas': 695662,\n", + " 'New York': 141297, 'Florida': 170312,\n", + " 'Illinois': 149995})\n", + "pop = pd.Series({'California': 38332521, 'Texas': 26448193,\n", + " 'New York': 19651127, 'Florida': 19552860,\n", + " 'Illinois': 12882135})\n", + "data = pd.DataFrame({'area':area, 'population':pop})\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Indexers\n", + "\n", + "Indexers `loc` (explicit) and `iloc` (implicit) are also available to avoid confusion when selecting data.\n", + "\n", + "Note that index and column labels are preserved in the result." + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.409634Z", + "iopub.status.busy": "2024-01-10T00:13:15.409286Z", + "iopub.status.idle": "2024-01-10T00:13:15.414919Z", + "shell.execute_reply": "2024-01-10T00:13:15.414384Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
areapopulation
California42396738332521
Texas69566226448193
New York14129719651127
Florida17031219552860
Illinois14999512882135
\n", + "
" + ], + "text/plain": [ + " area population\n", + "California 423967 38332521\n", + "Texas 695662 26448193\n", + "New York 141297 19651127\n", + "Florida 170312 19552860\n", + "Illinois 149995 12882135" + ] + }, + "execution_count": 41, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.417710Z", + "iopub.status.busy": "2024-01-10T00:13:15.417363Z", + "iopub.status.idle": "2024-01-10T00:13:15.423392Z", + "shell.execute_reply": "2024-01-10T00:13:15.422870Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
areapopulation
California42396738332521
Texas69566226448193
New York14129719651127
\n", + "
" + ], + "text/plain": [ + " area population\n", + "California 423967 38332521\n", + "Texas 695662 26448193\n", + "New York 141297 19651127" + ] + }, + "execution_count": 42, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data.iloc[:3, :2]" + ] + }, + { + "cell_type": "code", + "execution_count": 43, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.426169Z", + "iopub.status.busy": "2024-01-10T00:13:15.425803Z", + "iopub.status.idle": "2024-01-10T00:13:15.431850Z", + "shell.execute_reply": "2024-01-10T00:13:15.431323Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
areapopulation
California42396738332521
Texas69566226448193
New York14129719651127
Florida17031219552860
Illinois14999512882135
\n", + "
" + ], + "text/plain": [ + " area population\n", + "California 423967 38332521\n", + "Texas 695662 26448193\n", + "New York 141297 19651127\n", + "Florida 170312 19552860\n", + "Illinois 149995 12882135" + ] + }, + "execution_count": 43, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data.loc[:'Illinois', :'population']" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Additional array-style selection \n", + "\n", + "Other NumPy selection approaches can also be applied (e.g. masking)." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [ + "exercise_pointer" + ] + }, + "source": [ + "**Exercises:** *You can now complete Exercise 1 in the exercises associated with this lecture.*" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Operating on data in Pandas" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Elementwise operations in Pandas automatically aligns indices and preserves index/column labels.\n", + "\n", + "Can avoid many errors and bugs in data wrangling." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Index preservation" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.435183Z", + "iopub.status.busy": "2024-01-10T00:13:15.434837Z", + "iopub.status.idle": "2024-01-10T00:13:15.440045Z", + "shell.execute_reply": "2024-01-10T00:13:15.439526Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "0 6\n", + "1 3\n", + "2 7\n", + "3 4\n", + "dtype: int64" + ] + }, + "execution_count": 44, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rng = np.random.RandomState(42)\n", + "ser = pd.Series(rng.randint(0, 10, 4))\n", + "ser" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.442924Z", + "iopub.status.busy": "2024-01-10T00:13:15.442580Z", + "iopub.status.idle": "2024-01-10T00:13:15.447315Z", + "shell.execute_reply": "2024-01-10T00:13:15.446795Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "0 403.428793\n", + "1 20.085537\n", + "2 1096.633158\n", + "3 54.598150\n", + "dtype: float64" + ] + }, + "execution_count": 45, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.exp(ser)" + ] + }, + { + "cell_type": "code", + "execution_count": 46, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.450058Z", + "iopub.status.busy": "2024-01-10T00:13:15.449718Z", + "iopub.status.idle": "2024-01-10T00:13:15.456731Z", + "shell.execute_reply": "2024-01-10T00:13:15.456205Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
ABCD
06926
17437
27254
\n", + "
" + ], + "text/plain": [ + " A B C D\n", + "0 6 9 2 6\n", + "1 7 4 3 7\n", + "2 7 2 5 4" + ] + }, + "execution_count": 46, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df = pd.DataFrame(rng.randint(0, 10, (3, 4)),\n", + " columns=['A', 'B', 'C', 'D'])\n", + "df" + ] + }, + { + "cell_type": "code", + "execution_count": 47, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.459559Z", + "iopub.status.busy": "2024-01-10T00:13:15.459213Z", + "iopub.status.idle": "2024-01-10T00:13:15.466329Z", + "shell.execute_reply": "2024-01-10T00:13:15.465808Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
ABCD
0403.4287938103.0839287.389056403.428793
11096.63315854.59815020.0855371096.633158
21096.6331587.389056148.41315954.598150
\n", + "
" + ], + "text/plain": [ + " A B C D\n", + "0 403.428793 8103.083928 7.389056 403.428793\n", + "1 1096.633158 54.598150 20.085537 1096.633158\n", + "2 1096.633158 7.389056 148.413159 54.598150" + ] + }, + "execution_count": 47, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.exp(df)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [ + "exercise_pointer" + ] + }, + "source": [ + "**Exercises:** *You can now complete Exercise 2 in the exercises associated with this lecture.*" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Index alignment" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Index alignment works similarly for `DataFrames`." + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.469283Z", + "iopub.status.busy": "2024-01-10T00:13:15.468937Z", + "iopub.status.idle": "2024-01-10T00:13:15.475078Z", + "shell.execute_reply": "2024-01-10T00:13:15.474536Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
AB
0111
151
\n", + "
" + ], + "text/plain": [ + " A B\n", + "0 1 11\n", + "1 5 1" + ] + }, + "execution_count": 48, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A = pd.DataFrame(rng.randint(0, 20, (2, 2)),\n", + " columns=list('AB'))\n", + "A" + ] + }, + { + "cell_type": "code", + "execution_count": 49, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.478954Z", + "iopub.status.busy": "2024-01-10T00:13:15.478608Z", + "iopub.status.idle": "2024-01-10T00:13:15.484998Z", + "shell.execute_reply": "2024-01-10T00:13:15.484464Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
BAC
0409
1580
2926
\n", + "
" + ], + "text/plain": [ + " B A C\n", + "0 4 0 9\n", + "1 5 8 0\n", + "2 9 2 6" + ] + }, + "execution_count": 49, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "B = pd.DataFrame(rng.randint(0, 10, (3, 3)),\n", + " columns=list('BAC'))\n", + "B" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.488869Z", + "iopub.status.busy": "2024-01-10T00:13:15.488521Z", + "iopub.status.idle": "2024-01-10T00:13:15.497638Z", + "shell.execute_reply": "2024-01-10T00:13:15.497097Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
ABC
01.015.0NaN
113.06.0NaN
2NaNNaNNaN
\n", + "
" + ], + "text/plain": [ + " A B C\n", + "0 1.0 15.0 NaN\n", + "1 13.0 6.0 NaN\n", + "2 NaN NaN NaN" + ] + }, + "execution_count": 50, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A + B" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Operations between `DataFrame` and `Series` objects" + ] + }, + { + "cell_type": "code", + "execution_count": 51, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.505677Z", + "iopub.status.busy": "2024-01-10T00:13:15.505241Z", + "iopub.status.idle": "2024-01-10T00:13:15.512507Z", + "shell.execute_reply": "2024-01-10T00:13:15.511979Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
QRST
03824
12648
26138
\n", + "
" + ], + "text/plain": [ + " Q R S T\n", + "0 3 8 2 4\n", + "1 2 6 4 8\n", + "2 6 1 3 8" + ] + }, + "execution_count": 51, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A = rng.randint(10, size=(3, 4))\n", + "df = pd.DataFrame(A, columns=list('QRST'))\n", + "df" + ] + }, + { + "cell_type": "code", + "execution_count": 52, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.515360Z", + "iopub.status.busy": "2024-01-10T00:13:15.515014Z", + "iopub.status.idle": "2024-01-10T00:13:15.519595Z", + "shell.execute_reply": "2024-01-10T00:13:15.519059Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "Q 3\n", + "R 8\n", + "S 2\n", + "T 4\n", + "Name: 0, dtype: int64" + ] + }, + "execution_count": 52, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "s = df.iloc[0]\n", + "s" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Difference between the `DataFrame` and `Series`:" + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.522471Z", + "iopub.status.busy": "2024-01-10T00:13:15.522110Z", + "iopub.status.idle": "2024-01-10T00:13:15.528586Z", + "shell.execute_reply": "2024-01-10T00:13:15.528055Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
QRST
00000
1-1-224
23-714
\n", + "
" + ], + "text/plain": [ + " Q R S T\n", + "0 0 0 0 0\n", + "1 -1 -2 2 4\n", + "2 3 -7 1 4" + ] + }, + "execution_count": 53, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df - s" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Convention is to operate row-wise." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Can also operate column-wise using object methods." + ] + }, + { + "cell_type": "code", + "execution_count": 54, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.532195Z", + "iopub.status.busy": "2024-01-10T00:13:15.531844Z", + "iopub.status.idle": "2024-01-10T00:13:15.538629Z", + "shell.execute_reply": "2024-01-10T00:13:15.538075Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
QRST
0-50-6-4
1-40-22
25027
\n", + "
" + ], + "text/plain": [ + " Q R S T\n", + "0 -5 0 -6 -4\n", + "1 -4 0 -2 2\n", + "2 5 0 2 7" + ] + }, + "execution_count": 54, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.subtract(df['R'], axis=0)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Handling missing data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Real data is messy. Often some data are missing." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Various conventions can be considered to handle missing data.\n", + "\n", + "We will focus on the use of the floating point IEEE value NaN (not a number) to represent missing data." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "Pandas interprets NaN as Null values.\n", + "\n", + "(Pandas also supports `None` but we will focus on NaN here.)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Arithematic operations with NaN values result in NaN." + ] + }, + { + "cell_type": "code", + "execution_count": 55, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.542302Z", + "iopub.status.busy": "2024-01-10T00:13:15.541956Z", + "iopub.status.idle": "2024-01-10T00:13:15.545706Z", + "shell.execute_reply": "2024-01-10T00:13:15.545196Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "nan" + ] + }, + "execution_count": 55, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "1 + np.nan" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Operating on Null values" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Several useful methods exist to work with NaNs, for example to detect, drop or replace:\n", + "- `isnull()`: Generate a boolean mask indicating missing values.\n", + "- `notnull()`: Opposite of `isnull()`.\n", + "- `dropna()`: Return a filtered version of the data.\n", + "- `fillna()`: Return a copy of the data with missing values filled." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Detecting null values\n", + "\n", + "Pandas `isnull` and `notnull` are useful for detecting null values." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [ + "exercise_pointer" + ] + }, + "source": [ + "**Exercises:** *You can now complete Exercise 3 in the exercises associated with this lecture.*" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "## Dropping null values\n", + "\n", + "Direct routines may be used to drop null values (i.e. `dropna`), rather than constructing masks as performed above." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [ + "exercise_pointer" + ] + }, + "source": [ + "**Exercises:** *You can now complete Exercise 4 in the exercises associated with this lecture.*" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Dropping null values from `DataFrames`\n", + "\n", + "For `DataFrames`, there are multiple ways null values can be dropped." + ] + }, + { + "cell_type": "code", + "execution_count": 56, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.549490Z", + "iopub.status.busy": "2024-01-10T00:13:15.549132Z", + "iopub.status.idle": "2024-01-10T00:13:15.556771Z", + "shell.execute_reply": "2024-01-10T00:13:15.556194Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
012
01.0NaN2
12.03.05
2NaN4.06
\n", + "
" + ], + "text/plain": [ + " 0 1 2\n", + "0 1.0 NaN 2\n", + "1 2.0 3.0 5\n", + "2 NaN 4.0 6" + ] + }, + "execution_count": 56, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df = pd.DataFrame([[1, np.nan, 2],\n", + " [2, 3, 5],\n", + " [np.nan, 4, 6]])\n", + "df" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "By default `dropna` operates row-wise and drops all rows that contain any NaNs." + ] + }, + { + "cell_type": "code", + "execution_count": 57, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.559929Z", + "iopub.status.busy": "2024-01-10T00:13:15.559542Z", + "iopub.status.idle": "2024-01-10T00:13:15.566641Z", + "shell.execute_reply": "2024-01-10T00:13:15.566094Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
012
12.03.05
\n", + "
" + ], + "text/plain": [ + " 0 1 2\n", + "1 2.0 3.0 5" + ] + }, + "execution_count": 57, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.dropna()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Can also operate column-wise." + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.569601Z", + "iopub.status.busy": "2024-01-10T00:13:15.569257Z", + "iopub.status.idle": "2024-01-10T00:13:15.575786Z", + "shell.execute_reply": "2024-01-10T00:13:15.575259Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
012
01.0NaN2
12.03.05
2NaN4.06
\n", + "
" + ], + "text/plain": [ + " 0 1 2\n", + "0 1.0 NaN 2\n", + "1 2.0 3.0 5\n", + "2 NaN 4.0 6" + ] + }, + "execution_count": 58, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df" + ] + }, + { + "cell_type": "code", + "execution_count": 59, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.578790Z", + "iopub.status.busy": "2024-01-10T00:13:15.578414Z", + "iopub.status.idle": "2024-01-10T00:13:15.584880Z", + "shell.execute_reply": "2024-01-10T00:13:15.584357Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
2
02
15
26
\n", + "
" + ], + "text/plain": [ + " 2\n", + "0 2\n", + "1 5\n", + "2 6" + ] + }, + "execution_count": 59, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.dropna(axis='columns')" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "More sophisticated approaches can also be considered (e.g. only dropping rows/columns if all entries or a certain number of NaNs appear)." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Replacing null values\n", + "\n", + "Null values can be easily replaced using `fillna`." + ] + }, + { + "cell_type": "code", + "execution_count": 60, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.588227Z", + "iopub.status.busy": "2024-01-10T00:13:15.587864Z", + "iopub.status.idle": "2024-01-10T00:13:15.594332Z", + "shell.execute_reply": "2024-01-10T00:13:15.593819Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
012
01.0NaN2
12.03.05
2NaN4.06
\n", + "
" + ], + "text/plain": [ + " 0 1 2\n", + "0 1.0 NaN 2\n", + "1 2.0 3.0 5\n", + "2 NaN 4.0 6" + ] + }, + "execution_count": 60, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df" + ] + }, + { + "cell_type": "code", + "execution_count": 61, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.597648Z", + "iopub.status.busy": "2024-01-10T00:13:15.597298Z", + "iopub.status.idle": "2024-01-10T00:13:15.604154Z", + "shell.execute_reply": "2024-01-10T00:13:15.603634Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
012
01.00.02
12.03.05
20.04.06
\n", + "
" + ], + "text/plain": [ + " 0 1 2\n", + "0 1.0 0.0 2\n", + "1 2.0 3.0 5\n", + "2 0.0 4.0 6" + ] + }, + "execution_count": 61, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.fillna(0.0)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Can also fill using adjacent values." + ] + }, + { + "cell_type": "code", + "execution_count": 62, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.607243Z", + "iopub.status.busy": "2024-01-10T00:13:15.606901Z", + "iopub.status.idle": "2024-01-10T00:13:15.613298Z", + "shell.execute_reply": "2024-01-10T00:13:15.612778Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
012
01.0NaN2
12.03.05
2NaN4.06
\n", + "
" + ], + "text/plain": [ + " 0 1 2\n", + "0 1.0 NaN 2\n", + "1 2.0 3.0 5\n", + "2 NaN 4.0 6" + ] + }, + "execution_count": 62, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df" + ] + }, + { + "cell_type": "code", + "execution_count": 63, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.615998Z", + "iopub.status.busy": "2024-01-10T00:13:15.615699Z", + "iopub.status.idle": "2024-01-10T00:13:15.623380Z", + "shell.execute_reply": "2024-01-10T00:13:15.622863Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
012
01.01.02.0
12.03.05.0
2NaN4.06.0
\n", + "
" + ], + "text/plain": [ + " 0 1 2\n", + "0 1.0 1.0 2.0\n", + "1 2.0 3.0 5.0\n", + "2 NaN 4.0 6.0" + ] + }, + "execution_count": 63, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.fillna(method='ffill', axis='columns')" + ] + }, + { + "cell_type": "code", + "execution_count": 64, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.626132Z", + "iopub.status.busy": "2024-01-10T00:13:15.625790Z", + "iopub.status.idle": "2024-01-10T00:13:15.632720Z", + "shell.execute_reply": "2024-01-10T00:13:15.632070Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
012
01.0NaN2
12.03.05
22.04.06
\n", + "
" + ], + "text/plain": [ + " 0 1 2\n", + "0 1.0 NaN 2\n", + "1 2.0 3.0 5\n", + "2 2.0 4.0 6" + ] + }, + "execution_count": 64, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.fillna(method='ffill', axis='rows')" + ] + }, + { + "cell_type": "code", + "execution_count": 65, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.635515Z", + "iopub.status.busy": "2024-01-10T00:13:15.635170Z", + "iopub.status.idle": "2024-01-10T00:13:15.642851Z", + "shell.execute_reply": "2024-01-10T00:13:15.642316Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
012
01.02.02.0
12.03.05.0
24.04.06.0
\n", + "
" + ], + "text/plain": [ + " 0 1 2\n", + "0 1.0 2.0 2.0\n", + "1 2.0 3.0 5.0\n", + "2 4.0 4.0 6.0" + ] + }, + "execution_count": 65, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.fillna(method='bfill', axis='columns')" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Combining data-sets" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Define helper functions" + ] + }, + { + "cell_type": "code", + "execution_count": 66, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.645704Z", + "iopub.status.busy": "2024-01-10T00:13:15.645362Z", + "iopub.status.idle": "2024-01-10T00:13:15.653232Z", + "shell.execute_reply": "2024-01-10T00:13:15.652717Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
ABC
0A0B0C0
1A1B1C1
2A2B2C2
\n", + "
" + ], + "text/plain": [ + " A B C\n", + "0 A0 B0 C0\n", + "1 A1 B1 C1\n", + "2 A2 B2 C2" + ] + }, + "execution_count": 66, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "def make_df(cols, ind):\n", + " \"\"\"Quickly make a DataFrame\"\"\"\n", + " data = {c: [str(c) + str(i) for i in ind]\n", + " for c in cols}\n", + " return pd.DataFrame(data, ind)\n", + "\n", + "# example DataFrame\n", + "make_df('ABC', range(3))" + ] + }, + { + "cell_type": "code", + "execution_count": 67, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.655999Z", + "iopub.status.busy": "2024-01-10T00:13:15.655658Z", + "iopub.status.idle": "2024-01-10T00:13:15.658376Z", + "shell.execute_reply": "2024-01-10T00:13:15.657849Z" + } + }, + "outputs": [], + "source": [ + "from IPython.display import display" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Concatenation\n", + "\n", + "Can concatenate `Series` and `DataFrame` objects with `pd.concat()`." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "Default is to concatenate over rows." + ] + }, + { + "cell_type": "code", + "execution_count": 68, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.661244Z", + "iopub.status.busy": "2024-01-10T00:13:15.660906Z", + "iopub.status.idle": "2024-01-10T00:13:15.674198Z", + "shell.execute_reply": "2024-01-10T00:13:15.673678Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
AB
1A1B1
2A2B2
\n", + "
" + ], + "text/plain": [ + " A B\n", + "1 A1 B1\n", + "2 A2 B2" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
AB
3A3B3
4A4B4
\n", + "
" + ], + "text/plain": [ + " A B\n", + "3 A3 B3\n", + "4 A4 B4" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
AB
1A1B1
2A2B2
3A3B3
4A4B4
\n", + "
" + ], + "text/plain": [ + " A B\n", + "1 A1 B1\n", + "2 A2 B2\n", + "3 A3 B3\n", + "4 A4 B4" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df1 = make_df('AB', [1, 2])\n", + "df2 = make_df('AB', [3, 4])\n", + "display(df1, df2, pd.concat([df1, df2]))" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Can also concatenate over columns." + ] + }, + { + "cell_type": "code", + "execution_count": 69, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.677093Z", + "iopub.status.busy": "2024-01-10T00:13:15.676742Z", + "iopub.status.idle": "2024-01-10T00:13:15.690361Z", + "shell.execute_reply": "2024-01-10T00:13:15.689828Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
AB
0A0B0
1A1B1
\n", + "
" + ], + "text/plain": [ + " A B\n", + "0 A0 B0\n", + "1 A1 B1" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
CD
0C0D0
1C1D1
\n", + "
" + ], + "text/plain": [ + " C D\n", + "0 C0 D0\n", + "1 C1 D1" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
ABCD
0A0B0C0D0
1A1B1C1D1
\n", + "
" + ], + "text/plain": [ + " A B C D\n", + "0 A0 B0 C0 D0\n", + "1 A1 B1 C1 D1" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df3 = make_df('AB', [0, 1])\n", + "df4 = make_df('CD', [0, 1])\n", + "display(df3, df4, pd.concat([df3, df4], axis='columns'))" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Duplicated indices\n", + "\n", + "Can have duplicated indices." + ] + }, + { + "cell_type": "code", + "execution_count": 70, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.693461Z", + "iopub.status.busy": "2024-01-10T00:13:15.693106Z", + "iopub.status.idle": "2024-01-10T00:13:15.706128Z", + "shell.execute_reply": "2024-01-10T00:13:15.705603Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
AB
0A0B0
1A1B1
\n", + "
" + ], + "text/plain": [ + " A B\n", + "0 A0 B0\n", + "1 A1 B1" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
AB
0A2B2
1A3B3
\n", + "
" + ], + "text/plain": [ + " A B\n", + "0 A2 B2\n", + "1 A3 B3" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
AB
0A0B0
1A1B1
0A2B2
1A3B3
\n", + "
" + ], + "text/plain": [ + " A B\n", + "0 A0 B0\n", + "1 A1 B1\n", + "0 A2 B2\n", + "1 A3 B3" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "x = make_df('AB', [0, 1])\n", + "y = make_df('AB', [2, 3])\n", + "y.index = x.index # make duplicate indices!\n", + "display(x, y, pd.concat([x, y]))" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Ignoring index\n", + "\n", + "Can ignore index." + ] + }, + { + "cell_type": "code", + "execution_count": 71, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.708970Z", + "iopub.status.busy": "2024-01-10T00:13:15.708624Z", + "iopub.status.idle": "2024-01-10T00:13:15.720590Z", + "shell.execute_reply": "2024-01-10T00:13:15.720060Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
AB
0A0B0
1A1B1
\n", + "
" + ], + "text/plain": [ + " A B\n", + "0 A0 B0\n", + "1 A1 B1" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
AB
0A2B2
1A3B3
\n", + "
" + ], + "text/plain": [ + " A B\n", + "0 A2 B2\n", + "1 A3 B3" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
AB
0A0B0
1A1B1
2A2B2
3A3B3
\n", + "
" + ], + "text/plain": [ + " A B\n", + "0 A0 B0\n", + "1 A1 B1\n", + "2 A2 B2\n", + "3 A3 B3" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "display(x, y, pd.concat([x, y], ignore_index=True))" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Concantenation with joins\n", + "\n", + "Can join `DataFrames` with different column names." + ] + }, + { + "cell_type": "code", + "execution_count": 72, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.723441Z", + "iopub.status.busy": "2024-01-10T00:13:15.723097Z", + "iopub.status.idle": "2024-01-10T00:13:15.738457Z", + "shell.execute_reply": "2024-01-10T00:13:15.737891Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
ABC
1A1B1C1
2A2B2C2
\n", + "
" + ], + "text/plain": [ + " A B C\n", + "1 A1 B1 C1\n", + "2 A2 B2 C2" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
BCD
3B3C3D3
4B4C4D4
\n", + "
" + ], + "text/plain": [ + " B C D\n", + "3 B3 C3 D3\n", + "4 B4 C4 D4" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
ABCD
1A1B1C1NaN
2A2B2C2NaN
3NaNB3C3D3
4NaNB4C4D4
\n", + "
" + ], + "text/plain": [ + " A B C D\n", + "1 A1 B1 C1 NaN\n", + "2 A2 B2 C2 NaN\n", + "3 NaN B3 C3 D3\n", + "4 NaN B4 C4 D4" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df5 = make_df('ABC', [1, 2])\n", + "df6 = make_df('BCD', [3, 4])\n", + "display(df5, df6, pd.concat([df5, df6]))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Entries with no data are filled with NaN.\n", + "\n", + "Default join is the *union* of the columns of the two `DataFrames`." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Can also perform different types of joins.\n", + "\n", + "For example, the *intersection* of the columns of the two DataFrames." + ] + }, + { + "cell_type": "code", + "execution_count": 73, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.741470Z", + "iopub.status.busy": "2024-01-10T00:13:15.741118Z", + "iopub.status.idle": "2024-01-10T00:13:15.754499Z", + "shell.execute_reply": "2024-01-10T00:13:15.753943Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
ABC
1A1B1C1
2A2B2C2
\n", + "
" + ], + "text/plain": [ + " A B C\n", + "1 A1 B1 C1\n", + "2 A2 B2 C2" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
BCD
3B3C3D3
4B4C4D4
\n", + "
" + ], + "text/plain": [ + " B C D\n", + "3 B3 C3 D3\n", + "4 B4 C4 D4" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
BC
1B1C1
2B2C2
3B3C3
4B4C4
\n", + "
" + ], + "text/plain": [ + " B C\n", + "1 B1 C1\n", + "2 B2 C2\n", + "3 B3 C3\n", + "4 B4 C4" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "display(df5, df6, pd.concat([df5, df6], join='inner'))" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Relational combinations\n", + "\n", + "Pandas also provides functionality to perform relational algebra (cf. relational databases).\n", + "\n", + "Hence, Pandas data structures provide analog not only of NumPy array and dictionary, but also relational database." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "Functionality provied by `pd.merge()` function." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### One-to-one join" + ] + }, + { + "cell_type": "code", + "execution_count": 74, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.757544Z", + "iopub.status.busy": "2024-01-10T00:13:15.757195Z", + "iopub.status.idle": "2024-01-10T00:13:15.772846Z", + "shell.execute_reply": "2024-01-10T00:13:15.772302Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
employeegroup
0BobAccounting
1JakeEngineering
2LisaEngineering
3SueHR
\n", + "
" + ], + "text/plain": [ + " employee group\n", + "0 Bob Accounting\n", + "1 Jake Engineering\n", + "2 Lisa Engineering\n", + "3 Sue HR" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
employeehire_date
0Lisa2004
1Bob2008
2Jake2012
3Sue2014
\n", + "
" + ], + "text/plain": [ + " employee hire_date\n", + "0 Lisa 2004\n", + "1 Bob 2008\n", + "2 Jake 2012\n", + "3 Sue 2014" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
employeegrouphire_date
0BobAccounting2008
1JakeEngineering2012
2LisaEngineering2004
3SueHR2014
\n", + "
" + ], + "text/plain": [ + " employee group hire_date\n", + "0 Bob Accounting 2008\n", + "1 Jake Engineering 2012\n", + "2 Lisa Engineering 2004\n", + "3 Sue HR 2014" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],\n", + " 'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})\n", + "df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],\n", + " 'hire_date': [2004, 2008, 2012, 2014]})\n", + "df3 = pd.merge(df1, df2)\n", + "display(df1,df2,df3)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Recognises that \"employee\" column common and automatically selects as key for the relational join." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Many-to-one joins" + ] + }, + { + "cell_type": "code", + "execution_count": 75, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.775906Z", + "iopub.status.busy": "2024-01-10T00:13:15.775550Z", + "iopub.status.idle": "2024-01-10T00:13:15.790962Z", + "shell.execute_reply": "2024-01-10T00:13:15.790405Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
employeegrouphire_date
0BobAccounting2008
1JakeEngineering2012
2LisaEngineering2004
3SueHR2014
\n", + "
" + ], + "text/plain": [ + " employee group hire_date\n", + "0 Bob Accounting 2008\n", + "1 Jake Engineering 2012\n", + "2 Lisa Engineering 2004\n", + "3 Sue HR 2014" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
groupsupervisor
0AccountingCarly
1EngineeringGuido
2HRSteve
\n", + "
" + ], + "text/plain": [ + " group supervisor\n", + "0 Accounting Carly\n", + "1 Engineering Guido\n", + "2 HR Steve" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
employeegrouphire_datesupervisor
0BobAccounting2008Carly
1JakeEngineering2012Guido
2LisaEngineering2004Guido
3SueHR2014Steve
\n", + "
" + ], + "text/plain": [ + " employee group hire_date supervisor\n", + "0 Bob Accounting 2008 Carly\n", + "1 Jake Engineering 2012 Guido\n", + "2 Lisa Engineering 2004 Guido\n", + "3 Sue HR 2014 Steve" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],\n", + " 'supervisor': ['Carly', 'Guido', 'Steve']})\n", + "display(df3, df4, pd.merge(df3, df4))" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### The `on` keyword" + ] + }, + { + "cell_type": "code", + "execution_count": 76, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.793866Z", + "iopub.status.busy": "2024-01-10T00:13:15.793517Z", + "iopub.status.idle": "2024-01-10T00:13:15.807076Z", + "shell.execute_reply": "2024-01-10T00:13:15.806535Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
employeegroup
0BobAccounting
1JakeEngineering
2LisaEngineering
3SueHR
\n", + "
" + ], + "text/plain": [ + " employee group\n", + "0 Bob Accounting\n", + "1 Jake Engineering\n", + "2 Lisa Engineering\n", + "3 Sue HR" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
employeehire_date
0Lisa2004
1Bob2008
2Jake2012
3Sue2014
\n", + "
" + ], + "text/plain": [ + " employee hire_date\n", + "0 Lisa 2004\n", + "1 Bob 2008\n", + "2 Jake 2012\n", + "3 Sue 2014" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
employeegrouphire_date
0BobAccounting2008
1JakeEngineering2012
2LisaEngineering2004
3SueHR2014
\n", + "
" + ], + "text/plain": [ + " employee group hire_date\n", + "0 Bob Accounting 2008\n", + "1 Jake Engineering 2012\n", + "2 Lisa Engineering 2004\n", + "3 Sue HR 2014" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "display(df1, df2, pd.merge(df1, df2, on='employee'))" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### The `left_on` and `right_on` keywords" + ] + }, + { + "cell_type": "code", + "execution_count": 77, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.809978Z", + "iopub.status.busy": "2024-01-10T00:13:15.809622Z", + "iopub.status.idle": "2024-01-10T00:13:15.823891Z", + "shell.execute_reply": "2024-01-10T00:13:15.823352Z" + }, + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
employeegroup
0BobAccounting
1JakeEngineering
2LisaEngineering
3SueHR
\n", + "
" + ], + "text/plain": [ + " employee group\n", + "0 Bob Accounting\n", + "1 Jake Engineering\n", + "2 Lisa Engineering\n", + "3 Sue HR" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
namesalary
0Bob70000
1Jake80000
2Lisa120000
3Sue90000
\n", + "
" + ], + "text/plain": [ + " name salary\n", + "0 Bob 70000\n", + "1 Jake 80000\n", + "2 Lisa 120000\n", + "3 Sue 90000" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
employeegroupnamesalary
0BobAccountingBob70000
1JakeEngineeringJake80000
2LisaEngineeringLisa120000
3SueHRSue90000
\n", + "
" + ], + "text/plain": [ + " employee group name salary\n", + "0 Bob Accounting Bob 70000\n", + "1 Jake Engineering Jake 80000\n", + "2 Lisa Engineering Lisa 120000\n", + "3 Sue HR Sue 90000" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df3 = pd.DataFrame({'name': ['Bob', 'Jake', 'Lisa', 'Sue'],\n", + " 'salary': [70000, 80000, 120000, 90000]})\n", + "display(df1, df3, pd.merge(df1, df3, left_on=\"employee\", right_on=\"name\"))" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Employee and name both included now, so may want to drop one." + ] + }, + { + "cell_type": "code", + "execution_count": 78, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.826815Z", + "iopub.status.busy": "2024-01-10T00:13:15.826465Z", + "iopub.status.idle": "2024-01-10T00:13:15.834368Z", + "shell.execute_reply": "2024-01-10T00:13:15.833835Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
employeegroupnamesalary
0BobAccountingBob70000
1JakeEngineeringJake80000
2LisaEngineeringLisa120000
3SueHRSue90000
\n", + "
" + ], + "text/plain": [ + " employee group name salary\n", + "0 Bob Accounting Bob 70000\n", + "1 Jake Engineering Jake 80000\n", + "2 Lisa Engineering Lisa 120000\n", + "3 Sue HR Sue 90000" + ] + }, + "execution_count": 78, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pd.merge(df1, df3, left_on=\"employee\", right_on=\"name\")" + ] + }, + { + "cell_type": "code", + "execution_count": 79, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.837233Z", + "iopub.status.busy": "2024-01-10T00:13:15.836883Z", + "iopub.status.idle": "2024-01-10T00:13:15.844804Z", + "shell.execute_reply": "2024-01-10T00:13:15.844272Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
employeegroupsalary
0BobAccounting70000
1JakeEngineering80000
2LisaEngineering120000
3SueHR90000
\n", + "
" + ], + "text/plain": [ + " employee group salary\n", + "0 Bob Accounting 70000\n", + "1 Jake Engineering 80000\n", + "2 Lisa Engineering 120000\n", + "3 Sue HR 90000" + ] + }, + "execution_count": 79, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pd.merge(df1, df3, left_on=\"employee\", right_on=\"name\").drop('name', axis='columns')" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### The `left_index` and `right_index` keywords\n", + "\n", + "Often one wants to join on index." + ] + }, + { + "cell_type": "code", + "execution_count": 80, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.847768Z", + "iopub.status.busy": "2024-01-10T00:13:15.847396Z", + "iopub.status.idle": "2024-01-10T00:13:15.856391Z", + "shell.execute_reply": "2024-01-10T00:13:15.855859Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
group
employee
BobAccounting
JakeEngineering
LisaEngineering
SueHR
\n", + "
" + ], + "text/plain": [ + " group\n", + "employee \n", + "Bob Accounting\n", + "Jake Engineering\n", + "Lisa Engineering\n", + "Sue HR" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
hire_date
employee
Lisa2004
Bob2008
Jake2012
Sue2014
\n", + "
" + ], + "text/plain": [ + " hire_date\n", + "employee \n", + "Lisa 2004\n", + "Bob 2008\n", + "Jake 2012\n", + "Sue 2014" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df1a = df1.set_index('employee')\n", + "df2a = df2.set_index('employee')\n", + "display(df1a, df2a)" + ] + }, + { + "cell_type": "code", + "execution_count": 81, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.859251Z", + "iopub.status.busy": "2024-01-10T00:13:15.858901Z", + "iopub.status.idle": "2024-01-10T00:13:15.866112Z", + "shell.execute_reply": "2024-01-10T00:13:15.865585Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
grouphire_date
employee
BobAccounting2008
JakeEngineering2012
LisaEngineering2004
SueHR2014
\n", + "
" + ], + "text/plain": [ + " group hire_date\n", + "employee \n", + "Bob Accounting 2008\n", + "Jake Engineering 2012\n", + "Lisa Engineering 2004\n", + "Sue HR 2014" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "display(pd.merge(df1a, df2a, left_index=True, right_index=True))" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Set arithmetic for joins \n", + "\n", + "Have so far been considering relational joins based on *intersection* \n", + "(also called *inner* join)." + ] + }, + { + "cell_type": "code", + "execution_count": 82, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.869060Z", + "iopub.status.busy": "2024-01-10T00:13:15.868709Z", + "iopub.status.idle": "2024-01-10T00:13:15.885530Z", + "shell.execute_reply": "2024-01-10T00:13:15.884965Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
namefood
0Peterfish
1Paulbeans
2Marybread
\n", + "
" + ], + "text/plain": [ + " name food\n", + "0 Peter fish\n", + "1 Paul beans\n", + "2 Mary bread" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
namedrink
0Marywine
1Josephbeer
\n", + "
" + ], + "text/plain": [ + " name drink\n", + "0 Mary wine\n", + "1 Joseph beer" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
namefooddrink
0Marybreadwine
\n", + "
" + ], + "text/plain": [ + " name food drink\n", + "0 Mary bread wine" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df6 = pd.DataFrame({'name': ['Peter', 'Paul', 'Mary'],\n", + " 'food': ['fish', 'beans', 'bread']},\n", + " columns=['name', 'food'])\n", + "df7 = pd.DataFrame({'name': ['Mary', 'Joseph'],\n", + " 'drink': ['wine', 'beer']},\n", + " columns=['name', 'drink'])\n", + "display(df6, df7, pd.merge(df6, df7, how='inner'))" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "##### Outer join\n", + "\n", + "Can also join based on *union* (missing entries filled with NaNs)." + ] + }, + { + "cell_type": "code", + "execution_count": 83, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.888739Z", + "iopub.status.busy": "2024-01-10T00:13:15.888382Z", + "iopub.status.idle": "2024-01-10T00:13:15.903223Z", + "shell.execute_reply": "2024-01-10T00:13:15.902673Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
namefood
0Peterfish
1Paulbeans
2Marybread
\n", + "
" + ], + "text/plain": [ + " name food\n", + "0 Peter fish\n", + "1 Paul beans\n", + "2 Mary bread" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
namedrink
0Marywine
1Josephbeer
\n", + "
" + ], + "text/plain": [ + " name drink\n", + "0 Mary wine\n", + "1 Joseph beer" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
namefooddrink
0PeterfishNaN
1PaulbeansNaN
2Marybreadwine
3JosephNaNbeer
\n", + "
" + ], + "text/plain": [ + " name food drink\n", + "0 Peter fish NaN\n", + "1 Paul beans NaN\n", + "2 Mary bread wine\n", + "3 Joseph NaN beer" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "display(df6, df7, pd.merge(df6, df7, how='outer'))" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "##### Left and right join\n", + "\n", + "Can also join based on *left* or *right* entries." + ] + }, + { + "cell_type": "code", + "execution_count": 84, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.906173Z", + "iopub.status.busy": "2024-01-10T00:13:15.905822Z", + "iopub.status.idle": "2024-01-10T00:13:15.920315Z", + "shell.execute_reply": "2024-01-10T00:13:15.919750Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
namefood
0Peterfish
1Paulbeans
2Marybread
\n", + "
" + ], + "text/plain": [ + " name food\n", + "0 Peter fish\n", + "1 Paul beans\n", + "2 Mary bread" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
namedrink
0Marywine
1Josephbeer
\n", + "
" + ], + "text/plain": [ + " name drink\n", + "0 Mary wine\n", + "1 Joseph beer" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
namefooddrink
0PeterfishNaN
1PaulbeansNaN
2Marybreadwine
\n", + "
" + ], + "text/plain": [ + " name food drink\n", + "0 Peter fish NaN\n", + "1 Paul beans NaN\n", + "2 Mary bread wine" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "display(df6, df7, pd.merge(df6, df7, how='left'))" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Overlapping column names\n", + "\n", + "Possible for DataFrames to have conflicting columns." + ] + }, + { + "cell_type": "code", + "execution_count": 85, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.923323Z", + "iopub.status.busy": "2024-01-10T00:13:15.922959Z", + "iopub.status.idle": "2024-01-10T00:13:15.933270Z", + "shell.execute_reply": "2024-01-10T00:13:15.932631Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
namerank
0Bob1
1Jake2
2Lisa3
3Sue4
\n", + "
" + ], + "text/plain": [ + " name rank\n", + "0 Bob 1\n", + "1 Jake 2\n", + "2 Lisa 3\n", + "3 Sue 4" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
namerank
0Bob3
1Jake1
2Lisa4
3Sue2
\n", + "
" + ], + "text/plain": [ + " name rank\n", + "0 Bob 3\n", + "1 Jake 1\n", + "2 Lisa 4\n", + "3 Sue 2" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df8 = pd.DataFrame({'name': ['Bob', 'Jake', 'Lisa', 'Sue'],\n", + " 'rank': [1, 2, 3, 4]})\n", + "df9 = pd.DataFrame({'name': ['Bob', 'Jake', 'Lisa', 'Sue'],\n", + " 'rank': [3, 1, 4, 2]})\n", + "display(df8, df9)" + ] + }, + { + "cell_type": "code", + "execution_count": 86, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:15.937472Z", + "iopub.status.busy": "2024-01-10T00:13:15.936984Z", + "iopub.status.idle": "2024-01-10T00:13:15.946330Z", + "shell.execute_reply": "2024-01-10T00:13:15.945561Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
namerank_Lrank_R
0Bob13
1Jake21
2Lisa34
3Sue42
\n", + "
" + ], + "text/plain": [ + " name rank_L rank_R\n", + "0 Bob 1 3\n", + "1 Jake 2 1\n", + "2 Lisa 3 4\n", + "3 Sue 4 2" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "display(pd.merge(df8, df9, on=\"name\", suffixes=[\"_L\", \"_R\"]))" + ] + } + ], + "metadata": { + "celltoolbar": "Slideshow", + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.18" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/week1/slides/Lecture02_Pandas_Exercises_no_solutions.ipynb b/week1/slides/Lecture02_Pandas_Exercises_no_solutions.ipynb new file mode 100644 index 0000000..8fb6c45 --- /dev/null +++ b/week1/slides/Lecture02_Pandas_Exercises_no_solutions.ipynb @@ -0,0 +1 @@ +{"cells": [{"cell_type": "markdown", "metadata": {}, "source": ["# Exercises for Lecture 2 (Data wrangling with Pandas)"]}, {"cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": ["import datetime\n", "now = datetime.datetime.now()\n", "print(\"Last executed: \" + now.strftime(\"%Y-%m-%d %H:%M:%S\"))"]}, {"cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": ["import pandas as pd\n", "import numpy as np"]}, {"cell_type": "markdown", "metadata": {"slideshow": {"slide_type": "subslide"}}, "source": ["## Exercise 1: Data selection\n"]}, {"cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": ["area = pd.Series({'California': 423967, 'Texas': 695662,\n", " 'New York': 141297, 'Florida': 170312,\n", " 'Illinois': 149995})\n", "pop = pd.Series({'California': 38332521, 'Texas': 26448193,\n", " 'New York': 19651127, 'Florida': 19552860,\n", " 'Illinois': 12882135})\n", "data = pd.DataFrame({'area':area, 'population':pop})\n", "data"]}, {"cell_type": "markdown", "metadata": {}, "source": ["Create a `DataFrame` containing only those states that have an area greater than 150,000 and a population greater than 20 million."]}, {"cell_type": "markdown", "metadata": {}, "source": ["## Exercise 2: Operating on data in Pandas\n", "Consider the following two series."]}, {"cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": ["area = pd.Series({'Alaska': 1723337, 'Texas': 695662,\n", " 'California': 423967}, name='area')\n", "population = pd.Series({'California': 38332521, 'Texas': 26448193,\n", " 'New York': 19651127}, name='population') "]}, {"cell_type": "markdown", "metadata": {"slideshow": {"slide_type": "-"}}, "source": ["Compute the population density for each state (where possible)."]}, {"cell_type": "markdown", "metadata": {"slideshow": {"slide_type": "subslide"}}, "source": ["## Exercise 3: Detecting null values"]}, {"cell_type": "markdown", "metadata": {}, "source": ["Consider the following series."]}, {"cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": ["data = pd.Series([1, np.nan, 'hello', np.nan])\n", "data"]}, {"cell_type": "markdown", "metadata": {}, "source": ["Compute a new Series of bools that specify whether each entry in the above Series is *not* NaN. Using this Series, construct a new series from the original data that does not contain the NaN entries."]}, {"cell_type": "markdown", "metadata": {"slideshow": {"slide_type": "subslide"}}, "source": ["### Exercise 4: Remove null values directly\n", "\n", "Remove null values from the previous data `Series` directly."]}], "metadata": {"celltoolbar": "Tags", "kernelspec": {"display_name": "Python 3", "language": "python", "name": "python3"}, "language_info": {"codemirror_mode": {"name": "ipython", "version": 3}, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.5"}}, "nbformat": 4, "nbformat_minor": 4} \ No newline at end of file diff --git a/week1/slides/Lecture03_Scikit-Learn.ipynb b/week1/slides/Lecture03_Scikit-Learn.ipynb new file mode 100644 index 0000000..6149ebf --- /dev/null +++ b/week1/slides/Lecture03_Scikit-Learn.ipynb @@ -0,0 +1,2087 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "# Lecture 3: Introduction to Scikit-Learn" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "skip" + } + }, + "source": [ + "![](https://www.tensorflow.org/images/colab_logo_32px.png)\n", + "[Run in colab](https://colab.research.google.com/drive/1TZW7xcheEHt7DdDraOZUiSG92rqF3TGF)" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:23.213712Z", + "iopub.status.busy": "2024-01-10T00:13:23.213476Z", + "iopub.status.idle": "2024-01-10T00:13:23.223868Z", + "shell.execute_reply": "2024-01-10T00:13:23.223286Z" + }, + "slideshow": { + "slide_type": "skip" + } + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Last executed: 2024-01-10 00:13:23\n" + ] + } + ], + "source": [ + "import datetime\n", + "now = datetime.datetime.now()\n", + "print(\"Last executed: \" + now.strftime(\"%Y-%m-%d %H:%M:%S\"))" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Scikit-Learn overview\n", + "\n", + "[Scikit-Learn](http://scikit-learn.org/stable/) is an extremely popular python machine learning package.\n", + "\n", + "Provides implementations of a number of different machine learning algorithms." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "- Clean, uniform and streamlined API.\n", + "- Useful and complete online documentation.\n", + "- Straightforward to switch models or algorithms." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Two main general concepts:\n", + "- Data representation\n", + "- Estimator API" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Data representations" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Scikit-Learn includes a number of example data-sets" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:23.262339Z", + "iopub.status.busy": "2024-01-10T00:13:23.261807Z", + "iopub.status.idle": "2024-01-10T00:13:23.802820Z", + "shell.execute_reply": "2024-01-10T00:13:23.802100Z" + } + }, + "outputs": [], + "source": [ + "from sklearn import datasets" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:23.806483Z", + "iopub.status.busy": "2024-01-10T00:13:23.805791Z", + "iopub.status.idle": "2024-01-10T00:13:23.810230Z", + "shell.execute_reply": "2024-01-10T00:13:23.809598Z" + } + }, + "outputs": [], + "source": [ + "# Type datasets. to see more\n", + "#datasets." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Data as a table\n", + "\n", + "Best way to think about data in Scikit-Learn is in terms of tables of data.\n", + "\n", + "Using the [`seaborn`](http://seaborn.pydata.org/) library we can read example data-sets as a Pandas `DataFrame`." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:23.813758Z", + "iopub.status.busy": "2024-01-10T00:13:23.813178Z", + "iopub.status.idle": "2024-01-10T00:13:25.297828Z", + "shell.execute_reply": "2024-01-10T00:13:25.297118Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "pandas.core.frame.DataFrame" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import seaborn as sns\n", + "iris = sns.load_dataset('iris')\n", + "type(iris)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:25.301227Z", + "iopub.status.busy": "2024-01-10T00:13:25.300607Z", + "iopub.status.idle": "2024-01-10T00:13:25.313145Z", + "shell.execute_reply": "2024-01-10T00:13:25.312527Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
sepal_lengthsepal_widthpetal_lengthpetal_widthspecies
05.13.51.40.2setosa
14.93.01.40.2setosa
24.73.21.30.2setosa
34.63.11.50.2setosa
45.03.61.40.2setosa
\n", + "
" + ], + "text/plain": [ + " sepal_length sepal_width petal_length petal_width species\n", + "0 5.1 3.5 1.4 0.2 setosa\n", + "1 4.9 3.0 1.4 0.2 setosa\n", + "2 4.7 3.2 1.3 0.2 setosa\n", + "3 4.6 3.1 1.5 0.2 setosa\n", + "4 5.0 3.6 1.4 0.2 setosa" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "iris.head()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Iris data\n", + "\n", + "Here we consider the [Iris flower data](https://en.wikipedia.org/wiki/Iris_flower_data_set).\n", + "\n", + "- Introduced by statistician and biologist Ronald Fisher in 1936 paper.\n", + "\n", + "- Consists of 50 samples of three different species of Iris (Iris Setosa, Iris Virginica and Iris Versicolor).\n", + "\n", + "- Four features were measured from each sample: the length and the width of the sepals and petals, in centimetres. \n" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:25.316231Z", + "iopub.status.busy": "2024-01-10T00:13:25.315790Z", + "iopub.status.idle": "2024-01-10T00:13:25.327069Z", + "shell.execute_reply": "2024-01-10T00:13:25.326456Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
sepal_lengthsepal_widthpetal_lengthpetal_widthspecies
1456.73.05.22.3virginica
1466.32.55.01.9virginica
1476.53.05.22.0virginica
1486.23.45.42.3virginica
1495.93.05.11.8virginica
\n", + "
" + ], + "text/plain": [ + " sepal_length sepal_width petal_length petal_width species\n", + "145 6.7 3.0 5.2 2.3 virginica\n", + "146 6.3 2.5 5.0 1.9 virginica\n", + "147 6.5 3.0 5.2 2.0 virginica\n", + "148 6.2 3.4 5.4 2.3 virginica\n", + "149 5.9 3.0 5.1 1.8 virginica" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "iris.tail()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Parts of a flower\n", + "\n", + "Measured flower [petals](https://en.wikipedia.org/wiki/Petal) and [sepals](https://en.wikipedia.org/wiki/Sepal).\n", + "\n", + "\n", + "\n", + "[Image credit: [Mariana Ruiz](https://en.wikipedia.org/wiki/Sepal#/media/File:Mature_flower_diagram.svg)]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### Images of different species\n", + "\n", + "\n", + "\n", + "##### Iris Setosa\n", + "\n", + "\n", + "\n", + "##### Iris Versicolor\n", + "\n", + "\n", + "\n", + "##### Iris Virginica\n", + "\n", + "\n", + "\n", + "[[Image source](https://github.com/jakevdp/sklearn_tutorial)]\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Features matrix\n", + "\n", + "Recall data represented to learning algorithm as \"*features*\".\n", + "\n", + "Each row corresponds to an observed (*sampled*) flower, with a number of *features*." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:25.330360Z", + "iopub.status.busy": "2024-01-10T00:13:25.329898Z", + "iopub.status.idle": "2024-01-10T00:13:25.341334Z", + "shell.execute_reply": "2024-01-10T00:13:25.340725Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
sepal_lengthsepal_widthpetal_lengthpetal_widthspecies
05.13.51.40.2setosa
14.93.01.40.2setosa
24.73.21.30.2setosa
34.63.11.50.2setosa
45.03.61.40.2setosa
\n", + "
" + ], + "text/plain": [ + " sepal_length sepal_width petal_length petal_width species\n", + "0 5.1 3.5 1.4 0.2 setosa\n", + "1 4.9 3.0 1.4 0.2 setosa\n", + "2 4.7 3.2 1.3 0.2 setosa\n", + "3 4.6 3.1 1.5 0.2 setosa\n", + "4 5.0 3.6 1.4 0.2 setosa" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "iris.head()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "In this example we extract a feature matrix, removing species (which we want to predict)." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:25.344521Z", + "iopub.status.busy": "2024-01-10T00:13:25.343963Z", + "iopub.status.idle": "2024-01-10T00:13:25.356078Z", + "shell.execute_reply": "2024-01-10T00:13:25.355443Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
sepal_lengthsepal_widthpetal_lengthpetal_width
05.13.51.40.2
14.93.01.40.2
24.73.21.30.2
34.63.11.50.2
45.03.61.40.2
\n", + "
" + ], + "text/plain": [ + " sepal_length sepal_width petal_length petal_width\n", + "0 5.1 3.5 1.4 0.2\n", + "1 4.9 3.0 1.4 0.2\n", + "2 4.7 3.2 1.3 0.2\n", + "3 4.6 3.1 1.5 0.2\n", + "4 5.0 3.6 1.4 0.2" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "X_iris = iris.drop('species', axis='columns')\n", + "X_iris.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:25.358964Z", + "iopub.status.busy": "2024-01-10T00:13:25.358716Z", + "iopub.status.idle": "2024-01-10T00:13:25.365488Z", + "shell.execute_reply": "2024-01-10T00:13:25.364851Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "pandas.core.frame.DataFrame" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "type(X_iris)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Target array\n", + "\n", + "Consider 1D *target array* containing labels or targets that we want to predict.\n", + "\n", + "May be numerical values or discrete classes/labels." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "In this example we want to predict the flower species from other measurements." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:25.368660Z", + "iopub.status.busy": "2024-01-10T00:13:25.368188Z", + "iopub.status.idle": "2024-01-10T00:13:25.374927Z", + "shell.execute_reply": "2024-01-10T00:13:25.374241Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "0 setosa\n", + "1 setosa\n", + "2 setosa\n", + "3 setosa\n", + "4 setosa\n", + "Name: species, dtype: object" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "y_iris = iris['species']\n", + "y_iris.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:25.377983Z", + "iopub.status.busy": "2024-01-10T00:13:25.377595Z", + "iopub.status.idle": "2024-01-10T00:13:25.381761Z", + "shell.execute_reply": "2024-01-10T00:13:25.381237Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "pandas.core.series.Series" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "type(y_iris)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Features matrix and target vector\n", + "\n", + "\"data-layout\"\n", + "\n", + "[[Image source](https://github.com/jakevdp/sklearn_tutorial)]" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:25.384689Z", + "iopub.status.busy": "2024-01-10T00:13:25.384254Z", + "iopub.status.idle": "2024-01-10T00:13:25.390554Z", + "shell.execute_reply": "2024-01-10T00:13:25.390008Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "(150, 4)" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "X_iris.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:25.393600Z", + "iopub.status.busy": "2024-01-10T00:13:25.393051Z", + "iopub.status.idle": "2024-01-10T00:13:25.399664Z", + "shell.execute_reply": "2024-01-10T00:13:25.399032Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "(150,)" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "y_iris.shape" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Visualizing the data" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:25.402904Z", + "iopub.status.busy": "2024-01-10T00:13:25.402329Z", + "iopub.status.idle": "2024-01-10T00:13:29.947973Z", + "shell.execute_reply": "2024-01-10T00:13:29.947247Z" + } + }, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "%matplotlib inline\n", + "import seaborn as sns; sns.set()\n", + "sns.pairplot(iris, hue='species', height=1.5);" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [ + "inclass_exercise" + ] + }, + "source": [ + "\n", + "How well do you expect classification to perform with these features and why?" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + }, + "tags": [ + "solution", + "inclass_exercise" + ] + }, + "source": [ + "Fairly well since the different classes are reasonably well separated in feature space." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Scikit-Learn's Estimator API" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Scikit-Learn API design principles\n", + "\n", + "- Consistency: All objects share a common interface.\n", + "- Inspection: All specified parameter values exposed as public attributes.\n", + "- Limited object hierarchy: Only algorithms are represented by Python classes; data-sets/parameters represented in standard formats.\n", + "- Composition: Many machine learning tasks can be expressed as sequences of more fundamental algorithms.\n", + "- Sensible defaults: Library defines appropriate default value." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Impact of design principles\n", + "\n", + "- Makes Scikit-Learn easy to use, once the basic principles are understood. \n", + "- Every machine learning algorithm in Scikit-Learn implemented via the Estimator API.\n", + "- Provides a consistent interface for a wide range of machine learning applications." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### Typical Scikit-Learn Estimator API steps\n", + "\n", + "1. Choose a class of model (import appropriate estimator class).\n", + "2. Choose model hyperparameters (instantiate class with desired values).\n", + "3. Arrange data into a features matrix and target vector.\n", + "4. Fit the model to data (calling `fit` method of model instance).\n", + "5. Apply model to new data:\n", + " - Supervised learning: often predict targets for unknown data using the `predict` method.\n", + " - For unsupervised learning: often transform or infer properties of the data using the `transform` or `predict` method." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Linear regression as machine learning" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:29.951745Z", + "iopub.status.busy": "2024-01-10T00:13:29.951355Z", + "iopub.status.idle": "2024-01-10T00:13:30.270629Z", + "shell.execute_reply": "2024-01-10T00:13:30.269923Z" + } + }, + "outputs": [ + { + "data": { + "image/png": "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yejq7II44vF4VVXVEPD9KSk2OZ0Zqq5uYGJXhFF761B761B761B763RXe5crw9Qqp6iaFAwAABAMAg0AAIh5BBoAABDzCDQAACDmEWgAAEDMI9AAAICYR6ABAAAxj0ADAABiHoEGAADEPAINAACIeQQaAAAQ8wg0AAAg5pk+bRsAgJ7yeg1Oq0ZIEWgAABFVurdSz2wtU3VdU9s1pz1Nc4ryNDY/28KWIZYx5AQAiJjSvZVavXG3T5iRpOq6Jq3euFuleystahliHYEGABARXq+hZ7aW+b1nw9Yyeb1GhFqEeEKgAQBExL6Kmg49M+1V1TVpX0VNZBqEuEKgAQBERE2D/zBj9j7gmwg0AICIyMxIC+l9wDcRaAAAETE0J1NOu/+w4rKfWMINmEWgAQBEhM2WpDlFeX7vmV2Ux340CAqBBgAQMWPzs7Vo5ogOPTUue5oWzRzBPjQIGhvrAQAiamx+tsbkZbFTMEKKQAMAiDibLUnDBjqtbgbiCIEGANAlzlxCrCDQAAA6xZlLiCVMCgYAdMCZS4g1BBoAgA/OXEIsItAAAHxw5hJikek5NAcOHNC6dev00UcfqaysTLm5udq8eXPb5/X19frd736nkpIS7d+/X6mpqRo1apSWLVum/Px8v+9+9913dfXVV3e4ftFFF+nXv/612aYCAILAmUuIRaYDTVlZmUpKSjR69Gh5vV4Zhm+X46FDh/Tss8/qiiuu0M0336ympiatX79eV155pV588UUNGTKk2++49957lZub2/az08nSPgCIFM5cQiwyHWimTp2qoqIiSdLy5cu1e/dun88HDBig119/Xenp6W3XJkyYoKlTp+qZZ57RihUruv2OvLw8jRw50mzTAAAh0Hrmkr9hJ85cQrQxPYfGZvP/yEknneQTZiQpIyNDZ5xxhiormRUPANGOM5cQiyKyD43b7VZZWZnOO++8gO5fsGCBampqlJWVpYsvvlhLly5V7969e9SGlJTAs1tyss3nn4gcam8dam+daKz9+LNOlS3Zpqdf3auqb/TUuBxp+tF383XusPjYhyYaa58oQl37iASaX/7yl0pKStLs2bP93me32zV//nyde+65SktL0zvvvKP169ervLxcjz76aNDfb7MlyenMMP2cw5He/U0IC2pvHWpvnWir/XcnDtYF4wfpk/KjqnI3yuXorYLck5Uchz0z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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "\n", + "n_samples = 50\n", + "rng = np.random.RandomState(42)\n", + "x = 10 * rng.rand(n_samples)\n", + "y = 2 * x - 1 + rng.randn(n_samples)\n", + "plt.scatter(x, y);" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### 1. Choose a class of model\n", + "\n", + "Every class of model is represented by a Python class." + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.274187Z", + "iopub.status.busy": "2024-01-10T00:13:30.273534Z", + "iopub.status.idle": "2024-01-10T00:13:30.331758Z", + "shell.execute_reply": "2024-01-10T00:13:30.331059Z" + } + }, + "outputs": [], + "source": [ + "from sklearn.linear_model import LinearRegression" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### 2. Choose model hyperparameters\n", + "\n", + "Make instance of model with defined hyperparameters (e.g. y-intersect, regularization)." + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.335535Z", + "iopub.status.busy": "2024-01-10T00:13:30.335036Z", + "iopub.status.idle": "2024-01-10T00:13:30.343050Z", + "shell.execute_reply": "2024-01-10T00:13:30.342450Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
LinearRegression()
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" + ], + "text/plain": [ + "LinearRegression()" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "model = LinearRegression(fit_intercept=True)\n", + "model" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### 3. Arrange data into a features matrix and target vector" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.347095Z", + "iopub.status.busy": "2024-01-10T00:13:30.345723Z", + "iopub.status.idle": "2024-01-10T00:13:30.352782Z", + "shell.execute_reply": "2024-01-10T00:13:30.352163Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "(50, 1)" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "X = x.reshape(n_samples,1)\n", + "X.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.355875Z", + "iopub.status.busy": "2024-01-10T00:13:30.355272Z", + "iopub.status.idle": "2024-01-10T00:13:30.361812Z", + "shell.execute_reply": "2024-01-10T00:13:30.361206Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "(50,)" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "y.shape " + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### 4. Fit the model to data\n" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.364747Z", + "iopub.status.busy": "2024-01-10T00:13:30.364379Z", + "iopub.status.idle": "2024-01-10T00:13:30.371856Z", + "shell.execute_reply": "2024-01-10T00:13:30.371202Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
LinearRegression()
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" + ], + "text/plain": [ + "LinearRegression()" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "model.fit(X, y)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "All model parameters that were learned during the `fit()` process have *trailing underscores*." + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.374971Z", + "iopub.status.busy": "2024-01-10T00:13:30.374528Z", + "iopub.status.idle": "2024-01-10T00:13:30.378642Z", + "shell.execute_reply": "2024-01-10T00:13:30.378102Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "-0.9033107255311146" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "model.intercept_" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.381546Z", + "iopub.status.busy": "2024-01-10T00:13:30.380989Z", + "iopub.status.idle": "2024-01-10T00:13:30.387913Z", + "shell.execute_reply": "2024-01-10T00:13:30.387091Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "array([1.9776566])" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "model.coef_" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Intercept and slope are close to the model used to generate the data (-1 and 2 respectively)." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### 5. Predict targets for unknown data" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.391306Z", + "iopub.status.busy": "2024-01-10T00:13:30.390667Z", + "iopub.status.idle": "2024-01-10T00:13:30.396006Z", + "shell.execute_reply": "2024-01-10T00:13:30.395397Z" + } + }, + "outputs": [], + "source": [ + "n_fit = 50\n", + "xfit = np.linspace(-1, 11, n_fit)\n", + "Xfit = xfit.reshape(n_fit,1)\n", + "yfit = model.predict(Xfit)" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.398979Z", + "iopub.status.busy": "2024-01-10T00:13:30.398541Z", + "iopub.status.idle": "2024-01-10T00:13:30.618415Z", + "shell.execute_reply": "2024-01-10T00:13:30.617751Z" + } + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiQAAAGhCAYAAABRZq+GAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8WgzjOAAAACXBIWXMAAA9hAAAPYQGoP6dpAABNLUlEQVR4nO3deWBUVZ73/3dVZV8qC2Rj38ImsogKiKIi7iigooAtirIp2t30+Ou25xmdx+l+pv35TM+MY7MGUBDEHXGJ2OICLrihgohCBMEA2ci+p6ruff5IJ5K9Eiq5leTz+kdTdavqmyMmH+4553tspmmaiIiIiFjIbnUBIiIiIgokIiIiYjkFEhEREbGcAomIiIhYToFERERELKdAIiIiIpZTIBERERHLKZCIiIiI5QKsLsBbpmliGN2rh5vdbut233Nbaay8p7HynsbKexor73WnsbLbbdhsNq+u7TSBxDBM8vJKrS6jwwQE2ImJCaeoqAy327C6HL+msfKexsp7Givvaay8193GKjY2HIfDu0CiKRsRERGxnAKJiIiIWE6BRERERCynQCIiIiKWUyARERERyymQiIiIiOUUSERERMRyCiQiIiJiOQUSERERsZwCiYiIiFhOgUREREQsp0AiIiIillMgEREREcspkIiIiHRzpmlimqalNSiQiIiIdGNl3x/k2B9/T8aaVZbWEWDpp4uIiIglTI+H3Ne3k/fm62CaBCUlWVqPAomIiEg34y7IJ2PtasoPHwIgasplxM2ZZ2lNCiQiIiLdSOmB/WSuS8FTUowtOISEO+/CeeFEq8tSIBEREekOTLeb09u3kf/WmwAE9+1H0tL7CEpItLiyagokIiIiXZwrL5eMNauoOPIjAFGXTyXu1jnYA4MsruwXCiQiIiJdWMm+b8jckIJRWoo9NJSEO+8m8vwLrC6rAQUSERGRLsh0uzn9ykvk/30HAMH9B5C05D6C4uMtrqxxrQokb731Fq+99hrfffcdRUVF9O/fnzvuuIObb74Zm81We92LL77IunXrOHXqFAMHDmT58uVcfvnlPi9eREREGnKdzqmeovnpKADRV1xJz1tuxR4YaHFlTWtVIHn66afp3bs3Dz30EDExMXzyySc8/PDDZGZmcv/99wPw5ptv8vDDD7N06VImTpxIamoq999/P1u2bGHs2LHt8T2IiIjIPxR/tZes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edMt2AI07CIiImfSb8Z2UvzlF2Rt3IBRXo49PJzEBQuJGDvO6rJERET8kgKJjxmuKnJeeI7C998DIGRIMkmLlxIY28PiykRERPyXAokPVWVlVk/R/HwcgJhrr6fnjFmaohEREWmBflP6SNHnn5K18WnMygocEZEkLlxE+KjRVpclIiLSKSiQnCWjqoqc556lcPcHAIQOHUbS4qUERKttu4iIiLcUSM5CVcYpTq1eSdXJE2CzEXv9DfS4YQY2h8Pq0kRERDoVBZI2KtrzMVmbN2FWVuJwOklcuITwkedYXZaIiEinpEDSSkZlJdlbnqHok48ACB0+gqRFSwiIira2MBERkU5MgaQVKk+eJGPNCqpOnQKbjR43ziT2+huw2e1WlyYiItKpKZB4wTRNij7+kOxnN2NWVeGIiiZp0RLCho+wujQREZEuQYGkBUZFOVmbN1H86R4Aws4ZReI9iwlwOi2uTEREpOtQIGlGZfrPnFq9EldWJtjt9Jx5EzHXXKcpGhERER9TIGmEaZoU7v6AnK1bMN1uAmJiSFp8L6HJQ60uTUREpEtSIKnHU15O1sanKPnycwDCR48hccFCHJGRFlcmIiLSdSmQnKHi+DEyVq/ElZMNDgc9b7qFmCuv1hSNiIhIO1MgoXqKpuD9dzn9wnPVUzQ9elRP0QweYnVpIiIi3UK3DySeslKynt5AyVd7AQgfO656iiY83OLKREREuo9uHUhMw+DEfzxO5c/HweEgbvZtRF9xJTabzerSREREupVuHUiw2bAFOAjq1YvEBQsJGTjI6opERES6pW4dSGw2G33/+LDuiIiIiFis228fURgRERGxXrcPJCIiImI9BRIRERGxnAKJiIiIWE6BRERERCynQCIiIiKWUyARERERyymQiIiIiOUUSERERMRyCiQiIiJiOQUSERERsZwCiYiIiFhOgUREREQsp0AiIiIilrOZpmlaXYQ3TNPEMDpFqT7jcNjxeAyry+gUNFbe01h5T2PlPY2V97rTWNntNmw2m1fXdppAIiIiIl2XpmxERETEcgokIiIiYjkFEhEREbGcAomIiIhYToFERERELKdAIiIiIpZTIBERERHLKZCIiIiI5RRIRERExHIKJCIiImI5BRIRERGxnAKJiIiIWE6BRERERCynQOJnjhw5woIFCxg7diyTJ0/m8ccfp6qqyuqy/M5bb73Fvffey5QpUxg7diwzZszgpZdeQodXt6y0tJQpU6YwbNgwvv32W6vL8Uvbtm1j5syZnHvuuUyYMIGFCxdSUVFhdVl+591332X27NmMGzeOiy++mN/85jekp6dbXZbljh8/ziOPPMKMGTMYOXIk06dPb/S6F198kauvvppzzz2XG2+8kffff7+DK/UvAVYXIL8oLCzkzjvvZMCAATz55JNkZWXx2GOPUVFRwSOPPGJ1eX7l6aefpnfv3jz00EPExMTwySef8PDDD5OZmcn9999vdXl+beXKlXg8HqvL8FurVq0iJSWFpUuXMnbsWPLz89mzZ4/GrJ7PPvuM+++/n5kzZ7J8+XIKCgp44oknuPvuu3n99dcJCQmxukTLpKWlsWvXLsaMGYNhGI3+RenNN9/k4YcfZunSpUycOJHU1FTuv/9+tmzZwtixYzu+aH9git9YvXq1OXbsWDM/P7/2seeee84cMWKEmZmZaV1hfig3N7fBY//yL/9innfeeabH47Ggos7hxx9/NMeOHWtu3brVHDp0qLl//36rS/IrR44cMUeOHGl+8MEHVpfi9x5++GFz6tSppmEYtY/t2bPHHDp0qPnFF19YWJn1zvwZ9Ic//MG8/vrrG1xz1VVXmb/73e/qPHbbbbeZCxcubPf6/JWmbPzI7t27mTRpEtHR0bWPXXvttRiGwccff2xdYX4oNja2wWMjRoygpKSEsrIyCyrqHP785z8zZ84cBg4caHUpfumVV16hT58+XHrppVaX4vfcbjfh4eHYbLbaxyIjIwG6/dSp3d78r9b09HSOHTvGtddeW+fx6667jj179nTbaXoFEj9y9OhRBg0aVOcxp9NJXFwcR48etaiqzmPv3r0kJCQQERFhdSl+aceOHRw+fJhly5ZZXYrf2rdvH0OHDmXlypVMmjSJUaNGMWfOHPbt22d1aX7npptu4siRI2zZsoXi4mLS09P5z//8T0aOHMl5551ndXl+rebnef2/GAwePBiXy9Vt1+EokPiRoqIinE5ng8ejoqIoLCy0oKLO48svvyQ1NZW7777b6lL8Unl5OY899hjLly9XYGtGTk4OH330Edu3b+df//VfWbFiBTabjbvvvpvc3Fyry/Mr559/Pn/729/461//yvnnn8+0adPIzc0lJSUFh8NhdXl+rebnef2f9zVfd9ef9wok0ullZmayfPlyJkyYwPz5860uxy+tWrWKHj16cPPNN1tdil8zTZOysjKeeOIJrrnmGi699FJWrVqFaZps3rzZ6vL8yldffcXvf/97br31VjZu3MgTTzyBYRgsXrxYO5KkTbTLxo84nU6Ki4sbPF5YWEhUVJQFFfm/oqIiFi1aRHR0NE8++WSLc7fd0cmTJ9mwYQMrVqyo/fNVs86mrKyM0tJSwsPDrSzRbzidTqKjoxk+fHjtY9HR0YwcOZIff/zRwsr8z5///GcmTpzIQw89VPvY2LFjueyyy9i+fTu33XabhdX5t5qf58XFxcTFxdU+XlRUVOf57kaBxI8MGjSowVqR4uJicnJyGqwtEaioqGDJkiUUFxfz/PPP1y6ok7pOnDiBy+Vi8eLFDZ6bP38+Y8aM4YUXXrCgMv8zZMgQfv7550afq6ys7OBq/NuRI0e44oor6jyWmJhITExMk2Mo1Wp+ntdfN3j06FECAwPp27evVaVZSoHEj0yZMoXVq1fXWUuyY8cO7HY7kydPtrg6/+J2u/ntb3/L0aNH2bJlCwkJCVaX5LdGjBjBpk2b6jz2/fff85e//IVHH32Uc88916LK/M/ll1/OK6+8wvfff8+IESMAyM/P57vvvuOuu+6ytjg/06tXLw4ePFjnsZMnT5Kfn0/v3r0tqqpz6Nu3LwMGDGDHjh1Mmzat9vHU1FQmTZpEUFCQhdVZR4HEj8yZM4dnnnmGZcuWsWTJErKysnj88ceZM2eOfuHW8+ijj/L+++/z0EMPUVJSwjfffFP73MiRI7vt/9CNcTqdTJgwodHnzjnnHM4555wOrsh/TZs2jXPPPZdf//rXLF++nODgYNauXUtQUBDz5s2zujy/MmfOHP793/+dP//5z0ydOpWCgoLatUr1t7N2N+Xl5ezatQuoDmklJSXs2LEDgAsvvJDY2FgeeOABHnzwQfr168eECRNITU1l//793Xqtks3s7hvG/cyRI0f405/+xNdff014eDgzZsxg+fLl+gVbz9SpUzl58mSjz7377rv06dOngyvqXD777DPmz5/PSy+9pDsk9eTl5fGXv/yF999/H5fLxfnnn88f//hHhgwZYnVpfsU0TZ577jm2bt1Keno64eHhjB07luXLlzN48GCry7PUiRMnGkxn1di0aVPtXxBefPFFUlJSOHXqFAMHDuR3v/sdl19+eUeW6lcUSERERMRy2pIgIiIillMgEREREcspkIiIiIjlFEhERETEcgokIiIiYjkFEhEREbGcAomIiIhYToFERERELKdAIiIiIpZTIBERERHLKZCIiIiI5f4fhbmB1Xf/nf4AAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.scatter(x, y)\n", + "plt.plot(xfit, yfit, 'r');" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Supervised learning: classification\n", + "\n", + "Consider Iris data-set and predict species." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Split data into training and test sets (hint: [`train_test_split`](http://scikit-learn.org/stable/modules/generated/sklearn.model_selection.train_test_split.html) is a convenient scikit-learn function for this task)." + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.621937Z", + "iopub.status.busy": "2024-01-10T00:13:30.621464Z", + "iopub.status.idle": "2024-01-10T00:13:30.627694Z", + "shell.execute_reply": "2024-01-10T00:13:30.627089Z" + } + }, + "outputs": [], + "source": [ + "from sklearn.model_selection import train_test_split\n", + "\n", + "X_train, X_test, y_train, y_test = train_test_split(X_iris, y_iris, test_size=0.5, random_state=1)" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.630352Z", + "iopub.status.busy": "2024-01-10T00:13:30.630134Z", + "iopub.status.idle": "2024-01-10T00:13:30.641703Z", + "shell.execute_reply": "2024-01-10T00:13:30.641083Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
sepal_lengthsepal_widthpetal_lengthpetal_width
746.42.94.31.3
1166.53.05.51.8
935.02.33.31.0
1006.33.36.02.5
895.52.54.01.3
\n", + "
" + ], + "text/plain": [ + " sepal_length sepal_width petal_length petal_width\n", + "74 6.4 2.9 4.3 1.3\n", + "116 6.5 3.0 5.5 1.8\n", + "93 5.0 2.3 3.3 1.0\n", + "100 6.3 3.3 6.0 2.5\n", + "89 5.5 2.5 4.0 1.3" + ] + }, + "execution_count": 26, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "X_train.head() " + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "\n", + "Use a Gaussian Naive Bayes (`GaussianNB`) model to predict Iris species. Then evaluate performance on test data.\n", + "\n", + "(Hint: choose, instantiate, fit and predict.) \n", + "\n", + "See Scikit-Learn documentation on [`GaussianNB`](http://scikit-learn.org/stable/modules/generated/sklearn.naive_bayes.GaussianNB.html).\n", + "\n", + "Evaluate performance using simple [`accuracy_score`](http://scikit-learn.org/stable/modules/generated/sklearn.metrics.accuracy_score.html#sklearn.metrics.accuracy_score).\n", + "\n", + "(Do not set any priors.)" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.644869Z", + "iopub.status.busy": "2024-01-10T00:13:30.644398Z", + "iopub.status.idle": "2024-01-10T00:13:30.654902Z", + "shell.execute_reply": "2024-01-10T00:13:30.654270Z" + }, + "tags": [ + "solution" + ] + }, + "outputs": [], + "source": [ + "from sklearn.naive_bayes import GaussianNB # 1. choose model class\n", + "model = GaussianNB() # 2. instantiate model\n", + "model.fit(X_train, y_train) # 3. fit model to data\n", + "y_model = model.predict(X_test) # 4. predict on new data" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "Evaluate performance on test data." + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.658096Z", + "iopub.status.busy": "2024-01-10T00:13:30.657663Z", + "iopub.status.idle": "2024-01-10T00:13:30.665168Z", + "shell.execute_reply": "2024-01-10T00:13:30.664579Z" + }, + "tags": [ + "solution" + ] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "0.96" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from sklearn.metrics import accuracy_score\n", + "accuracy_score(y_test, y_model)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Unsupervised learning: dimensionality reduction\n", + "\n", + "Reduce dimensionality of Iris data for visualisation or to discover structure.\n", + "\n", + "Recall the original Iris data has four features." + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.667996Z", + "iopub.status.busy": "2024-01-10T00:13:30.667639Z", + "iopub.status.idle": "2024-01-10T00:13:30.676274Z", + "shell.execute_reply": "2024-01-10T00:13:30.675749Z" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
sepal_lengthsepal_widthpetal_lengthpetal_width
05.13.51.40.2
14.93.01.40.2
24.73.21.30.2
34.63.11.50.2
45.03.61.40.2
\n", + "
" + ], + "text/plain": [ + " sepal_length sepal_width petal_length petal_width\n", + "0 5.1 3.5 1.4 0.2\n", + "1 4.9 3.0 1.4 0.2\n", + "2 4.7 3.2 1.3 0.2\n", + "3 4.6 3.1 1.5 0.2\n", + "4 5.0 3.6 1.4 0.2" + ] + }, + "execution_count": 29, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "X_iris.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.679207Z", + "iopub.status.busy": "2024-01-10T00:13:30.678646Z", + "iopub.status.idle": "2024-01-10T00:13:30.685276Z", + "shell.execute_reply": "2024-01-10T00:13:30.684661Z" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "(150, 4)" + ] + }, + "execution_count": 30, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "X_iris.shape" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "Compute principle component analysis (`PCA`), with 2 components, and apply transform. Plot data in PCA space. \n", + "\n", + "(Hint: choose, instantiate, fit and transform.)\n", + "\n", + "See Scikit-Learn documentation on [`PCA`](http://scikit-learn.org/stable/modules/generated/sklearn.decomposition.PCA.html).\n", + "\n", + "See Seaborn documentation on [`lmplot`](https://seaborn.pydata.org/generated/seaborn.lmplot.html)." + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.688494Z", + "iopub.status.busy": "2024-01-10T00:13:30.687909Z", + "iopub.status.idle": "2024-01-10T00:13:30.703068Z", + "shell.execute_reply": "2024-01-10T00:13:30.702344Z" + }, + "tags": [ + "solution" + ] + }, + "outputs": [], + "source": [ + "from sklearn.decomposition import PCA # 1. Choose the model class\n", + "model = PCA(n_components=2) # 2. Instantiate the model with hyperparameters\n", + "model.fit(X_iris) # 3. Fit to data. Notice y is not specified!\n", + "X_2D = model.transform(X_iris) # 4. Transform the data to two dimensions " + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.706164Z", + "iopub.status.busy": "2024-01-10T00:13:30.705697Z", + "iopub.status.idle": "2024-01-10T00:13:30.720075Z", + "shell.execute_reply": "2024-01-10T00:13:30.719309Z" + }, + "tags": [ + "solution" + ] + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
sepal_lengthsepal_widthpetal_lengthpetal_widthspeciesPCA1PCA2
05.13.51.40.2setosa-2.6841260.319397
14.93.01.40.2setosa-2.714142-0.177001
24.73.21.30.2setosa-2.888991-0.144949
34.63.11.50.2setosa-2.745343-0.318299
45.03.61.40.2setosa-2.7287170.326755
\n", + "
" + ], + "text/plain": [ + " sepal_length sepal_width petal_length petal_width species PCA1 \\\n", + "0 5.1 3.5 1.4 0.2 setosa -2.684126 \n", + "1 4.9 3.0 1.4 0.2 setosa -2.714142 \n", + "2 4.7 3.2 1.3 0.2 setosa -2.888991 \n", + "3 4.6 3.1 1.5 0.2 setosa -2.745343 \n", + "4 5.0 3.6 1.4 0.2 setosa -2.728717 \n", + "\n", + " PCA2 \n", + "0 0.319397 \n", + "1 -0.177001 \n", + "2 -0.144949 \n", + "3 -0.318299 \n", + "4 0.326755 " + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "iris['PCA1'] = X_2D[:, 0]\n", + "iris['PCA2'] = X_2D[:, 1]\n", + "iris.head() " + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:30.723401Z", + "iopub.status.busy": "2024-01-10T00:13:30.723006Z", + "iopub.status.idle": "2024-01-10T00:13:31.391220Z", + "shell.execute_reply": "2024-01-10T00:13:31.390526Z" + }, + "tags": [ + "solution" + ] + }, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "sns.lmplot(data=iris, x=\"PCA1\", y=\"PCA2\", hue='species', fit_reg=False);" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "How well do you expect classification to perform using PCA components as features and why?" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + }, + "tags": [ + "solution" + ] + }, + "source": [ + "Very well since the different classes are well separated in PCA feature space." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Unsupervised learning: clustering\n", + "\n", + "Attempt to find \"groups\" in Iris data without given labels or training data.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + " \n", + "Cluster Iris data into 3 components using Gaussian Mixture Model (GMM). Plot the 3 components separately in PCA space.\n", + "\n", + "(Hint: choose, instantiate, fit and predict.)\n", + "\n", + "See Scikit-Learn documentation on [`GaussianMixture`](http://scikit-learn.org/stable/modules/generated/sklearn.mixture.GaussianMixture.html)." + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:31.394705Z", + "iopub.status.busy": "2024-01-10T00:13:31.394206Z", + "iopub.status.idle": "2024-01-10T00:13:31.493375Z", + "shell.execute_reply": "2024-01-10T00:13:31.492329Z" + }, + "tags": [ + "solution" + ] + }, + "outputs": [], + "source": [ + "from sklearn.mixture import GaussianMixture # 1. Choose the model class\n", + "model = GaussianMixture(n_components=3) # 2. Instantiate the model with hyperparameters\n", + "model.fit(X_iris) # 3. Fit to data. Notice y is not specified!\n", + "y_gmm = model.predict(X_iris) # 4. Determine cluster labels" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": { + "execution": { + "iopub.execute_input": "2024-01-10T00:13:31.497402Z", + "iopub.status.busy": "2024-01-10T00:13:31.496762Z", + "iopub.status.idle": "2024-01-10T00:13:33.256040Z", + "shell.execute_reply": "2024-01-10T00:13:33.255265Z" + }, + "tags": [ + "solution" + ] + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABlAAAAHkCAYAAABBiGI5AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8WgzjOAAAACXBIWXMAAA9hAAAPYQGoP6dpAADVGElEQVR4nOzdfXxcdZn//9c5Z2YymZlMk7RpmiZNQm9MCwUKuNCKUFqhBYKL3MiNylZBrC674OquC+t+V91dV1fXqty4CKJWUNAFEaFIC1oB4Vd25R4pkVKSNGkb0g5pMjOZzJyb3x9DQ9OkbdJOMknm/Xw8eJScc+ac65ppc5K55nNdhud5HiIiIiIiIiIiIiIiItLPzHcAIiIiIiIiIiIiIiIi440KKCIiIiIiIiIiIiIiIvtRAUVERERERERERERERGQ/KqCIiIiIiIiIiIiIiIjsRwUUERERERERERERERGR/aiAIiIiIiIiIiIiIiIish8VUERERERERERERERERPajAoqIiIiIiIiIiIiIiMh+VEARERERERERERERERHZjwooInJEnnnmGRoaGnjmmWfyHYqIiMiEpHupiIjIkdG9VERERosKKCIyrj333HPcdNNNdHd35zuUw5ZOp/nmN7/J+9//fo477jg+/OEP89RTT+U7LBERKRAT/V6aSCS48cYbueqqqzj55JNpaGjgl7/8Zb7DEhGRAjLR76UvvfQS//qv/0pjYyOLFi3ijDPO4LrrruPNN9/Md2giIuOeCigiMq49//zz3HzzzRP2B1WA66+/nh//+Md88IMf5Itf/CKWZfGpT32KP/7xj/kOTURECsBEv5e+/fbb3HLLLWzdupWGhoZ8hyMiIgVoot9Lf/CDH7BhwwaWLFnCF7/4RS655BL++Mc/cuGFF/LnP/853+GJiIxrvnwHICKSD729vRQXF4/6dV566SXWrVvHF77wBa666ioAPvShD3HeeefxX//1X9xzzz2jHoOIiMhoGKt76fTp0/nDH/5ARUUFL7/8MhdffPGoX1NERGQsjNW99OMf/zj/9V//RSAQ6N927rnn8sEPfpDbbruN//qv/xr1GEREJiqtQBGRg+ro6OCf/umfeP/738/ChQtZvnw5X/rSl0in0wd8zPLly7n++usHbb/iiiu44oorBmy78847aWxs5Pjjj+cv/uIvuPDCC3nwwQcBuOmmm/jGN74BwAc+8AEaGhpoaGigra2t//EPPPAAF154Iccddxwnn3wyf/d3f8eOHTsGXfe8887jlVde4aMf/SjHH388a9asOeznZCQeeeQRLMvi0ksv7d9WVFTExRdfzPPPPz8oVhERmXx0Lz0ygUCAioqKMbmWiIiMT7qXHpkTTzxxQPEEoL6+nnnz5rF169YxiUFEZKLSChQROaCOjg4uvvhienp6uOSSS5g9ezYdHR2sX7+eVCo16AewkfrFL37Bv//7v7Ny5Ur+6q/+ir6+PpqamnjxxRf54Ac/yFlnnUVzczMPPfQQN9xwA2VlZQCUl5cD8N///d9897vf5ZxzzuHiiy8mFotx11138dGPfpRf/epXRKPR/mt1dXVx9dVX09jYyF/+5V8yderUA8aVTqeJx+PDymFvLAeyefNm6uvriUQiA7Yfd9xx/furqqqGdS0REZl4dC89tEPdS0VEpLDpXnpoh3Mv9TyPXbt2MW/evBE/VkSkkKiAIiIHtGbNGnbt2sUvfvELjj322P7t1113HZ7nHfH5f//73zNv3jxuvPHGIffPnz+fo48+moceeogzzzyTmpqa/n3t7e3cdNNNfPazn+XTn/50//YVK1ZwwQUX8LOf/WzA9s7OTr7yla9w2WWXHTKuvT8YD0dTU9NB93d2dg75qdm92956661hXUdERCYm3UsP7VD3UhERKWy6lx7a4dxLf/3rX9PR0cG111474seKiBQSFVBEZEiu6/LYY4+xbNmyAT+k7mUYxhFfIxqNsnPnTl566aX+FRnD9eijj+K6Lueccw6xWKx/+7Rp06irq+OZZ54Z8INqIBDgwgsvHNa53//+9/OjH/1oRPEcyIE+EVVUVNS/X0REJifdS3NzLxURkcKle+no3EvfeOMN/vVf/5UTTjiBCy64YFSuISIyWaiAIiJDisVixOPxUV3Oe/XVV/P000/z4Q9/mLq6Ok499VTOO+88TjrppEM+trm5Gc/zWLFixZD7fb6B394qKyuHvbR7+vTpTJ8+fVjHHkowGByyL29fX1//fhERmZx0L83NvVRERAqX7qW5v5d2dnayevVqSkpK+O53v4tlWTm/hojIZKICioiMGcdxBvxwNmfOHB555BF+//vf8+STT7JhwwZ+9rOfcc011xxyGbHruhiGwe233z7kD3yhUGjA1yMpVKRSKXp6eoZ17KGG2lZUVNDR0TFoe2dnJ4DeXBIRkREpxHupiIhILhXyvbSnp4err76anp4efvrTn1JZWTnseERECpUKKCIypPLyciKRCK+//vqIHztlyhS6u7sHbd++fTuzZs0asC0UCnHuuedy7rnnkk6n+du//VtuvfVWVq9eTVFR0QGXZNfW1uJ5HjU1NRx11FEjjvFgHn744Zz1mp0/fz7PPPMM8Xh8wCD5F198EYAFCxYcfqAiIjKu6V6qGSgiInJkdC/N3b20r6+PT3/60zQ3N/OjH/2IuXPnHmmIIiIFQQUUERmSaZqceeaZ/PrXv+bll18e1G/W87wD/hA5a9Ysnn32WdLpdP/y5I0bN7Jjx44BP6i+/fbblJWV9X8dCASYM2cOTzzxBJlMhqKiIoqLiwEGffJmxYoVrFmzhptvvpn/+q//GhCL53l0dXUNOPdI5LLX7Nlnn80Pf/hDfv7zn3PVVVcBkE6n+eUvf8nxxx9PVVVVTq4jIiLjj+6lmoEiIiJHRvfS3NxLHcfhs5/9LC+88ALf+973OOGEE3JyXhGRQqACiogc0Oc+9zmeeuoprrjiCi655BLmzJlDZ2cnjzzyCD/72c+IRqNDPu7DH/4w69ev55Of/CTnnHMOra2tPPjgg9TW1g447qqrrmLatGmceOKJTJ06la1bt3LXXXexdOnS/tUaxxxzDADf/va3Offcc/H7/Sxbtoza2lo++9nP8q1vfYv29nbOPPNMwuEwbW1tPPbYY1xyySX9BYuRymWv2eOPP56zzz6bNWvWsHv3burq6rj//vtpb2/nq1/9ak6uISIi45fupblx11130d3dzVtvvQVk3wDbuXMnAFdccQUlJSU5u5aIiIwvupceua9//ev87ne/Y9myZXR1dfHAAw8M2H/++efn5DoiIpORCigickCVlZX84he/4Lvf/S4PPvgg8XicyspKTj/99IP2bj3ttNO4/vrr+dGPfsR//Md/sHDhQm699Vb+8z//c8Bxl156KQ8++CA/+tGPSCaTzJgxgyuuuIK//uu/7j/muOOO47rrruOee+7hySefxHVdfvvb3xIKhfjUpz5FfX09P/7xj7nlllsAmDFjBqeeeirLly8fnSflMHzjG9/gO9/5Dr/+9a/Zs2cPDQ0N3HrrrfzFX/xFvkMTEZFRpntpbvzwhz+kvb29/+sNGzawYcMGAP7yL/9SBRQRkUlM99Ij99prrwHZDyBs3Lhx0H4VUEREDszwPM/LdxAiIiIiIiIiIiIiIiLjiZnvAERERERERERERERERMYbFVBERERERERERERERET2M+FnoLS0tHDHHXfw4osv8vrrrzN79mweeuihQz5u+fLlA/oo7/XSSy9RVFQ0GqGKiIiIiIiIiIiIiMgEMeELKK+//jqPP/44xx9/PK7rMpKRLitXruTKK68csC0QCOQ6RBERERERERERERERmWAmfAFl+fLlnHnmmQBcf/31vPLKK8N+7LRp01i0aNEoRSYiIiIiIiIiIiIiIhPVhJ+BYpoTPgURERERERERERERERlnCrr68OCDD7Jw4UJOOOEErr76apqamvIdkoiIiIiIiIiIiIiIjAMTvoXX4Vq+fDnHHXccM2fOZNu2bdx666185CMf4Ve/+hWzZs067PM6jkt3d28OIx0ZwzCYMqWYPXt6RzQPZqJRnpNPoeSqPCeXQskThpdrWVk4J9fSvXTsFEquynNyUZ6TT6HkWkj3UtDrOtkoz8mnUHJVnpPLcPPM1f1UBMDwJtG/qr0zUB566KERP/att97inHPO4YMf/CBf/vKXDzsGz/MwDOOwHy8iIlLodC8VERE5MrqXioiIiORGwa5A2d/06dM56aST+NOf/nRE53Fdj+7uZI6iGjnLMolGi+nu7sVx3LzFMdqU5+RTKLkqz8mlUPKE4eWaq0/56F46dgolV+U5uSjPyadQci2keynodZ1slOfkUyi5Ks/JZbh5agWK5JIKKKPAtvP/jcpx3HERx2hTnpNPoeSqPCeXQskTxi7X8fB86nWdfJTn5KI8J59CybWQ7qWg13WyUZ6TT6Hkqjwnl0LJU8aHgh4iv6+Ojg6effZZjj322HyHIiIiIiIiIiIiIiIieTbhV6D09vby+OOPA9De3k48HueRRx4B4OSTT6a8vJxVq1axfft2Hn30UQAeeughNm7cyNKlS5k+fTrbtm3jtttuw7IsPvGJT+QtFxERERERERERERERGR8mfAFl9+7dXHfddQO27f36Jz/5Caeccgqu6+I4Tv/+mpoa3nrrLf7jP/6Dnp4eSkpKWLx4Mddeey2zZs0a0/hFRERERERERERERGT8mfAFlJqaGpqamg56zJ133jng60WLFg3aJiIiIiIiIiIiIiIispdmoIiIiIiIiIiIiIiIiOxHBRQREREREREREREREZH9qIAiIiIiIiIiIiIiIiKyHxVQRERERERERERERERE9qMCioiIiIiIiIiIiIiIyH58+Q5ARERERERERERERMaG67m09WwnnkkQ8YepKZmJaehz9iJDUQFFREREREREREREpAA0xbawoWUjHclOHM/BMiwqQxWsqFtGQ/ncfIcnMu6otCgiIiIiIiIiIiIyyTXFtnB30320x3dQZAWIBiIUWQHaEzu4u+k+mmJb8h2iyLijAoqIiIiIiIiIiIjIJOZ6LhtaNpKy+ygtihKw/JiGScDyUxqIknL62NCyEddz8x2qyLiiAoqIiIiIiIiIiIjIJNbWs52OZCdhfwjDMAbsMwyDsC9ER7KTtp7teYpQZHzSDBQZNa7n0drRQzyZIRLyU1tZgrnfN2gREREREREREREZXfFMAsdz8JnWkPt9pkXSdohnEmMcmcj4pgKKjIrNzTHWbWphZyyJ43hYlsGM8hCNi+tYUF+e7/BEREREREREREQKRsQfxjIsbNchYA1uSmS72YHyEX84D9GJjF9q4SU5t7k5xtr1TbR1xinyW0QjAYr8Fm2dCdaub2JzcyzfIYqIiIiIiIiIiBSMmpKZVIYqSNhJPM8bsM/zPBJ2kspQBTUlM/MUocj4pAKK5JTreazb1EIqbVMaKSLgtzANg4DfojQSIJV2WLepBXe/b9QiIiIiIiIiIiIyOkzDZEXdMoJWEV3pbtJOBtdzSTsZutLdBK0gK+qWYRp6u1hkX/oXITnV2tHDzliScNA/9ECqoI+dsSStHT15ilBERERERERERKTwNJTP5fKGi6gOV9HnpOlOx+lz0lSHq7i84UIayufmO0SRcUczUCSn4skMjuPhKx66NufzmSRTNvFkZowjExERERERERERKWwN5XOZVzabtp7txDMJIv4wNSUztfJE5ABUQJGcioT8WJaBbbsE/Nag/bbtYlkGkZA/D9GJiIiIiIiIiIgUNtMwqY3W5DsMkQlBpUXJqdrKEmaUh0ik7KEHUqVsZpSHqK0syVOEIiIiIiIiIiIiIiKHpgKK5JRpGDQuriMYsOiKp0lnHFzPI51x6IqnCQYsGhfXYe43H0VEREREREREREREZDxRAUVybkF9OatWNlBTEaYv49AdT9OXcaipCLNqZQML6svzHaKIiIiIiIiIiIiIyEFpBoqMigX15TTUldHa0UM8mSES8lNbWaKVJyIiIiIiIiIiIiIyIaiAIqPGNAzqZ0TzHYaIiIiIiIiIiIiIyIiphZeIiIiIiIiIiIiIiMh+VEARERERERERERERERHZjwooIiIiIiIiIiIiIiIi+1EBRUREREREREREREREZD8qoIiIiIiIiIiIiIiIiOxHBRQREREREREREREREZH9qIAiIiIiIiIiIiIiIiKyHxVQRERERERERERERERE9qMCioiIiIiIiIiIiIiIyH58+Q5AxjfX82jt6CGezBAJ+amtLME0jHyHJSIiIiIiIiIiIiIyqlRAkQPa3Bxj3aYWdsaSOI6HZRnMKA/RuLiOBfXl+Q5PRERERERERERExpDrubT1bCeeSRDxh6kpmYlpqMmRTF4qoMiQNjfHWLu+iVTaJhz04ys2sW2Xts4Ea9c3sWplg4ooIiIiIiIiIiIiBaIptoUNLRvpSHbieA6WYVEZqmBF3TIayufmOzyRUaHyoAzieh7rNrWQStuURooI+C1MwyDgtyiNBEilHdZtasH1vHyHKiIiIiIiIiIiIqOsKbaFu5vuoz2+gyIrQDQQocgK0J7Ywd1N99EU25LvEEVGhQooMkhrRw87Y0nCQT/GfvNODMMgHPSxM5aktaMnTxGKiIiIiIiIiIjIWHA9lw0tG0nZfZQWRQlYfkzDJGD5KQ1ESTl9bGjZiOu5+Q5VJOdUQJFB4skMjuPh8w3918PnM3Ecj3gyM8aRiYiIiIiIiIiIyFhq69lOR7KTsD809IetfSE6kp209WzPU4Qio0cFFBkkEvJjWQa2PXTV2LZdLMsgEvKPcWQiIiIiIiIiIiIyluKZBI7n4DOtIff7TAvHc4hnEmMcmcjoUwFFBqmtLGFGeYhEysbbb86J53kkUjYzykPUVpbkKUIREREREREREREZCxF/GMuwsF1nyP22mx0oH/GHxzgykdGnAooMYhoGjYvrCAYsuuJp0hkH1/NIZxy64mmCAYvGxXWY+y3ZExERERERERERkcmlpmQmlaEKEnZy6A9b20kqQxXUlMzMU4Qio0cFFBnSgvpyVq1soKYiTF/GoTuepi/jUFMRZtXKBhbUl+c7RBERERERERERERllpmGyom4ZQauIrnQ3aSeD67mknQxd6W6CVpAVdcswDb3VLJOPL98ByPi1oL6chroyWjt6iCczREJ+aitLtPJERERERERERESkgDSUz+XyhovY0LKRjmQnSTvbtqs6XMWKumU0lM/Nd4gio0IFFDko0zConxHNdxgiIiIiIiIiIiKSRw3lc5lXNpu2nu3EMwki/jA1JTO18kQmNRVQZFhcz9NKFBERERERERERkQJmGia10Zp8hyEyZlRAkUPa3Bxj3aYWdsaSOI6HZRnMKA/RuLhOs1BEREREREREREREZFLS+io5qM3NMdaub6KtM06R3yIaCVDkt2jrTLB2fRObm2P5DlFEREREREREREREJOdUQJEDcj2PdZtaSKVtSiNFBPwWpmEQ8FuURgKk0g7rNrXgel6+QxURERERERERERERySkVUOSAWjt62BlLEg76Mfabd2IYBuGgj52xJK0dPXmKUERERERERERERERkdKiAIgcUT2ZwHA+fb+i/Jj6fieN4xJOZMY5MRERERERERERERGR0qYAiBxQJ+bEsA9t2h9xv2y6WZRAJ+cc4MhERERERERERERGR0aUCihxQbWUJM8pDJFI23n5zTjzPI5GymVEeorayJE8RioiIiIiIiIiIiIiMDhVQ5IBMw6BxcR3BgEVXPE064+B6HumMQ1c8TTBg0bi4DnO/+SgiIiIiIiIiIiIiIhOdCihyUAvqy1m1soGaijB9GYfueJq+jENNRZhVKxtYUF+e7xBFRERERERERERERHLOl+8AZPxbUF9OQ10ZrR09xJMZIiE/tZUlWnkiIiIiIiIiIiIiIpPWhC+gtLS0cMcdd/Diiy/y+uuvM3v2bB566KFDPs7zPG6//XZ+9rOfEYvFWLBgATfccAOLFi0a/aAnINMwqJ8RzXcYIiIiIiIiIiIiIiJjYsK38Hr99dd5/PHHqaurY86cOcN+3O23386NN97Ixz/+cb7//e9TUVHBlVdeybZt20YxWhERERERERERERERmQgmfAFl+fLlPP7449x4440cc8wxw3pMX18f3//+97nyyiv5+Mc/zpIlS1izZg2lpaXccccdoxyxiIiIiIiIiIiIiIiMdxO+gGKaI0/hueeeIx6Pc8455/RvCwQCnHXWWTzxxBO5DE9ERERERERERERERCagCV9AORxbt24FYPbs2QO2z5kzh+3bt5NKpfIRloiIiIiIiIiIiIiIjBMTfoj84eju7iYQCFBUVDRgezQa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npe7XtEvNq7V9t6dcv1sUXF22SxdMX+pTq+dN6Ff+21ve5s+85nPaM2aNXrve987ePvatWslSZdcconWr18/6n0//vGP613vepduuukmlZSUKJVK6QMf+IDKy8v1la98RZJ03333qaenZ0y7Rz7zmc/oHe94h+677z795je/0Ve/+lW1tLTowgsvHPX8ffv26V3vepck6bbbblNDQ4Pa2trU3n7ozVodHR264oor1NjYqHQ6rVWrVuk973mPHn30Uc2ZM2dM36PxoIBSQHxjtGVHj7Z0JSTfU3117IhzS3xjtOrZNqXSripKw4f6VAYdBQO24n1prXq2TS1Nlcw/AQAAyAPLsuXUNB/XfY3xlV6/Kls8iVYObcVVVi3T0yVl+mUySclIxrKkUIkCp5wtb8vzEzbEHgAATG9u5wal16+SH9+hmb6n6uqgdoQSCoYrZYdLBs8zxijhJlUfq1ND2ew8RgxMrJe7XtF3/vxj9WdSKgvHFLADcn1XbfFOfefPP9aNb3j3hBZRysrKdNFFF2nlypVDCigrV67Ueeedp4qKisPe99prr9WNN944+PmPfvQj7d27Vw888IAaGrJt904//XQtXbp0TAWUpUuX6h//8R8lSeeee66efPJJPf7444ctoPz7v/+79u7dq8cee2zw65177rlDzrnlllsG/+77vs477zy99NJL+vnPf67bb7/9qDGNFwWUArFxa7dWPdumru6kfCPZllRbFT3i/JL2rl7t7E4qFgmO3qcyEtDO7qTau3qHDJ4HAADA1OfvaZcf3yErXDriuZ7clORmJONLJRVSICj5vpRJyf37n2SFS2RSfVKsMudD7AEAwPQ1fHer7QT0D6m0HnFcxfu7FTMzFAxH5fqeEm5SESeipU2LaXmFguUbX7/YuFb9mZSqSioOvUHdCamqJKju/v36xca1WnDCqRP6/2DZsmW67bbbtH37ds2ePVu7du3Sf/3Xf+lLX/rSEe/3D//wD0M+f/nll3XqqacOFjMkqaGhQfPmja0AdP755w/+3bIsnXTSSdq5c+dhz3/mmWd0zjnnDPl6w/3973/Xv/zLv+iFF17Q3r17B2/funXrmGIaL356FYCDbbg6dvcpHHJUWRZWOOSoY3dCKx5v1cat3aPery+ZkecZBQKj/zMIBGx5nlFfMjOR4QMAAGACmFSv5HsHWnINOSKT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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "iris['cluster'] = y_gmm\n", + "sns.lmplot(data=iris, x=\"PCA1\", y=\"PCA2\", hue='species',\n", + " col='cluster', fit_reg=False);" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "fragment" + }, + "tags": [ + "solution" + ] + }, + "source": [ + "The GMM has done a reasonably good job of separating the different classes. Setosa is perfectly separated in one cluster, while there remains some mixing between versicolor and viginica." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [ + "exercise_pointer" + ] + }, + "source": [ + "**Exercises:** *You can now complete Exercise 1 in the exercises associated with this lecture.*" + ] + } + ], + "metadata": { + "celltoolbar": "Slideshow", + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.13.1" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/week1/slides/Lecture03_Scikit-Learn_Exercises_no_solutions.ipynb b/week1/slides/Lecture03_Scikit-Learn_Exercises_no_solutions.ipynb new file mode 100644 index 0000000..6f001b9 --- /dev/null +++ b/week1/slides/Lecture03_Scikit-Learn_Exercises_no_solutions.ipynb @@ -0,0 +1 @@ +{"cells": [{"cell_type": "markdown", "metadata": {}, "source": ["# Exercises for Lecture 3 (Introduction to Scikit-Learn)"]}, {"cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": ["import datetime\n", "now = datetime.datetime.now()\n", "print(\"Last executed: \" + now.strftime(\"%Y-%m-%d %H:%M:%S\"))"]}, {"cell_type": "markdown", "metadata": {}, "source": ["Load in example data for exercises."]}, {"cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": ["from sklearn import datasets\n", "import seaborn as sns\n", "import matplotlib.pyplot as plt"]}, {"cell_type": "markdown", "metadata": {"slideshow": {"slide_type": "slide"}}, "source": ["## Exercise 1: Classify hand-written digits "]}, {"cell_type": "markdown", "metadata": {}, "source": ["Consider the classification of hand-written digits."]}, {"cell_type": "markdown", "metadata": {"slideshow": {"slide_type": "subslide"}}, "source": ["First load example Scikit-Learn data."]}, {"cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": ["from sklearn.datasets import load_digits\n", "digits = load_digits()"]}, {"cell_type": "markdown", "metadata": {}, "source": ["- Explore the data-set and plot some example images.\n", "- Split the data-set into training and test sets.\n", "- Train a logistic regression classifier, using a Newton Conjugate Gradient solver (`newton-cg`) with an $\\ell_2$ penalty (see [`LogisticRegression`](https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LogisticRegression.html) for further details).\n", "- Compute the accuracy of predictions on the test set."]}, {"cell_type": "markdown", "metadata": {"slideshow": {"slide_type": "subslide"}}, "source": ["### Plot example images"]}, {"cell_type": "markdown", "metadata": {"slideshow": {"slide_type": "subslide"}}, "source": ["### Set up feature and target data"]}, {"cell_type": "markdown", "metadata": {"slideshow": {"slide_type": "subslide"}}, "source": ["### Create training and test sets"]}, {"cell_type": "markdown", "metadata": {"slideshow": {"slide_type": "subslide"}}, "source": ["### Choose model, instantiate, fit and predict"]}, {"cell_type": "markdown", "metadata": {"slideshow": {"slide_type": "subslide"}}, "source": ["### Evaluate accuracy on test data"]}], "metadata": {"celltoolbar": "Tags", "kernelspec": {"display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3"}, "language_info": {"codemirror_mode": {"name": "ipython", "version": 3}, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.15"}}, "nbformat": 4, "nbformat_minor": 4} \ No newline at end of file