Archive for the ‘API’ Category

Recognizing entities in a text: not as easy as you might think!

12 diciembre, 2013 Deja un comentario

Entities recognition: the engineering problem

As in every engineering endeavor, when you face the problem of automating the identification of entities (proper names: people, places, organizations, etc.) mentioned in a particular text, you should look for the right balance between quality (in terms of precision and recall) and cost from the perspective of your goals. You may be tempted to compile a simple list of such entities and apply simple but straightforward pattern matching techniques to identify a predefined set of entities appearing “literally” in a particular piece of news, in a tweet or in a (transcribed) phone call. If this solution is enough for your purposes (you can achieve high precision at the cost of a low recall), it is clear that quality was not among your priorities. However… What if you can add a bit of excellence to your solution without technological burden for… free? If you are interested in this proposition, skip the following detailed technological discussion and go directly to the final section by clicking here.

Where difficulties come from?

Now, I will summarize some of the difficulties that may arise when designing an automatic system for “Named Entities Recognition” (NER, in short, in the technical papers). Difficulties may come from two fronts:

  • Do you deal with texts in several languages? Do you know the language of each text in advance?
  • What is the source of the documents or items of text that you have to manage? Do they come from a professional newsroom? Did you ingest them from OCR (Optical Character Recognition) or ASR (Automatic Speech Recognition) systems? Did you catch them with the API of your favorite social network?
  • Do your texts follow strict academic conventions regarding spelling and typography? (i.e. do you always deal with well-written text?)  Did users generate them with their limited and error-prone devices (smartphones)? Did second language speakers or learners produce them?

Designing the perfect NER system: the language nightmare

The previous questions end up in a set of complex challenges:

Eiffel Tower

Eiffel Tower

1. Translingual equivalence:
Problem: When you deal with multilingual content, you are interested in recognizing not language-dependent names, but entities that are designated differently in different languages.
Example: Eiffel Tower (EN), Tour Eiffel (FR) and Torre Eiffel (ES) refer to the very same object.
Solution: You need to use semantic processing to identify meanings, relative to a consistent, language-independent world model (e.g. using ontologies or referring to linked data sources).


Nelson Mandela

2. Intralingual or intratext equivalence:
Problem: For a particular language, texts usually refer to the same entities in different flavors (to avoid repetition, due to style considerations or communication purposes).
Example: Nelson Mandela, Dr. Mandela (depending on the context) and Madiba are recognized by English speakers as the same entity.
Solution: Again, in the general case, you need to link multiword strings (tokens) to meanings (representing real world objects or concepts).

3. Transliteration ambiguity:
Problem: translation of names between different alphabets.
Example: Gaddafi, Qaddafi, Qadhdhafi can refer to the same person.
Solution: It is always difficult to decide the strategy to attach a sense to an unknown word. Should you apply phonetic rules to find equivalents from Arabic or from Chinese? Expressing it otherwise: is the unknown word just a typo, a cognitive mistake, a spelling variant or even an intended transformation? Only when context information is available you can rely on specific disambiguation strategies. For example, if you know or you deduce that you are dealing with a well-written piece of news about Libya, you should surely try to find alternative transliterations from Arabic. This problem is usually treated at dictionary level, incorporating the most widespread variants of foreign names.

George Washington

George Washington

4. Homonyms disambiguation
Problem: Proper names have usually more than one bearer.
Example: Washington may refer to more or less known people (starting by George Washington), the state on the Pacific coast of the USA, the capital of the USA (Washington, D.C.) and quite a few other cities, institutions and installations in the same and other countries. It can even be a metonym for the Federal government of the United States.
Solution: Semantic and contextual clues are needed for proper disambiguation. Are there any other references to the same name (maybe in a more complete form) along the piece of text under scrutiny? Can semantic analysis tell us if we deal with a person (producing human actions) or a place (where things happen)? Can we establish with confidence a geographical context for the text? This could also lead to favorite particular interpretations.

5. Fuzzy recognition and disambiguation:
Problem: in the general case, how to deal with unknown words when you rely on (maybe huge) multilingual dictionaries plus (maybe smart) tokenizers and morphological analyzers?
Example: If you find in an English text the word “Genva”, should you better interpret it as Geneva (in French Genève) or Genoa (in Italian Genova).
Solution: the presence of unknown words is linked most of times to the source of the piece of text that you are analyzing. When the text has been typed with a keyboard, the writer may have failed to type the right keys. When the text comes from a scanned image through OCR, the result can be erroneous depending on image resolution, font type and size, etc. Something similar occurs when you get a text through ASR. The strategy to interpret correctly the unknown word (identifying the meaning intended by the author) implies using metrics for distance between the unknown word and other words that you can recognize as correct. In our example, if the text has been typed with a qwerty keyboard, it seems that the distance between Genva and Geneva involves a single deletion operation, while the distance between Genva and Genoa involves a single substitution using a letter that is quite far apart. So, using distance metrics, Geneva should be preferred. But contextual information is equally important for disambiguation. If our text includes mentions to places in Switzerland, or it can be established as the right geographical context, then Geneva gains chances. Otherwise, if the text is about Mediterranean cruises, Genoa seems to be the natural choice.

Meaning as a Service


Textalytics: semantic technology at your fingertips

Systems or platforms for Content Management (CMS), Customer Relationship Management (CRM), Business Intelligence (BI) or Market Surveillance incorporate information retrieval functionality allowing the search of individual tokens (typically alphanumeric strings) or literals in unstructured data. However, they are very limited in terms of recognition of semantic elements (entities, concepts, relationships, topics, etc.) This kind of text analytics is very useful not only for indexing and search purposes, but also for content enrichment. The final aim of these processes is adding value in terms of higher visibility and findability (e.g. for SEO purposes), content linkage and recommendation (related contents), ads placing (contextual advertisement), customer experience analysis (Voice of Customer, VoC analytics), social media analysis (reputation analysis), etc.

To facilitate the integration of semantic functionality in any software application, Daedalus opened its multilingual semantic APIs to the community through the cloud-based service Textalytics. On the client side, you can send a call (petition) to our service in order to process one item of text (a piece of news, a tweet, etc.): what you get is the result of our processing in an interchange format (XML or JSON). Textalytics APIs offer natural language processing functionality in two flavors:
  • Core APIs: one API call for each single process (extraction of entities, text classification, spell checking, sentiment analysis, content moderation, etc.) Fine tuning is achieved through multiple parameterization. Besides natural language core processing, audio transcription to text is also available, as well as auxiliary functions. Auxiliary APIs are useful, for example, to link entities with open linked data repositories, as DBpedia/Wikipedia, or to guess crucial demographic features (type, gender, age) for a given social media user.
  • Vertical APIs (Media Analysis, Semantic Publishing): one API call provides highly aggregated results (e.g. extraction of entities and topics, plus classification, plus sentiment analysis…), convenient for standard use in a vertical market (media industry, publishing industry…)

To end this post, let me stress other benefits of selecting Textalytics for semantic processing:

  • SDKs (Java, Python, PHP and Visual Basic) are offered for quick integration. Software developers take not more than half an hour to read the documentation and integrate our semantic capabilities in any environment.
  • You can register in Textalytics, subscribe to the API or APIs of your choice, get your personal key and send as many petitions as you want for free, up to a maximum of 500.000 words processed per month. For research, academic or commercial usage. No matter.
  • If you need processing higher volumes of text (exceeding the free basic plan) or in case you require launching more than five API calls per second, you can subscribe at affordable prices. No long-term commitment. Pay per month. Check out our pricing plans.

Curious? Try our demo!
Interested?  Contact us!
Believer? Follow us!

José C. González (@jc_gonzalez)

Entendiendo la TV Social con tecnologías de Análisis Semántico y Big Data

25 noviembre, 2013 Deja un comentario

Recientemente hemos participado en la conferencia Big Data Spain con una charla titulada “Real time semantic search engine for social TV streams”. En esta charla resumimos nuestra experiencia en el área de TV Social, donde estamos combinando tecnologías de análisis semántico y de procesamiento de flujos de datos (streams) en tiempo real para entender las redes sociales. 

La TV Social es un fenómeno en claro crecimiento ya que cada vez es más frecuente el uso de redes sociales mientras vemos la televisión. Por ejemplo, Twitter ya reportaba el año pasado que en Reino Unido más de un tercio de todos los comentarios durante el primetime eran sobre lo que pasaba en la pantalla del televisor. Hace semanas, Facebook reivindicaba su lugar en la TV social afirmando que el volumen de comentarios privados sobre TV en su plataforma era 5 veces mayor. Esta red social ha empezado también a ofrecer hashtags e incluso una nueva API, Keywords Insight, para que algunos socios tengan acceso a estadísticas agregadas de las conversaciones dentro de los muros de Facebook.

A medida que el número de usuarios que acaban comentando su programa favorito de TV en las redes sociales con amigos o extraños, las cadenas han empezado a hacer uso de estas herramientas para participar en la conversación. Durante el último año se ha incrementado el número de programas que hacen uso de hashtags oficiales, a veces incluso varios durante una sola emisión. Más allá de la búsqueda del trending topic, los que con mayor éxito han experimentado fomentan incluso la participación de presentadores o actores durante la emisión del programa. En España, “Salvados” o “Pesadilla en la Cocina” son ejemplo de lo primero y la serie “Isabel” para el caso de los actores.   

Aunque no hay nada nuevo en el hecho de socializar alrededor del contenido de la tele, la posibilidad de medir y de destilar estos comentarios sí que es característico del nuevo contexto. Además, esta conversación no se produce al día siguiente sino que su impacto es inmediato. Todo esto se suma para abrir un nuevo abanico de posibilidades para espectadores, radiodifusores y las grandes marcas. Los usuarios han encendido la mecha de la TV Social ya que les conecta con amigos y el resto de la audiencia.  Es a la vez una forma de sentirse parte del programa y al mismo tiempo de involucrarse más. Por tanto, las herramientas que faciliten organizar y comprender la conversación son de especial interés para el espectador social. Para el resto de espectadores, incluso para aquellos que solo participan leyendo, es una forma de generar tanto recomendaciones sociales. Otro uso interesante es que analizar la conversación social permite contextualizar contenido relevante y relacionado con el programa como información sobre los actores, personajes o cualquier otro concepto del que se hable en la pantalla grande.

Por otro lado, comprender la conversación en torno a un programa es de tremenda utilidad para los canales de TV y las marcas que los financian. Las productoras y cadenas pueden medir las preferencias de sus espectadores y los de la competencia, y además en tiempo real, según se está emitiendo. Está información cualitativa permite hacer una lectura mucho más informada de los datos cuantitativos de audiencia. Llegar a los consumidores adecuados y medir el impacto de las campañas de publicidad son solo dos ejemplos de lo que las marcas buscan en la TV social. Por último, no solo se trata de escuchar pasivamente, tanto los programas como los anuncios van a ser cada vez más interactivos y a buscar la participación de los espectadores mediante las redes sociales.  

En nuestra charla, describimos un sistema que combina análisis semántico y tecnologías de big data como una herramienta para sacar partido de las redes sociales. El sistema combina varios componentes de procesamiento de lenguaje natural de Textalytics API junto a una base de datos semi-estructurada, SenseiDB, para proporcionar visualizaciones interactivas de los comentarios de TV sobre la base de la búsqueda semántica, la búsqueda por facetas y un sistemas de analítica en tiempo real.


Mediante el uso de Textalytics API somos capaces de extraer información relevante para la TV social como el sentimiento acerca de una entidad (un programa, actor o deportista) Además, el reconocimiento de entidades y la extracción de información temática nos permite producir trending topics dentro de un programa con una alta correlación con lo que ocurre en pantalla. Estos temas unidos a las facetas online proporcionadas por SenseiDB funcionan como una manera efectiva de organizar la conversación al vuelo. Otras funcionalidades como el reconocimiento de idioma o la clasificación de texto cumplen un papel importante pero oculto y nos ayudan a filtrar el flujo de comentarios de contenido ruidoso.  

El segundo de los componentes esenciales del sistema es SenseiDB, una base de datos semi-estructurada de código abierto que permite ingerir streams y buscarlos en tiempo real, es decir, con baja latencia tanto en la indexación como en la búsqueda. SenseiDB incluye un gran número de tipos de facetas que permiten organizar los metadatos semánticos que extraemos con Textalytics. Con la ayuda de facetas de tipo histograma o rango se pueden realizar incluso ciertas tareas de analítica que incluyen tipos de datos complejos como el tiempo. Además, una de las características más interesantes es que incluye un lenguaje de consulta sencillo e intuitivo, BQL, que es de gran utilidad para el desarrollo iterativo de visualizaciones.

Si te ha parecido interesante, te animo a que le eches un vistazo a la presentación o incluso al vídeo del evento.

Semantic Analysis and Big Data to understand Social TV

25 noviembre, 2013 1 comentario

We recently participated in the Big Data Spain conference with a talk entitled “Real time semantic search engine for social TV streams”. This talk describes our ongoing experiments on Social TV and combines our most recent developments on using semantic analysis on social networks and dealing with real-time streams of data.

Social TV, which exploded with the use of social networks while watching TV programs is a growing and exciting phenomenon. Twitter reported that more than a third of their firehose in the primetime is discussing TV (at least in the UK) while Facebook claimed 5 times more comments behind his private wall. Recently Facebook also started to offer hashtags and the Keywords Insight API for selected partners as a mean to offer aggregated statistics on Social TV conversations inside the wall.

As more users have turned into social networks to comment with friends and other viewers, broadcasters have looked into ways to be part of the conversation. They use official hashtags, let actors and anchors to tweet live and even start to offer companion apps with social share functionalities.

While the concept of socializing around TV is not new, the possibility to measure and distill the information around these interactions opens up brand new possibilities for users, broadcasters and brands alike.  Interest of users already fueled Social TV as it fulfills their need to start conversations with friends, other viewers and the aired program. Chatter around TV programs may help to recommend other programs or to serve contextually relevant information about actors, characters or whatever appears in TV.  Moreover, better ways to access and organize public conversations will drive new users into a TV program and engage current ones.

On the other hand, understanding the global conversation about a program is definitely useful to acquire insights for broadcasters and brands. Broadcasters and TV producers may measure their viewers preferences and reactions or their competence and acquire complementary information beyond plain audience numbers. Brands are also interested in finding the most appropriate programs to reach their target users as well as understand the impact and acceptance of their ads. Finally, new TV and ad formats are already being created based on interaction and participation, which again bolster engagement.

In our talk, we describe a system that combines natural language processing components from our Textalytics API and a scalable semi-structured database/search engine, SenseiDB, to provide semantic and faceted search, real-time analytics and support visualizations for this kind of applications.

Using Textalytics API we are able to include interesting features for Social TV like analyzing the sentiment around an entity (a program, actor or sportsperson). Besides, entity recognition and topic extraction allow us to produce trending topics for a program that correlate well with whatever happens on-screen. They work as an effective form to organize the conversation in real-time when combined with the online facets provided by SenseiDB. Other functionalities like language recognition and text classification help us to clean the noisy streams of comments.

SenseiDB is the second pillar of our system. A semi-structured distributed database that helps us to ingest streams and made them available for search in real-time with low query and indexing times. It includes a large number of facet types that enable us to use navigation using a range of semantic information. With the help of histogram and range facets it could even be overused for simple analytics tasks. It is well rounded with a simple and elegant query language, BQL, which help us to boost the development of visualizations on top.

If you find it interesting, check out our presentation for more detail or even the video of the event.

The Citizen Sensor: the citizen as a sensor in the city of the future

sensorciudadano1One of our most promising lines of work in the Ciudad2020 R&D project (INNPRONTA Program, funded by CDTI, Technological and Industrial Development Center) focuses on the concept that we have defined as Citizen Sensor: the log of events in relation with citizens and their municipality.

By applying Textalytics’ semantic technologies, we can analyze in detail the citizen’s voice, extracting heterogeneous, high-level information. Being this highly descriptive and with high added value, it is useful to model the citizen’s urban behavior and his/her relationship with the city of the future. In this way the citizen becomes a sensor integrated in the network of sensors of the systems of the city.

The Citizen Sensor can provide data in different ways:

  • Mobile phone.- For example, to detect noise pollution, the user could start an application on his/her smartphone to record the noise level and send it to the city servers. This act will give us a map of the most significant sources of noise of the city, which evolves over time (works in the mornings, parties on weekends…).
  • Citizen’s events.- For example, the user validates the train ticket to go to work. This, added to the events generated by the rest of users who use the train, will give us an idea of the density of travelers who use the train to go to work each morning and which way they go through.
  • Social networks.- Our systems can analyze the flow of tweets in a geographic area to know what users are talking about, and if it is something relevant (a car crash that provokes traffic jams, a fire, a music festival…) we can use those data to develop a precise model with much more adjusted predictions. We can also collect the citizens’ thinking or opinion with respect to policies taken by the local authority (for example, the policy of reducing consumption on air-conditioning in public transport).

As a preliminary work, we have built an ontology that defines the different dimensions which are going to guide the semantic analysis. We are currently collecting information from Twitter, and in particular, our aim is to identify in each tweet the location where the user is located (a public building like the city hall or a hospital, parks, transportation facilities, places of leisure or work, etc.), the concept (city services, supplies, sign posts, etc.), or the specific event it refers to (concerts or sporting events, or problematic situations as breakdowns, traffic jams, accidents, fires), as well as the subject area of the message (politics, economy, quality of life, tourism, sport, social interest…). This analysis is complemented by a sentiment analysis able to detect the polarity of the message (very positive, positive, negative, very negative and neutral).


The aim is to merge the semantic analysis with the user’s geopositioning in order to obtain interesting results on what citizens talk and opine about, in real time, as a city management console. This type of analysis could serve, for example, for early detection of risk situations such as accidents or supply breakdowns on public roads, fights in leisure areas, condition (cleaning, security, services) of public parks or beaches, etc.

For this analysis we use our APIs of language detection (which can process Spanish, English, French, Italian, Portuguese and Catalan), extraction of entities, automatic classification, sentiment analysis and demographic classification of users, all included in Textalytics Core.


At the moment we are researching in temporal analysis, to try to detect the citizens’ tendencies of behavior and opinion throughout the time of analysis. This research consists of comparing the condition of the city at different moments of time to analyze and interpret the differences which will be due either to the daily life of the city (for example, the natural increase of public activity as the morning advances) or unexpected situations that might be predicted.

You can find more information, documentation, and demos on our web page: If you have any questions or comments, please do not hesitate to contact us.

[Translation by Luca de Filippis]

Offensive comments from readers in European online media have come to a full stop: Media will be responsible. What’s next?

28 octubre, 2013 1 comentario

The European Court of Human Rights issued on October 10th a very relevant sentence for European media companies. The case was brought by the Estonian news website Delfi, sued by the Justice of its country for having published offensive comments of readers against the director of a company which acted as a source of information. The publication of the news in question occurred on January 24th, 2006, and a few weeks later, on March 9th, the lawyers of the victim requested the withdrawal of 20 offensive comments and compensation for moral damages. The news website removed the comments on the same day and rejected the economic request. The following month, a civil lawsuit was filed before the Estonian courts. This lawsuit reached the national highest court, which upheld the guilty verdict and sentenced the media company to provide 320 euros in compensation to the plaintiff.

Delfi, the company that owns the news portal, resorted to Strasbourg (headquarters of the European Court of Human Rights), stating that the sentence violated the principle of freedom of expression, protected by article 10 of the Convention for the Protection of Human Rights and Fundamental Freedoms.


Now, this European court has ruled against the media company. And this despite the fact that Delfi had an automatic (rudimentary) system to filter out comments that included some keywords (insults or other problematic words). In addition, Delfi had a mechanism with which readers could mark a comment as inappropriate. The sentence considers that this filter was insufficient to prevent damage against the honor of third parties and that the media company should have taken more effective action to prevent these situations.

The court considers reasonable to hold responsible the editor, being its function to publish information and give visibility to the comments of readers, and profiting through the traffic generated by those comments.

What now? In an entry of this blog, entitled “Moderating participation in the media” [in Spanish] and published a couple of years ago, we summed up the difficulties and the keys of our approach to help solving a problem that is not trivial.

Difficulties are manifold. On the one hand, the detection of isolated offensive words is not enough and it is necessary to filter expressions, sometimes taking into account their context and inflected forms. On the other hand, it is also necessary to interpret the abbreviated language or texts with typographic errors, which are noticeably frequent in comments and user-generated content sections. These “errors” can arise from limitations of devices, the impulsive aspect of commenting, or the users’ intention to cheat the automatic filters trying to outsmart them by all means. (Sometimes in really witty ways).

In addition to this problem related to the Variety of texts, we find the other two recurring features in “big data” applications (forming the famous 3Vs): Volume of the comments to be processed and Velocity of response required.

At Daedalus, we have been addressing these problems for the media industry for years and lately also for other sectors, like banking and insurance.

As regards the integration architecture of our solutions, we are currently offering them in SaaS (Software as a Service) mode, from our new APIs platform in the cloud Textalytics, as well as the traditional licensing to run on-premises.

With automatic filtering systems, we cannot guarantee 100% accuracy for any filtering task. Different companies or media, and different sections within a same medium, require different strategies. It seems clear that it makes no sense applying the same filter criteria to the comments of a brilliant feature article and to the interventions that emerge during the live broadcast of a football match or a reality show. In this sense, our systems assess the gravity of the expression, allowing our customers to set flexibly their acceptability threshold. On the other hand, we provide customization tools to facilitate the incorporation of new problematic expressions. Finally, we also permanently monitor the operation of these systems for customers who wish it, within their plans of continuous quality assurance and improvement.

Are you interested? Feel free to contact Daedalus.

Discover our solutions for the media industry.

References to this topic:

Jose C. Gonzalez

Sensor Ciudadano: El ciudadano como sensor de la ciudad del futuro

Sensor ciudadanoUna de nuestras líneas de trabajo más prometedoras en el proyecto Ciudad2020 (Programa INNPRONTA, financiado por el CDTI) se centra en el concepto que hemos bautizado como Sensor Ciudadano: el registro de eventos en la relación del ciudadano con su municipio.

Mediante la aplicación de las tecnologías semánticas de Textalytics, podemos analizar en detalle la voz del ciudadano, extrayendo información heterogénea de alto nivel, muy descriptiva y de gran valor añadido, que sirve para modelar el comportamiento urbano del ciudadano y su relación con la ciudad del futuro. De esta forma el ciudadano se convierte en un sensor más integrado en la red de sensores de los sistemas de la ciudad.

El Sensor Ciudadano puede registrarse de distintas formas.

  • Teléfono móvil.- Por ejemplo, para detectar contaminación acústica, el usuario podría arrancar una aplicación en su smartphone para registrar el nivel de ruido y enviarlo a los servidores de la ciudad. Este gesto nos dará un mapa de los focos de ruido más destacables de la ciudad, que evoluciona en el tiempo (obras por las mañanas, fiestas los fines de semana…).
  • Eventos del ciudadano.- Por ejemplo, el usuario pica el billete de tren para dirigirse a su trabajo. Esto, agregado a los eventos generados por el resto de usuarios que usen el tren, nos dará una idea de la densidad de viajeros que usan el tren para ir al trabajo cada mañana y qué trayecto hacen.
  • Redes sociales.- Nuestros sistemas pueden analizar el flujo de tweets en un área geográfica para saber de qué hablan los usuarios, y si es algo relevante (un accidente de coche que provoca retenciones, un incendio, un festival de música…) podemos usar estos datos para elaborar un modelo preciso con predicciones mucho más ajustadas. También podemos recopilar la posición u opinión de los ciudadanos respecto a las políticas de la administración local (por ejemplo, disminución del consumo en climatización en transporte público).

Como trabajos preliminares, hemos construido una ontología que define las diferentes dimensiones hacia las que se va a orientar el análisis semántico. Actualmente estamos recogiendo información de Twitter, y en concreto vamos a intentar identificar en cada tweet la ubicación en la que se encuentra el usuario (un edificio público como ayuntamiento u hospital, parques, medio de transporte, lugar de ocio o de trabajo, etc.), el concepto (servicios de la ciudad, suministros, señalización, etc.), o evento específico al que se refiera (conciertos o eventos deportivos, o bien situaciones problemáticas como averías, atascos, accidentes, incendios), así como el área temática del mensaje (sobre economía, política, calidad de vida, turismo, deporte, interés social…). Este análisis se complementa con un análisis de sentimientos para obtener la polaridad del mensaje (muy positiva, positiva, negativa, muy negativa y neutra).


El objetivo es combinar el análisis semántico con la geoposición del usuario para intentar obtener resultados interesantes sobre lo que hablan y opinan los ciudadanos, en tiempo real, a modo de consola de gestión de la ciudad. Este tipo de análisis podría servir, por ejemplo, para detección temprana de situaciones de riesgo como accidentes o averías de suministros en la vía pública, peleas en zonas de ocio, situación (limpieza, seguridad, servicios) de los parques públicos o playas, etc.

Para este análisis usamos nuestras API de detección de idioma (podemos tratar español, inglés, francés, italiano, portugués y catalán), extracción de entidades, clasificación automática, análisis de sentimientos y clasificación demográfica de usuarios, incluidas en Textalytics Core.


Actualmente estamos investigando en el análisis temporal, para intentar detectar tendencias de comportamiento y opinión de los ciudadanos a lo largo del periodo de tiempo de análisis. Este análisis consiste en comparar la situación de la ciudad en diferentes instantes de tiempo para analizar e interpretar las diferencias, que serán debidas bien a la vida cotidiana de la ciudad (por ejemplo, el incremento natural de la actividad ciudadana según avanza la mañana) o bien a situaciones inesperadas que se quieren predecir.

Puede encontrar más información, documentación y demostradores, en nuestro sitio web: Si tiene alguna pregunta o comentario, no dude en contactar con nosotros.

Grabación y Q&A del webinar sobre Textalytics

El pasado 8 de octubre celebramos nuestro webinar sobre Textalytics – la manera más sencilla de incorporar procesamiento semántico a tus aplicaciones.


Para vuestra comodidad hemos subido los contenidos a esta página del área de webinars del sitio de Daedalus. Esperamos que os sea útil.

Durante la sesión tuvimos la suerte de recibir numerosas preguntas. Como referencia, y para dar respuesta a algunas que se quedaron sin contestar por falta de tiempo aquí tenéis un resumen del Q&A:

Jorge: ¿Como se personaliza Textalytics con el vocabulario específico de cada dominio? Me refiero por ejemplo a vocabulario técnico. ¿Es con la funcionalidad que estará lista para octubre?

Con la primera versión de la API de Publicación Semántica estará disponible la posibilidad de definir un diccionario personalizado en el que se pueden añadir entidades y conceptos con información asociada como tipos e identificadores propios. Esto permitirá definir un vocabulario técnico específico como el que deseas.

Sergio: Si tengo mi ontología “propia” ¿la puedo incorporar a Textalytics ?

El diccionario personalizado te va a permitir introducir instancias de tu ontología y asociarles una de tus clases. También vas a poder añadir tus propias clases y establecer relaciones jerárquicas entre ellas.

José: ¿La API es vía servicio web o podemos integrarlo en nuestras aplicaciones Java?

Textalytics ofrece ambas posibilidades: se puede invocar vía servicios web REST o desde Java utilizando nuestro SDK para ese lenguaje. Lo mismo ocurre actualmente con Python y PHP.

Alfonso: ¿Hay planes de lanzar una API para .NET?

Las API de Textalytics son REST estándar y se pueden invocar desde aplicaciones .NET.

Marta: ¿Se diferencia entre subjetividad y objetividad? (¿polar facts?)

En Sentiment Analysis API ( dentro del conjunto de Core API tienes la posibilidad de acceder a un análisis detallado de la opinión que incluye subjetividad/objetividad además de polaridad y la intensidad del sentimiento expresado (P+,P,NEU,N,N+). La combinación de ambos te permite identificar “polar facts”.

Rafa: ¿Qué valor añadido ofrecen vuestras bases de conocimiento en cuanto a las propiedades de las entidades? Estoy pensando por ejemplo en un caso de uso sencillo en el que después de haber analizado el texto y extraido entidades de tipo Lugar, quiero filtrar mis contenidos por ejemplo por aquellos documentos que hablen de ciudades con más de un cierto número de habitantes.

Nuestras bases de conocimiento propias incluyen principalmente información lingüística y temática (alias, variantes, etc.). Además mantenemos varios rasgos que son importantes para algunas tareas concretas (fictional characters, historic) y otros genéricos como son relaciones de inclusión geográfica. Para los datos más “factuales” como la población de una ciudad nuestros recursos semánticos están conectados con fuentes de Open Linked Data (Geonames, Dbpedia, Freebase, etc ) y Wikipedia. Puedes encontrar información más detallada en la página de Topics Extraction API ( Nuestro servicio Semantic Linked Data Viewer ( permite entregar estos datos externos, que pueden utilizarse para filtrar y relacionar entidades y otros elementos desde la aplicación usuaria.

Enrique: ¿De temas multimedia en qué situación estáis?

Disponemos de una API para la transcripción voz-texto y el reconocimiento de locutor  ( que ofrecemos junto a nuestros partners de Vocapia Research. Puedes evaluarla completamente gratis dentro del Plan Gratuito analizando hasta 50 minutos de audio.

Joan: ¿Qué idiomas están soportados?

Español e inglés están soportados para todas las API. En Francés, Italiano, Portugués y Catalán están disponibles muchas de las funcionalidades. Para una lista completa puedes visitar este enlace

Ricardo: A la hora de captar entidades/contenidos dentro de un texto, ¿se podrán introducir, por ejemplo, listas con tus propios términos, y de ahí conseguir un análisis de los mismos?

Efectivamente, la funcionalidad de diccionario personalizado va a permitir introducir términos específicos para un dominio. Estos términos pasan a ser “de primer nivel” dentro de Textalytics de forma que es posible reconocer variantes morfológicas. Para poner un ejemplo típico, si se define “redes de ordenador” como concepto a la hora de reconocer y agrupar variantes morfológicas como “redes de ordenadores”.

Enrique: ¿Qué pasa si llego al tope de créditos?

Si se supera el límite mensual de créditos gratuitos el contador se pone a cero al principio del siguiente mes. Siempre se pueden contratar paquetes con más créditos, a precios que empiezan en 149 €. Más info en

Categorías:API, Textalytics

Daedalus en las V Jornadas de la Red Gallega de Procesamiento del Lenguaje y Recuperación de Información


Hace unos días estuvimos invitados en las V Jornadas de la Red Gallega de Procesamiento del Lenguaje (PLN) y Recuperación de Información (RI), o RedPlir. Estas jornadas, pensadas para contrastar las necesidades de la industria con las investigaciones llevadas a cabo en el ámbito universitario, suponen una oportunidad única para que las empresas planteemos nuestras necesidades y problemas relacionados con el PLN y RI.

Este año, el tema estrella ha sido, como no podía ser de otra forma, el análisis de sentimiento, sobre todo en medios sociales. Elogia, agencia de marketing que emplea en su día a día tecnología de monitorización de medios sociales planteó una serie de retos, haciendo hincapié en la necesidad de que estas herramientas se adapten mejor al proceso de trabajo del analista de marketing y permitan la detección exhaustiva de comentarios y opiniones potencialmente relevantes. Por su parte, Eptica-Lingway describió cómo aplica su tecnología de lenguaje en el ámbito de la gestión de relaciones con clientes y el e-recruiting; Imaxin explicó cómo explotan la tecnología de PLN en la traducción automática y en interesantes proyectos de investigación, algunos relacionados con la inteligencia competitiva; el centro tecnológico Gradiant presentó algunas iniciativas interesantes para la clasificación y análisis de mensajes de Twitter en móviles haciendo uso únicamente de la capacidad de procesamiento de estos dispositivos (sin llamadas a servicios externos) y la start-up Berce planteaba posibles aplicaciones en su herramienta para la gestión de la actividad de niños y padres en entornos educativos.

Nosotros presentamos Textalytics, nuestra propuesta de “significado como servicio”, que facilita a desarrolladores de aplicaciones la integración de tecnología de procesamiento lingüístico, incluyendo análisis de sentimiento, reconocimiento de topics y un largo etcétera, sin necesidad de tener conocimientos profundos sobre los algoritmos que hay detrás. En las Jornadas planteamos la posibilidad de que cualquiera de los grupos de investigación presentes experimentase con Textalytics con el fin de facilitarles una plataforma base, multilingüe, que les permita centrarse en sus objetivos: detectar la ironía, mejorar la precisión y cobertura de los sistemas, etc. En Daedalus siempre hemos tenido un interés especial en el campo de la I+D en colaboración con universidades y queremos poner Textalytics a disposición de la comunidad investigadora. Buena prueba de esta implicación en tareas de I+D es la co-organización del Taller de Análisis de Sentimiento, TASS 2013, en el marco de las jornadas de la Sociedad Española para el Procesamiento del Lenguaje Natural, SEPLN, que se celebran esta semana.

Webinar Textalytics: la manera más sencilla de incorporar procesamiento semántico a tus aplicaciones

18 septiembre, 2013 3 comentarios

Descubre en este Webinar cómo hacer más inteligentes tus contenidos y procesos con nuestras API semánticas

Las empresas están inundadas de contenidos no estructurados y necesitan convertirlos en recursos más explotables y útiles. Las tecnologías semánticas facilitan extraer la máxima señal de todo ese “ruido” de una manera eficaz, rápida y escalable, permitiendo

  • Entender lo que se dice en medios sociales de manera exhaustiva, a bajo coste y en tempo real
  • Enriquecer, relacionar y personalizar dinámicamente toda clase de contenidos multimedia para mejor combinarlos, distribuirlos y monetizarlos
  • Estructurar y extraer el significado de todo tipo de activos de información para una gestión, análisis y explotación más eficientes

Hasta ahora, el procesamiento semántico no estaba a alcance de todos. Por eso en Daedalus hemos lanzado Textalytics: una familia de API semánticas en la nube pensada para aquellos desarrolladores / integradores / startups que quieran construir soluciones semánticas de manera eficaz, rápida y barata.


El servicio Meaning-as-a-Service de Textalytics ofrece varias API, cada una con una funcionalidad específica del dominio de aplicación, así como SDK y plug-ins que hacen que su aprendizaje y uso sea mucho más fácil.

Textalytics API alto nivel

Lo vamos a explicar con más detalle en un webinar gratuito el próximo 8 de octubre. Veremos con ejemplos cómo Textalytcs reduce el esfuerzo necesario para obtener resultados y el time-to-market en la aplicación de tecnologías semánticas. Más información y registro aquí.

Webinar – Textalytics: La manera más sencilla de incorporar procesamiento semántico a tus contenidos y procesos

  • Día: martes, 8 de octubre de 2013
  • Hora inicio: 16:00 hora CET (Madrid)
  • Duración: 45 min.

Registrarme en Webinar

Esperamos contar con tu asistencia.
ACTUALIZACIÓN: Para vuestra comodidad hemos subido los contenidos a esta página del sitio de Daedalus.

Textalytics – Meaning as a Service: our new semantic offering in SaaS mode

A few weeks ago we were talking on here about how Dedalus has explored various API-based business models for marketing its semantic technologies. Our perception was that basic language features are hard to use for many developers —not experts in these technologies— and require them to build solutions through a process of trial and error, in a do-it-yourself fashion, which is slow and inefficient.

Our vision was to offer the market APIs with a more plug-and-play philosophy, which provide a functionality closer to the business, a faster learning curve and, as a result, an increased productivity. That vision has crystallized in our product Textalytics and today we can say that it is now available.

Textalytics is the easiest way to embed semantics into your applications

Textalytics is a SaaS offering that provides a high-level multilingual semantic processing functionality to those developers / integrators who want to develop semantic solutions in an effective, quick and cheap way. Compared with other semantic offerings in service mode, Textalytics offers several APIs, each with a specific functionality which is close to an application domain, and SDKs, plug-ins, etc. that make its learning and use much more easier, reducing the effort required to obtain results and time-to-market.

Textalytics - Meaning as a Service

To achieve this, Textalytics captures the know-how gained by Daedalus while helping customers in various industries and productizes it in the form of packaged functionality, optimized processing pipelines and specific linguistic resources for each scenario. As opposed to other semantic APIs with a do-it-yourself approach, Textalytics provides a more plug & play offering. Plus, it works in Spanish and other languages.

Textalytics is Meaning as a Service in two ways: first, it is a web service that extracts elements of meaning (opinions, facts, relationships) from all types of unstructured content. Second, and equally important, it packages and publishes that functionality in a way that is meaningful from the point of view of the business and the application scenario. Textalytics hides the technical difficulty and bridges the gap between semantic APIs and developers focused on their business, thus accelerating learning and increasing productivity.

Textalytics is already online and includes the following APIs:

  • A first version of the Media Analysis API (both social and traditional) including functionality for online presence monitoring and sentiment analysis. It will soon include functions for buying signals detection and reputation analysis.
  • A Core API with a more granular and horizontal functionality, for those users who want to develop more customized solutions.

In September 2013 we will be releasing the Semantic Publishing API (for media and publishers), which initially will include functionality for content tagging and enrichment.

In recent days we have been spreading the word about Textalytics, talking to the international media specialized in our industry (see, e.g., here and here) and holding briefings with leading analysts. We will give you more news soon.

Please remember that using Textalytics is free. Do not forget to try our demonstrator and register here.

Categorías:API, Semantic processing
A %d blogueros les gusta esto: