• Tidak ada hasil yang ditemukan

P11 Word Vector .pdf Official Site of REZA CHANDRA Gunadarma University P11 Word Vector

N/A
N/A
Protected

Academic year: 2018

Membagikan "P11 Word Vector .pdf Official Site of REZA CHANDRA Gunadarma University P11 Word Vector"

Copied!
21
0
0

Teks penuh

(1)

WORD VECTOR REPRESENTATION

(2)

Apa itu Word Vector Representation?

Umumnya, pekerjaan machine learning yang

seringkali

digunakan

adalah

untuk

mengklasifikasikan

satu

permasalahan

menjadi beberapa kelompok.

(3)

Apa itu Word Vector Representation?

Contoh task paling sederhananya adalah sentiment

analysis.

Sentiment analysis adalah satu usaha di bidang machine

learning untuk menilai bagaimana penilaian publik atau

kelompok orang tertentu terhadap objek yang diobservasi.

(4)

Word Vector Representation

Komputer bisa mempelajari karakter dari data melalui feature extraction.

Bebagai jenis feature diambil dari data, kemudian dilakukan pembelajaran secara khusus pada feature tersebut.

Word vector representation merupakan hasil pembelajaran dari algoritma deep learning.

Setiap kata memiliki vektor yang mewakili makna dari kata tersebut.

Bentuk vektornya bervariasi dalam hal dimensinya.

Word vector representation akrab juga disebut dengan terminologi: “word

(5)

Word Vector Representation

Word2Vec merupakan nama word vector representation yang dibuat oleh Google (https://code.google.com/archive/p/word2vec/).

Sebagai gambaran bahwa vektor dari Word2Vec ini bisa mewakili makna dari sebuah kata, kita bisa mengukur beberapa vektor sebagai perbandingan.

Apabila kita mengukur jarak antara vektor kata “France” dengan

“Paris” dan vektor kata “Italy” dengan “Rome”, maka akan ditemukan bahwa jaraknya akan muncul pada angka yang berdekatan.

• Hal ini dikarenakan secara mendasar kedua kata tersebut sama-sama merupakan nama negara dan ibukotanya.

(6)
(7)

Word Vector Representation

Word embeddings yang dihasilkan oleh Stanford ini dinamakan dengan Glove

Jika pada Word2Vec dimensi vektornya adalah 300, pada Glove memiliki beberapa variasi dimensi vektornya yaitu 50, 100, 200 hingga 300.

(8)

Word Vector Representation

Setiap kata dicirikan dengan 50 angka yang

merupakan hasil pelatihan dengan menggunakan

algoritma deep learning.

Karena keunikannya dalam mendefinisikan arti dari

(9)

Word Vector Representation dengan

Gensim

Model CBOW mencoba untuk memproyeksikan vektor kata-kata konteks untuk memprediksi vektor kata target , sedangkan, model Skip-Gram adalah kebalikannya, yaitu mencoba memprediksi vektor kata-kata yang ada di konteks diberikan vektor kata tertentu .

Dari sini, model CBOW cenderung lebih mudah smooth terhadap informasi distribusional karena semua kata-kata konteks langsung diproses menjadi satu vektor sebelum akhirnya digunakan untuk memprediksi vektor kata target.

Oleh karena itu, untuk corpus yang lebih kecil ukurannya, model CBOW cenderung lebih baik. Sebaliknya, model Skip-Gram membuat sepasang kata target dan konteks sebagai sebuah instance sehingga Skip-Gram cenderung lebih baik ketika ukuran corpus sangat besar.

(10)

Word Vector Representation dengan

Gensim

 Pertama-tama, kita perlu import terlebih dahulu berbagai macam

library untuk pekerjaan kita kali ini.

 Perhatikan bahwa PCA (Principal Component Analysis) dan

matplotlib akan digunakan untuk melakukan plotting vektor kata ke bidang 2 dimensi.

 Kita akan memvisualisasikan beberapa kata dan melihat

kedekatannya satu sama lain.

import gensim

import numpy as np import os

import matplotlib.pyplot as plt

(11)

Word Vector Representation dengan

Gensim

 Kemudian, kita akan membuat wrapper class untuk membaca setiap

file teks pada korpus, dan juga membaca baris demi baris pada file teks secara efisien.

 Hal ini dapat dicapai dengan penggunaan generator yield pada

python.

 Dengan fitur ini, kita tidak perlu memuat seluruh teks pada korpus di

memori sebelum melatih model Word2Vec kita.

class MySentences(object):

def __init__(self, dirname): self.dirname = dirname

def __iter__(self): #untuk setiap file

for fname in os.listdir(self.dirname): #untuk setiap baris

(12)

Word Vector Representation dengan

Gensim

Berikutnya adalah menghidupkan object dari kelas iterator

corpus tersebut.

Perhatikan bahwa corpus Anda harus diletakkan di dalam

sebuah folder yang didefinisikan pada argumen berikut

(misal, folder corpus).

Letakkan semua file teks corpus di dalam folder tersebut.

(13)

Word Vector Representation dengan

Gensim

Kemudian, bagian berikut adalah intinya, yaitu melatih

model Word2Vec kita menggunakan corpus dan juga

corpus iterator yang sudah kita definisikan sebelumnya.

Penjelasan argumen yang penting ada di bagian

komentar.

# sg = 0 -> CBOW, sg = 1 -> skip-gram

# size: dimensionality dari vektor kata yang dihasilkan

# min_count: banyaknya frekuensi miminal sebuah kata, jika ingin dipertimbangkan dalam proses

# window: range antara kata-kata konteks dengan posisi current word

(14)

Word Vector Representation dengan

Gensim

Jika ingin menyimpan model yang sudah di latih,

serta memuat model yang sebelumnya disimpan,

dapat menggunakan potongan kode berikut.

# save model

model.save('./mymodel')

# load model

(15)

Word Vector Representation dengan

Gensim

Potongan kode berikut adalah beberapa API yang

disediakan oleh gensim untuk kebutuhan operasi

vektor, seperti menghitung kemiripan vektor antara

2 kata, dan yang lainnya.

# mendapatkan representasi vektor dari sebuah kata

print (model.wv['dia'])

# menghitung similarity vektor antara dua kata

print (model.wv.similarity('dia', 'kita'))

# mencari top-N similar words

(16)

Plotting Word Vectors

Sekarang, kita coba plot vektor dari beberapa kata

untuk

melihat

visualisasi

kedakatan

vektor

dari

beberapa kata.

Kata-kata yang ingin ditampilkan plot vektornya dapat

diletakkan pada variable word_list berikut.

# kata-kata yang ingin kita plot vektornya

word_list = ['kita', 'dia', 'Anda', 'operasi', 'katarak']

# daftar vektor dari kata-kata tersebut

(17)

Plotting Word Vectors

Selanjutnya, agar bisa di-plot di bidang 2 dimensi, kita

perlu melakukan reduksi dimensi vektor kata ke vektor

2 dimensi.

Kita dapat menggunakan berbagai macam teknik

seperti PCA (Principal Component Analysis) dan t-SNE.

# reduksi dimensi vektor ke 2D agar bisa di-plot pada bidang 2D dimred = PCA(n_components=2, copy=False, whiten=True)

(18)

Plotting Word Vectors

 Terakhir, kita buat fungsi untuk melakukan plot vektor dari kata-kata

tersebut (yang sudah direduksi ke dimensi 2).

def plot(datas, labels, fc='yellow'): # plot the dots

plt.subplots_adjust(bottom = 0.1)

plt.scatter(datas[:, 0], datas[:, 1], marker='o') # annotate labels

for label, x, y in zip(labels, datas[:, 0], datas[:, 1]): plt.annotate( \

label, \

xy=(x, y), xytext=(-15, 15), \

textcoords='offset points', ha='right', va='bottom', \ bbox=dict(boxstyle='round,pad=0.3', fc=fc, alpha=0.5), \

arrowprops=dict(arrowstyle = '->', connectionstyle='arc3,rad=0')) plt.show()

# kita plot !

(19)
(20)

Referensi

https://socs.binus.ac.id/2016/12/22/word-vector-representation-word2vec-glove/

(21)

Referensi

Dokumen terkait

Seperti aplikasi penggabungan akad yang diharamkan terdapat dalam hadis adalah bai‟ al-„inah, penggabungan jual beli dengan salaf (hutang).Oleh sebab itu

Rumusan masalah penelitian adalah: 1) Bagaimana peran guru dan orang tua dalam menumbuhkan minat membaca al- Qur’an pada peserta didik di MI Diniyyah Putri lampung..

Rangkaian huruf dalam sebuah kata atau kalimat bukan hanya berarti sebuah makna yang mengacu pada sebuah objek atau gagasan, tetapi juga memiliki kemampuan untuk

Penelitian ini menggunakan word embedding yaitu Glove Embedding untuk mengubah seluruh kata yang ada dalam data menjadi vektor dan akan diidentifikasi menggunakan

fotokopi kartu keluarga ayah atau ibu warga negara Indonesia... awak Alat

usaha kerajinan tas Aceh di Desa Ulee Madon, sedangkan variabel jam kerja berpengaruh positif tetapi tidak signifikan. Berdasarkan hasil penelitian yang dilakukan

Pola asuh orang tua adalah pola perilaku interaksi yang digunakan orang tua untuk berhubungan dengan anak yang meliputi mendidik, membimbing, mendisiplinkan dan melindungi

Akan tetapi beliau diakui sebagai Nabi oleh orang-orang Madinah dan beliau sungguh-sungguh diminta untuk datang ke kota mereka, dengan harapan bahwa melalui