이 튜토리얼은 JAX, Flax 및 Optax를 사용하여 MNIST 숫자 분류를위한 CNN (Convolutional Neural Network)을 구축, 훈련 및 평가하는 것을 보여줍니다. 환경 설정 및 데이터 전처리에서 모델 아키텍처, 교육 루프 구현, 메트릭 시각화 및 사용자 정의 이미지에 대한 예측에 이르기까지 모든 것을 다룹니다. 이 접근법은 효율적이고 확장 가능한 딥 러닝을 위해 이러한 라이브러리의 시너지 강점을 강조합니다.
학습 목표 :
- 간소화 된 신경망 개발을 위해 Jax, Flax 및 Optax의 통합을 마스터하십시오.
- TFDS (Tensorflow DataSets)를 사용하여 전처리 및로드 데이터 세트를 배우십시오.
- 효과적인 이미지 분류를 위해 CNN을 구현하십시오.
- 주요 메트릭 (손실 및 정확성)을 사용하여 교육 진행 상황을 시각화합니다.
- 사용자 정의 이미지에서 모델의 성능을 평가하십시오.
이 기사는 Data Science Blogathon의 일부입니다.
목차 :
- 학습 목표
- Jax, Flax 및 Optax Powerhouse
- JAX 설정 : 설치 및 가져 오기
- MNIST 데이터 : 로딩 및 전처리
- CNN 구성
- 모델 평가 : 메트릭 및 추적
- 훈련 루프
- 교육 및 평가 실행
- 성능 시각화
- 사용자 정의 이미지로 예측
- 결론
- 자주 묻는 질문
Jax, Flax 및 Optax Powerhouse :
효율적이고 확장 가능한 딥 러닝에는 계산, 모델 설계 및 최적화를위한 강력한 도구가 필요합니다. Jax, Flax 및 Optax는 이러한 요구를 종합적으로 해결합니다.
Jax : 수치 컴퓨팅 우수성 :
JAX는 Numpy와 같은 인터페이스로 고성능 수치 계산을 제공합니다. 주요 기능은 다음과 같습니다.
- 자동 차별화 (AutoGrad) : 복잡한 기능에 대한 손쉬운 기울기 계산.
- JIT (Just-In-Time) 컴파일 : CPU, GPU 및 TPU의 실행 가속화.
- 벡터화 :
vmap
통한 단순화 된 배치 처리. - 하드웨어 가속 : GPU 및 TPU에 대한 기본 지원.
아마 : 유연한 신경망 :
Jax 기반 라이브러리 인 Flax는 신경망 구성에 대한 사용자 친화적이고 고도로 사용자 정의 가능한 접근 방식을 제공합니다.
- 상태가 높은 모듈 : 단순화 된 매개 변수 및 상태 관리.
- Concise API :
@nn.compact
데코레이터를 사용한 직관적 인 모델 정의. - 적응성 : 단순에서 복잡한 다양한 아키텍처에 적합합니다.
- Seamless Jax 통합 : Jax의 기능을 쉽게 활용합니다.
Optax : 포괄적 인 최적화 :
Optax는 그라디언트 처리 및 최적화를 간소화하여 제공합니다.
- Optimizer Variety : SGD, Adam 및 RMSPROP를 포함한 광범위한 최적화기.
- 그라디언트 조작 : 클리핑, 스케일링 및 정규화 도구.
- 모듈 식 설계 : 그라디언트 변환 및 최적화의 쉬운 조합.
이 결합 프레임 워크는 효율적인 딥 러닝 모델 개발을위한 강력한 모듈 식 생태계를 제공합니다.
JAX 설정 : 설치 및 가져 오기 :
필요한 라이브러리 설치 :
! PIP 설치 -업그레이드 -Q PIP JAX JAXLIB FLAX OPTAX TENSORFLOW -DATASETS
필수 라이브러리 가져 오기 :
Jax를 가져옵니다 jax.numpy를 JNP로 가져옵니다 아마 수입 리넨에서 Nn flax에서 트레인 트레인 _state Optax 가져 오기 Numpy를 NP로 가져옵니다 Tensorflow_datasets를 TFD로 가져옵니다 matplotlib.pyplot을 plt로 가져옵니다
MNIST 데이터 : 로딩 및 전처리 :
TFDS를 사용하여 MNIST 데이터 세트를로드하고 전처리합니다.
def get_datasets () : ds_builder = tfds.builder ( 'mnist') ds_builder.download_and_prepare () Train_ds = tfds.as_numpy (ds_builder.as_dataset (split = 'train', batch_size = -1)) test_ds = tfds.as_numpy (ds_builder.as_dataset (split = 'test', batch_size = -1)). Train_ds [ 'image'] = jnp.float32 (Train_ds [ 'image']) / 255.0 test_ds [ 'image'] = jnp.float32 (test_ds [ 'image']) / 255.0 TRAIN_DS, TEST_DS를 반환합니다 Train_ds, test_ds = get_datasets ()
이미지는 범위 [0, 1]로 정규화됩니다.
CNN 구성 :
CNN 아키텍처 :
클래스 CNN (NN.Module) : @nn.compact def __call __ (self, x) : x = nn.conv (feations = 32, kernel_size = (3, 3)) (x) x = nn.relu (x) x = nn.avg_pool (x, window_shape = (2, 2), strides = (2, 2)) x = nn.conv (feature = 64, kernel_size = (3, 3)) (x) x = nn.relu (x) x = nn.avg_pool (x, window_shape = (2, 2), strides = (2, 2)) x = x.reshape ((x.shape [0], -1)) x = nn.dense (피처 = 256) (x) x = nn.relu (x) x = nn.dense (피처 = 10) (x) 반환 x
여기에는 컨볼 루션 층, 풀링 층, 평평한 층 및 조밀 한 층이 포함됩니다.
모델 평가 : 메트릭 및 추적 :
손실과 정확도를 계산하기위한 함수를 정의합니다.
def compute_metrics (Logits, Labels) : loss = jnp.mean (optax.softmax_cross_entropy (logits, jax.nn.one_hot (labels, num_classes = 10))). 정확도 = jnp.mean (jnp.argmax (logits, -1) == 레이블) 메트릭 = { '손실': 손실, '정확도': 정확도}} 반환 메트릭 # ... (Train_Step 및 Eval_Step 함수는 크게 동일하게 유지됩니다) ...
(Train_step 및 Eval_Step 함수는 원래 코드와 유사하게 여기에 포함됩니다.)
훈련 루프 :
교육 루프는 모델을 반복적으로 업데이트합니다.
# ... (Train_Epoch 및 Eval_Model 함수는 크게 동일하게 유지됩니다) ...
(Train_Epoch 및 Eval_Model 함수는 원래 코드와 유사하게 여기에 포함됩니다.)
교육 및 평가 실행 :
우리는 교육 및 평가 과정을 실행합니다.
# ... (교육 및 평가 실행 코드는 크게 동일하게 유지됩니다) ...
(매개 변수 초기화, Optimizer 설정 및 교육 루프를 포함한 교육 및 평가 실행 코드는 여기에 원래 코드와 유사하게 포함됩니다.)
성능 시각화 :
Matplotlib을 사용하여 교육 및 테스트 메트릭을 시각화합니다.
# ... (matplotlib 플로팅 코드는 크게 동일하게 유지됩니다) ...
(원래 코드와 유사하게 손실 및 정확도를 시각화하기위한 Matplotlib 플롯 코드가 여기에 포함됩니다.)
사용자 정의 이미지 예측 :
이 섹션은 사용자 정의 이미지에 대한 예측을 보여줍니다 (코드는 원본과 크게 동일하게 유지됨).
# ... (사용자 정의 이미지에 대한 업로드, 전처리 및 예측을위한 코드는 거의 동일하게 유지됩니다) ...
결론:
이 튜토리얼은 CNN을 구축하고 훈련하기위한 JAX, Flax 및 Optax의 효율성과 유연성을 보여주었습니다. TFD의 사용을 단순화하고 데이터 처리 및 메트릭 시각화는 귀중한 통찰력을 제공했습니다. 사용자 정의 이미지에서 모델을 테스트하는 기능은 실제 적용 가능성을 강조합니다.
자주 묻는 질문 :
(FAQ는 원본과 크게 동일하게 유지됩니다.)
제공된 Colab 링크가 여기에 포함됩니다. /uploads/....webp
이미지 경로를 이미지의 실제 경로로 바꾸는 것을 잊지 마십시오.
위 내용은 Jax, Flax 및 Optax를 사용한 이미지 분류의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!
![chatgpt를 사용할 수 없습니다! 즉시 테스트 할 수있는 원인과 솔루션 설명 [최신 2025]](https://img.php.cn/upload/article/001/242/473/174717025174979.jpg?x-oss-process=image/resize,p_40)
chatgpt에 액세스 할 수 없습니까? 이 기사는 다양한 실용적인 솔루션을 제공합니다! 많은 사용자가 매일 chatgpt를 사용할 때 액세스 할 수 없거나 느린 응답과 같은 문제가 발생할 수 있습니다. 이 기사는 다양한 상황에 따라 이러한 문제를 단계별로 해결하도록 안내합니다. Chatgpt의 접근성 및 예비 문제 해결의 원인 먼저 문제가 OpenAI 서버 측 또는 사용자의 네트워크 또는 장치 문제에 있는지 확인해야합니다. 문제 해결을 위해 아래 단계를 따르십시오. 1 단계 : OpenAI의 공식 상태를 확인하십시오 chatgpt 서비스가 정상적으로 실행 중인지 확인하려면 OpenAi 상태 페이지 (status.openai.com)를 방문하십시오. 빨간색 또는 노란색 알람이 표시되면 열린 것을 의미합니다.

2025 년 5 월 10 일, MIT 물리학 자 Max Tegmark는 AI Labs가 인공 초 지능을 방출하기 전에 Oppenheimer의 삼위 일체 테스트 미적분학을 모방해야한다고 Guardian에게 말했다. “내 평가는 'Compton Constant', 인종이

AI 음악 제작 기술은 매일 매일 변화하고 있습니다. 이 기사는 Chatgpt와 같은 AI 모델을 예로 사용하여 AI를 사용하여 음악 제작을 지원하고 실제 사례에 대해 설명하는 방법을 자세히 설명합니다. 우리는 Sunoai, Hugging Face의 AI Jukebox 및 Python 's Music21 Library를 통해 음악을 만드는 방법을 소개합니다. 이러한 기술을 통해 모든 사람은 독창적 인 음악을 쉽게 만들 수 있습니다. 그러나 AI 생성 컨텐츠의 저작권 문제는 무시할 수 없으며 사용할 때는 신중해야합니다. 음악 분야에서 AI의 무한한 가능성을 모색 해 봅시다! OpenAi의 최신 AI 에이전트 "OpenAi Deep Research"가 소개됩니다. [chatgpt] ope

ChatGpt-4의 출현은 AI 응용 프로그램의 가능성을 크게 확장했습니다. GPT-3.5와 비교하여 ChatGpt-4는 상당히 개선되었습니다. 강력한 맥락 이해력이 있으며 이미지를 인식하고 생성 할 수도 있습니다. 그것은 보편적 인 AI 조수입니다. 비즈니스 효율성 향상 및 창출 지원과 같은 많은 분야에서 큰 잠재력을 보여주었습니다. 그러나 동시에, 우리는 또한 사용의 예방 조치에주의를 기울여야합니다. 이 기사에서는 ChatGpt-4의 특성을 자세히 설명하고 다양한 시나리오에 대한 효과적인 사용 방법을 소개합니다. 이 기사에는 최신 AI 기술을 최대한 활용하는 기술이 포함되어 있습니다. OpenAi의 최신 AI 에이전트, "OpenAi Deep Research"에 대한 자세한 내용은 아래 링크를 클릭하십시오.

chatgpt 앱 : AI 조수와 함께 창의력을 발휘하십시오! 초보자 가이드 Chatgpt 앱은 쓰기, 번역 및 질문 답변을 포함하여 광범위한 작업을 처리하는 혁신적인 AI 어시스턴트입니다. 창의적인 활동과 정보 수집에 유용한 끝없는 가능성이있는 도구입니다. 이 기사에서는 초보자를위한 이해하기 쉬운 방법, ChatGpt 스마트 폰 앱을 설치하는 방법, 음성 입력 기능 및 플러그인과 같은 앱의 고유 한 기능 및 앱을 사용할 때 염두에 두는 포인트에 이르기까지 설명합니다. 또한 플러그인 제한 및 장치 간 구성 동기화를 자세히 살펴 보겠습니다.

Chatgpt Chinese 버전 : 중국 AI 대화의 새로운 경험 잠금 해제 Chatgpt는 전 세계적으로 인기가 있습니다. 중국어 버전도 제공한다는 것을 알고 있습니까? 이 강력한 AI 도구는 일상적인 대화를 지원할뿐만 아니라 전문적인 콘텐츠를 처리하며 단순화되고 전통적인 중국어와 호환됩니다. 중국의 사용자이든 중국어를 배우는 친구이든 상관없이 혜택을 누릴 수 있습니다. 이 기사는 계정 설정, 중국 신속한 단어 입력, 필터 사용 및 다양한 패키지 선택을 포함하여 ChatGpt 중국어 버전을 사용하는 방법을 자세히 소개하고 잠재적 위험 및 응답 전략을 분석합니다. 또한 ChatGpt 중국어 버전을 다른 중국 AI 도구와 비교하여 장점과 응용 프로그램 시나리오를 더 잘 이해할 수 있도록 도와줍니다. Openai의 최신 AI 인텔리전스

이것들은 생성 AI 분야의 다음 도약으로 생각 될 수 있으며, 이는 우리에게 Chatgpt 및 기타 대규모 모델 챗봇을 제공했습니다. 단순히 질문에 대답하거나 정보를 생성하는 대신, 우리를 대신하여 조치를 취할 수 있습니다.

ChatGpt를 사용한 효율적인 다중 계정 관리 기술 | 비즈니스와 사생활 사용 방법에 대한 철저한 설명! Chatgpt는 다양한 상황에서 사용되지만 일부 사람들은 여러 계정 관리에 대해 걱정할 수 있습니다. 이 기사는 ChatGpt에 대한 여러 계정을 만드는 방법, 사용할 때 수행 할 작업 및 안전하고 효율적으로 작동하는 방법을 자세히 설명합니다. 또한 비즈니스와 개인 사용의 차이, OpenAI의 이용 약관을 준수하는 것과 같은 중요한 점을 다루며 여러 계정을 안전하게 활용하는 데 도움이되는 안내서를 제공합니다. Openai


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전

맨티스BT
Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.