[WWDC] Apple 머신러닝을 공부하기 위한 세션 모음 (feat. Explore machine learning on Apple platforms)

2025. 3. 13. 16:43Framework, Library


안녕하세요!
오늘은 WWDC24의 Explore machine learning on Apple platforms 세션 내용을 바탕으로, Apple 머신러닝을 공부하기 위해 참고할 수 있는 WWDC 세션들을 소개해보고자 합니다.

사실 여러분들에게 세션을 추천하면서
동시에 여기에 정리해 둔 세션을 보며 3, 4월에는 Apple 머신러닝 공부를 하겠다는 저의 의지이기도 한다는 점... 
여기가 기술 블로그이긴 하지만.. 이 글에서는 저의 개인 메모장처럼 편하게 쓰겠다는 점... 미리 양해부탁드립니다 🙇🏻‍♂️(꾸벅)

앗! 그리고 세션에서는 추천해주지 않은 내용도 함께 포함했습니닷!

 

 

큰 개요부터 잡고 갑시다!

일단 본격적으로 세션 모음집을 정리하기에 앞서, Apple Machine Learning 기술에 대한 큰 개요부터 먼저 잡고 넘어가보려고 해요!

일단 애플의 모든 머신러닝 모델은 On-Device 방식을 따른다고 합니다.
즉, 사용자 데이터가 기기에만 저장되기 때문에 개인정보를 보호할 수도 있는 동시에, 빠르고 효율적으로 모델과 기기의 상호작용이 가능하게 되는 것이죠.
CPU, GPU, Neural Engine의 결합인 Apple Silicon이 있어 Apple이 On-Device 방식을 채택할 수 있었다나 뭐라나...!


아무튼 Apple의 Machine Learning 기술은 크게 네 파트로 나눠볼 수 있을 것 같아요!

  • 애플에서 제공해주는 기본 Machine Learning 기반 API (Vision, Natural Language, Sound Analysis, Speech, Translation)
  • Create ML을 사용해 자체 데이터로 맞춤화된 모델 생성하기
  • Core ML을 활용해 모델을 기기에서 실행하는 흐름
  • WWDC24에서 처음 소개된 애플의 생성형 AI, Apple Intelligence

그래서 지금부터는 이 네 가지 파트를 순서대로 살펴보며 세션 목록을 훑어보게 될거라는 점! 기억해주세요 ^__^
보다 자세한 내용은 아래 Apple의 머신 러닝 파트 공식문서를 들어가면 확인하실 수 있습니다!

 

머신 러닝 - Apple Developer

강력한 온디바이스 머신 러닝을 활용하여 지능형 기능을 만들고 앱에 새로운 경험을 제공할 수 있습니다.

developer.apple.com

 

 

Machine Learning APIs 파트 추천 세션

Apple은 다양한 머신 러닝 기반 API를 기본으로 제공해주고 있습니다.

이미지 또는 비디오 데이터를 분석할 수 있는 Vision, 자연어 텍스트를 분석할 수 있는 Natural Language,
음성 인식 (Speech-to-Text) 기능을 활용할 수 있는 Speech, 오디오 데이터를 분석할 수 있는 Sound Analysis,
그리고 WWDC24에서 처음 소개된 Translation 까지.

기본으로 준비된 Apple의 다섯 개의 머신러닝 프레임워크를 배우기 위한 WWDC 세션을 위 순서대로 알아볼게요!

Apple's Machine Learning APIs : Vision, Natural Language, Speech, Sound Analysis, Translation

 

Vision : Discover Swift enhancements in the Vision framework

 

Discover Swift enhancements in the Vision framework - WWDC24 - Videos - Apple Developer

The Vision Framework API has been redesigned to leverage modern Swift features like concurrency, making it easier and faster to integrate...

developer.apple.com

  • Vision 프레임워크는 텍스트 추출 (Text extraction), 얼굴 인식 (Face detection), 신체 자세 인식 (Body pose recognition) 등 다양한 시각적 영역에서의 인공지능 기능을 지원합니다.
  • 특히, WWDC24부터는 Swift 6와 Apple Concurrency를 완전히 지원하도록 재구성되었다고 하네요.
  • 손 움직임 감지 (Body pose with hands), 이미지 미적 품질 스코어 (Aesthetic score) 등 새로운 기능이 추가되었습니다.

+ 추가로 참고할 수 있는 Vision Framework 관련 세션

 

Natural Language : Explore Natural Language multilingual models

 

Explore Natural Language multilingual models - WWDC23 - Videos - Apple Developer

Learn how to create custom Natural Language models for text classification and word tagging using multilingual, transformer-based...

developer.apple.com

  • Natural Language Framework의 동작흐름을 간단하게 소개합니다. (자세한 내용은 아래 세션을 참고!)
  • 총 27개의 언어를 지원하는, 애플의 다국어 NLP 모델인 Natural Language를 소개합니다.
  • 특히, BERT 임베딩 (Transformer 기반 문백 임베딩 기술)은다국어 데이터에 적용할 수 있어, 텍스트 분류 및 단어 태깅 작업을 할 수 있다고 합니다!

+ 추가로 참고할 수 있는 Natural Language 관련 세션

 

Speech : Customize on-device speech recognition

 

Customize on-device speech recognition - WWDC23 - Videos - Apple Developer

Find out how you can improve on-device speech recognition in your app by customizing the underlying model with additional vocabulary...

developer.apple.com

  • iOS 10부터 도입된 음성 인식 기술, Speech 프레임워크에 대한 간단한 소개로 시작합니다.
  • 언어 모델 (LM)을 앱의 특정 도메인에 맞게 조정하여 Speech Recognizer의 동작을 제어할 수 있도록 한다고 하네요.

+ 추가로 참고할 수 있는 Speech 관련 세션

 

Sound Analysis : Discover built-in sound classification in SoundAnalysis

 

Discover built-in sound classification in SoundAnalysis - WWDC21 - Videos - Apple Developer

Explore how you can use the Sound Analysis framework in your app to detect and classify discrete sounds from any audio source — including...

developer.apple.com

  • 사운드 분류 (Sound Analysis) 기능을 소개하는 발표자분의 액션이 재밌는 세션입니다 ^__^
  • Apple은 300개 이상의 소리를 감지할 수 있는 내장 사운드 분류기를 제공하며, 이를 가지고 소리 식별 기능을 구현할 수 있다고 합니다.
  • 실시간 또는 녹음된 오디오 파일, 비디오에서 소리를 분석할 수 있고 / 시간과 시점을 식별할 수 있고 / 커스터마이징 옵션까지 제공하네요.
  • 무엇보다 간단한 코드 몇 줄만으로 사운드 분석 기능을 구현할 수 있습니다!

+ 추가로 참고할 수 있는 Sound Analysis 관련 세션

 

Translation : Meet the Translation API

 

Meet the Translation API - WWDC24 - Videos - Apple Developer

Discover how you can translate text across different languages in your app using the new Translation framework. We'll show you how to...

developer.apple.com

  • 앱에서 다양한 언어로 텍스트 번역을 수행할 수 있는 Translation API를 WWDC24에서 처음 소개했습니다.
  • 텍스트를 번역하고, 이를 UI에 표시할 수 있도록 연결된 상태의 프레임워크라고 하네요!
  • Simple UI, Flexible API, Efficient batching (기기에서 언어에셋을 관리하고 다운받는 법) 등의 특징을 소개하고 있습니다.

 

이 글에서 모두 다루지는 못했지만,
Apple의 Machine Learning API는 앱에서 다룰 수 있는 다양한 기능을 지원하고 있으니! 찾아보는 것도 좋을 것 같아요😊

 

 

Create ML 파트 추천 세션

위와 같이 준비되어 있는 모델을 사용할 수도 있지만,
특정 상황에 맞춰서 커스텀으로 머신러닝 모델을 훈련시키고 생성하고 싶다면 Apple의 Create ML이라는 프레임워크를 사용할 수 있습니다.

즉! Create ML과 Create ML components를 활용하면,
자체 데이터
로 몇 번의 간단한 작업만으로 Apple의 모든 플랫폼에서 적용할 수 있는 모델을 "직접" 만들 수 있다는 것이죠!

그렇다면 Create ML과 관련해 공부할 수 있는 WWDC 세션은 어떤 것들이 있는지 알아볼까요?

 

[WWDC24] What's new in Create ML

 

What’s new in Create ML - WWDC24 - Videos - Apple Developer

Explore updates to Create ML, including interactive data source previews and a new template for building object tracking models for...

developer.apple.com

  • WWDC 24에서 새롭게 추가된 Create ML 기능을 소개하는 세션입니다.
  • 객체 추적 (Object tracking) 템플릿이 추가되어 Apple Vision Pro와 같이 공간 컴퓨팅 (Spatial computing) 환경에서 활용할 수 있는 머신러닝 모델을 훈련시킬 수 있습니다!
  • 그리고, 데이터 소스를 탐색하고 검토하는 것을 더욱 쉽게 할 수 있는 기능, Interactive Data Source Preview 기능이 추가되었다고 합니다.
  • 새롭게 Time-Series Classification과 Time-Series Forecasting 기능이 추가되었습니다. (이건 무슨 내용일지 직접 세션을 한번 봐야 할 것 같긴 하네요ㅠ)

+ 추가로 참고할 수 있는 Create ML 관련 세션

 

 

Running models on device (Core ML) 파트 추천 세션

Whisper, Stable Diffusion, Mistral, Llama, Falcon, CLIP, Qwen, OpenELM 등과 같은 머신러닝 모델을 Apple 플랫폼에서 배포하기 위해서는, 아래와 같은 Train -> Prepare -> Integrate 순서의 작업 흐름을 지난다고 해요!

  1. 모델 아키텍처를 정의하고 (Defining Model Architecture), 학습 데이터를 제공해서 모델을 학습시키는 Train 단계
  2. 배포를 위해서 모델을 Core ML 형식으로 변환하고, presentaion과 parameter 최적화를 통해 뛰어난 성능을 달성하기 위해 준비하는 Prepare 단계
  3. 준비된 모델을 로드하고 실행하기 위해 Apple 프레임워크와 통합하는 코드를 작성하는 integrate단계

지금 부분에서는 각 단계별로 구체적으로 어떤 작업이 수행되는지를 설명하고 있는 세션을 알아보도록 하겠습니다.

머신러닝 모델을 기기에 배포하기 위한 순서도라고 생각하면 됩니다!

 

Train : Train your machine learning and AI models on Apple GPUs

 

Train your machine learning and AI models on Apple GPUs - WWDC24 - Videos - Apple Developer

Learn how to train your models on Apple Silicon with Metal for PyTorch, JAX and TensorFlow. Take advantage of new attention operations...

developer.apple.com

  • Apple Silcon 기반 메모리 아키텍처를 최대한 활용하여 + 학습 라이브러리 (PyTorch, Tensorflow, JAX 등)를 가지고 고성능 모델을 학습시킬 수 있습니다.
  • 이는 Apple GPU에서 효율적인 학습을 위해 Metal을 사용하기 때문인데요. 
  • Metal을 사용해 Mixed Precision (혼합 정밀도), Distributed Training (분산 학습), Transformer 모델 최적화 등의 기능을 활용할 수 있습니다.
  • 세션에서 각 머신러닝 모델 프레임워크별 주요 업데이트 사항도 확인할 수 있습니다.

 

Prepare : Bring your machine learning and AI models to Apple silicon

 

Bring your machine learning and AI models to Apple silicon - WWDC24 - Videos - Apple Developer

Learn how to optimize your machine learning and AI models to leverage the power of Apple silicon. Review model conversion workflows to...

developer.apple.com

  • Core ML Tools를 사용해 PyTorch, TensorFlow 등에서 학습된 모델을 Core ML 형식으로 변환할 수 있습니다.
  • 새로운 모델 압축 (compression) 기술이 새롭게 도입되었습니다. -> 이 부분은 Use Core ML Tools for machine learning model compression [WWDC23] 세션에서 더 자세하게 확인할 수 있을 것 같네요!
  • 모델에서 상태 (stateful)를 표현하는 기능이나, Transformer 관련 작업, 그리고 한 모델에 여러 기능을 도입할 수 있는 다기능 (Multifunctional) 모델까지 지원한다는 것을 세션에서 확인할 수 있군요!
  • 더 자세하게, 모델 배포 단계에서 고려해야 할 사항들 (저장 공간, 지연 시간, 정확도 등)도 함께 공부할 수 있습니다.

 

Integrate : Deploy machine learning and AI models on-device with Core ML

 

Deploy machine learning and AI models on-device with Core ML - WWDC24 - Videos - Apple Developer

Learn new ways to optimize speed and memory performance when you convert and run machine learning and AI models through Core ML. We'll...

developer.apple.com

  • Integrate 단계에서는 머신러닝 모델을 가져오고, 실행하기 위해 OS 프레임워크와 상호작용하는 코드를 작성합니다.
  • 머신러닝 모델이 Apple Silicon의 CPU, GPU, Neural Engine 사이 분배를 자동으로 수행해 최적화를 할 수 있도록 돕는다고 하는데요.
  • MLTensor라는 새로운 데이터 타입에 대한 소개도 들을 수 있습니다.
  • 상태가 있는 대규모 언어 모델을 효율적으로 디코딩하기 위한 Key-Value cache, 이미지 생성 모델에서 런타임 시 특정 스타일 어댑터를 선택하는 방법, 인사이트를 제공하는 Performance reports - MLComputePlan API까지 배울 수 있습니다.

 


 

Core ML은 가장 대표적인 Apple의 머신러닝 프레임워크지만, 
때로는 머신러닝 작업을 수행하는 데 있어 더욱 세밀하고 / 커스텀이 필요한 환경에서 제어를 해야하는 경우가 있을 수 있는데요.

그럴 때 등장하는 개념이 MPS Graph, Metal, BNNS Graph, Accelerate와 같은 것들입니다!

굉장히 생소한 개념일 수도 있는데, 
쉽게 말해서 Core ML은 "상단 개념"으로 개발자가 머신 러닝 모델을 "쉽고 효율적으로" 앱에 통합할 수 있도록 지원하는 고수준 (High-level) 기술이구요.
하단에 있는 것들은 "Core ML의 내부 사용 기술"로 각각의 목적에 맞춰서 "보다 세밀하게" 구현되어 있는 저수준 (Low-level) 기술입니다. (물론 이 수준에 있는 기술들도 직접 접근할 수 있구요!)

가장 최상단, 그리고 Core 중심부를 잡고 있는 Core ML, 그리고 하단에 위치하고 있는 Low-level 기술까지 머신러닝 구조가 이루어집니다.

 

Accelerate machine learning with Metal

 

Accelerate machine learning with Metal - WWDC24 - Videos - Apple Developer

Learn how to accelerate your machine learning transformer models with new features in Metal Performance Shaders Graph. We'll also cover...

developer.apple.com

  • 방대한 그래픽 처리가 필요한 앱은 Metal의 MPS Graph를 사용해 다른 워크로드와 함께 ML 작업의 시퀀스를 설정하여 GPU 활용을 최적화할 수 있다고 합니다.
  • MPS Graph는 Metal Performance Shaders 기반으로 구축되어 Core ML 모델을 로드하거나, 계산, 그래프 빌드하는데 도움을 준다고 해요.
  • 핵심 내용은 Effiecient transformations, Fast Fourier transforms, MPS Graph model viewer입니다. 이 내용은 저한테도 너무 어려워서 따로 세션 공부를 해봐야할 것 같습니다😅

 

Support real-time ML inference on the CPU

 

Support real-time ML inference on the CPU - WWDC24 - Videos - Apple Developer

Discover how you can use BNNSGraph to accelerate the execution of your machine learning model on the CPU. We will show you how to use...

developer.apple.com

  • 앞선 Metal과 다르게 CPU에서 실시간 신호 처리를 실행하는 경우에는 Accelerate의 BNNS Graph API를 활용해 ML 작업에 대한 엄격한 지연 시간 및 메모리 관리 제어 기능을 활용할 수 있다고 합니다.
  • 마찬가지로 핵심 키워드만 정리하면! Graph-based API, Real-time guarantees, Audio processing입니다. 직접 세션가서 공부해올게요 ^__^

 

 

Apple Intelligence 파트 추천 세션

마지막으로! WWDC24에서 핵심을 차지했던 Apple Intelligence와 관련된 세션은 뭐가 있는지 살펴보도록 하죠!

큰 줄기에서 Apple Inteligence는
글쓰기 도구로의 활용 (Writing Tools), 이미지 생성 도구로의 활용 (Image Playground), Genmoji, 그리고 인공지능 비서 Siri까지 총 네 가지로 나누어집니다.

이 중에서 Image Playground를 제외한 나머지 세 분야에서 Apple의 WWDC 세션을 소개해볼까해요.

 

Writing tools : Get Started with writing Tools

 

Get started with Writing Tools - WWDC24 - Videos - Apple Developer

Learn how Writing Tools help users proofread, rewrite, and transform text in your app. Get the details on how Writing Tools interact with...

developer.apple.com

  • Apple Intelligence 기반 Writing Tools를 활용하여 텍스트를 보다 효과적으로 작성하고, 편집하는 방법을 소개합니다.
  • AI 기반으로 선택한 텍스트를 교정하거나, 재작성, 요약하는 등의 Grammarly와 유사한 기능을 지원합니다.

 

Genmoji : Bring expression to your app with Genmoji

 

Bring expression to your app with Genmoji - WWDC24 - Videos - Apple Developer

Discover how to bring Genmoji to life in your app. We'll go over how to render, store, and communicate text that includes Genmoji. If...

developer.apple.com

  • Apple Intelligence 기반으로 사용자의 경험을 풍부하게 만드는 Genmoji 기능을 소개하는 세션입니다.
  • OpenAI의 DALL-E와 유사하게 텍스트 설명을 입력하면 - 다양한 스타일의 Genmoji 이미지를 생성해주는 흐름이죠.
  • 특히, 사진 속 인물을 선택해 해당 인물과 유사하게 이미지를 생성할 수 있다는 특징도 있습니다!

 

Siri :  Bring your app to Siri

 

Bring your app to Siri - WWDC24 - Videos - Apple Developer

Learn how to use SiriKit and App Intents to expose your app's functionality to Siri and Apple Intelligence. Discover which intents are...

developer.apple.com

  • Apple Intelligence 기반으로 Siri의 향상된 자연어 처리 능력 향상을 담고 있습니다.
  • 개발자는 앱의 특정 기능을 App Intentes 프레임워크를 통해 Siri에 노출시켜, 사용자가 Siri를 통해 특정 앱의 작업을 수행할 수 있도록 만드는 내용도 포함합니다.
  • 또한, Siri가 사용자의 기기 활동을 기반으로 개인화된 응답을 제공하도록 향상되었습니다.