sfspark.org: Devin Loftis Lightning Talk
Recording: sfspark.org: Devin Loftis Lightning Talk
thank you so I'm a little different perspective here we are fans of mezes light then we use a lot of the open source technology those companies are built upon we're more of an application provider though so we have built our own architecture to support document processing so I don't have a lot of slides up here you can actually go ahead to the next slide but by way of introduction I like Alexei said I'm director of platform engineering at nitro which means I own basically all of our online services we were born out of a PDF software company at a desktop software company and we still own a lot of that so what do we do to make document smarter and what does that mean like really what we're trying to do is unlock the intelligence that exists in a document you open a PDF you open a document you understand what the document is you understand what the workflow is you understand who needs to see that document where it came from a machine doesn't and he talked about knowledge workers and large organizations that do thousands of documents a day you could really save them a lot of time if you were able to unlock some of that intelligence in a document and help them derive what they need to do with that document or inform them a little bit so that's really what we're trying to do at nitro and the core of our platform is built in Scala we have a and we use acha acha we actually brought it on mezzo square in mezzo singularity we have an open-source version of that we actually contribute to it a little bit as well but at the core of what we're doing I wanted to talk to you this meetup really about the challenges we face I mean I know it's an AI need a data is a huge part of AI documents have a lot of data and we encounter a lot of challenges with documents first and foremost documents are largely unstructured there's no context in them there's no derived information in that document that you can understand most the documents we come across are just built to render on a screen so you lose all context of what's in that document so trying to interpret what's in that document and make sense of it is the challenging problem they come on all shapes sizes images not images I mean we do a lot of stuff there and what we have basically what that boils down to is we have an a secret this load problem some things take a short time for process sometimes things take a long time of process but we have a customer waiting on a website for a document to process we have to be able to predict how it's going to process how we're going to be able to interpret that document other things that we're really concerned about is we're dealing with very sensitive corporate documents here we have no open source corpus of documents to train on none whatsoever wicked idea Wikipedia data does not work we have free sites to use that data does not work when you're trying to train an AI algorithm on corporate documents you have to go to the corporations and get those documents which leads to another problem we have privacy we're dealing with sensitive information we have healthcare companies we have all of these companies that were working for and working on behalf of so it's great that we have a platform to do it getting the data into the platform to Train is a very difficult problem than one that you know I think early in the days of nitro joined a couple years ago we totally underestimated I'll be very honest with you and so we're working on that now and a lot of our focus right now is actually on privacy for people that do business in EU there's the general data privacy rules that are about to go into effect in 2018 in May if you're doing anything with machine learning personalization add tech pay attention to those rules because they will really affect how you operate in the yuan I can talk more about that later I can do long talk on that but it's something that we're very concerned about and then you know just what we're doing a CPU intensive so that's where the distributor architecture comes in we have to distribute load across a bunch of servers we use containers we use akka to distribute that load we we do it through Kafka as well and we run everything and measures so that's really you know some of the challenges we face oh you know paint kind of a bleak picture there what we do but you know how we overcome some of those challenges well I just mentioned the architecture like we were one of the first people to sign the reactive Festo we are firm believers in a reactive architecture and it's actually really saved our rear ends quite a bit when you're processing documents it's really nice to be able to scale your architecture if you get large documents in or you have we actually have s LA's of customers so some of our customers have a higher la than others so we can scale that architecture based on the SLA and the customer and so there's some really interesting problems that we saw with our architecture there and then you know it really boils down to you know processing those documents like I said we have a bunch of worker nodes underneath the scenes and you know then storing that data and securing that data and I'll be very honest with you we have no AI in nature right now we are experimenting with it but let's not overlook good old-fashioned heuristics when you're processing a document and it really works it's faster than deep learning right now for us we are very aware of algorithms and neural networks that are out there that do this but we have IP that's 10 years old written in C that uses heuristics of 99 is basically an algorithm of 99 different heuristics to process a document and interpret what's in that PDF and it's faster and more reliable than a lot of what's out on the market so you know sometimes when you're looking at these solutions and looking at these things don't overlook the simple solution it's kind of what I'm saying and pay attention to the data the privacy that's in your data and this is just my perspective as a company using using these tools and everything like that but architecture is key and having an architecture that you can scale out to solve these problems down the road is very key so you know just start there with a distributed architecture make things reactive and that's kind of the lesson we've learned here and then as you get into experimentation natural language processing is a very well-known field there's a lot of tools out there that's the tools that we would end up using eventually you know if you're using neural networks you're going to want to turn a document into a word vector at some point there's gloves there's words avec to do that they all work with tensorflow Stanford's got core lllp if you want to do some basic like in 2d recognition semantic analysis things like that Berkeley's got some great tools in their NLP group as well so those are things that we're experimenting with but you'll see none of that in production but if you need just a free document processing solution or free e-signatures go to cloud that go Nitro comm feel free to use a service sign up it's totally free for everybody but with that I'm sorry I've got a run I can't hang around for questions but my Twitter handles up here and Alex will send out my information so feel free to follow up with me and I'll be happy to talk about any of this from a user's perspective or an application developers perspective so thank you [Applause] you [Music]