Tuesday, August 29, 2006

Using Acopost as C library

Acopost is a collection of part-of-speech taggers written in C and Perl. However, AFAIK, Perl is used just for the code for training the tagger. According to the lastest version of Acopost, a tagger has be called by command line (unix shell). Since I want to call a part-of-speech tagging function from C code, Acopost must be transformed into a C library. Well, I can use system("t3 .....") but a tagger take quite long time for re-initialization. For convenient, GNU Building tools and pkg-config are used. Anyways, only the t3 tagger can be called from C.

The modified version can be download here.



Acopost เป็นชุดรวมโปรแกรมกำกับชนิดของคำที่เขียนด้วยภาษาซีและ Perl อย่างไรก็ตามเท่าที่ผมทราบ ภาษา perl ใช้เฉพาะใน code สำหรับฝึกฝนตัวกำกับชนิดของคำเท่านั้น ตามที่ดูจาก acopost รุ่นล่าสุด ตัวกำกับชนิดของคำต้องเรียกจาก command line (unix shell) เท่านั้น จากที่ผมต้องการจะเรียกตัวกำกับชนิดของคำจากภาษาซี ดังนั้น Acopost จึงสมควรจะถูกแปลงเป็น C library ถึงแม้ว่าเราจะใช้คำสั่ง system("t3 ....") ได้ แต่ว่า tagger ก็ใช้เวลานานในการเริ่มทำงานแต่ละครั้ง เพื่อความสะดวกในการแปลนี้ก็ได้ใช้ GNU Building tools และ pkg-config อย่างไรก็ตาม ตัวกำกับชนิดของคำ t3 เท่านั้นที่สามารถเรียกจากภาษาซีได้

รุ่นที่แก้ไขแล้วสามารถ โหลดได้ที่นี่.

Saturday, August 26, 2006

LinkGrammar4R update

I plan to release LinkGrammar4R 0.1.0, which will be corresponding to LinkGrammar 4.2.3 from Abisource.

Currently, in SVN trunk, LinkGrammar4R has test units, API for manipulating parse options, API for getting number of linkages from sentence object and also Rubism iteration for handling linkages.

Anyways, I still would like to discuss about the name of methods for getting number of linkages.

Thank Bradford Folkens for his ideas, codes, bug fixing. Actually most of patches, bug reports, are done by him :-) Also thank Ken Bloom for giving me an example of API, which is his link-grammar binding based on Ruby/DL and bug fixing.




ผมกะว่าจะปล่อย LinkGrammar4R 0.1.0 ซึ่งจะสอดคล้องกับ LinkGrammar 4.2.3 จาก Abisource

ตอนนี้ใน SVN กิ่งหลัก LinkGrammar4R มี test units มี API สำหรับจัดการตัวเลือกเกี่ยวกับการแจกโครงสร้างข้อความ มี API สำหรับดึงจำนวน linkages จาก Sentence object และก็ยังมี การเข้าถึงข้อมูลแบบ Ruby สำหรับจัดการกลุ่มของ linkage

อย่างไรก็ตาม ผมยังมีความต้องการที่จะอธิปรายเกี่ยวกับ ชื่อของ method สำหรับดึงจำนวนของ linkage

ขอบคุณ Bradford Folkens สำหรับ แนวคิด รหัสต้นฉบับ การแก้บัก จริงๆ แล้ว patch และการรายงานบักส่วนมาก ก็เป็น Bradford Folkens นั่นเองที่เป็นคนทำ แล้วก็ขอบคุณ Ken Bloom ด้วยที่ช่วยให้ตัวเชื่อม link-grammar ที่เขียนบน Ruby/DL มาเป็นตัวอย่าง และช่วยแก้ bug ด้วย.

Thursday, August 17, 2006

Light at midnight

Even at midnight, how can I read those text without light.
ถึงแม้จะเป็นเวลาเทื่ยงคืน ฉันจะอ่านข้อความเหล่านี้ได้อย่างไรโดยไร้แสงสว่าง

Tuesday, August 15, 2006

A quote from /. YRO

``ถ้ารัฐบาลสามารถตรวจสอบทุกอย่างที่ประชากรแต่ละคนทำได้ ก็จะไม่มีใครทำให้รัฐบาลนั้นอยู่ในการตรวจสอบได้''
``If the government can check everything each citizen does, nobody can keep the government in check.''

และแล้ว Tor ก็ต้องโดน Block?
Then Tor must be blocked?

Source

Tuesday, August 01, 2006

Thai government will buy 100 USD laptop?

Unlike someone predicted, AMD Geode has been used not AMD K6 or K7. Geode is not another name of K6/7. AMD just bought it from National Semiconductor on 2003. So it must consume much less power than someone thought. Wifi don't have to be used to connect the Internet. As we have seen in Nintendo DS and etc., wifi can be used for group playing game and etc, which can be useful for students. Anyways, I didn't hear any news concerning this project from the government for a long time.

ไม่เหมือนที่บางคนทำนายไว้ เครื่อง 100 USD ใช้ CPU ชื่อ Geode ไม่ใช่ K6 หรือ K7 ของ AMD Geode ไม่ใช่อีกชื่อหนึ่งของ AMD K6 หรือ K7 เพราะว่า AMD พึ่งชื้อ Geode มากจาก National Semiconductor เมื่อปี 2003 ดังนั้นมันจึงกินไฟน้อยกว่าที่บางคนคิดไว้ Wifi ไม่จำเป็นต้องเอาไว้ต่อ Internet เสมอไป อย่างที่เราเห็นจาก Nintendo DS และอื่นๆ Wifi สามารถเอาไว้ใช้เล่นเกมส์แบบกลุ่มและทำประโยชน์อื่นๆ ได้ ซึ่งสามารถเป็นประโยชน์สำหรับนักเรียนหลายๆ คน ผมชอบโครงการนี้ อย่างไรก็ตามก็ไม่เห็นมีข่าวอะไรเกี่ยวกับโครงการนี้จากรัฐบาลมานานแล้ว

Thursday, July 20, 2006

Install .deb

Today I try to install scim-thai-xxx.deb from thep (Actually, it is in http://linux.thai.net/apt.) Anyways, on Ubuntu 6.06, it has to be rebuild. Unluckly, I don't know how to install .deb with dependency checking. ans answer my question in #tlwg as follow:


ans-ffox-win2003 vee____: dpkg -i can install any packge without dependency check
vee____ ans-ffox-win2003: i see .....
vee____ ans-ffox-win2003: how could I perform checking?
ans-ffox-win2003 but the package will still in the "unpacked" state, not "configured" state
ans-ffox-win2003 dpkg -i, then "apt-get install"
vee____ ans-ffox-win2003: thank you
ans-ffox-win2003 if dpkg -i without correct dependency, it will be "unpackaged" or "half-configured" state, not "installed" state
ans-ffox-win2003 ayan
ans-ffox-win2003 just run "apt-get install" it will try to complete the dependency
ans-ffox-win2003 ayan
vee____ ans-ffox-win2003: cool
vee____ ans-ffox-win2003: can I post the discussion log to my blog?
ans-ffox-win2003> many installation script that install .deb, does use this method.
ans-ffox-win2003> yes, can post
ans-ffox-win2003 ayan
vee____ ans-ffox-win2003: thx
ans-ffox-win2003 many installation script that install .deb, do the following step,
ans-ffox-win2003 1. dpkg -i xxx.deb
ans-ffox-win2003 2. apt-get install


He also commented that dpkg -s can be used to check installation status.

Thursday, July 06, 2006

[LinkGrammar4R] We need higer-level API?

Thank Bradford Folkens for reporting the bug that sometime LinkGrammar4R just crashes when Linkage.new is called. It occurs since there is no linkage from parsing result. Thus, in Linkage.new, the index was checked before calling linkage_create. If the index is out of range, the exception will be raised.

However, I feel like LinkGrammar4R need more higher-level API that free us for checking these index. It may be an iterator?


iterateLinkage(sent, opt).each{|linkage|
.....
}

or

parsedSentence.eachLinkage(opt) {|linkage|
......
}

Tuesday, July 04, 2006

A product from Nectec's codefest (Release)

I played Parsit firefox extension from Group number 3. This may be practical way for machine translation user interface today. :-)

Thanks blaa for helping to install this, thanks everyone in Parsit firefox extension team for developing such a good software and thanks NECTEC for the excellent campaign.


ผมลองเล่น Parsit firefox extension จากกลุ่ม 3 ดู โปรแกรมแบบนี้อาจจะเป็นวิธีที่ดีในทางปฎบัติที่จะสร้าง user interface สำหรับโปรแกรมแปลอัตโนมัติ

ขอบคุณปลาที่สอนลงโปรแกรมนี้ ของคุณทุกคนที่ทำโปรแกรมนี้ ขอบคุณ nectec ที่ทำโครงการดีๆ ขึ้นมา

Screencast: http://vee.pompokoisme.com/screencast/parsit_ff.swf
Its homepage: http://www.softwarebank.org/projects/parsit-cf03/
Release: http://www.softwarebank.org/project/showfiles.php?group_id=59&release_id=69

Monday, July 03, 2006

TIS-620 will be in xchat-gnome combo box.

TIS-620 was added to xchat-gnome's combo box in the svn truck. Thanks xchat-gnome developer(s) and Thep also for making Thai known to FLOSS community.


นักพัฒนาเพิ่ม TIS-620 เข้าไปใน combo box ของ xchat-gnome แล้ว :-) ขอบคุณนักพัฒนาเอ็กซ์แชทโนม และป๋าเทพด้วยที่ให้ภาษาไทยเป็นที่รู้จักในชุมชนซอฟต์แวร์เสรี

http://svn.navi.cx/misc/trunk/xchat-gnome/src/fe-gnome/irc-network.c
http://bugzilla.gnome.org/show_bug.cgi?id=346396

Wednesday, June 28, 2006

Software Engineering

I may need to know more about these 2 words Spiral model and
Agile.

BTW, even spiral model or agile or other might not be useful for the team have common platform or common standard coding or common programming language. -_-!

Saturday, June 24, 2006

Constituents in Link-grammar API

In Link-grammar 4.4.2, the functions in API for handling constituents are omitted. However, Dom has added them these functions to Link-grammar in CVS trunk already. :-) So LinkGrammar4R in its SVN trunk was changed to be compatible with Link-grammar in CVS trunk too.

I'm just waiting for new release of Link-Grammar with the functions for handing constituent in API. Then I will test and release new LinkGrammar4R too.

Wednesday, June 14, 2006

LinkGrammar4R 0.0.2 release

LinkGrammar4R 0.0.2 is tended to conform Link-grammar 4.4.2, which its API has been changed significantly from 4.1.3, for instance, the API were grouped into a single file, the dictionary can be created by only choosing the language rather than selecting each data files. However, some functions for handling phrase structure trees are not included in public API. Thus, in LinkGrammar4R 0.0.2, the functions for phrase structure handling is provided as an option. Moreover, after, discussion in Abiword IRC, there is a hope to add the phrase structure handling functions to public API of Abiword's branch of Link-grammar. :-)

Thank Ken Bloom for informing LinkGrammar4R building on AMD64 and new header file. Thank Uwog and Dom of the Abiword team for suggestion about Link-grammar API.

http://rubyforge.org/projects/linkgrammar4r/



[Thai translation]
LinkGrammar4R 0.0.2 เขียนออกมาเพื่อให้สอดคล้องกับ Link-grammar 4.4.2 ที่ API เปลี่ยนไปอย่างเห็นได้ชัดจากรุ่น 4.1.3 เช่น API จัดให้อยู่ใน header file ไฟล์เดียว dictionary สร้างได้โดยการระบุภาษาแทนที่จะต้องระบุถึงไฟล์ข้อมูลแต่ละไฟล์ อย่างไรก็ตามมีฟังก์ชันสำหรับจัดการต้นไม้โครงสร้างวลีที่ไม่รวมอยู่ใน public API ด้วย ทำให้ฟังก์ชันสำหรับจัดการต้นไม้โครงสร้างวลีใน LinkGrammar4R 0.0.2 เป็นตัวเลือก มากไปกว่านั้นหลังจากการสนทนาใน IRC ของ Abiword ก็มีความหวังว่าฟังก์ชันในการจัดการโครงสร้างวลีจะถูกรวมเข้าใน public API ของ Link-grammar ในกิ่งของ Abiword ด้วย

ขอบคุณ Ken Bloom ที่แจ้งให้ทราบถึงปัญหาในการ build LinkGrammar4R บน AMD64 และ header file ใหม่ ขอบคุณ uwog และ dom แห่งทีม Abiword ที่ให้คำแนะนำเกี่ยวกับ Link-grammar API

http://rubyforge.org/projects/linkgrammar4r/



[I am learning more langauges.]

Saturday, May 27, 2006

A free/open source software with a nice manual


Even for free/open source software, I prefer reading a nice manual. However without a nice manual, I prefer free/open source software. :-P

Friday, May 26, 2006

NLP summer school in Bangkok

There will be a summer school about NLP named "LAICS-NLP Summer School" in Bangkok on 16th-22nd October. As far as I know, it will happen in Kasetsart University and mostly organized by Ajarn Asanee (my advisor).




For me, the topics about syntax and lexical structure are quite intersting. :-)




For more details http://naist.cpe.ku.ac.th/LAICS-NLP/courses_workshop.html

Wednesday, May 17, 2006

Release sources != Open source software

Distributing software without chrage != Free software
Release sources != Open source software

To open source .... but forking is not allow sounds terrible and .... won't be open source software following OSI definition.

Monday, May 15, 2006

Slowly turnaround

Slowly turnaround ~ Riding an elephant to catch a grasshopper (translated from Thai idiom) ?

Friday, May 12, 2006

Better web application video :-)

http://oodt.jpl.nasa.gov/better-web-app.mov


It looks nice. However Turbogears at that time is 0.8, which is quite different from 0.9 that we use today. 0.9 is included authentication, i18 and scaffold too.

Wednesday, April 12, 2006

Free serious MT is coming to town.

Open Logos


In fact, it has come for a while .... since new the lastest release version is 1.0.2.

Friday, April 07, 2006

Dict OS X for French-English dictionary


dictosx_fra_eng
Originally uploaded by veetai.
At the office, I can use Systrans online by http://world.altavista.com for translating French text to English. In fact, I want to read in Thai. However, in English is okay. :-P A free online French-English dictionary can be also accessed at http://www.dict.org/.



At the dorm, there is even no telephone line (for me to connect the internet). Thus a FreeDict package from Debian, which was taken from http://www.freedict.org/ by Debian packager, was obtained by me too. Then I give it you in a zip file for DictOSX. To use this dictionary, DictOSX has to be installed first. Then download this zip. Normally it will be extracted automatically. (Otherwise it can be extracted manually by Stuffit Expander or whatever you like). Finally FreeDict-FRA-ENG.dictosx must be put in /Library/Application Support/Dict OS X. Next time when you start the DictOSX, French-English dictionary should be ready to use. :-)