簡體   English   中英

無法使用Rasa NLU / Sklearn訓練新模型

[英]Cannot train new model using Rasa NLU/Sklearn

我正在應用程序和Rasa NLU服務器之間構建中間件,該中間件可以簡化不同的任務,例如創建模型或更新...

我的主要目標是構建模型,並使用每次向舊模型添加一個示例的功能來每次對其進行更新,因此通過添加一個示例就可以對舊數據進行更新,然后將其再次提交給Rasa服務器。

這是場景:
首先,我先創建一個空模型,然后將發布請求發送到localhost:5000/train?project=defaults&fixed_model_name=model1
有了這個數據

{
  "rasa_nlu_data": {
    "common_examples": [], 
    "entity_synonyms": [], 
    "regex_features": []
  }
}

所以我得到這個回應:

“ info”:“經過培訓的新模型:model1”

然后我以相同的請求開始訓練,但使用包含新的班級greet新數據

{
  "rasa_nlu_data": {
    "common_examples": [
      {
        "text": "hey", 
        "intent": "greet"
      }
    ], 
    "entity_synonyms": [], 
    "regex_features": []
  }
}

它的工作方式與我預期的一樣,如果我添加了同一堂課的示例,則訓練總是可以正常進行

{
  "rasa_nlu_data": {
    "common_examples": [
      {
        "text": "hey", 
        "intent": "greet"
      },{
        "text": "heyy", 
        "intent": "greet"
      }
    ], 
    "entity_synonyms": [], 
    "regex_features": []
  }
}

但是當我嘗試用其他不同的意圖發布其他數據時, bye這樣

{
  "rasa_nlu_data": {
    "common_examples": [
      {
        "text": "hey", 
        "intent": "greet"
      },
       {
        "text": "heyy", 
        "intent": "greet"
      },
      {
        "text": "goodbye", 
        "intent": "bye"
      }
    ], 
    "entity_synonyms": [], 
    "regex_features": []
  }
}

我收到此錯誤:

“錯誤”:“類別數必須大於一;必須為一”

並且如果我跳過第二步來重做相同的場景,那么我的數據將如下所示:

{
  "rasa_nlu_data": {
    "common_examples": [
      {
        "text": "hey", 
        "intent": "greet"
      },
      {
        "text": "goodbye", 
        "intent": "bye"
      }
    ], 
    "entity_synonyms": [], 
    "regex_features": []
  }
}

提交后,我得到這個錯誤:

“錯誤”:“ n_splits = 2不能大於每個類中的成員數。”

我的Rasa NLU服務器配置:

我已經檢查過可能與我的問題相似的問題,但這些不是我想要的
ValueError:類數必須大於一(python)
ValueError:無法將拆分數n_splits = 3大於樣本數:1

我知道Rasa模型需要許多實體來運行解析,但是與我相距甚遠,我只想先構建一個干凈的模型

Rasa NLU強制您每個意圖至少有兩個示例。 雖然對於任何一種良好的性能,無論如何,您都應該擁有更多:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM