4 開始使用 Oracle Machine Learning Notebooks 進行資料分析和資料視覺化

Oracle Machine Learning 筆記型電腦是專為資料分析師和資料科學家設計的增強型 Web 式筆記型電腦平台。您可以撰寫程式碼、文字、建立視覺化項目,以及執行包括機器學習在內的資料分析。記事本可在後端與解譯器搭配使用。在 Oracle Machine Learning 使用者介面中,記事本可供專案使用,您可以在其中建立、編輯、刪除、複製、移動,甚至將記事本另存為樣板。

4.1 關於 Oracle Machine Learning Notebooks

Oracle Machine Learning Notebooks 是增強的 Web 型筆記型電腦平台,適用於資料工程師、資料分析師、R 與 Python 使用者及資料科學家。您可以撰寫程式碼、文字、建立視覺化項目,以及執行包括機器學習在內的資料分析。記事本可在後端與解譯器搭配使用。

在 Oracle Machine Learning 中,記事本可在工作區內的專案中使用,您可以在此建立、編輯、刪除、複製、移動,甚至將記事本另存為樣板。記事本可以包含許多段落。段落是記事本元件,您可以在其中撰寫和執行 SQL 敘述句、PL/SQL 命令檔、R 和 Python 程式碼以及 conda 指示。您可以個別執行段落,或是使用單一按鈕來執行記事本中的所有段落。段落具有輸入區段和輸出區段。在輸入區段中,指定要執行的解譯器以及程式碼或文字。此資訊會傳送給要執行的解譯器。在輸出區段中,會提供解譯器的結果。

附註:

原始筆記型電腦和新筆記型電腦都有一個命名空間。兩個記事本清單中不能有相同名稱的記事本。從原始介面複製到新介面的記事本會附加 _new

圖 4-1 OML 筆記型電腦

OML 筆記型電腦的螢幕擷取畫面
Oracle Machine Learning 筆記型電腦提供:
  • 更快的筆記本載入時間。
  • Oracle 以 Oracle Redwood 主題為基礎的外觀與風格。
  • 以其折線圖、區域圖、橫條圖、金字塔圖、圓餅圖、環圈圖、漏斗圖、標記雲、矩形樹狀結構圖、環狀階層圖、散布圖、方塊繪製來增強視覺化。
  • 在記事本段落中輸入註解的選項。
  • 建立「段落相依性」的選項。「段落相依性」功能可讓您在段落之間新增相依性。段落的相依項會在原始段落執行後自動執行。
  • 從下拉式功能表中選擇「高」、「中」、「低」的簡化服務層次。
  • Zeppelin 與 Jupyter 筆記型電腦的版面配置。
  • 頁面版本控制、版本歷史記錄檢視及版本比較。

4.2 存取您的 Oracle Machine Learning Notebooks 頁面

您可以從 Oracle Machine Learning Notebooks 的左側導覽窗格或「記事本」頁面存取 OML 筆記型電腦頁面。

  1. 存取「記事本」頁面:
    • 移至 Oracle Machine Learning 左側導覽窗格,展開「專案」,然後按一下記事本

      圖 4-2 左瀏覽窗格

      左瀏覽窗格
    • 或者,您也可以按一下首頁上「快速連結」下的記事本,開啟「記事本」頁面。
  2. 這會開啟「OML 記事本」頁面。
    • 圖 4-3 OML 筆記型電腦頁面

      OML 筆記型電腦頁面
      您可以在此選擇:
    • 建立:按一下建立即可建立新的記事本。
    • 編輯:按一下記事本列以選取它,然後按一下編輯。您可以編輯記事本名稱,然後在「編輯記事本」對話方塊中新增註解。
    • 刪除:按一下記事本列以選取它,然後按一下刪除
    • 複製:按一下記事本資料列來選取它,然後按一下複製。這會建立記事本的複本,而且「記事本」頁面會列出記事本名稱中字尾為 _1 的複本。
    • 儲存為樣板:若要儲存記事本為樣板,請選取記事本,然後按一下儲存為樣板。在「另存為範本」對話方塊中,您可以定義範本的位置,將其儲存在「範本」下的「個人」或「共用」中。
    • 匯入:若要將記事本匯入為 .json 檔案,請按一下匯入。選取要匯入記事本的專案和工作區。
    • 匯出:若要匯出筆記型電腦,請按一下匯出。您可以使用 .dsnb format、Zeppelin 格式 (.json ) 檔案和 Jupyter 格式 (.ipynb)) 匯出記事本,之後再將它們匯入相同或不同的環境。
    • 版本:若要建立記事本的版本,請選取它,然後按一下版本。該特定記事本的「版本」頁面便會開啟。您可以在此按一下 +Version 來建立新的記事本版本。就會開啟「建立版本」對話方塊。輸入記事本版本的名稱、描述,然後按一下確定。新版本的記事本會以相同名稱建立,第二個版本的字尾為 _2。對於後續版本,字尾 (數字) 會以 1 遞增。若要回復至舊版本,請按一下回復版本。您也可以選擇刪除任何版本的記事本。按一下返回記事本,即可移至「OML 記事本」頁面。

      附註:

      您也可以開啟記事本,然後按一下 「啟動多版本功能」圖示 選項來啟動記事本的版本。您可以使用此選項來建立新版本、檢視版本歷史記錄、回復較舊的版本,以及刪除您開啟的舊版筆記型電腦。

4.2.1 在記事本頁面上使用記事本版本

藉由建立筆記型電腦的版本,您可以將工作存檔在筆記型電腦中。

您可以在「記事本」頁面以及「記事本」編輯器中建立記事本版本。在此範例中,記事本啟動多版本功能示範記事本已建立並啟動多版本功能為版本 1

附註:

無法編輯啟動多版本功能的記事本。若要對特定版本的記事本進行任何變更,您必須回復該版本以進行編輯。
先決條件:記事本啟動多版本功能示範記事本。此記事本建立為範例的一部分。
若要建立新的記事本版本並檢視版本歷史記錄,請執行下列動作:
  1. 在「筆記型電腦」頁面上,按一下建立筆記型電腦
  2. 在「建立記事本」對話方塊的名稱欄位中輸入名稱 Notebook Versioning Demo,然後按一下確定。隨即會建立筆記本,並在筆記本編輯器中開啟。
  3. 在筆記型電腦上,將游標停留在段落的下邊界,然後按一下 + 圖示來新增段落。在此記事本中再新增兩個段落,然後在段落中貼上下列 PL/SQL 命令檔:
    新增段落
    1. 在第一段期間,複製和貼上下列 PL/SQL 命令檔。此命令檔會從 SH 綱要中的 SALES 表格建立檢視 ESM_SH_DATA
      %script
      
      CREATE OR REPLACE VIEW ESM_SH_DATA AS 
        SELECT TIME_ID, AMOUNT_SOLD FROM SH.SALES;
    2. 在第二段中,複製並貼上下列 SQL 命令檔。此命令檔會提供檢視 ESM_SH_DATA 中存在的記錄計數。
      %script
      SELECT count(*) from ESM_SH_DATA;
    3. 在第三段中,複製並貼上下列 SQL 命令檔,以列表化格式複查資料。
      SELECT * FROM ESM_SH_DATA
      FETCH FIRST 10 ROWS ONLY;
  4. 執行所有段落後,順利執行所有段落,回到「記事本」頁面。
  5. 在「記事本」頁面上,選取記事本啟動多版本功能示範記事本來啟用所有編輯選項,然後按一下版本,即可移至此記事本的版本頁面。
    版本選項
    版本 - 記事本啟動多版本功能示範頁面便會開啟。
  6. 版本 - 記事本啟動多版本功能示範頁面上,按一下版本以建立新的記事本版本。這會開啟「建立版本」對話方塊。
    版本頁面
  7. 在「建立版本」對話方塊中:
    1. 名稱:輸入 Version 1 作為此筆記型電腦的新版本
    2. 註解:輸入註解 (如果有的話)。
    3. 按一下確定。建立記事本版本之後,會列在版本 - 記事本啟動多版本功能示範頁面中。
    版本頁面 2
  8. 版本 - 記事本啟動多版本功能示範頁面上,選取您剛建立以啟用所有可用選項之記事本版本的版本 1
    選取版本 1
    • 按一下刪除,可刪除所選的記事本版本。
    • 按一下回復即可回復選取的記事本版本。

      附註:

      回復選取的記事本版本將會捨棄所有未啟動多版本功能的變更 (如果有的話)。
    • 按一下返回記事本,即可返回「記事本」頁面。

4.3 編輯您的 Oracle Machine Learning 筆記型電腦

建立記事本時,它會自動開啟,並使用預設的 %sql 解譯器呈現單一段落。您可以明確指定 %script%python%sql%r%md%conda 其中之一來變更解譯器。

設定與您的記事本相關聯之專案的相關資訊環境。您可以編輯專案中的現有記事本。編輯現有的記事本:
  1. 在 Oracle Machine Learning 首頁中,選取您筆記型電腦可用的專案。

    附註:

    專案是工作區內記事本和實驗的邏輯群組。雖然您可以擁有許多專案,但其他工作區和專案可能會與您共用。
  2. 按一下您要開啟和編輯的記事本。
    選取的記事本會以編輯模式開啟。
  3. 在編輯模式中,您可以使用下列 Oracle Machine Learning Notebook 工具列選項:
    OML 筆記型電腦工具列
    記事本層次編輯選項:
    • 按一下 執行所有段落,以執行筆記型電腦中的所有段落。
    • 按一下 驗證階段作業 以使記事本階段作業失效並重設。
    • 按一下 versioning - 版本設定功能 即可建立此記事本的新版本,或檢視舊版的記事本。
      • 建立版本:按一下此選項即可建立此記事本的新版本。您可以選擇提供版本的新名稱及其相關描述。當您建立新的記事本版本時,每個執行階段作業的段落結果會儲存在啟動多版本功能的記事本中。當您回復記事本時,也會回復每個執行階段作業的段落結果。您也可以從編輯器建立記事本版本。如需詳細資訊,請參閱在記事本編輯器中使用記事本版本
      • 檢視版本歷史記錄:按一下此選項,即可檢視舊版的筆記型電腦。您可以選擇回復任何舊版本、比較版本,以及刪除任何先前建立的版本。

      附註:

      您也可以從「記事本」頁面的 「記事本」頁面上的版本選項 選項,建立記事本版本、檢視版本歷史記錄及刪除舊版本。
    • 按一下 清除結果 以清除段落結果。
    • 按一下 清除段落相依性 以清除段落相依性。
    • 按一下 早期採用匯出記事本 以匯出記事本。您可以將筆記型電腦匯出為 .dsnb 檔案、.zpln 檔案 (Zeppelin 筆記型電腦) 以及 .ipynb 檔案 (Jupyter 筆記型電腦)。匯出記事本時有下列設定值:
      • 全部匯出
      • 排除程式碼
      • 排除結果
      • 排除時戳
    • 按一下 列印記事本 以列印記事本
    • 按一下 隱藏程式碼 即可隱藏記事本中所有段落的程式碼
    • 按一下 隱藏結果 即可隱藏記事本中所有段落的結果
    • 按一下 啟用唯讀 以啟用此記事本的唯讀模式。

      附註:

      唯讀模式僅適用於 Oracle Machine Learning Notebook。
    • 按一下 顯示面板 以顯示編輯面板。面板中的編輯選項與段落可用的編輯選項相同。按一下面板圖示會在右側開啟編輯窗格,並隱藏段落中的編輯工具列。
    • 按一下 更新解譯器,將解譯器連結變更為低、中或高
    • 按一下 Zeppelin,即可將 OML 筆記型電腦切換為 Zeppelin 或 Jupyter 筆記型電腦。
    段落層次編輯選項:
    • 按一下 執行 以執行選取的段落
    • 按一下 進入相依模式 以進入「相依性模式」。在「相依性模式」中,您必須選取和取消選取段落,才能將它們新增或移除為相依項目。

      附註:

      「段落相依性」功能可讓您在段落之間新增相依性。段落的相依項會在原始段落執行後自動執行。
    • 按一下 備註 以開啟「註解」對話方塊。請在此處輸入您的註解,然後按 Enter 鍵來新增註解。您也可以按一下對應的刪除圖示,刪除任何註解。按一下註解圖示即可關閉此對話方塊。您可以為記事本中的每個段落提供註解。含有註解的段落會在註解圖示上以綠色點表示。 附註的指標
    • 按一下 展開,以全螢幕模式檢視記事本段落。若要以一般模式檢視段落,請按一下收合圖示。
    • 按一下 顯示隱藏行號 以在記事本段落中顯示行號。
    • 按一下 可見性 以檢視段落標題、程式碼、結果和段落設定值。
    • 按一下 設定值 即可 :
      • 上移:按一下即可在記事本中將段落上移。
      • 下移:按一下即可將記事本中的段落下移。
      • 清除結果:按一下即可清除您在段落中執行之命令的結果。
      • 開啟為內嵌視窗:按一下即可在瀏覽器中個別檢視目前的段落。
      • 複製段落:按一下即可複製段落。此段落會複製在同一個記事本中。
      • 停用執行:按一下即可停用段落的執行。若要啟用執行,請前往設定值,然後按一下啟用執行
      • 刪除段落:按一下即可刪除段落。
    • 按一下 HTML 以 HTML 格式檢視段落
    • 按一下 文字 以檢視文字格式的段落
    • 按一下 設定值 可調整記事本段落輸出的設定值。此設定特別適用於圖表、圖表等視覺化。
    • 按一下 下載為,將段落下載為文字檔,或下載為 .png 或 .svg 檔案 (如果適用),用於包含圖表或圖表作為輸出的段落。

4.3.1 在記事本編輯器中使用記事本版本

藉由建立筆記型電腦的版本,您可以將工作存檔在筆記型電腦中。

您可以在「記事本」編輯器以及「記事本」頁面上建立記事本版本。在本範例中:
  • 已編輯原始記事本記事本啟動多版本功能示範,以新增建立機器學習模型的命令檔。
  • 接著,記事本啟動多版本功能示範筆記型電腦會啟動版本 2 的多版本功能,以封存程式碼以建置機器學習模型。
  • 記事本啟動多版本功能示範筆記型電腦的版本 2版本 1 會使用比較版本功能進行比較。

附註:

無法編輯啟動多版本功能的記事本。若要對特定版本的記事本進行任何變更,您必須回復該版本以進行編輯。
若要建立新的記事本版本並檢視版本歷史記錄,請執行下列動作:
  1. 在「記事本 EA」頁面上,按一下記事本啟動多版本功能示範記事本,即可在記事本編輯器中開啟它。

    附註:

    已在使用記事本頁面上的記事本版本中建立此記事本的版本 1。它包含用來建立檢視 ESM_SH_DATA、計算記錄及檢視資料的封存程式碼。按一下記事本會開啟可編輯的原始版本。
  2. 現在,請編輯記事本以新增建立機器學習模型的命令檔。在記事本上,將游標停留在第三個段落的下框線,然後按一下 + 圖示即可新增段落。
    新增段落
  3. 將下列命令檔複製並貼到新段落。此命令檔會使用 ESM 演算法建立機器學習模型。
    %script
    
    BEGIN DBMS_DATA_MINING.DROP_MODEL('ESM_SALES_FORECAST_1');
    EXCEPTION WHEN OTHERS THEN NULL; END;
    /
    DECLARE
        v_setlst DBMS_DATA_MINING.SETTING_LIST;
    BEGIN
        
        v_setlst('ALGO_NAME')            := 'ALGO_EXPONENTIAL_SMOOTHING';
        v_setlst('EXSM_INTERVAL')        := 'EXSM_INTERVAL_QTR'; -- accumulation int'l = quarter
        v_setlst('EXSM_PREDICTION_STEP') := '4';                 -- prediction step = 4 quarters
        v_setlst('EXSM_MODEL')           := 'EXSM_WINTERS';      -- ESM model = Holt-Winters
        v_setlst('EXSM_SEASONALITY')     := '4';                 -- seasonal cycle = 4 quarters    
    
        DBMS_DATA_MINING.CREATE_MODEL2(
            MODEL_NAME          => 'ESM_SALES_FORECAST_1',
            MINING_FUNCTION     => 'TIME_SERIES',
            DATA_QUERY          => 'select * from ESM_SH_DATA',
            SET_LIST            => v_setlst,
            CASE_ID_COLUMN_NAME => 'TIME_ID',
            TARGET_COLUMN_NAME  =>'AMOUNT_SOLD');
    END;
  4. 現在,將此筆記型電腦與程式碼封存,以便透過啟動多版本功能建置機器學習模型。在記事本編輯器的左上角,按一下啟動多版本功能 「啟動多版本功能」圖示
  5. 會開啟建立版本檢視版本歷史記錄的選項。
    建立版本
  6. 按一下建立版本。就會開啟「新增版本」對話方塊。
  7. 在 [ 新版本 ] 對話方塊中:
    1. 名稱:依照預設,名稱 Version 2 會被採用。讓我們保留此名稱。
    2. 註解:輸入註解 (如果有的話)。
    3. 按一下建立。此時會顯示確認新版本建立的訊息。
    「新版本」對話方塊
    此筆記型電腦的第 2 版現在包含用來建立機器學習模型的封存程式碼。
  8. 若要檢視您剛才建立的版本,請按一下啟動多版本功能 versioning - 版本設定功能,然後按一下檢視版本歷史記錄
  9. 在記事本編輯器的右窗格中,會開啟版本歷史記錄面板。將游標停留在任何記事本版本上,然後按一下該版本即可啟用可用的選項。
  10. 您可以在「版本歷史記錄」面板中執行下列工作:
    檢視版本歷史
    • 按一下 開放版本 以開啟選取的版本。

      附註:

      按一下任何啟動多版本功能的記事本,會以唯讀模式開啟記事本,因為無法編輯啟動多版本功能的記事本。若要檢視目前的可編輯版本,請按一下檢視筆記型電腦的最新版本檢視目前版本選項
    • 按一下刪除,可刪除選取的版本。
    • 按一下比較版本,即可比較所選和目前版本的記事本。您可以從下拉式清單中選取其他可用的版本。在此範例中,筆記型電腦的版本 2 (在「目前狀態」下) 會與版本 1 進行比較。新的新增會以綠色標示,如此處螢幕擷取畫面所示,刪除會以紅色標示。 比較記事本版本
    • 按一下回復即可回復選取的版本。

      附註:

      回復選取的記事本版本將會捨棄所有未啟動多版本功能的變更 (如果有的話)。

4.3.2 建立段落相依性

「段落相依性」可讓您在段落之間新增相依性。相依段落會在原始段落執行後,根據相依性的順序自動執行。

若要建立段落相依性,請執行下列動作:
  1. 在「筆記型電腦」頁面上,按一下建立筆記型電腦
  2. 在「建立記事本」對話方塊的名稱欄位中輸入名稱 Paragraph Dependencies Demo,然後按一下確定
    便會建立筆記本,並在筆記本編輯器中開啟。
  3. 在筆記型電腦上,將游標停留在段落的下邊界,然後按一下 + 圖示來新增段落。在此記事本中再新增兩個段落,然後在段落中貼上下列 PL/SQL 命令檔:
    新增段落
    1. 在第一個段落中,複製並貼上下列 PL/SQL 命令檔。此命令檔會從 SH 綱要中的 SALES 表格建立檢視 ESM_SH_DATA
      %script
      
      CREATE OR REPLACE VIEW ESM_SH_DATA AS 
        SELECT TIME_ID, AMOUNT_SOLD FROM SH.SALES;
    2. 在第二段中,複製並貼上下列 SQL 命令檔。此指令碼提供檢視 ESM_SH_DATA 中存在的記錄計數。
      %script
      SELECT COUNT(*) FROM ESM_SH_DATA;
    3. 在第三段中,複製並貼上下列 SQL 命令檔,以列表化格式複查資料。
      %sql
      SELECT * FROM ESM_SH_DATA
      FETCH FIRST 10 ROWS ONLY;
  4. 移至第一個段落,然後按一下輸入相依性模式圖示。
    進入相依模式
    訊息會出現:您目前選取的是此段落的相依項
  5. 按一下第二和第三段落,將它們新增為第 1 段的相依項目。

    附註:

    段落相依性的順序取決於您按一下的順序。
    選取相依段落
  6. 按一下「儲存」。定義並儲存相依段落之後,會以數字表示,如下圖所示:
    相依段落
  7. 現在,移至第一個段落,然後按一下執行。順利開始第一個段落之後,後續的相依段落就會根據相依性順序開始執行。
    相依段落執行