IBM Watson — это платформа когнитивных вычислений, которую вы можете использовать для добавления аналитики и анализа естественного языка в свои собственные приложения. Watson использует обработку естественного языка, генерацию гипотез и динамическое обучение для предоставления решений для служб вопросов и ответов на естественном языке, анализа настроений, выведения отношений, расширения концепций и услуг по языку / переводу; вы можете проверить его с помощью облачных сервисов IBM Bluemix .
Уотсон выиграл Jeopardy , занимается генетикой , создает рецепты и многое другое. Он открывает новые горизонты ежедневно.
Служба IBM Watson Question Question (QA) предоставляет API, который предоставляет вам возможности системы когнитивных вычислений IBM Watson. С помощью этой услуги вы можете подключаться к Watson, задавать вопросы на естественном языке и получать ответы, которые вы можете использовать в своем приложении.
В этом посте я зацепил Watson QA Node.js стартовый проект в API Web Speech распознавания речи и синтеза речи API. Используя эти API, вы теперь можете поговорить с Watson. Задайте любой вопрос о здравоохранении и посмотрите, что говорит Уотсон. Посмотрите видео ниже, чтобы увидеть его в действии.
Вы можете посмотреть живую демонстрацию по адресу:
Просто нажмите на кнопку микрофона, разрешите доступ к системному микрофону и начните говорить. Просто предупреждение, много фонового шума может помешать способности API распознавать и генерировать значимую расшифровку.
Эта демонстрация поддерживает только Google Chrome только на момент написания. Вы можете проверить, где веб-речь поддерживается на caniuse.com.
Вы можете проверить полный исходный код этого примера в IBM Jazz Hub (git):
Я просто взял пример приложения Watson QA для Node.js и начал играть с ним, чтобы посмотреть, что я могу сделать…
В этой демонстрации используется набор данных Watson For Healthcare , который содержит информацию из HealthFinder.gov, CDC, Национального института слуха и крови, Национального института артрита и заболеваний костно-мышечной системы и кожи, Национального института диабета и болезней органов пищеварения и почек, Национального института Институт неврологических расстройств и инсульта и Cancer.gov. Просто знайте, что это бета-сервис / набор данных — реализация Watson для ваших собственных корпоративных решений требует обучения системы и разработки алгоритмов, чтобы Watson могла понимать ваши данные.
Используя Watson с этим набором данных, вы можете задавать условные вопросы, например:
- Что такое Х?
- Что вызывает X?
- Что такое лечение для X?
- Каковы симптомы Х?
- Я в опасности Х?
Процедурные вопросы, такие как:
- Чего мне ожидать до X?
- Чего мне ожидать после X?
Общие вопросы здоровья, такие как:
- Каковы преимущества ежедневного приема аспирина?
- Зачем мне делать снимки?
- Как узнать, есть ли у меня пищевое отравление?
Или связанные с действиями вопросы, такие как:
- Как я могу бросить курить?
- Что мне делать, если мой ребенок страдает ожирением?
- Что я могу сделать, чтобы получить больше кальция?
Сервисы Watson предоставляются через RESTful API и могут быть легко интегрированы в существующее приложение. Например, вот фрагмент, демонстрирующий, как вы можете использовать службу QS Watson внутри приложения Node.js.
var parts = url.parse(service_url +'/v1/question/healthcare');
var options = {
host: parts.hostname,
port: parts.port,
path: parts.pathname,
method: 'POST',
headers: {
'Content-Type' :'application/json',
'Accept':'application/json',
'X-synctimeout' : '30',
'Authorization' : auth
}
};
// Create a request to POST to Watson
var watson_req = https.request(options, function(result) {
result.setEncoding('utf-8');
var response_string = '';
result.on('data', function(chunk) {
response_string += chunk;
});
result.on('end', function() {
var answers = JSON.parse(response_string)[0];
var response = extend({ 'answers': answers },req.body);
return res.render('response', response);
});
});
Подключиться к API Web Speech так же просто (если вы используете браузер, который реализует API Web Speech — я создал эту демонстрацию с использованием Chrome на OS X). На стороне клиента вам просто нужно создать экземпляр SpeechRecognition и добавить соответствующие обработчики событий.
var recognition = new webkitSpeechRecognition();
recognition.continuous = true;
recognition.interimResults = true;
recognition.onstart = function() { ... }
recognition.onresult = function(event) {
var result = event.results[event.results.length-1];
var transcript = result[0].transcript;
// then do something with the transcript
search( transcript );
};
recognition.onerror = function(event) { ... }
recognition.onend = function() { ... }
Чтобы заставить ваше приложение общаться с вами (синтезировать речь), вам просто нужно создать новый объект SpeechSynthesisUtterance и передать его в функцию window.speechSynthesis.speak (). При необходимости вы можете добавить прослушиватели событий для обработки речевых событий.
var msg = new SpeechSynthesisUtterance( tokens[i] );
msg.onstart = function (event) {
console.log('started speaking');
};
msg.onend = function (event) {
console.log('stopped speaking');
};
window.speechSynthesis.speak(msg);
Проверьте эти статьи на HTML5Rocks.com подробнее о распознавании речи и синтезе речи .
Вот эти ссылки снова …
- Живое интерактивное приложение (требуется Chrome): https://watsonhealthqa.mybluemix.net/
- Полный источник: https://hub.jazz.net/project/andrewtrice/WatsonHealthQA-SpeechAPI/overview
Вы можете начать работу со службами Watson для Bluemix по адресу https://console.ng.bluemix.net/#/store/cloudOEPaneId=store.