Обновление не влияет на результаты (API Prediction)

Я экспериментирую с набором данных language_id.txt из примера Google Prediction. Сейчас я пытаюсь обновить модель следующим методом:

def update(label, data)
  input = @prediction.trainedmodels.update.request_schema.new
  input.label = label
  input.csv_instance = [data]
  result = @client.execute(
    :api_method => @prediction.trainedmodels.update,
    :parameters => {'id' => MODEL_ID},
    :headers => {'Content-Type' => 'application/json'},
    :body_object => input
  )
  assemble_json_body(result)
end

(Этот метод основан на некоторых Пример кода Google.)

Моя проблема в том, что эти обновления не действуют. Вот оценки для This is a test sentence. независимо от того, сколько обновлений я запускаю:

{
   "response":{
      "kind":"prediction#output",
      "id":"mymodel",
      "selfLink":"https://www.googleapis.com/prediction/v1.5/trainedmodels/mymodel/predict",
      "outputLabel":"English",
      "outputMulti":[
         {
            "label":"English",
            "score":0.420937
         },
         {
            "label":"French",
            "score":0.273789
         },
         {
            "label":"Spanish",
            "score":0.305274
         }
      ]
   },
   "status":"success"
}

Согласно заявлению об отказе от ответственности в нижней части раздела "Создание модели анализа настроений", я убедился, обновить не менее 100 раз, прежде чем ожидать каких-либо изменений. Сначала я попытался использовать одно предложение и обновить его 1000 раз. Во-вторых, я попытался использовать около 150 уникальных предложений, взятых из Simple Wikipedia и обновленных каждый раз. Каждое обновление было «успешным»:

{"response":{"kind":"prediction#training","id":"mymodel","selfLink":"https://www.googleapis.com/prediction/v1.5/trainedmodels/mymodel"},"status":"success"}

но ни один из подходов не изменил мои результаты.

Я также пытался использовать API Explorer (Prediction, v1.5) и обновлять таким образом примерно 300 раз. В моих результатах по-прежнему нет никакой разницы. Эти обновления также были «успешными».

200 OK
{
"kind": "prediction#training",
"id": "mymodel",
"selfLink": "https://www.googleapis.com/prediction/v1.5/trainedmodels/mymodel"
}

Я совершенно уверен, что модель получает эти обновления. get и analyze показывают, что модель имеет numberInstances": "2024". Однако, как ни странно, list показывает, что модель имеет "numberInstances": "406".

На данный момент я не знаю, что может быть причиной этой проблемы.


person gmv    schedule 27.06.2012    source источник
comment
Добро пожаловать в Stack Overflow. Нет необходимости или даже стандарта помещать в вопрос такие заголовки, как Предыстория, Проблема и т. д. Вместо этого напишите это четко, и они не понадобятся. В общем, отформатируйте свой вопрос, как и большинство других, и у вас все получится.   -  person the Tin Man    schedule 05.01.2015
comment
нашел ответ на свою проблему? такая же проблема   -  person tomermes    schedule 25.01.2016
comment
Не могли бы вы ответить на свой вопрос с решением? stackoverflow.com/help/self-answer   -  person BalinKingOfMoria Reinstate CMs    schedule 25.01.2016
comment
К вашему сведению, с апреля 2018 года Cloud Prediction API был закрыт. Эта служба была заменена Cloud Machine Learning Engine, cloud.google.com/ml-engine.   -  person Jochem Schulenklopper    schedule 17.09.2018
comment
Возможно, вы спросите об очевидном случае, но каково значение MODEL_ID в вашем первом фрагменте кода? Вы уверены, что получаете (обновленные) прогнозы из той же модели, которую вы обновляете?   -  person Jochem Schulenklopper    schedule 17.09.2018


Ответы (1)


Обновление 2019 г.

На основании комментария Йохема Шуленклоппера о том, что API был закрыт в апреле 2018 года.

Разработчики, решившие перейти на Google Cloud Machine Learning Engine, должны будут воссоздать свои существующие модели Prediction API.

Примеры API машинного обучения: https://github.com/GoogleCloudPlatform/cloudml-samples

person Christian    schedule 01.05.2019