こんにちは!
今回から数回に分けて、女優識別botの作成方法を解説していきます。
第1回目となるこの記事では、botの概要およびbot作成までのワークフローを説明します。
まずは、完成版を見てみましょう。
最終的には、このようなbotを自分で作れるようになります。
https://twitter.com/tksx1227/status/1258278999878299648?s=20
今回解説するbotは5人の女優を識別するものですが、一度手順がわかると自分の好きな画像で同様のことができるようになります。
※深層学習についての基本的な知識があることを前提としています。
では、次の章から詳しく見ていきます。
女優識別botの概要など
botの概要
botアカウントに対象女優の画像を送信すると、その画像から名前と予測スコアを出力する。
今回の対象女優
- 橋本環奈
- 石原さとみ
- 深田恭子
- 新垣結衣
- 本田翼
ここは自分の好みに合わせて自由に決めてもらっても構いません。
ただ、マイナーすぎる人物だと画像が足りなくなる可能性があるので注意してください。
使用言語など
言語:Python
フレームワーク:Flask、PyTorch
環境
モデルを構築するところまでは、Google Colabratoryを使用します。
Flaskでサーバーを立ち上げるところからはローカル環境で実行します。
また、前回書いた記事の時と同様に、デプロイまではせずに、ローカル環境のみでLINEbotを実装するので、デプロイまで行いたいという方は各自でデプロイを行ってください。
ローカル環境でLINEbotを動かす手順については、こちらを参考にしてください。
ワークフロー
女優識別botの作成手順としては、以下の順番で行っていきます。
データセット作成
- スクレイピングによる画像収集
- モデル構築用に画像を加工
予測モデルの構築
- 画像認識用のモデル構築
- 作成したデータセットをもとに学習
FlaskによるLINEbot化
- 推論用プログラムの作成
- bot側の処理の実装
それぞれのテーマの解説記事は、以下のように分ける予定です。
※内容の量によっては変更するかもしれません。
追記:(2020/09/04)
すべての項目が解説済みです。
第1回:概要の説明(今回)
第2回:スクレイピングによる画像収集
第3回:画像の加工
第4回:予測モデルの構築
第5回:FlaskによるLINEbot化
おわりに
今回の記事は、はじめのあいさつ程度のものなので、ここら辺で終わりにします。
次回からは実際にデータセットを作成していくので、楽しみにしていてください!
では、今回はここまでとします。
お疲れさまでした。
追記:第2回を更新しました。