Versi terbaru Bard, yang ditenagai oleh model PaLM 2, menawarkan peningkatan kinerja dalam penalaran, pengodean, dan kemampuan multibahasa. Berbeda dengan ChatGPT, pengguna harus menyesuaikan masukan mereka untuk Bard agar memperoleh respons berkualitas tinggi.
Postingan ini membahas cara memanfaatkan Bard versi baru untuk membangun proyek data science end-to-end. Anda akan mempelajari cara menyusun prompt efektif yang menghasilkan ide dan kode untuk eksperimen serta pengembangan.
Fase perencanaan adalah langkah krusial di setiap proyek, karena menjadi fondasi kesuksesannya. Pada fase ini, kami menganalisis dengan cermat sumber daya dan tujuan yang tersedia serta menyusun rencana proyek yang menguraikan langkah-langkah yang diperlukan untuk mencapai target.
Untuk membuat garis besar proyek, kami akan menyusun prompt terperinci untuk Bard yang mencakup semua informasi relevan tentang pengembangan aplikasi Deteksi Berita Palsu kami. Ini akan mencakup detail utama, seperti dataset yang akan kami gunakan, yaitu dataset Fake News Classification dari makalah WELFake, serta arahan proyek yang akan memandu tim kami sepanjang proses pengembangan.
Prompt: “Bertindaklah sebagai Manajer Data Science dan kembangkan rencana untuk proyek Deteksi Berita Palsu end-to-end. Kami sudah memiliki dataset FakeNewsDetection yang terdiri dari 72.134 baris dan 4 kolom: [Unnamed: 0, title, text, dan ;abel (0 = palsu dan 1 = asli)].”
Meskipun garis besar proyek yang bersifat umum memberikan fondasi yang kuat, ada beberapa langkah penting yang terlewat. Kita dapat menambahkan langkah-langkah yang diperlukan dengan menulis prompt lanjutan.
Sepertinya Bard gagal memahami bahwa kita sudah memiliki dataset sehingga kita tidak memerlukan bagian pengumpulan data. Anda dapat menulis prompt lanjutan untuk merapikannya.
Prompt Lanjutan: “Kami sudah memiliki data, jadi hapus langkah Pengumpulan data dari rencana proyek.”
Berikut adalah garis besar untuk proyek Deteksi Berita Palsu:
Prapemrosesan data
Eksplorasi data (EDA)
Ekstraksi fitur
Pemilihan model
Optimisasi hyperparameter
Pelatihan dan evaluasi model
Webapp Streamlit
Deployment Streamlit Cloud
Rencana proyek mencakup penjelasan terperinci tentang setiap langkah yang terlibat dalam membangun aplikasi Deteksi Berita Palsu kami, serta metodologi yang direkomendasikan untuk mengoptimalkan hasil. Selain itu, rencana kami menyediakan agenda mingguan yang menguraikan tugas dan tonggak utama.
Jika Anda kesulitan menulis prompt atau merasa kewalahan, kami siap membantu. Unduh Prompt Engineering Cheat Sheet kami, yang memberi Anda akses ke kumpulan 60+ prompt yang dibuat ahli dan dirancang khusus untuk berbagai tugas data science.
Bard untuk Prapemrosesan Data
Pada langkah ini, kita akan memuat, membersihkan, dan melakukan rekayasa fitur pada dataset.
Pemuatan data
Sekarang Anda harus mengubah peran dari Manajer Data menjadi Data Scientist untuk menulis prompt pemuatan data.
Prompt: “Bertindaklah sebagai Data Scientist profesional dan tulis kode Python untuk memuat lima ribu sampel acak dari dataset untuk proyek di atas.”
Catatan: kita melakukan downsampling data agar pelatihan dan optimisasi model lebih cepat.
import pandas as pd
# Load the dataset
df = pd.read_csv("fake-news-classification/WELFake_Dataset.csv")# Get 5 thousand random samples
df = df.sample(n=5000, random_state=42)# Print the first 5 rows of the data
df.head()Didukung oleh
Pembersihan data
Untuk memastikan dataset kami dibersihkan dan disiapkan dengan baik untuk analisis, kami akan memberikan instruksi spesifik kepada Bard mengenai fungsi pembersihan data yang diperlukan.
Prompt: “Sekarang, tulis fungsi Python untuk membersihkan dataset. Fungsi harus menghapus nilai hilang, menghapus kolom "Unnamed: 0", membersihkan teks, dan menghapus stopword.”
Untuk mengatasi bug atau kesalahan dalam kode, kami akan meminta Bard memperbaiki error stopword. Bard akan memahami kekeliruan tersebut dan menghasilkan versi kode yang lebih baik.
from nltk.corpus import stopwords
defclean_dataset(df):# Drop missing values
df = df.dropna()# Drop Unnamed column
df = df.drop(["Unnamed: 0"], axis=1)# Clean text
df['text']= df['text'].str.lower()
df["Text"]= df["Text"].str.replace("[^a-zA-Z]"," ")# Remove stopwords
stopword =set(stopwords.words('english'))
df['text']= df['text'].apply(lambda x:' '.join([word for word in x.split()if word notin stopword]))return df
df = clean_dataset(df)
df.head()Didukung oleh
Kita memiliki dataset yang cukup bersih.
Rekayasa fitur
Agar Bard menghasilkan kode yang optimal, penting untuk memberi instruksi spesifik, bukan pertanyaan yang generik. Misalnya, jika kita meminta Bard melakukan fungsi tertentu, seperti “menggabungkan panjang kedua kolom teks,” Bard akan mampu menghasilkan kode berkualitas lebih baik yang disesuaikan dengan kebutuhan proyek.
Prompt: “Sekarang, tulis fungsi Python untuk melakukan rekayasa fitur. Ubah huruf pada kolom title menjadi huruf kecil dan gabungkan text dan title, gabungkan panjang kedua kolom teks, hitung jumlah kata unik, dan lainnya.”
deffeature_engineering(df):# Lower the title column
df['title']= df['title'].str.lower()# Combine text and title
df['combined']= df['title']+' '+ df['text']# Length of the combined text
df['combined_length']= df['combined'].str.len()# Count unique words
df['unique_words']= df['text'].apply(lambda x:len(set(x.split())))return df
# Perform feature engineering
df = feature_engineering(df)# Print the first few rows of the DataFrame with the new features
df.head()Didukung oleh
Kita telah membuat tiga fitur baru yang akan digunakan untuk analisis data.
Bard untuk Exploratory Data Analysis (EDA)
Pada bagian EDA, kita akan meminta Bard membuat visual data tertentu yang penting untuk eksplorasi data.
Prompt: “Tulis kode Python untuk melakukan Exploratory Data Analysis (EDA) pada proyek di atas. Sertakan histogram untuk membandingkan panjang gabungan berita palsu vs asli, distribusi label, dan word cloud.”
Kita akan menulis prompt lanjutan untuk menambahkan batas bin.
Prompt Lanjutan: “Perbarui kode EDA dengan `np.linspace` untuk membuat batas bin dari 0 hingga 200 dengan lebar 40 bin.”
import matplotlib.pyplot as plt
import seaborn as sns
import numpy as np
bins = np.linspace(0,200,40)# Histogram of the length of fake vs real news articles
plt.hist(df['combined_length'].where(df['label']==1),bins, alpha=0.5, label='Real')
plt.hist(df['combined_length'].where(df['label']==0),bins, alpha=0.5, label='Fake')
plt.xlabel('Combined Text Length')
plt.ylabel('Number of Articles')
plt.legend()
plt.show()Didukung oleh
Tampaknya berita palsu memiliki panjang teks yang lebih besar daripada berita asli.
# Label distribution
plt.pie(df['label'].value_counts(), labels=['Fake','Real'], autopct='%1.1f%%')
plt.show()Didukung oleh
Distribusi label cukup seimbang, dan kita tidak perlu melakukan penyeimbangan kelas.
from wordcloud import WordCloud
wc = WordCloud(max_words=100, background_color='white')
wc.generate(' '.join(df[df['label']==0]['combined']))
plt.imshow(wc)
plt.axis('off')
plt.title('Word cloud of fake news articles')
plt.show()Didukung oleh
wc = WordCloud(max_words=100, background_color='white')
wc.generate(' '.join(df[df['label']==1]['combined']))
plt.imshow(wc)
plt.axis('off')
plt.title('Word cloud of real news articles')
plt.show()Didukung oleh
Berita asli memiliki kata yang lebih menonjol seperti “trump” dan “said” dibandingkan berita palsu.
Ekstraksi Fitur dengan Bard
Pada bagian ini, kita akan menulis prompt untuk mengubah kolom “text” menjadi vektor dan membagi dataset menjadi dataset latih dan uji.
Prompt: “Ubah kolom text menjadi vektor dan bagi dataset menjadi dataset pelatihan dan pengujian.”
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.model_selection import train_test_split
# Convert the text column into vectors
vectorizer = TfidfVectorizer()
X = vectorizer.fit_transform(df['text'])# Split the dataset into training and testing datasets
X_train, X_test, y_train, y_test = train_test_split(X, df['label'], test_size=0.25)Didukung oleh
Bard untuk Pemilihan Model
Dengan informasi latar belakang yang diperlukan telah disediakan, sekarang Anda dapat mengajukan pertanyaan yang langsung.
Prompt: “Lakukan pemilihan model.”
from sklearn.linear_model import LogisticRegression
from sklearn.svm import SVC
from sklearn.tree import DecisionTreeClassifier
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import accuracy_score
# Train the models
models =[LogisticRegression(), SVC(), DecisionTreeClassifier(), RandomForestClassifier()]for model in models:
model.fit(X_train, y_train)# Evaluate the models
predictions =[]for model in models:
predictions.append(model.predict(X_test))# Calculate the accuracy of the models
accuracies =[]for predictions in predictions:
accuracies.append(accuracy_score(y_test, predictions))# Print the accuracy of the modelsprint("Accuracy of LogisticRegression:", accuracies[0])print("Accuracy of SVC:", accuracies[1])print("Accuracy of DecisionTreeClassifier:", accuracies[2])print("Accuracy of RandomForestClassifier:", accuracies[3])Didukung oleh
Accuracy of LogisticRegression:0.9024979854955681
Accuracy of SVC:0.91941982272361
Accuracy of DecisionTreeClassifier:0.8767123287671232
Accuracy of RandomForestClassifier:0.8863819500402901Didukung oleh
Berdasarkan analisis kami, tampaknya semua model yang kami uji berkinerja cukup baik. Namun, model Support Vector Classifier (SVC) meraih skor akurasi tertinggi di antara model yang diuji.
Penyetelan Hyperparameter dengan Bard
Kami meminta Bard menulis kode penyetelan hyperparameter yang menyimpan model dan objek vektor optimal untuk deployment.
Prompt: ”Tulis kode Python untuk optimisasi Hyperparameter SVC. Juga, simpan model dan vectorizer terbaik menggunakan Joblib.”
from sklearn.svm import SVC
from sklearn.model_selection import GridSearchCV
from sklearn.metrics import accuracy_score,f1_score, classification_report, confusion_matrix
import joblib
# Create a RandomForestClassifier model
svm = SVC()# Create the hyperparameter grid
param_grid ={'C':[1,10,100],'gamma':[0.01,0.1,1]}# Create the GridSearchCV object
grid = GridSearchCV(SVC(), param_grid, cv=5)# Fit the GridSearchCV object to the training data
grid.fit(X_train, y_train)# Print the best parametersprint(grid.best_params_)Didukung oleh
# Predict the labels of the testing data using the best model
y_pred = grid.predict(X_test)# Calculate the accuracy of the best model
accuracy = accuracy_score(y_test, y_pred)# Print the accuracy of the best modelprint("Accuracy of the best model:", accuracy)Didukung oleh
Akurasi meningkat sedikit.
Accuracy of the best model:0.9298952457695407Didukung oleh
Model dan vektor yang disimpan akan digunakan untuk menjalankan inferensi.
# Save the best model
joblib.dump(grid.best_estimator_,'best_model.pkl')# Save the TfidfVectorizer
joblib.dump(vectorizer,'tfidf_vectorizer.pkl')Didukung oleh
Evaluasi Model dengan Bard
Akurasi saja tidak cukup untuk model klasifikasi. Kita harus mengujinya pada f1-score, recall, precision, dan confusion matrix.
Prompt: ”Tulis kode Python untuk evaluasi model. Sertakan classification report, confusion matrix, dan f1 score.”
print(classification_report(y_test, y_pred))Didukung oleh
Menurut laporan, model kami cukup stabil pada dataset uji.
precision recall f1-score support
00.940.920.9362010.920.940.93621
accuracy 0.931241
macro avg 0.930.930.931241
weighted avg 0.930.930.931241Didukung oleh
# Plot the confusion matrixprint(confusion_matrix(y_test, y_pred))Didukung oleh
Setelah puas dengan hasilnya, kita akan mengembangkan aplikasi yang akan mengonversi teks masukan menjadi vektor, melewatkannya ke model, dan menampilkan hasilnya.
Sebelum itu, kita harus membuat repositori GitHub.
Kloning repositori dan simpan semua komponen penting aplikasi. Langkah ini tidak hanya memastikan keamanan penyimpanan, tetapi juga memungkinkan versi yang efektif untuk aplikasi dan model.
git clone https://github.com/kingabzpro/Fake-News-DataCamp-Project.gitDidukung oleh
Tulis prompt umum untuk mengembangkan aplikasi yang memprediksi apakah berita tersebut asli atau palsu.
Prompt: “Tulis file Python terpisah untuk membuat web app menggunakan Streamlit guna memprediksi apakah Berita adalah (0 = palsu atau 1 = asli). Sertakan hanya bagian aplikasi Streamlit.”
Selanjutnya, mari buat file app.py dan pindahkan kode dari Bard ke file ini. Setelah selesai, Anda dapat menjalankan aplikasi menggunakan perintah streamlit run app.py.
Catatan: pastikan Anda memiliki semua paket Python yang diperlukan untuk menjalankan aplikasi Streamlit.
Sepertinya Bard gagal memuat vectorizer. Kita dapat menulis prompt lanjutan untuk memperbaiki masalah ini.
Prompt Lanjutan: “Tambahkan pemuatan Vectorizer dan Model di file aplikasi menggunakan joblib.”
Aplikasi belum berjalan dengan baik, jadi kita harus menambahkan tombol run untuk memperbaiki masalah tersebut.
Prompt Lanjutan: “Tambahkan juga tombol untuk menjalankan inferensi.”
import streamlit as st
import joblib
# Load the vectorizer
vectorizer = joblib.load("tfidf_vectorizer.pkl")# Load the model
model = joblib.load("best_model.pkl")# Create a title
st.title("Predict Fake News")# Input text
text = st.text_input("Enter the news article:")# Button to run inferenceif st.button("Predict"):# Convert the text to a vector
vector = vectorizer.transform([text])# Predict the label
label = model.predict(vector)[0]# Display the labelif label ==0:
st.write("The news article is fake.")else:
st.write("The news article is real.")Didukung oleh
Kami berhasil membangun aplikasi Streamlit yang menerima masukan teks dan memberikan prediksi keaslian artikel berita.
Menggunakan Bard untuk Deployment Streamlit Cloud
Untuk mendeploy aplikasi ke cloud, kita harus meminta bantuan Bard. Ternyata kita hanya perlu mendorong kode ke repositori GitHub dan menghubungkannya dengan server Streamlit.
Prompt: “Bantu saya mendeploy aplikasi di Streamlit Community Cloud.”
1. Buat file requirements.txt dan tambahkan semua paket Python yang diperlukan seperti “scikit-learn.”
2. Tambahkan file menggunakan Git, commit, dan push ke server eksternal. Pastikan Anda telah menambahkan model, vektor, app.py, dan requirements.txt.
3. Kunjungi share.streamlit.io, klik “New app,” pilih repositori GitHub, dan tambahkan informasi yang diperlukan tentang aplikasi.
Alat AI seperti ChatGPT, Bard, dan Claude memberdayakan kita untuk unggul dalam tugas data science harian. Dengan memanfaatkan kapabilitas alat-alat ini, kita meningkatkan efisiensi dan kemahiran, sehingga mampu menangani tantangan data yang kompleks dengan mudah.
Dalam postingan ini, kami mengeksplorasi kekuatan versi baru Bard untuk mengembangkan proyek data science end-to-end yang komprehensif. Anda juga dapat melihat panduan kami tentang Menggunakan ChatGPT untuk Proyek Data Science atau mengikuti kursus ChatGPT komprehensif: Introduction to ChatGPT, dan temukan praktik terbaik dalam menulis prompt.
Sebagai data scientist tersertifikasi, saya bersemangat memanfaatkan teknologi mutakhir untuk menciptakan aplikasi machine learning yang inovatif. Dengan latar belakang kuat di pengenalan ucapan, analisis dan pelaporan data, MLOps, conversational AI, dan NLP, saya mengasah keterampilan dalam mengembangkan sistem cerdas yang berdampak nyata. Selain keahlian teknis, saya juga komunikator andal yang mampu menyederhanakan konsep kompleks menjadi bahasa yang jelas dan ringkas. Karena itu, saya menjadi blogger yang dicari di bidang data science, membagikan wawasan dan pengalaman kepada komunitas profesional data yang terus berkembang. Saat ini, saya berfokus pada pembuatan dan penyuntingan konten, bekerja dengan large language model untuk mengembangkan konten yang kuat dan menarik agar membantu bisnis dan individu memaksimalkan data mereka.
Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Versi terbaru Bard, yang ditenagai oleh model PaLM 2, menawarkan peningkatan kinerja dalam penalaran, pengodean, dan kemampuan multibahasa. Berbeda dengan ChatGPT, pengguna harus menyesuaikan masukan mereka untuk Bard agar memperoleh respons berkualitas tinggi.
Postingan ini membahas cara memanfaatkan Bard versi baru untuk membangun proyek data science end-to-end. Anda akan mempelajari cara menyusun prompt efektif yang menghasilkan ide dan kode untuk eksperimen serta pengembangan.
Baca artikel kami Bard vs ChatGPT untuk Data Science untuk menemukan perbandingan mendetail antara Google Bard dan ChatGPT, artikel umum kami ChatGPT vs Google Bard, dan lihat tutorial ChatGPT untuk Proyek Data Science sebagai opsi lain.
Perencanaan Proyek
Fase perencanaan adalah langkah krusial di setiap proyek, karena menjadi fondasi kesuksesannya. Pada fase ini, kami menganalisis dengan cermat sumber daya dan tujuan yang tersedia serta menyusun rencana proyek yang menguraikan langkah-langkah yang diperlukan untuk mencapai target.
Untuk membuat garis besar proyek, kami akan menyusun prompt terperinci untuk Bard yang mencakup semua informasi relevan tentang pengembangan aplikasi Deteksi Berita Palsu kami. Ini akan mencakup detail utama, seperti dataset yang akan kami gunakan, yaitu dataset Fake News Classification dari makalah WELFake, serta arahan proyek yang akan memandu tim kami sepanjang proses pengembangan.
Prompt: “Bertindaklah sebagai Manajer Data Science dan kembangkan rencana untuk proyek Deteksi Berita Palsu end-to-end. Kami sudah memiliki dataset
FakeNewsDetectionyang terdiri dari 72.134 baris dan 4 kolom: [Unnamed: 0, title, text, dan ;abel (0 = palsu dan 1 = asli)].”Meskipun garis besar proyek yang bersifat umum memberikan fondasi yang kuat, ada beberapa langkah penting yang terlewat. Kita dapat menambahkan langkah-langkah yang diperlukan dengan menulis prompt lanjutan.
Prompt Lanjutan: “Harap tambahkan langkah seperti EDA, Pemilihan Model, Optimisasi Hyperparameter, Webapp Streamlit, dan deployment Streamlit Cloud. Berikan rencana proyek gabungan.”
Sepertinya Bard gagal memahami bahwa kita sudah memiliki dataset sehingga kita tidak memerlukan bagian pengumpulan data. Anda dapat menulis prompt lanjutan untuk merapikannya.
Prompt Lanjutan: “Kami sudah memiliki data, jadi hapus langkah Pengumpulan data dari rencana proyek.”
Berikut adalah garis besar untuk proyek Deteksi Berita Palsu:
Rencana proyek mencakup penjelasan terperinci tentang setiap langkah yang terlibat dalam membangun aplikasi Deteksi Berita Palsu kami, serta metodologi yang direkomendasikan untuk mengoptimalkan hasil. Selain itu, rencana kami menyediakan agenda mingguan yang menguraikan tugas dan tonggak utama.
Jika Anda kesulitan menulis prompt atau merasa kewalahan, kami siap membantu. Unduh Prompt Engineering Cheat Sheet kami, yang memberi Anda akses ke kumpulan 60+ prompt yang dibuat ahli dan dirancang khusus untuk berbagai tugas data science.
Bard untuk Prapemrosesan Data
Pada langkah ini, kita akan memuat, membersihkan, dan melakukan rekayasa fitur pada dataset.
Pemuatan data
Sekarang Anda harus mengubah peran dari Manajer Data menjadi Data Scientist untuk menulis prompt pemuatan data.
Prompt: “Bertindaklah sebagai Data Scientist profesional dan tulis kode Python untuk memuat lima ribu sampel acak dari dataset untuk proyek di atas.”
Catatan: kita melakukan downsampling data agar pelatihan dan optimisasi model lebih cepat.
Pembersihan data
Untuk memastikan dataset kami dibersihkan dan disiapkan dengan baik untuk analisis, kami akan memberikan instruksi spesifik kepada Bard mengenai fungsi pembersihan data yang diperlukan.
Prompt: “Sekarang, tulis fungsi Python untuk membersihkan dataset. Fungsi harus menghapus nilai hilang, menghapus kolom "Unnamed: 0", membersihkan teks, dan menghapus stopword.”
Untuk mengatasi bug atau kesalahan dalam kode, kami akan meminta Bard memperbaiki error stopword. Bard akan memahami kekeliruan tersebut dan menghasilkan versi kode yang lebih baik.
Prompt Diperbarui: “Atasi error pada stopwords”
Kita memiliki dataset yang cukup bersih.
Rekayasa fitur
Agar Bard menghasilkan kode yang optimal, penting untuk memberi instruksi spesifik, bukan pertanyaan yang generik. Misalnya, jika kita meminta Bard melakukan fungsi tertentu, seperti “menggabungkan panjang kedua kolom teks,” Bard akan mampu menghasilkan kode berkualitas lebih baik yang disesuaikan dengan kebutuhan proyek.
Prompt: “Sekarang, tulis fungsi Python untuk melakukan rekayasa fitur. Ubah huruf pada kolom title menjadi huruf kecil dan gabungkan text dan title, gabungkan panjang kedua kolom teks, hitung jumlah kata unik, dan lainnya.”
Kita telah membuat tiga fitur baru yang akan digunakan untuk analisis data.
Bard untuk Exploratory Data Analysis (EDA)
Pada bagian EDA, kita akan meminta Bard membuat visual data tertentu yang penting untuk eksplorasi data.
Prompt: “Tulis kode Python untuk melakukan Exploratory Data Analysis (EDA) pada proyek di atas. Sertakan histogram untuk membandingkan panjang gabungan berita palsu vs asli, distribusi label, dan word cloud.”
Kita akan menulis prompt lanjutan untuk menambahkan batas bin.
Prompt Lanjutan: “Perbarui kode EDA dengan `np.linspace` untuk membuat batas bin dari 0 hingga 200 dengan lebar 40 bin.”
Tampaknya berita palsu memiliki panjang teks yang lebih besar daripada berita asli.
Distribusi label cukup seimbang, dan kita tidak perlu melakukan penyeimbangan kelas.
Berita asli memiliki kata yang lebih menonjol seperti “trump” dan “said” dibandingkan berita palsu.
Ekstraksi Fitur dengan Bard
Pada bagian ini, kita akan menulis prompt untuk mengubah kolom “text” menjadi vektor dan membagi dataset menjadi dataset latih dan uji.
Prompt: “Ubah kolom text menjadi vektor dan bagi dataset menjadi dataset pelatihan dan pengujian.”
Bard untuk Pemilihan Model
Dengan informasi latar belakang yang diperlukan telah disediakan, sekarang Anda dapat mengajukan pertanyaan yang langsung.
Prompt: “Lakukan pemilihan model.”
Berdasarkan analisis kami, tampaknya semua model yang kami uji berkinerja cukup baik. Namun, model Support Vector Classifier (SVC) meraih skor akurasi tertinggi di antara model yang diuji.
Penyetelan Hyperparameter dengan Bard
Kami meminta Bard menulis kode penyetelan hyperparameter yang menyimpan model dan objek vektor optimal untuk deployment.
Prompt: ”Tulis kode Python untuk optimisasi Hyperparameter SVC. Juga, simpan model dan vectorizer terbaik menggunakan Joblib.”
Akurasi meningkat sedikit.
Model dan vektor yang disimpan akan digunakan untuk menjalankan inferensi.
Evaluasi Model dengan Bard
Akurasi saja tidak cukup untuk model klasifikasi. Kita harus mengujinya pada f1-score, recall, precision, dan confusion matrix.
Prompt: ”Tulis kode Python untuk evaluasi model. Sertakan classification report, confusion matrix, dan f1 score.”
Menurut laporan, model kami cukup stabil pada dataset uji.
Menggunakan Bard untuk Webapp Streamlit
Setelah puas dengan hasilnya, kita akan mengembangkan aplikasi yang akan mengonversi teks masukan menjadi vektor, melewatkannya ke model, dan menampilkan hasilnya.
Sebelum itu, kita harus membuat repositori GitHub.
Kloning repositori dan simpan semua komponen penting aplikasi. Langkah ini tidak hanya memastikan keamanan penyimpanan, tetapi juga memungkinkan versi yang efektif untuk aplikasi dan model.
Tulis prompt umum untuk mengembangkan aplikasi yang memprediksi apakah berita tersebut asli atau palsu.
Prompt: “Tulis file Python terpisah untuk membuat web app menggunakan Streamlit guna memprediksi apakah Berita adalah (0 = palsu atau 1 = asli). Sertakan hanya bagian aplikasi Streamlit.”
Selanjutnya, mari buat file
app.pydan pindahkan kode dari Bard ke file ini. Setelah selesai, Anda dapat menjalankan aplikasi menggunakan perintahstreamlit run app.py.Catatan: pastikan Anda memiliki semua paket Python yang diperlukan untuk menjalankan aplikasi Streamlit.
Sepertinya Bard gagal memuat vectorizer. Kita dapat menulis prompt lanjutan untuk memperbaiki masalah ini.
Prompt Lanjutan: “Tambahkan pemuatan Vectorizer dan Model di file aplikasi menggunakan joblib.”
Aplikasi belum berjalan dengan baik, jadi kita harus menambahkan tombol run untuk memperbaiki masalah tersebut.
Prompt Lanjutan: “Tambahkan juga tombol untuk menjalankan inferensi.”
Kami berhasil membangun aplikasi Streamlit yang menerima masukan teks dan memberikan prediksi keaslian artikel berita.
Menggunakan Bard untuk Deployment Streamlit Cloud
Untuk mendeploy aplikasi ke cloud, kita harus meminta bantuan Bard. Ternyata kita hanya perlu mendorong kode ke repositori GitHub dan menghubungkannya dengan server Streamlit.
Prompt: “Bantu saya mendeploy aplikasi di Streamlit Community Cloud.”
1. Buat file
requirements.txtdan tambahkan semua paket Python yang diperlukan seperti “scikit-learn.”2. Tambahkan file menggunakan Git, commit, dan push ke server eksternal. Pastikan Anda telah menambahkan model, vektor,
app.py, danrequirements.txt.3. Kunjungi share.streamlit.io, klik “New app,” pilih repositori GitHub, dan tambahkan informasi yang diperlukan tentang aplikasi.
Selesai. Aplikasi kami telah dideploy dan tersedia untuk publik di Streamlit (fake-news-detector.streamlit.app).
Kesimpulan
Alat AI seperti ChatGPT, Bard, dan Claude memberdayakan kita untuk unggul dalam tugas data science harian. Dengan memanfaatkan kapabilitas alat-alat ini, kita meningkatkan efisiensi dan kemahiran, sehingga mampu menangani tantangan data yang kompleks dengan mudah.
Dalam postingan ini, kami mengeksplorasi kekuatan versi baru Bard untuk mengembangkan proyek data science end-to-end yang komprehensif. Anda juga dapat melihat panduan kami tentang Menggunakan ChatGPT untuk Proyek Data Science atau mengikuti kursus ChatGPT komprehensif: Introduction to ChatGPT, dan temukan praktik terbaik dalam menulis prompt.