機械学習(ML)モデルは本番稼働させた後、精度が下がっていくケースがある。そこでAI(人工知能)によるDX(デジタル変革)で先行する企業の間では、MLモデルを継続的に改良する「MLOps」に取り組むケースが相次いでいる。AIをビジネスに活用するうえでMLOpsは必須だ。
クックパッドは料理レシピのWebサービスおよびアプリの幾つかの機能にMLモデルを組み込んでいるほか、ユーザーの投稿コメントなどに不適切な内容が含まれていないか検査する際にMLモデルを活用している。同社の研究開発部に所属する深沢祐援氏は「国内事業で20~30個ほどのモデルを本番運用している」と話す。

MLモデルによって実現している機能の1つは、レシピのタイトルを基に材料を推測して提示する「Title-to-Ingredients」だ。ユーザーによるレシピの投稿支援に使う。
ユーザーがレシピを投稿する際には、タイトルや作り方、必要な材料などを入力する。Title-to-Ingredientsはユーザーが画面上でレシピのタイトルを入力すると、その料理に必要だと思われる材料を推測して、候補を複数提示する。ユーザーは、その候補をクリック/タップすることで素早く入力できる。
Title-to-Ingredientsは、「(1)自然言語として入力されたタイトルを単語に分割しベクトルに変換する」と「(2)ベクトルから材料を提案する」という2つのステップを踏む。これら2つのステップごとにモデルを分けて開発している。
このうち改良する際に注意が必要なのは、(1)のベクトル変換モデルだという。このモデルについては月次で精度に関するメトリクスを確認し、下がっていれば最新のデータを加えた学習データによって再トレーニングをする。過去にユーザーが投稿したレシピは、タイトルや材料を関連づけた状態で、米アマゾン・ウェブ・サービス(AWS)のデータウエアハウスサービスである「Amazon Redshift」に保存している。再トレーニングにはこのデータを使う。
メトリクスを確認して再トレーニングするかどうかを決めるのは、再トレーニングによって精度が上がるとは限らないためだ。「これまでとは異なる特性のデータが加わるなどの要因で、精度が悪化する可能性がある」(深沢氏)。