2017年6月10日 星期六

EJB 3.1 Embeddable API + Junit 技術心得整理

簡介

在 Junit 中使用 Embedded GlassFish Server 做爲 EJB 元件的測試環境。The EJB 3.1 Embeddable API is designed for unit testing of EJB modules.

參考範例 Using the Embedded EJB Container to Test Enterprise Applications (https://netbeans.org/kb/docs/javaee/javaee-entapp-junit.html?print=yes)


2017年5月14日 星期日

Netbeans 中 pull 特定的 remote branch

要 pull 特定的  remote branch 到本地端:

1. (M)Teams > Pull > Remote...
2. 選擇 Git Repository Location
 
3. 選擇要 pull 的 remote branch
4. OK.

2017年4月28日 星期五

melt() 使用時 measure variable 的型態要一致

使用 melt() 來 reshape 資料時, measure variable 的型態要一致,否則會出現警告。

例如有以下的資料:


資料中,subject 欄位為 factor。若使用 subject 為 id.var 進行 melt,則會出現以下警告訊息:


因為,第一個欄位為 Factor 型態,melt() 把後面其他的欄位也視為 Factor,造成轉換時的錯誤。


Reference:
[1] thiagogm, 2013. Reshape and aggregate data with the R package reshape2, www.r-bloggers.com.

2017年4月27日 星期四

ui:debug 和 flash.keep 的衝突

若在 facelet 中使用 ui:debug,則在同一個 facelet 中使用 flash.keep 時無法正常顯示 flash scope 中的變數。

測試資料

References:
[1] ui:debug
[2] Flash class

2017年4月15日 星期六

Expectation-Maximization (EM) Algorithm 介紹


演算法,用來計算混合模型(Mixture Model)下的 Maximum Likelyhood 估計。

混合模型(Mixture Model):
觀察到的資料點(Data Point) 來自於兩個分配(Distribution), 哪些資料點是屬於那個分配呢?




Youtube 影片介紹
EM Algorithm: How it works (1) by Victor Lavrenco
EM Algorithm: How it words (2) by Victor Lavrenco

2017年3月29日 星期三

心得整理 - 文字探勘者的入門心法.


文字探勘(Text mining) 是由人類文字中找出知識的研究。其過程,先對需進行文字處理,將人類自然語言文字和機器文字(如 HTML 標籤)分離。之後,在應用 Data Mining 的技術,找出文字間的關係或者分群等,以找出文字背後所代表的群眾知識[1]。


一、研究範疇

文字探勘的研究主題可依人類產生文字的過程進行區分。文字是人類對於客觀世界現象的主觀描述。在文字探勘的第一個主題是找出自然語言的知識,內容包括:

  • 自然語言處理(Natural Language Processing): 將人類自然語言轉化為電腦更易於處理的形式,如詞性分析、句法分析、語義分析等。
  • Text Representation: 利用數字表示沒有結構化的文字,以利後續數學處理。
  • 文字關聯及探勘(Word association and  Mining): 找出具有相同用途的文字,也稱為 Paradigmatic Analysis;或者找出文字間不同的組合的方式,也稱為 Syntagmatic Analysis。
  •  Topic Mining: 在了解字與字之間的關係後,找出主觀描述者在討論的話題(Topic)。
  •  Concept Mining: 試著找出文字中的抽象想象(abstract idea)或稱概念,此概念是大家都知道的概念,雖然所有的字彙不同,但描述的都是相同的概念。如自然語言中的同義字或者片語,be completely dead = be as dead as doornail。

文字探勘的第二個主題是找出主觀描述者背後的知識,試著分析出描述者的主觀意見(Opinions)。 這個主題稱為 Opinion Mining, 從文字中分析主觀描述者的意見或情緒, 如 positive/negative, happy/sad 等.

第三個主題是從主觀描述者所提供的文字, 分析出主觀描述者所處客觀環境中發生的情境資料, 如地點、事件、描述者的人際網絡等, 此主題稱之為 Contextual Text Mining。


二、方法整理

2017年3月17日 星期五

在 RStudio 啟動時自動執行語系切換 指令


問題

在資料中有中文字,每次進 RStudio 時都要手動執行 Sys.setlocale(category="LC_ALL", locale = "cht") 將語系改成  CP-950。

做法

在專案目錄下新增一個 .Rprofile 的檔案,加入 Sys.setlocale(category="LC_ALL", locale = "cht")  指令。如此,在開啟專案時便會自動執行 .Rprofile 內的指令[1]。


參考資料

[1]  Josh Paulson, 2017/1/22, Using Projects, https://support.rstudio.com/hc/en-us/articles/200526207-Using-Projects, Accessed on 2017/3/18