Unsplash の Franck V による写真 この記事はLeiphone.comから転載したものです。転載する場合は、Leiphone.com公式サイトにアクセスして許可を申請してください。 この記事を読めば、希望するプログラミング言語で機械学習モデルを展開し、予測を行うことができるようになります。はい、Python を使い続けることも、Java または Kotlin を介して Android アプリで直接予測を行うこともできます。あるいは、Web アプリケーションでモデルを直接使用することもできます。選択肢は数多くあります。簡単にするために、Postman を使用します。 ただし、オプションが非常に多いため、このモデルをライブ サーバーに配置する方法については説明しません。モデルはローカルホスト上で実行されるため、別のネットワークからはアクセスできません (ただし、モデルを AWS などにデプロイする方法については、Google で検索してください)。 次のようなディレクトリ構造を作成しました。 ML 展開:
Anaconda 経由で Python をインストールした場合は、Flask を除くすべてのライブラリが事前にインストールされている可能性があります。したがって、ターミナルを起動して次のステートメントを実行します。
順調に進んでいますか?よし、それでは本題に入りましょう。 基本的な予測スクリプトの作成 ディレクトリ構造に従っている場合は、model/Train.py ファイルが開いているはずです。まず、アイリス データセットを読み込み、単純な決定木分類器を使用してモデルをトレーニングします。トレーニングが完了したら、joblib ライブラリを使用してモデルを保存し、精度スコアをユーザーに報告します。 ここでは何も複雑なことはありません。この記事の焦点は機械学習ではなく、単にモデルの展開だからです。スクリプト全体は次のとおりです。
展開する これで、app.py ファイルを開いてインポートを行うことができます。 OS モジュール (Flask と Flask RESTful の一部、10 秒前に作成したモデル トレーニング スクリプト) が必要であり、それらおよび joblib をトレーニング モデルに読み込む必要があります。
ここで、Flask のインスタンスと Flask RESTful からの API を作成する必要があります。何も複雑なことはありません:
次に行うことは、モデルがトレーニングされたかどうかを確認することです。 Train.py では、モデルが iris-model.model ファイルに保存され、そのファイルが存在しない場合は、まずモデルをトレーニングする必要があることを指定しています。トレーニングが完了したら、joblib を通じてロードできます。
ここで、予測を行うためのクラスを宣言する必要があります。 Flask RESTful はこのコーディング規則を使用するため、クラスは Flask RESTful リソース モジュールから継承する必要があります。クラスでは、get()、post()、またはデータを処理するその他のメソッドを宣言できます。 データが URL を介して直接渡されないように、 post() を使用します。ユーザー入力から属性を取得する必要があります(ユーザーが入力した属性値に基づいて予測を行います)。次に、読み込んだモデルの .predict() 関数を呼び出すことができます。このデータセットのターゲット変数の形式が ('Iris-setosa', 'Iris versicolor', 'Iris virginica') ではなく (0, 1, 2) であるため、これも修正する必要があります。最後に、予測の JSON 表現を返すことができます。
もうすぐ到着です。そのまま進みましょう!また、リクエストを処理するために使用される URL の部分であるルートを宣言する必要があります。
最後に、Python にアプリケーションをデバッグ モードで実行するように指示します。
それは正しいことだ。 Postman やその他のツールを使用してモデルを起動し、予測を行うことができます。 何か見逃した場合に備えて、app.py ファイル全体を参考として示します。
さて、準備はいいですか? 良い!ルート ディレクトリ (app.py がある場所) に移動し、ターミナルを起動して以下を実行します。
約 1 秒後、アプリケーションがローカルホスト上で実行されていることを示す出力が表示されます。 ここで、Postman を開いて次の操作を行います。
次に、[送信] をクリックします。 見て!ほぼすぐにモデルからの予測が得られます。 最後に この記事を最後まで読んでいただければ幸いです。すべてをコピーして貼り付けるだけであれば、必要なライブラリがすべてインストールされている限り、問題なく実行できるはずです。 新しく得た知識を、独自のデータセットやビジネス上の問題に活用することを強くお勧めします。 Python 以外の言語でアプリケーションを作成し、データと機械学習関連のものにのみ Python を使用する場合に便利です。 出典: http://t.cn/AirsMxVF |
<<: 将来、人工知能は冷酷な大量虐殺者になるのでしょうか?
COVID-19パンデミックは、物流やスーパーマーケットなどの分野に問題と機会の両方をもたらしまし...
[[211061]] STATWORX チームは最近、Google Finance API から S...
ビッグデータと人工知能の市場は現在、活況を呈しています。調査会社の最近の予測によると、これら2つの技...
マイクロロボットは極めて狭い空間でも移動できますが、これは人間や従来のロボットでは不可能なことです。...
[[355787]]画像ソース: https://pixabay.com/images/id-537...
[[257227]] 2015年、映画『ベイマックス』は多くの人々の心を動かし、『ベイマックス』とい...
毎年恒例のテクノロジー業界のオープニングショー「CES」が現在、米国ラスベガスで開催されています。 ...
「AI技術はKuaishou製品ライン全体に浸透しています。AI技術による多次元のエンパワーメントに...
モノのインターネットは大量のセンサーデータを生成すると予測されており、それが人工知能と組み合わさるこ...
ストーリーの背景:元のデータは個人の取引記録ですが、データ自体のプライバシーを考慮して、元のデータは...