Monday, December 19, 2022

Setup I2C LCD on Raspberry pi


I2C (inter-integrated circuit) uses two wires to send and receive data and two wires to Vcc and ground.

- install I2C-tools: sudo apt-get install i2c-tools.

- install SMBUS: sudo apt-get install python-smbus.

- reboot.

- connect the I2C LCD to Raspi

- in terminal: i2cdetect -y 1 . This will show a table of addresses for each I2C device connected to Pi.


- put the I2C address of your LCD in line 22 of the library code. For example, my I2C address is 21, so I’ll change line 22 to ADDRESS = 0x3f.

- in terminal: nano I2C_LCD_driver.py

# -*- coding: utf-8 -*-
# Original code found at:
# https://gist.github.com/DenisFromHR/cc863375a6e19dce359d
"""
Compiled, mashed and generally mutilated 2014-2015 by Denis Pleic
Made available under GNU GENERAL PUBLIC LICENSE
# Modified Python I2C library for Raspberry Pi
# as found on http://www.recantha.co.uk/blog/?p=4849
# Joined existing 'i2c_lib.py' and 'lcddriver.py' into a single library
# added bits and pieces from various sources
# By DenisFromHR (Denis Pleic)
# 2015-02-10, ver 0.1
"""
# i2c bus (0 -- original Pi, 1 -- Rev 2 Pi)
I2CBUS = 1
# LCD Address
ADDRESS = 0x3f
import smbus
from time import sleep
class i2c_device:
   def __init__(self, addr, port=I2CBUS):
      self.addr = addr
      self.bus = smbus.SMBus(port)
# Write a single command
   def write_cmd(self, cmd):
      self.bus.write_byte(self.addr, cmd)
      sleep(0.0001)
# Write a command and argument
   def write_cmd_arg(self, cmd, data):
      self.bus.write_byte_data(self.addr, cmd, data)
      sleep(0.0001)
# Write a block of data
   def write_block_data(self, cmd, data):
      self.bus.write_block_data(self.addr, cmd, data)
      sleep(0.0001)
# Read a single byte
   def read(self):
      return self.bus.read_byte(self.addr)
# Read
   def read_data(self, cmd):
      return self.bus.read_byte_data(self.addr, cmd)
# Read a block of data
   def read_block_data(self, cmd):
      return self.bus.read_block_data(self.addr, cmd)

# commands
LCD_CLEARDISPLAY = 0x01
LCD_RETURNHOME = 0x02
LCD_ENTRYMODESET = 0x04
LCD_DISPLAYCONTROL = 0x08
LCD_CURSORSHIFT = 0x10
LCD_FUNCTIONSET = 0x20
LCD_SETCGRAMADDR = 0x40
LCD_SETDDRAMADDR = 0x80
# flags for display entry mode
LCD_ENTRYRIGHT = 0x00
LCD_ENTRYLEFT = 0x02
LCD_ENTRYSHIFTINCREMENT = 0x01
LCD_ENTRYSHIFTDECREMENT = 0x00
# flags for display on/off control
LCD_DISPLAYON = 0x04
LCD_DISPLAYOFF = 0x00
LCD_CURSORON = 0x02
LCD_CURSOROFF = 0x00
LCD_BLINKON = 0x01
LCD_BLINKOFF = 0x00
# flags for display/cursor shift
LCD_DISPLAYMOVE = 0x08
LCD_CURSORMOVE = 0x00
LCD_MOVERIGHT = 0x04
LCD_MOVELEFT = 0x00
# flags for function set
LCD_8BITMODE = 0x10
LCD_4BITMODE = 0x00
LCD_2LINE = 0x08
LCD_1LINE = 0x00
LCD_5x10DOTS = 0x04
LCD_5x8DOTS = 0x00
# flags for backlight control
LCD_BACKLIGHT = 0x08
LCD_NOBACKLIGHT = 0x00
En = 0b00000100 # Enable bit
Rw = 0b00000010 # Read/Write bit
Rs = 0b00000001 # Register select bit
class lcd:
   #initializes objects and lcd
   def __init__(self):
      self.lcd_device = i2c_device(ADDRESS)
      self.lcd_write(0x03)
      self.lcd_write(0x03)
      self.lcd_write(0x03)
      self.lcd_write(0x02)
      self.lcd_write(LCD_FUNCTIONSET | LCD_2LINE | LCD_5x8DOTS | LCD_4BITMODE)
      self.lcd_write(LCD_DISPLAYCONTROL | LCD_DISPLAYON)
      self.lcd_write(LCD_CLEARDISPLAY)
      self.lcd_write(LCD_ENTRYMODESET | LCD_ENTRYLEFT)
      sleep(0.2)

   # clocks EN to latch command
   def lcd_strobe(self, data):
      self.lcd_device.write_cmd(data | En | LCD_BACKLIGHT)
      sleep(.0005)
      self.lcd_device.write_cmd(((data & ~En) | LCD_BACKLIGHT))
      sleep(.0001)
   def lcd_write_four_bits(self, data):
      self.lcd_device.write_cmd(data | LCD_BACKLIGHT)
      self.lcd_strobe(data)
   # write a command to lcd
   def lcd_write(self, cmd, mode=0):
      self.lcd_write_four_bits(mode | (cmd & 0xF0))
      self.lcd_write_four_bits(mode | ((cmd << 4) & 0xF0))
   # write a character to lcd (or character rom) 0x09: backlight | RS=DR<
   # works!
   def lcd_write_char(self, charvalue, mode=1):
      self.lcd_write_four_bits(mode | (charvalue & 0xF0))
      self.lcd_write_four_bits(mode | ((charvalue << 4) & 0xF0))
  
   # put string function with optional char positioning
   def lcd_display_string(self, string, line=1, pos=0):
    if line == 1:
      pos_new = pos
    elif line == 2:
      pos_new = 0x40 + pos
    elif line == 3:
      pos_new = 0x14 + pos
    elif line == 4:
      pos_new = 0x54 + pos
    self.lcd_write(0x80 + pos_new)
    for char in string:
      self.lcd_write(ord(char), Rs)
   # clear lcd and set to home
   def lcd_clear(self):
      self.lcd_write(LCD_CLEARDISPLAY)
      self.lcd_write(LCD_RETURNHOME)
   # define backlight on/off (lcd.backlight(1); off= lcd.backlight(0)
   def backlight(self, state): # for state, 1 = on, 0 = off
      if state == 1:
         self.lcd_device.write_cmd(LCD_BACKLIGHT)
      elif state == 0:
         self.lcd_device.write_cmd(LCD_NOBACKLIGHT)
   # add custom characters (0 - 7)
   def lcd_load_custom_chars(self, fontdata):
      self.lcd_write(0x40);
      for char in fontdata:
         for line in char:
            self.lcd_write_char(line)

- Now, we can test it with hello world, in terminal: nano test.py

import I2C_LCD_driver
mylcd = I2C_LCD_driver.lcd()
mylcd.lcd_display_string("Hello world", 1)

- make sure, you have python installed and between library and python files in one directory.

- run it in terminal: python test.py


Auto-renew Let’s Encrypt SSL certificates using crontab

Usually we renew certificates with certbot --apache in CentOS, and the problem is if you have ton of domains, then how to fix it. 

We can use an automatic code with cron job.

to try it, you can use these codes first:

(base) [root@diomain ~]# certbot renew --apache

Saving debug log to /var/log/letsencrypt/letsencrypt.log


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Processing /etc/letsencrypt/renewal/diomain.fr.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Certificate not yet due for renewal


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

The following certificates are not due for renewal yet:

  /etc/letsencrypt/live/diomain.fr/fullchain.pem expires on 2023-03-20 (skipped)

No renewals were attempted.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

(base) [root@diomain ~]# certbot certificates

Saving debug log to /var/log/letsencrypt/letsencrypt.log


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Found the following certs:

  Certificate Name: diomain.com

    Serial Number: 331cb1d6f8f48cf90e65992cd1c0fdc57b2

    Key Type: RSA

    Domains: diomain.fr

    Expiry Date: 2023-03-20 01:39:17+00:00 (VALID: 89 days)

    Certificate Path: /etc/letsencrypt/live/diomain.fr/fullchain.pem

    Private Key Path: /etc/letsencrypt/live/diomain.fr/privkey.pem

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -


If you haven't problem, now you can create it with webmin or use this manual command

crontab -e

0 0 20 2,4,6,8,10,12 * certbot renew --apache

we can assume that validation of certificate is 90 days so we must renew it in two months.
The command description is Cron will work at time: 0 minutes: 0 date: 20 month: 2/4/6/8/10/12 weekdays: */all



Thursday, December 15, 2022

Solve error shaka player or DRM or Widevine at Chromium in Raspberry pi

 If you have ever tried to load streaming live tv (indihome tv) or Netflix, Amazon Prime, HBO, Spotify, or the many other streaming services on your Raspberry Pi, you will find that they fail to function. Such as shaka player not support .....

This is because the Raspberry Pi does not come with the Widevine DRM software installed by default.

So you must update first Raspi, and install libwidevinecdm0

pi@pi:~ $ sudo apt update

............

pi@pi:~ $ sudo apt full-upgrade

............

pi@pi:~ $ sudo apt install libwidevinecdm0

Reading package lists... Done

Building dependency tree       

Reading state information... Done

The following packages were automatically installed and are no longer required:

  lxplug-volume python-colorzero

Use 'sudo apt autoremove' to remove them.

The following NEW packages will be installed:

  libwidevinecdm0

0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.

Need to get 5,990 kB of archives.

After this operation, 8,901 kB of additional disk space will be used.

Get:1 http://archive.raspberrypi.org/debian buster/main armhf libwidevinecdm0 armhf 4.10.2252.0-1 [5,990 kB]

Fetched 5,990 kB in 37s (162 kB/s)                                             

Selecting previously unselected package libwidevinecdm0.

(Reading database ... 104862 files and directories currently installed.)

Preparing to unpack .../libwidevinecdm0_4.10.2252.0-1_armhf.deb ...

Unpacking libwidevinecdm0 (4.10.2252.0-1) ...

Setting up libwidevinecdm0 (4.10.2252.0-1) ...

pi@pi:~ $ 



How to check the free space of SD card in Raspberry Pi

 pi@pi:~ $ df -h

Filesystem      Size  Used Avail Use% Mounted on

/dev/root       7.0G  5.9G  773M  89% /

devtmpfs        406M     0  406M   0% /dev

tmpfs           438M     0  438M   0% /dev/shm

tmpfs           438M   45M  394M  11% /run

tmpfs           5.0M  4.0K  5.0M   1% /run/lock

tmpfs           438M     0  438M   0% /sys/fs/cgroup

/dev/mmcblk0p1  253M   28M  226M  11% /boot

tmpfs            88M     0   88M   0% /run/user/1000

/dev/sda1        15G   15G  373M  98% /media/pi/3633-6436



Tuesday, October 11, 2022

Belajar Bahasa Rakitan Menggunakan Turbo Assembler (TASM)

Tutorial kali ini membuat aplikasi dengan menggunakan aplikasi DOSBox dengan DEBUG, TASM dan TLINK.

Silahkan cari DOSBox, DEBUG, dan TASM. Lalu proses untuk bisa install TASM, dan studi kasus DEBUG, TASM dan TLINK setidaknya seperti gambar di bawah ini:
















Sunday, August 28, 2022

How To Make Raspberry as Hotspot or Sink Controller

Install first for hostapd, dnsmasq with apt-get install

 please make prepare about several file for editing:

root@pi:/home/pi# nano /etc/dnsmasq.conf

keep it blank

root@pi:/home/pi# nano /etc/hostapd/hostapd.conf

country_code=ID
interface=wlan0
driver=nl80211
bridge=br0
#RADIUS
macaddr_acl=0
eap_server=0
own_ip_addr=192.168.2.1
radius_client_addr=192.168.2.2
auth_server_addr=192.168.2.1
auth_server_port=1812
auth_server_shared_secret=10041987nm
#hs20=1
hw_mode=g
channel=6
ieee8021x=1
wmm_enabled=1
ht_capab=[HT40][SHORT-GI-20][DSSS_CCK-40]
ignore_broadcast_ssid=0
ssid=iCAL-Hotspot
auth_algs=1
#if you want to make password, uncomment below
#wpa=2
#wpa_key_mgmt=WPA-PSK
#rsn_pairwise=CCMP
#wpa_passphrase=haikalmiska

root@pi:/home/pi# nano /etc/dhcpcd.conf

# A sample configuration for dhcpcd.
# See dhcpcd.conf(5) for details.

# Allow users of this group to interact with dhcpcd via the control socket.
#controlgroup wheel

# Inform the DHCP server of our hostname for DDNS.
hostname

# Use the hardware address of the interface for the Client ID.
clientid
# or
# Use the same DUID + IAID as set in DHCPv6 for DHCPv4 ClientID as per RFC4361.
# Some non-RFC compliant DHCP servers do not reply with this set.
# In this case, comment out duid and enable clientid above.
#duid

# Persist interface configuration when dhcpcd exits.
persistent

# Rapid commit support.
# Safe to enable by default because it requires the equivalent option set
# on the server to actually work.
option rapid_commit

# A list of options to request from the DHCP server.
option domain_name_servers, domain_name, domain_search, host_name
option classless_static_routes
# Respect the network MTU. This is applied to DHCP routes.
option interface_mtu

# Most distributions have NTP support.
#option ntp_servers

# A ServerID is required by RFC2131.
require dhcp_server_identifier
# Rapid commit support.
# Safe to enable by default because it requires the equivalent option set
# on the server to actually work.
option rapid_commit

# A list of options to request from the DHCP server.
option domain_name_servers, domain_name, domain_search, host_name
option classless_static_routes
# Respect the network MTU. This is applied to DHCP routes.
option interface_mtu

# Most distributions have NTP support.
#option ntp_servers

# A ServerID is required by RFC2131.
require dhcp_server_identifier

# Generate SLAAC address using the Hardware Address of the interface
#slaac hwaddr
# OR generate Stable Private IPv6 Addresses based from the DUID
slaac private

# Example static IP configuration:

interface eth0
inform 192.168.2.2/24

interface wlan0
inform 192.168.2.3/24

#denyinterfaces eth0 wlan0


root@pi:/home/pi# nano /etc/network/interfaces

# interfaces(5) file used by ifup(8) and ifdown(8)

# Please note that this file is written to be used with dhcpcd
# For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf'

# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d

# if there no an action, uncomment line below as trigger to IP Address
#auto br0
#auto eth0
#iface br0 inet static
#address 192.168.2.2/24
#gateway 192.168.2.1
#bridge_ports eth0 wlan0

__________________________________________________

root@pi:/home/pi# systemctl daemon-reload

root@pi:/home/pi# service networking restart

root@pi:/home/pi# service dhcpcd restart

root@pi:/home/pi# service hostapd start

root@pi:/home/pi# service dnsmasq start

any error have resolved with see the comments of error!


if you want to reset this hotspot to wifi client. The best way to (permanently) disable these services:

sudo update-rc.d hostapd disable

sudo update-rc.d dnsmasq disable

- reboot

Sunday, August 21, 2022

Resolve mail configuration Postfix on Centos

At upon time, I want to access mail with php mail, and any error on it (PHP Native and CodeIgniter, so Laravel). So I try many tutorials and I get any keyword since send mail on centos:

Null message body; hope that's ok
postdrop: warning: mail_queue_enter: create file maildrop/71281.94914: Permission denied
postdrop: warning: mail_queue_enter: create file maildrop/71596.94914: Permission denied
postdrop: warning: mail_queue_enter: create file maildrop/72031.94914: Permission denied
postdrop: warning: mail_queue_enter: create file maildrop/72835.94914: Permission denied


the best way to resolve it:

[root@.......]# postfix set-permissions
[root@.......]# mail -s "Hello World" admin@webiot.id

Null message body; hope that's ok
[root@.......]#

All php setting and send mail clear.

probably, this error comes after giving access or chmod. 



Sunday, June 19, 2022

Resolve OPENCV PYTHON Problem for your Environment Project

Several opencv problem and the resolve:

_____

- Problem:

cannot start Anaconda environment in windows

- Resolve: 

C:\Users\webiot>D:/Anaconda/Scripts/activate

_____

- Problem:

cv2.error: OpenCV(3.4.17) D:\a....\opencv-python\opencv-python\opencv\modules\highgui\src\window.cpp:383: error: (-215:Assertion failed) size.width>0 && size.height>0 in function 'cv::imshow'

- Resolve: 

camera=cv2.VideoCapture(0) #check for input device, maybe 0 or 1 etc.

_____

- Problem:

faces=detector.detectMultiScale(frame,1.1,7)

cv2.error: OpenCV(3.4.17) D:\a\opencv-python\opencv-python\opencv\modules\objdetect\src\cascadedetect.cpp:1729: error: (-215:Assertion failed) !empty() in function 'cv::CascadeClassifier::detectMultiScale'

- Resolve: 

run python as your path in the code

_____

- Problem:

sqlite3.OperationalError: no such column: 

- Resolve: 

check your parameter and add the value with single Quote each.

_____

- Problem:

sqlite3.OperationalError: database is locked

- Resolve: 

close all opened db browser

_____

- Problem:

CvCapture_MSMF::grabFrame videoio(MSMF): can't grab frame. Error: -2147483638

- Resolve: 

downgrade your opencv-python with:

(base) C:\Users\webiot>pip uninstall opencv-python

(base) C:\Users\webiot>pip install opencv-python==3.4.17.63

(base) C:\Users\webiot>pip install opencv-contrib-python==3.4.17.63

_____


ANATHOR PROBLEM IN PYTHON

- Problem:

ModuleNotFoundError: No module named 'mysql.connector'; 'mysql' is not a package

- Resolve: 

if you have install the mysql connector by: pip install mysql-connector-python

You make sure or rename your py file not as mysql.py

_____

- Problem:

Redirect has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header

- Resolve: 

Add this extension on chrome browser:

Allow CORS: Access-Control-Allow-Origin

_____

- Problem:

python flask not reading image from ajax POST request form

- Resolve: 

make sure that params use encodeURIComponent(uri):

ex:

client side

var tes = canvas.toDataURL("image/jpeg");

params = "baseku="+encodeURIComponent(tes);

xmlhttp.send(params);

server side

@app.route('/img', methods=['POST'])

def img():

    if 'baseku' in request.form:

        photo_base64 = request.form['baseku']

        return jsonify(response=photo_base64)

_____



Saturday, May 28, 2022

WEBIOT ID Learn and Start CodeIgniter 4

 Tutorial instalasi Codeigniter 4 dari awal sampai akhir publish


Based on Bahasa PHP


System Requirement (all in XAMPP):

- PHP 7.3 or higher

- intl & mbstring (extentions) / (activated it by uncomment in php.ini file)

- libcurl

- MySQL 5.1 or higher


Tahap awal instalasi:

- XAMPP

- Code Editor (Visual Studio Code, Sublime Text, Notepad++, etc...)

- Composer

- Git Bash

Jika semua sudah terinstalasi dengan baik, maka lakukan pengetesan seperti gambar di atas.


For Visual Studio Code install-> (PHP Intelephense, Prettier, Snippet)


Instalasi Codeigniter melalui download manual atau composer sesuai petunjuk user guide di situsnya.

Cara menjalankan awal bisa menggunakan Git Bash (dalam folder htdocs), lalu mengetik "php spark serve" (http://localhost:8080) atau langsung menggunakan localhost XAMPP merujuk ke folder public.

- Konsep folder dan setting semua file bisa custom dengan file ".env"

- Read Docs CodeIgniter

- Setting Routes dan Controller

- Setting Views (additional theme with bootstrap)




Thursday, March 31, 2022

Sunday, February 13, 2022

Kisi-kisi Soal UTS dan UAS Machine Learning Beserta Jawaban

Soal A

1. Terdapat array sebagai berikut:

a = [1,3,4,6,8]

Berapakah nilai a[-2] ….

a) 1

b) 3

c) 8

d) 4

e) 6


2. Terdapat array sebagai berikut:

a = [1,3,4,6,8]

Berapakah nilai a[2:] ….

a) 1

b) [3]

c) [4,6,8]

d) 8

e) [6,8]


3. Terdapat array sebagai berikut:

a = [1,3,4,6,8]

Berapakah nilai hasil res = [el*el for el in a] ….

a) 125

b) [125]

c) [6,8]

d) [1,4,8]

e) [1, 9, 16, 36, 64]


4. Mengembangkan aturan klasifikasi yang dapat menentukan kelas suatu instans berdasarkan nilai atributnya (feature vector) disebut ….

a) training

b) inductive learning

c) model

d) pohon keputusan

e) HMM


5. Salah satu bentuk pekerjaan sequential classification, yang jika diberikan sebuah sekuens (kalimat), maka kita dapat menentukan kelas setiap kata/ token pada kalimat tersebut disebut ….

a) Dataset

b) Training

c) Lexical

d) Context Free Grammar

e) POS tagging


6. Berikut ini contoh dari representasi pengetahuan, kecuali .... 

a) multi-agent system

b) logika preposisi, 

c) logika orde pertama (first-order logic)

d) teori Fuzzy

e) abductive reasoning


7. Library atau pustaka lengkap untuk membuat visualisasi statis, animasi, dan interaktif dengan Python disebut .... 

a) Pandas

b) Matplotlib

c) Numpy

d) OS

e) Scipy


8. Algoritma k-nearest neighbor (KNN) mencari K feature vector dengan sifat ….

a) terluar

b) termirip

c) terdalam

d) terdekat

e) terjauh


9. Decision node adalah .... 

a) Node yang tidak terbelah disebut Leaf atau Terminal node

b) Proses menghapus sub-simpul dari simpul keputusan atau pemangkasan node

c) Ketika sebuah sub-node dipecah menjadi sub-node lebih lanjut

d) Sebuah subbagian dari seluruh pohon disebut cabang atau sub-pohon

e) Sebuah node yang dibagi menjadi sub-node disebut parent node dari sub-node sedangkan sub-node adalah anak dari parent node


10. Keadaan ketika kinerja model bernilai baik untuk training tetapi buruk pada unseen data disebut .... 

a) Training b) Reliability c)  Scalability d) Underfitting e) Overfitting


Soal B
1. Terdapat array sebagai berikut:
a = [1,3,4,6,8]
Berapakah nilai a[3] ….
a) 1
b) 3
c) 8
d) 4
e) 6

2. Terdapat array sebagai berikut:
a = [1,3,4,6,8]
Berapakah nilai a[:2] ….
a) 1
b) [1,3]
c) [4,6,8]
d) 8
e) [6,8]

3. Terdapat array sebagai berikut:
a = [1,3,4,6,8]
Berapakah nilai hasil res = a[3:]+a[:3] ….
a) 1
b) [1, 9, 16, 36, 64]
c) [6,8]
d) [1,4,8]
e) [6, 8, 1, 3, 4]

4. Pada dimensi ketika agen mampu bertindak dan berinteraksi layaknya seperti manusia disebut ….
a) Acting Rationally
b) Acting Humanly
c) Thinking Humanly
d) Thinking Rationally
e) Agent as human

5. Library atau pustaka perangkat lunak yang ditulis untuk bahasa pemrograman Python untuk manipulasi dan analisis data disebut ….
a) Numpy
b) OS
c) Matplotlib
d) Scipy
e) Pandas

6. Berikut ini penggunaan dari aplikasi Notebook Jupyter, kecuali .... 
a) perancangan aplikasi web
b) pembersihan dan transformasi data
c) simulasi numerik
d) pemodelan statistik
e) visualisasi data

7. Mesin dilatih menggunakan  .... data, kemudian diuji kinerjanya menggunakan development data.
a) dataset
b) training
c) testing
d) validasi
e) learning

8. Metode kuantisasi vektor, awalnya dari pemrosesan sinyal, yang bertujuan untuk mempartisi n pengamatan menjadi k cluster di mana setiap pengamatan milik cluster dengan mean terdekat, berfungsi sebagai prototipe cluster disebut ….
a) k-nearest neighbor
b) k-means clustering
c) pengklasifikasi naive bayes
d) neural network
e) mean k average

9. Bagian dalam pohon keputusan yang mampu mengukur kemampuan suatu atribut untuk memisahkan training data berdasarkan kelas disebut .... 
a) node decision
b) entropy
c) information gain
d) learning rate
e) pruning

10. Model pembelajaran mesin yang diawasi yang dapat digunakan baik untuk klasifikasi maupun tugas regresi dan berfungsi dengan menghitung hyperplane yang paling baik untuk memisahkan kelas dalam data pelatihan disebut .... 
a) Decision tree b) Reliability c) HMM d) SVM e) Overfitting

Soal C
1. Terdapat array sebagai berikut:
a = [1,7,8,3,9]
Berapakah nilai a[-2] ….
a) 1
b) 7
c) 8
d) 9
e) 3

2. Terdapat array sebagai berikut:
a = [1,7,8,3,9]
Berapakah nilai a[2:] ….
a) 3
b) [7]
c) [8,3,9]
d) 9
e) [2,8]

3. Terdapat array sebagai berikut:
a = [1,7,8,3,9]
Berapakah nilai a[:3] ….
a) 9
b) [8,3,9]
c) [2,8]
d) [1,7,8]
e) [7]

4. Terdapat array sebagai berikut:
a = [1,7,8,3,9]
Berapakah nilai a[4] ….
a) [8,3,9]
b) 9
c) [2,8]
d) [1,7,8]
e) [7]

5. Terdapat array sebagai berikut:
a = [1,7,8,3,9]
Berapakah nilai a[2] ….
a) [8,3,9]
b) 9
c) [2,8]
d) [1,7,8]
e) 8

6. Machine learning sudah diaplikasikan pada banyak hal, berikut ini contoh pengaplikasiannya, kecuali .... 
a) aplikasi web
b) klasifikasi gambar
c) mobil tanpa pengemudi
d) klasifikasi berita
e) aplikasi chat

7. Proses membangun model dan testing adalah proses menguji kinerja model pembelajaran disebut .... 
a) Dataset
b) Training
c) Testing
d) Validasi
e) Learning

8. Berikut ini aplikasi dan paket library yang sudah termasuk ke dalam aplikasi Anaconda, kecuali ….
a) Jupyter lab
b) Jupyter chown
c) Spyder
d) numpy
e) matplotlib

9. Algoritma Naive Bayes sebagian besar digunakan dalam .... 
a) analisis sentimen, clustering, dan face recognition
b) analisis sentimen, face recognition, dan sistem rekomendasi
c) analisis sentimen, pemfilteran spam, dan sistem rekomendasi
d) clustering, pemfilteran spam, dan sistem rekomendasi
e) clustering, pemfilteran spam, dan face recognition

10. Keadaan ketika kinerja model bernilai buruk baik pada training atau development maupun testing data disebut .... 
a) Training
b) Reliability
c) Scalability
d) Underfitting
e) Overfitting

Soal D
1. Terdapat array sebagai berikut:
a = [1,3,4,6,8]
Berapakah nilai a[3] ….
a) 1
b) 3
c) 8
d) 4
e) 6

2. Terdapat array sebagai berikut:
a = [1,3,4,6,8]
Berapakah nilai a[:2] ….
a) 1
b) [1,3]
c) [4,6,8]
d) 8
e) [6,8]

3. Terdapat array sebagai berikut:
a = [1,3,4,6,8]
Berapakah nilai hasil res = a[3:]+a[:3] ….
a) 1
b) [1, 9, 16, 36, 64]
c) [6,8]
d) [1,4,8]
e) [6, 8, 1, 3, 4]

4. Berikut ini termasuk ke dalam penggunaan atau implementasi kecerdasan buatan, kecuali ….
a) Case-based reasoning
b) Binary games
c) Multi-agent planning
d) Data mining
e) Natural language understanding and translation

5. Input dan output dari sistem Natural Language Processing dapat berupa ….
a) Virtual reality
b) Training
c) Lexical
d) Context Free Grammar
e) Speech dan Written Text

6. Memetakan masukan yang diberikan dalam bahasa alami menjadi representasi yang berguna, kemudian. menganalisis berbagai aspek bahasa disebut .... 
a) Natural Language Understanding
b) Natural Language Generation
c) Next Language Generation
d) Natural Language Processing
e) Context Free Grammar

7. Library atau pustaka lengkap untuk membuat visualisasi statis, animasi, dan interaktif dengan Python disebut .... 
a) Pandas
b) Matplotlib
c) Numpy
d) OS
e) Scipy

8. Secara terminologi, NLP memiliki sifat pragmatik yang berarti ….
a) berkaitan dengan pemeliharaan dan pemahaman kalimat dalam situasi yang sama dan bagaimana interpretasi kalimat dipengaruhi
b) berkaitan dengan penggunaan dan pemahaman kalimat dalam situasi yang berbeda dan bagaimana interpretasi kalimat dipengaruhi
c) berkaitan tanpa penggunaan dan pemahaman kalimat dalam situasi yang berbeda dan bagaimana interpretasi kalimat dipengaruhi
d) berkaitan dengan penggunaan dan pemahaman kalimat dalam situasi yang sama dan bagaimana interpretasi kalimat dipengaruhi
e) berkaitan dengan penggunaan dan pemahaman kalimat dalam situasi yang berbeda dan bagaimana interpretasi kalimat tidak dipengaruhi

9. Jaringan saraf berulang sangat berguna untuk mengevaluasi urutan, sehingga lapisan tersembunyi dapat belajar dari jaringan saraf sebelumnya yang berjalan pada bagian urutan sebelumnya disebut juga dengan .... 
a) DNN b) NN c) RNN d) CNN e) ANN

10. Ide mendasar dari Artificial Neural Network (ANN) adalah mengadopsi mekanisme berpikir sebuah sistem atau aplikasi yang menyerupai .... manusia, baik untuk pemrosesan berbagai sinyal elemen yang diterima, toleransi terhadap kesalahan/ error, dan juga parallel processing.
a) tulang b) kulit c) telinga d) mata e) otak

Soal E
1. Terdapat array sebagai berikut:
a = [1,3,4,6,8]
Berapakah nilai a[-2] ….
a) 1
b) 3
c) 8
d) 4
e) 6

2. Terdapat array sebagai berikut:
a = [1,3,4,6,8]
Berapakah nilai a[2:] ….
a) 1
b) [3]
c) [4,6,8]
d) 8
e) [6,8]

3. Terdapat array sebagai berikut:
a = [1,3,4,6,8]
Berapakah nilai hasil res = [el*el for el in a] ….
a) 125
b) [125]
c) [6,8]
d) [1,4,8]
e) [1, 9, 16, 36, 64]

4. Pada dimensi ketika agen mampu bertindak dan berinteraksi layaknya seperti manusia disebut ….
a) Acting Rationally
b) Acting Humanly
c) Thinking Humanly
d) Thinking Rationally
e) Agent as human

5. Library atau pustaka perangkat lunak yang ditulis untuk bahasa pemrograman Python untuk manipulasi dan analisis data disebut ….
a) Numpy
b) OS
c) Matplotlib
d) Scipy
e) Pandas

6. Berikut ini penggunaan dari aplikasi Notebook Jupyter, kecuali .... 
a) perancangan aplikasi web
b) pembersihan dan transformasi data
c) simulasi numerik
d) pemodelan statistik
e) visualisasi data

7. Kecerdasan buatan adalah ilmu pengetahuan dan teknologi yang didasarkan pada disiplin ilmu. Berikut adalah ilmu yang beririsan dengan kecerdasan buatan, kecuali ….
a) Psikologi
b) Sejarah
c) Teknik
d) Matematika
e) Biologi

8. Tata bahasa yang terdiri dari aturan dengan satu simbol di sisi kiri aturan penulisan ulang disebut ….
a) Top-down parser
b) CFG
c) Lexical
d) Syntactic
e) Semantic

9. Jumlah neuron dalam dimensi yang lebih rendah pada RNN disebut .... 
a) size
b) embedded
c) embedded size
d) learning rate
e) axon

10. Suatu bahasa berarti kumpulan kata dan frasa dalam suatu bahasa disebut .... 
a) Semantic
b) Syntactic
c) Context
d) Leksikon
e) Grammar

Soal F
1. Terdapat array sebagai berikut:
a = [1,7,8,3,9]
Berapakah nilai a[-2] ….
a) 1
b) 7
c) 8
d) 9
e) 3

2. Terdapat array sebagai berikut:
a = [1,7,8,3,9]
Berapakah nilai a[2:] ….
a) 3
b) [7]
c) [8,3,9]
d) 9
e) [2,8]

3. Terdapat array sebagai berikut:
a = [1,7,8,3,9]
Berapakah nilai a[:3] ….
a) 9
b) [8,3,9]
c) [2,8]
d) [1,7,8]
e) [7]

4. Terdapat array sebagai berikut:
a = [1,7,8,3,9]
Berapakah nilai a[4] ….
a) [8,3,9]
b) 9
c) [2,8]
d) [1,7,8]
e) [7]

5. Terdapat array sebagai berikut:
a = [1,7,8,3,9]
Berapakah nilai a[2] ….
a) [8,3,9]
b) 9
c) [2,8]
d) [1,7,8]
e) 8

6. Berikut merupakan tujuan dari kecerdasan buatan, kecuali .... 
a) untuk membuat sistem pakar yang menunjukkan perilaku cerdas, belajar, mendemonstrasikan, menjelaskan, dan memberi kebijakan kepada penggunanya
b) untuk membuat sistem pakar yang menunjukkan perilaku cerdas, belajar dan memberi saran kepada penggunanya
c) untuk membuat sistem pakar yang menunjukkan perilaku belajar sendiri
d) untuk membuat sistem pakar yang menunjukkan dan memberi saran kepada penggunanya
e) untuk membuat sistem pakar yang menunjukkan perilaku cerdas

7. Kecerdasan buatan telah dominan dan digunakan di berbagai bidang, berikut ini yang bukan bidang yang terkait dengan penggunaan kecerdasan buatan adalah  .... 
a) Permainan (gaming)
b) Training game
c) Pengenalan ucapan (speech recognition)
d) Sistem visi (vision systems)
e) Sistem pakar (expert systems)

8. Berikut ini aplikasi dan paket library yang sudah termasuk ke dalam aplikasi Anaconda, kecuali ….
a) Jupyter lab
b) Jupyter chown
c) Spyder
d) numpy
e) matplotlib

9. Kecerdasan tidak berwujud, namun kecerdasan dapat terdiri dari komponen berikut, kecuali .... 
a) Reasoning (pemikiran)
b) Perception (persepsi)
c) Training (latihan)
d) Problem solving (penyelesaian masalah)
e) Learning (pembelajaran)

10. Library atau pustaka Python sumber terbuka dan gratis yang digunakan untuk komputasi ilmiah dan komputasi teknis, berisi modul untuk optimasi, aljabar linier, integrasi, interpolasi, fungsi khusus, FFT, pemrosesan sinyal dan gambar, pemecah ODE dan tugas lain yang umum dalam sains dan teknik disebut .... 
a) Matplotlib b) Scilearn c) Numpy d) Scipy e) Pandas

Soal G
1. Berikut ini yang tidak termasuk ke dalam karakteristik sistem pakar adalah ….
a) Performa tinggi
b) Dapat dimengerti
c) Dapat diandalkan
d) Sangat responsif
e) Dapat Menyempurnakan pengetahuan mereka sendiri

2. Pengetahuan diperlukan untuk menunjukkan kecerdasan. Keberhasilan ES mana pun sangat bergantung pada pengumpulan pengetahuan yang sangat akurat dan tepat. Bagian ini merupakan komponen sistem pakar dari ….
a) Capabilities
b) Knowledge Base
c) Inference Engine
d) User Interface
e) Abilities

3. Orang dengan kualitas empati, cepat belajar, dan keterampilan menganalisis kasus dalam sistem pakar disebut ….
a) knowledge master
b) knowledge base
c) expert master
d) expert engineer
e) knowledge engineer

4. Berikut ini yang termasuk ke dalam contoh aplikasi sistem pakar bidang medis adalah ….
a) Membandingkan data secara terus menerus dengan sistem yang diamati atau dengan perilaku yang ditentukan seperti pemantauan kebocoran pada pipa minyak yang panjang
b) Deteksi kemungkinan penipuan, transaksi mencurigakan, perdagangan pasar saham, penjadwalan maskapai penerbangan, penjadwalan kargo
c) Sistem Diagnosis untuk menyimpulkan penyebab penyakit dari data yang diamati, melakukan operasi medis pada manusia
d) Mengontrol proses fisik berdasarkan pemantauan
e) Mencari tahu kesalahan pada kendaraan, komputer

5. Domain dalam kecerdasan buatan yang berhubungan dengan studi tentang pembuatan robot yang cerdas dan efisien disebut dengan ….
a) Virtual reality
b) Computer vision
c) Mekatronika
d) IoT
e) Robotika

6. Jika sebuah robot memiliki k kaki, maka banyaknya kejadian yang mungkin terjadi N = (2k-1)!. Dalam kasus robot berkaki dua (k=2), jumlah kejadian yang mungkin adalah .... 
a) 6
b) 8
c) 4
d) 2
e) 10

7. Berikut ini tugas computer vision dengan metode OCR adalah .... 
a) untuk membaca wajah dan mengambil gambar ekspresi sempurna itu
b) untuk mengubah dokumen yang dipindai menjadi teks yang dapat diedit, yang menyertai pemindai
c) untuk membiarkan pengguna mengakses perangkat lunak pada kecocokan yang benar
d) untuk memperkirakan posisi suatu objek terhadap kamera seperti posisi tumor dalam tubuh manusia
e) Semua jawaban salah

8. Setiap operasi pada window pada CNN yang bertujuan untuk mencari aspek lokal yang paling informatif. operasi ini dikenal juga sebagai ….
a) convolution
b) receptive field
c) sliding window
d) max pool
e) average

9. Mampu mengenali aspek yang informatif pada regional tertentu (lokal) merupakan tujuan dari .... 
a) ANN
b) DNN
c) CNN
d) Deep learning
e) Machine learning

10. Max pooling mencari nilai …. untuk setiap dimensi vektor.
a) training
b) testing
c) terkecil
d) maksimum
e) rata-rata

Soal H
1. Diantara banyaknya kemampuan dari sistem pakar, berikut ini yang tidak termasuk ke dalam kemampuan dari sistem pakar adalah  ….
a) Memberikan nasihat/ arahan
b) Menginstruksikan dan membantu manusia dalam pengambilan keputusan
c) Mendemonstrasikan
d) Mencari solusi
e) Memiliki kemampuan manusia

2. Pengetahuan faktual adalah ….
a) pengumpulan pengetahuan yang sangat akurat dan tepat
b) data, informasi, dan pengalaman masa lalu digabungkan bersama
c) kumpulan fakta. Informasi diatur sebagai data dan fakta tentang domain tugas
d) tentang praktik, penilaian yang akurat, kemampuan evaluasi seseorang, dan tebakan
e) informasi yang diterima secara luas oleh knowledge engineer dan cendekiawan dalam domain tugas

3. Untuk merekomendasikan solusi pada sistem pakar, Mesin inferensi menggunakan strategi berikut, yaitu ….
a) cycle chaining
b) true and false chaining
c) front dan back chaining
d) forward dan backpropagation chaining
e) forward dan backward chaining

4. Berikut ini yang termasuk ke dalam contoh aplikasi sistem pakar bidang keuangan atau perdagangan adalah ….
a) Membandingkan data secara terus menerus dengan sistem yang diamati atau dengan perilaku yang ditentukan seperti pemantauan kebocoran pada pipa minyak yang panjang
b) Deteksi kemungkinan penipuan, transaksi mencurigakan, perdagangan pasar saham, penjadwalan maskapai penerbangan, penjadwalan kargo
c) Sistem Diagnosis untuk menyimpulkan penyebab penyakit dari data yang diamati, melakukan operasi medis pada manusia
d) Mengontrol proses fisik berdasarkan pemantauan
e) Mencari tahu kesalahan pada kendaraan, komputer

5. Mekanisme yang membuat robot mampu bergerak di lingkungannya disebut ….
a) Legged
b) Wheeled
c) Tracked slip
d) Skid
e) Locomotion

6. Sebuah neuron pada ANN dapat menyelesaikan permasalahan klasifikasi biner, karena neuron memiliki fungsi .... 
a) hyperspace separation dan binary threshold
b) pemisah 
c) multivariate
d) multi varian
e) threshold

7. Backpropagation tidak lain dan tidak bukan adalah metode …. yang diterapkan pada ANN.
a) HMM
b) gradient-based optimization
c) gaussian
d) relu
e) activation function

8. K-max pooling mencari K nilai …. untuk setiap dimensinya (kemudian hasilnya digabungkan).
a) rata-rata
b) terbesar
c) terdalam
d) terkecil
e) terluar

9. Pada ujung akhir CNN, kita lewatkan satu vektor hasil beberapa operasi convolution dan pooling pada multilayer perceptron (feed-forward neural network ), dikenal juga sebagai .... 
a) Terminal node
b) sliding window
c) fully connected layer
d) activation function
e) klasifikasi

10. Jumlah neuron pada hidden layer umumnya lebih banyak daripada jumlah neuron di .... 
a) input layer
b) klasifikasi
c) sliding window
d) neuron
e) output layer

Soal I
1. Aplikasi yang membantu pengguna membuat keputusan atau mendukung pengguna dengan memberikan saran ahli disebut dengan ….
a) artificial intelligence
b) business intelligence
c) decision support system
d) master system
e) sistem pakar

2. Data, informasi, dan pengalaman masa lalu digabungkan bersama disebut sebagai ….
a) heuristik
b) faktual
c) pengetahuan.
d) expert system
e) Inference Engine

3. Sistem pakar menemukan jawaban atas pertanyaan, “Mengapa ini terjadi?”. Strategi mesin inferensi ini termasuk ke dalam ….
a) cycle chaining
b) true chaining
c) back chaining
d) backpropagation chaining
e) backward chaining

4. Berikut yang tidak termasuk persyaratan bentuk user interface dalam sistem pakar yang efisien adalah ….
a) harus membantu pengguna untuk mencapai tujuan mereka dengan cara sesingkat mungkin
b) pengguna sistem pakar tidak harus ahli dalam kecerdasan buatan
c) harus dirancang untuk bekerja untuk praktik kerja yang ada atau diinginkan pengguna
d) teknologinya harus dapat disesuaikan dengan kebutuhan pengguna; bukan sebaliknya
e) harus membuat penggunaan yang efisien mengenai input pengguna

5. Agen buatan yang bertindak di lingkungan dunia nyata dan ditujukan untuk memanipulasi objek dengan mengamati, mengambil, memindahkan, memodifikasi sifat fisik objek, menghancurkannya, atau memiliki efek sehingga membebaskan tenaga kerja dari melakukan fungsi berulang tanpa bosan, terganggu, atau kelelahan disebut dengan ….
a) AI
b) Autobot
c) Bot
d) Mekatronika
e) Robot

6. Robot digunakan untuk menangani material, pemotongan, pengelasan, pelapisan warna, pengeboran, pemolesan, dll. Hal ini menunjukkan pengaplikasian robot dalam bidang .... 
a) industri
b) medis
c) militer
d) eksplorasi
e) hiburan

7. Proses transformasi suatu window menjadi suatu nilai numerik (filter). Kita juga dapat mentransformasi suatu window (regional) menjadi d nilai numerik (d channels, setiap elemen berkorespondensi pada suatu filter). Window ini kemudian digeser-geser sebanyak T kali, sehingga akhirnya kita mendapatkan vektor dengan panjang d × T . Keseluruhan operasi ini disebut sebagai .... 
a) gaming
b) convolution
c) pooling
d) vision
e) regulazation

8. Pooling merupakan teknik mengekstrak informasi yang paling informatif (semacam meringkas). Ada beberapa teknik pooling, antara lain ….
a) max pooling, average pooling, dan K-min pooling
b) max pooling, average pooling, dan K-max pooling
c) max pooling, min pooling, dan K-min pooling
d) min pooling, average pooling, dan K-max pooling
e) K-mean pooling, average pooling, dan K-max pooling

9. Pembuatan topologi jaringan yang mampu merepresentasikan data sequential (sekuensial) atau time series, seperti data ramalan cuaca, merupakan ide utama dari .... 
a) ANN
b) CNN
c) RNN
d) Fully connected
e) FCN

10. Jumlah hidden layer dalam ANN sebaiknya disesuaikan dengan .... 
a) kompleksitas permasalahan
b) reliability
c) penelitian
d) kompleksitas algoritma
e) model

Soal J

1. Proses untuk mencari atau mengurutkan kandidat fitur disebut sebagai aktivitas ….

a) feature vector

b) record

c) search

d) knowledge engineering

e) feature engineering


2. Memiliki data berdimensi tinggi bermasalah karena dapat berarti biaya komputasi yang tinggi untuk melakukan pembelajaran dan inferensi dan sering menyebabkan ….

a) overload

b) rbf

c) activation

d) underfitting

e) overfitting


3. Ada dua hal penting pada algoritma K-means, yaitu ….

a) memilih class dan perhitungan kemiripan data

b) memilih class dan perhitungan perbedaan data

c) memilih class dan perhitungan mAP

d) memilih centroid dan perhitungan perbedaan data

e) memilih centroid dan perhitungan kemiripan data


4. Artificial neural network adalah algoritma yang populer dan bisa juga digunakan untuk menyelesaikan permasalahan  ….

a) supervised, semi-supervised dan inductive learning

b) supervised, semi-supervised dan unsupervised learning

c) unsupervised, semi-supervised dan inductive learning

d) unsupervised, supervised dan inductive learning

e) unsupervised, reinforcement dan inductive learning


5. ANN memiliki neuron/node (vertex), dan sinapsis sebagai ….

a) dataset

b) training

c) testing

d) sudut

e) edge


6. Sebuah neuron pada ANN dapat menyelesaikan permasalahan klasifikasi biner, karena neuron memiliki fungsi .... 

a) hyperspace separation dan binary threshold

b) pemisah 

c) multivariate

d) multi varian

e) threshold


7. Perhatikan gambar berikut!

Gambar di atas merupakan fungsi aktivasi pada ANN yang disebut .... 

a) Gaussian

b) Sigmoid

c) Relu

d) Tanh (Tangent Hyperbolic)

e) Sign


8. K-max pooling mencari K nilai …. untuk setiap dimensinya (kemudian hasilnya digabungkan).

a) rata-rata

b) terbesar

c) terdalam

d) terkecil

e) terluar


9. Pada ujung akhir CNN, kita lewatkan satu vektor hasil beberapa operasi convolution dan pooling pada multilayer perceptron (feed-forward neural network ), dikenal juga sebagai .... 

a) Terminal node

b) sliding window

c) fully connected layer

d) activation function

e) klasifikasi


10. Jumlah neuron pada hidden layer umumnya lebih banyak daripada jumlah neuron di .... 

a) input layer

b) klasifikasi

c) sliding window

d) neuron

e) output layer


Soal K

1. Teknik yang digunakan untuk mereduksi sejumlah besar variabel menjadi sejumlah faktor yang lebih sedikit. Teknik ini mengekstrak varians umum maksimum dari semua variabel dan memasukkannya ke dalam skor umum. Teknik ini disebut dengan ….

a) Analisis vektor

b) Analisis dimensi

c) Analisis kovarian

d) Analisis varian

e) Analisis faktor


2. Ide dasar PCA adalah mencari bentuk data (pada dimensi lebih kecil) yang memiliki nilai varians tinggi untuk tiap fiturnya, karena varians yang tinggi berarti kemampuan fitur yang tinggi dalam melakukan diskriminasi (klasifikasi). PCA merupakan singkatan dari ….

a) Principal Cofactor Analysis

b) Principal Components Analysis

c) Principal Covector Analysis

d) Principal Composite Analysis

e) Principal Covariance Analysis


3. Manakah dari tahapan-tahapan yang tidak termasuk ke dalam tahapan algoritma K-means ….

a) Tentukan sejumlah K kelompok yang kita inginkan

b) Inisiasi centroid untuk setiap kelompok. Centroid ibarat seperti “ketua kelompok”, yang merepresentasikan kelompok

c) Hitung kedekatan suatu data terhadap centroid, kemudian masukkan data tersebut ke kelompok yang centroid-nya memiliki sifat terdekat dengan dirinya

d) Pilih kembali centroid untuk masing-masing kelompok, yaitu dari anggota kelompok tersebut

e) Ulangi langkah-langkah sampai ada perubahan anggota untuk semua kelompok


4. Output dari neuron adalah hasil fungsi aktivasi dari perhitungan jumlah perkalian antara ….

a) nilai input dan hidden layer

b) nilai input dan synapse weight

c) layer dan bobot

d) hidden layer dan synapse weight

e) salah semua


5. step function, sign function, rectifier dan sigmoid function dalam ANN merupakan ….

a) regulazation

b) layer

c) hidden layer

d) weight

e) fungsi aktivasi


6. Backpropagation tidak lain dan tidak bukan adalah metode …. yang diterapkan pada ANN.

a) HMM

b) gradient-based optimization

c) gaussian

d) relu

e) activation function


7. Perhatikan gambar berikut!

Gambar di atas merupakan fungsi aktivasi pada ANN yang disebut .... 

a) Gaussian

b) Sigmoid

c) Relu

d) Tanh (Tangent Hyperbolic)

e) Sign


8. Pooling merupakan teknik mengekstrak informasi yang paling informatif (semacam meringkas). Ada beberapa teknik pooling, antara lain ….

a) max pooling, average pooling, dan K-min pooling

b) max pooling, average pooling, dan K-max pooling

c) max pooling, min pooling, dan K-min pooling

d) min pooling, average pooling, dan K-max pooling

e) K-mean pooling, average pooling, dan K-max pooling


9. Pembuatan topologi jaringan yang mampu merepresentasikan data sequential (sekuensial) atau time series, seperti data ramalan cuaca, merupakan ide utama dari .... 

a) ANN

b) CNN

c) RNN

d) Fully connected

e) FCN


10. Jumlah hidden layer dalam ANN sebaiknya disesuaikan dengan .... 

a) kompleksitas permasalahan

b) reliability

c) penelitian

d) kompleksitas algoritma

e) model



Soal L

1. Dalam proses pengujian kita membagi-bagi dataset yang kita miliki menjadi K-bagian. Kita latih model menggunakan K−1 bagian, kemudian menguji model dengan menggunakan satu bagian lainnya sebagai validation data yang mengaproksimasi kinerja pada testing data. Hal ini disebut sebagai ….

a) mAP

b) K-fold validation

c) Loss

d) Accuracy

e) K-fold cross-validation


2. PCA adalah teknik yang menemukan variabel dasar (dikenal sebagai komponen utama) yang paling membedakan titik data kita. Komponen utama yang dimaksud adalah  ….

a) dimensi di mana garis data yang paling sedikit akan tersebar

b) dimensi di mana titik data yang paling sedikit akan tersebar

c) dimensi di mana titik data yang paling tinggi akan tersebar

d) dimensi di mana garis data yang paling tinggi akan tersebar

e) semua benar


3. Pengelompokkan data dengan sifat yang mirip dan tidak memiliki label (kelas) disebut dengan ….

a) Decision tree

b) Neural network

c) SVM

d) Clustering

e) PCA


4. Ada dua cara untuk membentuk hierarchical clustering, yaitu ….

a) agglomerative dan flat clusters

b) agglomerative dan divisive

c) clusters dan agglomerative

d) flat dan rata

e) clusters dan divisive


5. Salah satu strategi untuk binary classification adalah dengan menyediakan hanya satu output unit di jaringan. Kelas pertama direpresentasikan dengan −1, kelas kedua direpresentasikan dengan nilai ….

a) 0

b) -2

c) 2

d) ~

e) 1


6. Multilayer perceptron secara umum ada tiga layers: input, hidden, dan output layer. Input layer menerima input, kemudian nilai input diberikan ke hidden units. Pada hidden units, input diproses dan dilakukan perhitungan hasil fungsi aktivasi untuk tiap-tiap neuron, lalu hasilnya diberikan ke layer berikutnya. Output dari input layer akan diterima sebagai input bagi hidden layer. Begitu pula seterusnya hidden layer akan mengirimkan hasilnya untuk output layer. Kegiatan ini dinamakan.... 

a) feed forward

b) backward

c) fully connected

d) backpropagation

e) deep neural network


7. Perhatikan gambar berikut!

Gambar di atas merupakan fungsi aktivasi pada ANN yang disebut .... 

a) Gaussian

b) Sigmoid

c) Relu

d) Tanh (Tangent Hyperbolic)

e) Sign


8. Setiap operasi pada window pada CNN yang bertujuan untuk mencari aspek lokal yang paling informatif. operasi ini dikenal juga sebagai ….

a) convolution

b) receptive field

c) sliding window

d) max pool

e) average


9. Mampu mengenali aspek yang informatif pada regional tertentu (lokal) merupakan tujuan dari .... 

a) ANN

b) DNN

c) CNN

d) Deep learning

e) Machine learning


10. Max pooling mencari nilai …. untuk setiap dimensi vektor.

a) training

b) testing

c) terkecil

d) maksimum

e) rata-rata