Sensor beacons provide a quick and easy way to obtain data for AI machine learning. They provide an alternative to trying to access over-protected siloed company data and a method of measuring physical things that might not already be quantified.
Beacons detect movement (accelerometer), movement (started/stopped moving), button press, temperature, humidity, air pressure, light level, open/closed (magnetic hall effect), proximity (PIR), proximity (cm range), fall detection, smoke and natural gas. The open/closed (magnetic hall effect) is particularly useful as it can be used on a multitude of physical things for scenarios that require digitising counts, presence and physical status.
The data is sent via Bluetooth rather than via cables which means there’s no soldering or physical construction. The Bluetooth data can be read by smartphones, gateways or any devices that have Bluetooth LE. From there it can be stored in files for reading into machine learning.
Beacons provide a great way of providing new data for AI machine learning. They allow you to measure things that aren’t currently being quantified, create new data that isn’t silo’d by protectionist staff or departments and allow you to pre-process data in-place making it suitable for learning and inference.
There’s a new free State of AI Report 2019 in the form of a 136 page presentation. It covers aspects such as research, talent, industry and geopolitical areas such as China and Politics.
“Firms blamed the cost of AI solutions, a lack of qualified workers, and biased data as the principal blockers impeding AI adoption internally. Respondents identified skills shortages and unrealistic expectations as the top two reasons for failure, in fact, with a full quarter reporting up to 50% failure rate.”
We believe a key part of this is ‘unrealistic expectations’. Half of all AI projects failing for 1 in 4 companies isn’t unreasonable. AI and machine learning should be viewed as a research rather than a development activity in that it’s often the case that it’s not known if the goal is achievable until you try.
Another unrealistic expectation of machine learning is often to have 100% accuracy. The use of an accuracy % in assessing machine learning models focuses stakeholders minds too much on the perceived need for a very high accuracy. In reality, human-assessed, non-machine learning, processes such as medical diagnosis tend to have much less than 100% accuracy and sometimes have undetermined accuracy but these are reasonably seen as being acceptable.
In summary, there has to be upfront realistic expectations of both the possible outcome and the accuracy of the outcome for projects to correctly determine if AI activities are an unexpected failure.
In our previous post on iBeacon Microlocation Accuracy we explained how distance can be inferred from the received signal strength indicator (RSSI). We also explained how techniques such as trilateration, calibration and angle of arrival (AoA) can be used to improve location accuracy.
Their study was based on a large-scale exhibition where they placed scanning devices:
They implemented a LSTM neural network and experimented with the number of layers:
They obtained best results with the simplest machine learning model with only 1 LSTM:
As is often the case with machine learning, more complex models over-learn on the training data such that they don’t work with new, subsequent data. Simple models are more generic and work not just with the training data but with new scenarios.
The researchers managed to achieve an accuracy of 2.44m at 75 percentile – whatever that means – we guess in 75% of the cases. 2.44m is ok and compares well to accuracies of about 1.5m within a shorter range confined space and 5m at the longer distances achieved using conventional methods. As with all machine learning, further parameter tuning usually improves the accuracy further but can take along time and effort. It’s our experience that using other types of RNN in conjunction with LSTM can also improve accuracy.
There’s lots said about the advantages of Industry 4.0 or Digital Transformation and the associated new technologies but it’s a lot harder to apply this to the context of a business that has legacy equipment and no real way of knowing where to start.
Our previous article on productivity explained how, historically, digital transformation has been only been implemented in the top 5% ‘frontier’ companies. These have tended to be very large companies with large R&D budgets that have enabled customised digital solutions. More recently, the availability of less expensive sensors and software components have extended opportunities to the SME companies. These companies are already realising gains in profitability, customer experience and operational efficiency. Unlike previous technologies, such as CRM, the newer technologies such as IoT and AI are more transformative. Companies that don’t update their processes risk being outranked by their competition with a greater possibility of going out of business. But where do you start?
The place to start is not technology but instead something you and your colleagues fortunately have lots of experience of : Your company. Take an honest look at your processes and work out the key problems that, if solved, would achieve the greatest gains. You might have ignored problems or inefficiencies for years or decades because they were thought to be insolvable. Technology might now be able to solve some of these problems. So what kind of problems? Think in terms of bottlenecks, costly workrounds, human effort-limited tasks, stoppages, downtimes, process delays, under-used equipment and even under-used people. Can you measure these things and react? Can you predict they are about to happen? This is where sensing comes in.
The next stage is connectivity. You will almost certainly need to upgrade or expand your WiFi and/or Ethernet network. It can be impractical to put sensors on everything and everyone and connect everything by WiFi/Ethernet. Instead, consider Bluetooth LE and sensor beacons to provide a low cost, low power solution for the last 50 to 100m. Bluetooth mesh can provide site-wide connectivity.
Initially implement a few key improvements that offer good payback for the effort (ROI). The improvements in efficiency, productivity, reduced costs and even customer experience should be enough to convince stakeholders to expand and better plan the digital transformation. This involves replacement of inefficient equipment and inefficient processes using, for example, robotics and 3D printing. It also involves analysing higher order information combined from multiple sources and using more advanced techniques such as AI machine learning to recognise and detect patterns to detect, classify and predict. This solves problem complexity beyond that able to be solved by the human mind or algorithmic program created by a programmer.
The traditional IoT strategy of sending all data up to the cloud for analysis doesn’t work well for some sensing scenarios. The combination of lots of sensors and/or frequent updates leads to lots of data being sent to the server, sometimes needlessly. The server and onward systems usually only need to now about abnormal situations. The data burden manifests itself as lots of traffic, lots of stored data, lots of complex processing and significant, unnecessary costs.
The processing of data and creating of ongoing alerts by a server can also imply longer delays that can be too long or unreliable for some time-critical scenarios. The opposite, doing all or the majority of processing near the sensing is called ‘Edge’ computing. Some people think that edge computing might one day become more normal as it’s realised that the cloud paradigm doesn’t scale technically or financially. We have been working with edge devices for a while now and can now formally announce a new edge device with some unique features.
Another problem with IoT is every scenario is different, with different inputs and outputs. Most organisations start by looking for a packaged, ready-made solution to their IoT problem that usually doesn’t exist. They tend to end up creating a custom coded solution. Instead, with SensorCognition™ we use pre-created modules that we ‘wire’ together, using data, to create your solution. We configure rather than code. This speeds up solution creation, providing greater adaptability to requirements changes and ultimately allows us to spend more time on your solution and less time solving programming problems.
However, the main reason for creating SensorCognition™ has been to provide for easier machine learning of sensor data. Machine learning is a two stage process. First data is collected, cleaned and fed into the ‘learning’ stage to create models. Crudely speaking, these models represent patterns that have been detected in the data to DETECT, CLASSIFY, PREDICT. During the production or ‘inference’ stage, new data is fed through the models to gain real-time insights. It’s important to clean the new data in exactly the same way as was done with the learning stage otherwise the models don’t work. The traditional method of data scientists manually cleaning data prior to creating models isn’t easily transferable to using those same models in production. SensorCognition™ provides a way of collecting sensor data for learning and inference with a common way of cleaning it, all without using a cloud server.
With SensorCognition™ we have created a general purpose device that can process sensor data using machine learning to provide for business-changing Internet of Things (IoT) and ‘Industry 4.0’ machine learning applications. This technology is available as a component of BeaconZone Solutions.
When working with Machine Learning on beacon sensor data or indeed any data, it’s important to realise AI machine learning isn’t magic. It isn’t foolproof and is ultimately only as good as the data passed in. Because it’s called AI and machine learning, people often expect 100% accuracy when this often isn’t possible.
By way of a simple example, take a look at the recent tweet by Max Woolf where he shows a video depicting the results of the Google cloud vision API when asked to identify an ambiguous rotating image that looks like a duck and rabbit:
There are times when it thinks the image is a duck, other times a rabbit and other times when it doesn’t identify either. Had the original learning data included only ducks but no rabbits there would have been different results. Had there been different images of ducks the results would have been different. Machine learning is only a complex form of pattern recognition. The accuracy of what you get out is related to a) The quality of the learning data and b) The quality of the tested data when to try identification.
If your application of machine learning is safety critical and needs 100% accuracy, then machine learning might not be right for you.