Ask @univprofblog1:

コピペだけで実用的かつ実践的なディープラーニングによる回帰分析を利用させてもらっている者です。①ディープラーニングを行う際は、多重共線性の疑いがある変数をはずすなど、変数選択を行った後に解析を実行するのでしょうか?②隠れノードに対する隠れ層の計算式を見たいのですが、どうすればよいでしょうか?③ 隠れ層と隠れノードの数に適正値はありますでしょうか?④ディープラーニングを行う上での注意点がありましたらご教授ください。

ご質問いただきありがとうございます。
①②③についてそれぞれ回答させていただきます。
① もちろん多重共線性のある変数の一方を削除してから解析することも問題ございませんが、経験的には、削除してもしなくてもモデルの精度はあまり変わりませんので、変数選択しなくても良いかと思います。
② まず、h2o.shutdown(prompt = FALSE) を削除もしくはテキスト化してください。
次に、実際にディープラーニングしている部分である
NetworkResult = ... からの11行の中に、export_weights_and_biases = TRUE を追記してください。
そうすれば、実行したあとに、h2o.weights(NetworkResult, matrix_id=1) や h2o.weights(NetworkResult, matrix_id=2) などで、1層目まで、2層目までなどの重みを確認可能です。
③ 残念ながら、隠れ層と隠れノードの数に適正値はございません。データセットによって異なります。試行錯誤的に適正値を見つけるのが一般的です。
以上です。よろしくお願い致します。

View more

Random Forestを用いてテキストのクラス分けを行っているのですが、クラス分けできたものと、クラス分けできなかったものの違いを見つけるには、Random Forestのどのような部分を見れば良いのでしょうか。 よろしくお願いいたします。

ご質問ありがとうございます。
Random forestはアンサンブル学習を活用した回帰分析手法であり、random forestの一つ一つの決定木は解釈できるのですが、その集合体となるとそれを解釈することは困難です。
クラス分けできたものとできなかったものの違いを見つけるためには、解釈が可能である決定木を実施してはいかがでしょうか?

View more

いつもお世話になっております。先日のS-plotに関して、もうひとつお聞きしてもよろしいでしょうか。 Rを使用した場合、横軸がcov(主成分スコアti,説明変数X)もしくはローディング、縦軸がcor(ti,X)で良いということでしたが、これでプロットすると、原点を通る直線上に全てプロットされてしまうみたいなのですが、これで良いのでしょうか?文献等では、ばらついているように見えるのですが…。corは、ピアソンではなくスペアマンを使った方が良いのでしょうか? 何度も申し訳ございませんが、よろしくお願いいたします。

ご質問ありがとうございます。
Xについて、オートスケーリング前後で結果が変わると思います。このあたりはいかがでしょうか。
相関係数はピアソンの相関係数でOKです。
よろしくお願い致します。

View more

ある疾患の発生を、数種の臨床検査値・臨床所見から推定するモデルを検討するため、サンプルをモデル構築用、検証用に分ける際の方法についてご教示ください。 この疾患が希少疾患であるため、全体における発症例数が少なく、 サンプル全体からランダムにモデル構築用、検証用に分けた場合には、得られたモデル構築用データによっては非常に不安定なモデルとなる可能性があるとします。 このとき、疾患発症例、疾患非発症例からそれぞれランダムにモデル構築用、検証用とを抽出してデータセットを作成する、という方法で解析を行った場合、その解析結果には何かバイアスが生じると考えられますでしょうか。

ご質問ありがとうございます。
サンプル数が少ない中でモデル構築用サンプルとモデル検証用サンプルとに分けることは悩ましいですよね。お察し致します。
サンプル数が多いときはランダムにモデル構築用、検証用とに分けるので問題ないのですが、サンプル数が少ないときはランダムに分けるとそれぞれが似たサンプルだけになってしまい、その結果バイアスが生じる可能性があります。
対応策の一つは、ランダムにモデル構築用、検証用とに分けた検討を、乱数を変えて複数回(100回とか1000回とか)行うことです。それぞれのサンプルについて、モデル検証用に選ばれたときの複数個の推定値の平均値を代表的な推定値とします。
もう一つの対応策はこちらで紹介したKennard-Stone (KS) アルゴリズムを用いることです。
http://univprof.com/archives/16-06-22-4145563.html
これによってまんべんなくモデル構築用サンプルを選ぶことができます。
参考になれば幸いです。

View more

初めまして。私もデータ分析を始めて間もない初心者です。目的変数が複数ある場合の回帰分析の手法についてです。目的変数を一つずつで重回帰分析を行い、その後、複数ある回帰モデルをどのように関連付けると良い結果が得られるのでしょうか。 ご回答のほど、よろしくお願いいたします。

muscat
ご質問ありがとうございます。
関連付けると申しますか、与えられた説明変数の値を、それぞれの回帰モデルに入力して、それぞれ目的変数の値を計算することになります。
目的変数の間の関係を調べたい場合は、目的変数のみで主成分分析などの手法を用いるのがよいかと思います。

View more

+1 answer in: “はじめまして。データ分析を初めたばかりの者です。 回帰分析について質問です。目的変数が複数の場合は行うことが出来ないのでしょうか? もし、可能であるならばどういった手法が考えられますか? ご回答の程、宜しくお願い致します。”

はじめまして。データ分析を初めたばかりの者です。 回帰分析について質問です。目的変数が複数の場合は行うことが出来ないのでしょうか? もし、可能であるならばどういった手法が考えられますか? ご回答の程、宜しくお願い致します。

analyzer
ご質問ありがとうございます。
PLS https://note.mu/univprof/n/n01151b7e122b の仲間の中には、PLS2という目的変数が複数に対応した回帰分析手法があります。
ただ、各目的変数の推定精度を高めるためには、PLS2を使うのではなく、目的変数ごとに回帰モデルを構築したほうが良いです。
よろしくお願い致します。

View more

+1 answer Read more

なるほど、ありがとうございます。カウントデータが0の多い分布(平均<分散)であっても同様で問題なさそうでしょうか。

Takamichi Yanai
ご質問ありがとうございます。
変換自体は問題ございません。カウントの大小を説明できる変数が説明変数内にあると良好な結果になると思います。
よろしくお願い致します。

View more

必要最低限のサンプル数の見積もりに関してです。それには検出力・エフェクトサイズ・有意水準などが必要、とよく言われますが、ある標本のある目的変数を複数の特徴量を使用した予測モデルを作る際、その結果(感度、特異度、その他)がまだ見ぬ母集団にとっても妥当である、と言える為のサンプル数はどのように決められるべきなのでしょうか。また、この場合他にも、専門家が正解付けできる最大標本数や過適応しない最低限の標本数なども考慮しなければならないと思われます。いかがでしょうか。

ご質問いただき感謝致します。
おっしゃるような回帰モデル・クラス分類モデルにおけるサンプル数の問題はとても重要な問題です。問題を難しくさせているのは、扱うデータセットによって目的変数と特徴量との関係は異なり、それによって必要なサンプル数も異なることです。
また回帰モデル・クラス分類モデルを用いるときに重要なことは、モデルの適用領域・適用範囲 http://univprof.com/archives/16-05-30-3588574.html を考えなければならないことです。モデルを作るときにどれだけサンプル数があっても、目的変数の値を予測したいサンプルが、適用領域の外でしたら推定誤差が大きくなってしまいます。
そこで妥当なサンプル数を決める、という考え方から、サンプル数によってモデルの適用領域が異なる、と転換します。サンプル数が少ないときでもモデルは作れますが、そのモデルの適用領域は狭く、得られた推定値のばらつきは大きくなり、サンプル数が多くなるとそれだけ適用領域は広がり、推定値のばらつきも抑えられる、ということです。
そして、モデルの適用領域や推定値のばらつきを、与えられたデータセットから求める、ということになります。

View more

GAPLSによる変数選択について、以下の行でエラーがでます。エラー対応についてお願いいたします。 > GAPLSResults = genAlg(as.vector(Y), X, GAset, PLSset, seed = 10000) Error in genAlg(as.vector(Y), X, GAset, PLSset, seed = 10000) : Requested a population that is almost as large as the number of all possible subsets. The population size can be at m

ご質問ありがとうございます。
エラーの内容から推察すると、NumberOfChromosomesが大きすぎてすべての変数の組み合わせと同じくらいになってしまっているようです。NumberOfChromosomesの値を小さくして実行されてはいかがでしょうか?
よろしくお願い致します。

View more

こんにちは。高精度・解釈可能モデルを利用させてもらっている統計初心者です。重回帰分析を実行する際、説明変数の一つを晴れなら1、くもりなら2、雨なら3というように設定したら解釈できない回帰式ができたため、説明変数を三個に分け、晴れなら説明変数A=1、B=0、C=0。くもりならA=0、B=1、C=0。といった風に説明変数を分けて二値化していました。高精度・解釈可能モデルでは、二値化することで何か不都合が生じますでしょうか。また、説明変数の一つを晴れなら1、くもりなら2、雨なら3というように設定してもよろしいのでしょうか。ご教授ください。

ご質問いただき感謝致します。
>説明変数を三個に分け、晴れなら説明変数A=1、B=0、C=0。くもりならA=0、B=1、C=0。といった風に説明変数を分けて二値化していました。高精度・解釈可能モデルでは、二値化することで何か不都合が生じますでしょうか。
こちらの方法が正しいです。特に不都合もありません。
> 説明変数の一つを晴れなら1、くもりなら2、雨なら3というように設定してもよろしいのでしょうか。
こちらの方法は望ましくありません。たとえば回帰式でこの変数に重みが割り当てられることになりますが、1, 2, 3という値自体に意味がないため重みも意味のないものになってしまいます。詳しくは
http://univprof.com/archives/16-05-16-3260315.html
をご覧ください。

View more

解析初心者です。LOOCVのAdj-R2とRMSEの算出方法がわかりません。JMPを用いてステップワイズ法により重回帰分析を行いました。その際Adj-R2とRMSEは算出されるのですが、LOOCVのAdj-R2とRMSEの算出ができません。まず、LOOCVについてもあやふやなのですが、回帰式の妥当性を検証する方法とありました。しかし、テストデータとトレーニングデータが変わるため、回帰式も変わります。だとすると、回帰式の妥当性よりも方法論(の妥当性?)だと思うのですが、、、このあたりをわかりやすく教えていただけると幸いです。よろしくお願いいたします。

ご質問ありがとうございます。
> テストデータとトレーニングデータが変わるため、回帰式も変わります。だとすると、回帰式の妥当性よりも方法論(の妥当性?)だと思うのですが
おっしゃる通りと思います。そもそも、Adj-R2もRMSEも、LOOCVをしたときのr2もRMSEも、回帰モデルを評価する指標です。そして、それぞれ目的が異なります。
Adj-R2とRMSEは、すべてのサンプルを用いて作られた回帰モデルを評価する指標のため、回帰モデルの妥当性、を評価することになります。
一方、LOOCVをしたときのr2とRMSEは、一部のサンプルのみを用いて回帰モデルを作り、それ以外のサンプルの推定結果を用いて計算されるため、同じ方法論で回帰モデルを作ったときの外部データに対する推定性能、を評価することになります。
それぞれ、目的に応じて使い分けるとよいと思います。

View more

いつもお世話になっております。 先日、opls-daに関して質問させていただきました。分かりやすいご回答ありがとうございました。S-plotの横軸は、ローディングかと思っていたのですが、共分散とは違うのでしょうか? Rを使用した場合、横軸がcov(主成分スコアti,説明変数X)、縦軸がcor(ti,X)ということで良いしょうか? 重ね重ね申し訳ありません、よろしくお願いいたします。

再度のご質問ありがとうございます。
> S-plotの横軸は、ローディングかと思っていたのですが、
おっしゃる通りです。基本的にXをオートスケーリングしてあれば、tiとXとの共分散とローディングとは等しくなります。説明不足で申し訳ございませんでした。
> Rを使用した場合、横軸がcov(主成分スコアti,説明変数X)、縦軸がcor(ti,X)ということで良いしょうか?
はい、こちらもおっしゃる通りです。
よろしくお願い致します。

View more

いつも大変お世話になっております! PCAとPLS-DAの違いについて、ほとんど無知の人に簡単な例えで説明したいのですが、以下の説明は概念として正しいでしょうか? 両方ともPC1×PC2のスコアプロットのことを指しています。 PCA(PC1×PC2)とは、多次元のデータ空間の中に入って、データ全体が最もよく見える位置(情報量が多い)から写真を撮ったもの。 PLS-DA(PC1×PC2)とは、A群、B群という2つの群に分類したサンプル群を、最も2群が大きく分かれて見える位置から写真を撮ったもの。 もし違っていましたら、ご指摘いただけると幸いです。 よろしくお願いいたします。

Takashi Miyagawa
ご質問いただき感謝致します。
お返事が遅くなりまして申し訳ございません。拝読致しました。
上の説明は、初学者にも分かりやすい説明と思います。表現としても間違っておりません。
よろしくお願い致します。

View more

はじめまして、こんにちは。自己組織化マップのコード販売についてお聞きしたいのですが、この自己組織化マップの初期値はランダムでしょうか?主成分分析で初期値を決めてバッチ処理をする、いわゆるバッチ型SOMに変更は可能でしょうか? また学習済みのマップに新たに個体の変数を投入して継続学習させる事は出来ますか? それと、各個体のマップにおける座標は出力出来ますか? 長々と申し訳ありませんが購入する上で気になったので質問させて頂きました。

ご質問いただきありがとうございます。また本プログラムに興味を持っていただき感謝致します。
> この自己組織化マップの初期値はランダムでしょうか?
はい、おっしゃる通りです。
> 主成分分析で初期値を決めてバッチ処理をする、いわゆるバッチ型SOMに変更は可能でしょうか?
このような拡張は難しい状況でございます。
> 学習済みのマップに新たに個体の変数を投入して継続学習させる事は出来ますか?
こちらのような学習方法への対応も困難な状況です。再度すべてのデータセットで再学習することになってしまいます。
>各個体のマップにおける座標は出力出来ますか?
はい、こちらは可能です。
ご期待に添えない部分もあり申し訳ございませんがご検討のほどよろしくお願い致します。

View more

いつもHPの記事を大変参考にさせていただいております。 最近、PLS-DAを使って解析しようしていたのですが、調べていて改良されたOPLS-DAという手法があると知りました。どのような違いがあるのかご存知でしたら、ご教示いただけますか?あと、もしご存知でしたらOPLS-DAの結果で出てくるS-Plotはどのようにして求めれば良いのか、教えていただけるでしょうか? お忙しいところ大変申し訳ありませんが、よろしくお願いいたします。

ご質問いただきありがとうございます。
PLS-DAとOPLS-DAとの違いは、PLSとOPLSとの違いから来ています。OPLSでは、目的変数yとの相関がない成分をXから除くことで、よりPLSモデルを解釈しやすいようにしている手法です。
S-plotの求め方について。i番目の主成分をti、説明変数をXとすると、横軸をtiとXとの共分散(ベクトル)、縦軸をtiとXとの相関係数(ベクトル)としてものでございます。
ご参考になれば幸いです。

View more

はじめまして、こんにちは。 いつも大変有意義な記事を公開して頂きありがとうございます。 大学教授様が公開してされているプログラムについて質問があります。 「たくさんのニクラス分類を一気に行い、ダブルクロスバリデーションで評価するプログラム」についてなのですが、こちらはダブルクロスバリデーションの試行回数は任意で決められるのでしょうか? こちらのプログラムに興味があり、質問させて頂きました。

-i.jmdA
ご質問ありがとうございます。また二クラス分類のプログラムに興味をもっていただき感謝申し上げます。
今回のプログラムでは、一度プログラムを実行したときのダブルクロスバリデーションの試行回数は"1回のみ"となっております。ただ乱数を変えることでクロスバリデーションのときにどのようにサンプルを分割するかを変えることができますので、プログラムを複数回実行することで複数回ダブルクロスバリデーションを実行するのと同じことになります。
つまり、プログラムの実行回数でダブルクロスバリデーションの試行回数を任意に決めることができます。
今後ともよろしくお願い致します。

View more

「10の回帰分析手法を一気に実行して結果を比較する!ダブルクロスバリデーションによる評価付き」の プログラムに使用するモデル構築用データのcsvファイルは、多重共線性の疑いがある説明変数を除いた変数選択後のデータを用いる必要があるのでしょうか。また、説明変数・目的変数は、オートスケーリングした後の数値をcsvに入力しておく必要があるのでしょうか。統計解析初心者であるため、稚拙な質問になりますが、よろしくお願いいたします。 オートスケーリングしたデータを用いた際の新しいデータの予測方法(元のスケールに戻す方法等)等ブログの内容は、統計解析初心者には大変参考になっています。情報発信感謝いたします

もちろん、多重共線性の疑いがある説明変数を除いた変数選択後のほうが望ましいですが、信頼できる方法で選択することが難しいのであれば、そのままでも構いません。PLSなど多重共線性に対処可能な回帰分析手法も搭載されているためです。ちなみに、下のように多重共線性のある変数を自動的に削除する方法するプログラムもあります。
https://spike.cc/shop/univprof/products/tPeynNQs
https://spike.cc/shop/univprof/products/62vLdPOg
また必要に応じてプログラム内でオートスケーリングしていますので、事前にオートスケーリングする必要はありません。
ブログの内容が参考になっているようで幸いでございます。
今後ともご愛好のほどよろしくお願い致します。

View more

統計初心者です。ダブルクロスバリデーション(笑)の記事でダブルクロスバリデーションを複数回繰り返すことで (たとえば100回)、r2DCV・RMSEDCV・正解率DCVのばらつきを検討する必要があるとあります。この繰り返し作業は、同記事内で紹介されているクロスバリデーションのデメリットにあたる”r2CV・RMSECV・正解率CVがよくなるようなモデルを選んでる”という内容に当らないのでしょうか。また、過去のダブルクロスバリデーションに関する質問回答での100個のデータセットの内検証用の20のデータセットは100回の繰り返し作業中は、検証用データセットに固定され、構築用にはならないのでしょうか。

ご質問いただき感謝致します。回答が遅くなり申し訳ありません。
ダブルクロスバリデーションは各回帰分析手法を評価するための方法です。ダブルクロスバリデーションを複数回(たとえば100回)行う場合も同様です。回帰モデルを評価するのではなく、手法を評価します。もう少し具体的に書くと、与えられたデータセットに対する手法の評価です。
そのため、たとえば100回 r2DCV・RMSEDCV・正解率DCV を計算して、100の中でもっとも値が良いモデルを選ぶ、といったことはしません。あくまで、それらのばらつきをみます。たとえば、PLSで100回行った場合より、SVRで100回行った場合のほうがばらつきが小さい、ということでしたら、そのデータセットでは、SVRの方が回帰分析手法として安定している、といえます。このようにPLSやSVRなどの手法を評価するわけです。
また、クロスバリデーションを繰り返すとき、たとえば5-foldクロスバリデーションとすると、どのようにサンプルを5分割するかは繰り返しごとに変わります。シャッフルされるわけです。このため、r2DCV・RMSEDCV・正解率DCVにばらつきが出るわけです。

View more

Leave-One-Out CVについての質問です。全部でN個データがあり、(N/2)個をモデル構築用データD1、(N/2)個をモデル検証用データD2とします。モデル構築はD1のみを使用すると思うのですが、LOOCVを行う際にはD1+D2を使用するのでしょうか?あるいはD1の中の1個を検証用データ、(N/2-1)個を構築用データとし、すべてが1度検証用データとなるまで繰り返すのですか?

ご質問ありがとうございます。
検証方法は言葉の使い方など少しややこしいですよね。
結論から申しますと、「D1の中の1個を検証用データ、(N/2-1)個を構築用データとし、すべてが1度検証用データとなるまで繰り返す」ということになります。
D1とD2のように、あらかじめモデル構築用データとモデル検証用データに分けてモデルの検証を行うことを外部バリデーション(external validation)と呼びます。一方で、D1のようなモデル構築用データの中で、1つを除いたりいくつか分割した後の1ブロックを除いたりして、モデル構築と除いたデータを用いた検証とを繰り返すことが、内部バリデーション、つまりCross Validation (CV) です。
最終的には外部バリデーションでモデルの検証を行うのが一般的です。

View more

クロスバリデーション(笑)の記事について質問なのですが、一般的なK分割クロスバリデーションにおいても、K分割したサンプルそれぞれについての推定を行ってその平均値を算出していませんか? つまり、大学教授さんが言っている「ダブルクロスバリデーション(クロスモデルバリデーション)」というのは一般的なクロスバリデーションのことだと思うのですが、いかがでしょうか。 何卒不勉強なもので、自分には理解不足があると思いますから、どうかお手柔らかにお教えいただけると幸いです。

ご質問ありがとうございます。
「一般的なクロスバリデーション」と「ダブルクロスバリデーション(クロスモデルバリデーション)」とは異なります。少しややこしいところですので、言葉の定義から丁寧に回答致します。
まず「クロスバリデーション」です。これは、一つのデータセットをモデル構築用データセットとモデル検証用データセットに分け、モデル構築用データセットを用いてモデルを構築してモデル検証用データセットの推定を行う、ということを繰り返し行うことです。つまり、一つのサンプルは、モデル構築用データセットになるときもあれば、モデル検証用データセットになることもあります。
次に「K分割クロスバリデーション」です。これはクロスバリデーションの一つです。データセットをK個のグループに分割し、(K-1)個のグループをモデル構築用データセット、1個のグループをモデル検証用データセットにします。モデル構築用データセットを用いてモデルを構築してモデル検証用データセットの推定を行います。これを、K個のグループそれぞれが一度モデル検証用データセットになるまで、つまりK回繰り返すわけです。
最後に「ダブルクロスバリデーション(クロスモデルバリデーション)」です。これは、「K分割クロスバリデーション」が入れ子構造になっているとお考えください。つまり、データセットをK個のグループに分割し、(K-1)個のグループをモデル構築用データセット、1個のグループをモデル検証用データセットにしたあとに、その(K-1)個のグループ(モデル構築用データセット)をK個のグループに分割します。たとえばK=5で100サンプルのデータセットであるとすると、80サンプルのモデル構築用データセットと20個のモデル検証用データセットに分けたあとに、80サンプルを16サンプル × 5個のグループに分けます。
そして内側の「K分割クロスバリデーション」(サンプル数が少ない方、例でいうと64個のモデル構築用データセット・16個のモデル検証用データセットに分けた方)において、PLSの成分数・LASSOのλなどのパラメータを最適化します。 外側の「K分割クロスバリデーション」(サンプル数が多い方、例でいうと80個のモデル構築用データセット・20個のモデル検証用データセットに分けた方)では、すでに内側のクロスバリデーションでパラメータが最適化されていますので、最適化されたパラメータを使ったモデルでモデル検証用データの推定だけ行います。
参考になれば幸いです。
蛇足ですが、ご質問のようにK分割クロスバリデーションがややこしい要因として、K分割クロスバリデーションを行った後の統計量の出し方が一通りではないことがあげられます。このあたりのことはあとでブログにも載せようと思います。

View more

「データを準備するだけ!PythonでEGO!目的変数が複数」を購入した者です。サンプルデータを使用して実行してみたのですが、「operands could not be broadcast together with shapes (50,10) (8,) 」というエラーが発生してしまいました。どうすれば実行できますでしょうか。大変お手数ですが、返信よろしくお願いします。

muscat
ご質問ありがとうございます。
またこのたびはプログラムのご購入をいただき感謝致します。
プログラムについてご不便をおかけ致しまして申し訳ございません。
サンプルデータについて、今回は目的変数の数を 3 にしているにもかかわらず、data.csvの説明変数の数と、data_prediction2.csvの説明変数の数とが異なることが原因でした。
data_prediction2.csvを開いていただき、X1 と X2 の二列を削除していただけないでしょうか。
申し訳ございませんがよろしくお願い致します。

View more

初めまして、データ解析初心者です。クロスバリデーションについて質問があります。 クロスバリデーションには、LOOCV、k分割、ブートストラップ等いろいろありますが どのクロスバリデーションを使えばもっともよくモデルの性能を評価できますか? モデルの性能評価に、どの方法を使えば良いかわからず困っております。 それとも単純に、サンプルの数から計算コストを考えてどの方法を使うか決めるのでしょうか。お手数ですがご回答いただけるとうれしいです。どうぞ宜しくお願い致します。

こむぎこ
ご質問いただきありがとうございます。
"モデルの性能" として何を評価するのかによりますが、たとえば、PLSの成分数などのハイパーパラメータを決めるためのモデルの評価をするときには、5-fold クロスバリデーションを使えばまず問題ありません。
あと、LOOCVでは特にサンプル数が多いときにクロスバリデーションの効果が出ないため使わないほうが望ましいです。

View more

ありがとうございます。カウントデータで0と1の間に収まるように変換するというのは、単純に最大値で割るような変換をすればいいのか、それとも歪度を調整するbox-cox変換のような処理をするのでしょうか。その場合でも0と1の間に収めるのが難しいですが・・・

Takamichi Yanai
再度のご質問ありがとうございます。
分かりにくくて申し訳ございません。正確に申し上げると、確率で表現することになります。カウントデータとのことですので、今は頻度で表されていると思います。それを確率に変換するわけです。変換の仕方はデータセットによるのでなんとも言えませんが、最大値で割るのも一つの方法と思います。
よろしくお願い申し上げます。

View more

「コピペだけで15の変数選択手法を一気に実行して結果を比較する! (R言語)」を購入しました。ソースを見ると連続量に対する手法が中心だったのですが、2クラス分類やカウントデータの回帰のための変数を選択できるよう、何か工夫できないでしょうか。ロジットモデルや負の2項回帰で適用したいと考えております。

Takamichi Yanai
ご質問ありがとうございます。
またこのたびはプログラムをご購入いただき感謝致します。
2クラス分類やカウントデータで利用したいとのこと、まず2クラス分類では、2つのクラスを 0 と 1 で表現することで、今回のプログラムにより変数選択することが可能です。
次にカウントデータのとき、まずは値の範囲が 0 から 1 になるように変数変換してからロジット変換したものを目的変数にすることで、今回のプログラムで変数選択できます。
よろしくお願い致します。

View more

初めまして。「コピペだけで実用的かつ実践的な多クラス分類用サポートベクターマシン (Support Vector Machine, SVM) (MATLAB言語)」を購入させていただいたものですが、結果として出力される3つの混合行列の違いについて教えていただけますでしょうか。 また、one vs one法を用いているようなので、各クラスの再現率、適合率、F値をだして評価できるのではと思うのですが可能なのでしょうか。よろしくお願いします。 (先ほど一度同じ質問を送ってしまっているかもしれません。もし重複して送ってしまっていたら申し訳ありません。よろしくお願いします)

naoyayamaguchi
ご質問いただきありがとうございます。
また多クラス分類用SVMのプログラムをご購入いただき感謝致します。
3つの混合行列について、順番に
・SVMモデルを構築したサンプル (トレーニングデータ) の推定結果における混同行列
・クロスバリデーションの推定結果での混同行列
・モデル検証用サンプル (テストデータ) の推定結果における混同行列
です。
またモデル性能の指標について、手動もしくは別途コードを書いていただくことになりますが、テストデータの推定結果は "PredictedY2.csv" に格納されていますので、こちらから計算していただくことが可能です。
よろしくお願い致します。

View more

Next