10 Fungsi dengan banyak input

: Kita dapat menggunakan kombinasi linier dan perkalian fungsi untuk membangun fungsi khusus dari fungsi pemodelan dasar. Demikian pula, kombinasi linier dan perkalian fungsi menyediakan cara untuk membangun fungsi dari banyak masukan.

10.1 Kombinasi linier

Harga rumah ditentukan oleh beberapa (atau banyak!) faktor. Menerjemahkan kalimat sebelumnya ke dalam bahasa fungsi, kita dapat mengatakan bahwa harga merupakan fungsi dari beberapa input. Masukan yang masuk akal untuk fungsi tersebut mencakup jumlah ruang tamu dan jumlah kamar tidur dan kamar mandi. Masukannya juga dapat mencakup kualitas lingkungan sekitar, lamanya perjalanan, dan sebagainya.

Seringkali, titik awal untuk membangun suatu fungsi dengan banyak masukan adalah kerangka data yang variabelnya mencakup keluaran fungsi (harga) dan masukan ke fungsi tersebut. Pemodel sering kali memulai dengan membangun fungsi yang merupakan kombinasi linier dari variabel masukan. Untuk mendemonstrasikan seperti apa fungsi tersebut, kita dapat menggunakan SaratogaHouseskumpulan data, yang mencatat harga jual 1.728 rumah di Saratoga County, New York, AS dan 15 variabel lain untuk setiap rumah, seperti livingAreajumlah bedroomsdan bathrooms.

Teknik membangun fungsi dari data akan diperkenalkan di Blok III. Untuk saat ini, mari kita lihat seperti apa fungsi tersebut. Dari SaratogaHouseskami membangun fungsi ini:

\[ \begin{eqnarray}\mathtt{price}(\mathtt{livingArea}, &&\mathtt{bedrooms}, \mathtt{bathrooms}) \equiv \\ &&21000 + 105\, \mathtt{livingArea}\\ &&- 13000\,\mathtt{bedrooms}\\ &&+ 26000\, \mathtt{bathrooms}\end{eqnarray} \]

Fungsi model adalah kombinasi linier sederhana, namun secara efektif mengukur bagaimana berbagai aspek rumah berkontribusi terhadap harga jualnya. Model tersebut (yang didasarkan pada data dua dekade lalu) menunjukkan bahwa tambahan satu kaki persegi ruang hidup bernilai sekitar 105 dolar per kaki2 . Kamar mandi tambahan bernilai sekitar $25.000. Anehnya, kamar tidur diberi nilai negatif oleh modelnya.

Mungkin Anda sudah paham apa yang dimaksud dengan “tambahan kaki persegi” atau “kamar mandi tambahan”. Ide-ide ini mungkin bersifat intuitif, namun dapat dipahami dengan baik jika didasarkan pada kalkulus, yang akan kita bahas di Blok II. Misalnya, skalar negatif pada bedroomsakan masuk akal jika Anda memahami “turunan parsial”, pokok bahasan Bab 25 .

10.2 f(x) kali g(t)

Ketika senar gitar dalam keadaan diam, ia membentuk garis lurus yang menghubungkan kedua ujung tetapnya: satu diatur dengan tekanan jari di sepanjang leher gitar dan yang lainnya di jembatan dekat bagian tengah badan gitar. Ketika senar gitar dipetik, osilasinya mengikuti pola perpindahan sinusoidal . Dengan pengaturan kamera dan pencahayaan yang tepat, kita dapat melihat osilasi berikut beraksi:

Untuk string yang panjangnya \(L\), perpindahan dawai merupakan fungsi posisi \(x\) sepanjang string dan merupakan kombinasi linier dari fungsi-fungsi bentuk

\[ g_k(x) \equiv \sin(k \pi x /L) \]

Di mana \(k\) adalah bilangan bulat. Beberapa fungsi tersebut digambarkan dalam Gambar  10.1 dengan \(k = 1\), \(k = 2\), dan \(k = 3\).

Bentuk seperti pada Gambar  10.1 adalah snapshot stop-motion flash dari string. Bentuk senar juga berubah terhadap waktu, sehingga perpindahan senar merupakan fungsi dari keduanya \(x\) dan \(t\). Perpindahan itu sendiri merupakan sinusoidal yang periode waktunya bergantung pada panjang dan tegangan tali serta jumlah siklus sinus spasial:

\[ g_k(x, t) \equiv \sin(\frac{k \pi}{L} x) \ \sin(\frac{k \pi}{P}t) \]

Gambar  10.2 menunjukkan beberapa cuplikan string siklus 1,5 pada momen waktu yang berbeda, dan pergerakan kombinasi linier.

Mengapa komposisi tidak dapat membangun fungsi multi- input?

Kami mengabaikan komposisi fungsi dari daftar cara membangun fungsi multi-input dari fungsi yang lebih sederhana dengan satu input.

Misalnya, pertimbangkan dua fungsi tersebut \(f(x)\) dan \(g(t)\). Komposisi \(f(g(t))\) hanya memiliki satu masukan: \(t\). Demikian pula, \(g(f(x))\) hanya memiliki satu masukan: \(x\).

10.3 Membuat sendiri dari data

Meskipun Anda belum memiliki pemahaman teoretis tentang cara membuat fungsi dengan banyak masukan dari data, Anda dapat melakukan operasi R/mosaik untuk melakukannya. Fungsi kuncinya adalah fitModel(), yang seperti makeFun(), membangun suatu fungsi. Dan, misalnya makeFun(), Anda perlu menggunakan ekspresi gelombang laut untuk menentukan rumus model. Namun, tidak seperti makeFun(), Anda dapat menyerahkannya kepada komputer untuk menemukan parameter yang akan membuat fungsi tersebut selaras dengan data.

Sebagai ilustrasi, kita dapat membuat model harga rumah dari SaratogaHousesdata:

price <- fitModel(price ~ A + B*livingArea + C*bedrooms + D*bathrooms, data = SaratogaHouses)

Gunakan fungsinya dengan cara biasa. Misalnya, inilah yang dikatakan model tentang antisipasi harga jual sebuah rumah dengan ruang tamu seluas 2.000 kaki persegi, tiga kamar tidur, dan dua kamar mandi.

price(livingArea=2000, bedrooms=3, bathrooms=2) ## [1] 242448.1

Satuan keluaran sama dengan satuan pricedalam SaratogaHousesbingkai data: dolar.

Untuk alasan teknis, fungsi yang dibuat fitModel()memiliki banyak jargon pemrograman komputer di dalamnya, seperti yang dapat Anda lihat dengan membuat model itu sendiri dan kemudian melihat fungsinya. Namun Anda juga akan melihat nilai parameter yang ditemukan oleh fitModel().