ホームページ  >  記事  >  バックエンド開発  >  PHP のディープラーニングの初心者ガイド

PHP のディープラーニングの初心者ガイド

王林
王林オリジナル
2023-06-11 10:45:141306ブラウズ

近年、ディープラーニング技術の急速な発展は、多くの分野に大きな影響を与えています。人気のプログラミング言語として、PHP はディープラーニングと徐々に統合されています。この記事では、初心者向けに PHP でのディープ ラーニングの簡単な入門ガイドを提供し、PHP でディープ ラーニングがどのように実装され、そのメリットが得られるかを理解できるようにします。

まず、ディープラーニングとは何かを理解する必要があります。人工知能の分野におけるディープラーニングは、人間がプログラムするのではなく、コンピューターが自ら学習してタスクを実行できるようにすることを目的とした機械学習テクノロジーです。ディープラーニングは、人間の思考や行動をシミュレートする人間の取り組みを表します。

PHP でディープ ラーニングを実装するには、いくつかの重要なツールとライブラリが必要です。

  1. TensorFlow: Python および C プログラミング言語をサポートする非常に人気のある深層学習ライブラリです。詳細なドキュメントとアプリケーション例が豊富で、次の用途に適しています。始めたばかりの学習者にとてもフレンドリーです。
  2. Keras: Keras は高レベルの深層学習ライブラリであり、TensorFlow へのインターフェイスであり、理解しやすい API を提供します。
  3. Theano: Theano は、ハイ パフォーマンス コンピューティングでよく使用される数式を定義、最適化、評価するためのライブラリです。

PHP 開発者にとって、Keras は良い選択です。 Keras を使用して深層学習モデルを構築できます。

次に、PHP でディープ ラーニングに Keras を使用する方法を説明します。

まず、PHP 環境に Keras をインストールする必要があります。 Composer を使用して、Packagist から PHP の Keras ライブラリをインストールできます。コマンド ラインで次のコマンドを入力します:

composer require php-ai/php-ml

インストールが完了したら、ディープ ラーニング モデルの構築を開始できます。

ここでは、例を使用して深層学習モデルの構築プロセスを説明します。デジタル認識用のモデルをトレーニングしたいと考えています。

まず、トレーニング データを準備する必要があります。 MNIST データセットを使用できます。これは非常に人気のある数値データセットであり、すでに Keras に含まれています。

use PhpmlDatasetMnistDataset;
$dataset = new MnistDataset();
$dataset->load();

次に、データをトレーニング データとテスト データに分割する必要があります。

use PhpmlCrossValidationStratifiedRandomSplit;
$sampler = new StratifiedRandomSplit($dataset->getSamples(), $dataset->getTargets(), 0.5);

この例では、Phpml ライブラリのデータ分割メソッドである StratifiedRandomSplit を使用します。

次に、Keras を使用して深層学習モデルを構築します。シンプルな深層学習モデルである Sequential モデルを使用します。

use PhpmlNeuralNetworkLayerDense;
use PhpmlNeuralNetworkLayerFlatten;
use PhpmlNeuralNetworkLayerActivation;
use PhpmlNeuralNetworkLayerDropout;
use PhpmlNeuralNetworkClassifierKeras;
use PhpmlNeuralNetworkOptimizerAdam;
use PhpmlNeuralNetworkActivationFunctionSigmoid;

$model = new Sequential();

$model->add(new Flatten());
$model->add(new Dense(800, new Sigmoid()));
$model->add(new Dropout(0.2));
$model->add(new Dense(10, new Sigmoid()));
$model->add(new Activation('softmax'));

$optimizer = new Adam();
$model->compile($optimizer, 'categorical_crossentropy', ['accuracy']);

ここでは、シーケンシャル モデルを作成し、いくつかのレイヤーを追加します。具体的には、Flatten レイヤー、800 ノードの高密度レイヤー、20% ドロップアウト レイヤー、10 ノードの高密度レイヤー、および Softmax アクティベーションを備えたアクティベーション レイヤーを追加しました。

次に、モデルをトレーニング データに適合させる必要があります。

$keras = new Keras([
    'input_shape' => [1, 28, 28],
    'output_shape' => [10],
    'loss' => 'categorical_crossentropy',
    'metrics' => ['accuracy'],
    'epochs' => 3,
    'batch_size' => 128,
]);

$keras->fit($sampler->getTrainSamples(), $sampler->getTrainLabels());

ここでは、Keras オブジェクトをインスタンス化し、バッチ サイズ 128 で 3 エポック間トレーニングします。

最後に、テスト データ セットを使用してモデルを評価できます。

$score = $keras->score($sampler->getTestSamples(), $sampler->getTestLabels());
echo 'Test Accuracy: ' . $score['accuracy'] . PHP_EOL;

ここでは、Keras で提供されているスコア方法を使用して、テスト データ セットの精度を評価します。

これは、PHP でのディープ ラーニングの簡単な入門ガイドです。ここまで、Keras を使用して PHP でディープ ラーニング モデルを構築する方法と、モデルをトレーニングして評価する方法について見てきました。この例を通じて、初心者が深層学習テクノロジーをよりよく理解し、応用できるようにしたいと考えています。

以上がPHP のディープラーニングの初心者ガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。