💻

Streaming Chatbot Generatif dan Prosesnya

Oct 20, 2024

Catatan Streaming Chatbot Generatif

Pembukaan

  • Terima kasih telah menonton.
  • Selamat datang di channel Modding Python.
  • Streaming kali ini tentang Chatbot Generatif.
  • Absen dari peserta yang hadir.

Data yang Digunakan

  • Data yang digunakan: humantext.txt dan robotext.txt.
  • Input sequence dari humantext.txt, output dari robotext.txt.
  • Memerlukan dua dataset.
  • Lakukan pemrosesan terhadap data teks.

Proses Awal

  • Menggunakan Google Translate API untuk menerjemahkan data dari bahasa Inggris ke bahasa Indonesia.
  • Preprocessing data dilakukan untuk membersihkan data dari emoticon dan format yang tidak diperlukan.

Penggunaan Library

  • Menggunakan library Pandas untuk pengolahan data.
  • Loading data TXT dengan Pandas DataFrame.
  • Gabungkan data human dan robot.

Preprocessing

  1. Mengganti kata yang tidak perlu dan konversi huruf menjadi huruf kecil.
  2. Menghapus tanda baca dan digit dalam data.
  3. Menghapus emoticon yang tidak diperlukan.
  4. Penjelasan tentang penghilangan data (data leakage) dalam NLP.

Splitting Data

  • Penting untuk melakukan splitting antara data training dan testing sebelum melakukan preprocessing yang membutuhkan data sebagai variabel.
  • Split data dengan menggunakan train_test_split dari sklearn.

Membuat Vocabulary

  • Membentuk vocab dari data training hanya dan menghitung frekuensi setiap kata.
  • Menggunakan Counter dari collections untuk menghitung frekuensi.
  • Menggunakan threshold untuk mengeliminasi vocab yang kurang umum.

Penyimpanan Word to Index

  • Membuat dictionary untuk menghubungkan kata ke indeks dan sebaliknya.
  • Menandai awal dan akhir dari kalimat dengan karakter khusus untuk model sequence to sequence.

Modeling

  • Memperkenalkan model generatif menggunakan LSTM.
  • Penjelasan flow data dalam model generatif.
  • Menggunakan embedding layer, dropout, dan LSTM dalam arsitektur model.

Data Generator

  • Membuat generator untuk menghasilkan input dan output yang diinginkan.
  • Menggunakan yield untuk pengelolaan memori yang lebih baik.

Training Model

  • Menjelaskan tentang konfigurasi training model.
  • Menggunakan cross-entropy loss dan Adam optimizer.
  • Melakukan training dengan menggunakan generator yang telah dibuat.

Penutupan

  • Permintaan maaf atas gangguan selama streaming.
  • Mengajak peserta untuk melihat kode di GitHub.
  • Menyampaikan harapan untuk sesi streaming berikutnya yang lebih baik.