Proč používat Jupyter Notebook v DesignSafe

fpfcorp 15/10/2021 2023

TACC hovořil se Scottem Brandenbergem, docentem na katedře stavebního a environmentálního inženýrství Kalifornské univerzity v Los Angeles (UCLA), aby se podělil o své zkušenosti jako nový uživatel notebooků Jupyter. Brandenberg je také uživatelem NHERI Centrifuge Experimental Facility v UC Davis Center for Geotechnical Modeling. Jeho výzkum pokrývá geotechnické inženýrství zemětřesení, rozvod vody a seismické účinky na podzemní stavby.

Jaký je charakter výzkumu, pro který notebooky Jupyter používáte?

Scott Brandenberg:

Tématem výzkumného projektu, pro který jsme vyvinuli notebook Jupyter, jsou seismické účinky na podzemní stavby. Projekt se zabývá vývojem zemských tlaků při zemětřesení. Jedním z klíčových problémů, které musí inženýři řešit při navrhování podzemních staveb, je to, jaký tlak vyvíjí půda na konstrukci, když dojde k zemětřesení. Při zemětřesení se země otřásá a může dojít ke zvýšení tlaku na podzemní konstrukci způsobenou zemětřesnými vlnami, které interagují s konstrukcí, jako je propust nebo tunel.

Docent, Katedra stavebního a environmentálního inženýrství, University of California Los Angeles (UCLA)

Jednou z velkých oblastí, se kterou se majitelé budov potýkají, je to, že přístup, který inženýři v současnosti používají k výpočtu těchto zemských tlaků, není příliš realistický a mají tendenci tyto tlaky přehnaně předpovídat. To, co děláme, je vývoj nových analytických metod, které jsou realističtější a jsou založeny na fundamentálnější teorii než současné metody. Provedli jsme centrifugační experimenty na podzemních strukturách, abychom generovali data o seismickém zemském tlaku, která se používají k vyhodnocení naší nové teorie i stávajících metod. Doufáme, že nová metoda bude lépe vysvětlovat pozorování během těchto experimentů.

Jak jste se dostal k DesignSafe?

Scott Brandenberg:

Už dlouhou dobu jsem uživatelem NEES (Earthquake Engineering Simulation Network) a provedl jsem mnoho experimentů a archivoval svá data prostřednictvím NEES. Myslím si, že je důležité, aby vědci svá data sdíleli se všemi, a ne si je nechali jen pro sebe. To je vize NEES. To je také vize DesignSafe. Díky mému úsilí prostřednictvím NEES mě hlavní výzkumná pracovnice DesignSafe (PI) Ellen Rathje pozvala do týmu DesignSafe. Během počátečního vývojového procesu DesignSafe v loňském roce jsme použili sadu experimentů s odstředivkami, které byly nedávno provedeny na propusti, jako testovací platformu k prozkoumání některých technologií poskytovaných DesignSafe, jako jsou notebooky Jupyter a rozšířené možnosti nahrávání dat.

Co je podle vás na DesignSafe nejpřitažlivější?

Scott Brandenberg:

Chystám se porovnat DesignSafe s NEES, protože se soustředím na vylepšení, ke kterým došlo. NEES vyvinul datové úložiště. To znamenalo, že když dokončíme experiment, archivujeme data a metadata (která data popisují), jako jsou tabulky Excel a seznamy senzorů. Poté by data byla v NEES, aby si je mohli stáhnout a použít další lidé. Nepoužili bychom však data v datovém úložišti NEES; přešli bychom do úložiště, abychom si stáhli data a pak jsme pracovali s naší vlastní lokální instancí dat. Nahrání dat do NEES bylo proto dalším krokem, který musel projektový tým provést, a přímo neusnadňoval objevování nových zjištění z dat.

Na DesignSafe se mi opravdu líbí, že mění toto paradigma. Nyní jsme schopni analyzovat data v rámci samotné kybernetické infrastruktury DesignSafe. Nahrajeme data, můžeme tam s daty pracovat a můžeme sdílet nástroje pro analýzu dat. Jedna věc, která se s NEES stávala, je, že bych dohlížel na doktoranda, který prováděl experimenty. Psali by své vlastní skripty pro zpracování dat. Psali bychom papíry; předložit je; a pak student odmaturoval a vzal si s sebou všechna svá skripta. Měl bych přístup k datům, ale ne ke všem souborům zpracování. DesignSafe tento problém vyřeší. Budeme pracovat na skriptech v cloudu a každý k nim bude mít přístup. Když student dokončí projekt, veškerá práce, kterou udělal, bude archivována v DesignSafe. Celý jejich pracovní postup bude zdokumentován a bude k dispozici pro další opětovné použití. To je pro mě jako PI pro mnoho z těchto projektů opravdu atraktivní funkce.

Jaký je váš vlastní popis notebooku Jupyter?

Scott Brandenberg:

Je to mocný nástroj. Myslím, že to změní způsob, jakým lidé v nebezpečné komunitě pracují s daty. Notebook Jupyter je program, který vám umožňuje integrovat řadu různých kódovacích jazyků – například Python nebo R – do aktivního dokumentu, který běží na webu. Notebooky Jupyter nám umožňují mít bloky kódu, které skutečně pracují s daty. A ty jsou kombinovány s buňkami markdown, které poskytují vysvětlení toho, co se děje. Je to dobrý způsob, jak syntetizovat výpočty s vysvětlením. Usnadňuje to vrátit se zpět a zjistit, co se dělo a jaký pracovní postup byl použit. Notebooky Jupyter mohou běžet v cloudu v DesignSafe, což znamená, že můžeme pracovat s daty, která jsme shromáždili a vložili je do DesignSafe, aniž bychom je museli nejprve stahovat do našeho vlastního místního počítače. To je opravdu hezké, protože to znamená, že student může pracovat na scénáři a dát mi vědět, že provedl nějaké změny. Pak se mohu přihlásit a podívat se na jejich Jupyter notebook a sám přidávat nové změny nebo komentáře. Jiné výpočetní nástroje používám asi 20 let, takže notebooky jsou pro mě poměrně nové. Bylo to poprvé, co jsem kdy použil například Python.

Jakými způsoby byl váš výzkum proveden před použitím notebooků Jupyter?

Scott Brandenberg:

Myslím, že nejběžnějším přístupem, který výzkumníci používali, bylo, že studenti měli data na svém vlastním počítači a používali nástroje jako MATLAB nebo Mathcad ke zpracování těchto dat a publikování těchto výsledků. Data mohla být sdílena, ale skripty sdíleny nebyly, nebo pokud byly sdíleny, byly propojeny s konkrétními adresáři, ve kterých studenti data ukládali, a proto nebyly snadno přenosné. Experimentální výzkumníci dat by také psali „datové zprávy“, písemnou dokumentaci o souboru dat. Zpráva o datech byla kritická pro ostatní výzkumníky, aby pochopili, jak používat datovou sadu (například který sloupec odpovídá kterému senzoru). Obvykle by tyto datové zprávy byly soubory .pdf, které by si uživatelé stáhli. A zahrnovaly by stovky stran datových grafů. S naším projektem propustků jsme vytvořili interaktivní digitální datovou zprávu v DesignSafe pomocí notebooku Jupyter. Protože poznámkový blok Jupyter používá jazyk markdown, mohli jsme vzít veškerý text, který by se obvykle objevil v souboru .pdf, naformátovat jej jako html a vložit jej do poznámkového bloku.

Jak jsou data sdílena a distribuována?

Scott Brandenberg:

Uživatelé mohou pracovat s daty pomocí poznámkového bloku Jupyter, ale mohou také stahovat data mimo Jupyter. Nahráváme datové soubory a rozhodujeme se, kdy chceme data zveřejnit; jakmile bude veřejný, může se kdokoli přihlásit do DesignSafe a získat přístup k těmto datovým souborům. Mohli tedy jít do Jupyter a podívat se na data pomocí tohoto nástroje nebo si mohli data přímo stáhnout pro vlastní potřebu. Nebo by dokonce mohli vyvinout svůj vlastní notebook Jupyter v DesignSafe a zpracovat data tam. Také by mohli simulovat experiment pomocí programu konečných prvků, jako je OpenSEES, a napsat notebook Jupyter, který porovnává výsledky z počítačové simulace s experimentálními daty.

Jak přistupujete k notebookům Jupyter?

Scott Brandenberg:

Obecně se k notebookům Jupyter dostanete prostřednictvím DesignSafe. Pokud se přihlásíte do DesignSafe, uvidíte oblast Research Workbench, která zahrnuje Data Depot. Zde máte přístup k publikovaným datům a také k datům vašich vlastních soukromých projektů. DesignSafe také zahrnuje Discovery Workspace, který zahrnuje nástroje, jako je Jupyter, které mohou přistupovat k datům v Data Depot. Chcete-li otevřít Jupyter v DesignSafe – stačí kliknout na tlačítko v pracovním prostoru Discovery, otevře se přímo ve vašem webovém prohlížeči a poté můžete otevřít poznámkový blok Jupyter z adresáře v Data Depot. Notebooky Jupyter jsou navíc open source, takže si můžete stáhnout klienta a spustit jej lokálně na vašem počítači.

Můj notebook Jupyter je k dispozici všem v adresáři Community Data: https://tinyurl.com/lvefwb3

Jaké jsou hlavní výhody notebooků Jupyter?

Scott Brandenburg:

Hlavní přínos, který vidím pro ostatní PI, je, že všechny skripty vašich studentů jsou dostupné pro každého v projektu. Vše, na čem studenti pracují, je zde ke sdílení, což je lepší, než když studenti pracují lokálně na svém vlastním počítači. Vždy budou uživatelé, kteří se zdráhají přijmout novou technologii. Způsob, jakým Python funguje, je podobný MATLABu, takže skok není tak velký a náš výzkumný tým se přizpůsobil docela snadno.

Nakonec, jak si myslíte, že notebooky pomáhají pokročit ve vašem výzkumu?

Scott Brandenberg:

Poznámkové bloky Jupyter neposkytují přímo nové výpočetní metody nebo skripty, které jsme dříve neměli. Skutečnou výhodou je mít stejné procesy pohromadě ve stejném pracovním postupu, takže data jsou k dispozici a skripty zpracování jsou s nimi v cloudu. Myslím, že to je ta pravá inovace. Jde spíše o kvalitu workflow a mít vše dobře zdokumentované na jednom místě. Myslím, že má schopnosti zásadně změnit způsob, jakým děláme naši práci.

Například jsem právě teď součástí dalšího úsilí, které využívá DesignSafe k vybudování velké databáze terénních historií případů zkapalňování, ke kterým došlo po celém světě. Bude tam docela dost dat – více dat, než by si kterýkoli uživatel chtěl stáhnout a zkusit zpracovat na svém počítači. Notebooky Jupyter nám poskytují možnost pracovat se všemi těmito daty v rámci DesignSafe, takže je nemusíme stahovat. Má velký dopad, když analyzujeme velké množství dat současně. Tyto cloudové prostředky budeme moci používat k věcem, které jsme dříve dělat nemohli.

###

Nejnovější: notebook Jupyter

Další: AM-Notebook Lite 6.5.4