Spam SMS filtering app based on iOS 11 machine learning: Pandas eat SMS

Spam SMS filtering app based on iOS 11 machine learning: Pandas eat SMS

As a tech geek living in the mobile Internet era, I suffer from harassing text messages, but there is no simple filtering application that does not require uploading my own text messages. So I trained Panda from more than 20,000 text messages I received and text message samples submitted by users during the test period.

iOS 11 brings a very powerful CoreML machine learning framework, which developers use for visual processing. I will use it to make a text classification application so that pandas can settle down on mobile phones.

Accurate semantic recognition

Panda has learned the text patterns of spam messages from a large number of samples and can accurately classify messages in complex semantic environments. For example, the two very similar [JD Pay] messages in the figure below.

Spam SMS Identification

You can copy the text message and then click Accuracy Test in the app to test the accuracy.

Very simple to use

After installation, you only need to open Settings → Messages → Unknown and Filtered Messages and select Panda Eats SMS. The panda will then silently help you eat the spam messages.

Focus on privacy

Panda does not require a server or an internet connection. The app comes with a complete training model, and you can use CoreML to classify text messages on your phone. The sandbox restrictions of iOS 11 also do not allow SMS filters to access the network or share data with the main app. Although iOS 11 can be configured to send text messages to its own server for cloud judgment, Panda does not use this feature.

Automatic evolution

Panda is growing rapidly, and the accuracy of classification depends on whether Panda has seen similar information before. However, the world is so big that there are always things that Panda has never eaten, and Panda also has limited knowledge. Based on the principle of voluntariness, you can submit new SMS samples in the app to feed Panda, and Panda will learn new junk or normal SMS patterns from the new samples.

Note: Submitting SMS samples will upload the SMS anonymously to the server. This is not local training. Panda will complete the learning in the cloud and then distribute it to everyone's mobile phones.

About partial eclipse

Since I taught Panda (supervised learning), it has inherited my preferences to a certain extent. For some vague text messages, such as discount and promotion information, I always mark them as nuisance text messages. However, some people may like to receive such notifications, so you can choose for yourself.

System Limitations

Due to the system design of iOS 11, filtered text messages will also display a corner mark and a notification on the Apple Watch. In addition, iOS 11 filters text messages based on conversations. If the same number sends both harassing text messages and normal text messages, the entire conversation will be filtered. This phenomenon is common in five-digit numbers, but text message sending ports starting with 10 are very rare.

at last

  • The panda logo comes from one of my favorite pictures of a panda rolling back.
  • Panda is currently only trained for Chinese and may not work in other language environments.

<<:  Google launches simplified Android system in India to develop low-end market

>>:  Can Android imitate Zhihu's creative advertising be played like this?

Recommend

Some keys to improve iOS development efficiency

First of all, the title is a bit broad. This arti...

Why Surface Pro 3 still can't replace your laptop?

As the hardware product that Microsoft has attache...

20 iron rules for offline marketing!

Over the years of work, I have worked on many pro...

Sharing experience in designing high-conversion e-commerce detail pages!

This article will talk about conversion. Let’s ta...

Meituan Operations: The Marketing Logic of Meituan Takeaway Monthly Card

Buy monthly pass at super low price First, let’s ...

Top 10 Smart Hardware Products of 2014 (Part 1): Stories

First of all, I want to emphasize that this is a ...

RxJava Operator Series 3 (Part 1)

RxJava Operator Series Portal RxJava operator sou...

The whole process of user growth fission of "old bring new"

Without users, there is no revenue. In an era of ...