🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

3回答

1128閲覧

し線形回帰によるモデル予測時の特徴量の考え方

abcdefg66adf

総合スコア8

機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2021/01/01 12:44

編集2021/01/02 03:18

これから機械学習を試していきたいと考えています。
お詳しい方、アドバイスいただければと思います。
いかに質問をまとめました。
【実現したいこと】
・機械学習において1つの予測モデルの中で、場合により特徴量が有効なケースと
無効なケースがあり、分けて学習させる。

【例題】
・天候による消費行動の予測(百貨店での売上予測)
・特徴量に天気(晴れ、雨、くもり)や降水量(〇mm等)がある
・学習モデルは線形モデルを想定
・「降水量」について「雨」の日には有効な特徴量となるが、晴れの日には機能しない。
→このまま学習させると、晴れの日に降水量0mmが学習され降水量という特徴量が
うまく学習できない。

【代替手段】晴れと雨の日を分けて、2つのモデルを作成する。
アンサンブルとかで最終的に結合
→特徴量が多い場合や、場合分けが多い場合、条件毎にモデルが増えてしまう。

イメージ説明

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

seastar3

2021/01/01 14:33

学習させる正解は、商品分類ごとの売上高なのか、店舗全体の売上高なのか、どのようなデータでしょうか。 また、各種データはピンポイントで店舗付近のものなのか、一定の商圏のものないし複数の観測エリアの平均のようなものなのか、説明をお願いします。
abcdefg66adf

2021/01/01 23:36

質問ありがとうございます。 まず今回の質問の本質としては、機械学習の習得としており、百貨店の売上予測は、 題材の一つとなります。(ですので百貨店にこだわりがあるわけではありません) それを踏まえ、以下に回答します。 第一ステップとしては、店舗全体の売上となります。 また、天候データはざっくりとしたデータであり、全国の平均データとなります。 まずは全体傾向を把握したいです。 第二ステップとしては、予測モデルの精度を上げるため、商品分類毎、店舗付近のデータ等もデータ加工方法次第で作成できますので、そちらのデータで検証していきます。
jbpb0

2021/01/02 11:01

グラフを見ると、晴れの日の売り上げの変動が、雨の日の降水量に伴う変動よりも大きいですよね それはつまり、天気でも降水量でもない、別のもっと影響が大きな要因があるということなので、それが何か把握して特徴量に入れないと予測精度が上がらないような気がします
guest

回答3

0

重回帰モデルの分析をお考えのようですから、scikit-learnの LinearRegression()メソッドによるモデルを扱う手法を習得されるとよろしいでしょう。
データの下ごしらえとしては、晴れの日は湿度により降水量の値のマイナス値を当てはめるか、晴れの日の模範データを定めて学習用のデータ数として薄まらないように、重複して適度な個数分学習データに混ぜ込み学習させると、重回帰の線型モデルになるのではないでしょうか。後者の場合は晴れの予想の回帰直線は延長できますが余り有意ではないでしょう。むしろ別の分析による屈折した直線を継ぎ足す方がふさわしいと考えます。

投稿2021/01/02 02:41

seastar3

総合スコア2287

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

abcdefg66adf

2021/01/02 04:04

晴れの日にマイナス値を当てはめるのは新しい考え方でした。試してみます。 あれから質問文に図を追加させていただきました。 屈折した直線継ぎ足しは、多項式での対応だと思いますが、図を見ても決定計数の 改善は難しそうな印象です。
seastar3

2021/01/02 07:15 編集

特徴量が、降水量、気温、予報区分(晴、曇り、雨、雪等)、湿度、風速、風向などと多元的になるのですから、求める回帰直線は6次元以上の空間に軌跡を描く直線から推定値を導くことになるでしょう。直線が無理なら、n項の特徴量でモデル化するn-1平面の回帰分析(つまり解がベクトルになる)を進めることになるでしょう。
guest

0

説明変数である「天気」と「降水量」の相関が高いとすると、マルチコが発生する可能性がありますね。
マルチコをを回避するテクニックは色々ありますが、まずは実際に学習させてみて、係数の符号や予測精度を検証することが大事です。
線形回帰モデルであれば、説明変数が目的変数に寄与しているかどうか可視できるので、特徴量から外すことも比較的簡単にできると思います。

投稿2021/01/02 02:10

jcs502ulf

総合スコア307

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

Python

1if 天気 != 晴れ: 2 降水量の学習

みたいな感じではうまくいきませんか。

投稿2021/01/01 21:08

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

abcdefg66adf

2021/01/01 23:39

頂いた意見のイメージがつかめずすみません。 その場合、天気==晴れの場合と、天気 != 晴れの2つのモデルが出来てしまうイメージでしょうか? そのような学習をさせているブログ等の情報があると大変イメージしやすいです。
退会済みユーザー

退会済みユーザー

2021/01/02 00:46

不勉強ですみません。 機械学習と線形モデルについて勉強した上で理解できれば再度、回答させていただきます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問