SlideShare une entreprise Scribd logo
1  sur  116
Télécharger pour lire hors ligne
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
2001: A Space Odyssey
HAL 9000
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
natural language processing
dengan input yang minimal,
sistem komputer dapat
memahami maksudnya
secara maksimal



 kota
   gudeg        →
QmO dLaM iDopQhO. q tWo… qMo mANk cLiD
wAd cYanK m qHo. tPhE qMo pLu tHwO„ mY
LuPi”… aLwaYs 4’U. cO’nA cMa qMo YaNk Co
WaD qHo cYuM. k’tHwA,, n cNeNk tHanKz
b’4„ yOz aLaWAiCe d bEzT,, iN meYe heArD.
tHo_tHo..LupHz yOu„ bU_bU.... I’m
ReGrEeEeeEEeeEet nOw... naFaZ..bNcHi qOh
nGmBAnK... hOeKkkKKk
kendala NLP dalam pengembangan Begobet
                         1. penterjemahan
                    2. pencarian informasi
                            3. pemahaman
                   4. pencarian hubungan
kendala NLP dalam pengembangan Begobet
                         1. penerjemahan
                    2. pencarian informasi
                           3. pemahaman
                   4. pencarian hubungan
kitchen   your kitchen
          is maid’s kitchen

dapur     dapurmu ki
          dapuran babu

wajah
dab
dab, me·nge·dab v Sen 1 mengganti suara asli
pemain film dng suara orang lain, biasanya dl
bahasa lain, dng memperhatikan dan
menyesuaikan gerak bibir; menyulih suara: dia ~
film Itali dl bahasa Inggris; 2 mengisi suara orang
lain (dl film): ia biasa ~ suara dl film silat;

pe·nge·dab·an n proses, cara, perbuatan
mengedab
saya suka bermain sepak bola       id
         i like to play football   en
     me gusta jugar al fútbol      es
     나는 축구를 좋아                     ko
            Ég elska fótbolta      is
   saya mencintai sepak bola       id
kendala NLP dalam pengembangan Begobet
                         1. penerjemahan
                    2. pencarian informasi
                           3. pemahaman
                   4. pencarian hubungan
AI & NLP pada @begobet
Unstructured Documents
                        (Text, HTML, XML)


                 NATURAL LANGUAGE PROCESSING


Named Entities        Facts            Events       ____

    People                             Sporting
                     Position                       ____
  Companies                          Management
                      Alliance                      ____
Organisations                           Change
                 Person-Education                   ____
 Geographies                              IPO
                  Person-Political                  ____
   Authors                           Labor Action
                        etc.                        ____
     etc.                                 etc.
Akbar Tandjung Dukung "Reshuffle" Kabinet

JAKARTA, KOMPAS.com - Ketua Dewan Pertimbangan Partai Golkar Akbar Tandjung mendukung rencana
Presiden Susilo Bambang Yudhoyono untuk melakukan reshuffle atau perombakan susunan Kabinet
Indonesia Bersatu II. Akbar beralasan, saat ini usia pemerintahan Presiden baru memasuki tahun kedua
sehingga pergantian menteri yang dipandang tak berkinerja baik akan membuat pemerintahan berjalan lebih
efektif.

"Kompetensi orang harus menjadi pertimbangan utama," kata Akbar pada diskusi di kompleks Parlemen,
Jakarta, Rabu (21/9/2011). Dalam melakukan reshuffle, Presiden dapat menggunakan instrumen hasil
evaluasi yang dilakukan Unit Kerja Presiden untuk Pengawasan dan Pengendalian Pembangunan (UKP4).

Politisi senior ini juga mengatakan, Presiden dapat mempertimbangkan hasil survei lembaga survei,
termasuk survei Lingkaran Survei Indonesia (LSI) yang menyebutkan, kepuasan publik terhadap
pemerintahan Presiden Susilo Bambang Yudhoyono-Boediono kembali merosot. Saat ini hanya 37,7 persen
publik yang puas terhadap kinerja pemerintahan. Sebanyak 44,7 persen publik menyatakan tidak puas dan
17,7 persen tidak menjawab.


                 http://nasional.kompas.com/read/2011/09/21/17310722/Akbar.Tandjung.Dukung.Reshuffle.Kabinet
kendala NLP dalam pengembangan Begobet
                         1. penerjemahan
                    2. pencarian informasi
                           3. pemahaman
                   4. pencarian hubungan

ASU
Arizona State University
kendala NLP dalam pengembangan Begobet
                         1. penerjemahan
                    2. pencarian informasi
                           3. pemahaman
                   4. pencarian hubungan
Unit Kerja Presiden untuk Pengawasan dan Pengendalian Pembangunan (UKP4)



Ketua Dewan Pertimbangan
                                                    Susilo Bambang Yudhoyono

     Partai Golkar                                                                  Kabinet Indonesia Bersatu II

                Akbar Tanjung
                                                           Boediono                     Parlemen



                 Lingkaran Survei Indonesia (LSI)
Susilo Bambang Yudhoyono adalah manusia
                         Susilo Bambang Yudhoyono adalah Presiden
Susilo Bambang Yudhoyono adalah Presiden negara Republik Indonesia
                         Susilo Bambang Yudhoyono adalah Politikus
                                  Partai Golkar adalah Partai Politik
                                    Akbar Tanjung adalah Politikus
                                         Jakarta adalah nama Kota
         Jakarta adalah sebuah Kota dari negara Republik Indonesia
implementasi NLP
     spesifik
 bahasa Indonesia
“Kualitas penerapan tata bahasa yang benar
   dan tepat masih sangat rendah, hal ini
  terbukti seperti yang dipraktikkan oleh
 bangsa Indonesia di media massa maupun
          pada kehidupan nyata.”
              http://id.wikipedia.org/wiki/Tata_bahasa
AI & NLP pada @begobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
$ python botgan.py

> hi, apakabar?
bener gan ....skalian minum suegerrrrrrrrrr

> minum apa?
waah berarti pas tahun 2010 agan ini udh mencapai prestasi yg
bagus yah

> iya, dong. sekarang tahun 2011, harus lebih bagus lagi.
yg sekarang aja deh ini solusinya inside picture there are
pictures

> solusi sebelumnya apa?
wah mbah kaskus..

> kenapa?
ada bekingan si cail bakery gan

> kok bisa?
kasian ya gan.. :mewek semoga arwahnya tenang di alam sana
def ask_kaskus(question):
    try:
        comments = []
        for comment in get_comments(kaskus_search(
                                        make_keywords(question))):
            comment = clean_tags(comment.renderContents())
            if len(comment) < 120 and comment.strip() != '':
                comments.append(comment)
        return swap(random.choice(comments), DEFAULT_SWAPWORDS).strip()
    except:
        return random.choice(DEFAULT_EXCUSES)
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
random
               random
               random
               random
botgan terlalu random
               random
               random
               random
RE_MATCH_BLOCKS = re.compile(u'#MATCHs+(.*?)#END', re.DOTALL)
RE_COMMA_DELIM = re.compile(u's*,s*')

def   GetResponse(lang, kbfile, text):
      filename = os.path.join(KB_DIRECTORY, lang, kbfile)
      with codecs.open(filename, 'r', encoding='utf-8') as kb_input:
          kb_content = kb_input.read()
      kb = []
      for block in RE_MATCH_BLOCKS.findall(kb_content):
          responses = block.splitlines()
          match_string = responses.pop(0)
          if len(responses) == 0:
              continue
          matches = []
          for match in RE_COMMA_DELIM.split(match_string):
              pattern = re.compile(r'b%sb' % re.escape(match), re.I)
              matches.append(pattern)
          kb.append((matches, responses))
      for (matches, responses) in kb:
          for match in matches:
              if match.search(text):
                  return random.choice(responses).strip()
#MATCH MIE_GORENG, MIE_REBUS, MIE_TELOR
        ENAK, GAK?
        PESENIN AKU SATU, DONG.
        EH, AKU MAU DONG.. PESENIN AKU SATU LAGI, YA. *NAMBAH*
#END

#MATCH BUBUR_AYAM, BURYAM
        SEMPAT NGERASAIN BUBUR AYAM MANG TATANG DI BANDUNG. ENAK LHO.
        KANGEN MAKAN BUBUR AYAM MANG OYO TEA.. *TIBA-TIBA LAPAR*
        DI CIHAMPELAS ADA JUGA TUH TEMPAT MAKAN BUBUR AYAM ENAK.
#END
Levenshtein distance
galau → kalau
makan → makin
 tema → teman
def   levenshtein(a, b):
      "Calculates the Levenshtein distance between a and b."
      n, m = len(a), len(b)
      if n > m:
          # Make sure n <= m, to use O(min(n, m)) space
          a, b = b, a
          n, m = m, n
         
      current = range(n + 1)
      for i in range(1, m + 1):
          previous, current = current, [i]+[0]*n
          for j in range(1, n+1):
              add, delete = previous[j]+1, current[j-1]+1
              change = previous[j-1]
              if a[j-1] != b[i-1]:
                  change = change + 1
              current[j] = min(add, delete, change)
             
      return current[n]
try:
    import re2 as re
except ImportError:
    import re
#         re       re2       % re       regex      % regex
  Test            Description
                                       total runs time(s)   time(s)    time      time(s)       time

          Find list of '([a-zA-Z][a-
 Findall zA-Z0-9]*)://([^ /]+)(/
                                          2       19.961    0.336     1.68%      11.463       2.93%
URI|Email [^ ]*)?|([^ @]+)@([^
                    @]+)'


            This test replaces links
 Replace    of the form [[Obama|
                                         100      16.032    2.622     16.35%     2.895       90.54%
WikiLinks    Barack_Obama]] to
                    Obama.


 Remove This test splits the data
                                         100      15.983    1.406     8.80%      2.252       62.43%
WikiLinks by the <page> tag.

                                                                          https://github.com/axiak/pyre2/
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
AI & NLP pada @begobet
natural language generation

marko
     v chain
I(w|s) = -log2P(w|s)
1     2    3      4     5      6     7


saya       mau         makan         rujak


saya       mau         makan        siomay


saya       makan       siomay       bandung


saya       pergi       makan         siang
saya mau makan rujak
 saya mau makan siomay
      saya makan siomay bandung
saya pergi makan siang
mau

               rujak

saya   makan   siomay   bandung




       pergi   siang
bapaknya adalah pekerja keras
  mereka adalah contoh bagi kita semua


              ✔
      mereka adalah pekerja keras
 bapaknya adalah contoh bagi kita semua
teknisi komputer itu bernama joko
kejahatan komputer sudah semakin parah


             ✖
 teknisi komputer sudah semakin parah
  kejahatan komputer itu bernama joko
mengerti konteks
saya ingin makan siang di kantin.
saya/PRP ingin/MD makan/VBT siang/NNC
                    di/IN kantin/NNC ./.


      http://www.panl10n.net/english/outputs/Indonesia/UI/0901/UI-POSTAG.pdf
saya ingin makan siang di kantin.
tahu
1 ta·hu v 1 mengerti sesudah melihat (menyaksikan, mengalami,
dsb): ia ~ bahwa saya yg menolongnya; perkara mesin, dia lebih ~
dp saya; 2 kenal (akan); mengenal: ia tidak ~ akan sanak
saudaranya lagi; 3 mengindahkan; memedulikan: ia sudah tidak
mau ~ lagi kpd anaknya; 4 mengerti; berpengertian: siapa yg ~
apa maksud tanda ini?; 5 pandai; cakap: sedikit-sedikit saya ~
juga tt mesin; 6 insaf; sadar: dia tidak ~ akan kekurangannya; 7
tak pernah: petinju itu tidak ~ menang; adikku tidak ~ membolos;

2 ta·hu n makanan dr kedelai putih yg digiling halus-halus,
direbus, dan dicetak;
saya/PRP tahu/VBI tentang mesin

mereka sedang makan/VBT tahu/NN
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
botgan → klobot→ begobet → ???? → jagobet
natural language generation
          {rewrite}
set & template
set
subyek [saya, kamu, dia, mereka, ...]
pakaian [baju, kemeja, kaos, t-shirt, ...]
warna [merah, kuning, hijau, biru, ...]
template
____ sedang memakai ____ berwarna ____
nampaknya ____ terlihat ____
____ membahas ____ yang ____
____ sedang memakai ____ berwarna ____
saya                baju          putih
ia                  kemeja        merah
kamu                kaos          hijau
common sense knowledge
restoran                               LokasiU
                       Dig                             n     tuk
                           una
                               ka
                                 nU
                                   ntu               Melakuk
                                                             an                              masak
                                      k        Mampu

 orang                              membuat_kenyang




                                                                                     DigunakanUntuk
        Me
          ng
             ing




                                                                                                                                      bertahan_hidup
                 in
                  ka




                                                                                                                 Persyar
                      n




        hidangan_penutup
                                                               Digun




                                                                                                                         atan
             ilik
                  i                                                akanU               oven
           m                                                                                                                                               telan




                                                                                                                                    n
         Me




                                                                                                                                       a
                                                                        ntuk




                                                                                                                                  Tuju
                                                                                                                                                       t
                                                                                                                                                   iSaa
                       h




                                                                               BeradaDalam
                                                    Ad
                 Adala




                                                                                                                                                 d
                                                      ala
                                                         h                                                                                 Terja
manis
                                    Memili
                                          ki
                                                                                                                                makan
                                                Adalah                                                          anU ntuk
    cheesecake                                                                 kue                    Digun
                                                                                                            ak
automated question generation
para mahasiswa sedang memperhatikan
 dosen yang sedang mengajar di kelas
para mahasiswa sedang memperhatikan
   dosen yang sedang mengajar di kelas
    siapa yang sedang memperhatikan?
              siapa yang diperhatikan?
     apa yang para mahasiswa lakukan?
               apa yang dosen lakukan?
              di mana dosen mengajar?
strategi pengembangan
pendekatan statistik
   lebih diutamakan daripada
pendekatan algoritmik
kaidah berbahasa yang digunakan adalah
     kaidah percakapan sehari-hari
“Kualitas penerapan tata bahasa yang benar
    dan tepat masih sangat rendah, hal ini
   terbukti seperti yang dipraktikkan oleh
  bangsa Indonesia di media massa maupun
           pada kehidupan nyata.”
repost
         , gan!
                  http://id.wikipedia.org/wiki/Tata_bahasa
@prita_naya: Jodohku ada dimana yah? Sedang apa? Kok sampai
             sekarang belum muncul?
  @begobet: kalau nanya jodoh, sama ki joko bodo aja sana!
@prita_naya: Kalo jodohku selingkuh piye?
  @begobet: hubungan kita ini termasuk selingkuh gak sih?
@prita_naya: Lha kamu cowo apa cewe? Selingkuh atau tidak itu relatif,
             tergantung siapa yang nanya.
  @begobet: aku tidak pernah selingkuh. pacar aja 3. rukun satu sama
            lain. cem-ceman sih gak diitung, ya!
@begobet: tampaknya bot @simsimi_id sudah mulai aktif di twitter, tapi apakah bisa segalau aku? tapi kok seperti ada operatornya, ya?
            *tendang2*
@simsimi_id: Siapa kamu?
  @begobet: kaya yang baru kenal aja.
@simsimi_id: kl baru kenal, bisa lsg jadian ya?
  @begobet: baiklah. walaupun sejujurnya aku gak tau harus bilang apa ama kamu!
@simsimi_id: Kamu membikinku pusing, kamu harus ajarin aku
  @begobet: dire. aku mau minta ajarin yang mana dulu nih?
@simsimi_id: cek tuh daftar kunjungan. kl blm ada ya bikin daftar dulu..
  @begobet: bagaimana aku gak tahu, lha wong nick name & pro-pic kamu mudah dikenali, put. -___ _-a
@simsimi_id: Jangan marah ya, tapi aku gak tau jawabannya, kamu mau ajarin aku
  @begobet: buahaha, iyo noooh, belajar tirakat :d
@simsimi_id: Aku tidak tau maksudmu, tolong ajarin aku
  @begobet: iya nih :( td aku mau buka fb aja lemot banget :'(
@simsimi_id: Apa itu? Aku tidak mengerti ? Maukah kamu ajarin aku?
  @begobet: yah kalo grammar sih macem tiara. struktur kata, jadi buanyaakkk. kamu mau aku ajarin yang mana dulu nih?
@simsimi_id: Aaah satu lagi aku tidak tau artinya, ajarin aku dong
  @begobet: ne. nee t^t aaah aku bingung mau ngomong apa
http://begobet.ardwort.com/
faq: frequently annoying questions
mengapa menggunakan python?
gcd(a,0) = a                                         a
gcd(a,b) = gcd(b,a — b — ).
http://en.wikipedia.org/wiki/Greatest_common_divisor
                                                     b

def gcd(a, b):


                                        rapid
    while b != 0:
    t=b
    b=a%b
    a=t


                                  prototyping
    return a
java
class HelloWorldApp {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}


             simplicity
print "Hello, World!"

                                     python
darimana asalnya Rp 1.618.033.988,00?
φ • 109
http://en.wikipedia.org/wiki/Golden_ratio
1+ √5 9
—— • 10
 2
mengapa tidak menggunakan NLTK?
bagaimana proses trainingnya?
cuma segini aja?
apakah ada chatbot framework
         yang siap pakai?

AIML, MegaHAL, CHAT-L, ...
@geovedi


http://slideshare.net/geovedi
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet
AI & NLP pada @begobet

Contenu connexe

En vedette

Satellite Telephony Security
Satellite Telephony SecuritySatellite Telephony Security
Satellite Telephony SecurityJim Geovedi
 
Leonardo Nve Egea - Playing in a Satellite Environment 1.2
Leonardo Nve Egea - Playing in a Satellite Environment 1.2Leonardo Nve Egea - Playing in a Satellite Environment 1.2
Leonardo Nve Egea - Playing in a Satellite Environment 1.2Jim Geovedi
 
Cheating the 10,000 hour rule
Cheating the 10,000 hour ruleCheating the 10,000 hour rule
Cheating the 10,000 hour ruleJim Geovedi
 
Waluku: Answering Astronomy Questions through Social Media
Waluku: Answering Astronomy Questions through Social MediaWaluku: Answering Astronomy Questions through Social Media
Waluku: Answering Astronomy Questions through Social MediaJim Geovedi
 
Hacking a Bird in the Sky: The Revenge of Angry Birds
Hacking a Bird in the Sky: The Revenge of Angry BirdsHacking a Bird in the Sky: The Revenge of Angry Birds
Hacking a Bird in the Sky: The Revenge of Angry BirdsJim Geovedi
 
The 21st Century Bank Job
The 21st Century Bank JobThe 21st Century Bank Job
The 21st Century Bank JobJim Geovedi
 
Is Cyber-offence the New Cyber-defence?
Is Cyber-offence the New Cyber-defence?Is Cyber-offence the New Cyber-defence?
Is Cyber-offence the New Cyber-defence?Jim Geovedi
 
Professional Hackers
Professional HackersProfessional Hackers
Professional HackersJim Geovedi
 
Satellite Hacking — Intro by Indianz (2012)
Satellite Hacking — Intro by Indianz (2012)Satellite Hacking — Intro by Indianz (2012)
Satellite Hacking — Intro by Indianz (2012)Jim Geovedi
 
Hacking a Bird in the Sky: Exploiting Satellite Trust Relationship
Hacking a Bird in the Sky: Exploiting Satellite Trust RelationshipHacking a Bird in the Sky: Exploiting Satellite Trust Relationship
Hacking a Bird in the Sky: Exploiting Satellite Trust RelationshipJim Geovedi
 
IDS & Log Management
IDS & Log ManagementIDS & Log Management
IDS & Log ManagementJim Geovedi
 
Cloud Security - Security Aspects of Cloud Computing
Cloud Security - Security Aspects of Cloud ComputingCloud Security - Security Aspects of Cloud Computing
Cloud Security - Security Aspects of Cloud ComputingJim Geovedi
 
HITB Labs: Practical Attacks Against 3G/4G Telecommunication Networks
HITB Labs: Practical Attacks Against 3G/4G Telecommunication NetworksHITB Labs: Practical Attacks Against 3G/4G Telecommunication Networks
HITB Labs: Practical Attacks Against 3G/4G Telecommunication NetworksJim Geovedi
 

En vedette (14)

Satellite Telephony Security
Satellite Telephony SecuritySatellite Telephony Security
Satellite Telephony Security
 
Leonardo Nve Egea - Playing in a Satellite Environment 1.2
Leonardo Nve Egea - Playing in a Satellite Environment 1.2Leonardo Nve Egea - Playing in a Satellite Environment 1.2
Leonardo Nve Egea - Playing in a Satellite Environment 1.2
 
Cheating the 10,000 hour rule
Cheating the 10,000 hour ruleCheating the 10,000 hour rule
Cheating the 10,000 hour rule
 
Waluku: Answering Astronomy Questions through Social Media
Waluku: Answering Astronomy Questions through Social MediaWaluku: Answering Astronomy Questions through Social Media
Waluku: Answering Astronomy Questions through Social Media
 
Hacking Trust
Hacking TrustHacking Trust
Hacking Trust
 
Hacking a Bird in the Sky: The Revenge of Angry Birds
Hacking a Bird in the Sky: The Revenge of Angry BirdsHacking a Bird in the Sky: The Revenge of Angry Birds
Hacking a Bird in the Sky: The Revenge of Angry Birds
 
The 21st Century Bank Job
The 21st Century Bank JobThe 21st Century Bank Job
The 21st Century Bank Job
 
Is Cyber-offence the New Cyber-defence?
Is Cyber-offence the New Cyber-defence?Is Cyber-offence the New Cyber-defence?
Is Cyber-offence the New Cyber-defence?
 
Professional Hackers
Professional HackersProfessional Hackers
Professional Hackers
 
Satellite Hacking — Intro by Indianz (2012)
Satellite Hacking — Intro by Indianz (2012)Satellite Hacking — Intro by Indianz (2012)
Satellite Hacking — Intro by Indianz (2012)
 
Hacking a Bird in the Sky: Exploiting Satellite Trust Relationship
Hacking a Bird in the Sky: Exploiting Satellite Trust RelationshipHacking a Bird in the Sky: Exploiting Satellite Trust Relationship
Hacking a Bird in the Sky: Exploiting Satellite Trust Relationship
 
IDS & Log Management
IDS & Log ManagementIDS & Log Management
IDS & Log Management
 
Cloud Security - Security Aspects of Cloud Computing
Cloud Security - Security Aspects of Cloud ComputingCloud Security - Security Aspects of Cloud Computing
Cloud Security - Security Aspects of Cloud Computing
 
HITB Labs: Practical Attacks Against 3G/4G Telecommunication Networks
HITB Labs: Practical Attacks Against 3G/4G Telecommunication NetworksHITB Labs: Practical Attacks Against 3G/4G Telecommunication Networks
HITB Labs: Practical Attacks Against 3G/4G Telecommunication Networks
 

AI & NLP pada @begobet

  • 1. AI & NLP pada @begobet AI & NLP pada @begobet AI & NLP pada @begobet AI & NLP pada @begobet AI & NLP pada @begobet
  • 9. dengan input yang minimal, sistem komputer dapat memahami maksudnya secara maksimal kota gudeg →
  • 10. QmO dLaM iDopQhO. q tWo… qMo mANk cLiD wAd cYanK m qHo. tPhE qMo pLu tHwO„ mY LuPi”… aLwaYs 4’U. cO’nA cMa qMo YaNk Co WaD qHo cYuM. k’tHwA,, n cNeNk tHanKz b’4„ yOz aLaWAiCe d bEzT,, iN meYe heArD. tHo_tHo..LupHz yOu„ bU_bU.... I’m ReGrEeEeeEEeeEet nOw... naFaZ..bNcHi qOh nGmBAnK... hOeKkkKKk
  • 11. kendala NLP dalam pengembangan Begobet 1. penterjemahan 2. pencarian informasi 3. pemahaman 4. pencarian hubungan
  • 12. kendala NLP dalam pengembangan Begobet 1. penerjemahan 2. pencarian informasi 3. pemahaman 4. pencarian hubungan
  • 13. kitchen your kitchen is maid’s kitchen dapur dapurmu ki dapuran babu wajah
  • 14. dab
  • 15. dab, me·nge·dab v Sen 1 mengganti suara asli pemain film dng suara orang lain, biasanya dl bahasa lain, dng memperhatikan dan menyesuaikan gerak bibir; menyulih suara: dia ~ film Itali dl bahasa Inggris; 2 mengisi suara orang lain (dl film): ia biasa ~ suara dl film silat; pe·nge·dab·an n proses, cara, perbuatan mengedab
  • 16. saya suka bermain sepak bola id i like to play football en me gusta jugar al fútbol es 나는 축구를 좋아 ko Ég elska fótbolta is saya mencintai sepak bola id
  • 17. kendala NLP dalam pengembangan Begobet 1. penerjemahan 2. pencarian informasi 3. pemahaman 4. pencarian hubungan
  • 19. Unstructured Documents (Text, HTML, XML) NATURAL LANGUAGE PROCESSING Named Entities Facts Events ____ People Sporting Position ____ Companies Management Alliance ____ Organisations Change Person-Education ____ Geographies IPO Person-Political ____ Authors Labor Action etc. ____ etc. etc.
  • 20. Akbar Tandjung Dukung "Reshuffle" Kabinet JAKARTA, KOMPAS.com - Ketua Dewan Pertimbangan Partai Golkar Akbar Tandjung mendukung rencana Presiden Susilo Bambang Yudhoyono untuk melakukan reshuffle atau perombakan susunan Kabinet Indonesia Bersatu II. Akbar beralasan, saat ini usia pemerintahan Presiden baru memasuki tahun kedua sehingga pergantian menteri yang dipandang tak berkinerja baik akan membuat pemerintahan berjalan lebih efektif. "Kompetensi orang harus menjadi pertimbangan utama," kata Akbar pada diskusi di kompleks Parlemen, Jakarta, Rabu (21/9/2011). Dalam melakukan reshuffle, Presiden dapat menggunakan instrumen hasil evaluasi yang dilakukan Unit Kerja Presiden untuk Pengawasan dan Pengendalian Pembangunan (UKP4). Politisi senior ini juga mengatakan, Presiden dapat mempertimbangkan hasil survei lembaga survei, termasuk survei Lingkaran Survei Indonesia (LSI) yang menyebutkan, kepuasan publik terhadap pemerintahan Presiden Susilo Bambang Yudhoyono-Boediono kembali merosot. Saat ini hanya 37,7 persen publik yang puas terhadap kinerja pemerintahan. Sebanyak 44,7 persen publik menyatakan tidak puas dan 17,7 persen tidak menjawab. http://nasional.kompas.com/read/2011/09/21/17310722/Akbar.Tandjung.Dukung.Reshuffle.Kabinet
  • 21. kendala NLP dalam pengembangan Begobet 1. penerjemahan 2. pencarian informasi 3. pemahaman 4. pencarian hubungan
  • 22.
  • 24. kendala NLP dalam pengembangan Begobet 1. penerjemahan 2. pencarian informasi 3. pemahaman 4. pencarian hubungan
  • 25. Unit Kerja Presiden untuk Pengawasan dan Pengendalian Pembangunan (UKP4) Ketua Dewan Pertimbangan Susilo Bambang Yudhoyono Partai Golkar Kabinet Indonesia Bersatu II Akbar Tanjung Boediono Parlemen Lingkaran Survei Indonesia (LSI)
  • 26. Susilo Bambang Yudhoyono adalah manusia Susilo Bambang Yudhoyono adalah Presiden Susilo Bambang Yudhoyono adalah Presiden negara Republik Indonesia Susilo Bambang Yudhoyono adalah Politikus Partai Golkar adalah Partai Politik Akbar Tanjung adalah Politikus Jakarta adalah nama Kota Jakarta adalah sebuah Kota dari negara Republik Indonesia
  • 27. implementasi NLP spesifik bahasa Indonesia
  • 28. “Kualitas penerapan tata bahasa yang benar dan tepat masih sangat rendah, hal ini terbukti seperti yang dipraktikkan oleh bangsa Indonesia di media massa maupun pada kehidupan nyata.” http://id.wikipedia.org/wiki/Tata_bahasa
  • 30. botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet
  • 31. $ python botgan.py > hi, apakabar? bener gan ....skalian minum suegerrrrrrrrrr > minum apa? waah berarti pas tahun 2010 agan ini udh mencapai prestasi yg bagus yah > iya, dong. sekarang tahun 2011, harus lebih bagus lagi. yg sekarang aja deh ini solusinya inside picture there are pictures > solusi sebelumnya apa? wah mbah kaskus.. > kenapa? ada bekingan si cail bakery gan > kok bisa? kasian ya gan.. :mewek semoga arwahnya tenang di alam sana
  • 32. def ask_kaskus(question):     try:         comments = []         for comment in get_comments(kaskus_search( make_keywords(question))):             comment = clean_tags(comment.renderContents())             if len(comment) < 120 and comment.strip() != '':                 comments.append(comment)         return swap(random.choice(comments), DEFAULT_SWAPWORDS).strip()     except:         return random.choice(DEFAULT_EXCUSES)
  • 37. botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet
  • 38. random random random random botgan terlalu random random random random
  • 39. RE_MATCH_BLOCKS = re.compile(u'#MATCHs+(.*?)#END', re.DOTALL) RE_COMMA_DELIM = re.compile(u's*,s*') def GetResponse(lang, kbfile, text):     filename = os.path.join(KB_DIRECTORY, lang, kbfile)     with codecs.open(filename, 'r', encoding='utf-8') as kb_input:         kb_content = kb_input.read()     kb = []     for block in RE_MATCH_BLOCKS.findall(kb_content):         responses = block.splitlines()         match_string = responses.pop(0)         if len(responses) == 0:             continue         matches = []         for match in RE_COMMA_DELIM.split(match_string):             pattern = re.compile(r'b%sb' % re.escape(match), re.I)             matches.append(pattern)         kb.append((matches, responses))     for (matches, responses) in kb:         for match in matches:             if match.search(text):                 return random.choice(responses).strip()
  • 40. #MATCH MIE_GORENG, MIE_REBUS, MIE_TELOR ENAK, GAK? PESENIN AKU SATU, DONG. EH, AKU MAU DONG.. PESENIN AKU SATU LAGI, YA. *NAMBAH* #END #MATCH BUBUR_AYAM, BURYAM SEMPAT NGERASAIN BUBUR AYAM MANG TATANG DI BANDUNG. ENAK LHO. KANGEN MAKAN BUBUR AYAM MANG OYO TEA.. *TIBA-TIBA LAPAR* DI CIHAMPELAS ADA JUGA TUH TEMPAT MAKAN BUBUR AYAM ENAK. #END
  • 42. galau → kalau makan → makin tema → teman
  • 43. def levenshtein(a, b):     "Calculates the Levenshtein distance between a and b."     n, m = len(a), len(b)     if n > m:         # Make sure n <= m, to use O(min(n, m)) space         a, b = b, a         n, m = m, n             current = range(n + 1)     for i in range(1, m + 1):         previous, current = current, [i]+[0]*n         for j in range(1, n+1):             add, delete = previous[j]+1, current[j-1]+1             change = previous[j-1]             if a[j-1] != b[i-1]:                 change = change + 1             current[j] = min(add, delete, change)                 return current[n]
  • 44. try:     import re2 as re except ImportError:     import re
  • 45. # re re2 % re regex % regex Test Description total runs time(s) time(s) time time(s) time Find list of '([a-zA-Z][a- Findall zA-Z0-9]*)://([^ /]+)(/ 2 19.961 0.336 1.68% 11.463 2.93% URI|Email [^ ]*)?|([^ @]+)@([^ @]+)' This test replaces links Replace of the form [[Obama| 100 16.032 2.622 16.35% 2.895 90.54% WikiLinks Barack_Obama]] to Obama. Remove This test splits the data 100 15.983 1.406 8.80% 2.252 62.43% WikiLinks by the <page> tag. https://github.com/axiak/pyre2/
  • 46. botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet
  • 50. 1 2 3 4 5 6 7 saya mau makan rujak saya mau makan siomay saya makan siomay bandung saya pergi makan siang
  • 51. saya mau makan rujak saya mau makan siomay saya makan siomay bandung saya pergi makan siang
  • 52. mau rujak saya makan siomay bandung pergi siang
  • 53. bapaknya adalah pekerja keras mereka adalah contoh bagi kita semua ✔ mereka adalah pekerja keras bapaknya adalah contoh bagi kita semua
  • 54. teknisi komputer itu bernama joko kejahatan komputer sudah semakin parah ✖ teknisi komputer sudah semakin parah kejahatan komputer itu bernama joko
  • 56. saya ingin makan siang di kantin.
  • 57. saya/PRP ingin/MD makan/VBT siang/NNC di/IN kantin/NNC ./. http://www.panl10n.net/english/outputs/Indonesia/UI/0901/UI-POSTAG.pdf
  • 58. saya ingin makan siang di kantin.
  • 59. tahu
  • 60. 1 ta·hu v 1 mengerti sesudah melihat (menyaksikan, mengalami, dsb): ia ~ bahwa saya yg menolongnya; perkara mesin, dia lebih ~ dp saya; 2 kenal (akan); mengenal: ia tidak ~ akan sanak saudaranya lagi; 3 mengindahkan; memedulikan: ia sudah tidak mau ~ lagi kpd anaknya; 4 mengerti; berpengertian: siapa yg ~ apa maksud tanda ini?; 5 pandai; cakap: sedikit-sedikit saya ~ juga tt mesin; 6 insaf; sadar: dia tidak ~ akan kekurangannya; 7 tak pernah: petinju itu tidak ~ menang; adikku tidak ~ membolos; 2 ta·hu n makanan dr kedelai putih yg digiling halus-halus, direbus, dan dicetak;
  • 61. saya/PRP tahu/VBI tentang mesin mereka sedang makan/VBT tahu/NN
  • 62. botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet botgan → klobot→ begobet → ???? → jagobet
  • 65. set subyek [saya, kamu, dia, mereka, ...] pakaian [baju, kemeja, kaos, t-shirt, ...] warna [merah, kuning, hijau, biru, ...]
  • 66. template ____ sedang memakai ____ berwarna ____ nampaknya ____ terlihat ____ ____ membahas ____ yang ____
  • 67. ____ sedang memakai ____ berwarna ____ saya baju putih ia kemeja merah kamu kaos hijau
  • 69. restoran LokasiU Dig n tuk una ka nU ntu Melakuk an masak k Mampu orang membuat_kenyang DigunakanUntuk Me ng ing bertahan_hidup in ka Persyar n hidangan_penutup Digun atan ilik i akanU oven m telan n Me a ntuk Tuju t iSaa h BeradaDalam Ad Adala d ala h Terja manis Memili ki makan Adalah anU ntuk cheesecake kue Digun ak
  • 71. para mahasiswa sedang memperhatikan dosen yang sedang mengajar di kelas
  • 72. para mahasiswa sedang memperhatikan dosen yang sedang mengajar di kelas siapa yang sedang memperhatikan? siapa yang diperhatikan? apa yang para mahasiswa lakukan? apa yang dosen lakukan? di mana dosen mengajar?
  • 74. pendekatan statistik lebih diutamakan daripada pendekatan algoritmik
  • 75. kaidah berbahasa yang digunakan adalah kaidah percakapan sehari-hari
  • 76. “Kualitas penerapan tata bahasa yang benar dan tepat masih sangat rendah, hal ini terbukti seperti yang dipraktikkan oleh bangsa Indonesia di media massa maupun pada kehidupan nyata.” repost , gan! http://id.wikipedia.org/wiki/Tata_bahasa
  • 77. @prita_naya: Jodohku ada dimana yah? Sedang apa? Kok sampai sekarang belum muncul? @begobet: kalau nanya jodoh, sama ki joko bodo aja sana! @prita_naya: Kalo jodohku selingkuh piye? @begobet: hubungan kita ini termasuk selingkuh gak sih? @prita_naya: Lha kamu cowo apa cewe? Selingkuh atau tidak itu relatif, tergantung siapa yang nanya. @begobet: aku tidak pernah selingkuh. pacar aja 3. rukun satu sama lain. cem-ceman sih gak diitung, ya!
  • 78. @begobet: tampaknya bot @simsimi_id sudah mulai aktif di twitter, tapi apakah bisa segalau aku? tapi kok seperti ada operatornya, ya? *tendang2* @simsimi_id: Siapa kamu? @begobet: kaya yang baru kenal aja. @simsimi_id: kl baru kenal, bisa lsg jadian ya? @begobet: baiklah. walaupun sejujurnya aku gak tau harus bilang apa ama kamu! @simsimi_id: Kamu membikinku pusing, kamu harus ajarin aku @begobet: dire. aku mau minta ajarin yang mana dulu nih? @simsimi_id: cek tuh daftar kunjungan. kl blm ada ya bikin daftar dulu.. @begobet: bagaimana aku gak tahu, lha wong nick name & pro-pic kamu mudah dikenali, put. -___ _-a @simsimi_id: Jangan marah ya, tapi aku gak tau jawabannya, kamu mau ajarin aku @begobet: buahaha, iyo noooh, belajar tirakat :d @simsimi_id: Aku tidak tau maksudmu, tolong ajarin aku @begobet: iya nih :( td aku mau buka fb aja lemot banget :'( @simsimi_id: Apa itu? Aku tidak mengerti ? Maukah kamu ajarin aku? @begobet: yah kalo grammar sih macem tiara. struktur kata, jadi buanyaakkk. kamu mau aku ajarin yang mana dulu nih? @simsimi_id: Aaah satu lagi aku tidak tau artinya, ajarin aku dong @begobet: ne. nee t^t aaah aku bingung mau ngomong apa
  • 82. gcd(a,0) = a a gcd(a,b) = gcd(b,a — b — ). http://en.wikipedia.org/wiki/Greatest_common_divisor b def gcd(a, b): rapid     while b != 0:     t=b     b=a%b     a=t prototyping     return a
  • 83. java class HelloWorldApp {     public static void main(String[] args) {         System.out.println("Hello, World!");     } } simplicity print "Hello, World!" python
  • 84. darimana asalnya Rp 1.618.033.988,00?
  • 86. 1+ √5 9 —— • 10 2
  • 90. apakah ada chatbot framework yang siap pakai? AIML, MegaHAL, CHAT-L, ...