回答編集履歴

4

補足追記

2020/11/19 23:07

投稿

toast-uz
toast-uz

スコア3266

answer CHANGED
@@ -10,7 +10,7 @@
10
10
 
11
11
  不良データを多く学習させると、その訓練データに過学習して、より不良に敏感になります。結果的に、再現率は高いが精度は低い、質問者様のような状況になります。
12
12
 
13
- 機械学習の評価指標として、単純な正解率ではなく、F値など「高めたい指標」を採用しましょう。それによって、「全て良品と判定する」といったこのスライドの最初の失敗は防止できると思います。
13
+ 機械学習の評価指標として、単純な正解率ではなく、F値など「高めたい指標」を採用しましょう。それによって、「全データを学習させたら全て良品と判定してしまった」といったこのスライドの最初の失敗は防止できると思います。
14
14
 
15
15
  その上で全データを使いましょう。
16
16
  ランダムで抽出して7割〜8割を学習データ、残りをテストデータとするとよいでしょう。

3

補足追記

2020/11/19 23:06

投稿

toast-uz
toast-uz

スコア3266

answer CHANGED
@@ -3,7 +3,7 @@
3
3
  まず、1万個のデータがあるにも関わらず600個だけでモデルを作っていることが問題であると思います。
4
4
  1万個の教師データが存在するというのは、このような不良率発見において「恵まれた環境」であると思いますので、せっかくの教師データを存分に使いたいです。
5
5
 
6
- 現在は、1万個から明らかに現実の良品率と異なる恣意的な抽出をしているため、できたモデルも信頼がおけません。
6
+ 現在は、1万個から明らかに現実の良品率と異なる恣意的な抽出をしているため、できたモデルも信頼がおけません。なお、画像などアナログデータを角度や光の具合を変えたシミュレーションにより「水増し」するのは正しく効果がある手法のようです。今回のように同一のデータで水増しした状態はよくないようです。
7
7
 
8
8
  参考: [失敗から学ぶ機械学習応用](https://www.slideshare.net/HiroyukiMasuda1/ss-181844477)
9
9
  スライド7からの例「不良率の少ない中で普通に全データ学習させてしまったらうまく学習できないから、不良品と良品を等分で学習させたら成功したよ!ーあれ?成功したのかな?」

2

補足追記

2020/11/19 23:05

投稿

toast-uz
toast-uz

スコア3266

answer CHANGED
@@ -16,4 +16,6 @@
16
16
  ランダムで抽出して7割〜8割を学習データ、残りをテストデータとするとよいでしょう。
17
17
  また学習データを、訓練データと検証データに分割し、検証データを訓練にまぜないように注意ください。
18
18
 
19
- さらに良い結果を得るには、現場の知見も入れて様々な特徴量を思いつくだけ追加しましょう。なお、現実の環境で取得できる特徴量である必要があります。例えば、1つ前が不良品だったら次も不良品率が高いから、1つ前が良品/不良品かどうかを特徴量として採用する!みたいに考えても、良品/不良品といった正解データがそんなにリアルタイムに得られているとは限りませんので、現実の環境では取得できない値になってしまいます。
19
+ さらに良い結果を得るには、現場の知見も入れて様々な特徴量を思いつくだけ追加しましょう。なお、現実の環境で取得できる特徴量である必要があります。例えば、1つ前が不良品だったら次も不良品率が高いから、1つ前が良品/不良品かどうかを特徴量として採用する!みたいに考えても、良品/不良品といった正解データがそんなにリアルタイムに得られているとは限りませんので、現実の環境では取得できない値になってしまいます。
20
+
21
+ モデルとして、GBDTのような決定木系のモデルだと、無関係な特徴量を増やしても結果に影響を与えにくいのと、特徴量の寄与度も把握できるため、特徴量をいろいろ試してみる時には最適です。

1

大幅追記

2020/11/19 23:01

投稿

toast-uz
toast-uz

スコア3266

answer CHANGED
@@ -1,7 +1,19 @@
1
1
  コードやデータの提示が無いので、少し一般論として回答します。
2
2
 
3
3
  まず、1万個のデータがあるにも関わらず600個だけでモデルを作っていることが問題であると思います。
4
- また明らかに現実の良と異なる恣意的な抽出をしてめ、きたモデルも信頼がおけませ
4
+ 1万個の教師データが存在するというのはような不良率発見におて「恵まれ環境」あると思いすので、っかくの教師データを存分に使いたいです
5
5
 
6
+ 現在は、1万個から明らかに現実の良品率と異なる恣意的な抽出をしているため、できたモデルも信頼がおけません。
7
+
8
+ 参考: [失敗から学ぶ機械学習応用](https://www.slideshare.net/HiroyukiMasuda1/ss-181844477)
9
+ スライド7からの例「不良率の少ない中で普通に全データ学習させてしまったらうまく学習できないから、不良品と良品を等分で学習させたら成功したよ!ーあれ?成功したのかな?」
10
+
11
+ 不良データを多く学習させると、その訓練データに過学習して、より不良に敏感になります。結果的に、再現率は高いが精度は低い、質問者様のような状況になります。
12
+
13
+ 機械学習の評価指標として、単純な正解率ではなく、F値など「高めたい指標」を採用しましょう。それによって、「全て良品と判定する」といったこのスライドの最初の失敗は防止できると思います。
14
+
15
+ その上で全データを使いましょう。
6
16
  ランダムで抽出して7割〜8割を学習データ、残りをテストデータとするとよいでしょう。
7
- また学習データを、訓練データと検証データに分割し、検証データを訓練にまぜないように注意ください。
17
+ また学習データを、訓練データと検証データに分割し、検証データを訓練にまぜないように注意ください。
18
+
19
+ さらに良い結果を得るには、現場の知見も入れて様々な特徴量を思いつくだけ追加しましょう。なお、現実の環境で取得できる特徴量である必要があります。例えば、1つ前が不良品だったら次も不良品率が高いから、1つ前が良品/不良品かどうかを特徴量として採用する!みたいに考えても、良品/不良品といった正解データがそんなにリアルタイムに得られているとは限りませんので、現実の環境では取得できない値になってしまいます。