Cognition uses “Semantic NLP, the Company’s patented linguistic meaning-based text processing technology” to process natural language text and make the information in it searchable by meaning rather than simply by word. They’ve recently released a demo based on the Gospels and associated notes from the NET Bible.

Dr. Kathleen Dahlgren, their founder and CTO, has been working in the field of NLP for a long time, so this is not some newly-launched startup with more hype than substance. Their underlying technology represents an enormous investment in the linguistic data required for actually understanding language. Having worked in closely-related fields for most of my pre-Logos career (and having thought quite a bit about things like this for Bible study and search), i was very curious to take it for a spin and see how well it does. While they correctly claim that there’s a lot of figurative language in the Gospels, there’s also plenty of plain narrative description that ought to understandable.

Not surprisingly, the examples on their demo page look reasonably good (that’s what you do when you put together a demo, after all). “Who double-crossed the Lamb of God?” is a clever way to show off their ability to recognize double-cross as a synonym for betray, and Lamb of God as an alternate designation for Jesus. I might quibble with “blessed are the pure in heart” (Matt 5:8) as a hit for “blessed are the innocent”, but it’s clearly on the right track.

But they also allow you to try your own queries, which is where you can really see whether this approach helps or not. Some queries i tried:

  • “a valuable pearl” comes up empty. Just searching for “pearl” finds Matt 13:45-46, but not finding “a pearl of great value” as a valuable pearl seems like a definite lack of understanding. Just searching for “valuable” finds a great many hits (remember this includes the NET Bible notes as well as the text), but some of the senses it retrieves don’t seem like a good fit for “valuable”: for instance, ” a major category of meaning”, “an aorist main verb”, “is redundant” (?), “is not being critical of”. I understand why some of these matched, but they don’t convince me that there’s deep understanding going on.
  • “good soil” also comes up empty, even though this phrase occurs verbatim in Luke 8.15.
  • “a herd of swine” gets in the neighborhood: it apparently bridges the gap between swine and pig, and finds Matt 8.31 (apparently getting to “drive” from “herd”?), and some other notes related to “herdsmen”. But surprisingly it misses Mark 5.11 which has “a herd of pigs”.
  • “Peter’s brother” first tries the interpretation of “brother” as “member of a religious order” (!), but there’s a nice interface where you can choose alternate senses. After selecting the “sibling” sense, it does better, though the results aren’t always appropriate (e.g. Matt 17.1).
  • You can try questions like “Where did Jesus live?”, though the responses look like it’s merely searching on individual content words, not the semantics of the proposition. “Where did Herod live?” brings back a few interesting results where “live” has been connected to “palace”, which then results in helpful information because his palace was in Jerusalem.

Finding a use case for this particular demo comes down to finding an interesting intersection of several requirements: how many queries are there that

  • you’d actually want to look for
  • you couldn’t easily find based on the words alone
  • don’t require synthesis or reasoning (that’s really asking too much of this technology)

It was harder than i thought to come up with cases like this, and for most of them, the results still left something to be desired. But all critique aside, kudos to Cognition for being brave enough to put their technology out there and letting the results speak for themselves. Real understanding of text is an extremely difficult task: it looks to me like Cognition has made substantial progress, though the problem is still far from solved.