質問をすることでしか得られない、回答やアドバイスがある。

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

新規登録して質問してみよう
ただいま回答率
85.48%
NumPy

NumPyはPythonのプログラミング言語の科学的と数学的なコンピューティングに関する拡張モジュールです。

Python

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

Q&A

解決済

1回答

831閲覧

機械学習予測結果に対するexp(x)-1演算の意味について

Rooibosgood

総合スコア30

NumPy

NumPyはPythonのプログラミング言語の科学的と数学的なコンピューティングに関する拡張モジュールです。

Python

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

0グッド

1クリップ

投稿2021/06/02 05:00

教えていただきたい事

機械学習、初心者です。
kaggleで、lasso回帰の予測結果に対して、exp(x)-1の演算を実施し、予測値に反映している方がいました。
このexp(x)-1の演算は、何のために実施しているのでしょうか?
何か利点があると思うのですが、わかないのでどなたか教えていただけないでしょうか?

該当のソースコード

Python

1lasso.fit(X_train, y_train) 2train_pred = np.expm1(lasso.predict(X_train)) 3pred = np.expm1(lasso.predict(X_test))

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

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

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

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

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

guest

回答1

0

ベストアンサー

目的変数の対数変換ではないでしょうか。目的変数が正規分布しない場合は、対数変換を行った方が良いことが知られています(調べると出ます)。その場合は、y_trainを作る前にlog1pを通していたりするはずです。

投稿2021/06/02 12:15

hayataka2049

総合スコア30933

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

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

Rooibosgood

2021/06/03 00:53

回答ありがとうございます。 「対数変換」という、キーワードもわかっていなかったので助かりました。 目的変数が、正規分布しない場合に、対数変換を行うということですが、それは、y_train= log1p(y_train)として、lasso.fit(X_train, y_train)を実行するという認識で正しいでしょうか? 私が見ていたKaggleのPythonコードに、log1pを使用しているところがなかったので、混乱しました。 Teratailでの質問も初めてなので、上記コードの表記方法もわからず、見にくくなってしまい申し訳ありません。
hayataka2049

2021/06/03 03:30

対数変換の場合は y_train = log1p(y_train) lasso.fit(X_train, y_train) pred = lasso.predict(X_test) pred = expm1(pred) という流れですね。 logが見当たらないようであれば違うと思いますが、その場合は元々やってたけどlogの方だけ消してexpを消し忘れたか、それともそういうのとは全然違うなにかアドホックな発想で指数を使っている可能性があります。
Rooibosgood

2021/06/03 04:42

回答ありがとうございます。 よくわかりました。 kaggleのPythonコードは、多分消し忘れかもしれませんね。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問