發表文章

目前顯示的是 2021的文章

Word Vector & Word embedding 初探 - with n-Gram & GLOVE Model

圖片
       終於又有新題材可以分享了,每天在公司歷練(?),下班時常想著要爬起來自我學習,但現實總有點動力骨感,打開的不是筆電,是switch.....不過人生嘛...努力就是想到的時候再做,也是一種進步。 不胡說八道了,進入主題Word Embedding吧,繼上次分享詞頻分析之後,心中對於text mining真的是想著總有一天我還要在更加深入的學習,所以今天要努力分享嚕~ 1. 什麼是Word Embedding? 當你打開手機,輸入"一瓶",螢幕上自動跳出 "啤酒" "汽水" 等名詞;或者郭台銘之於鴻海就像張忠謀之於台積電。 諸如此類讓文字彼此之間有所連結跟類似的邏輯,就是Word Embedding的應用。 透過分析一份完整的語料 (Corpus) 建立詞向量(Word Vector) 進而推論出詞語之間的邏輯語關係,就是Word Embedding的功能。 2. 和詞頻分析不同之處? 詞頻分析主要透過斷詞進而找出詞頻,並抓出相似的文件或者分析出文件的主題。 而詞向量主要在語料中的字詞間找出特定的邏輯和關係。 3. 貝式機率 & 馬可夫練 貝式機率一直是推論關係很好的辦法, P(w1,w2,w3,w4......,wn) = P(w1) * P(w2|w1) * P(w3|w1,w2) * .........P(wn|w1,w2,w3......,wn-1)  P(w1,w2,w3,w4......,wn) <-- w1~wn 共同出現的機率 P(w1) <-- w1 出現之機率 P(w2|w1) <-- 給了w1後,w2出現的機率;P(w3|w1,w2) 給定w1,w2後,w3出現的機率 P(wn|w1,w2,w3......,wn-1) <-- 同理類推,給定w1~wn-1後,wn出現的機率。 如此一來便能推斷字詞之間的關係,但這時發現,如果字數太多,便會很耗費計算效能。 這時便可參考馬可夫鍊的假設,目前出現的詞,僅和前幾個出現的詞語有關係。 其實很好推論,馬可夫鍊也被應用於棒球投手的配球,假設一場球賽先發投手投了120球,我們要推論投手在最後10球的配球,並不會回溯到第一球或者回溯到他生涯的第一場先發,我們會根據他在前幾球的配球做後續推論,就是這樣的道理。 ...

Using R in power BI with html visuals

圖片
嗨嗨大家好, 又很久不見了, 最近的工作內容仍然以BI資料視覺呈現為主,透過R語言去連接本機的ODBC渠道,進而連接來自不同類型的SQL,從PosSQL / Oracle / MS SQL...等, 串接成功後,先以R語言進行資料梳理,tidyverse套件對於整理而言已經是很足夠應付的,甚至可以將不利於做分析的報表格式整理成Tidy格式。  今天最主要想介紹的是怎麼隨心所欲地將R語言的視覺效果隨心所欲地移植到Power BI。  1. 非互動視覺效果: 很簡易地,我們可以直接從紅框框處選擇安插R語言的編輯。 打開後,其實就是安插一個R語言環境在他的小視窗裡進行編輯,這時我們便可以選擇欄位做為要視覺化的對象。我們甚至可以在此進行csv讀檔或者任何新資料集皆能在此進行處理,如下圖,我使用了跟Power BI環境裡完全不同的資料集進行視覺化。 不過,想當然爾,在R語言是以圖片的方式呈現出來的,自然是不會有互動性,不過R本身已經有支援plotly, leaflet等具備互動是圖表的套件,但當我們想套用時,會發現這樣並沒有辦法用一樣的方式呈現。在這裡的語法只能針對圖片檔呈現。 所以要放棄leaflet 或 plotly 等精美的方式呈現嗎? 當然不要。 2. 互動視覺效果: 怎麼處理呢?  首先去下載 nodejs 吧~~ 再來打開cmder / powershell輸入 pbiviz new demoCarEvaluation -t rhtml 於是開始一系列的安裝, 成功後可以看到以下畫面: 我們在cmder 輸入 pbiviz可以看到以下畫面: 接下來去尋找您安裝的地點 接下來可以看到許多json檔案與script.R,我們需要進入這些檔案修改預設好的檔案: a) pbiviz.json : 更改 name / displayname / description / supportUrl(改成任何網址都行ex: www.google.com) / author (簡單填一下自己的簡介即可) b) dependencies.json : 選擇自己要安裝的package,預設為plotly,而我在此新增了leaflet,千萬要記得附上cran的連結唷! c) 針對Rcript調整,其實寫道這漫漫可以理解,這就是base on R語言的Power...