В тази статия ще разгледаме в подробности какви са възможностите, които имате с Google Cloud Natural Language API. Ще видим какви са те от SEO гледна точка и защо е добре да не подценяваме силата на изкуствения интелект.
Съдържание:
Какво представлява Google Cloud Natural Language API
Кои са основните функционалности
Как да активираме Cloud Natural Language API
Как да правим анализ с помощта на Google Sheets
Какво представлява Google Cloud Natural Language API
Google Cloud Natural Language API представлява модел на машинно обучение, който може да анализира синтаксиса, чувствата и настроенията в един текст. Изключително гъвкаво и функционално API, което тепърва ще се развива много.
Тук трябва да се има предвид, че това API е част от глобалното семейство на Machine Learning API-тата на Google и при него се използват най-развитите модели на машинно обучение.
Кои са основните функционалности
Cloud Natural Language API има различни методи за извършване на анализ върху вашите текстове. Всеки един от методите съдържа изключително ценна информация за разбиране на езика. Това са:
- Синтактичен анализ;
- Анализ и разпознаване на субекти;
- Анализ на настроенията на субектите;
- Анализ на чувствата;
- Класификация на съдържанието.
Ще ги разгледаме малко по-подробно, защото определено си заслужава да им бъде отделено повече внимание.
Синтактичен анализ
Синтактичният анализ извлича езикова информация като разбива даден текст на поредица изречения и лексеми*. Синтактичният анализ се извършва чрез метода analyzeSyntax. Допълнителна информация можете да откриете тук.
Прави се подробна разбивка на всички думи като информацията се разделя на две части:
- Част на речта;
- “Дърво” на зависимостите.
1. Част на речта
Тази част съдържа информация за морфологията на всяка дума.За всяка дума се прави анализ, който съдържа:
- Нейната класификация като част на речта (дали е съществително, глагол и т.н.)
- Спрежение;
- Граматическо настроение;
и много други...
2. Дърво на зависимостите
Дървото на зависимостите описва синтактичната структура на всяко едно изречение.
Python библиотеките nltk и spaCy съдържат подобни функционалности, но трябва да се има предвид, че Google Cloud Natural Language API е една идея по-лесен за използване. В крайна сметка при всеки е много строго индивидуално. Също така трябва да се има предвид, че spaCy и nltk са с отворен код и следователно са безплатни. Използването на Natural Language API-то обаче струва пари след определен брой безплатни заявки, което ще опишем по-долу в статията.
Анализ на субекти
Анализа на субектите проверява дадения текст за известни преобразувания (съществителни имена като публични личности, забележителности и т.н.) и връща информация за това. Анализът на субектите се извършва с analyzeEntities метода. Допълнителна документация тук.
GCNP API предоставя данни за всеки открит субект и дори предоставя връзки към конкретната статия в Wikipedia (ако съществува такава). Също така се изчислява и степен на видимост. Например резултатите, които са по-близко до 0, са по-малко забележими, докато оценките по-близо до 1.0 са много по-забележими.
Анализ на чувството
Услугата за синтактичен анализ се използва най-вече за създаването на функции, които после се въвеждат в модели за машинно обучение. Тук обаче анализът на чувството се използва малко по-различно.
Анализът на чувството предоставя емоционалното мнение в рамките на предоставения текст.
Cloud Natural Language API връща две стойности:
- Score - описва емоцията в текста в стойност от -1 (отрицателна) до +1(положителна) като 0 е неутрална;
- Magnitude - измерва силата на емоцията.
Най-добре ще успеем да обясним тези стойности със следните примери:
и.....
В горепосочените примери можем да видим основната разлика в двата показателя. В първото изречение имаме доста силно изразена емоция чрез думата “hate” (мразя), докато във втория пример имаме отново емоция, но тя е по-слабо изразена чрез думите “I don’t like” (не харесвам).
Все пак трябва да се има предвид, че тук все още нямаме поддръжка на български език. Доста често се добавя поддръжка и за останалите езици, но за съжаление нашият език все още го няма. Този анализ поддържа следните езици:
Анализ на настроенията на субекта
Анализът на настроенията на субекта съчетава анализ на субекта и анализ на чувствата. Тук отново нагласите на субектите се представят от числови стойности и величини. След това тези резултати се сумират в обща оценка на настроенията. Това е един по-сложен процес, който изисква допълнително внимание, за да бъде изцяло разбран. По-любопитните могат да прегледат пълната документация от Google тук.
Анализът на настроенията на субектите засега работи само за английски, японски и испански език.
Класификация на съдържанието
Класификацията на съдържанието анализира документа и връща списък от категории, които се отнасят за текста намерен в документа. Използва се classifyText метода. Допълнителна документация тук.
Как да активираме Cloud Natural Language API
Преди да започнете да използвате API-то на Cloud Vision, трябва да го активирате за вашия проект в Google Cloud платформата:
1. Изберете вашия проект или създайте нов тук.
2. Добавете валиден метод за таксуване във вашия Google Cloud акаунт. Допълнителна информация тук.
3. Активирайте API на Cloud Natural Language тук.
4. Настройте удостоверяване:
4.1. В Cloud конзолата отидете на Create service account key страницата тук.
4.2. От Service account менюто изберете New service account.
4.3. След това въведете някакво име (нещо, което ще е разпознаваемо) в Service account name полето и от Role менюто изберете Project>Owner
4.4.Накрая кликнете върху създаването на .JSON файла, който ще съдържа вашите ключове на вашия компютър.
Може да се запознаете с допълнителните настройки нужни след активацията на API-то тук.
Cloud Natural Language API осигурява поддръжка за широк спектър от езици като Go, C#, Java, PHP, Node.js, Python, Ruby.
Как да правим анализ с помощта на Google Sheets
Ще ви покажем пример с Google Sheets и интеграция с Cloud NL API. Трябва да се има предвид, че е важно да бъде направено поне 2-3 пъти, за да може да се схване логиката и начина на интеграция и работа с API-то.
Ще извършим следните 3 стъпки:
1. Предварително импортиране на данните в таблица (lifehack: https://sheet.new ).
2. Предварителна обработка на данните.
3. Изпращане на данните до Cloud NL API.
Импортиране на данни
Препоръчително е да импортираме предварително данните, които ще обработваме.
Трябва да се има предвид, че в този пример ще използваме анализ на настроенията, който все още не поддържа български език и затова преминаваме към стъпка 2.
Обработка на данните
Именно защото анализът на настроенията не поддържа български език, е препоръчително да използваме конкретни формули в Google Sheets. Това са вградените формулите, които превеждат текст: DETECTLANGUAGE и GOOGLETRANSLATE
Изпращане на данните
Разписва се функция, която се казва retrieveEntitySentiment, която приема текста като параметър и изпраща към analyzeEntitySentiment.
Функцията:
function onOpen() { |
Вътре трябва да предоставите и ключ за API-то в следния ред:
var apiKey = "YOUR_API_KEY"; |
В резултат получаваме това:
Трябва да се има предвид, че има много възможности за използване на Cloud NL API заедно с Google Sheets. Можете да прочетете допълнително тук.
Ще се радваме да споделите в коментарите дали вие сте намерили друго приложение или вариант, който да е практичен и да можем да използваме.
Как да правим анализ с помощта на Python
От всички методи за анализ на текста с Cloud Natural Language API най-полезни (поне на този етап от развитието му) могат да бъдат:
- Разпознаване и анализ на субекти;
- Класификация на съдържание.
Възможностите за анализ на текстовото съдържание от уеб страниците ни позволява да разберем как Google действително “вижда” това съдържание и това е от съществено значение за SEO.
Какви са стъпките за анализ с Python
Тук отново е хубаво да бъде отбелязано, че отново възможностите са изключително много. Всичко се съдържа в официалната документация на API-то тук. Тя се обновява постоянно и ще се радваме да споделите и ако сте пробвали различни анализи или нещо друго, което използвате в практиката.
Стъпките са следните:
1. Инсталирайте си Python (последната версия е 3.8.1. тук).
2. Инсталирайте си git (информация тук).
3. Изтеглете PyCharm или Visual Studio Code.
4. Копирайте следното хранилище от Github тук.
5. Инсталирайте модула Beautiful Soup (pip install beautifulsoup4).
6. Активен акаунт в Google Cloud. Запишете вашия JSON идентификационен файл в локална директория.
Като резултат трябва да получите ето това:
В горепосочения пример използваме анализа на настроенията в конкретни текстове. Можете да разгледате допълнителни примери тук и тук.
Заключение
Като заключение можем да направим следните обобщения:
1. Анализ на субектите и чувствата - запознайте се с настроенията на вашите клиенти/потребители.
2. Разделяне и сегментация на изреченията - анализ на всяка част от изреченията.
3. Класификация на съдържанието - изследвайте как хората във вашата ниша реагират на различните видове съдържание.
4. Мултиезичност - позволява ви лесно да анализирате текст на няколко езика.
5. Изпълнява се от моделите на AutoML - използват се най-съвременните технологии на Machine Learning на Google.
Най-доброто предстои.....
Факт е, че това е една много малка част от възможностите и функционалностите на NL API. Ние ще се постараем и в бъдеще да ви предоставяме още и още интересни практически функционалности с помощта на Machine Learning API-тата на Google.
Ще се радваме да споделите в коментарите дали сте използвали това API и какъв анализ сте правили.