像ChatGPT玩轉Excel資料

思邁特Smartbi發表於2023-03-17

1.引言

最近ChatGPT的出現,把人工智慧又帶起了一波浪潮。機器人能否替代人類又成了最近熱門的話題。

今天我們推薦的一個玩法和ChatGPT有點不一樣。我們的課題是“ 讓使用者可以使用自然語言從Excel查詢到自己想要的資料”。

要讓自然語言可以從Excel中查資料,那我們得做點準備:

  • 需要一個Excel文件

  • 需要一個自然語言查詢工具(這裡我們推薦Smartbi NLA)


1.1.體驗自然語言查詢

老規矩,先上效果再說其他。


【使用錄屏動畫】

2.Excel說明

我們先準備一個Excel,這個資料是模仿一個企業的合同簽訂表資料造的一份隨機資料,有些數字可能不大合理。不合理的地方,請自動忽略 ^_^。


2.1.資料結構說明

2.1.1合同明細表


2.1.2.銷售表


2.1.3.地區表


2.1.4.日期維


2.2.表關係圖

像ChatGPT玩轉Excel資料

【表關係圖】


2.3.資料示例

像ChatGPT玩轉Excel資料

【Excel詳情】

3.資料匯入與建模

資料情況介紹完了,我們要用上述的資料,做一個資料模型,下面主要介紹下建模的過程。


3.1.Excel匯入

Smartbi中的Excel資料匯入,非常簡單,按照嚮導操作就可以了。

像ChatGPT玩轉Excel資料


【Excel資料匯入】


3.2.建立表關係

3.2.1.第一個表關係

資料匯入完成後,我們先建立第一個表關係。滑鼠放到《銷售表》表上面後,會出現4個小圓圈。選擇一個小圓圈,拖動到《合同表》上面,就會自動彈出表關係對話方塊。我們選擇關聯欄位,然後選擇“一對多”關係。

像ChatGPT玩轉Excel資料

【《銷售表》和《合同表》關係建立】


像ChatGPT玩轉Excel資料

【完整表關係】


3.3.指標、維表和事實表處理

3.3.1.生成指標

像ChatGPT玩轉Excel資料


【雙擊“合同金額”轉指標】


從事實表中,找到需要轉為指標的列,雙擊,就會自動生成指標。


3.3.2.處理維度

預設情況下,右側欄的每一個欄位,都會預設生成一個維度。但是有些欄位(ID、編碼等)在正常的查詢中我們並不需要,所以建議將不需要的欄位隱藏。同時為了讓自然語言能夠更好的識別到使用者語言中的指標和維度,建議在設計模型的時候將指標和維度修改成使用者常用的詞語。

像ChatGPT玩轉Excel資料


【隱藏“合同維表”】


像ChatGPT玩轉Excel資料

【顯示“合同名稱”】


《合同維表》中,依次顯示“合同名稱”、“商機型別”、“合同型別”、“行業名稱”,這些是需要轉成維度的,其他的欄位都不需要,所以其他欄位都可以隱藏掉。其他表也做同樣操作,隱藏掉編碼欄位。


3.3.3.建立時間維度

像ChatGPT玩轉Excel資料

【建立時間維度】


在右鍵“日期”欄位,選擇“建立時間層次結構”,我們可以建立包含指定層次的時間維結構。


像ChatGPT玩轉Excel資料

【選擇時間層次結構】


根據查詢需要,我們選擇了“年”、“季”、“月”、“日”,4種層次結構。


像ChatGPT玩轉Excel資料

【生成的時間層次】


如果覺得預設的名字不好,可以改名。不過為了能更符合常用日期說法,還是建議改下預設名字。如果有特殊需要,也可以修改需要顯示的日期格式。


像ChatGPT玩轉Excel資料

【修改季度名字】


像ChatGPT玩轉Excel資料

【改名後的時間層次】


3.4.自定義指標

除了合同金額,如果我們還想知道“合同個數”,我們需要對“合同編碼”做 單獨 計數。

像ChatGPT玩轉Excel資料

【生成“合同個數”指標】


3.5.模型抽取

最後,我們需要對模型進行抽取,將Excel資料載入到快取記憶體庫中。

像ChatGPT玩轉Excel資料

【模型抽取】


像ChatGPT玩轉Excel資料

【點選:抽取並建寬表】


3.6.模型驗證

模型做好以後,我們需要驗證下模型是否正確。這裡可以使用“自助儀表盤”完成模型的驗證工作。

像ChatGPT玩轉Excel資料

【新建-互動式儀表盤】


像ChatGPT玩轉Excel資料

【查詢驗證】


把用到的維度和指標都拖上來,看看是否有資料,資料是否正確。


3.7.總結

以上是建立資料模型完整的過程。是不是很簡單,手癢的同學可以先試試了。

Smartbi的資料模型建設過程非常簡單,全程就是滑鼠拖拽就實現了,除了改名,基本不需要使用鍵盤。更不需要寫SQL語句或者其他程式語言。對使用者的要求大大降低。就算稍微有點難度的--做計算指標, 對使用者的要求也只是:瞭解該指標的計算方法,然後基本也是全程滑鼠就可以實現了。總之, 使用Smartbi一切都太方便了


4.自然語言查詢

4.1.訓練NLA模型

Smartbi自然語言查詢,是在“資料模型”之上,再建立了一個知識模型(知識圖譜)。這個知識圖譜,需要有一個簡單的訓練過程。不過Smartbi已經把這些工作都包裝好了,我們只需要點一個訓練按鈕就可以實現知識圖譜的訓練了。

像ChatGPT玩轉Excel資料

【訓練AI圖譜】


像ChatGPT玩轉Excel資料

【選擇需要參與訓練的維度】


日期維、ID、編碼、數字這些一般是不需要參與訓練的,也就是隻訓練有意義的字串列。


像ChatGPT玩轉Excel資料

【選擇對話式分析-進入自然語言查詢】



4.2.查詢演示

4.2.1.語義場景自適應

像ChatGPT玩轉Excel資料

【排名演示場景】


Smartbi的自然語言查詢和同類產品有個不一樣的地方就是,通常的自然語言查詢工具,需要比較完整地說出資料庫中的欄位名,而Smartbi的自然語言查詢是不需要的,使用者可以按照常規的說法去說這個詞語。系統會根據當前的語言場景匹配最合適的欄位。

比如上述例子中的“廣州分部合同金額排名前十銷售”,系統會根據當前的語句自動識別是想要對“銷售姓名”排名還是“銷售分部”排名,在這句話中,系統給出的選擇是使用“銷售姓名”進行排序。

“合同排名”也是同樣的意思。這裡就不詳細展開了。



4.2.2.自動生成計算指標

像ChatGPT玩轉Excel資料

【動態生成計算指標】


Smartbi自然語言查詢,還有一個顯著特點是可以自動生成一些常用的時間計算指標(不需要預先在模型中做好)。比如:同比、環比這些。

Smartbi NLA支援的時間計算指標有:

  • 同期比

  • 環比

  • 同期值

  • 前期值

  • 同期增量

  • 前期增量

  • 年累計

  • 年累同比

  • 季累計

  • 季累同比

  • 月累計

  • 月累同比

  • 佔比


4.2.3.綜合分析案例

像ChatGPT玩轉Excel資料

【分析案例】


這個演示主要是介紹使用自然語言分析出“廣州分部合同金額去年同比下降”的原因。最開始查的是“各分部的合同情況”,然後發現廣州分部同比下降了37%。

然後繼續問廣州分部各行業的情況,只看行業資料看不出問題,我們加上了“同比”和“佔比”,發現“佔比”比較大的行業(零售、教育、旅遊)的合同額都大幅下滑,特別是旅遊行業下滑73%。

我們再從月份的角度看,基本看到4月、5月資料都下滑比較嚴重,到了下半年跌幅也比較巨大。

透過上述示例發現,在做資料分析的時候使用自然語言查詢, 要比傳統的拖拉拽方式快速很多,比手寫SQL更是進步了幾代。所以使用自然語言做分析,將會給業務分析人員,帶來更大的方便性。


?感興趣的朋友可點選連結,立即體驗Smartbi智慧問答


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69965912/viewspace-2940334/,如需轉載,請註明出處,否則將追究法律責任。

相關文章