Build Intelligent Systems with JavaScript

Retired

This book is no longer available for sale.

Build Intelligent Systems with JavaScript

About the Book

This is a book to help you build intelligent systems using artificial intelligence, linked data, semantic web technologies, use of NoSQL datastores, and general information gathering and processing. I have been working in the field of artificial intelligence (AI) since the early 1980s, mostly using Lisp languages like Common Lisp and Scheme, and more recently using Java, Ruby, Clojure and JavaScript.

This is not a book about AI, even though I do cover topics like neural networks and natural language processing. Intelligent systems provide support for human users to tease information from data, obtain knowledge from information, and perhaps even achieve some form of wisdom.

The major topics that I cover to support building intelligent systems are: text mining, access to data stores (PostgreSQL, MongoDB, StarDog RDF, Neo4J graph database, CouchDB, Solr, DynamoDB, and S3), neural networks, natural language processing (using both the Natural library and the Open Calais web service), semantic web, general information gathering (Freebase, GeoNames, DBPedia, and custom web scraping), and running big data applications using Hadoop.

This is a book for server side development using Node.js. Relatively little material in this book would be useful for client/browser use.

Here is the table of contents:

Preface...............................................1

  Notes on Coding Standards................................... 2

  Why not Coffescript?...................................... 2

  About Me............................................ 2

Introduction............................................4

  Github Repository for Book Software ............................. 4

  Structure of this Book...................................... 5

  Natural Language Processing using Natural and the Open Calais System. . . . . . . . .6

  Natural.............................................. 6

  OpenCalais........................................... 17

  Wrap Up............................................. 18

Neural Networks.........................................19

  A simple Javascript Implementation of the Backpropagation Neural Network Model . . . . 19

  Using the Simple Neural Model to Analyze the University of Wisconsin Breast Cancer Data ... 28

  Additional Resources ...................................... 31

DataStorage............................................33

  The Postgres Relational Database ............................... 33

  MongoDB NoSQL DataStore.................................. 38

  CouchDB ............................................ 43

  Solr Indexing and Search.................................... 49

  Amazon Web Services ..................................... 53

  Wrap Up............................................. 59

SemanticWeb...........................................60

  RDF and the SPARQL Query Language ............................ 61

  Setting Up and Using Stardog ................................. 64

  Accessing Wikipedia data through the SPARQL interface for DBPedia . . . . . . . . . . . 67

  Wrap Up............................................. 72

Graph Algorithms Using Neo4J.................................74

  A Quick Overview of Graph Databases ............................ 75

  Loading Datai nto Neo4j .................................... 75

  Cypher Query Language using the Neo4j Web Interface . . . . . . . . . . . . . . . . . . . 78

  JavaScript Neo4j Client..................................... 82

  Wrap Up............................................. 87

Map Reduce Applications with Hadoop.............................88

  Map Reduce Applications.................................... 88

  Example Data.......................................... 90

  A Simple Example........................................ 91

Information Gathering......................................96

  Public and Private Data Fusion................................. 96

  DBPedia Lookup Service .................................... 97

  Freebase............................................. 98

  GeoNames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

  Web Spiders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

 

Wrap Up. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .110

About the Author

Mark Watson
Mark Watson

Please check out my web site markwatson.com for information about me.

Table of Contents

  • Preface
    • Notes on Coding Standards
    • Why not Coffescript?
    • About Me
  • Introduction
    • Github Repository for Book Software
    • Structure of this Book
  • Natural Language Processing using Natural and the Open Calais System
    • Natural
    • Open Calais
    • Wrap Up
  • Neural Networks
    • A simple Javascript Implementation of the Backpropagation Neural Network Model
    • Using the Simple Neural Model to Analyze the University of Wisconsin Breast Cancer Data
    • Additional Resources
  • Data Storage
    • The Postgres Relational Database
    • MongoDB NoSQL Data Store
    • CouchDB
    • Solr Indexing and Search
    • Amazon Web Services
    • Wrap Up
  • Semantic Web
    • RDF and the SPARQL Query Language
    • Setting Up and Using Stardog
    • Accessing Wikipedia data through the SPARQL interface for DBPedia
    • Wrap Up
  • Graph Algorithms Using Neo4J
    • A Quick Overview of Graph Databases
    • Loading Data into Neo4j
    • Cypher Query Language using the Neo4j Web Interface
    • JavaScript Neo4j Client
    • Wrap Up
  • Map Reduce Applications with Hadoop
    • Map Reduce Applications
    • Example Data
    • A Simple Example
  • Information Gathering
    • Public and Private Data Fusion
    • DBPedia Lookup Service
    • Freebase
    • GeoNames
    • Web Spiders
  • Wrap Up

The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.

You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!

So, there's no reason not to click the Add to Cart button, is there?

See full terms...

Earn $8 on a $10 Purchase, and $16 on a $20 Purchase

We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earnedover $13 millionwriting, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub