Monday, December 11, 2017

Buku Pengolahan Citra Digital dengan Matlab - Classification Learner Example Datasets


Seiring dengan meningkatnya traffic dan kemudahan dalam mengelola content, kami mengucapkan banyak terima kasih kepada para pembaca setia pada blog www.softscients.web.id

Per 19 Maret 2020, kami sedang melakukan migrasi ke domain dan hosting yang lebih baik yaitu
Semoga dengan alamat domain dan hosting terbaru akan semakin memudahkan para pembaca dalam mencari materi/content. Migrasi dilakukan secara bertahap yang membutuhkan waktu yang cukup lama jadi jangan kuatir selama migrasi akan dilakukan secara hati-hati untuk memimalkan broken link


kalian bisa lanjut baca lagi di http://softscients.com/2020/03/26/buku-belajar-machine-learning-dengan-matlab-image-dataset/


Berikut penulis sajikan dataset yang mungkin berguna untuk melakukan banyak ujicoba teknik classifier https://www.mathworks.com/content/dam/mathworks/mathworks-dot-com/products/statistics/classification-learner/files/ClassificationLearner_Example_Datasets.mat
Terdiri dari

Fisher Iris

The Fisher Iris dataset consists of samples from three species of iris (Iris setosa, Iris virginica, and Iris versicolor). Features such as the length and the width of the sepals and petals were measured in centimeters.

Number of predictors: 4
Number of observations: 150
Number of classes: 3

Credit Rating

The credit rating dataset contains financial ratios and industry sectors information for a list of corporate customers. The response variable consists of credit ratings (AAA, AA, A, BBB, BB, B, CCC) assigned by a rating agency.

Number of predictors: 6
Number of observations: 3932
Number of classes: 7


Ovarian

The ovarian cancer dataset consists of high-resolution ovarian cancer data generated using the WCX2 protein array. The sample set includes 95 controls and 121 ovarian cancers.

Number of predictors: 100
Number of observations: 216
Number of classes: 2

Don’s Easter Egg

Don’s Easter Egg dataset is a simulated dataset that consists of only 2 variables and 2 classes. Since the separation boundary is highly nonlinear between the two classes, this makes for a challenging exploratory problem.

Number of predictors: 2
Number of observations: 1873
Number of classes: 2


Arrhythmia

The heart arrhythmia dataset consists of patient information and response variables that indicate the presence and absence of cardiac arrhythmia in the patient. In this medical diagnostic application, misclassifying patient as "normal" may have a more severe consequence than misclassifying a patient as "has arrhythmia."

Number of predictors: 279
Number of observations: 150
Number of classes: 16

Ionosphere

The ionosphere dataset comprises preprocessed signals obtained from a phased array of 16 high-frequency antennas. Good returned radar signals are those showing evidence of some type of structure in the ionosphere. Bad signals are those that pass through the ionosphere.

Number of predictors: 34
Number of observations: 351
Number of classes: 2

Buku belajar machine learning dengan matlab - Image Dataset


Seiring dengan meningkatnya traffic dan kemudahan dalam mengelola content, kami mengucapkan banyak terima kasih kepada para pembaca setia pada blog www.softscients.web.id

Per 19 Maret 2020, kami sedang melakukan migrasi ke domain dan hosting yang lebih baik yaitu
Semoga dengan alamat domain dan hosting terbaru akan semakin memudahkan para pembaca dalam mencari materi/content. Migrasi dilakukan secara bertahap yang membutuhkan waktu yang cukup lama jadi jangan kuatir selama migrasi akan dilakukan secara hati-hati untuk memimalkan broken link


kalian bisa lanjut baca lagi di http://softscients.com/2020/03/26/buku-pengolahan-citra-digital-dengan-matlab-classification-learner-example-datasets/


Bila kita bekerja dengan menggunakan machine learnig, tentu kita membutuhkan  beragam dataset. Penulis sajikan link berikut untuk dataset image beberapa category http://www.vision.caltech.edu/Image_Datasets/Caltech101/ berisi Pictures of objects belonging to 101 categories. About 40 to 800 images per category. Most categories have about 50 images. Collected in September 2003 by Fei-Fei Li, Marco Andreetto, and Marc 'Aurelio Ranzato.  The size of each image is roughly 300 x 200 pixels.

Sunday, December 3, 2017

Move - Sequence Matcher in python


Seiring dengan meningkatnya traffic dan kemudahan dalam mengelola content, kami mengucapkan banyak terima kasih kepada para pembaca setia pada blog www.softscients.web.id

Per 19 Maret 2020, kami sedang melakukan migrasi ke domain dan hosting yang lebih baik yaitu
Semoga dengan alamat domain dan hosting terbaru akan semakin memudahkan para pembaca dalam mencari materi/content. Migrasi dilakukan secara bertahap yang membutuhkan waktu yang cukup lama jadi jangan kuatir selama migrasi akan dilakukan secara hati-hati untuk memimalkan broken link


kalian bisa lanjut baca lagi di  http://softscients.com/2020/03/30/buku-pemrograman-python-mengukur-kemiripan-diantara-2-string/



Adalakanya kita membutuhkan pencocokan string dalam pengolahan data, misalkan untuk spelling karena user bisa saja melakukan kesalahan ejaan. Penulis biasa menggunakan Sequnce Matcher untuk melakukan hal demikian. Misalkan ada sebuah nama desa ‘Menjalin’ ketika user mengetikan ‘Mnjalin’ berapa nilai ratio kecocokannya?

Friday, November 24, 2017

move - Spyder Attribute Error module object has no attribute _base


Seiring dengan meningkatnya traffic dan kemudahan dalam mengelola content, kami mengucapkan banyak terima kasih kepada para pembaca setia pada blog www.softscients.web.id

Per 19 Maret 2020, kami sedang melakukan migrasi ke domain dan hosting yang lebih baik yaitu
Semoga dengan alamat domain dan hosting terbaru akan semakin memudahkan para pembaca dalam mencari materi/content. Migrasi dilakukan secara bertahap yang membutuhkan waktu yang cukup lama jadi jangan kuatir selama migrasi akan dilakukan secara hati-hati untuk memimalkan broken link


kalian bisa lanjut baca lagi di http://softscients.com/2020/03/31/buku-pemrograman-python-memperbaiki-bugs-spyder-dengan-reset-ulang/

Ketika penulis sedang asyik dalam merancang sebuah code untuk bruce force attack, tiba-tiba spyder mengalami error dan harus di restart, akan tetapi menjumpai error berikut
AttributeError: ‘module’ object has no attribute ‘_base’

Wednesday, November 15, 2017

Friday, October 27, 2017

JOIN SQL

Adalakanya kita harus menggunakan JOIN ada sql untuk mendapatkan informasi irisan, misalkan contoh berikut

Monday, October 16, 2017

Buku Belajar Machine Learning dengan Python-Learning Vector Quantization


Seiring dengan meningkatnya traffic dan kemudahan dalam mengelola content, kami mengucapkan banyak terima kasih kepada para pembaca setia pada blog www.softscients.web.id

Per 19 Maret 2020, kami sedang melakukan migrasi ke domain dan hosting yang lebih baik yaitu
Semoga dengan alamat domain dan hosting terbaru akan semakin memudahkan para pembaca dalam mencari materi/content. Migrasi dilakukan secara bertahap yang membutuhkan waktu yang cukup lama jadi jangan kuatir selama migrasi akan dilakukan secara hati-hati untuk memimalkan broken link
Buku Belajar Machine Learning dengan Python-Learning Vector Quantization
Learning Vector Quantization adalah salah satu metode pelatihan secara kompetitif yang sama seperti teknik percepton dan bacpropagation. Penulis sajikan data berikut yang terdiri dari 2 paramater dan 1 target output

Monday, September 11, 2017

Problem pyuic in Anaconda

Penulis masih senantiasa menggunakan Python untuk menyelsaikan banyak project dikarena sangat powerfull dalam masalah parser dan pengolahan file dibandingkan dengan Matlab, akan tetapi sulitnya membangun aplikasi berbasis GUI salah satunya Penulis menggunakan PyQT saja dibandingkan dengan Tkinter. Ternyata ada ada masalah ketika kita menggunakan Anaconda versi 4.0 dan 4.2 dikarenakan perbedaan penggunaan QT dimana versi Anaconda 4.0 menggunakan Qt 4 dan Anaconda 4.2 sudah menggunakan Qt 5.

Monday, July 10, 2017

Sekilas Mengenai Exclusive OR Function Boolean


Postingan  ini dilatarbelakangi oleh beberapa pembaca yang mungkin belum tahu cara kerja logika BITXOR yang sering dipakai dalam teknik steganography. Teknik BITXOR bekerja pada level bit pada logika  Boolean XOR. Salah syarat yang penting untuk logika BITXOR bahwa type variabel tersebut haruslah mempunyai type yang sama, misalkan type int8, int16, ataupun int32.
Perhatikan ilustrasi berikut



Saturday, July 1, 2017

SQL Select Statement Limit Desc Order

Permasalahan ini timbul ketika kita ingin melakukan query terhadap sejumlah data dan mengurutkan kembali secara descending.
Perhatikan tabel berikut

Reading JSON Format with Python

Script yang saya buat sebenarnya mempunyai tugas yang sangat sederhana sekali yaitu membaca format JSON dari sebuah web service, karena data tersebut digunakan untuk melakukan analisis terdapat penjualan harian sebuah toko.
Berikut merupakan keluaran JSON tersebut

Friday, June 2, 2017

Buku Belajar Machine Learning dengan Python- Algoritma Multi-Attribute Decision Making Using Simple Additive Weighting


Seiring dengan meningkatnya traffic dan kemudahan dalam mengelola content, kami mengucapkan banyak terima kasih kepada para pembaca setia pada blog www.softscients.web.id

Per 19 Maret 2020, kami sedang melakukan migrasi ke domain dan hosting yang lebih baik yaitu
Semoga dengan alamat domain dan hosting terbaru akan semakin memudahkan para pembaca dalam mencari materi/content. Migrasi dilakukan secara bertahap yang membutuhkan waktu yang cukup lama jadi jangan kuatir selama migrasi akan dilakukan secara hati-hati untuk memimalkan broken link
 Setiap pengambilan keputusan untuk memilih sesuatu, seseorang akan didasari dengan beberapa kriteria. Masing-masing kriteria mempunyai nilai tersendiri bagi seorang pengambil keputusan atau disebut pembobotan. Algoritma SAW (Simple Additive Weighting) adalah salah satu algoritma yang digunakan untuk pengambilan keputusan yang mempunyai nama lain algoritma MFEP (Multi Factor Evaluation Process). 

Monday, May 29, 2017

Mind Maping Machine Learning Algorithm

referensi: http://machinelearningmastery.com/a-tour-of-machine-learning-algorithms/

buku belajar machine learning dengan matlab - AdaBoost for Machine Learning


Seiring dengan meningkatnya traffic dan kemudahan dalam mengelola content, kami mengucapkan banyak terima kasih kepada para pembaca setia pada blog www.softscients.web.id

Per 19 Maret 2020, kami sedang melakukan migrasi ke domain dan hosting yang lebih baik yaitu
Semoga dengan alamat domain dan hosting terbaru akan semakin memudahkan para pembaca dalam mencari materi/content. Migrasi dilakukan secara bertahap yang membutuhkan waktu yang cukup lama jadi jangan kuatir selama migrasi akan dilakukan secara hati-hati untuk memimalkan broken link

Sinopsis

AdaBoost termasuk algoritma machine learning yang menggunakan beberapa ciri fitur lemah yang digabung secara linear menjadi ciri fitur kuat. Menggunakan teknik iterasi dalam melakukan update bobot ditiap iterasi. Berikut  perhitungan secara matematikanya.
Diberikan
 (x1,y1),…..(xm,ym);xi∈X,yi∈{-1,+1}

Yang artinya diberikan sebuah data x1 dengan x1 termasuk sebuah himpunan X yaitu ciri fitur dengan y1 adalah target dengan himpunan terdiri dari anggota {-1, +1} dan m adalah jumlah data.
Maka nilai bobot yaitu
D1(i)=1/m

Sehingga

Cara menentukan weak Threshold untuk ciri fitur bisa menggunakan teknik regresi linear.  Kita akan menentukan nilai threshold yaitu 1:1:9 yang diambil dari nilai maksimal dan minimal.
Kita akan membandingkan nilai label yaitu +1 dan -1 terhadap nilai threshold, misalkan kita pilih untuk +1  dan -1 pada threshold 3 pada x1 menghasilkan


Artinya akan melakukan thresholding,
a.    jika kita mengambil +1 maka setiap x1>=threshold akan diberikan +1 dengan lainnya -1
b.    jika kita mengambil -1, maka setiap x1<threshold akan diberikan +1 dengan lainnya -1
disinilah letak mengenai weak learner nya yaitu memilah fitur-fitur lemah. Dilanjut kita mencari error yaitu dengan membandingkan hasil point a atau b dengan y. Berikut contoh cara menghitung error pada point a

Untuk point b

Bisa dilihat error a+b akan menghasilkan 1, maka bila kita sudah mengetahui nilai a,
maka untuk nilai b = 1-b
sehingga bisa disimpulkan error terkecil yaitu b<a, error ini disebut error iterasi.
Error iterasi akan berhenti jika
∈_t>  1⁄2
Terlihat bahwa nilai 0.27272 masih dibawah ½ sehingga nilai ∈_t = 0.27272
Kemudian akan terjadi update pada nilai berikut
Alpha
α_t=  1⁄(2 ) log⁡((1-∈_t)/∈_t )
Nilai alpha menjadi α_t = 0.4904

Bobot D

D_(t )=D_(t )*exp⁡(-α_t*y*weakLearner)
D_(t )= D_(t )/sum(D_(t ))


Pada pada kasus diatas nilai b atau 0.2727  sebagai nilai terkecil, sehingga nilai weakLearner sebagai berikut tetap menggunakan label = -1

Sehingga nilai

Bila ingin lebih jelas, lihatlah rumus berikut
  1. Freund, Y.: Boosting a weak learning algorithm by majority. Information and Computation 121(2), 256–285 (1995)
  2. Freund, Y.: An adaptive version of the boost by majority algorithm. Machine Learning 43(3), 293–318 (2001)
  3. Freund, Y., Schapire, R.E.: A decision-theoretic generalization of on-line learning and an application to boosting. Journal of Computer and System Sciences 55(1), 119–139 (1997)


Agak sulit bila menjelaskan menggunakan persamaan matematika secara umum karena sifatnya general sekali



Python-Perceptron

Penulis telah membaca link berikut https://piptools.net/algoritma-adaboost-adaptive-boosting/ dengan menggunakan Adaboost yaitu dengan dasar menggunakan fitur-fitur lemah yang digabungkan menjadi fitur yang kuat untuk melakukan keputusan ditolak dan diterima pada database yang telah ada.



Thursday, May 25, 2017

Buku Belajar Pemrogaman Matlab - Control Random Generator


Seiring dengan meningkatnya traffic dan kemudahan dalam mengelola content, kami mengucapkan banyak terima kasih kepada para pembaca setia pada blog www.softscients.web.id

Per 19 Maret 2020, kami sedang melakukan migrasi ke domain dan hosting yang lebih baik yaitu
Semoga dengan alamat domain dan hosting terbaru akan semakin memudahkan para pembaca dalam mencari materi/content. Migrasi dilakukan secara bertahap yang membutuhkan waktu yang cukup lama jadi jangan kuatir selama migrasi akan dilakukan secara hati-hati untuk memimalkan broken link


kalian bisa lanjut baca lagi di   http://softscients.com/2020/03/29/buku-belajar-pemrogaman-matlab-seed-random-generator/


Jika kamu menggunakan Matlab untuk melakukan komputasi tidak terlepas kita membutuhkan bilangan random, tapi ini menjadi masalah tersendiri jika terdapat hasil yang berbeda-beda setiap kali melakukan proses komputasi.  Biasanya ini terjadi ketika kamu menggunakan algoritma machine learning yang melibatkan bilangan random sebagai initial valuenya. Bagaimana kita harus membuat menjadi tetap? Saya gunakan contoh kmeans clustering berikut

clc;clear all;close all;
load fisheriris
X = meas(:,3:4);
 
figure;
plot(X(:,1),X(:,2),'k*','MarkerSize',5);
title 'Fisher''s Iris Data';
xlabel 'Petal Lengths (cm)';
ylabel 'Petal Widths (cm)';
 
%kita akan menggunakan kmeans untuk melakukan
%clustering
[idx,C] = kmeans(X,3);
hold on
for i =1:3
    text(C(i,1),C(i,2),num2str(i),'FontSize',30,'Color','B')
end 

Coba kamu perhatikan urutan angka berikut


Pasti akan menghasilkan urutan yang berbeda-beda, oleh karena itu kita harus menetapkan terlebih dahulu seed random generator yaitu dengan function rand(‘seed’,0) yang artinya bilangan random akan menggunakan seed/benih 0 sebagai nilai awalnya, kamu bebas menggunakan 0 – 9999.

Coba kamu perbaiki codenya menjadi berikut

clc;clear all;close all;
load fisheriris
X = meas(:,3:4);
 
figure;
plot(X(:,1),X(:,2),'k*','MarkerSize',5);
title 'Fisher''s Iris Data';
xlabel 'Petal Lengths (cm)';
ylabel 'Petal Widths (cm)';
 
%kita akan menggunakan kmeans untuk melakukan
%clustering
rand('seed',0) %seed nya diisi 0
[idx,C] = kmeans(X,3);
hold on
for i =1:3
    text(C(i,1),C(i,2),num2str(i),'FontSize',30,'Color','B')
end 
Maka hasil urutannya akan senantiasa sama.

http://www.softscients.web.id/2015/11/pembangkitan-bilangan-random-dengan.html

Thursday, May 11, 2017

Sekilas Mengenai KFold Validation

Cross Validation merupakan salah satu teknik untuk menilai/memvalidasi keakuratan sebuah model yang dibangun berdasarkan dataset tertentu, yang melibatkan proses K-buah partisi secara acak. 

Kelebihan dari metode ini adalah tidak adanya masalah dalam pembagian data. Setiap data akan menjadi test set sebanyak satu kali dan akan menjadi training set sebanyak K-1 kali. Kekurangan dari metode ini adalah algoritma pembelajaran harus dilakukan sebanyak K kali yang berarti menggunakan K kali waktu komputasi. Berikut contoh Kfold sebanyak Kfold-3.

Friday, March 24, 2017

Buku Pemrograman Python-How to append vector in numpy


Seiring dengan meningkatnya traffic dan kemudahan dalam mengelola content, kami mengucapkan banyak terima kasih kepada para pembaca setia pada blog www.softscients.web.id

Per 19 Maret 2020, kami sedang melakukan migrasi ke domain dan hosting yang lebih baik yaitu
Semoga dengan alamat domain dan hosting terbaru akan semakin memudahkan para pembaca dalam mencari materi/content. Migrasi dilakukan secara bertahap yang membutuhkan waktu yang cukup lama jadi jangan kuatir selama migrasi akan dilakukan secara hati-hati untuk memimalkan broken link


kalian bisa lanjut baca lagi di http://softscients.com/2020/03/28/buku-pemrograman-python-how-to-append-vector-in-numpy/


These values are appended to a copy of arr. It must be of the correct shape (the same shape as arr, excluding axis), 

Sunday, February 19, 2017

Buku Belajar Machine Learning dengan Python-Extreme Learning Machine


Seiring dengan meningkatnya traffic dan kemudahan dalam mengelola content, kami mengucapkan banyak terima kasih kepada para pembaca setia pada blog www.softscients.web.id

Per 19 Maret 2020, kami sedang melakukan migrasi ke domain dan hosting yang lebih baik yaitu
Semoga dengan alamat domain dan hosting terbaru akan semakin memudahkan para pembaca dalam mencari materi/content. Migrasi dilakukan secara bertahap yang membutuhkan waktu yang cukup lama jadi jangan kuatir selama migrasi akan dilakukan secara hati-hati untuk memimalkan broken link
Buku Belajar Machine Learning dengan Python-Extreme Learning Machine
Bila ditemui kasus mengenai non linear selain bisa menggunakan SVM (Support Vector Machine), kita juga menggunakan ELM. The Extreme Learning Machine (ELM from now on) was proposed by [Huang et al., 2006]. It is used in a multilayered structure with one neural hidden layer (Single Layer Feedforward Network, SLFN from now on). The first step is to initialize at random the weights connecting the input and the hidden layer. Thus, it will only be necessary to optimize the weights connecting the hidden layer and the output layer. In order to do this, the Moore-Penrose pseudoinverse [Rao and Mitra, 1972] matrix will be used.


References.
[Huang et al., 2006] Huang, G. B., Zhu, Q. Y., and Siew, C. K. (2006). Extreme learning machine: Theory and applications, Neurocomputing, volume 70, 489-501.
[Haykin, 1998] Haykin, S. (1998). Neural Networks: A Comprehensive Foundation. Prentice-Hall.
[Rao and Mitra, 1972] Rao, C. R. and Mitra, S. K. (1972). Generalized Inverse of Matrices and It’s Applications. Wiley.

Buku Belajar Machine Learning dengan Python-Extreme Learning Machine
Penulis menggunakan dataset iris sebagai berikut
Buku Belajar Machine Learning dengan Python-Extreme Learning Machine
Penulis menggunakan visualisasi 3D yang hanya mengambil 3 parameter saja, sehingga ditampilkan sebagai berikut
Buku Belajar Machine Learning dengan Python-Extreme Learning Machine
Penulis menggunakan Python menghasilkan berikut
Buku Belajar Machine Learning dengan Python-Extreme Learning Machine

Buku Belajar Machine Learning dengan Python-Extreme Learning Machine
Bisa memprediksi pada proses training sebesar 94,7%
https://en.wikipedia.org/wiki/Extreme_learning_machine
http://www.ntu.edu.sg/home/egbhuang/

Buku Belajar Pemrogaman Matlab - Formating Text Output Fprintf


Seiring dengan meningkatnya traffic dan kemudahan dalam mengelola content, kami mengucapkan banyak terima kasih kepada para pembaca setia pada blog www.softscients.web.id

Per 19 Maret 2020, kami sedang melakukan migrasi ke domain dan hosting yang lebih baik yaitu
Semoga dengan alamat domain dan hosting terbaru akan semakin memudahkan para pembaca dalam mencari materi/content. Migrasi dilakukan secara bertahap yang membutuhkan waktu yang cukup lama jadi jangan kuatir selama migrasi akan dilakukan secara hati-hati untuk memimalkan broken link


kalian bisa lanjut baca lagi di  http://softscients.com/2020/03/29/buku-belajar-pemrogaman-matlab-formating-text-output/




Bagi kalian yang suka menggunakan Matlab untuk melihat output menggunakan terminal, bisa koq kalian atur format keluarannya. Untuk mengontrol output text di matlab, bisa menggunakan function fprintf agar lebih rapi



clc;clear all;close all;
disp('formating text in matlab')
disp('www.softscients.web.id')
disp('==============================')
disp('i         |sin(i)     |cos(i)')
disp('==============================')
for i =0:30:100
    formatSpec = '%3.0f \t %8.3f \t %8.3f \n';
    fprintf(formatSpec,i,sin(i),cos(i))
end

 

Friday, February 10, 2017

Metode Query Matching

Selain digunakan untuk melakukan pencocokan secara cepat terhadap tindak plagarisme, metode Winnowing, Rabin Karp, serta Manber sebenarnya dapat digunakan untuk memberikan rekomendasi terhadap pengunjung/customer untuk mendapatkan query yang cocok. Seperti contoh berikut

Saturday, January 28, 2017

Number Plate Car Detection

Pembahasan mengenai Number Plate car detection masih fokus banyak dikaji terutama pada teknik yang digunakan. Ada 2 hal yang kadang ambigu yaitu

  1. Detection / deteksi
  2. Recognition / pengenalan

Istilah detection/deteksi adalah mencari lokasi sebuah ROI plate pada sebuah citra, seperti pada contoh berikut


Monday, January 23, 2017

Cars Detection in OpenCV


OpenCV sering digunakan untuk melakukan face detection yaitu dengan function haarcascade clasifiernya, di OpenCV bisa juga dilatih untuk melakukan hal lain. Misalkan saja cars detection.
Untuk mempersempit cara tujuannya, yaitu kita hanya deteksi mobil bagian samping, berikut contoh gambar trainingnya yang dibagi menjadi 2 yaitu positif dan negatif.

Citra positif

Adalah citra yang mengandung objek yang akan kita kenali, fokuskan contoh gambar  pada area ROI, format citra sebaiknya grayscale dan ukurannya seragam untuk mempermudah dalam proses training