Java wekaがクラッシュし続けるヒープサイズを増やしようとしています。推奨される行を使用しました:
> Java -Xmx500m -classpath
しかし、私は次のエラーを受け取ります:
-classpath requires class path specification
どういう意味かわかりません。助言がありますか?
私が見つけたのは、実際の問題は'\Program Files (x86)\Weka-3-6'
のファイル'RunWeka.ini'
にあるということです。私はそれをメモ帳で開き、ファイルの真ん中に'maxheap = 512m'
という行があります。
行を'maxheap=2000m'
に変更し、ファイルを保存してwekaをリロードしました。これにより問題が解決しました。
これが正しい方法かどうかはわかりませんが、うまくいきました。
-classpath
オプション。 -Xmx500m
オプション。
したがって、単に次の代わりに:
Java weka.core.Instances data/soybean.arff
あなたがやる:
Java -Xmx500m weka.core.Instances data/soybean.arff
何らかのスクリプト(たとえば、RunWeka.bat)を使用してwekaを実行する場合は、そのスクリプトを(メモ帳などのテキストエディターで)変更する必要があります。
端末で次のコマンドを実行します。
Java -Xmx1024m -jar weka.jar
WindowsでWeka 3.8.1を使用している場合は、javaOpts
パラメータを編集することで、多くの問題を回避できます。パラメータmaxheap
は使用されなくなったため、_RunWeka.iniファイルで次のようにjavaOpts
を設定できます。
javaOpts= -Xmx1040m
ここで、1040m
は、割り当てるメモリの量です。
ファイルでは大文字と小文字が区別されることに注意してください。
これを設定する方法はたくさんありますが、これはこのバージョンのWindows環境でWekaを実行するためのより速い方法です。
編集:WekaがWindowsで1gb
以上を使用するようにするには、JDKをインストールする必要があります。通常のJREはそれを行いません。
Wekaの公式回答(すべてのオペレーティングシステムとWekaバージョン用)は http://weka.wikispaces.com/OutOfMemoryExceptionにあります) 。
Windowsで最新のWekaバージョンを使用している場合、 答え は次のとおりです。
RunWeka.ini
ファイルのmaxheap
パラメータを変更します。
PATH
env変数と同様に、-classpath
の後にクラスパスを指定する必要があります。これは、Javaがクラスを見つけることができるパスを指定する必要があります。
-Xmx500m
設定は問題ありませんが、512mを使用することをお勧めします。
Mac OSの場合、Weka UIアプリケーションのヒープサイズを大きくするには、構成ファイルを編集する必要があります。
最大ヒープ値がすでに指定されている場合に「Javaヒープスペース」メモリエラーを解決する回避策はありますか?
実行中の場合は、Wekaを終了します。
/Applications/weka-XXX.app/Contents、またはweka実行可能ファイルがインストールされている場所にcdします。そこにInfo.plist
というファイルがあります。これはXMLテキストファイルです。次のステップで編集する必要があるため、別の場所にコピーを保存することをお勧めします。
お好きなテキストエディターでInfo.plist
(XML)ファイルを開き、「VMOptions」というブロックを探します。 「-Xmx256M」などの値 が最大ヒープサイズ を指定しているはずです。その値を「-Xmx1024M」などの大きな値に変更する必要があります。
Wekaを起動します。
Ubuntuでは同じ問題がありましたが、Java仮想マシンがこれを実行するために使用するメモリの量を増やすことで解決します:weka -m 1024m
Weka 3.9.2には、maxheapのオプションもなくなりました。 RunWeka.iniにはjavaOptsのオプションがあるため、以下を必要なメモリ割り当てに変更できます。
javaOpts=%Java_OPTS% ---- > javaOpts= -Xmx1024m
ここで1024mは、割り当てたいメモリのカスタマイズされた量です。
Wekaの公式の答えは正しいです。しかし、重要なのは、最初にすべてのJVMファイルを削除し、関連する32ビットまたは64ビットをインストールすることですJavaバージョン。関連するバージョンを使用しないと、多くの問題が発生します。 (iniファイルを変更することにより)ヒープを1024m以上に増やすことができないなどの問題。
WindowsでWeka 3.6を実行しています。これは私がやったことです。 Wekaのインストールディレクトリに移動すると、RunWeka.batファイルが見つかります。このファイルをテキストエディタで開き、Javaコマンドラインで-Xmx引数を追加します。
たとえば、これは4GBのメモリ%_Java%-Xmx4096m -classpathに設定されます。 RunWeka -i。\ RunWeka.ini -w。\ weka.jar -c%_cmd% "%2"
コマンドラインからwekaを実行するがJava=を使用しない場合、つまり、コマンドラインにweka
と入力する代わりに、
weka
メモリフラグを指定する
weka -m 1024m
これは1024メガバイトを指定します。
デフォルトのスレッドスタックサイズ20MBで十分かどうかも確認してください。以下のように、ファイル/Applications/weka-3-8-1-Oracle-jvm.app/Contents/Info.plist(MAC上)の値を50MBに増やします。
<string>-Xss50M</string>
このコマンドを使用してそれを行う最良の方法
Java -Xmx1024m -[weka classifier] -t [training file path]
上記の回答は古すぎます(最後の回答は1年前です)。 Windows 10でWEKA(バージョン3.8.1)で同じ問題が発生しました。
ヒープサイズの更新に問題がありました。修正方法は、次のように(コントロールパネルの下に)環境変数を追加することです。
Java_OPTS = -Xms30000m -Xmx30000m
ヒント:RunWeka.iniがこの環境変数を使用していることを確認してください。
上記の例では、WEKAに30GBを割り当てています。できます。
それが一部の人々に役立つことを願っています。
Weka Workbench CLIまたはナレッジエクスプローラーを使用している場合は、次のように変更する必要があります。
ドキュメントでランタイムパラメータは-Xmx [size_required] mであることが推奨されているため、[size_required]はメモリ例外を回避するために保持するメモリサイズです。
RunWeka.iniを開きます
Maxheap = [size_required] Gを定義します
私の場合、maxheap = 4Gを保持しました、maxheap = 4096mのように設定し、add -Xmx#maxheap#を#setupsですべての実行オプションに追加できます(次のようなJavaコマンドの横に「cmd_」が付いたセクション
cmd_default=javaw -Xmx#maxheap# ...............
cmd_console=cmd.exe /K start cmd.exe ..................
cmd_Explorer=Java -Xmx#maxheap# .................
cmd_knowledgeFlow=Java -Xmx#maxheap#....................
maxheap=4G
WekaおよびHelp >> SystemInfoを再起動して同じことを確認します