PREDIKSI KEBANGKRUTAN PERUSAHAAN MENGGUNAKAN ARTIFICIAL NEURAL NETWORK
Cynthia G.Y.P
Matematika, Institut Teknologi Sepuluh Nopember, Surabaya, Indonesia cynthia_gyp@yahoo.com
Abstrak
Suatu perusahaan didirikan bukan untuk mengalami kebangkrutan, untuk itu diperlukan suatu alat yang dapat digunakan sebagai sistem peringatan dini. Oleh karena itu dalam paper ini mengangkat Masalah tentang bagaimana memprediksi kebangkrutan perusahaan yang disebabkan oleh kesulitan keuangan dengan menggunakan analisa data laporan keuangan selama beberapa periode tertentu yang nantinya terangkum dalam rasio keuangan perusahaan. Metode yang digunakan untuk mengolah data rasio keuangan sehingga nantinya dapat memprediksi keadaan perusahaan ke depan adalah Jaringan Syaraf Tiruan (Artificial Neural network) dengan menggunakan fungsi training algoritma Backpropagation. Dengan fungsi training tersebut nantinya didapatkan model perusahaan yang mengalami kebangkrutan dan yang tidak mengalami kebangkrutan sehingga model tersebut dapat digunakan untuk memprediksi kondisi perusahaan yang sejenis untuk beberapa periode ke depan. Dalam penerapannya terbukti algoritma Backpropagation mampu memprediksi kebangkrutan perusahaan akibat kesulitan keuangan dengan tingkat keakuratan mencapai lebih dari sama dengan 80%.
Kata Kunci : PrediksiKebangkrutan Perusahaan, Deteksi Kesulitan Keuangan, Jaringan Syaraf Tiruan, Algoritma Backpropagation, Financial Distress Detection
1. Pendahuluan
Kebangkrutan adalah kesulitan keuangan
yang sangat parah sehingga perusahaan tidak
mampu untuk menjalankan operasi perusahaan
dengan baik. Sedangkan kesulitan keuangan
(
financial distress
) adalah likuiditas yang mungkin
sebagai awal kebangkrutan. Tentunya kesulitan
keuangan di Indonesia baik dalam perusahaan skala
kecil, menengah, ataupun besar menjadi momok
bagi seluruh elemen baik itu pemilik perusahaan
maupun karyawan yang bekerja di dalamnya.
Sedangkan di Indonesia, studi tentang prediksi
kebangkrutan akibat kesulitan keuangan masih
jarang dilakukan, karena sulitnya mencari data
keuangan perusahaan di Indonesia dan atau
bangkrut yang dipublikasikan. Dimana ketika
sebuah perusahaan itu bangkrut maka jumlah
pengangguran di Indonesia akan semakin banyak,
sehingga perekonomian di Indonesia tidak kunjung
membaik.
Dalam proses identifikasi dibutuhkan suatu
metode untuk mempelajari model perusahaan yang
mengalami kebangkrutan dan perusahaan yang
tidak mengalami kebangkrutan, yaitu dengan
jaringan syaraf tiruan sepervised learning
(pembelajaran terawasi) sehingga dipilih metode
JST - Backpropagation. Jaringan Syaraf Tiruan
(JST) merupakan salah satu sistem pemrosesan
informasi yang didesain dengan menirukan
cara kerja otak manusia dalam menyelesaikan
suatu masalah dengan melakukan proses
belajar melalui perubahan bobot sinapsisnya.
Jaringan syaraf tiruan memiliki kemampuan
untuk mempelajari dependensi secara langsung
dari data historis tanpa perlu memilih model
yang cocok sehingga dapat memberikan
keputusan terhadap data yang belum pernah di
pelajari.
2. Data dan Metode ANN-Backpropagation 2.1 Rasio Keuangan
Analisis laporan keuangan merupakan
alat yang sangat penting untuk mengetahui
posisi keuangan perusahaan serta hasil-hasil
yang telah dicapai sehubungan dengan
pemilihan strategi perusahaan yang telah
dilaksanakan.
Rasio keuangan dapat digunakan untuk
membantu mengevaluasi laporan keuangan,
yaitu untuk mengungkapkan kekuatan dan
kelemahan relatif suatu perusahaan
dibandingkan dengan perusahaan lain dalam
industri yang sama, dan untuk menunjukkan
apakah posisi keuangan membaik atau memburuk
selama suatu waktu.
Rasio keuangan yang digunakan adalah rasio
keuangan model altman yaitu :
1. X1 = Networking Capital to Total Assets, rasio
ini menunjukkan kemampuan perusahaan untuk
menghasilkan modal kerja bersih dari total aktiva
yang dimilikinya.
2. X2 = Retained Earnings to Total Assets, rasio ini
menunjukkan kemampuan perusahaan untuk
menghasilkan laba ditahan dari total aktiva
perusahaan.
3. X3 = Earning Before Interest and tax to Total
Assest, Rasio ini menunjukkan kemampuan
perusahaan untuk menghasilkan laba dari aktiva
perusahaan sebelum pembayaran bunga dan pajak.
4. X4 = Market Value of Equity to Book Value of
Debt, rasio ini menunjukkan kemampuan
perusahaan untuk memenuhi kewajiban-kewajiban
dari nilai pasar modal sendiri (saham biasa). Nilai
pasar modal sendiri diperoleh dengan mengalikan
jumlah lembar saham yang biasa beredar dengan
harga pasar per-lembar saham biasa.
5. X5 = Sales to Total Assets, Rasio ini
mencerminkan efisiensi manajemen dalam
menggunakan keseluruhan aktiva perusahaan untuk
menghasilkan penjualan dan mendapatkan laba.
2.2 Artificial Neural Network
Jaringan Syaraf Tiruan (artificial neural
network) atau disingkat JST adalah salah satu cabang dari ilmu kecerdasan buatan dan merupakan cara atau alat untuk memecahkan masalah di bidang-bidang pengelompokan dan pengenalan pola. Jaringan syaraf tiruan telah dikembangkan dengan menggunakan model matematis untuk menirukan cara kerja jaringan syaraf biologis, dengan berdasarkan asumsi-asumsi:
1.Pengolah informasi terdiri dari elemen-elemen
sederhana yang disebut neuron.
2.Sinyal dilewatkan dari satu neuron ke neuron yang
lain melalui suatu hubungan tertentu.
3.Tiap hubungan mempunyai ukuran tersendiri yang
disebut bobot.
4.Tiap neuron mempergunakan fungsi aktivasi terhadap
masukan yang diterimannya untuk menentukan sinyal keluaran.
Gambar 1. Struktur dasar jaringan syaraf
Gambar 2. struktur sederhana sebuah neuron
Pada proses pembelajaran dalam JST terdapat 2 kategori yaitu :
1. Pembelajaran terawasi (Supervised Learning), yaitu jika keluaran yang diharapkan telah diketahui sebelumnya. Ada beberapa metode dalam proses
belajar terawasi, diantaranya Delta Rule,
Backpropagation atau Generalized Delta Rule dan
Counterpropagation.
2. Pembelajaran tak terawasi (Unsupervised Learning), pada metode pembelajaran tak terawasi ini tidak memerlukan target keluaran. Pada metode ini, tidak dapat ditentukan seperti apakah hasil yang diharapkan selama proses pembelajaran. Metode yang dipakai dalam proses belajar tak terawasi ini
antara lain Kohonen Self Organizing Maps.
2.3 Algoritma Backpropagation
Training jaringan dengan backpropagation
meliputi tiga tahap, yaitu: feedforward dari pola
inputtraining, perhitungan error propagasi balik (
backpropagation of error ) yang bersangkutan dan
pembaharuan ( adjustment ) bobot dan bias. Setelah
proses training, aplikasi jaringan hanya meliputi
perhitungan feedforward. Meskipun proses
training lambat, net yang dilatih dapat
menghasilkan output sangat cepat. Variasi
backpropagation telah banyak dikembangkan
untuk meningkatkan kecepatan proses training.
X1 X2 Bankrupt 0 X3 Not bankrupt 1 X4 X5
Gambar 3. Arsitektur layer JST – Backprpagation yang digunakan
Algoritma JST Backpropagation yaitu :
Step-0 Inisialisasi nilai bobot dengan nilai acak kecil
Step-1 Selama kondisi berhenti masih belum terpenuhi, kerjakan step 2 – 9
Step-2 Untuk setiap pasangan pelatihan (training) kerjakan step 3 – 8
Step-3 Setiap unit input (Xi, i=1,…,n) menerima sinyal
inputxi dan menyebarkan sinyal itu ke seluruh unit pada
layer berikutnya (hidden layer)
Step-4 Setiap unit dalam ( Zj, j=1,…,p ) hitung nilai
input dengan menggunakan nilai bobotnya :
z in
j jx
i i n_
=
+
=∑
υ
0υ
1 ij jk)
Selanjutnya hitung nilai output dengan menggunakan fungsi aktivasi yang dipilih :
zj = f ( z_inj )
Hasil fungsi tersebut dikirim ke semua unit pada layer berikutnya (unit output)
Step-5 Untuk tiap unit output ( Yk, k=1,..,m ) hitung nilai
input dengan menggunakan nilai bobot-nya :
y in
kw
kz w
j j p_
=
+
=∑
0 1Kemudian hitung nilai output dengan menggunakan fungsi aktifasi :
y
k=
f y in
( _
k)
Step-6 Setiap unit output ( Yk, k=1,..,m ) menerima pola
target yang bersesuaian dengan pola input dan
kemudian hitung error informasi :
δ
k=
(
t
k−
y
k)
f
( _
y in
k'
Kemudian hitung koreksi nilai bobot yang akan
digunakan untuk memperbaharui nilai bobot wjk. :
Δ
w
jk=
αδ
kz
jHitung koreksi nilai bias yang akan digunakan untuk
memperbaharui nilai w0k :
Δ
w
0k=
αδ
kdan nilai
δ
k dikirim ke unit pada layer sebelumnyaStep-7 Setiap unit dalam ( Zj, j=1,…,p ) hitung delta
input yang berasal dari unit pada layer di atasnya :
δ
_
in
jδ
kw
k m=
=∑
1 jk j)Kemudian nilai tersebut dikalikan dengan nilai turunan dari fungsi aktivasi untuk menghitung error informasi :
δ
j =δ
_in fj ( _z in 'Hitung koreksi nilai bobot yang kemudian digunakan
untuk memperbaharui nilaiυij :
Δ
υ
ij=
αδ
jx
idan hitung nilai koreksi bias yang kemudian digunakan
untuk memperbaharui
υ
oj :Δ
υ
oj=
αδ
jStep-8 Setiap unit output ( Yk, k=1,...,m ) update bias
dan bobotnya ( j=0,…,p ) :
w
jk(
new
)
=
w
jk(
old
)
+ Δ
w
jkSetiap unit hidden ( Zj, j=1,…,p ) update bias dan
bobotnya ( i=0,…,n) :
υ
ij(
new
)
=
υ
ij(
old
)
+ Δ
υ
ijStep-9 Uji apakah kondisi berhenti sudah dipenuhi? Fungsi aktivasi untuk jaringan
backpropagation memiliki beberapa karakteristik yang penting. Fungsi aktivasi tersebut kontinu, dapat diturunkan dan tidak turun secara monoton. Untuk efesiensi perhitungan, turunan dari fungsi aktivasi tersebut juga mudah dihitung. Salah satu tipe fungsi aktivasi yang paling banyak digunakan adalah fungsi sigmoid biner, yang mempunyai interval (0 ,1) dan difenisikan sebagai berikut:
( )
( )
x
x
−
+
=
exp
1
1
1f
Dan dengan dungsi turunan :
( )
x f1( )
x[
f1( )
x]
1' 1−
f =
3. Analisis Perancangan dan Implementasi Sistem
3.1 Analisis Sistem
Telah disinggung pada pembahasan sebelumnya bahwa perangkat lunak yang akan dibuat berkaitan dengan laporan keuangan sebuah perusahaan. Dimana nanti perangkat lunak yang akan dibuat memiliki fungsi untuk mendeteksi kebangkrutan perusahaan yang disebabkan oleh kesulitan keuangan (financial distress).
Algoritma Backpropagation yang
digunakan terdiri dari 3 proses utama yaitu proses feedforward, training backpropagation, dan update bobot. Arsitektur layer terdiri dari 5 input node, 5 jumlah node hidden, dan 1 output node. Setiap node input memiliki koneksi bobot pada masing-masing hidden layer yang ada dan setiap hidden layer memiliki koneksi bobot yang mengarah pada satu output node.
3.2 Perancangan Sistem
Arsitektur layer yang akan digunakan adalah 3 layer network terdiri dari layer input, 1 hidden layer, dan layer output. Dimana Layer tersebut memiliki 5 input nodes yaitu :
X1: Working capital/total assets X2: Retained earnings/total assets
X3: Earnings before interest and taxes/total assets X4: Market value of equity/total debt
X5: Sales/total assets
Memiliki single output node berupa hasil akhir dalam menentukan peramalan untuk setiap kondisi perusahaan berdasarkan analisa rasio keuangannya. Untuk proses training data set terdiri dari 63
perusahaan dan untuk proses testing data set terdiri dari 13 Perusahaan.
kekurangan dan kelebihan perangkat perangkat
lunak tersebut ditinjau dari segi sistem yaitu, Kekurangan : masih kurang mendetail, hanya terdapat 2 output prediksi yaitu 0 dan 1 atau dengan kata lain bangkrut atau tidak bangkrut.
Kelebihan : dapat memprediksi situasi perusahaan ke depan tergantung dari lamanya durasi laporan keuangan perusahaan yang diambil sampel, user friendly.
3.3 Implementasi Sistem
Pada JST Backpropagation digunakan untuk
aplikasi training meliputi inisialisasi bobot training,
proses feedforward, update bobot, dan tes kondisi
berhenti.
Sebelum melakukan implementasi JST, diperlukan proses inisialisasi bobot dan parameter pelatihan yang akan digunakan acuan dalam penghitungan selanjutnya. Pada proses inisialisasi bobot awal, bobot yang digunakan adalah bobot secara acak antara 0 sampai 1. Hal ini terangkum dalam fungsi inisialisasi bobot awal.
Setelah bobot awal di-inisialisasi, maka selanjutnya tahap implementasi algoritma JST Backpropagation dengan mengambil data rasio keuangan dari database yang telah ada.
Kemudian dengan data tersebut diproses menggunakan bobot awal yang di-generate secara random selama jumlah epoch (satuan putaran training data) memenuhi untuk mendapatkan error yang stabil dan semakin kecil serta bobot baru yang nantinya digunakan pada proses testing data.
Berdasarkan fungsinya data yang digunakan dalam program ini terdiri dari 2 jenis yaitu :
1. Data training, yaitu data yang digunakan untuk proses training algoritma JST – Backpropagation dan berfungsi untuk menciptakan model perusahaan yang didefinisikan oleh bobot yang nantinya terbentuk.
2. Data testing, yaitu data yang digunakan untuk mengecek kevalidan bobot baru yang telah dibentuk apakah telah mampu memprediksi kondisi perusahaan.
Berdasarkan jenis perusahaannya data yang digunakan dalam program ini terdiri dari 2 jenis yaitu : 1. Data rasio keuangan perusahaan yang telah mengalami kebangkrutan, digunakan untuk mengetahui model perusahaan yang bangkrut.
2. Data rasio keuangan perusahaan yang tidak mengalami kebangkrutan, digunakan untuk mengetahui model perusahaan yang tidak bangkrut.
3.4 Mean Square Error(MSE)
Nilai mean square error (MSE) pada satu siklus
pelatihan (langkah 2 – 9, dimana seluruh rekord
dipresentasikan satu kali) adalah nilai kesalahan error =
nilai keluaran - nilai masukan) rata-rata dari seluruh
rekord (tupple) yang dipresentasikan ke JST dan dirumuskan sebagai:
cord
Jumlah
error
MSE
Re
2∑
=
Semakin kecil MSE, JST semakin kecil kesalahannya dalam memprediksi kelas dari rekord yang baru. Maka, pelatihan JST ditujukan untuk memperkecil MSE dari satu siklus ke siklus
berikutnya sampai selisih nilai MSE pada siklus ini dengan siklus sebelumnya lebih kecil atau sama dengan batas minimal yang diberikan (epsilon).
4. Uji Coba dan Pembahasan
Proses testing dilakukan dengan
menggunakan hasil pelatihan JST yang disimpan kedalam bentuk file (*.mdb) dengan beberapa inputan parameter seperti jumlah maksimal
maksimal epoh dan nilai alpha. Untuk melakukan
pengujian testing JST Backpropagation dataset
yang dipersiapkan antara lain dengan 13 record
data dan 5 field data.
Dari hasil uji coba didapat data sebagai berikut : Variabel Jml Keterangan Jml Alpha 0,5 Epoch 1000 Hasil Prediksi sesuai Data 13 Data Training 62 Data Testing 13 Hasil Prediksi sesuai Kenyataan 13
Tabel 1:Tabel hasil uji coba data testing metode JST-Backpropagation
Hal ini disebabkan sedikitnya data training yang digunakan untuk mendapatkan model antara perusahaan yang mengalami kebangkrutan dan perusahaan yang tidak mengalami kebangkrutan sehingga pada uji coba data testing, algoritma dapat memprediksi semua kondisi perusahaan dengan benar.
5. Kesimpulan dan Saran
Dari implementasi dan uji coba perangkat
lunak deteksi kebangkrutan perusahaan
menggunakan JST Backpropagation, dapat diperoleh kesimpulan sebagai berikut:
1. Proses training untuk mendapatkan bobot yang
sesuai membutuhkan nilai alpha = 0,5 dan epoch = 1000, selain itu dapat juga menggunakan deltaMSE untuk mengetahui nilai error yang terjadi sehingga tingkat kevalidan program meningkat.
2. Grafik MSE pada program menggambarkan
kestabilan error yang terjadi pada proses training, semakin kecil error yang terjadi maka grafik yang
ada akan cenderung membentuk garis lurus karena deltaMSE yang terjadi semakin kecil.
3. Awal kebangkrutan perusahaan disebabkan oleh
kesulitan keuangan yang digambarkan pada program ini. Jadi dengan kelima rasio model altman tersebut telah dapat memprediksi kondisi perusahaan ke depan.
4. Rasio-rasio keuangan yang digunakan untuk proses
prediksi kebangrutan perusahaan ini adalah : a. X1 = Networking Capital to Total Assets
b. X2 = Retained Earnings to Total Assets
c. X3 = Earnings Before Interest and tax to Total Assets
d. X4 = Market Value of Equity to Book Value of Debt
e. X5 = Sales to Total Assets
Berdasarkan evaluasi yang dilakukan terhadap perangkat lunak, ada beberapa saran yang perlu dipertimbangkan dalam pengembangan tugas akhir ini, antara lain sebagai berikut:
1. Aplikasi ini baru dapat mengenali pola
kebangkrutan perusahaan berdasarkan kesulitan keuangan yang terjadi (digambarkan dalam nilai rasio keuangan perusahaan), jadi belum ada parameter lain untuk menentukan kebangkrutan perusahaan, sehingga kedepannya dapat dikembangkan dengan menggunakan analisa sistem dan pasar.
2. Program masih mengeluarkan dua output eksak
yaitu 0 dan 1 untuk menggambarkan kondisi perusahaan sehingga kedepannya dapat dikembangkan denan menggunakan hybrid backpro-fuzzy untuk pengelompokan kondisi perusahaan yang lebih mendetail.
3. Program masih belum bisa menganalisa
kebangkrutan secara detail sehingga belum bisa memberikan solusi terhadap kondisi perusahaan yang ada saat ini.
6. Daftar Pustaka
[1] Back, Babro. (1995). ”Intelligent Information
System within Bussiness : Bankruptcy Predictions using Neural Networks”, Proceedings
of the 3rd Europian Conference on Information
System. Athens,Greece.
[2] Hendratto, Djoko. (2005). “Studi Tentang Analisis
Laporan Keuangan Secara Elektronik”. Jakarta:Departemen Keuangan Republik Indonesia.
[3] Hin, Kyung-shik. (2000). “Neuro-genetic
Approach for Bankruptcy Prediction:A Comparison to Back-propagation Algorithms”,
Graduate School Management. Korea
Advanced Institute of Science and Technology.
[4] Kumar, Kuldeep. (2004). “Artificial Intelligence in
Financial Distress Prediction”, School of Information Technology, Faculty of Business Bond University. Australia
[5] Mukamala, S. (2006). “Computational Intelligent
Techniques for Financial Distress Detection”,
Journal of Computational Intelligence Research , X, pp. 60-65.
[6] Trippi, Robert R. (1996). “Neural Network in
Finance and Investing”. Revised Edition. United States of America:McGraw-Hill company.
[7] Yu-Chiang Hu. (2006). “Developing Financial
Distress Prediction Models”, A study of US, Europe, and Japan Retail Performance.