2017-04-12 37 views
1

私はAWSの初心者です。自分のコンピュータでscikit-learnを使ってRandomForestClassifierを訓練しました。私はpkl形式で自分のモデルを取得するためにjoblibを使用しました。AWSのscikit学習モデル.pklを再利用する

AWS LambdaでこのRandomForestを再利用したいと思います。 私のモデルを再び読み込むためにsklearn.externalsが必要なので、Numpy、Scipy、sklearn、my code、my modelをpkl形式で含むZipディレクトリを作成しました。 私はラムダで自分のコードを実行するためにS3バケットにこのジッパーを入れました。

model.predict()を使用してこのモデルを使用できるかどうかを知りたいですか?私はこの特定の問題についてのドキュメントは見つかりませんでした。

答えて

0

実際は、URLを使用して成功しました。私のモデル.pklをS3バケットに入れて、urllib2を使って得ることができます。

req = urllib2.Request(url=url_model) 
f = urllib2.urlopen(req) 
model = cPickle.load(f) 

ファイルが公開されている場合にのみ動作します。ここでは

は、誰もがこれまでと同じ問題に遭遇した場合、私のコードです。非公開にする必要がある場合は、次のようにboto3を使用してURLを生成することができます。

url_model = s3.generate_presigned_url(
    ClientMethod='get_object', 
    ExpiresIn=1, 
    Params={ 
     'Bucket': 'my-bucket', 
     'Key': 'mymodel.pkl' 
    } 
) 
関連する問題