JULIO ADISANTOSO - ILKOM IPB

Pr ose s Pe r ole h a n I n for m a si Se de r h a n a

KOM 3 4 1 Te m u Ke m ba li I n for m a si

  • Pem rosesan Teks • Pengant ar bahasa PERL

Pe n g e r t ia n TEKS

Kor p u s

  Sekurangnya 17 ribu ayam ras m ilik pet ernak di wilayah kabupat en Kot awaringin Tim ur ( Kot im ) , Kalim ant an Tengah m at i dan kuat dugaan akibat t erserang virus avian influenza ( AI ) at au yang lagi ram ai disebut penyakit flu burung. Kasubdin Produksi Pet ernakan Dinas Pert anian Kot im Drh. Mawardi di Sam pit , Selasa m engat akan sebanyak 17 ribu ekor ayam ras yang m at i diduga t erserang flu burung it u sej ak Desem ber 2003. Dari hasil diagnosa Balai Penyelidikan dan Penguj ian Vet eriner ( BPPV) regional V Banj ar Baru Kalim ant an Selat an yang dit erim a Disnak Kot im , Senin ( 26/ 1) m enyebut kan ayam yang m at i t erserang panyakit it u hanya ada dua kem ungkinan yait u t erserang virus AI dan VVND at au t et elo. " Nam un kasus kem at ian m asal ayas ras di Kot im kem ungkinan besar akibat akibat serangan virus avian influenza yang bila m enular kepada m anusia nam anya m enj adi flu burung," ucapnya. JULIO ADISANTOSO - ILKOM IPB

  V Banj ar Baru Kalim antan Selatan yang diterim a Disnak Kotim , Senin ( 26/ 1) m enyebutkan ayam yang m ati terserang panyakit itu hanya ada dua kem ungkinan yaitu terserang virus AI dan VVND atau tetelo. " Nam un kasus kem atian m asal ayas ras di Kotim kem ungkinan besar akibat akibat serangan virus avian influenza yang bila m enular kepada m anusia nam anya m enj adi flu burung," ucapnya.< / P> < / TEXT> < / DOC> JULIO ADISANTOSO - ILKOM IPB

  < DOC> < DOCNO> DOC01< / DOCNO> < TI TLE> Flu Burung Menyerang Kalim antan Tengah< / TI TLE> < AUTHOR> Ark, Ant< / AUTHOR> < DATE> 7 Februari 2003 < / DATE> < TEXT> < P> Sekurangnya 17 ribu ayam ras m ilik peternak di w ilayah kabupaten Kotaw aringin Tim ur ( Kotim ) , Kalim antan Tengah m ati dan kuat dugaan akibat terserang virus avian influenza ( AI ) atau yang lagi ram ai disebut penyakit flu burung. Kasubdin Produksi Peternakan Dinas Pertanian Kotim Drh. Maw ardi di Sam pit, Selasa m engatakan sebanyak 17 ribu ekor ayam ras yang m ati diduga terserang flu burung itu sej ak Desem ber 2003.< / p> < P> Dari hasil diagnosa Balai Penyelidikan dan Penguj ian Veteriner ( BPPV) regional

  Con t oh Kor p u s

   Tokenisasi pada korpus  Anotasi pada korpus JULIO ADISANTOSO - ILKOM IPB

  KULI AH # 2

   Media: teks, audio, video ( m ultim edia)  I su pada korpus:

   Ukuran  Jenis  Bahasa

   Korpus adalah teks alam i yang dipilih dengan cara t ert ent u.  Masalah pada perancangan korpus

  JULIO ADISANTOSO - ILKOM IPB

   Kum pulan artikel surat kabar yang diperoleh dari I nt ernet  Kum pulan skripsi m ahasiswa yang telah dikum pulkan secara digit al oleh perpust akaan

   Contoh:

   Teks ≈ Korpus ≈ Koleksi dokumen yang bisa dibaca oleh m esin

  JULIO ADISANTOSO - ILKOM IPB KORPU S

Con t oh Kor p u s Fr e e t e x t

XM L For m a t

M e la ca k Te k s

St a t ist ik Te k s

   Operasi dasar dalam string m atching  Contoh:  Dapatkan sem ua baris yang dim ulai dengan kata Flu.

   Jum lah Kata

   Seberapa besar korpus yang ada ( N)

   Jenis kata

   Berapa j um lah kata yang unik?  Berapa besar perbendaharaan kata pada korpus?

   Token kata

   Berapa j um lah kata pada korpus?  Berapa frekuensi dari setiap j enis kata?  Kata apa yang paling sering m uncul pada korpus? JULIO ADISANTOSO - ILKOM IPB

Pr ose d u r M e n g h it u n g Fr e k u e n si Ka t a

Fe n om e n a Fr e k u e n si Ka t a

   Tokenisasi : m endapatkan kata  Ubah m enj adi huruf kecil  Urutkan m enurut abj ad  Hitung frekuensi kem unculan kata  Urutkan m enurut frekuensinya  Hitung frekuensi dari frekuensi kem unculan kat a JULIO ADISANTOSO - ILKOM IPB

   Sej um lah kata m erupakan kata yang sangat um um ( frekuensi sangat besar) , m isalnya “ t he” , “ of”

   Kebanyakan kata sangat j arang m uncul ( frekuensi sangat kecil) .  Setengah dari kata- kata pada korpus hanya m uncul sekali. JULIO ADISANTOSO - ILKOM IPB

   Dapatkan sem ua baris yang dim ulai dengan kata Huruf Besar.  Dapatkan sem ua baris yang m em iliki kata terdiri dari huruf besar sem ua.  Hitung banyaknya kata Flu pada dokum en tersebut.  dsb. JULIO ADISANTOSO - ILKOM IPB

Con t oh

H u k u m Zip f

   Terdapat konstanta c sehingga f * r = c JULIO ADISANTOSO - ILKOM IPB

   hitung berapa kali kata m uncul pada sem ua teks di dalam korpus ( f) .  urutkan sesuai dengan frekuensi kem unculan kata m em bent uk rank ( r) .

   Menj elaskan adanya hubungan antara frekuensi dan urut an/ rank ( George Kingsley Zipf) .  Urutan/ Rank:

  9 900 8100 br ok e 4 2000 8000 seem s 2 3000 6000 could 2 4000 8000

  16 500 8000 gr oup 13 600 7800 science 11 700 7700 fam ily 10 800 8000 begin

  JULIO ADISANTOSO - ILKOM IPB Ka t a Fre k ue nsi Ka t a ( f ) Pe ringk a t ( r) f * r nam e 21 400 8400 com es

Luhn ’s I de a s k a t a - k a t a y a n g p a lin g u m u m d a n p a lin g t id a k St op w or d s u m u m a d a la h t id a k sig n ifik a n u n t u k in d e x in g

   STOPWORDS:

   Terdapat kata yang m erupakan bagian terbesar dari t eks yang t idak perlu digunakan sebagai penciri dokum en.  Terdapat banyak ragam kata yang hanya m uncul sedikit sekali di dalam suat u t eks.  Contoh: to, in, form , yang, dan

   Kata- kata dengan frekuensi cukup ( di bagian t engah) adalah yang paling baik digunakan JULIO ADISANTOSO - ILKOM IPB JULIO ADISANTOSO - ILKOM IPB sebagai penciri dokum en.

  Tok e n isa si

Ka t a

   Pengertian : suatu tahap pem rosesan di m ana  Karakter alfanumerik yang saling terhubung t eks input dibagi m enj adi unit - unit kecil yang yang dipisahkan oleh whit espace. disebut t oken, yang dapat berupa suat u kat a,

   Whitespace: spasi, tab, newline suat u angka, at au suat u t anda baca.  Masalah:

   Konsekuensinya:

   B2B, am azon.com , Micro$oft  Perlu m engenali unit secara otom atis  isn’t, Jum ’at  Apakah suatu kata itu?  pro- aktif, out- of- date  Kalim at?  tanda sam bung pada akhir baris  Paragraf?

JULIO ADISANTOSO - ILKOM IPB JULIO ADISANTOSO - ILKOM IPB

Se g m e n t a si k a t a Ka lim a t

   Proses tokenisasi sederhana, tetapi tidak  Satu atau lebih string kata yang diakhiri t erlepas dari kesalahan. dengan suat u t anda berhent i sepenuhnya, t anda t anya at au t anda seru.  Contoh:

   Kata m aj em uk: Jurusan Surabaya- Jakarta  Contoh:  Frase: tusuk j arum , keras kepala, sistem inform asi  Akhir dari baris.  Nom or telpon ( 0251) 8356653 + 62 251 8625584  Akhir dari suatu cerita!  Apakah kam u sudah punya pacar?

   I a sering m engunj ungi friendster.com .

   Menj adi topik dari ekstraksi inform asi  Dr. I wan pergi ke Surabaya.

JULIO ADISANTOSO - ILKOM IPB JULIO ADISANTOSO - ILKOM IPB

 Dia m engatakan “ Bohong!” .

Pe m r ose sa n Te k s Ot om a t is

Ba t a s k a lim a t

   Hipot esakan bahwa bat as kalim at sesudah . ? !  Pindahkan bat as kalim at sesudah t anda pet ik, buk an set el ah t i t i k .

PERL h t t p:/ / w w w .a ct iv e st a t e .com / a ct ive pe r l/ dow nloa ds

PERL

  Tulis pada suat u file, m isalnya bernam a ‘t est .cgi‘ dan sim pan di folder cgi- bin. JULIO ADISANTOSO - ILKOM IPB

  $KELAS) JULIO ADISANTOSO - ILKOM IPB

   Nam a variabel skalar dim ulai dengan $ ( m is. $dok)  Nam a variabel array dim ulai dengan @ ( m is. @kata)  Nam a variabel hash dim ulai dengan % ( m is. % tabel)  Nam a variabel adalah case sensitive ( $kelas ≠

   Nam a variabel

   Skalar  Array  Associative array atau hash

   Tiga j enis data dalam PERL:

  #!"C:\apache\xampp\perl\bin\perl.exe" print "Content-type: text/html\n\n"; print '<html>'; print '<head>'; print '<meta name="author" content="Kay Vogelgesang">'; print '<link href="/xampp/xampp.css" rel="stylesheet" type="text/css">'; print '</head>'; print "<body> <p><h1>GCI with MiniPerl</h1>"; print "CGI with MiniPerl is ready ...</body></html>";

  #!/usr/local/bin/perl #Program untuk menulis kata 'hello' print "Hello\n";

   “ Jangan am bil buku itu. Buku itu m ilik pak Budi. ” , kata ibu kepada Ani.

  > perl halo.pl JULIO ADISANTOSO - ILKOM IPB

  > perl halo.pl  Untuk m e- run pada Windows:

   Tulis pada suatu file, m isalnya bernam a ‘halo.pl‘ ( Unix) , at au ‘halo.pl ‘ ( Windows) .  Untuk m e- run pada Unix/ Linux:

  1987  Mengem bangkan suatu bahasa script yang lebih baik daripada Unix shell t et api t idak serum it C.  Berguna untuk m em anipulasi teks yang tidak dapat dilakukan oleh inst ruksi baris unix JULIO ADISANTOSO - ILKOM IPB

   Practical Extraction and Report Language  Dikem bangkan oleh Larry Wall pada tahun

   Bagaim ana program kom puternya?  Bahasa pem rogram an apa yang digunakan? JULIO ADISANTOSO - ILKOM IPB

   Pertanyaannya:

   I nput : berkas teks ( bisa berupa korpus)  Output : daftar kata beserta frekuensinya

   Menghitung kata pada teks  Mengurutkan kata  Menghitung berbagai nilai statistik kata

   Jangan kenali sebagai bat as j ika ada ! at au ? yang di i k ut i ol eh huruf k eci l JULIO ADISANTOSO - ILKOM IPB

   Jangan gunakan t it ik j ika:  Sebelum nya adalah singkatan yg um um yg biasanya bukan akhir kalim at, tp biasanya diikuti oleh nam a dengan huruf besar: Prof.  Didahului oleh singkatan yang um um dan tidak diikuti oleh kata dengan huruf besar: Jr.

PERL Je n is d a t a

PERL d i w e b

PERL Sk a la r

PERL Op e r a t or

   Angka  digits, desim al, eksponensial dll.

   $nilai = 350;  $nilai = 3.50

PERL Ar r a y

PERL Ar r a y

  #@a1=("aa","bb","cc","dd","ee","ff") push @a2, "gg"; #@a2=("ee","ff","gg") JULIO ADISANTOSO - ILKOM IPB

  Push m enam bahkan list pada bagian akhir dari array @a1 = ("aa", "bb", "cc", "dd"); @a2 = ("ee", "ff"); push @a1, @a2;

  # $satu = 1, @b=(2 3 4 5 6) ($a, $b) = ($b, $a); #tukar nilainya JULIO ADISANTOSO - ILKOM IPB

  @array = ("aa", "bb", "cc", "dd"); $length = @array; #4 print $#array; #3 print $array[$#array]; #"dd" print scalar(@array) ; #4 ($a, $b) = ("satu", "dua"); ($satu, @b) = (1,2,3,4,5,6);

  @kata = ("yang", "dan", "untuk"); @x = (1, 2, 3); @y = @x; # assign nilai x ke y @y = (@x 4 5); # @y=(1 2 3 4 5) $z = @y; # $z bernilai 5 (panjang @y) ($z) = @y; # $z = 1 (elemen pertama @y) @prefix = $kata[0,1]; # ("yang", "dan") JULIO ADISANTOSO - ILKOM IPB

  (1, 2, 3) ("yang", "dan", "untuk") () JULIO ADISANTOSO - ILKOM IPB

   Suatu array adalah suatu variabel yang berisi list  Suatu array berisi nol atau lebih elem en. Tidak perlu dit ent ukan panj angnya sepert i pem rogram an lainnya.  Contoh:

   Repetition : x JULIO ADISANTOSO - ILKOM IPB

   String :  Concatenation : .

   Aritm atika : + , - , / , * , %  Assignm ent : = , + = , - = , + + , - -

   Bilangan

   print "\ Uhalo\ n";  HALO  print "ha\ Ulo\ n";  haLO JULIO ADISANTOSO - ILKOM IPB

   Diapit oleh tanda petik single / double;  Escape character dengan backslash  \ n (newline) ; \ t (t ab) ;  \ U (Uppercase) ; \ L (Lower case)

   Strings

PERL Ar r a y

PERL M e n g u b a h isi a r r a y

PERL M e n g u b a h isi a r r a y

PERL Associa t iv e Ar r a y s

  Pop Mem buang elem en t erakhir dari list @array = ("aa","bb","cc","dd"); $elemen = pop @array;

  # $elemen= "dd" # @array = ( "aa","bb","cc") JULIO ADISANTOSO - ILKOM IPB

PERL Con t r ol St r u ct u r e s

PERL Con t r ol St r u ct u r e s

  { print "$nilai{$i}\n"; } while (($kata, $freq) = each (%nilai)) { print "$kata : $freq\n"; } foreach $i (sort keys %nilai) { print "$nilai{$i}\n"; } JULIO ADISANTOSO - ILKOM IPB

  %nilai=(); $nilai{"dan"}=200; $nilai{"yang"}=150; foreach $i (keys %nilai)

  foreach $prefix(@kata) { print "$prefix\n"; } JULIO ADISANTOSO - ILKOM IPB

   FOREACH

  $prefix = $kata[$i]; print "$prefix\n"; }

  for ($i = 1; $i<=10; $i++) { print "$i\n"; } @kata=("dan", "yang", "untuk"); for ($i=0 ; $i<=$#kata; $i++) {

   FOR

  $i = 10; until ($i <= 5) { $x = $i*$i; print "Kuadrat dari $i adalah $x\n"; $i--; } JULIO ADISANTOSO - ILKOM IPB

   UNTI L

  $i = 10; while ($i > 5) { $x = $i*$i; print "Kuadrat dari $i adalah $x\n"; $i--; }

   WHI LE

  if ($nilai >= 80) { print "A\n"; } elsif ($nilai >= 60) { print "B\n"; } else { print "Tidak lulus\n"; } JULIO ADISANTOSO - ILKOM IPB

   ELSI F

  unless ($nilai > 60) { print "Tidak lulus\n"; }

   UNLESS

  if ($nilai > 60) { print "Lulus\n"; } else { print "Tidak lulus\n"; }

   I F

  #@freq=(200, 150) JULIO ADISANTOSO - ILKOM IPB

  @freq=values(%nilai);

  #@kata=("dan", "yang")

  %nilai=(); $nilai{"dan"}=200; $nilai{"yang"}=150; @kata=keys(%nilai);

   Array yang m em iliki indeks bukan berupa bilangan 0 sam pai dengan n- 1, m elainkan st ring.  Contoh:

PERL Con t r ol St r u ct u r e s

PERL Associa t iv e Ar r a y s

  PERL PERL Sor t in g

I n p u t / Ou t p u t

   Mem buka dan m enutup file

  @kata = ("dan", "itu", "yang", "pada");

  open(IN, "koleksi.txt");

  reverse(@nama);

  open(OUT, ">hasil.txt");

  @stopwords = sort(@kata);

  open(OUT ">>hasil txt");  append close(OUT);  Mem buka dan m enutup file

   Sesuai alfabet: sort {$a cmp $b} @list;

  open(IN, "koleksi.txt");

   Sesuai num erik: sort {$a <=> $b} @list;

  open(OUT, ">hasil.txt"); while ($line = <IN>) {

   Descending: sort {$b <=> $a} @list;

  chop($line); # buang carriage return

   Associative array

  print OUT "$line\n"; }

  sort {$tabel{$b} <=> $tabel{$a} }

  close(IN);

  (keys %tabel);

JULIO ADISANTOSO - ILKOM IPB JULIO ADISANTOSO - ILKOM IPB

close(OUT);

  PERL

PERL Re g u la r Ex p r e ssion Re g u la r Ex p r e ssion

   Ekspresi yang digunakan untuk \ b bat as kat a m enggam barkan pola dari suat u obyek.

  \ d digit = [ 0- 9]  Sering digunakan dalam pem rosesan teks. \ n newline

   Bahasa yang banyak m enggunakan RE adalah \ r carriage ret urn PERL.

  \ s karakt er whit e space  Pem rogram an m enj adi lebih singkat dan

  \ t t ab m udah. \ w karakt er alfanum erik = [ A- Za- z0- 9] ^ awal dari st ring JULIO ADISANTOSO - ILKOM IPB JULIO ADISANTOSO - ILKOM IPB $ akhir dari st ring

  PERL

PERL Re g u la r Ex p r e ssion Re g u la r Ex p r e ssion /(ab)*(de)+/

  . karakt er apapun abde [ bdkp] karakt er b, d, k dan p abbde [ a- f] karakt er a sam pai f bde [ ^ a- f] sem ua karakt er kecuali a sam pai f abadde abc| def st ring abc at au st ring def ababde

  • nol at au beberapa kali

  /a{5}b{1,4}c{2}/

  • sekali at au beberapa kali

  aaaaabcc ? nol at au sat u kali aaaaabcccc aaaaabc qw( ) ( "quot e word") funct ion aaaabcc

  qw( aa bb cc)  ( " aa" , " bb" , " cc" )

JULIO ADISANTOSO - ILKOM IPB JULIO ADISANTOSO - ILKOM IPB

  PERL

PERL Re g u la r Ex p r e ssion Pe n g ola h a n St r in g

   Pola string  //

  /c[ad]r/ $kata=~/tan/; car, cdr cadr, caddddr

  $kata=~/^tan/; $kata=~/tan$/; /c[ad]*r/

   Mengubah bagian string  s///

  car, cdr, caaaadr, caaadaaar $kalimat=~s/minyak/BBM/;

  $kalimat=~s/minyak/BBM/g; $kalimat=~s/minyak/BBM/gi;

  /[a-g][t-z][0-9]*/

   Mengubah karakter  tr///

  au125 JULIO ADISANTOSO - ILKOM IPB JULIO ADISANTOSO - ILKOM IPB $kata=~tr/[A-Z]/[a-z]/; PERL

PERL Fu n g si SPLI T Con t oh Pr og r a m  Untuk tokenisasi, m endapatkan kata dari suatu $kalimat="Harga minyak sekarang turun

  kalim at dengan pem isah ( delim it er) t ert ent u. Sebelumnya harga minyak naik. Sekarang harga minyak turun lagi";  split( / / / ) ;

  $kalimat =~ tr/[A-Z]/[a-z]/;  Contoh

  @kata = split(/\s+/, $kalimat); $kalimat= "Petani alami gagal panen"; foreach $token(@kata) { @kata=split(/\s+/, $kalimat); print "$token\n"; m aka array

  }

  @kata=("Petani", "alami", "gagal", "panen")

JULIO ADISANTOSO - ILKOM IPB JULIO ADISANTOSO - ILKOM IPB

PERL Con t oh Pr og r a m

  open (IN, "dokumen.txt") || die; while($line = <IN>) { chomp($line); #buang carriage return

  $line =~ s/^\s*//; #buang whitespace $line =~ s/\s*$//; reset @arraykata; @arraykata = split /\s+/, $line; #untuk setiap kata foreach $kata(@arraykata) {

  $kata =~ tr/[A-Z]/[a-z]/; $kata =~ s/[!.,()*]|\"//g; $freq{$kata}++; }

  } # Mencetak daftar kata, sort by frekuensi foreach $key (sort{$freq{$b}<=>$freq{$a}}keys %freq){ print "$key - $freq{$key}\n"; } close(IN); JULIO ADISANTOSO - ILKOM IPB

Dokumen yang terkait

Idioms Used In Real Steel Movie - Digital Library IAIN Palangka Raya

2 4 9

BAB IV HASIL PENELITIAN - Pengaruh Dosis Ragi Terhadap Kualitas Fisik Tempe Berbahan Dasar Biji Cempedak (Arthocarpus champeden) Melalui Uji Organoleptik - Digital Library IAIN Palangka Raya

0 2 20

BAB I PENDAHULUAN A. Latar Belakang - Uji Kualitas Mikrobiologi Minuman Olahan Berdasarkan Metode Nilai MPN Coliform di Lingkungan Sekolah Dasar (SD) dan Madrasah Ibtidaiyah (MI) Kelurahan Pahandut Palangka Raya - Digital Library IAIN Palangka Raya

1 2 12

The effect of personal vocabulary notes on vocabulary knowledge at the seventh grade students of SMP Muhammadiyah Palangka Raya - Digital Library IAIN Palangka Raya

0 0 20

BAB I PENDAHULUAN A. Latar Belakang - Pengaruh variasi berat glukosa pada filtrat tomat (solanum lycopersicum (L) Commune) dan lama fermentasi acetobacter xylinum terhadap tingkat ketebalannata de tomato - Digital Library IAIN Palangka Raya

0 2 9

BAB I PENDAHULUAN A. Latar Belakang Masalah - Penerapan metode eksperimen terhadap pokok bahasan bunyi untuk meningkatkan hasil belajar siswa mtsn 2 palangka raya kelas VIII semester II tahun ajaran 2013/2014 (studi eksperimen) - Digital Library IAIN Pala

0 0 10

BAB IV HASIL PENELITIAN - Penerapan model pembelajaran inquiry training untuk meningkatkan berpikir kritis dan hasil belajar siswa pada pokok bahasan gerak lurus - Digital Library IAIN Palangka Raya

0 1 23

CHAPTER I INTRODUCTION - The effectiveness of anagram on students’ vocabulary size at the eight grade of MTs islamiyah Palangka Raya - Digital Library IAIN Palangka Raya

0 0 10

BAB II KAJIAN TEORITIK A. Penelitian Sebelumnya - Perbedaan penerapan metode iqro’ di TKQ/TPQ Al-Hakam dan TKQ/TPQ Nurul Hikmah Palangka Raya - Digital Library IAIN Palangka Raya

0 0 26

1 BAB I PENDAHULUAN A. Latar Belakang - Penerapan model Problem Based Instruction (PBI) terhadap pemahaman konsep dan hasil belajar siswa pokok bahasan tekanan Kelas VIII Semester II di SMPN Palangka Raya Tahun Ajaran 2015/2016 - Digital Library IAIN Pala

0 3 80