2012年12月16日 星期日

ICTCLAS族譜

        ICTCLAS可算是中文分詞(或中文切詞)領域的翹楚. (目前ICTCLAS也進展到3.0 商業版). 也就因為如此, 有許多先進和學者基於張華平博士的貢獻, 相繼投入此一研究和開發各種版本. 在此blog( http://www.cnblogs.com/percyboy/archive/2011/02/11/1951053.html ), 經由博主的研究和歸納, 有幸一窺ICTCLAS的族譜. 在此以饕各位愛好者~

        

綸綸想吃魚

        話說上星期綸綸因為腸胃型感冒, 需要控制食物的類型(清淡, 無蛋白質). 不然症狀會不好控制(就是會一直拉).
        哪曉得這小子, 居然天真地想吃麥當當的魚堡. 我想到"管教啊, 管教"一書的原則(或法則)"做個耐心十足的父母". 我就一直好說歹說, 希望能打消他的欲望. 想當然而, 他怎麼可能聽的進去呢. 一開始他是生氣, 我說了不下十多次(各種理由&後果都用上了). 我突然想到, 其實讓他吃魚堡的麵包也去麥當當玩一下. 我心想應該算是Win-Win吧. 他似乎有了解但還是不甘願(戰況持續拉鋸中. 僵持10多分鐘, 這下換他來軟的. 就開始哭了(不是那種大哭, 是那種像小媳婦百般委屈的哭), 眼淚一直滴, 讓我也心疼不已. 這時我又想到書裡的另一招"不要叫小孩「不要哭」", 我就說"爸爸知道你很想吃魚, 可是你吃了會肚子痛, 又要去看醫生, 吃苦的藥"(不要用疊字"苦苦的"), 一直用瞭解和同情的話術去讓他瞭解, 今天是不能吃魚的. 最後他終於同意只吃麵包不吃魚. 等會會遇到鬼打牆的事~
        (快快樂樂去麥當當ing~)
        很快樂的自己向ㄚ姨點了魚堡(不加醬也不加起士片, 虧大了)坐定位置, 綸綸就大手一抓, 就要開始吃魚堡了. 我快速地搶下來(其實這是不好的示範, 我應該一開始就先把魚排收好, 再把麵包給綸綸吃), 把魚排收起來. 想當然, 這小子又開始生氣了. 把出門前答應的內容, 忘的一乾二淨. 我只好又開始說道理盡量不動怒, 畢竟是公眾場所. 當然我也不要怕丟臉就直接責罰小孩(會收到反效果). 除此之外, 我也加上"你剛剛和爸爸溝通好了, 只吃麵包"之類的話語, 不料這小子居然說"你沒有溝通". 旁邊的人都笑了, 我自己其實是又氣又笑. 反正就是把剛剛在家裡的狀況劇又重演了一次, 最後總算是和平收場. 綸綸吃了麵包, 我沒罵也沒打小孩. 這算是Win-Win吧.
        其實當天因為沒有時間壓力, 所以我就用盡力氣"用說的"讓小孩能夠懂和內心地服從. 所以只要時間足夠, 我都會盡量這麼做~

2012年12月13日 星期四

Scrum VS PMBOK

Scrum和PMBOK有啥不同咧?
[ 不正經版 ]
1. 便宜(NT$40K) vs 花錢(NT$50K)
2. open職缺少 vs open職缺多

[ 專業版 ]
1. time boxing vs featuer boxing
2. fix time vs fix scope
3. bottom-up self-organization vs top-down management


以上內容皆為朋友Zion無私分享

2012年12月12日 星期三

Better Traditional Chinese support in Lucene / Solr

    I discover the the approach you may want to know
[ Search Engine Platform ]
    I use LucidWorks Enterprise to have quick POC and initial implementation
[ Detail Configuration / Setup ]
1. Have a new field to store/index TC
2. Configure this field by Lucence SmartChineseAnalyzer. You can refer to an instruction in detail configuration.
3. Instruct an Analyzer(solr.MappingCharFilterFactory) to do character/sentence translation from TC to SC with a customized mapping file.
4. Change default defType(query parser) from lucid to edismax because 1st filter supports English only.

    There isn't a dedicate/better Traditional Chinese(Big5 code)(we use TC in this article) analyzer/tokenizer in Lucene/Solr. There are some good Simplified Chinese(GB code)(we use SC in this article) analyzer/tokenizer. Finally, I choose SmartChineseAnalyzer due to 2 major features
1. The algorithm : It uses Hidden Markov Model and it was proved that over 98% search accuracy by another implementation(ICTCLASx).
2. It has a good integration/plug-in w/o further works.

2012年12月11日 星期二

Enterprise Architecture


  1. Using TOGAFR to Develop and Implement Enterprise Architecture in Government - U.S. Federal Agencies as Example, http://www.architecting-the-enterprise.com/enterprise_architecture/articles/using_togaf_to_develop_and_implement_enterprise_architecture_in_government_-_u.s._federal_agencies_as_example.php
  2. One hour tutorial to TOGAF for freshers,http://www.slideshare.net/Infosys/togaf-tutorial-443776

基於Search Engine之中文分詞

http://my.opera.com/jinglepot/blog/index.dml/tag/solr
http://kb.trisugar.com/node/9751
http://code.google.com/p/mmseg4j/ mmseg4j MMSEG for java lucene chinese analyzer, or for solr
http://chenlb.iteye.com/blog/353334 中文分词 mmseg4j
http://chenlb.iteye.com/blog/439843 讨论 mmseg4j 的现状,与改进
http://railsfun.tw/viewthread.php?tid=672 CoreSeek :Sphinx + 中文字典檔:中文分詞搜尋引擎
http://www.mobile01.com/topicdetail.php?f=62&t=339949&last=34826211 求繁體中文版的ZDic[台灣教育部國語辭典]
http://blog.fulin.org/2009/08/lucene_chinese_analyzer_compare.html 当前几个主要的Lucene中文分词器的比较
http://technology.chtsai.org/mmseg/ MMSEG: A Word Identification System for Mandarin Chinese Text Based on Two Variants of the Maximum Matching Algorithm
http://manan.org/2011/08/using_ictclas_in_java_and_lucene/ 在Java程序和Lucene中使用中科院分词系统ICTCLAS
http://ictclas.org/content_java_002.html 给Lucene加入性能更好的中文分词
http://hi.baidu.com/drkevinzhan ICTCLAS张华平博士的空间
http://kb.trisugar.com/node/9751 利用Lucene制作中文搜尋應用


2012年12月10日 星期一

Enterprise Search Engine 企業級搜尋引擎

Lucene / Solr / Tika / Nutch / LucidWorks

        近來預期要導入企業內部search engine(不遠的將來可以會有KM的需求), 要能夠抓DB / crawl intranet webs / 文件庫(whatever file repository or MS-SharePoint)
        馬上想到的標的就是Google Appliance / 龍捲風(Tornado) / Apache Lucene這幾個常見的解決方案. 想當然爾, "要馬兒跑又要馬兒不吃草"的潛規則就自動變成"MIS限制理論". 原本國外分公司有購買Google Appliance, 這就是最好的選擇, 好用又不用自己(台灣分公司)花錢. 不幸的是...只用在internet網站. 只好繼續尋找.
         一剛開始, 由於有先前survey CMDBuild (這個好東西改天再來介紹, 該開發團隊真是太強了),  進而知道Alfresco( CMS )可搜尋PDF & Office文件, 底層也是Apache Lucene. 試了很久, 發現並不是我想要的. 或許是殺雞焉用牛刀吧, 又或許是難以快速上手, 又或許是難以擴充功能(crawl intranet webs. 最後還是放棄了.
         初步查看Lucene相關資料後, 網路都推薦Lucene + Solr. 再加上自身的需求就變成Lucene + Solr + Tika (document parser/analyzer) + Nutch (web crawl)的套餐了. 只不過因為"偷懶", 因為還要開發或整合search UI. 研究該套餐數天後, 又轉換研究目標到LucidWorks Enterprise. 其實該system也是Lucene + Solr + Tika + Nutch + ....的集成. 加上已經設計好的UI( Admin & user ), easy to use and quick configuration to production/pilot run. 加上原本Solr的彈性配置, 其實還是具有擴充性.

Useful Reference

http://blog.building-blocks.com/building-a-search-engine-with-nutch-and-solr-in-10-minutes