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 |
<<: 将来、人工知能は冷酷な大量虐殺者になるのでしょうか?
中国科学院が1月17日に発表したところによると、このほど中国科学院深圳先進技術研究所医療工学研究所低...
【51CTO.comオリジナル記事】 今日では、AI や IoT テクノロジーに投資する企業がますま...
ロシアとウクライナの紛争が始まって2週間、データ分析会社パランティアのCEO、アレクサンダー・カープ...
アルゴリズムを実装する場合、アルゴリズムの複雑さは通常、時間の複雑さと空間の複雑さという 2 つの側...
6月26日のニュースによると、今年5月、マイクロソフトは毎年恒例のBuild開発者会議で、Windo...
Microsoft は最近、顧客がローカル ERP および CRM アプリケーションをクラウドに移行...
Science Fiction Network は 1 月 5 日に報じました (Liu Yazhu...
今日の紹介を始める前に、次のシナリオを見てみましょう。 上記のアニメーションは、複数の写真からレンダ...
機械が人間のようにコンピューターを使用できる場合、機械は私たちが日常のタスクを完了するのを手助けする...
人工知能の多くの利点はよく知られ、理解され、宣伝されていますが、その限界も明らかです。しかし、あまり...
AV カメラは他のセンサーと比較して最も密度の高い情報を持っていることはよく知られており、自動運転車...