yuki8634
@yuki8634 (yuki kawakita)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

Pythonについて

解決したいこと

現在Railsでレシピを共有するサイトを作成中です。
材料をカテゴリー別で表示したいと考えています。
食材の名前(にんじん、鶏肉、砂糖など)を、
カテゴリー別(野菜、お肉、調味料など)に分ける
ことは可能ですか?
最適なgemなどあれば教えてください

なぜ機械学習でカテゴライズしたいか

rubyにて、例えば、トマトに関するDBを作り、カテゴリ:野菜という情報を予め登録すれば、
トマトという単語とDBの名前欄を照合して、一致したら野菜というカテゴリ名を表示することは可能です。
しかし、レシピを投稿する際に、材料名に想定された文字列以外が飛んで来ることを想定して、さまざまな
形式(ひらがな、カタカナ、漢字、別の名称、方言、英語)をすべて登録しておくのは非効率だと考えました。
私はこのレシピアプリを誰にでも(ズボラな人でも)使っていただけるように、どんな文字列を投げてもカテゴライズ
してくれるようなプログラムを実現したいです。
例)

入力値(食材名) 出力値(カテゴリー)
ニンニク(青森県産) 野菜
大きめのにんじん 野菜
ハーブドプロバンス 調味料
新鮮なマグロ 水産物・水産加工品

自分で調べたこと

こちらの記事ではPythonで作った機械学習エンジンをAPI化させ、Ruby on RailsのWEBアプリからJSON経由で呼び出すことが可能。と書いてあったので同じ方法で行いたいと思います。

0

1Answer

機械学習で分類することは可能です。手間に見合うか、精度が出るかは別問題ですが。手間については、ニンニクは野菜、ハーブドプロバンスは調味料……と正しく分類した教師データを何千件か手作業で用意する必要があります。精度については、(機械学習を何ヶ月か勉強したうえで)ある程度チューニングしても正解率90%行けばいいほうかな、という感覚ですね。

gem でやるなら https://github.com/ankane/fastText-rubyhttps://github.com/ankane/torch.rb がよさそうです。

2Like

Comments

  1. @yuki8634

    Questioner

    ご回答ありがとうございます!
    pythonについて理解が浅かったので、手作業で教師データを入力することや正解率があまり良くないかもしれないことなどためになることを聞けました。
    学習にかかる時間なども考えると全くpythonを触ったことのない状態からだとかなりかかりそうなので、今回は違う方法で試してみます。
    ありがとうございました。

Your answer might help someone💌