AWSTweet現在、プライベートでプロダクト開発を行っています。そのメイン機能がアイテム(商品)のレコメンドになるのですが、このレコメンドはユーザーベースな協調フィルタリングを利用して実装しています。いうと「評価の傾向(=嗜好)が似ている人を探して、あなたはまだ評価してないけど似ている人が高評価なものを推薦する」というものになります。上で動かそうと考えていました。上で動かすにはひと工夫必要でした。用いて解決する手順についてご紹介します。レコメンド実装まず、実装したレコメンドプログラムについて簡単に紹介します。リファクタリングできていない部分や、機械学習的にもっとこうした方がいい/こうしないとダメという点があるかと思います。アドバイスいただければありがたいです。自身の評価を平準化(評価の平均を引き、甘口な人と辛口な人の平準化を行う)する他人の評価も平準化する類似度の高いユーザー情報を取得する...と続いていきます。簡単のために今回は「類似度の高いユーザー情報を取得」までのプログラムを載せています。このプログラムの実行結果は下記のようになります。似ていると判断されました。(id=20の人を敢えて似た嗜好にしています。)まだ磨き込みができていませんが、いったんそれっぽい結果が返ってくることを確認できました。上で動かそうとすると、下記のエラーが発生します。モジュールが見つからないと怒られています。化する必要があります。詳細は下記の記事をご覧ください。モジュールを含めてモジュールをアップロードしなおしても、結果は変わりませんでした。環境でビルドしていないとならないとのことでした。モジュールを用意してくれている優しい方もいらっしゃったので試してみたのですが、動くには動くのですがもっといい方法がないのかな..?と思いながらその日の開発をやめました。モジュールを上げる際に1分前後ビルドに時間がかかるようになってしまいました。キーノート初日の日でした。要点を引用させていただくと、サーバレスアプリケーションを開発する際に、複数のLambda関数から共有されるコードを持つことは極めて一般的なことです。Layersにより、ビジネスロジックの実装を簡素化するために複数の関数追加することまたは標準ライブラリによって使用されるカスタムコードにすることができます。Layerとして置くことができます。関数のコードは変更する必要はなく、通常のようにレイヤー内のライブラリーを参照することができます。Layersを使うかの例を提示するために、私達は、NumPy/SciPyを含むパブリックレイヤを公開します。提供するレイヤを標準で追加してくれてるとのことでした。用いる手順について紹介します。画面で「レイヤーの追加」を選択します。ついては標準レイヤーが提供されていますのでそれを選択します。含むプログラムが動作しました!私にとってタイムリーで至れり尽くせりなアップデートで大変ありがたかったです。他にも共通で使いたいモジュールがいくつかあるので、今後カスタムレイヤー化していきたいと考えています。アップデートで一番嬉しいものになりました。いうサービスが提供されました。今回構築したレコメンド実装がもしかしたら無駄になるのかも..?と不安と期待を持ちつつ、プレビューが承認されたらまた使ってみたいと思います。Cla...タイトル長くてすみません。今年9月に下記の記事を書きました。レコードのパージ(一括削除)処理を書きまし...2018-04-25「SQLアンチパターン」を避けるためのチェックリスト(サマリー版)これまで「SQLアンチパターン」本のまとめを書いてきました。EC2アップデートや自分が詳しくない機能をメモっております。はてなブログPro2児の父なITエンジニアです。好きなサッカーチームは川崎フロンターレです。その他、子育て、社会問題、シビックテック関連の記事についても書いていきたいと思います:)※各ポストは個人の意見であり、所属する組織の見解とは関係ありません。(1)月別アーカイブその他プライバシーポリシースターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。