Penambangan Teks di Python: Preprocessing dengan NLTK

Di dunia saat ini, menurut perkiraan industri, hanya sekitar 20 persen dari data yang dihasilkan dalam format terstruktur saat kita berkomunikasi, seperti melalui tweet yang kita tulis, saat kita mengirim pesan menggunakan WhatsApp, Email, Facebook, Instagram atau pesan teks apa pun. Dan sebagian besar data ini ada dalam bentuk teks yang merupakan format yang sangat tidak terstruktur. Untuk menghasilkan wawasan yang bermakna dari data teks maka kita perlu mengikuti metode yang disebut Analisis Teks.

Penambangan Teks adalah proses memperoleh informasi berkualitas tinggi dari teks. Tujuan keseluruhannya adalah mengubah teks menjadi data untuk dianalisis melalui aplikasi Pengolahan Bahasa Alami (Natural Language Processing, NLP). NLP menggunakan metodologi yang berbeda untuk menguraikan ambiguitas dalam bahasa manusia, termasuk di antaranya adalah peringkasan otomatis (summarization), penandaan bagian-dari-ungkapan (part of speech tagging), disambiguasi, chunking, serta pengenalan dan pemahaman bahasa alami.

Kita akan melihat sebagian besar proses Text Mining tersebut menggunakan Python dan library NLTK.

Struktur Data Probabilistik: Bloom Filter

Struktur data mainstream seperti List, Map, Set, Tree, dll. banyak digunakan untuk mencapai hasil tertentu berkaitan dengan ada atau tidaknya data, mungkin bersama dengan jumlah kemunculannya dan semacamnya. Struktur data probabilistik akan memberikan efisiensi memori, hasil yang lebih cepat, bentuk hasil lebih ke ‘mungkin’ daripada ‘pasti’. Tampaknya tidak intuitif untuk menggunakan struktur data probabilistik untuk saat ini, tetapi tutorial ini akan mencoba meyakinkan bahwa jenis struktur data ini memiliki tempat pemanfaatan khusus dan kita mungkin menemukannya berguna dalam skenario tertentu.

Dalam posting ini, kita akan mendiskusikan tentang salah satu struktur data probabilistik paling populer yang disebut Bloom filter. Silakan Akses Tutorial ini!

Tutorial Hadoop untuk Pemula

Jumlah data telah meningkat pesat dalam satu dekade terakhir. Ini termasuk volume besar dari berbagai format data yang dibangkitkan pada kecepatan sangat tinggi. Pada masa awal, bukanlah tugas yang berat untuk mengelola data, tetapi dengan meningkatnya data, telah menjadi lebih sulit untuk menyimpan, memroses, dan menganalisisnya. Data demikian dikenal sebagai Big Data. Bagaimana kita mengelola big data? Gunakan Hadoop, suatu framework yang dapat digunakan untuk menyimpan (store), memroses dan menganalisis big data.

Dalam tutorial ini kita akan mendiskusikan hal-hal berikut:

1. Mengapa Hadoop?
2. Apa itu Hadoop?
3. Hadoop HDFS
4. Hadoop MapReduce
5. Hadoop YARN
6. Kasus penggunaan Hadoop
7. Demo HDFS, MapReduce, dan YARN

Berminat? silakan download tutorial ilustratif ini, hanya 18 halaman koq 🙂

Teknik Estimasi dalam Pemrosesan Bahasa Alami

Kali ini kita akan mempelajari suatu topik penting di dalam bidang Pengolahan Bahasa Alami (Natural Language Processing), yaitu Pendekatan Prediksi Kata untuk memperkirakan kehadiran suatu kata. Beberapa contoh dan penjelasannya akan digunakan untuk memudahkan pemahaman terhadap topik ini. Tulisan ini tidak mengandung review penelitian dan keterbaruan pendekatan solutif, meski tetap mencoba untuk melihat beberapa contoh aplikasi terkini dari topik yang dibahas. Hal ini pula yang menjadi alasan digunakannya buku, catatan kuliah dan situs web tertentu sebagai referensi dalam menyelesaikan naskah ini.

Makalah ini akan menjelaskan beberapa pendekatan dasar dalam mengestimasi kata yang akan hadir, baik setelah suatu deretan kata lain atau di awal kalimat. Topik mengenai prediksi kata selanjutnya sangat berkaitan dengan pemodelan suatu bahasa, karena itu juga akan dijabarkan mengenai model bahasa tertentu, terutama n-grams. Teknik estimasi yang dipilih dapat memberikan hasil yang tidak sesuai dengan kecerdasan manusia, sehingga diperlukan beberapa pendekatan untuk memperbaiki kualitas mesin prediksi “next word” ini.

Bagaimana, tertarik melanjutkan? Silakan download dan baca uraiannya.

Mata Kuliah Sistem Terdistribusi, Apa sih Isinya?

Di Universitas Trunojoyo Madura (UTM), Mata kuliah “pengantar” Sistem Terdistribusi (SisTer) mempunyai kode TIK-604. Artinya disediakan untuk Kita Semester 6. Penekanannya adalah pada teknik atau konsep fundamental untuk mewujudkan suatu sistem terdistribusi yang berfungsi, bermanfaat, dan berkinerja tinggi. Matakuliah SisTer ini hanya mempunyai satu tujuan utama, yaitu Kita (Kita) memperoleh pemahaman mengenai prinsip dan paradigma yang mendasari Sistem Terdistribusi, seperti Komunikasi antar entitas dalam dan antar jaringan, konkurensi (kebersamaan), sinkronisasi (penyelerasan), replikasi dan caching (penggKitaan data dan aplikasi), konsistensi dan toleransi kegagalan. Jadi, Kita harus betul-betul memahami konsep atau cara kerja dari SisTer. Terdengar Abstrak? Tidak juga, beberapa contoh akan memudahkan kita mendiskusikan konsep-konsep klasik dan modern di bidang yang sedang sangat dibutuhkan ini.

Continue reading

Kecerdasan Bisnis dan Terapannya

Kecerdasan Bisnis merupakan bidang yang sangat menarik dewasa ini. Berangkat dari Data Mining dan Analitika Teks, Business Intelligence juga membahas data science, kercerdasan buatan, data semesta, dan komputasi awan. Darisisi text (data) mining, topik mengenai Analitika Desrkiptif dan prediktif sangat mendominasi. Selain itu juga ada kajian mengenai analisis jejaring sosial, pembelajaran mesin (dan deep learningnya) dan pemrosesan bahasa alami.

Karena itu, situs ini coba berbagi bahan kuliah atau materi kajian ilmiah yang up-to-date dan bagus sekali mengenai business iltelligence dan contoh aplikasinya pada bahasa pemrograman Python. Slide-slide yang dapat didownload di bawah ini, awalnya adalah karya Dr. Min-Yuh Day dari Universitas Tamkang(Taiwan). Jika anda tertarik memperoleh materi BI langsung dari Dr. Day, silakan kunjungi situs webnya di http://mail.tku.edu.tw/myday.

1. Pengantar Kecerdasan Bisnis dalam Praktek

2. Kecerdasan Bisnis, Analitika dan Data Science

3. ABC: AI, Big Data dan Cloud Computing

4. Analitika Deskriptif I: Sifat Data, Pemodelan dan Visualisasi Secara Statistika

5. Analitika Deskriptif II: Kecerdasan Bisnis dan Data Warehousing

6. Analitika Prediktif I: Proses, metode dan Algortima Penambangan Data

7. Analitika Prediktif II: Analitika Teks, Web dan Media Sosial

8. Analitika Preskriptif: Optimisasi dan Simulasi

9. Analisis Jejaring Sosial

10. Pembelajaran Mesin dan Deep Learning

11. Pemrosesan Bahasan Alami

12. Chatbot dan Percakapan Cerdas

13. Tren Masa Depan, Pertimbangan Privasi dan Manajerial dalam Analitika.

Semoga bermanfaat, terutama bagi para dosen dan mahasiswa yang tertarik memulai penelitian mengenai topik-topik yang disebutkan di atas.

Pemrograman Aplikasi Temu-Kembali Informasi

Kali ini, saya mencoba berbagi sedikit pengalaman menulis aplikasi sistem temu-kembali (STKI) alias Information Retrieval (IR). Aplikasi ini sangat sederhana, hanya melalukan indexing, retrieval dan caching dalam penanganan query dari pengguna. Sebagaimana aplikasi IR lainnya, titik berat dari sistem demikian adalah perhitungan kemiripan antara Query Q dengan daftar dokumen di dalam koleksi (Di, i = 1 … n). Agar mudah dipahami, kali ini saya ketengahkan kode program lengkap (namun sederhana) dalam bahasa pemrograman PHP, bahasa yang sudah umum digunakan oleh pengembang aplikasi web, termasuk para pemula.

Silakan klik link-link berikut untuk mendapatkan tutorial dan source codenya:

1. Tutorial pengembangan aplikasi Sistem Temu-Kembali Informasi.

2. Kumpulan semua file dan database yang diperlukan agar aplikasi ini berjalan sesuai dengan Tutorial di atas. Silakan download file stbicode-v1.pdf kemudian ubah ekstensinya menjadi .zip. Ekstrak file tersebut dan siap digunakan. File stbicode-v1.zip berisi:

a. Daftar fungsi (fungsi.php) yang digunakan di dalam Sistem Temu-Kembali Informasi
b. File halaman web utama (index.php) dari aplikasi
c. File PHP untuk membangun koneksi ke server database MySQL (koneksi.php)
d. File backup database (SQL) yang berisi struktur dan isi database yang diperlukan oleh aplikasi STKI ini.

Semoga tulisan ini bermanfaat. Aamiin 🙂