微軟開(kāi)源人工智能調(diào)試工具 - TensorWatch
微軟在GitHub開(kāi)源平臺(tái)上發(fā)布了一個(gè)名為T(mén)ensorWatch的人工智能調(diào)試和可視化工具。TensorWatch可用于創(chuàng)建自定義可視化、UI和儀表板。它還可用于對(duì)您的實(shí)時(shí)ML培訓(xùn)過(guò)程執(zhí)行任意查詢,作為查詢的結(jié)果返回一個(gè)流,并使用您選擇的可視化工具查看這個(gè)流。
TensorWatch是一個(gè)Python庫(kù),它使用Jupyter Notebook而不是預(yù)先打包的用戶界面,在這個(gè)基礎(chǔ)上,Jupyter Notebook更容易定制。在進(jìn)行實(shí)時(shí)培訓(xùn)過(guò)程的交互式調(diào)試時(shí),您可以選擇使用Jupyter Notebook中的可組合UI或Jupyter Lab中的實(shí)時(shí)共享儀表板。您還可以使用Python構(gòu)建自己的自定義UI,或者選擇現(xiàn)有的Python UI。TensorWatch還支持多種標(biāo)準(zhǔn)的可視化類型,包括條形圖、柱狀圖和餅狀圖,支持2D和3D版本。
TensorWatch中的數(shù)據(jù)被視為一個(gè)流,其他對(duì)象包括文件、控制臺(tái)、套接字、云存儲(chǔ)和可視化。TensorWatch流可以偵聽(tīng)其他流,從而可以組合自定義數(shù)據(jù)流圖。開(kāi)發(fā)人員說(shuō),這意味著您可以將許多流呈現(xiàn)為相同的可視化,或者一個(gè)流可以同時(shí)呈現(xiàn)為許多可視化,或者一個(gè)流可以持久化到許多文件中,或者根本不持久化。
TensorWatch中使用的另一個(gè)主要思想是延遲日志記錄模式。這意味著您不必設(shè)置顯式日志記錄;相反,你可以讓TensorWatch觀察變量。這樣可以降低開(kāi)銷(xiāo),因此您可以根據(jù)需要跟蹤任意數(shù)量的變量,包括培訓(xùn)期間的大型模型或整批產(chǎn)品。
然后,您可以執(zhí)行在TensorWatch觀察到的變量上下文中運(yùn)行的交互式查詢,并得到返回的流。然后可以可視化、保存或處理這些流。開(kāi)發(fā)人員給出了一個(gè)編寫(xiě)lambda表達(dá)式的示例,該表達(dá)式在每批處理完成時(shí)計(jì)算模型中每一層的平均權(quán)重梯度,并將結(jié)果作為可繪制為條形圖的張量流發(fā)送。
TensorWatch還提供了基于現(xiàn)有開(kāi)源庫(kù)的訓(xùn)練前和訓(xùn)練后階段的特性,用于為卷積網(wǎng)絡(luò)提供模型圖可視化、通過(guò)降維進(jìn)行數(shù)據(jù)探索、模型統(tǒng)計(jì)和幾個(gè)預(yù)測(cè)解釋器。
TensorWatch支持Python 3.x,并使用PyTorch 0.4-1.x進(jìn)行測(cè)試。
安裝:
linuxidc@linuxidc:~/www.linuxidc.com$ pip3 install tensorwatch