概要
お世話になります。
現在、機械学習システムを利用したAPI開発についての調査を行っています。
私はまだ機械学習について何の知見も持っていません。
課題を解決するのにどの機械学習アルゴリズムを使用すればいいのか
また開発を進めて行く上でデータの用意や前処理などで気を付けたほうがいいことなどを
ご教授いただければと思います。
現状、僕の方ではscikit-learnで提供されているsklearn.neighborsの使用を検討していますが
どれが最適解かわかっていません。
解決したい問題
下記の様なCSVデータをもとにモデルを学習し、
未知のデータを入力として渡されたときに、類似したデータを出力するシステムを考えています。
CSVデータはPlayStation®3のソフトを扱うことを想定しています。
- 列
項目名 | 説明 |
---|---|
name | 商品名 |
age | 対象年齢 |
gender | 対象性別 |
genre | 種類 |
price | 価格 |
datetime | 発売日時 |
- 行(例)
METAL GEAR SOLID,15-,male,action,3480,2011-11-10 ウイニングイレブン 2016,6-,male,sports,6600,2015-10-01
上記の様なCSVデータが300行あります。
例えば上記のCSVデータをもとに学習したモデルに下記のCSVデータを
入力として与えたときに類似データを候補として数個挙げてくれるシステムを目標としています。
- name以外の特徴を与える。
in.csv
16-,male,sports,6600,2015-10-01
- 類似データを出力する。
out.csv
11,ウイニングイレブン 2016 22,FIFA 16 33,プロ野球スピリッツ
上記の問題を解決するために調査して分かったこと
僕が調べた結果、下記の事が分かりました。
-
プログラムを使って、データから共通点を見つけ出すアプローチとして機械学習、ディープラニングが挙げられる。
- 機械学習は人間が正解を教えてあげることで、モデルが学習していく。
- ディープラーニングではモデルが正解を自動で見つけ出す。
- ディープラーニングは機械学習に比べて複雑で、ブラックボックスになりやすい。
-
機械学習には大きく分けて、教師あり学習、教師なし学習、強化学習が挙げられる。
- 教師あり学習では人間によって正解があらかじめモデルに与えられている。
- 教師なし学習では正解は与えられず、機械がデータを自動でグループ分けする。
-
教師あり学習では、一般的にデータの分類問題、予測問題を解決できる。
-
類似データの推論には、クラス分類、クラスタリング手法が挙げられる。
- 類似データの推論には、k近傍法が使用されることがある。
-
学習データには、数値のみ使用できるため、データの前処理が必要になる。
上記が調べてみて、ふわっと理解できたことです。
機械学習も複雑なシステムであると思うので、出来れば使用するアルゴリズムが
どの様なものであるか知って起きたいと思っています(数式レベルで)。
なので無暗にPoCするのではなく、先にアルゴリズムを決めてから調査、PoCを行いたいです。
現状、機械学習の教師あり学習のk最近旁アルゴリズムを利用して開発したいと考えています。
伝えたいこと
- 類似データの分類に使用するアルゴリズムをご教授頂きたい。
- データ前処理、デバック、アルゴリズムのドキュメント等、開発を行う上で必用なノウハウをご教授頂きたい。
とても投げやりなってしまい、申し訳ございません。
僕自身調査を進めて行こうと思いますが、機械学習を利用したことがないので、どれが最善なのか分かりません。
ご教授の程、お願い致します。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/09/10 09:57
2019/09/10 10:23
2019/09/10 10:41 編集
2019/09/10 12:40
2019/09/10 13:26 編集
2019/09/10 13:34
2019/09/10 13:55
2019/09/10 14:07
2019/09/10 14:22