Position actuelle: Accueil> Derniers articles> Comment déployer des modèles d'apprentissage automatique et mettre en œuvre un service en ligne à l'aide de PHP

Comment déployer des modèles d'apprentissage automatique et mettre en œuvre un service en ligne à l'aide de PHP

M66 2025-06-19

introduction:

Avec le développement rapide de l'intelligence artificielle, l'application des modèles d'apprentissage automatique a pénétré dans divers domaines. Cependant, pour les développeurs, comment déployer efficacement des modèles d'apprentissage automatique formés dans des environnements en ligne et fournir des interfaces axées sur le service est toujours une question qui mérite d'être discutée. Cet article expliquera en détail comment utiliser PHP pour implémenter le déploiement en ligne et le service des modèles d'apprentissage automatique, aidant les développeurs à implémenter les fonctions d'apprentissage automatique dans un environnement PHP.

1. Construction de l'environnement

Afin de réaliser le déploiement et le service en ligne des modèles d'apprentissage automatique, il est d'abord nécessaire de créer un environnement de développement PHP. Vous pouvez utiliser XAMPP, Wampserver et d'autres outils pour créer un environnement de développement PHP local pour nous assurer que nous pouvons écrire et exécuter le code PHP localement.

2. Préparer un modèle d'apprentissage automatique qualifié

Avant de construire un service de déploiement en ligne, vous devez préparer un modèle d'apprentissage automatique formé. Généralement, la formation du modèle peut être effectuée via des langues ou des cadres tels que Python et enregistrer le modèle formé dans un format de fichier. Dans cet exemple, nous utiliserons un modèle de classification d'image simple et l'enregistrerons sous le format de fichier `.h5`.
Importer TensorFlow comme TF
à partir de Tensorflow.keras.models Import Sequential
de Tensorflow.keras.layers importe dense, conv2d, maxpooling2d, aplatir
<h1>Construire un modèle</h1>
<p>modèle = séquentiel ()<br>
modèle.add (conv2d (32, (3, 3), activation = &#39;relu&#39;, input_shape = (28, 28, 1)))<br>
Model.Add (MaxPooling2d ((2, 2)))<br>
modèle.add (aplate ())<br>
modèle.add (dense (10, activation = &#39;softmax&#39;))</p>
<h1>Compiler le modèle</h1>
<p>Model.Compile (Optimizer = &#39;Adam&#39;, Loss = &#39;catégoriel_crossentropropy&#39;, Metrics = [&#39;Précision&#39;])</p>
<h1>Former le modèle</h1>
<p>...</p>
<h1>Enregistrer le modèle</h1>
<p>Model.Save (&#39;Model.H5&#39;)<br>

3. Utilisez PHP pour charger le modèle et faire des prédictions

En PHP, nous pouvons charger et utiliser des modèles formés par Python via certaines bibliothèques tierces. Ici, nous présenterons comment charger un modèle par le service TensorFlow et utiliser PHP pour la prédiction.

Tout d'abord, vous devez installer l'extension PHP de TensorFlow en PHP. Le compositeur peut être facilement installé:

Le compositeur nécessite un TensorFlow-Serving-API-PHP

Ensuite, écrivez un script PHP, chargez le modèle et effectuez des opérations de prédiction:

<?php
require 'vendor/autoload.php';
<p>Utilisez TensorflowservingPrediCTReQuest;<br>
Utilisez TensorflowservingPrediCTResponse;<br>
Utilisez Guzzlehttp \ Client;</p>
<p>// Définir les données de demande<br>
$ request = new PredicTreQuest ();<br>
$ request-> setModelsPecName (&#39;modèle&#39;);<br>
$ request-> setModelsPecSignAnAname (&#39;servant_default&#39;);</p>
<p>// Convertir les données d&#39;entrée<br>
$ input = [<br>
&#39;image&#39; => [<br>
&#39;b64&#39; => base64_encode (file_get_contents (&#39;image.jpg&#39;)))<br>
]]<br>
]]<br>
$ request-> setInputs ($ entrée);</p>
<p>// Envoyez une demande<br>
$ client = nouveau client ([&#39;base_uri&#39; => &#39;http: // localhost: 8501&#39;]);<br>
$ réponse = $ client-> post (&#39;/ v1 / modèles / modèle: prédire&#39;, [<br>
&#39;Headers&#39; => [&#39;Content-Type&#39; => &#39;Application / JSON&#39;],<br>
&#39;body&#39; => $ request-> SerializetoString ()<br>
]));</p>
<p>$ Response = new PredicTResponse ($ réponse-> getBody () -> getContents ());</p>
<p>// Obtenez les résultats de prédiction<br>
$ sorties = $ réponse-> getOutputs ();<br>
$ prédiction = reset ($ srows) [&#39;floatval&#39;] [0];<br>

Dans le code ci-dessus, nous définissons un objet PredicTreQuest et définissons le nom et la signature du modèle. Ensuite, nous convertissons les données d'entrée en un format qui répond aux exigences du modèle et envoyons une demande via l'interface API REST de TensorFlow Serving, et enfin extraire les données prévues des résultats renvoyés.

4. Déployer des scripts PHP dans des environnements en ligne

Après avoir terminé les opérations de chargement et de prédiction du modèle, le script PHP peut être déployé dans l'environnement en ligne et fournir une interface Web pour d'autres appels système. Des serveurs Web couramment utilisés tels qu'Apache ou Nginx peuvent prendre en charge le déploiement de scripts PHP.

Voici l'exemple de commandes à installer et à démarrer Apache sur un serveur Ubuntu:

sudo apt-get install apache2
service sudo apache2 start

Enregistrez le script PHP en tant que fichier .php et placez-le dans le répertoire de racine Web d'Apache. Après cela, vous pouvez faire des prédictions en ligne des modèles d'apprentissage automatique en accédant à des URL spécifiques.

Résumer:

Cet article présente en détail comment utiliser PHP pour implémenter le déploiement en ligne et la service des modèles d'apprentissage automatique. En construisant un environnement de développement PHP, en préparant des modèles formés, en utilisant PHP pour charger des modèles et faire des prédictions, et enfin le déploiement de scripts PHP dans un environnement en ligne, les développeurs peuvent facilement servir des modèles d'apprentissage automatique et fournir des fonctions de prédiction pour les systèmes externes. J'espère que cet article pourra vous aider à déployer avec succès des modèles d'apprentissage automatique dans un environnement PHP et à atteindre des fonctions d'application plus puissantes.