Monday May 09, 2016

Samsung IoT Smart Home Security Hacked by Univ. of Michigan Researchers

IoT and Security (or lack of in this case).

It's going to be a while before IoT is fully hardened against attacks...

Here's a video of how the Samsung Internet of Things (IoT) Smart Home Security system was hacked by a professor at University of Michigan and his students. I received my B.S. in Electrical Engineering from U-M (Ann Arbor), so all I can say is, "Go Blue!".

Nice to see Univ. of Michigan students on the leading edge of technology research!

See:

Samsung IoT Hacked by U-M

Cool investigation! It's obvious that IoT will have to rethink how security is done to make our devices more secure. Putting an extra layer to keep OAuth tokens from being accessed via spoofed Web sites will be a daunting task, but one that can been seen here as definitely required.

Friday May 06, 2016

Linus Torvalds Talks about IoT and Smart Devices

Linus Torvalds was at the Embedded Linux Conference (ELC) in San Diego recently, and in the keynote seemed upbeat about Embedded Linux and the Internet of Things (IoT). He talked about Embedded Linux not being in all the "leaf nodes", or in other words, the really small IoT devices (like sensors and microcontroller-based devices, such as ones based on Arduino), but instead Linux will be in all the hubs that IoT devices will connect to.

Also, he talked about if he were a kid today, he'd be messing around with a Raspberry Pi.

See:

Linus Torvalds and IoT

Here's a quote:

 "I’ve destroyed things with a 
 soldering iron many times," he 
 said. "I'm not really set up to 
 do hardware." On the other hand, 
 Torvalds guessed that if he 
 were a teenager today, he would 
 be fiddling around with a 
 Raspberry Pi or BeagleBone.
 "The great part is if you’re not 
 great at soldering, you can just 
 buy a new one."
And, that Raspberry Pi has Raspbian Linux which can be used to install Java SE Embedded, so that would be a natural fit for any kid today to mess around with. Kids have it good today! Wish I had a Raspberry Pi when I was a teenager... 💻 📱 📟

Monday May 02, 2016

Adding Deep Learning AI to Internet of Things (IoT) - Part 4

Unsupervised versus Supervised Learning

We'll take a moment to understand the difference between Unsupervised AI Learning versus Supervised AI Learning. Supervised neural networks must be told of correct answers to a question at some point beforehand, so that this type of AI is "taught" (ahead of time) what an object is for example, just like a baby learns objects from flash cards. This approach of Supervised Learning is typically used for object recognition in Deep Learning AI, such as to tell the difference between a cat from a terrorist bomber. This is great if you have 10,000 images of cats that you can show to your Deep Learning AI system, but if you have 10,000 images of cats, you probably have other problems we won't go into here.

Unsupervised Learning on the other hand, involves exposing all types of information to your AI system and relying on it to learn something you haven’t programmed it to recognize, since an Unsupervised Learning system would be able to cluster data into logical patterns.

For object recognition, Unsupervised Learning groups certain related shapes together and assumes that they are similar. It is often also used in AI for game playing, such as chess, using experience from playing opponents to group successful techniques for certain circumstances, to use in the future against others in similar circumstances.

For more information, see TechWorld's Big Data Article:

TechWorld's Big Data Article

So for Multilayer Perceptron (MLP) Deep Learning AI, we'll use Supervised Learning, since MLP was designed to work well with the ahead-of-time teaching approach of Supervised Learning. Get those flash cards ready...

Tuesday Feb 16, 2016

Adding Deep Learning AI to Internet of Things (IoT) - Part 3

Now we see how the Perceptron equation is written out in mathematical format, we want to turn this into some computer code for adding Deep Learning AI to IoT. We'll start out by converting just this "output" equation into Java code.

The output is a binary function that returns 1 for yes (Ex. the IoT sensors indicate that yes, this guy that just walked passed my sensors, is indeed a terrorist) or returns 0 for no (Ex. the IoT sensors indicate that no, this guy is not a terrorist, but he might be a Trump supporter). The cool part that makes it a Perceptron is that this equation is influenced by "weights" or "memorized patterns" in the Deep Learning AI brain of the computer that learned what is considered a terrorist or a Trump support, and what is or isn't that object as far as the connected IoT sensors are concerned, over many, many examples learned during Structured Learning (more on that later). So, here's the Java code given all that:

    static int processOuput(int theta, double xWeight, double yWeight, 
                            double nodeWeight) {
        double sum  = (x * xWeight) + (y * yWeight) + nodeWeight;
        return sum >= theta ? 1 : 0;
    }

That's all there is to it. That's a Perceptron in Java code, and that's how machines can learn and have a functioning brain of its own. Pretty simple at first, but it gets much more complicated when we start to layer these Perceptrons for Deep Learning AI, not just a simple Java method executing a few lines of code.

For more information, see Dr Noureddin Sadawi's great set of tutorials on Machine Learning and AI:

Dr Noureddin Sadawi's AI Tutorials

So far, this is the basic building block Java code for Deep Learning AI in IoT, so take time to let it soak in. From here, we next will talk about Structured Learning vs. Unstructured Learning, which is actually pretty cool since it can apply to computers, puppies, children, and in the future streetlights, traffic cameras, refrigerators, and TVs... And, hopefully, all those devices won't learn too fast... 😱😉 Or, we'll be in trouble whether you're a terrorist, a Trump supporter, or anything in between...

Tuesday Feb 02, 2016

Adding Deep Learning AI to Internet of Things (IoT) - Part 2

The first step in adding Deep Learning AI to the Internet of Things, is to understand what a perceptron is. A perceptron is an artificial neuron, the same that you find in most people's brains (most people...), but written in software like in the Java programming language.

In the diagram you can see how the perceptron takes inputs (like sensor inputs from a motion sensor or light sensor on an IoT network) represented by x1, x2, x3, etc. then runs them through some software and to get an output, such as "dog", "cat", "terrorist", "policman", etc. You can see how powerful it would be to hook up all the IoT sensors there are out there and have Deep Learning AI be able to identify objects and targets quickly using Java algorithms or programs.

This article (linked below) tells more about what perceptrons are and why they are important to Deep Learning. Above you see the perceptron written out algebraically which gives us insight on how it should be programmed in Java. See:

Neural Network Perceptrons

Here's a quote:

 So how do perceptrons work? A
 perceptron takes several binary 
 inputs, x1, x2, … and produces a 
 single binary output:

 In the example shown the 
 perceptron has three inputs, x1, 
 x2, x3. In general it could have 
 more or fewer inputs. 
This is the first step in adding AI to our IoT devices. In the next part we will look at how to represent a perceptron in Java. That's the easiest way, unless you want to do that in Python or JavaScript... Blech... 😁

Wednesday Jan 20, 2016

Adding Deep Learning AI to Internet of Things (IoT) - Part 1

IoT Will Need Artificial Intelligence (AI) to Work Correctly
To start our task of adding Deep Learning AI to the Internet of Things, we have to start with an quick tutorial on Deep Learning and how it made the AI from the 1970s something better that matched the real neurons in our brain.

See:

A Primer on Deep Learning

Here's a quote:

 ...[I]n 2006 three separate groups 
 developed ways of overcoming the 
 difficulties that many in the 
 machine learning world encountered 
 while trying to train deep neural 
 networks. The leaders of these 
 three groups are the fathers of 
 the age of deep learning...

 What was it that they did to their 
 deep neural networks to make it 
 work? ...Before their work, the 
 earliest layers in a deep network 
 simply weren’t learning useful 
 representations of the data...
 Instead they were staying close 
 to their random initialization...  
 Using different techniques, each 
 of these three groups was able 
 to get these early layers to 
 learn useful representations, 
 which led to much more powerful 
 neural networks.
So, there you have it. We now know the secret to adding proper AI to our smart watches, refrigerators, and toasters. Next, we'll explore how to take the theory (above) and put it into practice using Java SE Embedded inside the small processors of IoT devices. Stay tuned for more fun stuff! 👽🚀📱⌚️💻

Tuesday Jan 05, 2016

IoT at CES 2016: Still not quite there yet for consumers

It's an IoT-focused CES 2016, with lots of Internet of Thingy type trends for consumers in Vegas. But, it's still a slow-pace for adoption with only 7% of online adults using IoT devices at home, while 50% are interested in IoT for the future.

See:

IoT Innovations at CES

Here's a quote:

 Progress may be slow-paced, but
 updates on the future of IoT should 
 be welcome among tech watchers. 
 Forrester Data reports only 7% of 
 online adults in the US are using 
 connected home devices. However, 
 more than 50% are interested in 
 using them.

 "Automation is the next big thing, 
 because it will harness the power 
 of all the other things, making 
 cars that drive safer, medical 
 diagnostics that anticipate health 
 needs, and robots that not only 
 respond to our commands but 
 anticipate them,"...
There seems to be something missing for IoT in the consumer space... That might be the addition of AI, as others have pointed out. Automating IoT with AI might make for a better user experience than just having a glorified wireless remote in a smartphone app to a home appliance. Big whoop. 👆📱⚡️👏

Monday Jan 04, 2016

IoT Will Need Artificial Intelligence (AI) to Work Correctly

As many of us start developing with Internet of Things (IoT), it is becoming apparent (very quickly) that writing our own pattern matching rule sets and using simple filters for event processing in IoT is just not going to cut it.

To do IoT Big Data Analysis (in a cloud service or on-premises) "we're going to need a bigger boat". One way to ensure we have big enough processing power to analyze the petabytes of data coming from IoT devices and sensors, is to realize now that IoT will need Artificial Intelligence (AI) to utilize Machine Learning for pattern matching and event processing.

See:

IoT Won’t Work Without Artificial Intelligence

Here's a quote:

 We need to improve the speed and 
 accuracy of big data analysis in 
 order for IoT to live up to its 
 promise. If we don’t, the 
 consequences could be disastrous 
 and could range from the annoying 
 – like home appliances that don’t 
 work together as advertised – to 
 the life-threatening – pacemakers 
 malfunctioning or hundred car 
 pileups.
 
 The only way to keep up with this 
 IoT-generated data and gain the 
 hidden insight it holds is with 
 machine learning.
And, once we realize that... it's time to roll-up our sleeves and get to designing a proper AI Deep Learning layer into IoT systems today. Stay tuned to this blog for a quick-start guide to IoT AI Deep Learning and how to use the latest Machine Learning technology to architect a IoT system that will be able to handle dynamic pattern matching and event processing without having to wait for a (slow) human to come up with the IoT event rules and filters... 📱💻📟⚡️ 👽

Monday Dec 14, 2015

IoT Store Opens in Palo Alto, Calif.

Here's a new Internet of Things physical store that opened in Palo Alto, Ca. I wonder if they can sell me a new FitBit that has healthier readings than the one I have now...

See:

Internet of Things Store

Here's a quote:

 Norby was doing his holiday 
 shopping at all the "usual 
 stores" but finding little 
 he was interested in 
 purchasing.

 "I found myself incredibly 
 bored and disinterested by 
 the selection versus what I 
 was finding online, which was 
 all this innovation -- amazing 
 companies, a lot of them out 
 of Palo Alto, making 
 incredible, physical products," 
 he said. "But none of those 
 were inside stores."
Just in time for the holidays. It's at 516 Bryant St. in downtown Palo Alto, not far from the Philz Coffee on Forest Ave. where you can get some Java to go with your IoT Device. See what I did there? 📱☕️💻

Friday Dec 11, 2015

Oracle IoT Cloud Service Now Available! Just in time for Christmas and Hanukkah!

What better gift is there for Hanukkah, Christmas and Kwanzaa than a subscription to the Oracle Internet of Things (IoT) Cloud Service? I can't think any. So, buy one, or heck, buy three, and give them to your friends and family as IoT stocking stuffers!

You'll be the most popular Internet of Things holiday gift giver this year! (Results may vary based on mileage...)

See:

Give the Gift That Keeps Giving

Here's a quote:

 Gain new data-driven insights 
 and drive actions from IoT by 
 connecting, analyzing and 
 integrating device data into 
 your business processes and 
 applications, enabling your 
 business to deliver innovative 
 new services faster and with 
 less risk.
How do you fit a Cloud Service in a stocking? I'm not sure... 🎅 🎄 🎁

Monday Nov 30, 2015

ICYMI: $5 Raspberry Pi Zero Will Ignite IoT

In case you missed it: There was the new launch of the $5 Raspberry Pi Zero over the Thanksgiving holiday. But... It's sold out already. Wah, wah, wahhh... Oh, well. It's still so very cool, though. It comes with a 1Ghz ARMv6 (ARM11) CPU (able to run Java SE Embedded 8 on Raspian Linux OS), a micro SC slot and micro USB ports for data and power. You can also use the USB ports to connect Wi-Fi or Bluetooth dongles. So, très I.o.Chic.

See:

Raspberry Pi Zero $5

Here's a quote:

 The Raspberry Pi Zero is 
 about the size of a stick 
 of chewing gum but comes 
 with endless possibilities 
 for everyone from 
 programmers looking to 
 create fun new projects to 
 students learning about 
 programming in the 
 classroom.

 Popular projects with 
 Raspberry Pi include 
 connecting the computer to 
 home devices to create an 
 "Internet of Things" 
 ecosystem, building an 
 inexpensive robot and 
 creating games. 
The toughest part is waiting for it to be back in stock!!! Hopefully, before Christmas... Tap, tap, tap... Still waiting...

Tuesday Nov 24, 2015

Imagination Technologies Crowdfunding IoT Dev Kit

Here's yet another IoT development kit, but this one is being developed as a Kickstarter project by Imagination Technologies, maker of MIPS processors. They are hoping to raise £20,000 which is about $30,199.

See:

Imagination IoT Dev Kit

Here's a quote:

 Why does Imagination need to 
 go down the crowdfunding 
 route? It’s more about 
 wanting to tap its target 
 dev community during the 
 product development phase, 
 says Imagination's Alexandru 
 Voica.

 "Using Kickstarter allows us 
 to directly communicate with 
 the maker community, start-ups 
 and individuals interested in 
 new dev kits and get their 
 opinion on how and what we can 
 improve..." 
So, if Imagination Technologies is just using Kickstarter to "communicate" with the developers of the maker community, they don't need the 30 G's, right? And, that means they can give away their IoT Dev Kit for free to the maker community, right? 😉 What better way to "communicate"?

Wednesday Nov 11, 2015

Architect Your Own IoT Industrial PLC - Programmable Logic Controller (Part 2)

Before we start, we should first go over the difference between a Solid State Relay (SSR) versus an Electromechanical Relay (EMR). A SSR is able to turn on or off a switch (such as the power switch) for a piece of machinery or equipment using a control signal from a digital circuit, microcontroller or computer (such as a Raspberry Pi) through use of non-moving electronics, typically a silicon controlled rectifier.

An EMR does the same function, but uses movable contacts that are mechanically operated by magnetic force. EMRs are most common and you can hear them "click" on and off as they operate when control signal causes the magnetic force inside them to physically move a set of contacts to complete the electric circuit or to open the circuit.

EMRs are most common in electronics since they are cheaper to manufacture and can be used in harsh environments. SSRs are more common in industrial use, such as in Programmable Logic Controllers (PLCs) on a factory floor, as we are simulating in this blog series, since they are have no moving parts, are faster for frequent switching, and can be easily controlled by digital circuits and computers (such as the Raspberry Pi).

See:

Difference Between SSR and EMR

It's important to start out with the right parts to meet the requirements of the use-case, such as the IoT Industrial Use-Case we will address in this blog series. Next, we'll look at having multiple SSRs in the 8-channel SSR we'll use in our prototype, and how they can all be controlled with one embedded computer (like the Raspberry Pi).

Monday Nov 09, 2015

Architect Your Own IoT Industrial PLC - Programmable Logic Controller (Part 1)

A PLC is an industrial grade Programmable Logic Controller, which is essentially a general purpose computer (such as a Raspberry Pi) connected to a set of relays or switches (usually solid state relays to give real-time response times), and programmed with a simple to use computer language (such as Java).

Here, in this series of blog posts, I'll show you how to architect your own IoT Industrial PLCs to control your assembly line, factory floor, or warehouse. Or, your Christmas lights if you don't have any of those. :-)

Start with this part, which you can get on Amazon:

SainSmart 8 Channel SSR

PLCs are the way to go if you want fast responding, real-time control of equipment. And, remember to use Java to keep it fast while having a full-featured IoT programming language.

Friday Nov 06, 2015

IoT used for Retail Inventory - Levi's in San Francisco

Levi's and Intel are teaming up to use IoT to track retail inventory in some Levi's clothing stores. That's one way for the Enterprise side of IoT to really take off. And when jeans are being taken off (of the shelves by paying customers), that's a good thing.

See:

Levi’s And Intel Push IoT

Here's a quote:

 While improving inventory management 
 through IoT strategies might seem 
 appealing to some retailers, avoiding 
 inventory inaccuracy can be just as 
 important. A study conducted by GS1 US 
 and Auburn University’s RFID Lab found 
 that 63 percent is the average for 
 inventory accuracy. The lower that 
 accuracy falls, the more likely the 
 retailer is to run into supply and 
 delivery issues. 
So, watch IoT in the retail space as it develops, since it would be an easy thing to connect IoT sensors to store items and send the data to an IoT Cloud Service, just like the Oracle IoT Cloud Service, to have IoT data feed into existing business apps, and for enterprises to make more money.

About

Hinkmond Wong's blog on making the Internet of Things (IoT) smarter with Java Technology and Artificial Intelligence (AI)

Search

Archives
« May 2016
SunMonTueWedThuFriSat
1
3
4
5
7
8
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
    
       
Today