Summary
Excited to play a vital role in deploying blazingly fast ML models for Apple Silicon? Core ML provides the inference stack to execute neural networks on Macs, iPhones, Watch. Its the technology that powers the transformative ML driven user features across native (e.g. Camera, Photos, Keyboard, Siri, Facetime, spatial computing etc) and external apps (Adobe Photoshop, Pixelmator etc), by utilizing the amazing power of Apple hardware (CPU, GPU and neural engine). The primary bridge between deep learning models, trained with PyTorch / JAX and running them efficiency on Apple Silicon, is the step of model conversion: which is the process of converting the computational graph produced by training ML frameworks to the Apple friendly computational graph that Core ML can accept and execute. In this role, you will contribute on the development and enhancement of this very first step. You will work on bringing state of the art models, of varying sizes (few millions to hundreds of millions of parameters) to run on device with high performance (low latency, memory and power).
We are looking for someone who is highly self motivated, has strong understanding of deep learning models and is passionate to bring the amazing models from ML research and different domains (vision, image/text generation, audio etc) to real applications on device. If you have a proven track record of model deployment/optimization, writing high quality code and shipping libraries to a large user base, we strongly encourage you to apply.
Our work is highly visible. You will collaborate with innovative product teams across Apple and with pro external developers (e.g. Adobe, Hugging Face, Meta etc) and work with them to export and efficiently deploy deep learning models on Apple devices. You will heavily contribute to Apple’s open source projects as part of the process.
Key Qualifications
Strong ML fundamentals and understanding of the latest model architectures. Strong understanding of operations that constitute a model (e.g. gather, convolution, attention etc)
Fluent in PyTorch, TF or JAX
Ability to work comfortably with computational graphs and IRs (compiler background a strong bonus)
Ability to profile models and reason about the effect of conversion / model representation on device performance
Strong python programming skills (C++ a strong bonus)
Experience with developing public facing APIs (in python or C++/C)
Passionate about engaging and collaborating with ML community in the open source (track record in this area a strong bonus)
Description
We are the team that develops Core ML Tools, an open source python library for converting PyTorch and TensorFlow models to Core ML and optimizing models for performance. If you enjoy playing with the building blocks and architecture of machine learning models, strong at understanding the mathematical operations making these models, manipulating the computational graph to optimize for speed / execution , then you are going to have fun in this role!
Responsibilities include:
* Performing model conversion from PyTorch , among other libraries, to the Core ML model format
* Running and benchmarking models. Understanding the effect of computational graph representation on the model execution performance on neural engine, GPU, CPU.
* Proficient in setting up and running open source ML models (e.g. Hugging Face), understanding ML pipelines and reasoning on which parts should be part of the model, and which outside the model as pre-processing and post processing steps
* Adding graph passes for improving performance. Publishing examples of models that are converted in “performant” ways (example: the Apple Stable diffusion open source library)
* Collaborate effectively with developers (internal and external). Be an active member of the open source CoreMLTools community on Github, interacting with developers, addressing GitHub issues etc
* Implementing new operations / layers for neural networks
* Improving model optimization documentation, writing examples, tutorials and guides
Education & Experience
* BS/MS/PhD in Computer Science or Electrical Engineering
* 2+ years of industry experience
Additional Requirements
Project Role : AI / ML EngineerProject Role Description : Develops applications and systems that utilize AI tools, Cloud AI...
How to applyEntity: – Accenture Strategy & Consulting Team: – Global Network – Data & AI Practice: – S&C GN AI –...
How to applyAt Mindrift, innovation meets opportunity. We believe in using the power of collective intelligence to ethically shape the future of...
How to applyAWS Neuron is the complete software stack for the AWS Inferentia and Trainium cloud-scale machine learning accelerators and the Trn1...
How to applyAWS Utility Computing (UC) provides product innovations that continue to set AWS’s services and features apart in the industry. As...
How to applyMinimum qualifications: Bachelor’s degree or equivalent practical experience. 2 years of experience with data structures or algorithms in either an...
How to apply