Доступ к параметрам достоверности в IBM Watson nl-classifier

Я создаю веб-приложение, в котором, когда я ввожу веб-страницу, оно получает текстовое содержимое веб-страницы, токенизирует его и передает каждую строку обученному классификатору, я хочу что-то сделать с теми строками, чьи параметры достоверности> 0,98. Ниже приведен пример, взятый с сайта bluemix:

     {
  "classifier_id": "10D41B-nlc-1",
  "url": "https://gateway.watsonplatform.net/natural-language-classifier    /api/v1/classifiers/10D41B-nlc-1/classify?text=How%20hot%20wil/10D41B-nlc-1",
  "text": "How hot will it be today?",
  "top_class": "temperature",
  "classes": [
    {
      "class_name": "temperature",
      "confidence": 0.9998201258549781
    },
    {
      "class_name": "conditions",
      "confidence": 0.00017987414502176904
    }
  ]
}

Теперь в приведенном выше примере я хочу что-то с именем класса: температура, где достоверность> 0,95.

 #if class.temperature.confidence > 0.98
     #do something with it   

Является ли это возможным?


person Neo1995    schedule 29.04.2017    source источник


Ответы (1)


С возвратом JSON из вашего приложения NLP вы можете соединить два условия true в одном и том же if, чтобы сделать это.

В таком случае:

if classes.classes_name === 'temperature' and classes.confidence > 0.95 
//do something

Python использует and и or для условий логических операций. and будет проверено, если два условия true. И сделайте что-нибудь, если да.

person Sayuri Mizuguchi    schedule 30.04.2017
comment
В нем говорится, что dict не имеет атрибута class_name. после того, как я вызову классификатор. - person Neo1995; 07.05.2017
comment
Я показал вам правильный способ получить желаемое значение в соответствии с возвратом вашего json в вашем вопросе. Вы должны проверить возврат вашего JSON и пройтись по нужным значениям, а оттуда сделать условие. - person Sayuri Mizuguchi; 08.05.2017