web-dev-qa-db-ja.com

新しいバージョンのlmerの反復を増やしますか?

Lme4をバージョン1.0-4に更新したところ、lmer()を実行すると、以前は収束していた混合効果モデルが次の警告を出力するようになりました。

Warning message:
In (function (fn, par, lower = rep.int(-Inf, n), upper = rep.int(Inf,  :
  failure to converge in 10000 evaluations

そこで、これを修正できるかどうかを確認するために、反復回数を増やしてみたいと思います。 (メッセージの最初の部分が少し不透明に聞こえるので、警告の原因がわからないと言わなければなりません)。いずれにせよ、今はlmerControl()を使用する必要があるというドキュメントを読みましたが、実装できませんでした。具体的にどのように行うかについて、具体的な例を教えてもらえますか? (ヘルプファイルは役に立ちません)。これが私のモデルです:

m <- lmer(RT ~ Factor1*Factor2 + (0+Factor1+Factor2|Subject) + (1|Subject)  + (1|Item) + (0+Factor1+Factor2|Item), data= data)

どうもありがとう!

12
Sol

lmerControl関数を使用すると、オプティマイザーを選択して、それに制御パラメーターを渡すことができます。反復または評価の数を制御するパラメーターは、関数ごとに異なります(lmerControlのヘルプページで説明されています)。デフォルトのオプティマイザーは「Nelder_Mead」であり、そのオプティマイザーの選択では、「optCtrl」パラメーターリストで「maxfun」を指定することにより、評価の最大数を変更できます。

m <- lmer(RT ~ Factor1*Factor2 + (0+Factor1+Factor2|Subject) + 
               (1|Subject)  + (1|Item) + (0+Factor1+Factor2|Item),
          data= data, control=lmerControl(optCtrl=list(maxfun=20000) ) )

これは、収束に達することを保証するものではありません。 (私の経験では、通常はデフォルトの最大値で十分です。)データがモデルの複雑さをサポートするには不十分であるか、モデルがスタディの設計用に正しく構築されていない可能性があります。

18
42-