Showing posts with label kecerdasan buatan. Show all posts
Showing posts with label kecerdasan buatan. Show all posts

Menjelajahi Training Language Model (LLM)

No Comments

 

Pertumbuhan pesat dalam bidang kecerdasan buatan telah membawa munculnya teknologi yang semakin canggih, salah satunya adalah Language Model (LM) atau model bahasa. Salah satu jenis LM yang paling menonjol adalah Language Model berbasis transformasi (TLM), seperti GPT (Generative Pre-trained Transformer) yang dikembangkan oleh OpenAI. Training Language Model (LLM) merupakan proses penting dalam pengembangan model bahasa yang berkualitas dan mampu menghasilkan teks yang semakin mendekati tingkat kecerdasan manusia.


Proses Training Language Model (LLM)

Proses training LLM biasanya melibatkan langkah-langkah berikut:

  1. Pengumpulan Data: Data yang berkualitas dan beragam sangat penting dalam pelatihan model bahasa yang efektif. Data ini bisa berupa teks dari berbagai sumber, seperti buku, artikel, situs web, dan lain-lain.

  2. Pra-Pemrosesan Data: Langkah ini melibatkan pembersihan dan penyusunan data. Ini termasuk menghapus karakter khusus, tokenisasi teks, normalisasi teks, dan banyak lagi.

  3. Tokenisasi: Tokenisasi adalah proses memecah teks menjadi token-token atau unit-unit kecil yang dapat diproses oleh model. Ini bisa berupa kata-kata, sub-kata, atau karakter.

  4. Pembuatan Batch: Data biasanya dibagi menjadi batch-batch kecil untuk melatih model secara bertahap. Ini membantu dalam mempercepat proses pelatihan dan mengelola memori dengan lebih efisien.

  5. Pelatihan Model: Proses utama pelatihan, di mana model diberi masukan dalam bentuk batch-batch data dan diperbarui berulang kali untuk meningkatkan kualitasnya. Pelatihan ini dapat memakan waktu yang sangat lama, tergantung pada ukuran data dan kompleksitas model.

  6. Penilaian dan Penyetelan: Setelah model selesai dilatih, itu dievaluasi menggunakan metrik yang relevan dan kemudian disesuaikan atau disempurnakan jika diperlukan. Ini dapat melibatkan penyetelan parameter, penambahan lapisan tambahan, atau perubahan arsitektur.

  7. Fine-Tuning Opsional: Kadang-kadang, model yang sudah dilatih kemudian disesuaikan dengan data khusus atau domain tertentu melalui proses fine-tuning. Ini membantu model untuk menjadi lebih spesifik dan akurat dalam konteks tertentu.

Contoh Kode Python untuk Training LLM

Berikut ini adalah contoh menggunakan dataset Wikipedia dalam bahasa Inggris untuk melatih model bahasa sederhana menggunakan TensorFlow:

 

 <code>
import tensorflow as tf
from tensorflow.keras.preprocessing.text import Tokenizer
from tensorflow.keras.preprocessing.sequence import pad_sequences
import urllib.request

<!-- Download dataset Wikipedia -->
url = "https://dumps.wikimedia.org/enwiki/latest/enwiki-latest-pages-articles.xml.bz2"
urllib.request.urlretrieve(url, "enwiki-latest-pages-articles.xml.bz2")

<!-- Process Wikipedia data -->
from gensim.corpora.wikicorpus import WikiCorpus
wiki = WikiCorpus("enwiki-latest-pages-articles.xml.bz2", lemmatize=False)

<!-- Generate text from Wikipedia data -->
text = ""
for article in wiki.get_texts():
    text += " ".join(article) + " "

<!-- Split text into lines -->
corpus = text.split("\n")

<!-- Tokenization -->
tokenizer = Tokenizer()
tokenizer.fit_on_texts(corpus)
total_words = len(tokenizer.word_index) + 1

<!-- Sequencing -->
input_sequences = []
for line in corpus:
    token_list = tokenizer.texts_to_sequences([line])[0]
    for i in range(1, len(token_list)):
        n_gram_sequence = token_list[:i+1]
        input_sequences.append(n_gram_sequence)

<!-- Padding -->
max_sequence_len = max([len(x) for x in input_sequences])
input_sequences = pad_sequences(input_sequences, maxlen=max_sequence_len, padding='pre')

<!-- Creating input and output -->
input_sequences = tf.convert_to_tensor(input_sequences)
xs, labels = input_sequences[:,:-1],input_sequences[:,-1]

<!-- Building a simple model -->
model = tf.keras.Sequential([
    tf.keras.layers.Embedding(total_words, 64, input_length=max_sequence_len-1),
    tf.keras.layers.Bidirectional(tf.keras.layers.LSTM(20)),
    tf.keras.layers.Dense(total_words, activation='softmax')
])

model.compile(loss='sparse_categorical_crossentropy', optimizer='adam', metrics=['accuracy'])
history = model.fit(xs, labels, epochs=5, verbose=1)

<!-- Example of using the model -->
seed_text = "Artificial intelligence"
next_words = 10

for _ in range(next_words):
    token_list = tokenizer.texts_to_sequences([seed_text])[0]
    token_list = pad_sequences([token_list], maxlen=max_sequence_len-1, padding='pre')
    predicted = model.predict_classes(token_list, verbose=0)
    output_word = ""
    for word, index in tokenizer.word_index.items():
        if index == predicted:
            output_word = word
            break
    seed_text += " " + output_word
print(seed_text)
</code>

Dalam contoh di atas, kita menggunakan WikiCorpus dari library gensim untuk memproses data Wikipedia dan kemudian menggunakan Tokenizer dari TensorFlow untuk memproses dan membagi teks menjadi token. Kemudian, kita membangun dan melatih model bahasa menggunakan pendekatan yang sama dengan contoh sebelumnya. Anda juga dapat mengunduh notebooknya di sini.

Istilah- Istilah Dalam Kecerdasan Buatan

No Comments

Secara umum, untuk membangun suatu sistem yang mampu menyelesaikan masalah, perlu dipertimbangkan 4 hal
1. Mendefinisikan masalah dengan tepat.
Pendefinisian ini mencakup spesifikasi yang tepat mengenai keadaan awal dan solusi yang diharapkan.
2. Menganalisis masalah tersebut serta mencari beberapa teknik penyelesaian masalah yang sesuai.
3. Merepresentasikan pengetahuan yang perlu untuk menyelesaikan masalah tersebut.
4. Memilih teknik penyelesaian masalah yang terbaik
Logika Proposisi adalah suatu pernyataan yang dapat bernilai Benar atau Salah. Simbol-simbol seperti P dan Q menunjukkan proposisi.
Logika predikat digunakan untuk merepresentasikan hal-hal yang tidak dapat direpresentasikan dengan menggunakan logika proposisi.
List dan Tree merupakan struktur sederhana yang digunakan dalam representasi hirarki pengetahuan.
LIST Adalah serangkaian jenis barang-barang tertulis yang berhubungan
Struktur pohon adalah struktur grafik hirarki. Struktur ini merupakan cara yang sederhana untuk menggambarkan list dan hirarki pengetahuan lainnya
Jaringan semantik merupakan gambaran pengetahuan grafis yang menunjukkan hubungan antar berbagai objek. Jaringan semantik terdiri dari lingkaran-lingkaran yang menunjukkan objek dan informasi tentang objek-objek tersebut.
Frame merupakan kumpulan pengetahuan tentang sutau objek tertentu, peristiwa, lokasi, situasi, dll. Frame memiliki slot yang menggambarkan rincian (atribut) dan karakteristik objek
Script adalah skema representasi pengetahuan yang sama dengan frame, yaitu merepresentasikan pengetahuan berdasarkan karakteristik yang sudah dikenal sebagai pengalaman-pengalaman.(by:Dita Setiawan) Perbedaannya, frame menggambarkan objek, sedangkan script menggambarkan urutan peristiwa. Dalam menggambarkan urutan peristiwa, script menggunakan slot yang berisi informasi tentang orang, objek, dan tindakan-tindakan yang terjadi dalam suatu peristiwa.
Sistem pakar (expert system) adalah sistem yang berusaha mengapdosi pengetahuan manusia ke komputer, agar komputer dapat menyelesaikan masalah seperti yang biasa dilakukan oleh para ahli. Sistem pakar yang baik dirancang agar dapat menyelesaikan suatu permasalahan tertentu dengan meniru kerja dari para ahli.
MANFAAT SISTEM PAKAR :
1. Memungkinkan orang awam bisa mengerjakan pekerjaan para ahli
2. Bisa melakukan proses secara berulang secara otomatis
3. Menyimpan pengetahuan dan keahlian para pakar
4. Mampu mengambil dan melestarikan keahlian para pakar (terutama yang termasuk keahlian langka)
5. Mampu beroperasi dalam lingkungan yang berbahaya
6. Memiliki kemampuan untuk bekerja dengan informasi yang tidak lengkap dan mengandung ketidakpastian
7. Tidak memerlukan biaya saat tidak digunakan, sedangkan pada pakar manusia memerlukan biaya sehari-hari.
8. Dapat digandakan (diperbanyak) sesuai kebutuhan dengan waktu yang minimal dan sedikit biaya
9. Dapat memecahkan masalah lebih cepat daripada kemampuan manusia dengan catatan menggunakan data yang sama.
10. Menghemat waktu dalam pengambilan keputusan
11. Meningkatkan kualitas dan produktivitas

Pengertian Kecerdasan Buatan

Pengertian Kecerdasan Buatan

No Comments
Kecerdasan Buatan adalah salah satu cabang Ilmu pengetahuan berhubungan dengan pemanfaatan mesin untuk memecahkan persoalan yang rumit dengan cara yang lebih manusiawi. Hal Ini biasanya dilakukan dengan mengikuti/mencontoh karakteristik dan analogi berpikir dari kecerdasan/Inteligensia manusia, dan menerapkannya sebagai algoritma yang dikenal oleh komputer. Dengan suatu pendekatan yang kurang lebih fleksibel dan efisien dapat diambil tergantung dari keperluan, yang mempengaruhi bagaimana wujud dari perilaku kecerdasan buatan. AI biasanya dihubungkan dengan Ilmu Komputer, akan tetapi juga terkait erat dengan bidang lain seperti Matematika, Psikologi, Pengamatan, Biologi, Filosofi, dan yang lainnya. Kemampuan untuk mengkombinasikan pengetahuan dari semua bidang ini pada akhirnya akan bermanfaat bagi kemajuan dalam upaya menciptakan suatu kecerdasan buatan. Pengertian lain dari kecerdasan buatan adalah bagian ilmu komputer yang membuat agar mesin komputer dapat melakukan pekerjaan seperti dan sebaik yang dilakukan manusia. Pada awal diciptakannya, komputer hanya difungsikan sebagai alat hitung saja. Namun seiring dengan perkembangan jaman, maka peran komputer semakin mendominasi kehidupan manusia. Komputer tidak lagi hanya digunakan sebagai alat hitung, lebih dari itu, komputer diharapkan untuk dapat diberdayakan untuk mengerjakan segala sesuatu yang bisa dikerjakan oleh manusia. Manusia bisa menjadi pandai dalam menyelesaikan segala permasalahan di dunia ini karena manusia mempunyai pengetahuan dan pengalaman Pengetahuan diperoleh dari belajar. Semakin banyak bekal pengetahuan yang dimiliki oleh seseorang tentu saja diharapkan akan lebih mampu dalam menyelesaikan permasalahan. Namu bekal pengetahuan saja tidak cukup, manusia juga diberi akal untuk melakukan penalaran, mengambil kesimpulan berdasarkan pengetahuan dan pengalaman yang mereka miliki. Tanpa memiliki kemampuan untuk menalar dengan baik, manusia dengan segudang pengalaman dan pengetahuan tidak akan dapat menyelesaikan masalah dengan baik. Demikian pula dengan kemampuan menalar yang sangat baik, namun tanpa bekal pengetahuan dan pengalaman yang memadai, manusia juga tidak akan bisa menyelesaikan masalah dengan baik. Agar komputer bisa bertindak seperti dan sebaik manusia, maka komputer juga harus diberi bekal pengetahuan dan mempunyai kemampuan untuk menalar. Untuk itu AI akan mencoba untuk memberikan beberapa metoda untuk membekali komputer dengan kedua komponen tersebut agar komputer bisa menjadi mesin pintar. Lingkup utama kecerdasan buatan: Sustem pakar. Komputer digunakan sebagai saran untuk menyimpan pengetahuan para pakar. Dengan demikian komputer akan memiliki keahlian untuk menyelesaikan masalah dengan meniru keahlian yang dimiliki para pakar Pengolahan bahasa alami. Dengan pengolahan bahasa alami ini diharapkan user mampu berkomunikasi dengan komputer dengan menggunakan bahasa sehari-hari. Pengenalan ucapan. Melalui pengenalan ucapan diharapkan manusia mampu berkomunikasi dengan komputer dengan menggunakan suara. Robotika dan Sistem sensor Computer vision, mencoba untuk dapat mengintrepetasikan gambar atau objek-objek tampak melalui komputer Intelligent Computer aid Instruction. Komputer dapat digunakan sebagai tutor yang dapat melatih dan mengajar Keuntungan Kecerdasan Buatan : Kecerdasan buatan lebih bersifat permanen. Kecerdasan alami akan cepat mengalami perubahan. Hal ini dimungkinkan karena sifat manusia yang pelupa. Kecerdasan buatan tidak akan berubah sepanjang sistem komputer dan program tidak mengubahnya. Kecerdasan buatan lebih mudah diduplikasi dan disebarkan. Mentransfer pengetahuan manusia dari satu orang ke orang lain butuh proses dan waktu lama. Disamping itu suatu keahlian tidak akan pernah bisa diduplikasi secara lengkap. Sedangkan jika pengetahuan terletak pada suatu sistem komputer, pengetahuan tersebuat dapat ditransfer atau disalin dengan mudah dan cepat dari satu komputer ke komputer lain Kecerdasan buatan lebih murah dibanding dengan kecerdasan alami. Menyediakan layanan komputer akan lebih mudah dan lebih murah dibanding dengan harus mendatangkan seseorang untuk mengerjakan sejumlah pekerjaan dalam jangka waktu yang sangat lama. Kecerdasan buatan bersifat konsisten. Hal ini disebabkan karena kecerdasan busatan adalah bagian dari teknologi komputer. Sedangkan kecerdasan alami senantiasa berubah-ubah. Kecerdasan buatan dapat didokumentasikan. Keputusan yang dibuat komputer dapat didokumentasikan dengan mudah dengan melacak setiap aktivitas dari sistem tersebut. Kecerdasan alami sangat sulit untuk direproduksi. Kecerdasan buatan dapat mengerjakan pekerjaan lebih cepat dibanding dengan kecerdasan alami Kecerdasan buatan dapat mengerjakan pekerjaan lebih baik dibanding dengan kecerdasan alami. Keuntungan kecerdasan alami: Kreatif. Kemampuan untuk menambah ataupun memenuhi pengetahuan itu sangat melekat pada jiwa manusia. Pada kecerdasan buatan, untuk menambah pengetahuan harus dilakukan melalui sistem yang dibangun Kecerdasan alami memungkinkan orang untuk menggunakan pengalaman secara langsung. Sedangkan pada kecerdasan buatan harus bekerja dengan input-input simbolik Pemikiran manusia dapat digunakan secara luas, sedangkan kecerdasan buatan sangat terbatas. Beberapa program AI (1956 – 1966) -Logic Theorist, diperkenalkan pada Dartmouth Conference, dapat membuktikan teorema-teorema matematika •Sad Sam (Robert K Lindsay – 1960), dapat mengetahui kalimat sederhana yang ditulis dalam bahasa Inggris dan mampu memberikan jawaban berdasarkan fakta yang didengar dalam sebuah percakapan • -ELIZA diprogram Joseph Weizenbaum (1967), mampu memberi terapi terhadap pasien dengan memberikan beberapa pertanyaan