4

I'm trying to build an app that makes suggestions (distinct classes) based on a table with 4 features: latitude, longitude, time and weekday.

The training data of my app is 100% personal, so it doesn't really make sense to pre-train the model. I wanna be able to train on device. I know CoreML 3 supports updating for neural networks and kNN classifiers, but does this really help me with my tabular data?

Other tabular classifiers like boasted tree, random forest... can't be trained on device unfortunately. Are there alternatives to CoreML for on device training of those simpler machine learning algorithms? Or can CoreML somehow already do what I want.

Unfortunately I'm not really an expert in neural networks.

Glen
  • 387
  • 3
  • 7
  • 1
    did you manage to work this out? I want to build something very similar. – Arjan Apr 12 '21 at 10:15
  • @Arjan I haven't. I realized that I also need to teach myself the basics of Machine Learning Algorithms first. CreateML was so convenient, because it allows absolute noobs like me to create tabular classifiers. CreateML can also automatically choose an appropriate algorithm for you. Because CreateML isn't available on iOS, it seems you need more in depth knowledge about ML in order to create something similar. – Glen Apr 13 '21 at 11:05
  • Thanks for your reply. Hopefully iOS XX will add some on-device possibility for this use case. To me it sounds like something that many apps could make use of, like a basic AI recommendation system based on previous usage. – Arjan Apr 13 '21 at 11:16

1 Answers1

2

Just because Core ML doesn't provide something, doesn't mean it's impossible. :-) You can use existing libraries or implement the algorithm by yourself.

If you're looking to build a logistic regression classifier, this is fairly easy to implement by hand. (You can even use a neural network with a single layer for this and still use Core ML.)

Matthijs Hollemans
  • 7,706
  • 2
  • 16
  • 23