Difference between revisions of "Orange: Image Analytics Clustering"

From OnnoWiki
Jump to navigation Jump to search
 
(12 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
Sumber: https://orange.biolab.si/blog/2017/04/03/image-analytics-clustering/
 
Sumber: https://orange.biolab.si/blog/2017/04/03/image-analytics-clustering/
  
ata does not always come in a nice tabular form. It can also be a collection of text, audio recordings, video materials or even images. However, computers can only work with numbers, so for any data mining, we need to transform such unstructured data into a vector representation.
+
Data tidak selalu datang dalam bentuk tabel yang bagus. Data juga dapat berupa kumpulan teks, rekaman audio, materi video atau bahkan gambar. Namun, komputer hanya dapat bekerja dengan angka, jadi untuk setiap data mining, kita perlu mengubah data yang tidak terstruktur tersebut menjadi representasi vektor.
  
For retrieving numbers from unstructured data, Orange can use deep network embedders. We have just started to include various embedders in Orange, and for now, they are available for text and images.
+
Untuk mengambil angka dari data yang tidak terstruktur, Orange dapat menggunakan deep network embedder. Orange baru saja mulai memasukkan berbagai embedders di Orange pada widget Image Embedding, dan untuk saat ini, sudah tersedia untuk teks dan gambar.
  
==Related: Video on image clustering==
+
Pada kesempatan ini, kita akan mengambil contoh image embedding dan menunjukkan betapa mudahnya menggunakannya di Orange. Secara teknis, Orange akan mengirim gambar ke server, di mana server akan mendorong gambar melalui pre-trained deep neural network, seperti Google Inception v3. Deep network sering dilatih dengan tujuan tertentu. Inception v3, misalnya, dapat mengklasifikasikan gambar ke dalam salah satu dari 1.000 class gambar. Kita dapat saja mengabaikan klasifikasi yang bisa disarankan, sebagai gantinya mempertimbangkan penultimate layer dari network dengan 2048 node (angka) dan menggunakannya untuk image’s vector-based representation.
  
Here, we give an example of image embedding and show how easy is to use it in Orange. Technically, Orange would send the image to the server, where the server would push an image through a pre-trained deep neural network, like Google’s Inception v3. Deep networks were most often trained with some special purpose in mind. Inception v3, for instance, can classify images into any of 1000 image classes. We can disregard the classification, consider instead the penultimate layer of the network with 2048 nodes (numbers) and use that for image’s vector-based representation.
+
==Contoh==
  
==Let’s see this on an example.==
+
Dalam workflow contoh, kita akan menggunakan 19 gambar hewan peliharaan. Pertama, unduh gambar dan unzip. Kemudian gunakan widget Import Images dari add-on Orange Image Analytics dan buka direktori yang berisi gambar.
 
 
Here we have 19 images of domestic animals. First, download the images and unzip them. Then use Import Images widget from Orange’s Image Analytics add-on and open the directory containing the images.
 
  
 
[[File:ImportImages.png|center|200px|thumb]]
 
[[File:ImportImages.png|center|200px|thumb]]
  
We can visualize images in Image Viewer widget. Here is our workflow so far, with images shown in Image Viewer:
+
Gambar hewan bisa divisualisasikan menggunakan widget Image Viewer, seperti workflow berikut ini.
  
 
[[File:Image-viewer.png|center|200px|thumb]]
 
[[File:Image-viewer.png|center|200px|thumb]]
Line 21: Line 19:
 
[[File:Screen-Shot-2017-03-29-at-10.07.36.png|center|200px|thumb]]
 
[[File:Screen-Shot-2017-03-29-at-10.07.36.png|center|200px|thumb]]
  
But what do we see in a data table? Only some useless description of images (file name, the location of the file, its size, and the image width and height).
+
Jika kita perhatikan baik-baik, isi tabel data hanya beberapa deskripsi gambar, seperti, nama file, lokasi file, ukurannya, dan lebar dan tinggi gambar. Informasi ini tidak bisa membantu kita untuk melakukan machine learning.
  
 
[[File:Screen-Shot-2017-03-29-at-10.11.06.png|center|200px|thumb]]
 
[[File:Screen-Shot-2017-03-29-at-10.11.06.png|center|200px|thumb]]
  
This cannot help us with machine learning. As I said before, we need numbers. To acquire numerical representation of these images, we will send the images to Image Embedding widget.
+
Untuk melakukan machine learning kita membutuhkan angka. Untuk memperoleh representasi numerik dari gambar-gambar, kita mengirim gambar ke widget Image Embedding.
  
 
[[File:Screen-Shot-2017-03-29-at-10.15.50.png|center|200px|thumb]]
 
[[File:Screen-Shot-2017-03-29-at-10.15.50.png|center|200px|thumb]]
  
Great! Now we have the numbers we wanted. There are 2048 of them (columns n0 to n2047). From now on, we can apply all the standard machine learning techniques, say, clustering.
+
Data keluaran widget Image Embedding dapat kita periksa menggunakan widget Data Table. Sekarang kita memiliki presentasi numerik / angka dari gambar-gambar. Per gambar ada 2048 representasi numerik (kolom n0 hingga n2047). Dengan feature representasi angka ini, kita dapat menerapkan semua teknik standard machine learning, seperti, clustering.
  
Let us measure the distance between these images and see which are the most similar. We used Distances widget to measure the distance. Normally, cosine distance works best for images, but you can experiment on your own. Then we passed the distance matrix to Hierarchical Clustering to visualize similar pairs in a dendrogram.
+
Untuk mengelompokan berdasarkan kemiripan, kita dapat mengukur jarak antara gambar-gambar. Representasi angka dari gambar yang di peroleh dari widget Image Embedding, kita ukur jaraknya menggunakan widget Distances. Biasanya, cosine distance paling baik untuk gambar, tetapi anda dapat bereksperimen sendiri. Kemudian kita akan mengirimkan distance matrix ke Hierarchical Clustering untuk memvisualisasikan similar pair di dendrogram.
  
 
[[File:Screen-Shot-2017-03-29-at-10.20.38.png|center|200px|thumb]]
 
[[File:Screen-Shot-2017-03-29-at-10.20.38.png|center|200px|thumb]]
  
This looks very promising! All the right animals are grouped together. But I can’t see the results so well in the dendrogram. I want to see the images - with Image Viewer!
+
Hasilnya, semua hewan secara benar masuk kelompoknya. Dalam dendogram hasil pengelompokan, kita tidak melihat gambar hewan. Kita dapat menggunakan widget Image Viewer untuk melihat gambar-nya.
  
 
[[File:Screen-Shot-2017-03-29-at-10.23.38.png|center|200px|thumb]]
 
[[File:Screen-Shot-2017-03-29-at-10.23.38.png|center|200px|thumb]]
  
So cool! All the cow family is grouped together! Now we can click on different branches of the dendrogram and observe which animals belong to which group.
+
Terlihat dengan jelas bahwa keluarga sapi dikelompokkan bersama. Sekarang kita dapat mengklik cabang dendrogram yang berbeda dan mengamati hewan mana yang termasuk dalam kelompok mana.
  
But I know what you are going to say. You are going to say I am cheating. That I intentionally selected similar images to trick you.
+
Kemungkinan anda akan berfikir, ini curang karena gambar yang dipilih sengaja di miripkan untuk menipu :) ....  
  
I will prove you wrong. I will take a new cow, say, the most famous cow in Europe - Milka cow.
+
Untuk membuktikan bahwa ini bukan tipuan, kita akan mengambil sapi baru, disini di ambil sapi paling terkenal di Eropa - sapi Milka.
  
 
[[File:Milka cow by miki3d.jpg|center|200px|thumb]]
 
[[File:Milka cow by miki3d.jpg|center|200px|thumb]]
  
This image is quite different from the other images - it doesn’t have a white background, it’s a real (yet photoshopped) photo and the cow is facing us. Will the Image Embedding find the right numerical representation for this cow?
+
Gambar ini sangat berbeda dari gambar lain - tidak memiliki latar belakang putih, ini foto asli (belum dipotret) dan muka sapi Milka menghadap kemuka. Akankah widget Image Embedding menemukan representasi numerik yang tepat untuk sapi ini?
  
 
[[File:Screen-Shot-2017-03-29-at-10.30.41.png|center|200px|thumb]]
 
[[File:Screen-Shot-2017-03-29-at-10.30.41.png|center|200px|thumb]]
  
Indeed it has. Milka is nicely put together with all the other cows.
+
Tampaknya berhasil. Milka disatukan dengan sapi lainnya.
 
 
Image analytics is such an exciting field in machine learning and now Orange is a part of it too! You need to install the Image Analytics add on and you are all set for your research!
 
 
 
  
 +
Analisis gambar adalah bidang yang sangat menarik dalam pembelajaran mesin dan sekarang Orange juga menjadi bagian darinya! anda perlu menginstal add-on Image Analytics dan anda siap untuk melakukan penelitian anda!
  
 
==Referensi==
 
==Referensi==

Latest revision as of 04:45, 14 March 2020

Sumber: https://orange.biolab.si/blog/2017/04/03/image-analytics-clustering/

Data tidak selalu datang dalam bentuk tabel yang bagus. Data juga dapat berupa kumpulan teks, rekaman audio, materi video atau bahkan gambar. Namun, komputer hanya dapat bekerja dengan angka, jadi untuk setiap data mining, kita perlu mengubah data yang tidak terstruktur tersebut menjadi representasi vektor.

Untuk mengambil angka dari data yang tidak terstruktur, Orange dapat menggunakan deep network embedder. Orange baru saja mulai memasukkan berbagai embedders di Orange pada widget Image Embedding, dan untuk saat ini, sudah tersedia untuk teks dan gambar.

Pada kesempatan ini, kita akan mengambil contoh image embedding dan menunjukkan betapa mudahnya menggunakannya di Orange. Secara teknis, Orange akan mengirim gambar ke server, di mana server akan mendorong gambar melalui pre-trained deep neural network, seperti Google Inception v3. Deep network sering dilatih dengan tujuan tertentu. Inception v3, misalnya, dapat mengklasifikasikan gambar ke dalam salah satu dari 1.000 class gambar. Kita dapat saja mengabaikan klasifikasi yang bisa disarankan, sebagai gantinya mempertimbangkan penultimate layer dari network dengan 2048 node (angka) dan menggunakannya untuk image’s vector-based representation.

Contoh

Dalam workflow contoh, kita akan menggunakan 19 gambar hewan peliharaan. Pertama, unduh gambar dan unzip. Kemudian gunakan widget Import Images dari add-on Orange Image Analytics dan buka direktori yang berisi gambar.

ImportImages.png

Gambar hewan bisa divisualisasikan menggunakan widget Image Viewer, seperti workflow berikut ini.

Image-viewer.png
Screen-Shot-2017-03-29-at-10.07.36.png

Jika kita perhatikan baik-baik, isi tabel data hanya beberapa deskripsi gambar, seperti, nama file, lokasi file, ukurannya, dan lebar dan tinggi gambar. Informasi ini tidak bisa membantu kita untuk melakukan machine learning.

Screen-Shot-2017-03-29-at-10.11.06.png

Untuk melakukan machine learning kita membutuhkan angka. Untuk memperoleh representasi numerik dari gambar-gambar, kita mengirim gambar ke widget Image Embedding.

Screen-Shot-2017-03-29-at-10.15.50.png

Data keluaran widget Image Embedding dapat kita periksa menggunakan widget Data Table. Sekarang kita memiliki presentasi numerik / angka dari gambar-gambar. Per gambar ada 2048 representasi numerik (kolom n0 hingga n2047). Dengan feature representasi angka ini, kita dapat menerapkan semua teknik standard machine learning, seperti, clustering.

Untuk mengelompokan berdasarkan kemiripan, kita dapat mengukur jarak antara gambar-gambar. Representasi angka dari gambar yang di peroleh dari widget Image Embedding, kita ukur jaraknya menggunakan widget Distances. Biasanya, cosine distance paling baik untuk gambar, tetapi anda dapat bereksperimen sendiri. Kemudian kita akan mengirimkan distance matrix ke Hierarchical Clustering untuk memvisualisasikan similar pair di dendrogram.

Screen-Shot-2017-03-29-at-10.20.38.png

Hasilnya, semua hewan secara benar masuk kelompoknya. Dalam dendogram hasil pengelompokan, kita tidak melihat gambar hewan. Kita dapat menggunakan widget Image Viewer untuk melihat gambar-nya.

Screen-Shot-2017-03-29-at-10.23.38.png

Terlihat dengan jelas bahwa keluarga sapi dikelompokkan bersama. Sekarang kita dapat mengklik cabang dendrogram yang berbeda dan mengamati hewan mana yang termasuk dalam kelompok mana.

Kemungkinan anda akan berfikir, ini curang karena gambar yang dipilih sengaja di miripkan untuk menipu :) ....

Untuk membuktikan bahwa ini bukan tipuan, kita akan mengambil sapi baru, disini di ambil sapi paling terkenal di Eropa - sapi Milka.

Milka cow by miki3d.jpg

Gambar ini sangat berbeda dari gambar lain - tidak memiliki latar belakang putih, ini foto asli (belum dipotret) dan muka sapi Milka menghadap kemuka. Akankah widget Image Embedding menemukan representasi numerik yang tepat untuk sapi ini?

Screen-Shot-2017-03-29-at-10.30.41.png

Tampaknya berhasil. Milka disatukan dengan sapi lainnya.

Analisis gambar adalah bidang yang sangat menarik dalam pembelajaran mesin dan sekarang Orange juga menjadi bagian darinya! anda perlu menginstal add-on Image Analytics dan anda siap untuk melakukan penelitian anda!

Referensi

Pranala Menarik