PowerBI開發:用自然語言來探索數據--Q&A

Power BI報表的用戶,肯定會被Q&A的功能驚豔到,在查看報表時,僅僅通過輸入文本就可以探索數據,並且結果是可視化的,更令人驚豔的時,結果幾乎是實時顯示出來的。這使得Q&A Visual就像一個搜索引擎,輸入你想查詢的問題,Q&A返回一個可視化的結果。

在用戶開始輸入問題之前,Q&A會顯示一些建議問題,如下圖所示:

 

用戶也可以輸入自己的問題,Q&A支持廣泛的問題類型,包括但不限於以下:

  • 問極值問題:Which sales has the highest revenue?
  • 使用相對日期過濾:Show me sales in the last year
  • 僅返回前 N 個:Top 10 products by sales
  • 使用過濾條件:Show me sales in the USA
  • 使用複雜條件:Show me sales where product category is Category 1 or Category 2
  • 使用特定的Visual來顯示結果:Show me sales by product as pie chart
  • 使用複雜的聚合:Show me median sales by product
  • 對結果排序:Show me top 10 countries by sales ordered by country code
  • 比較數據:Show me date by total sales vs total cost
  • 查看趨勢:Show me sales over time

一,Q&A的自動補全和顏色標識

當用戶輸入問題時,Q&A會顯示相關的上下文建議,以幫助用戶快速的使用自然語言。同時,在輸入問題的同時,用戶會立即獲得反饋和結果,這種體驗類似於在搜索引擎中輸入文本:

Q&A使用下劃線的顏色和類型來幫助用戶查看系統理解或不識別的單詞。

藍色實心下劃線表示表示系統成功地將單詞與數據模型中的字段或值匹配,下面的示例顯示 Q&A 識別了 EU Sales 這個詞。

橙色圓點下劃線(下劃虛線)表示用戶輸入的單詞被歸類爲低置信度,如果您鍵入一個含糊或模棱兩可的詞,該字段將帶有橙色圓點下劃線。 舉個例子,對於“銷售”這個詞,數據集中的多個字段可能都包含“銷售”一詞,因此係統使用橙色虛線下劃線提示您選擇您想要的字段。 低置信度的另一個例子是,如果您鍵入單詞“area”,但它匹配的列是“region”。 Power BI Q&A 可以識別具有相同含義的單詞,這要歸功於與 Bing 和 Office 的集成,並且還將報告中的重命名解釋爲潛在的建議。 Q&A 用橙色圓點在這個詞下劃線,這樣你就知道它不是直接匹配的。

紅色實心下劃線表示 Q&A 根本識別不了這個詞,如果用戶輸入數據集中不包含的術語,或者數據字段的名稱不正確,那麼系統會顯示紅色下劃線。 舉個例子,如果數據集中不存在“Cost”,Q&A 會用紅色下劃線標記該詞,以表明它沒有找到與數據相關的該詞。

二,可視化結果

當您輸入問題時,Q&A會嘗試立即解釋問題和可視化答案,並嘗試把字段自動繪製到正確的軸上。 例如,如果您鍵入“Sales by year”,Q&A 會檢測到該Year是一個日期字段,並始終優先將此字段放在 X 軸上。

Q&A 目前支持以下的可視化類型:

  • Line chart
  • Bar chart
  • Matrix
  • Table
  • Card
  • Area
  • Pie chart
  • Scatter/Bubble chart
  • Map

三,數據的索引和緩存

Q&A的問答是非常快速的,一旦用戶輸入問題,立馬就可以獲得結果,之所以有這麼快速的反應,是由於Q&A對數據集做了索引和緩存處理。

1,索引是如何工作的?

當啓用Q&A功能時,Q&A會建立一個索引,以便快速向用戶提供實時反饋並幫助解釋用戶的問題。 Q&A需要一些時間來構建索引,並且具有以下特徵:

  • 所有的列名和表都將插入到索引中,除非明確從Q&A工具中關閉。
  • 所有少於 100 個字符的文本值都將被編入索引,超過 100 個字符的文本值不會被編入索引。
  • Q&A 將在其索引中存儲最多 500 萬個唯一值。如果您超過此閾值,索引將不會保留所有可能的值,這可能會降低您從Q&A中獲得的結果的準確性。
  • 如果在構建索引期間發生錯誤,索引將保持在部分狀態,並將在下一次刷新時重新創建。

在PowerBI Desktop的Options,在CURRENT FILE的Data Load中啓用Q&A功能

Q&A構建的索引會緩存到系統中,索引需要佔用存儲空間,用戶可以在Data Load的 Q&A Cache Options 中設置緩存的大小,默認是4GB。

2,多久刷新一次緩存?

在Power BI Desktop中,索引是在使用Q&A時被創建;在Power BI Service中,索引是在發佈(publish)或刷新數據集(refresh)時被創建。

在索引創建的時間內,Q&A 會自動生成一些建議的問題,開發人員也可以訓練Q&A,來生成更加準確的問題。

四,使用Q&A工具訓練Q&A

藉助 Power BI Q&A工具,開發人員可以改善Q&A的自然語言體驗,開發人員可以在四個方面改進:

  • 檢查(Review)用戶提出的問題;
  • 訓練(Tech)Q&A理解問題和術語,並管理Q&A在進行訓練時理解的術語
  • 建議的問題
  • 字段的同義詞

1,檢查(Review)用戶提出的問題

選擇Review questions選項卡,可以查看數據集,用戶提出的問題。注意,默認情況下,Review questions只會保存過去 28 天的歷史數據。

在該對話框中會顯示數據集、工作區和上次刷新日期,開發者可以選擇一個數據集並查看用戶提出的問題,該對話框使用紅色下劃線顯示了未被識別的單詞。

2,訓練Q&A

Tech Q&A 用於訓練Q&A理解和識別單詞。首先,鍵入一個問題,其中包含 Q&A 無法識別的一個或多個單詞,然後,Q&A 會提示您輸入該陌生術語的定義,你需要輸入與該陌生單詞所代表的內容相對應的過濾器或字段名稱。

Q&A根據定義重新解釋原始問題,如果您對結果感到滿意,則可以保存您的輸入。

詳細的操作是:選擇紅色下劃線標記的單詞,Q&A會提供建議,並提示開發人員提供正確的定義。在“Define the terms Q&A didn't understand”中輸入正確的定義,點擊“Save”,預覽結果。

開發者可以訓練Q&A理解或記憶兩種類型的術語(即同義詞):名詞和帶有條件的名詞。

定義一個名詞的同義詞:在處理數據時,可能會遇到一個字段名稱可以用替代name引用的情況,舉個例子,“Sales”在某些情況下,可以使用“Revenue”來指代。在這種情況下,可以告訴 Q&A,'Sales' 和 'Revenue' 是相同的。

Q&A 在遇到一個無法識別的單詞時,使用來自 Microsoft Office 的知識自動檢測單詞的詞性,如果 Q&A 檢測到名詞,可能會通過“refers to”方式來提示:

定義帶有一個條件的名詞:有時您可能想要定義adj+noun,舉個例子,'Awesome Publishers'是指:已發佈 X 件產品的發佈商。 如果Q&A 檢測形容詞,可能會通過“that have”方式來提示:

如果Products是一個列名,或者是一個Measure,那麼可以爲Products定義的條件可能是:

  • Products > 100
  • Products greater than 100
  • Products = 100
  • Products is 100
  • Products < 100
  • Products smaller than 100

也可以使用帶有聚合函數的表達式來定義:

開發者只能在該"Tech Q&A"中定義一個條件,要定義更復雜的條件,請首先使用 DAX 創建計算列或Measure,然後使用該工具爲該列或度量創建帶有單個條件的名詞。

3,定義字段的同義詞

選擇“Field synonyms”,可以查看模型中所有的表和列,並添加列名的同義詞(替代名稱),還可以選擇是否從Q&A中隱藏列或表。

該對話框顯示報表用戶在針對數據集提出問題時可以使用的所有列、表和相應的術語(即同義詞)。您可以在該對話框中快速查看Q&A會用到的所有術語,還可以爲列添加或刪除同義詞。

  • Add terms:如果有一個字段“Sales”,那麼你可能添加“Revenue”的術語,這樣用戶就可以使用Revenue,而不是必須使用Sales這個詞來表示收入。
  • Include in Q&A:表示列或表是否包含在Q&A中,如果列或表不包含在Q&A中,那麼該表或列會被Q&A忽略,並不會包含在Q&A的索引中。
  • Suggested Terms:建議術語(或建議的同義詞),這實際上是Q&A推薦的同義詞,Q&A利用建議引擎爲開發者檢索出可能的術語,以幫助開發者快速添加術語(即同義詞)。即使Suggested Term未被添加,它們仍然有效,但Q&A會給用戶一條橙色虛線的提示,表示 Q&A 認爲它有答案但不確定。如果建議的同義詞正確,請選擇加號圖標 (+),以便將其用作同義詞。如果建議不正確,請選擇 x 以刪除該術語,這樣它就不會用作術語/同義詞,也不會在問答中起作用。最初的建議由 Office 詞典提供支持,也可以來自報表中的重命名。獲得更多建議術語的另一種方法是通過組織內的synonym sharing(同義詞共享)。

4,管理術語

從“Tech Q&A”和“Field synonyms”中保存的所有內容都會顯示在此處,在該窗口中可以查看或刪除術語或同義詞。

當數據模型逐漸複雜時,“Tech Q&A”和“Field synonyms”保存的術語就會逐漸增多,管理術語成爲一個僅憑記憶很難完成的任務,通過使用該該選項卡,很夠方便管理在“Tech Q&A”和“Field synonyms”中保存的同義詞。

5,建議問題

Q&A不僅可以建議術語,還可以建議問題。在不進行任何設置的情況下,Q&A visual會提示幾個開始使用的問題,這些問題是根據您的數據模型自動生成的。在建議問題中,您可以用自己的問題覆蓋自動生成的問題。

 

 

參考文檔:

Introduction: Use natural language to explore data with Power BI Q&A

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章