問題がありますが、解決策は非常に単純であるべきだと思います。モデルを構築していて、10 分割交差検証によってその精度をテストしたいと考えています。これを行うには、トレーニング コーパス 90%/10% をトレーニング セクションとテスト セクションに分割し、90% でモデルをトレーニングし、10% でテストする必要があります。最終的にコーパスの各ビットがテスト データとして使用されるように、毎回異なる 90%/10% 分割を使用して、これを 10 回実行したいと考えています。次に、各 10% テストの結果を平均します。
トレーニング コーパスの 10% を抽出して新しいファイルに書き込むスクリプトを作成しようとしましたが、今のところうまくいきません。私が行ったことは、ファイル内の合計行数を数え、この数を 10 で割って、抽出する 10 個の異なるテスト セットのそれぞれのサイズを知ることです。
trainFile = open("danish.train")
numberOfLines = 0
for line in trainFile:
numberOfLines += 1
lengthTest = numberOfLines / 10
私自身のトレーニング ファイルでは、それが 3638 行で構成されていることがわかったので、各テストはおよそ 363 行で構成される必要があります。
1 行目から 363 行目、364 行目から 726 行目などを別のテスト ファイルに書き込むにはどうすればよいですか?