十個簡單的磚筆記本數據科學家的提示和技巧
通常,小事產生巨大的差異,因此,格言,“一些最好的想法是簡單的!”Over the course of a few releases this year, and in our efforts to make Databricks simple, we have added several small features in our notebooks that make a huge difference.
在這個博客附帶的筆記本,我們說明簡單的魔法命令和探索小的筆記本用戶界麵添加剃須時間從開發數據科學家,提高開發人員的經驗。
總的來說,這些豐富的功能包括以下幾點:
- % pip安裝
- % conda env出口和更新
- % matplotlib內聯
- % load_ext tensorboard和% tensorboard
- %運行輔助筆記本模塊化代碼
- 上傳數據
- MLflow:動態實驗運行按鈕計數器和繁殖
- 簡單的UI掘金和推動
- SQL代碼格式
- 網絡終端登錄集群
為簡便起見,我們總結下麵的每個特性的用法。然而,我們鼓勵你下載的筆記本。如果你沒有磚統一分析平台Beplay体育安卓版本然而,試一試在這裏。進口的筆記本磚統一數據分析平台,在它。Beplay体育安卓版本
1。魔法命令%皮普:Python安裝Python包和管理環境
磚的運行時(DBR)或磚運行時機器學習(高)安裝Python和常見的機器學習(ML)庫。但是運行時可能沒有一個特定的庫或預裝版本供你手頭的工作。為了達到這個目的,你可以輕鬆地定製和管理您的Python包在集群上使用% pip和% conda筆記本電腦。
之前發布的這個特性,數據科學家不得不開發複雜的init腳本,建立一個車輪在本地文件,上傳dbfs位置,並使用init腳本安裝包。這是脆弱的。現在,您可以使用% pip安裝
從你的私人或公共回購。
% pip安裝vaderSentiment
另外,如果你有幾個包安裝,您可以使用% pip安裝- r
進一步了解如何管理notebook-scoped Python環境中,使用脈衝和conda,讀這個博客。
2。魔法命令% conda和%皮普:分享你的筆記本電腦環境
一旦為集群設置您的環境,你可以做幾件事情:1)保存的文件重新安裝後續會話和b)與他人分享。
由於集群是短暫的,任何軟件包安裝將會消失一旦集群關閉。一個良好的實踐是保持安裝的包的列表。這有助於與再現性,幫助您的數據團隊的成員重新創建你的開發或測試環境。用% conda魔法命令支持的一部分發布的新特性今年,這個任務變得簡單:導出並保存您的安裝Python包的列表。
% conda env - f / jsd_conda_env出口。yml或% > / jsd_pip_env.txt pip凍結
從一個公共的或公共的共享dbfs
位置,另一個數據科學家可以很容易地使用% conda env更新- f
複製您的集群的Python包的環境。
3所示。內聯魔法命令% matplotlib內聯:顯示數據
作為探索性數據分析的一部分(EDA)的過程,數據可視化是一個重要的步驟。初始數據清理後的數據,但在工程特性和模型訓練之前,你可能想要在視覺上檢查發現任何模式和關係。
在許多數據可視化Python庫,matplotlib
通常用於可視化數據。雖然DBR或高鈣包括其中的一些Python庫,隻有matplotlib內聯
功能目前支持筆記本電池。
用這個神奇的命令內置在DBR 6.5 +內,您可以顯示塊筆記本電池而不是明確方法調用顯示(圖)
或顯示器(figure.show ())
或設置spark.databricks.workspace.matplotlibInline。啟用= true
。
4所示。神奇的命令% tensorboard PyTorch或TensorFlow
最近在一個博客宣布磚的一部分運行時(DBR),這個神奇的命令可以顯示你的訓練指標TensorBoard在相同的筆記本。這個新功能不讚成dbutils.tensorboard.start ()
,這就需要你查看TensorBoard指標在一個單獨的選項卡,迫使你離開磚筆記本和打破您的流。
不再要你離開你的筆記本和發射TensorBoard從另一個選項卡。原地可視化是一個重大的改進對簡單性和開發經驗。
雖然您可以使用TensorFlow或PyTorch庫安裝在DBR或高鈣對你的機器學習模型,我們使用PyTorch(見代碼的筆記本和顯示),這說明。
% load_ext tensorboard
% tensorboard——logdir =。/運行
5。神奇的命令%運行實例化輔助筆記本
借款常見的軟件設計模式,從軟件工程實踐,數據科學家可以定義類,在筆記本輔助變量和實用方法。也就是說,他們可以“進口”——字麵意思,雖然這些類作為他們會從一個IDE的Python模塊,除了在一個筆記本的情況下,這些定義類進入當前筆記本的通過一個範圍% auxiliary_notebook運行
命令。
雖然不是一個新特性的上麵的,這種用法使司機(或主要)筆記本電腦更容易閱讀,和集群。一些開發人員使用這些輔助筆記本數據處理分成不同的筆記本,每個數據預處理,勘探或分析,引入結果調用筆記本的範圍。
另一位候選人對這些輔助筆記本是可重用的類、變量和效用函數。例如,跑龍套
和RFRModel
與其他類中定義輔助筆記本,cls / import_classes
。後%。/ cls / import_classes
進入的範圍,所有類調用的筆記本。這個簡單的技巧,你不必雜亂駕駛筆記本。定義類,模塊化代碼,和重用它們!
6。快速上傳新數據
有時你可能訪問本地可用的數據,你的筆記本電腦,您希望分析使用數據磚。一個新功能上傳數據,一個筆記本文件菜單,上傳本地數據到您的工作區。目標目錄默認/ shared_uploads /你的電子郵件地址;然而,您可以選擇目的地和使用上傳文件對話框的代碼閱讀你的文件。在我們的例子中,我們選擇熊貓代碼閱讀CSV文件。
一旦上傳,你可以訪問數據文件進行處理或機器學習培訓。
7.1 MLflow實驗動態計數器
MLflow UI緊密集成在一個磚筆記本。當你使用MLflow api,訓練你的模型實驗
動態標簽計數器增量運行記錄和成品,給數據科學家的視覺提示,實驗進展。
通過單擊實驗
側板,顯示一個表格總結每次運行的關鍵參數和指標,能夠查看詳細MLflow實體:運行時,參數、指標、工件、模型等。
7.2 MLflow重現運行按鈕
另一個特點是能夠改善重建一個筆記本運行複製實驗。從任何MLflow運行頁麵,複製運行按鈕允許您創建一個筆記本和將其附加到當前或共享集群。
8。簡單的UI掘金和任務推動
提供數據科學家快速瀏覽一下數據,撤消刪除細胞,視圖分割屏幕,或更快的方法來執行一個任務,筆記本的改進包括:
燈泡提示更好使用或更快的執行:每當執行的代碼塊在筆記本電池,磚運行時可能推動或提供一個提示來探索一種有效的方式來執行代碼或顯示附加功能來增強當前單元格的任務。舉個例子,如果你正在訓練一個模型,它可能建議使用MLflow跟蹤你的訓練指標和參數。
或者如果你堅持DataFrame鑲花的格式作為SQL表,它可能建議使用三角洲湖表有效和可靠的未來事務操作數據源。同樣,如果底層引擎檢測到您正在執行一個複雜的火花可以優化操作,或者加入兩個不平衡引發DataFrames-one非常大,一個小可能建議你使Apache 3.0火花自適應查詢執行獲得更好的性能。
這些小推動幫助數據科學家或工程師可以利用底層火花的優化特性或使用額外的工具,如MLflow,會讓你的模特培訓管理。
撤銷刪除細胞:多少次你發展至關重要的代碼在一個細胞,然後無意中刪除細胞,隻有意識到它走了,無法挽回。現在你可以撤消刪除細胞,隨著筆記本追蹤與刪除的細胞。
運行以上:在某些場景中,您可能已經修正了錯誤在當前單元格上麵一個筆記本之前的細胞和您希望運行一遍從目前的筆記本電池。這個舊技巧可以為你這樣做。
標簽的代碼完成和功能簽名:在Python 3函數和火花3.0方法,使用method_name。tab鍵顯示的方法和屬性的下拉列表中您可以選擇代碼完成。
使用並排視圖:
在Python IDE,比如PyCharm,你能夠冷靜減價文件並查看他們並排呈現在一個麵板中,在一個筆記本。選擇視圖- >並排組合和查看筆記本電池。
9。SQL代碼格式
雖然不是一個新特性,這種方法使您能夠快速、輕鬆地在一個自由格式的SQL代碼,然後使用細胞菜單格式的SQL代碼。
10。網絡終端登錄集群
數據團隊的任何成員,包括數據科學家,可以直接登錄到司機節點的筆記本。不需要使用% sh ssh神奇的命令,需要繁瑣的設置ssh和身份驗證令牌。此外,係統管理員和安全團隊不打開SSH端口的虛擬專用網絡。作為用戶,您不需要設置SSH密鑰讓交互式終端司機節點集群。如果你的磚管理員授予你“可以連接到“權限一個集群,你將去。
公布的博客,這個特性提供了一個完整的交互式shell和受控地訪問司機集群的節點。要利用網絡終端,隻需從下拉菜單中選擇終端。
總的來說,這些features-little推動和nuggets-can減少摩擦力,使您的代碼更容易流動,實驗報告或數據探索。給一個或多個這些簡單的想法去下次在你的磚筆記本。
下載筆記本今天和進口它磚統一數據分析平台Beplay体育安卓版本(DBR 7.2 +或高鈣7.2 +)和在它。
發現數據團隊如何解決世界的艱難的數據問題,來加入我們的數據+人工智能歐洲峰會。