TL;DR: Are you working on a project (open or closed source) outside of Apple that does heavy number crunching with Swift? Let's chat!
I'm a grad student who has dabbled in HPC / ML / Stats who has taken an interest in Swift.
Swift looks like an interesting language, but I'm really confused about Swift for numerics.
- Swift for Tensorflow has come and gone[1]. It provided an enormous momentum for Swift into this domain, though.
- Apple released a numerics library[2].
- There is tons of functionality in Accelerate.framework which looks like it'd be great for making math-heavy code[3]. Looks like a super cool foundation for a project.
- People have had issues linking against Accelerate.framework[4]. Am I even linking against the same code as Apple engineers in these lower level libraries?
- There was a talk this year on Metal Compute for ML[5]. This kinda gives me the impression they want people to buy into this ecosystem.
Jeremy Howard from fast.ai was excited about this stuff in 2019[6]. I'm curious if he still thinks it has a future outside of Apple.
It seems like there aren't many tutorials / projects out there on:
- Rolling your own statistical ML libraries and using them in Swift Projects
- Using BNNS to make and train your own neural network.
I don't mind the fact that this stuff gets pretty difficult sometimes. Swift was never catered to this sort of work. Apple cares more about optimizing the developer UX of CoreML / Vision. I'm just trying to see through the mixed messages that Apple keeps sending to people like me. Do they want us working on this stuff or no?
---
1: https://www.tensorflow.org/swift/guide/overview
2: https://github.com/apple/swift-numerics
3: https://developer.apple.com/documentation/accelerate
/bnns#topics
4: https://github.com/scipy/scipy/issues/7500
5: https://developer.apple.com/wwdc21/10152
6: https://www.fast.ai/2019/01/10/swift-numerics/