Skip to main content

Membuat N-Grams : Unigram, Bigram, Trigram Pada Java

N-Grams adalah potongan sejumlah karekter dari suatu string tertentu atau potongan jumlah (n) kata dari suatu kalimat. Jadi setiap string yang diproses akan menjadi potongan-potongan n kata.
N-grmas merupakan dasar dari pengolahan kalimat. Dengan implementasi N-Grams sebuah aplikasi dapat dikembangkan untuk spelling correction, word breaking dan text summarization. Bahkan Microsoft dan Google menggunakan model ini untuk pengembangan web mereka.

N-Grams ini akan mengambil sejumlah kata yang kita butuhkan dari sebuah kalimat. Seperti contohnya kalimat "Melody nampak sangat cantik", maka bentuk N-Grams dari kalimat tersebut adalah :
  1. Unigram : Melody, nampak, sangat, cantik
  2. Bigram    : Melody nampak, nampak sangat, sangat cantik
  3. Trigram  :  Melody nampak sangat, nampak sangat cantik
  4. dst,.
Lalu bagaimana mengimplementasikannya pada sebuah pemrograman? Salah satu bahasa yang bisa digunakan untuk N-Grams ini adalah Java. Berikut adalah kodenya :

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class NGram {

    public static List ngrams(int n, String str) {
        List ngrams = new ArrayList();
        String[] words = str.split(" ");
        for (int i = 0; i < words.length - n + 1; i++) {
            ngrams.add(concat(words, i, i + n));
        }
        return ngrams;
    }

    public static String concat(String[] words, int start, int end) {
        StringBuilder sb = new StringBuilder();
        for (int i = start; i < end; i++) {
            sb.append((i > start ? " " : "") + words[i]);
        }
        return sb.toString();
    }

    public static void main(String[] args) {

        String kalimat;
        int pilih = 0;
        

        while (pilih != 4) {
            Scanner s = new Scanner(System.in);
            Scanner s2 = new Scanner(System.in);
            System.out.println("1. Unigram");
            System.out.println("2. Bigram");
            System.out.println("3. Trigram");
            System.out.println("4. Exit");
            System.out.print("Plih N-Gram : ");
            pilih=s.nextInt();
            if (pilih > 0 && pilih < 5 && pilih!=4) {
                System.out.print("Masukan Kalimat : ");
                kalimat = s2.nextLine();
                
                if (pilih != 4) {
                    for (int n = pilih; n <= pilih; n++) {
                        for (String ngram : ngrams(n, kalimat)) {
                            System.out.println(ngram);
                        }
                        System.out.println();
                    }
                }
            }else{
                if (pilih != 4) {
                 System.out.println("Input Salah..");
                 System.out.println("=============");
                }
            }
        }
    }
}

Itulah cara Membuat N-Grams : Unigram, Bigram, Trigram Pada Java.

Terima kasih.

Comments

Popular posts from this blog

cara membuat menu Dropdown pada web responsif menggunakan Bootstrap

Menu Dropdown adalah menu yang berisi submenu dan submenu akan muncul jika tombol menu ditekan. Dan jika menu tersebut dibuat pada web responsif maka tampilan menu akan menyesuaikan dengan ukuran layar device yang digunakan untuk membuka halaman web. Dengan membuat menu pada web responsif memungkinkan pengunjung web yang membuka halaman web menggunakan smartphone akan mendapat tampilan desain web yang baik dan rapih, sehingga memudahkan pengunjung menjelajahi halaman sebuah web responsif. Lalu bagaimana cara membuat menu Dropdown pada web responsif menggunakan Bootstrap? Kamu tinggal memanggil class untuk menu Dropdown yang disediakan oleh Bootstrap. Berikut adalah uraian bagaimana cara membuat menu Dropdown pada web responsif menggunakan Bootstrap : <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/...

Pemrograman Java : Cara getText dan setText Pada Java GUI

Pada Java GUI untuk mendapatkan text yang user input kamu harus mengambil text dari text area atau bisa juga text field. Untuk melakukannya bisa menggunakan fungsi getText() yang ada pada Java. getText() adalah fungsi yang ada pada Java untuk mengambil teks yang diinput pada form. Lalu untuk memunculkan sebuah teks pada text area atau text field  dapat menggunakan fungsi setText(). Akan diberikan contoh form sebagai berikut untuk lebih memahami penggunaan setText() dan getText() pada Java. Berikut adalah Cara getText dan setText Pada Java GUI : Buatlah form pada JFrame seperti gambar diatas. Caranya hanya tinggal klik kanan pada package yang diinginkan new-->JFrame Form... Lalu buat form seperti berikut: Berikan nama variabel pada text field  sesuai kegunaan. Contohnya text field  jurusan akan diberi nama variabel "jurusan". Caranya klik kanan pada text field yang dikehendaki lalu pilih Change variable name. Ini untuk memudahkan menggunaka...

Membuat desain web responsif menggunakan Bootstrap

Desain web responsif adalah web dengan desain yang tampilannya dapat menyesuaikan pada semua ukuran device. Dengan demikian sebuah website akan selalu terlihat rapih jika dibuka pada semua jenis device . Banyak cara untuk membuat desain web responsif, diantaranya dengan menggunakan front-end framework dari Bootstrap. Dengan menggunakan Bootstrap kamu tidak perlu banyak menggunakan CSS, jQuery dan lainnya dalam pembuatan desain web responsif. Kamu hanya perlu memanggil atau menggunakan class yang sudah disediakan Bootstrap pada tag yang diinginkan dan otomatis tampilan web pada tag tersebut akan menjadi responsif. Lalu apa itu Bootstrap? Bootstrap adalah front-end framework gratis yang digunakan untuk pengembangan web yang lebih cepat dan mudah. Pada Bootstrap terdapat design templates berbasis HTML dan CSS untuk typography, forms, buttons, tables, navigation, modals, image carousels dan banyak lainnya, serta plugin JavaScript. Bootstrap juga memberikan kamu kemudahan...