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