Giter Site home page Giter Site logo

dlhnx / sastrawi Goto Github PK

View Code? Open in Web Editor NEW

This project forked from sastrawi/sastrawi

1.0 1.0 0.0 1.53 MB

High quality PHP library for stemming Indonesian Language (Bahasa)

Home Page: http://sastrawi.github.io

License: MIT License

PHP 100.00%

sastrawi's Introduction

Sastrawi

Sastrawi is a simple PHP library which provides stemming of words in Indonesian Language (Bahasa). Despite its simplicity, this library is designed to be high quality and well documented. For more information in english, see README.

Development Master Releases Statistics
Build Status Code Coverage Scrutinizer Code Quality Build Status Latest Stable Version Total Downloads

Stemming

Indonesia menempati posisi ke-4 negara berpenduduk terbanyak di dunia. Berdasarkan sumber, pada 2013 tercatat Lebih dari 64 juta pengguna facebook berasal dari Indonesia.

Dalam aktivitas sehari-hari, pengguna internet di Indonesia menggunakan Bahasa Indonesia sebagai bahasa utama. Oleh sebab itu, para developer membutuhkan suatu cara untuk meningkatkan kualitas pencarian dalam bahasa Indonesia. Salah satu cara itu adalah dengan melakukan stemming.

Stemming adalah proses mengubah kata berimbuhan menjadi kata dasar. Contohnya:

  • menahan => tahan
  • berbalas-balasan => balas

Contoh kasus

Katakanlah sebuah blog post berisi:

Rakyat memenuhi halaman gedung untuk menyuarakan isi hatinya.

Pencarian dengan query di bawah ini tidak akan menemukan post di atas,

SELECT * FROM posts WHERE content LIKE '%suara%'

Bahkan metode fuzzy search atau full text search membutuhkan proses stemming untuk meningkatkan kualitas pencarian. Salah satu cara untuk meningkatkannya yaitu dengan menanggalkan imbuhan-imbuhan hingga hanya menyisakan kata dasar seperti berikut:

rakyat penuh halaman gedung suara isi hati

Lalu kata kunci pencarian juga dijadikan kata dasar:

Bersuara => suara

Sastrawi

  • Library PHP untuk stemming Bahasa Indonesia.
  • Mudah diintegrasikan dengan framework / package lainnya.
  • Mempunyai API yang sederhana dan mudah digunakan.

Demo

http://sastrawi.github.io

Cara Install

Sastrawi dapat diinstall dengan Composer.

  1. Buka terminal (command line) dan arahkan ke directory project Anda.
  2. Download Composer sehingga file composer.phar berada di directory tersebut.
  3. Tambahkan sastrawi ke file composer.json Anda :
php composer.phar require sastrawi/sastrawi:~1

Jika Anda masih belum memahami bagaimana cara menggunakan Composer, silahkan baca Getting Started with Composer.

Penggunaan

Copy kode berikut di directory project anda. Lalu jalankan file tersebut.

<?php
// demo.php

// include composer autoloader
require_once __DIR__ . '/vendor/autoload.php';

// create stemmer
$stemmerFactory = new \Sastrawi\Stemmer\StemmerFactory();
$stemmer  = $stemmerFactory->createStemmer();

// stem
$sentence = 'Perekonomian Indonesia sedang dalam pertumbuhan yang membanggakan';
$output   = $stemmer->stem($sentence);

echo $output . "\n";
// will print:
// ekonomi indonesia sedang dalam tumbuh yang bangga

Pustaka

Algoritma

Algoritma yang digunakan pada library ini adalah hak intelektual masing-masing pemiliknya yang tertera di bawah ini. Lalu untuk meningkatkan kualitas kode, algoritma tersebut diterapkan ke dalam Object Oriented Design.

  • Algoritma Nazief dan Adriani
  • Asian J. 2007. Effective Techniques for Indonesian Text Retrieval. PhD thesis School of Computer Science and Information Technology RMIT University Australia
  • Arifin, A.Z., I.P.A.K. Mahendra dan H.T. Ciptaningtyas. 2009. Enhanced Confix Stripping Stemmer and Ants Algorithm for Classifying News Document in Indonesian Language, Proceeding of International Conference on Information & Communication Technology and Systems (ICTS)
  • A. D. Tahitoe, D. Purwitasari. 2010. Implementasi Modifikasi Enhanced Confix Stripping Stemmer Untuk Bahasa Indonesia dengan Metode Corpus Based Stemming, Institut Teknologi Sepuluh Nopember (ITS) โ€“ Surabaya, 60111, Indonesia

Kamus Kata Dasar

Proses stemming oleh Sastrawi sangat bergantung pada kamus kata dasar. Sastrawi menggunakan kamus kata dasar dari kateglo.com dengan sedikit perubahan.

Lisensi

Lisensi sastrawi adalah MIT License (MIT) sedangkan lisensi kamus kata dasar dari Kateglo adalah CC-BY-NC-SA 3.0. Untuk informasi lebih lengkap silahkan lihat Lisensi Sastrawi dan Lisensi isi Kateglo.

Informasi Lebih Lanjut

sastrawi's People

Contributors

andylibrian avatar andylib avatar

Stargazers

Roman avatar

Watchers

Daniel avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.