Tutorial ini membimbing anda melalui membina aplikasi cadangan filem menggunakan pelayan pembelajaran mesin sumber terbuka, Predictionio. Alat yang berkuasa ini memudahkan penciptaan aplikasi yang mampu mengesyorkan item, meramalkan tingkah laku pengguna, dan mengenal pasti persamaan item. Mari kita menyelam ke dalam proses.
Konsep Utama:
- Predictionio adalah pelayan pembelajaran mesin sumber terbuka yang sesuai untuk membina enjin cadangan dan aplikasi ramalan. Ia mengendalikan algoritma kompleks, membolehkan anda memberi tumpuan kepada pembangunan aplikasi.
- Menyediakan Predictionio memerlukan Java (versi 6 atau lebih tinggi) dan MongoDB. Selepas pemasangan, akses antara muka web di port 9000 untuk membuat pengguna dan aplikasi.
- Enjin Cadangan Filem dalam Predictionio sangat disesuaikan, membolehkan anda menentukan jenis item, jadual latihan (menggunakan Ekspresi Cron), keutamaan cadangan (kesegaran, serendipity, dan lain -lain), dan matlamat cadangan.
- Aplikasi itu sendiri akan melibatkan dua fasa: fasa pembelajaran di mana pengguna menilai filem, dan fasa cadangan di mana aplikasi mencadangkan filem berdasarkan input pengguna. Kami akan menggunakan API Moviedb untuk mengambil data filem.
Pemasangan dan persediaan:
Tutorial ini menganggap persekitaran Linux. Untuk sistem operasi lain, pertimbangkan untuk menggunakan Homestead bertambah baik untuk persediaan yang diperkemas.
- Muat turun Predictionio dan ekstrak ke lokasi yang anda inginkan.
- Pasang Prasyarat (Java 6 dan MongoDB) menggunakan skrip persediaan yang disediakan:
bin/setup-vendors.sh
- Mulakan Predictionio:
bin/start-all.sh
- Akses antara muka web di
http://localhost:9000
. Buat akaun pengguna menggunakan bin/users
.
- Buat aplikasi baru (mis., "Movie_Recommendations") dan perhatikan kunci aplikasi.
Tambahkan enjin cadangan item (mis., "Filem-Recommender"). -
- Konfigurasikan tetapan enjin:
- Jenis item: Tinggalkan sebagai lalai (semua jenis item).
Jadual Latihan
- : Tetapkan ke untuk latihan minit demi minit (Ekspresi Cron).
0 * * * * ?
- Keutamaan cadangan: Laraskan ,
freshness
, serendipity
, unseen items only
, dan seen actions
untuk keinginan anda. Untuk contoh ini, kami akan menggunakan "mengesyorkan sebarang item." number of recommendations
- Matlamat Cadangan: Tetapkan kepada "Like."
integrasi API bergerak:
Dapatkan kunci API dari pangkalan data filem (TMDB) untuk mengakses data filem mereka.
Pembangunan Aplikasi:
Aplikasi ini akan terdiri daripada fasa pembelajaran (pengguna menilai filem) dan fasa cadangan (aplikasi mencadangkan filem).
Pasang dependencies: - tambahkan ini ke anda:
composer.json
run
<code class="language-json">{
"require": {
"damel/flight-skeleton": "dev-master",
"predictionio/predictionio": "~0.6.0",
"guzzlehttp/guzzle": "4.*"
},
"autoload": {
"classmap": [
"controllers"
]
}
}</code>
dan
. composer install
composer dump-autoload
3
- (Gunakan konfigurasi nginx yang sesuai jika diperlukan.)
.htaccess
Membangunkan aplikasi: Buat fail
untuk mengendalikan penghalaan dan inisialisasi aplikasi. Membangunkan pengawal untuk mengendalikan fasa pembelajaran dan cadangan, menggunakan predictio php SDK dan menggosok untuk berinteraksi dengan ramalan dan API bergerak masing -masing.
<code class="language-apache">RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [QSA,L]</code>
(contoh fasa pembelajaran) -
(contoh fasa cadangan)
index.php
Kesimpulan:
Tutorial ini menyediakan asas untuk membina aplikasi cadangan filem dengan Predictionio. Langkah seterusnya melibatkan pelaksanaan logik aplikasi terperinci, menyambung ke API MoviedB, dan mewujudkan antara muka pengguna. Ingatlah untuk mengendalikan keadaan ralat dan mengoptimumkan prestasi.
Atas ialah kandungan terperinci Buat aplikasi Cadangan Filem dengan Prediction.io - Persediaan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!