chore(i18n): sync translations with latest source changes (chunk 2/8, 132 changes)

This commit is contained in:
localizeflow[bot] 2026-01-30 01:17:25 +00:00
parent 7a7aeb92a1
commit 39d25b3dac
132 changed files with 26742 additions and 0 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 276 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 113 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 109 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 275 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

View File

@ -0,0 +1,398 @@
{
"AGENTS.md": {
"original_hash": "6b11a37115944252ab3ed04e358d830d",
"translation_date": "2025-10-03T09:13:31+00:00",
"source_file": "AGENTS.md",
"language_code": "ur"
},
"README.md": {
"original_hash": "1984fc89dd304a8a33ab5584691a99aa",
"translation_date": "2026-01-30T01:13:40+00:00",
"source_file": "README.md",
"language_code": "ur"
},
"SECURITY.md": {
"original_hash": "a583f49d359c7ebba61433e4dfcd05a9",
"translation_date": "2025-08-26T07:54:55+00:00",
"source_file": "SECURITY.md",
"language_code": "ur"
},
"etc/CODE_OF_CONDUCT.md": {
"original_hash": "c06b12caf3c901eb3156e3dd5b0aea56",
"translation_date": "2025-08-26T11:16:56+00:00",
"source_file": "etc/CODE_OF_CONDUCT.md",
"language_code": "ur"
},
"etc/CONTRIBUTING.md": {
"original_hash": "847a587aa1b83f4d00858183ff3ed18a",
"translation_date": "2025-08-26T11:19:23+00:00",
"source_file": "etc/CONTRIBUTING.md",
"language_code": "ur"
},
"etc/Mindmap.md": {
"original_hash": "f2f88dbd2debd38e26149b27b1fd272d",
"translation_date": "2025-08-26T11:21:01+00:00",
"source_file": "etc/Mindmap.md",
"language_code": "ur"
},
"etc/SUPPORT.md": {
"original_hash": "fdfc08baee91e402938a2b1f94fe0949",
"translation_date": "2025-08-26T11:16:02+00:00",
"source_file": "etc/SUPPORT.md",
"language_code": "ur"
},
"etc/TRANSLATIONS.md": {
"original_hash": "62b3e3ad5182edb905eec649a87eeeb4",
"translation_date": "2025-08-26T11:17:57+00:00",
"source_file": "etc/TRANSLATIONS.md",
"language_code": "ur"
},
"etc/quiz-app/README.md": {
"original_hash": "d699cf8509f74baa5b0b838de5cf0662",
"translation_date": "2025-08-26T11:24:50+00:00",
"source_file": "etc/quiz-app/README.md",
"language_code": "ur"
},
"examples/README.md": {
"original_hash": "0d1babfdcbeb46525f2db3fbaaa54cd7",
"translation_date": "2025-10-03T11:27:17+00:00",
"source_file": "examples/README.md",
"language_code": "ur"
},
"lessons/0-course-setup/for-teachers.md": {
"original_hash": "a094ef9927883de1cfcee51dbd143381",
"translation_date": "2025-08-26T11:11:46+00:00",
"source_file": "lessons/0-course-setup/for-teachers.md",
"language_code": "ur"
},
"lessons/0-course-setup/how-to-run.md": {
"original_hash": "a4717bd9103b9f6cd84d534b83534689",
"translation_date": "2026-01-15T11:48:29+00:00",
"source_file": "lessons/0-course-setup/how-to-run.md",
"language_code": "ur"
},
"lessons/0-course-setup/setup.md": {
"original_hash": "7b4e5b8956915870d0a0ed3cc5890042",
"translation_date": "2025-12-12T19:16:37+00:00",
"source_file": "lessons/0-course-setup/setup.md",
"language_code": "ur"
},
"lessons/1-Intro/README.md": {
"original_hash": "f57e8aa46141fd220b16ffed8f11aec7",
"translation_date": "2025-11-18T20:43:35+00:00",
"source_file": "lessons/1-Intro/README.md",
"language_code": "ur"
},
"lessons/1-Intro/assignment.md": {
"original_hash": "a334df77a82aaaf2a29c77065d3e481e",
"translation_date": "2025-11-18T20:45:16+00:00",
"source_file": "lessons/1-Intro/assignment.md",
"language_code": "ur"
},
"lessons/2-Symbolic/README.md": {
"original_hash": "f9f06b266b8b2bfc6b8792ff2bb1bea4",
"translation_date": "2026-01-15T11:49:47+00:00",
"source_file": "lessons/2-Symbolic/README.md",
"language_code": "ur"
},
"lessons/2-Symbolic/assignment.md": {
"original_hash": "a057a8604f3976c3e309884453f1fad0",
"translation_date": "2025-08-26T11:06:46+00:00",
"source_file": "lessons/2-Symbolic/assignment.md",
"language_code": "ur"
},
"lessons/3-NeuralNetworks/03-Perceptron/README.md": {
"original_hash": "c34cbba802058b6fa267e1a294d4e510",
"translation_date": "2025-09-23T06:47:05+00:00",
"source_file": "lessons/3-NeuralNetworks/03-Perceptron/README.md",
"language_code": "ur"
},
"lessons/3-NeuralNetworks/03-Perceptron/lab/README.md": {
"original_hash": "ba5d1eb353d20d3e7181066b3c424b99",
"translation_date": "2025-08-29T06:40:06+00:00",
"source_file": "lessons/3-NeuralNetworks/03-Perceptron/lab/README.md",
"language_code": "ur"
},
"lessons/3-NeuralNetworks/04-OwnFramework/README.md": {
"original_hash": "789d6c3fb6fc7948a470b33078a5983a",
"translation_date": "2025-09-23T06:46:33+00:00",
"source_file": "lessons/3-NeuralNetworks/04-OwnFramework/README.md",
"language_code": "ur"
},
"lessons/3-NeuralNetworks/04-OwnFramework/lab/README.md": {
"original_hash": "48fdd704d483e19bc3d7464074c9fcbe",
"translation_date": "2025-08-26T10:29:00+00:00",
"source_file": "lessons/3-NeuralNetworks/04-OwnFramework/lab/README.md",
"language_code": "ur"
},
"lessons/3-NeuralNetworks/05-Frameworks/README.md": {
"original_hash": "ddd216f558a255260a9374008002c971",
"translation_date": "2025-09-23T06:47:27+00:00",
"source_file": "lessons/3-NeuralNetworks/05-Frameworks/README.md",
"language_code": "ur"
},
"lessons/3-NeuralNetworks/05-Frameworks/lab/README.md": {
"original_hash": "e452d897efb9a89700f41021834cf6e5",
"translation_date": "2025-08-26T10:35:00+00:00",
"source_file": "lessons/3-NeuralNetworks/05-Frameworks/lab/README.md",
"language_code": "ur"
},
"lessons/3-NeuralNetworks/README.md": {
"original_hash": "f862a99d88088163df12270e2f2ad6c3",
"translation_date": "2025-10-03T12:42:41+00:00",
"source_file": "lessons/3-NeuralNetworks/README.md",
"language_code": "ur"
},
"lessons/4-ComputerVision/06-IntroCV/README.md": {
"original_hash": "feeca98225cb420afc89415f24f63d92",
"translation_date": "2025-09-23T06:42:13+00:00",
"source_file": "lessons/4-ComputerVision/06-IntroCV/README.md",
"language_code": "ur"
},
"lessons/4-ComputerVision/06-IntroCV/lab/README.md": {
"original_hash": "3d53d6409f80970f7281a45dee35328a",
"translation_date": "2025-08-26T09:40:39+00:00",
"source_file": "lessons/4-ComputerVision/06-IntroCV/lab/README.md",
"language_code": "ur"
},
"lessons/4-ComputerVision/07-ConvNets/CNN_Architectures.md": {
"original_hash": "53faab85adfcebd8c10bcd71dc2fa557",
"translation_date": "2025-09-23T06:41:30+00:00",
"source_file": "lessons/4-ComputerVision/07-ConvNets/CNN_Architectures.md",
"language_code": "ur"
},
"lessons/4-ComputerVision/07-ConvNets/README.md": {
"original_hash": "a560d5b845962cf33dc102266e409568",
"translation_date": "2025-09-23T06:41:11+00:00",
"source_file": "lessons/4-ComputerVision/07-ConvNets/README.md",
"language_code": "ur"
},
"lessons/4-ComputerVision/07-ConvNets/lab/README.md": {
"original_hash": "b70fcf7fcee862990f848c679090943f",
"translation_date": "2025-10-03T14:52:35+00:00",
"source_file": "lessons/4-ComputerVision/07-ConvNets/lab/README.md",
"language_code": "ur"
},
"lessons/4-ComputerVision/08-TransferLearning/README.md": {
"original_hash": "178c0b5ee5395733eb18aec51e71a0a9",
"translation_date": "2025-09-23T06:41:50+00:00",
"source_file": "lessons/4-ComputerVision/08-TransferLearning/README.md",
"language_code": "ur"
},
"lessons/4-ComputerVision/08-TransferLearning/TrainingTricks.md": {
"original_hash": "ae074cd940fc2f4dc24fc07b66ccbd99",
"translation_date": "2025-08-26T09:46:44+00:00",
"source_file": "lessons/4-ComputerVision/08-TransferLearning/TrainingTricks.md",
"language_code": "ur"
},
"lessons/4-ComputerVision/08-TransferLearning/lab/README.md": {
"original_hash": "7765935c35fcee69b9fe2d0cfd6963e2",
"translation_date": "2025-08-26T09:52:38+00:00",
"source_file": "lessons/4-ComputerVision/08-TransferLearning/lab/README.md",
"language_code": "ur"
},
"lessons/4-ComputerVision/09-Autoencoders/README.md": {
"original_hash": "1b8d9e1b3a6f1daa864b1ff3dfc3076d",
"translation_date": "2025-09-23T06:43:22+00:00",
"source_file": "lessons/4-ComputerVision/09-Autoencoders/README.md",
"language_code": "ur"
},
"lessons/4-ComputerVision/10-GANs/README.md": {
"original_hash": "0ff65b4da07b23697235de2beb2a3c25",
"translation_date": "2025-09-23T06:44:09+00:00",
"source_file": "lessons/4-ComputerVision/10-GANs/README.md",
"language_code": "ur"
},
"lessons/4-ComputerVision/11-ObjectDetection/README.md": {
"original_hash": "d76a7eda28de5210c8b1ba50a6216c69",
"translation_date": "2025-09-23T06:42:40+00:00",
"source_file": "lessons/4-ComputerVision/11-ObjectDetection/README.md",
"language_code": "ur"
},
"lessons/4-ComputerVision/11-ObjectDetection/lab/README.md": {
"original_hash": "ad568d55ae65c856fe929fc2b278510a",
"translation_date": "2025-08-26T09:24:35+00:00",
"source_file": "lessons/4-ComputerVision/11-ObjectDetection/lab/README.md",
"language_code": "ur"
},
"lessons/4-ComputerVision/12-Segmentation/README.md": {
"original_hash": "6568aaae7e0e4afed4b5d74b5b223700",
"translation_date": "2025-09-23T06:43:52+00:00",
"source_file": "lessons/4-ComputerVision/12-Segmentation/README.md",
"language_code": "ur"
},
"lessons/4-ComputerVision/12-Segmentation/lab/README.md": {
"original_hash": "365f0decfe0f47b460bbde8227c5009d",
"translation_date": "2025-08-26T09:12:01+00:00",
"source_file": "lessons/4-ComputerVision/12-Segmentation/lab/README.md",
"language_code": "ur"
},
"lessons/4-ComputerVision/README.md": {
"original_hash": "58a52f000089c1d8906a4daa4ab1169b",
"translation_date": "2025-08-26T09:02:26+00:00",
"source_file": "lessons/4-ComputerVision/README.md",
"language_code": "ur"
},
"lessons/5-NLP/13-TextRep/README.md": {
"original_hash": "dbd3f73e4139f030ecb2e20387d70fee",
"translation_date": "2025-09-23T06:50:38+00:00",
"source_file": "lessons/5-NLP/13-TextRep/README.md",
"language_code": "ur"
},
"lessons/5-NLP/13-TextRep/assignment.md": {
"original_hash": "cdc1f2e631f055f3473b36d18e4760b3",
"translation_date": "2025-08-26T08:28:26+00:00",
"source_file": "lessons/5-NLP/13-TextRep/assignment.md",
"language_code": "ur"
},
"lessons/5-NLP/14-Embeddings/README.md": {
"original_hash": "b708c9b85b833864c73c6281f1e6b96e",
"translation_date": "2025-09-23T06:50:12+00:00",
"source_file": "lessons/5-NLP/14-Embeddings/README.md",
"language_code": "ur"
},
"lessons/5-NLP/14-Embeddings/assignment.md": {
"original_hash": "bc690ecf68b38d311cc9e12f3144a28c",
"translation_date": "2025-08-26T08:17:38+00:00",
"source_file": "lessons/5-NLP/14-Embeddings/assignment.md",
"language_code": "ur"
},
"lessons/5-NLP/15-LanguageModeling/README.md": {
"original_hash": "7ba20f54a5bfcd6521018cdfb17c7c57",
"translation_date": "2025-09-23T06:48:22+00:00",
"source_file": "lessons/5-NLP/15-LanguageModeling/README.md",
"language_code": "ur"
},
"lessons/5-NLP/15-LanguageModeling/lab/README.md": {
"original_hash": "5130f01fdc5ebb83032b23d489027aac",
"translation_date": "2025-08-26T08:31:41+00:00",
"source_file": "lessons/5-NLP/15-LanguageModeling/lab/README.md",
"language_code": "ur"
},
"lessons/5-NLP/16-RNN/README.md": {
"original_hash": "e2273cc150380a5e191903cea858f021",
"translation_date": "2025-09-23T06:49:42+00:00",
"source_file": "lessons/5-NLP/16-RNN/README.md",
"language_code": "ur"
},
"lessons/5-NLP/16-RNN/assignment.md": {
"original_hash": "47f7d3c6a5373543e051e4d1140ce898",
"translation_date": "2025-08-26T08:12:43+00:00",
"source_file": "lessons/5-NLP/16-RNN/assignment.md",
"language_code": "ur"
},
"lessons/5-NLP/17-GenerativeNetworks/README.md": {
"original_hash": "51be6057374d01d70e07dd5ec88ebc0d",
"translation_date": "2025-09-23T06:48:00+00:00",
"source_file": "lessons/5-NLP/17-GenerativeNetworks/README.md",
"language_code": "ur"
},
"lessons/5-NLP/17-GenerativeNetworks/lab/README.md": {
"original_hash": "439e12796197a90e7623d4c9c057b9c2",
"translation_date": "2025-08-26T08:22:44+00:00",
"source_file": "lessons/5-NLP/17-GenerativeNetworks/lab/README.md",
"language_code": "ur"
},
"lessons/5-NLP/18-Transformers/README.md": {
"original_hash": "f335dfcb4a993920504c387973a36957",
"translation_date": "2025-09-23T06:48:34+00:00",
"source_file": "lessons/5-NLP/18-Transformers/README.md",
"language_code": "ur"
},
"lessons/5-NLP/18-Transformers/assignment.md": {
"original_hash": "177f3ea3995d725e6f9f5c66af16edcd",
"translation_date": "2025-08-26T08:40:35+00:00",
"source_file": "lessons/5-NLP/18-Transformers/assignment.md",
"language_code": "ur"
},
"lessons/5-NLP/19-NER/README.md": {
"original_hash": "6522312ff835796ca34136a9462fafb2",
"translation_date": "2025-09-23T06:49:24+00:00",
"source_file": "lessons/5-NLP/19-NER/README.md",
"language_code": "ur"
},
"lessons/5-NLP/19-NER/lab/README.md": {
"original_hash": "032bda5068f543d6c1fcb30c34231461",
"translation_date": "2025-08-26T08:49:51+00:00",
"source_file": "lessons/5-NLP/19-NER/lab/README.md",
"language_code": "ur"
},
"lessons/5-NLP/20-LangModels/README.md": {
"original_hash": "97836d30a6bec736f8e3b4411c572bc2",
"translation_date": "2025-09-23T06:49:06+00:00",
"source_file": "lessons/5-NLP/20-LangModels/README.md",
"language_code": "ur"
},
"lessons/5-NLP/README.md": {
"original_hash": "8ef02a9318257ea140ed3ed74442096d",
"translation_date": "2025-08-26T08:02:19+00:00",
"source_file": "lessons/5-NLP/README.md",
"language_code": "ur"
},
"lessons/6-Other/21-GeneticAlgorithms/README.md": {
"original_hash": "6bbd632dfe6c62e5f66bb51fd78c174a",
"translation_date": "2025-09-23T06:39:33+00:00",
"source_file": "lessons/6-Other/21-GeneticAlgorithms/README.md",
"language_code": "ur"
},
"lessons/6-Other/22-DeepRL/README.md": {
"original_hash": "04395657fc01648f8f70484d0e55ab67",
"translation_date": "2025-09-23T06:40:40+00:00",
"source_file": "lessons/6-Other/22-DeepRL/README.md",
"language_code": "ur"
},
"lessons/6-Other/22-DeepRL/lab/README.md": {
"original_hash": "7bd8dc72040e98e35e7225e34058cd4e",
"translation_date": "2025-08-26T10:16:32+00:00",
"source_file": "lessons/6-Other/22-DeepRL/lab/README.md",
"language_code": "ur"
},
"lessons/6-Other/23-MultiagentSystems/README.md": {
"original_hash": "38a1185ae3d54b180378bbd71ae3ef16",
"translation_date": "2025-09-23T06:39:52+00:00",
"source_file": "lessons/6-Other/23-MultiagentSystems/README.md",
"language_code": "ur"
},
"lessons/6-Other/23-MultiagentSystems/assignment.md": {
"original_hash": "cf654ca60c7f86c8dad28596fb42994b",
"translation_date": "2025-08-26T10:10:59+00:00",
"source_file": "lessons/6-Other/23-MultiagentSystems/assignment.md",
"language_code": "ur"
},
"lessons/7-Ethics/README.md": {
"original_hash": "437c988596e751072e41a5aad3fcc5d9",
"translation_date": "2025-08-26T07:58:12+00:00",
"source_file": "lessons/7-Ethics/README.md",
"language_code": "ur"
},
"lessons/README.md": {
"original_hash": "5fef1a0b22498d7188959e2a2cb08af7",
"translation_date": "2025-08-26T07:57:09+00:00",
"source_file": "lessons/README.md",
"language_code": "ur"
},
"lessons/X-Extras/X1-MultiModal/README.md": {
"original_hash": "9c592c26aca16ca085d268c732284187",
"translation_date": "2025-08-26T10:17:57+00:00",
"source_file": "lessons/X-Extras/X1-MultiModal/README.md",
"language_code": "ur"
},
"lessons/sketchnotes/LICENSE.md": {
"original_hash": "45ab63a2cd8f5faef6c9b150618837a4",
"translation_date": "2025-08-26T10:43:24+00:00",
"source_file": "lessons/sketchnotes/LICENSE.md",
"language_code": "ur"
},
"lessons/sketchnotes/README.md": {
"original_hash": "050b8bddebafba55b129414e6ab096ab",
"translation_date": "2025-08-26T10:40:26+00:00",
"source_file": "lessons/sketchnotes/README.md",
"language_code": "ur"
},
"troubleshoot.md": {
"original_hash": "8d9c5a4a7c7798d699672a22cb7fea86",
"translation_date": "2025-10-03T09:36:20+00:00",
"source_file": "troubleshoot.md",
"language_code": "ur"
}
}

View File

@ -0,0 +1,398 @@
{
"AGENTS.md": {
"original_hash": "6b11a37115944252ab3ed04e358d830d",
"translation_date": "2025-10-03T09:14:00+00:00",
"source_file": "AGENTS.md",
"language_code": "zh-CN"
},
"README.md": {
"original_hash": "1984fc89dd304a8a33ab5584691a99aa",
"translation_date": "2026-01-30T01:15:14+00:00",
"source_file": "README.md",
"language_code": "zh-CN"
},
"SECURITY.md": {
"original_hash": "a583f49d359c7ebba61433e4dfcd05a9",
"translation_date": "2025-08-24T20:28:14+00:00",
"source_file": "SECURITY.md",
"language_code": "zh-CN"
},
"etc/CODE_OF_CONDUCT.md": {
"original_hash": "c06b12caf3c901eb3156e3dd5b0aea56",
"translation_date": "2025-08-24T20:42:43+00:00",
"source_file": "etc/CODE_OF_CONDUCT.md",
"language_code": "zh-CN"
},
"etc/CONTRIBUTING.md": {
"original_hash": "847a587aa1b83f4d00858183ff3ed18a",
"translation_date": "2025-08-24T20:42:55+00:00",
"source_file": "etc/CONTRIBUTING.md",
"language_code": "zh-CN"
},
"etc/Mindmap.md": {
"original_hash": "f2f88dbd2debd38e26149b27b1fd272d",
"translation_date": "2025-08-24T20:43:02+00:00",
"source_file": "etc/Mindmap.md",
"language_code": "zh-CN"
},
"etc/SUPPORT.md": {
"original_hash": "fdfc08baee91e402938a2b1f94fe0949",
"translation_date": "2025-08-24T20:42:38+00:00",
"source_file": "etc/SUPPORT.md",
"language_code": "zh-CN"
},
"etc/TRANSLATIONS.md": {
"original_hash": "62b3e3ad5182edb905eec649a87eeeb4",
"translation_date": "2025-08-24T20:42:48+00:00",
"source_file": "etc/TRANSLATIONS.md",
"language_code": "zh-CN"
},
"etc/quiz-app/README.md": {
"original_hash": "d699cf8509f74baa5b0b838de5cf0662",
"translation_date": "2025-08-24T20:43:21+00:00",
"source_file": "etc/quiz-app/README.md",
"language_code": "zh-CN"
},
"examples/README.md": {
"original_hash": "0d1babfdcbeb46525f2db3fbaaa54cd7",
"translation_date": "2025-10-03T11:27:26+00:00",
"source_file": "examples/README.md",
"language_code": "zh-CN"
},
"lessons/0-course-setup/for-teachers.md": {
"original_hash": "a094ef9927883de1cfcee51dbd143381",
"translation_date": "2025-08-24T20:42:17+00:00",
"source_file": "lessons/0-course-setup/for-teachers.md",
"language_code": "zh-CN"
},
"lessons/0-course-setup/how-to-run.md": {
"original_hash": "a4717bd9103b9f6cd84d534b83534689",
"translation_date": "2026-01-15T11:52:39+00:00",
"source_file": "lessons/0-course-setup/how-to-run.md",
"language_code": "zh-CN"
},
"lessons/0-course-setup/setup.md": {
"original_hash": "7b4e5b8956915870d0a0ed3cc5890042",
"translation_date": "2025-12-12T19:18:18+00:00",
"source_file": "lessons/0-course-setup/setup.md",
"language_code": "zh-CN"
},
"lessons/1-Intro/README.md": {
"original_hash": "f57e8aa46141fd220b16ffed8f11aec7",
"translation_date": "2025-11-18T20:46:35+00:00",
"source_file": "lessons/1-Intro/README.md",
"language_code": "zh-CN"
},
"lessons/1-Intro/assignment.md": {
"original_hash": "a334df77a82aaaf2a29c77065d3e481e",
"translation_date": "2025-11-18T20:47:44+00:00",
"source_file": "lessons/1-Intro/assignment.md",
"language_code": "zh-CN"
},
"lessons/2-Symbolic/README.md": {
"original_hash": "f9f06b266b8b2bfc6b8792ff2bb1bea4",
"translation_date": "2026-01-15T11:53:39+00:00",
"source_file": "lessons/2-Symbolic/README.md",
"language_code": "zh-CN"
},
"lessons/2-Symbolic/assignment.md": {
"original_hash": "a057a8604f3976c3e309884453f1fad0",
"translation_date": "2025-08-24T20:41:56+00:00",
"source_file": "lessons/2-Symbolic/assignment.md",
"language_code": "zh-CN"
},
"lessons/3-NeuralNetworks/03-Perceptron/README.md": {
"original_hash": "c34cbba802058b6fa267e1a294d4e510",
"translation_date": "2025-09-23T12:42:19+00:00",
"source_file": "lessons/3-NeuralNetworks/03-Perceptron/README.md",
"language_code": "zh-CN"
},
"lessons/3-NeuralNetworks/03-Perceptron/lab/README.md": {
"original_hash": "ba5d1eb353d20d3e7181066b3c424b99",
"translation_date": "2025-08-31T09:19:26+00:00",
"source_file": "lessons/3-NeuralNetworks/03-Perceptron/lab/README.md",
"language_code": "zh-CN"
},
"lessons/3-NeuralNetworks/04-OwnFramework/README.md": {
"original_hash": "789d6c3fb6fc7948a470b33078a5983a",
"translation_date": "2025-09-23T12:42:03+00:00",
"source_file": "lessons/3-NeuralNetworks/04-OwnFramework/README.md",
"language_code": "zh-CN"
},
"lessons/3-NeuralNetworks/04-OwnFramework/lab/README.md": {
"original_hash": "48fdd704d483e19bc3d7464074c9fcbe",
"translation_date": "2025-08-24T20:38:07+00:00",
"source_file": "lessons/3-NeuralNetworks/04-OwnFramework/lab/README.md",
"language_code": "zh-CN"
},
"lessons/3-NeuralNetworks/05-Frameworks/README.md": {
"original_hash": "ddd216f558a255260a9374008002c971",
"translation_date": "2025-09-23T12:42:36+00:00",
"source_file": "lessons/3-NeuralNetworks/05-Frameworks/README.md",
"language_code": "zh-CN"
},
"lessons/3-NeuralNetworks/05-Frameworks/lab/README.md": {
"original_hash": "e452d897efb9a89700f41021834cf6e5",
"translation_date": "2025-08-24T20:38:40+00:00",
"source_file": "lessons/3-NeuralNetworks/05-Frameworks/lab/README.md",
"language_code": "zh-CN"
},
"lessons/3-NeuralNetworks/README.md": {
"original_hash": "f862a99d88088163df12270e2f2ad6c3",
"translation_date": "2025-10-03T12:42:58+00:00",
"source_file": "lessons/3-NeuralNetworks/README.md",
"language_code": "zh-CN"
},
"lessons/4-ComputerVision/06-IntroCV/README.md": {
"original_hash": "feeca98225cb420afc89415f24f63d92",
"translation_date": "2025-09-23T12:38:41+00:00",
"source_file": "lessons/4-ComputerVision/06-IntroCV/README.md",
"language_code": "zh-CN"
},
"lessons/4-ComputerVision/06-IntroCV/lab/README.md": {
"original_hash": "3d53d6409f80970f7281a45dee35328a",
"translation_date": "2025-08-24T20:34:57+00:00",
"source_file": "lessons/4-ComputerVision/06-IntroCV/lab/README.md",
"language_code": "zh-CN"
},
"lessons/4-ComputerVision/07-ConvNets/CNN_Architectures.md": {
"original_hash": "53faab85adfcebd8c10bcd71dc2fa557",
"translation_date": "2025-09-23T12:38:08+00:00",
"source_file": "lessons/4-ComputerVision/07-ConvNets/CNN_Architectures.md",
"language_code": "zh-CN"
},
"lessons/4-ComputerVision/07-ConvNets/README.md": {
"original_hash": "a560d5b845962cf33dc102266e409568",
"translation_date": "2025-09-23T12:37:52+00:00",
"source_file": "lessons/4-ComputerVision/07-ConvNets/README.md",
"language_code": "zh-CN"
},
"lessons/4-ComputerVision/07-ConvNets/lab/README.md": {
"original_hash": "b70fcf7fcee862990f848c679090943f",
"translation_date": "2025-10-03T14:52:43+00:00",
"source_file": "lessons/4-ComputerVision/07-ConvNets/lab/README.md",
"language_code": "zh-CN"
},
"lessons/4-ComputerVision/08-TransferLearning/README.md": {
"original_hash": "178c0b5ee5395733eb18aec51e71a0a9",
"translation_date": "2025-09-23T12:38:23+00:00",
"source_file": "lessons/4-ComputerVision/08-TransferLearning/README.md",
"language_code": "zh-CN"
},
"lessons/4-ComputerVision/08-TransferLearning/TrainingTricks.md": {
"original_hash": "ae074cd940fc2f4dc24fc07b66ccbd99",
"translation_date": "2025-08-24T20:35:26+00:00",
"source_file": "lessons/4-ComputerVision/08-TransferLearning/TrainingTricks.md",
"language_code": "zh-CN"
},
"lessons/4-ComputerVision/08-TransferLearning/lab/README.md": {
"original_hash": "7765935c35fcee69b9fe2d0cfd6963e2",
"translation_date": "2025-08-24T20:35:55+00:00",
"source_file": "lessons/4-ComputerVision/08-TransferLearning/lab/README.md",
"language_code": "zh-CN"
},
"lessons/4-ComputerVision/09-Autoencoders/README.md": {
"original_hash": "1b8d9e1b3a6f1daa864b1ff3dfc3076d",
"translation_date": "2025-09-23T12:39:34+00:00",
"source_file": "lessons/4-ComputerVision/09-Autoencoders/README.md",
"language_code": "zh-CN"
},
"lessons/4-ComputerVision/10-GANs/README.md": {
"original_hash": "0ff65b4da07b23697235de2beb2a3c25",
"translation_date": "2025-09-23T12:40:07+00:00",
"source_file": "lessons/4-ComputerVision/10-GANs/README.md",
"language_code": "zh-CN"
},
"lessons/4-ComputerVision/11-ObjectDetection/README.md": {
"original_hash": "d76a7eda28de5210c8b1ba50a6216c69",
"translation_date": "2025-09-23T12:39:04+00:00",
"source_file": "lessons/4-ComputerVision/11-ObjectDetection/README.md",
"language_code": "zh-CN"
},
"lessons/4-ComputerVision/11-ObjectDetection/lab/README.md": {
"original_hash": "ad568d55ae65c856fe929fc2b278510a",
"translation_date": "2025-08-24T20:33:45+00:00",
"source_file": "lessons/4-ComputerVision/11-ObjectDetection/lab/README.md",
"language_code": "zh-CN"
},
"lessons/4-ComputerVision/12-Segmentation/README.md": {
"original_hash": "6568aaae7e0e4afed4b5d74b5b223700",
"translation_date": "2025-09-23T12:39:53+00:00",
"source_file": "lessons/4-ComputerVision/12-Segmentation/README.md",
"language_code": "zh-CN"
},
"lessons/4-ComputerVision/12-Segmentation/lab/README.md": {
"original_hash": "365f0decfe0f47b460bbde8227c5009d",
"translation_date": "2025-08-24T20:32:52+00:00",
"source_file": "lessons/4-ComputerVision/12-Segmentation/lab/README.md",
"language_code": "zh-CN"
},
"lessons/4-ComputerVision/README.md": {
"original_hash": "58a52f000089c1d8906a4daa4ab1169b",
"translation_date": "2025-08-24T20:32:06+00:00",
"source_file": "lessons/4-ComputerVision/README.md",
"language_code": "zh-CN"
},
"lessons/5-NLP/13-TextRep/README.md": {
"original_hash": "dbd3f73e4139f030ecb2e20387d70fee",
"translation_date": "2025-09-23T12:45:00+00:00",
"source_file": "lessons/5-NLP/13-TextRep/README.md",
"language_code": "zh-CN"
},
"lessons/5-NLP/13-TextRep/assignment.md": {
"original_hash": "cdc1f2e631f055f3473b36d18e4760b3",
"translation_date": "2025-08-24T20:30:28+00:00",
"source_file": "lessons/5-NLP/13-TextRep/assignment.md",
"language_code": "zh-CN"
},
"lessons/5-NLP/14-Embeddings/README.md": {
"original_hash": "b708c9b85b833864c73c6281f1e6b96e",
"translation_date": "2025-09-23T12:44:44+00:00",
"source_file": "lessons/5-NLP/14-Embeddings/README.md",
"language_code": "zh-CN"
},
"lessons/5-NLP/14-Embeddings/assignment.md": {
"original_hash": "bc690ecf68b38d311cc9e12f3144a28c",
"translation_date": "2025-08-24T20:29:39+00:00",
"source_file": "lessons/5-NLP/14-Embeddings/assignment.md",
"language_code": "zh-CN"
},
"lessons/5-NLP/15-LanguageModeling/README.md": {
"original_hash": "7ba20f54a5bfcd6521018cdfb17c7c57",
"translation_date": "2025-09-23T12:43:17+00:00",
"source_file": "lessons/5-NLP/15-LanguageModeling/README.md",
"language_code": "zh-CN"
},
"lessons/5-NLP/15-LanguageModeling/lab/README.md": {
"original_hash": "5130f01fdc5ebb83032b23d489027aac",
"translation_date": "2025-08-24T20:30:42+00:00",
"source_file": "lessons/5-NLP/15-LanguageModeling/lab/README.md",
"language_code": "zh-CN"
},
"lessons/5-NLP/16-RNN/README.md": {
"original_hash": "e2273cc150380a5e191903cea858f021",
"translation_date": "2025-09-23T12:44:19+00:00",
"source_file": "lessons/5-NLP/16-RNN/README.md",
"language_code": "zh-CN"
},
"lessons/5-NLP/16-RNN/assignment.md": {
"original_hash": "47f7d3c6a5373543e051e4d1140ce898",
"translation_date": "2025-08-24T20:29:17+00:00",
"source_file": "lessons/5-NLP/16-RNN/assignment.md",
"language_code": "zh-CN"
},
"lessons/5-NLP/17-GenerativeNetworks/README.md": {
"original_hash": "51be6057374d01d70e07dd5ec88ebc0d",
"translation_date": "2025-09-23T12:42:56+00:00",
"source_file": "lessons/5-NLP/17-GenerativeNetworks/README.md",
"language_code": "zh-CN"
},
"lessons/5-NLP/17-GenerativeNetworks/lab/README.md": {
"original_hash": "439e12796197a90e7623d4c9c057b9c2",
"translation_date": "2025-08-24T20:30:03+00:00",
"source_file": "lessons/5-NLP/17-GenerativeNetworks/lab/README.md",
"language_code": "zh-CN"
},
"lessons/5-NLP/18-Transformers/README.md": {
"original_hash": "f335dfcb4a993920504c387973a36957",
"translation_date": "2025-09-23T12:43:26+00:00",
"source_file": "lessons/5-NLP/18-Transformers/README.md",
"language_code": "zh-CN"
},
"lessons/5-NLP/18-Transformers/assignment.md": {
"original_hash": "177f3ea3995d725e6f9f5c66af16edcd",
"translation_date": "2025-08-24T20:30:49+00:00",
"source_file": "lessons/5-NLP/18-Transformers/assignment.md",
"language_code": "zh-CN"
},
"lessons/5-NLP/19-NER/README.md": {
"original_hash": "6522312ff835796ca34136a9462fafb2",
"translation_date": "2025-09-23T12:44:06+00:00",
"source_file": "lessons/5-NLP/19-NER/README.md",
"language_code": "zh-CN"
},
"lessons/5-NLP/19-NER/lab/README.md": {
"original_hash": "032bda5068f543d6c1fcb30c34231461",
"translation_date": "2025-08-24T20:31:08+00:00",
"source_file": "lessons/5-NLP/19-NER/lab/README.md",
"language_code": "zh-CN"
},
"lessons/5-NLP/20-LangModels/README.md": {
"original_hash": "97836d30a6bec736f8e3b4411c572bc2",
"translation_date": "2025-09-23T12:43:49+00:00",
"source_file": "lessons/5-NLP/20-LangModels/README.md",
"language_code": "zh-CN"
},
"lessons/5-NLP/README.md": {
"original_hash": "8ef02a9318257ea140ed3ed74442096d",
"translation_date": "2025-08-24T20:28:41+00:00",
"source_file": "lessons/5-NLP/README.md",
"language_code": "zh-CN"
},
"lessons/6-Other/21-GeneticAlgorithms/README.md": {
"original_hash": "6bbd632dfe6c62e5f66bb51fd78c174a",
"translation_date": "2025-09-23T12:36:39+00:00",
"source_file": "lessons/6-Other/21-GeneticAlgorithms/README.md",
"language_code": "zh-CN"
},
"lessons/6-Other/22-DeepRL/README.md": {
"original_hash": "04395657fc01648f8f70484d0e55ab67",
"translation_date": "2025-09-23T12:37:29+00:00",
"source_file": "lessons/6-Other/22-DeepRL/README.md",
"language_code": "zh-CN"
},
"lessons/6-Other/22-DeepRL/lab/README.md": {
"original_hash": "7bd8dc72040e98e35e7225e34058cd4e",
"translation_date": "2025-08-24T20:37:15+00:00",
"source_file": "lessons/6-Other/22-DeepRL/lab/README.md",
"language_code": "zh-CN"
},
"lessons/6-Other/23-MultiagentSystems/README.md": {
"original_hash": "38a1185ae3d54b180378bbd71ae3ef16",
"translation_date": "2025-09-23T12:36:52+00:00",
"source_file": "lessons/6-Other/23-MultiagentSystems/README.md",
"language_code": "zh-CN"
},
"lessons/6-Other/23-MultiagentSystems/assignment.md": {
"original_hash": "cf654ca60c7f86c8dad28596fb42994b",
"translation_date": "2025-08-24T20:36:51+00:00",
"source_file": "lessons/6-Other/23-MultiagentSystems/assignment.md",
"language_code": "zh-CN"
},
"lessons/7-Ethics/README.md": {
"original_hash": "437c988596e751072e41a5aad3fcc5d9",
"translation_date": "2025-08-24T20:28:29+00:00",
"source_file": "lessons/7-Ethics/README.md",
"language_code": "zh-CN"
},
"lessons/README.md": {
"original_hash": "5fef1a0b22498d7188959e2a2cb08af7",
"translation_date": "2025-08-24T20:28:25+00:00",
"source_file": "lessons/README.md",
"language_code": "zh-CN"
},
"lessons/X-Extras/X1-MultiModal/README.md": {
"original_hash": "9c592c26aca16ca085d268c732284187",
"translation_date": "2025-08-24T20:37:20+00:00",
"source_file": "lessons/X-Extras/X1-MultiModal/README.md",
"language_code": "zh-CN"
},
"lessons/sketchnotes/LICENSE.md": {
"original_hash": "45ab63a2cd8f5faef6c9b150618837a4",
"translation_date": "2025-08-24T20:39:57+00:00",
"source_file": "lessons/sketchnotes/LICENSE.md",
"language_code": "zh-CN"
},
"lessons/sketchnotes/README.md": {
"original_hash": "050b8bddebafba55b129414e6ab096ab",
"translation_date": "2025-08-24T20:39:11+00:00",
"source_file": "lessons/sketchnotes/README.md",
"language_code": "zh-CN"
},
"troubleshoot.md": {
"original_hash": "8d9c5a4a7c7798d699672a22cb7fea86",
"translation_date": "2025-10-03T09:36:41+00:00",
"source_file": "troubleshoot.md",
"language_code": "zh-CN"
}
}

View File

@ -0,0 +1,317 @@
# AGENTS.md
## 项目概述
AI for Beginners 是一个为期 12 周、共 24 节课的全面课程,涵盖人工智能基础知识。该教育资源库包括使用 Jupyter Notebooks 的实践课程、测验和动手实验。课程内容包括:
- 符号 AI知识表示与专家系统
- 使用 TensorFlow 和 PyTorch 的神经网络与深度学习
- 计算机视觉技术与架构
- 自然语言处理NLP包括 transformers 和 BERT
- 专题内容:遗传算法、强化学习、多智能体系统
- AI 伦理与负责任的 AI 原则
**关键技术:** Python 3、Jupyter Notebooks、TensorFlow、PyTorch、Keras、OpenCV、Vue.js用于测验应用
**架构:** 教育内容资源库,按主题区域组织的 Jupyter Notebooks辅以基于 Vue.js 的测验应用和广泛的多语言支持。
## 设置命令
### 主要开发环境Python/Jupyter
课程设计基于 Python 和 Jupyter Notebooks 运行。推荐使用 miniconda
```bash
# Clone the repository
git clone https://github.com/microsoft/ai-for-beginners
cd ai-for-beginners
# Create and activate conda environment
conda env create --name ai4beg --file environment.yml
conda activate ai4beg
# Start Jupyter Notebook
jupyter notebook
# OR
jupyter lab
```
### 替代方案:使用 devcontainer
```bash
# Open in VS Code and select "Reopen in Container" when prompted
# The devcontainer will automatically set up the environment
```
### 测验应用设置
测验应用是一个独立的 Vue.js 应用,位于 `etc/quiz-app/`
```bash
cd etc/quiz-app
npm install
npm run serve # Development server
npm run build # Production build
npm run lint # Lint and fix files
```
## 开发工作流
### 使用 Jupyter Notebooks
1. **本地开发:**
- 激活 conda 环境:`conda activate ai4beg`
- 启动 Jupyter`jupyter notebook` 或 `jupyter lab`
- 导航到课程文件夹并打开 `.ipynb` 文件
- 交互式运行单元格以跟随课程内容
2. **使用 VS Code 和 Python 扩展:**
- 在 VS Code 中打开资源库
- 安装 Python 扩展
- VS Code 会自动检测并使用 conda 环境
- 直接在 VS Code 中打开 `.ipynb` 文件
3. **云端开发:**
- **GitHub Codespaces** 点击“Code” → “Codespaces” → “Create codespace on main”
- **Binder** 使用 README 中的 Binder 徽章在浏览器中启动
- 注意Binder 资源有限且有部分网络访问限制
### 高级课程的 GPU 支持
后续课程显著受益于 GPU 加速:
- **Azure Data Science VM** 使用支持 GPU 的 NC 系列虚拟机
- **Azure Machine Learning** 使用带 GPU 计算的 notebook 功能
- **Google Colab** 单独上传 notebooks提供免费 GPU 支持)
### 测验应用开发
```bash
cd etc/quiz-app
npm run serve # Hot-reload development server at http://localhost:8080
```
## 测试说明
这是一个以学习内容为重点的教育资源库,而非软件测试,因此没有传统的测试套件。
### 验证方法:
1. **Jupyter Notebooks** 按顺序执行单元格以验证代码示例是否正常运行
2. **测验应用测试:** 通过开发服务器进行手动测试
3. **翻译验证:** 检查 `translations/` 文件夹中的翻译内容
4. **测验应用代码检查:**`etc/quiz-app/` 中运行 `npm run lint`
### 运行代码示例:
```bash
# Activate environment first
conda activate ai4beg
# Run Python scripts directly
python lessons/4-ComputerVision/07-ConvNets/pytorchcv.py
# Or execute notebooks
jupyter notebook lessons/3-NeuralNetworks/03-Perceptron/Perceptron.ipynb
```
## 代码风格
### Python 代码风格
- 遵循教育代码的标准 Python 约定
- 代码清晰易读,优先考虑学习而非优化
- 注释解释关键概念
- 适配 Jupyter Notebook尽量使单元格自包含
- 对课程内容没有严格的代码检查要求
### JavaScript/Vue.js测验应用
- ESLint 配置位于 `etc/quiz-app/package.json`
- 运行 `npm run lint` 检查并自动修复问题
- 遵循 Vue 2.x 约定
- 基于组件的架构
### 文件组织
```
lessons/
├── 0-course-setup/ # Setup instructions
├── 1-Intro/ # Introduction to AI
├── 2-Symbolic/ # Symbolic AI
├── 3-NeuralNetworks/ # Neural Networks basics
├── 4-ComputerVision/ # Computer Vision
├── 5-NLP/ # Natural Language Processing
├── 6-Other/ # Other AI techniques
├── 7-Ethics/ # AI Ethics
└── X-Extras/ # Additional content
etc/
├── quiz-app/ # Vue.js quiz application
└── quiz-src/ # Quiz source files
translations/ # Multi-language translations
```
## 构建与部署
### Jupyter 内容
无需构建过程 - Jupyter Notebooks 可直接执行。
### 测验应用
```bash
cd etc/quiz-app
# Development
npm run serve
# Production build
npm run build # Outputs to etc/quiz-app/dist/
# Deploy to Azure Static Web Apps
# Azure automatically creates GitHub Actions workflow
# See etc/quiz-app/README.md for detailed deployment instructions
```
### 文档站点
该资源库使用 Docsify 进行文档管理:
- `index.html` 作为入口点
- 无需构建 - 直接通过 GitHub Pages 提供服务
- 访问地址https://microsoft.github.io/AI-For-Beginners/
## 贡献指南
### 拉取请求流程
1. **标题格式:** 清晰、描述性的标题,说明更改内容
2. **CLA 要求:** 必须签署 Microsoft CLA自动检查
3. **内容指南:**
- 保持教育重点和面向初学者的风格
- 测试 notebooks 中的所有代码示例
- 确保 notebooks 能从头到尾运行
- 如果修改英文内容,请更新翻译
4. **测验应用更改:** 提交前运行 `npm run lint`
### 翻译贡献
- 翻译通过 GitHub Actions 使用 co-op-translator 自动完成
- 手动翻译存放在 `translations/<language-code>/`
- 测验翻译存放在 `etc/quiz-app/src/assets/translations/`
- 支持语言40+ 种语言(完整列表见 README
### 活跃贡献领域
请参阅 `etc/CONTRIBUTING.md` 了解当前需求:
- 深度强化学习部分
- 目标检测改进
- 命名实体识别示例
- 自定义嵌入训练样本
## 环境配置
### 所需依赖项
```bash
# Core Python packages (from requirements.txt)
tensorflow==2.17.0
torch (via conda)
torchvision (via conda)
keras==3.5.0
opencv (via conda)
scikit-learn
numpy==1.26
pandas==2.2.2
matplotlib==3.9
jupyter
```
### 环境变量
基本使用无需特殊环境变量。
对于 Azure 部署(测验应用):
- `AZURE_STATIC_WEB_APPS_API_TOKEN`(由 Azure 自动设置)
## 调试与故障排除
### 常见问题
**问题:** Conda 环境创建失败
- **解决方案:** 先更新 conda`conda update conda -y`
- 确保磁盘空间充足(建议 50GB
**问题:** 找不到 Jupyter 内核
- **解决方案:**
```bash
conda activate ai4beg
python -m ipykernel install --user --name ai4beg
```
**问题:** Notebooks 中未检测到 GPU
- **解决方案:**
- 验证 CUDA 安装:`nvidia-smi`
- 检查 PyTorch GPU`python -c "import torch; print(torch.cuda.is_available())"`
- 检查 TensorFlow GPU`python -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"`
**问题:** 测验应用无法启动
- **解决方案:**
```bash
cd etc/quiz-app
rm -rf node_modules package-lock.json
npm install
npm run serve
```
**问题:** Binder 超时或阻止下载
- **解决方案:** 使用 GitHub Codespaces 或本地设置以获得更好的资源访问
### 内存问题
某些课程需要大量内存(建议 8GB+
- 对于资源密集型课程,使用云端虚拟机
- 训练模型时关闭其他应用
- 如果内存不足,可在 notebooks 中减少批量大小
## 附加说明
### 课程讲师须知
- 请参阅 `lessons/0-course-setup/for-teachers.md` 获取教学指导
- 课程内容是自包含的,可按顺序教学或单独选择
- 预计时间:每周 2 节课,共 12 周
### 云资源
- **Azure for Students** 学生可获得免费额度
- **Microsoft Learn** 提供补充学习路径
- **Binder** 免费但资源有限,且有部分网络限制
### 代码执行选项
1. **本地(推荐):** 完全控制,最佳性能,支持 GPU
2. **GitHub Codespaces** 基于云的 VS Code快速访问
3. **Binder** 基于浏览器的 Jupyter免费但有限
4. **Azure ML Notebooks** 企业级选项,支持 GPU
5. **Google Colab** 单独上传 notebooks提供免费 GPU 层
### 使用 Notebooks
- Notebooks 设计为逐个单元格运行以便学习
- 许多 notebooks 在首次运行时会下载数据集(可能需要一些时间)
- 某些模型训练需要 GPU 才能达到合理的时间
- 尽可能使用预训练模型以减少计算需求
### 性能注意事项
- 后期的计算机视觉课程CNNs、GANs受益于 GPU
- NLP transformer 课程可能需要大量内存
- 从头训练是教育性的,但耗时较长
- 迁移学习示例可最大限度减少训练时间
---
**免责声明**
本文档使用AI翻译服务 [Co-op Translator](https://github.com/Azure/co-op-translator) 进行翻译。尽管我们努力确保翻译的准确性,但请注意,自动翻译可能包含错误或不准确之处。原始语言的文档应被视为权威来源。对于关键信息,建议使用专业人工翻译。我们不对因使用此翻译而产生的任何误解或误读承担责任。

View File

@ -0,0 +1,224 @@
[![GitHub license](https://img.shields.io/github/license/microsoft/AI-For-Beginners.svg)](https://github.com/microsoft/AI-For-Beginners/blob/main/LICENSE)
[![GitHub contributors](https://img.shields.io/github/contributors/microsoft/AI-For-Beginners.svg)](https://GitHub.com/microsoft/AI-For-Beginners/graphs/contributors/)
[![GitHub issues](https://img.shields.io/github/issues/microsoft/AI-For-Beginners.svg)](https://GitHub.com/microsoft/AI-For-Beginners/issues/)
[![GitHub pull-requests](https://img.shields.io/github/issues-pr/microsoft/AI-For-Beginners.svg)](https://GitHub.com/microsoft/AI-For-Beginners/pulls/)
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)
[![GitHub watchers](https://img.shields.io/github/watchers/microsoft/AI-For-Beginners.svg?style=social&label=Watch)](https://GitHub.com/microsoft/AI-For-Beginners/watchers/)
[![GitHub forks](https://img.shields.io/github/forks/microsoft/AI-For-Beginners.svg?style=social&label=Fork)](https://GitHub.com/microsoft/AI-For-Beginners/network/)
[![GitHub stars](https://img.shields.io/github/stars/microsoft/AI-For-Beginners.svg?style=social&label=Star)](https://GitHub.com/microsoft/AI-For-Beginners/stargazers/)
[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/microsoft/ai-for-beginners/HEAD)
[![Gitter](https://badges.gitter.im/Microsoft/ai-for-beginners.svg)](https://gitter.im/Microsoft/ai-for-beginners?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG)
# 人工智能初学者课程
|![Sketchnote by @girlie_mac https://twitter.com/girlie_mac](../../translated_images/zh-CN/ai-overview.0857791951d19500.webp)|
|:---:|
| 人工智能初学者 - _草图笔记由 [@girlie_mac](https://twitter.com/girlie_mac) 提供_ |
通过我们的为期12周、共24课的课程探索**人工智能**AI的世界课程包含实用的课程、测验和实验室。课程面向初学者涵盖了TensorFlow和PyTorch等工具以及人工智能伦理。
### 🌐 多语言支持
#### 通过 GitHub Actions 支持(自动且始终保持最新)
<!-- CO-OP TRANSLATOR LANGUAGES TABLE START -->
[阿拉伯语](../ar/README.md) | [孟加拉语](../bn/README.md) | [保加利亚语](../bg/README.md) | [缅甸语](../my/README.md) | [中文(简体)](./README.md) | [中文(繁体,香港)](../zh-HK/README.md) | [中文(繁体,澳门)](../zh-MO/README.md) | [中文(繁体,台湾)](../zh-TW/README.md) | [克罗地亚语](../hr/README.md) | [捷克语](../cs/README.md) | [丹麦语](../da/README.md) | [荷兰语](../nl/README.md) | [爱沙尼亚语](../et/README.md) | [芬兰语](../fi/README.md) | [法语](../fr/README.md) | [德语](../de/README.md) | [希腊语](../el/README.md) | [希伯来语](../he/README.md) | [印地语](../hi/README.md) | [匈牙利语](../hu/README.md) | [印度尼西亚语](../id/README.md) | [意大利语](../it/README.md) | [日语](../ja/README.md) | [卡纳达语](../kn/README.md) | [韩语](../ko/README.md) | [立陶宛语](../lt/README.md) | [马来语](../ms/README.md) | [马拉雅拉姆语](../ml/README.md) | [马拉地语](../mr/README.md) | [尼泊尔语](../ne/README.md) | [尼日利亚皮钦语](../pcm/README.md) | [挪威语](../no/README.md) | [波斯语(法尔西语)](../fa/README.md) | [波兰语](../pl/README.md) | [巴西葡萄牙语](../pt-BR/README.md) | [葡萄牙语(葡萄牙)](../pt-PT/README.md) | [旁遮普语(古鲁穆奇)](../pa/README.md) | [罗马尼亚语](../ro/README.md) | [俄语](../ru/README.md) | [塞尔维亚语(西里尔字母)](../sr/README.md) | [斯洛伐克语](../sk/README.md) | [斯洛文尼亚语](../sl/README.md) | [西班牙语](../es/README.md) | [斯瓦希里语](../sw/README.md) | [瑞典语](../sv/README.md) | [塔加洛语(菲律宾语)](../tl/README.md) | [泰米尔语](../ta/README.md) | [泰卢固语](../te/README.md) | [泰语](../th/README.md) | [土耳其语](../tr/README.md) | [乌克兰语](../uk/README.md) | [乌尔都语](../ur/README.md) | [越南语](../vi/README.md)
> **更喜欢本地克隆?**
> 本仓库包含超过50种语言的翻译这大大增加了下载大小。若想不带翻译进行克隆请使用稀疏检出
> ```bash
> git clone --filter=blob:none --sparse https://github.com/microsoft/AI-For-Beginners.git
> cd AI-For-Beginners
> git sparse-checkout set --no-cone '/*' '!translations' '!translated_images'
> ```
> 这将为您提供完成课程所需的所有内容,且下载速度更快。
<!-- CO-OP TRANSLATOR LANGUAGES TABLE END -->
**如果您希望支持其他翻译语言,请参阅[这里](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)**
## 加入社区
[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG)
## 您将学到的内容
**[课程思维导图](http://soshnikov.com/courses/ai-for-beginners/mindmap.html)**
在本课程中,您将学习:
* 人工智能的不同方法,包括带有**知识表示**和推理的“传统”符号方法([GOFAI](https://en.wikipedia.org/wiki/Symbolic_artificial_intelligence))。
* 位于现代人工智能核心的**神经网络**和**深度学习**。我们将使用两个最流行的框架——[TensorFlow](http://Tensorflow.org)和[PyTorch](http://pytorch.org)中的代码,来说明这些重要主题背后的概念。
* 处理图像和文本的**神经架构**。我们将涵盖近期模型,但可能对最新前沿应用涉及较少。
* 较少流行的AI方法如**遗传算法**和**多智能体系统**。
本课程不涵盖的内容:
> [在我们的 Microsoft Learn 资源集中找到本课程的所有额外资源](https://learn.microsoft.com/en-us/collections/7w28iy2xrqzdj0?WT.mc_id=academic-77998-bethanycheum)
* **企业中的 AI** 业务案例。您可以考虑参加 Microsoft Learn 上的[面向业务用户的 AI 入门](https://docs.microsoft.com/learn/paths/introduction-ai-for-business-users/?WT.mc_id=academic-77998-bethanycheum)学习路径,或由[INSEAD](https://www.insead.edu/)合作开发的[AI 商业学院](https://www.microsoft.com/ai/ai-business-school/?WT.mc_id=academic-77998-bethanycheum)。
* 我们[机器学习初学者课程](http://github.com/Microsoft/ML-for-Beginners)中详细介绍的**经典机器学习**。
* 使用**[认知服务](https://azure.microsoft.com/services/cognitive-services/?WT.mc_id=academic-77998-bethanycheum)**构建的实用AI应用。为此我们建议您从 Microsoft Learn 上的[视觉](https://docs.microsoft.com/learn/paths/create-computer-vision-solutions-azure-cognitive-services/?WT.mc_id=academic-77998-bethanycheum)、[自然语言处理](https://docs.microsoft.com/learn/paths/explore-natural-language-processing/?WT.mc_id=academic-77998-bethanycheum)、**[基于 Azure OpenAI 服务的生成式 AI](https://learn.microsoft.com/en-us/training/paths/develop-ai-solutions-azure-openai/?WT.mc_id=academic-77998-bethanycheum)**等模块开始。
* 特定的机器学习**云框架**,如[Azure 机器学习](https://azure.microsoft.com/services/machine-learning/?WT.mc_id=academic-77998-bethanycheum)、[Microsoft Fabric](https://learn.microsoft.com/en-us/training/paths/get-started-fabric/?WT.mc_id=academic-77998-bethanycheum)或[Azure Databricks](https://docs.microsoft.com/learn/paths/data-engineer-azure-databricks?WT.mc_id=academic-77998-bethanycheum)。可考虑使用[使用 Azure 机器学习构建和运营机器学习解决方案](https://docs.microsoft.com/learn/paths/build-ai-solutions-with-azure-ml-service/?WT.mc_id=academic-77998-bethanycheum)和[使用 Azure Databricks 构建和运营机器学习解决方案](https://docs.microsoft.com/learn/paths/build-operate-machine-learning-solutions-azure-databricks/?WT.mc_id=academic-77998-bethanycheum)学习路径。
* **对话式 AI****聊天机器人**。微软提供了独立的[创建对话式 AI 解决方案](https://docs.microsoft.com/learn/paths/create-conversational-ai-solutions/?WT.mc_id=academic-77998-bethanycheum)学习路径,您也可以参考[这篇博客文章](https://soshnikov.com/azure/hello-bot-conversational-ai-on-microsoft-platform/)了解更多细节。
* 深度学习背后的**深层数学**。为此,我们推荐 Ian Goodfellow、Yoshua Bengio 和 Aaron Courville 的著作[深度学习](https://www.amazon.com/Deep-Learning-Adaptive-Computation-Machine/dp/0262035618),该书也可在线阅读:[https://www.deeplearningbook.org/](https://www.deeplearningbook.org/)。
对于 _云端 AI_ 主题的入门,可以考虑参加[Azure 人工智能入门](https://docs.microsoft.com/learn/paths/get-started-with-artificial-intelligence-on-azure/?WT.mc_id=academic-77998-bethanycheum)学习路径。
# 内容
| | 课程链接 | PyTorch/Keras/TensorFlow | 实验 |
| :-: | :------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------: | ------------------------------------------------------------------------------ |
| 0 | [课程设置](./lessons/0-course-setup/setup.md) | [设置您的开发环境](./lessons/0-course-setup/how-to-run.md) | |
| I | [**人工智能入门**](./lessons/1-Intro/README.md) | | |
| 01 | [人工智能简介及历史](./lessons/1-Intro/README.md) | - | - |
| II | **符号 AI** |
| 02 | [知识表示与专家系统](./lessons/2-Symbolic/README.md) | [专家系统](./lessons/2-Symbolic/Animals.ipynb) / [本体](./lessons/2-Symbolic/FamilyOntology.ipynb) /[概念图](./lessons/2-Symbolic/MSConceptGraph.ipynb) | |
| III | [**神经网络简介**](./lessons/3-NeuralNetworks/README.md) |||
| 03 | [感知器](./lessons/3-NeuralNetworks/03-Perceptron/README.md) | [笔记本](./lessons/3-NeuralNetworks/03-Perceptron/Perceptron.ipynb) | [实验](./lessons/3-NeuralNetworks/03-Perceptron/lab/README.md) |
| 04 | [多层感知器与创建我们自己的框架](./lessons/3-NeuralNetworks/04-OwnFramework/README.md) | [笔记本](./lessons/3-NeuralNetworks/04-OwnFramework/OwnFramework.ipynb) | [实验](./lessons/3-NeuralNetworks/04-OwnFramework/lab/README.md) |
| 05 | [框架简介 (PyTorch/TensorFlow) 与过拟合](./lessons/3-NeuralNetworks/05-Frameworks/README.md) | [PyTorch](./lessons/3-NeuralNetworks/05-Frameworks/IntroPyTorch.ipynb) / [Keras](./lessons/3-NeuralNetworks/05-Frameworks/IntroKeras.ipynb) / [TensorFlow](./lessons/3-NeuralNetworks/05-Frameworks/IntroKerasTF.ipynb) | [实验](./lessons/3-NeuralNetworks/05-Frameworks/lab/README.md) |
| IV | [**计算机视觉**](./lessons/4-ComputerVision/README.md) | [PyTorch](https://docs.microsoft.com/learn/modules/intro-computer-vision-pytorch/?WT.mc_id=academic-77998-cacaste) / [TensorFlow](https://docs.microsoft.com/learn/modules/intro-computer-vision-TensorFlow/?WT.mc_id=academic-77998-cacaste)| [微软 Azure 上的计算机视觉探索](https://learn.microsoft.com/en-us/collections/7w28iy2xrqzdj0?WT.mc_id=academic-77998-bethanycheum) |
| 06 | [计算机视觉简介. OpenCV](./lessons/4-ComputerVision/06-IntroCV/README.md) | [笔记本](./lessons/4-ComputerVision/06-IntroCV/OpenCV.ipynb) | [实验](./lessons/4-ComputerVision/06-IntroCV/lab/README.md) |
| 07 | [卷积神经网络](./lessons/4-ComputerVision/07-ConvNets/README.md) & [CNN 架构](./lessons/4-ComputerVision/07-ConvNets/CNN_Architectures.md) | [PyTorch](./lessons/4-ComputerVision/07-ConvNets/ConvNetsPyTorch.ipynb) /[TensorFlow](./lessons/4-ComputerVision/07-ConvNets/ConvNetsTF.ipynb) | [实验](./lessons/4-ComputerVision/07-ConvNets/lab/README.md) |
| 08 | [预训练网络与迁移学习](./lessons/4-ComputerVision/08-TransferLearning/README.md) 和 [训练技巧](./lessons/4-ComputerVision/08-TransferLearning/TrainingTricks.md) | [PyTorch](./lessons/4-ComputerVision/08-TransferLearning/TransferLearningPyTorch.ipynb) / [TensorFlow](./lessons/3-NeuralNetworks/05-Frameworks/IntroKerasTF.ipynb) | [实验](./lessons/4-ComputerVision/08-TransferLearning/lab/README.md) |
| 09 | [自编码器与变分自编码器](./lessons/4-ComputerVision/09-Autoencoders/README.md) | [PyTorch](./lessons/4-ComputerVision/09-Autoencoders/AutoEncodersPyTorch.ipynb) / [TensorFlow](./lessons/4-ComputerVision/09-Autoencoders/AutoencodersTF.ipynb) | |
| 10 | [生成对抗网络与艺术风格迁移](./lessons/4-ComputerVision/10-GANs/README.md) | [PyTorch](./lessons/4-ComputerVision/10-GANs/GANPyTorch.ipynb) / [TensorFlow](./lessons/4-ComputerVision/10-GANs/GANTF.ipynb) | |
| 11 | [目标检测](./lessons/4-ComputerVision/11-ObjectDetection/README.md) | [TensorFlow](./lessons/4-ComputerVision/11-ObjectDetection/ObjectDetection.ipynb) | [实验](./lessons/4-ComputerVision/11-ObjectDetection/lab/README.md) |
| 12 | [语义分割. U-Net](./lessons/4-ComputerVision/12-Segmentation/README.md) | [PyTorch](./lessons/4-ComputerVision/12-Segmentation/SemanticSegmentationPytorch.ipynb) / [TensorFlow](./lessons/4-ComputerVision/12-Segmentation/SemanticSegmentationTF.ipynb) | |
| V | [**自然语言处理**](./lessons/5-NLP/README.md) | [PyTorch](https://docs.microsoft.com/learn/modules/intro-natural-language-processing-pytorch/?WT.mc_id=academic-77998-cacaste) /[TensorFlow](https://docs.microsoft.com/learn/modules/intro-natural-language-processing-TensorFlow/?WT.mc_id=academic-77998-cacaste) | [微软 Azure 上的自然语言处理探索](https://learn.microsoft.com/en-us/collections/7w28iy2xrqzdj0?WT.mc_id=academic-77998-bethanycheum)|
| 13 | [文本表示. 词袋模型/TF-IDF](./lessons/5-NLP/13-TextRep/README.md) | [PyTorch](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/13-TextRep/TextRepresentationPyTorch.ipynb) / [TensorFlow](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/13-TextRep/TextRepresentationTF.ipynb) | |
| 14 | [语义词嵌入. Word2Vec 和 GloVe](./lessons/5-NLP/14-Embeddings/README.md) | [PyTorch](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/14-Embeddings/EmbeddingsPyTorch.ipynb) / [TensorFlow](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/14-Embeddings/EmbeddingsTF.ipynb) | |
| 15 | [语言模型. 训练你自己的嵌入](./lessons/5-NLP/15-LanguageModeling/README.md) | [PyTorch](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/15-LanguageModeling/CBoW-PyTorch.ipynb) / [TensorFlow](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/15-LanguageModeling/CBoW-TF.ipynb) | [实验](./lessons/5-NLP/15-LanguageModeling/lab/README.md) |
| 16 | [循环神经网络](./lessons/5-NLP/16-RNN/README.md) | [PyTorch](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/16-RNN/RNNPyTorch.ipynb) / [TensorFlow](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/16-RNN/RNNTF.ipynb) | |
| 17 | [生成式循环网络](./lessons/5-NLP/17-GenerativeNetworks/README.md) | [PyTorch](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/17-GenerativeNetworks/GenerativePyTorch.ipynb) / [TensorFlow](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/17-GenerativeNetworks/GenerativeTF.ipynb) | [实验](./lessons/5-NLP/17-GenerativeNetworks/lab/README.md) |
| 18 | [变压器模型. BERT](./lessons/5-NLP/18-Transformers/README.md) | [PyTorch](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/18-Transformers/TransformersPyTorch.ipynb) /[TensorFlow](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/18-Transformers/TransformersTF.ipynb) | |
| 19 | [命名实体识别](./lessons/5-NLP/19-NER/README.md) | [TensorFlow](https://microsoft.github.io/AI-For-Beginners/lessons/5-NLP/19-NER/NER-TF.ipynb) | [实验](./lessons/5-NLP/19-NER/lab/README.md) |
| 20 | [大型语言模型,提示编程与少样本任务](./lessons/5-NLP/20-LangModels/README.md) | [PyTorch](https://microsoft.github.io/AI-For-Beginners/lessons/5-NLP/20-LangModels/GPT-PyTorch.ipynb) | |
| VI | **其他 AI 技术** || |
| 21 | [遗传算法](./lessons/6-Other/21-GeneticAlgorithms/README.md) | [笔记本](./lessons/6-Other/21-GeneticAlgorithms/Genetic.ipynb) | |
| 22 | [深度强化学习](./lessons/6-Other/22-DeepRL/README.md) | [PyTorch](./lessons/6-Other/22-DeepRL/CartPole-RL-PyTorch.ipynb) /[TensorFlow](./lessons/6-Other/22-DeepRL/CartPole-RL-TF.ipynb) | [实验](./lessons/6-Other/22-DeepRL/lab/README.md) |
| 23 | [多智能体系统](./lessons/6-Other/23-MultiagentSystems/README.md) | | |
| VII | **AI 伦理** | | |
| 24 | [AI 伦理与负责任的 AI](./lessons/7-Ethics/README.md) | [Microsoft Learn负责任的 AI 原则](https://docs.microsoft.com/learn/paths/responsible-ai-business-principles/?WT.mc_id=academic-77998-cacaste) | |
| IX | **额外内容** | | |
| 25 | [多模态网络CLIP 和 VQGAN](./lessons/X-Extras/X1-MultiModal/README.md) | [笔记本](./lessons/X-Extras/X1-MultiModal/Clip.ipynb) | |
## 每节课包含
* 预习材料
* 可执行的 Jupyter 笔记本,通常针对特定框架(**PyTorch** 或 **TensorFlow**。可执行的笔记本还包含大量理论内容因此要理解主题至少需要阅读其中一个版本的笔记本PyTorch 或 TensorFlow
* 某些主题提供 **实验**,让你有机会尝试将所学知识应用到具体问题中。
* 部分章节包含指向相关主题的 [**微软学习**](https://learn.microsoft.com/en-us/collections/7w28iy2xrqzdj0?WT.mc_id=academic-77998-bethanycheum) 模块链接。
## 入门指南
### 🎯 AI 新手?从这里开始!
如果你刚接触 AI想要快速实践示例请查看我们的 [**初学者友好示例**](./examples/README.md)!包括:
- 🌟 **Hello AI 世界** - 你的第一个 AI 程序(模式识别)
- 🧠 **简单神经网络** - 从零构建神经网络
- 🖼️ **图像分类器** - 通过详细注释对图像进行分类
- 💬 **文本情感分析** - 分析文本的正面/负面情绪
这些示例旨在帮助你在深入完整课程之前理解 AI 概念。
### 📚 完整课程设置
- 我们创建了一个 [设置课程](./lessons/0-course-setup/setup.md) 来帮助你搭建开发环境。- 对于教师,我们也创建了一个[课程设置课程](./lessons/0-course-setup/for-teachers.md)
- 如何在 VSCode 或 Codespace 中[运行代码](./lessons/0-course-setup/how-to-run.md)
请按照以下步骤操作:
Fork 代码库点击本页右上角的“Fork”按钮。
克隆代码库:`git clone https://github.com/microsoft/AI-For-Beginners.git`
别忘了给该仓库点星 (🌟),方便以后查找。
## 认识其他学习者
加入我们的[官方 AI Discord 服务器](https://aka.ms/genai-discord?WT.mc_id=academic-105485-bethanycheum),结识并与其他参加本课程的学习者交流,获得支持。
如果你在构建过程中有产品反馈或疑问,请访问我们的[Azure AI Foundry 开发者论坛](https://aka.ms/foundry/forum)
## 测验
> **关于测验的说明**:所有测验均包含在 etc\quiz-app 下的 Quiz-app 文件夹中,或在[此处在线查看](https://ff-quizzes.netlify.app/)。它们链接于课程内,测验应用可以本地运行或部署到 Azure请遵循 `quiz-app` 文件夹中的说明。测验内容正逐步实现本地化。
## 需要帮助
你有建议或发现了拼写或代码错误吗?请提交问题或创建拉取请求。
## 特别感谢
* **✍️ 主要作者:** [Dmitry Soshnikov](http://soshnikov.com), 博士
* **🔥 编辑:** [Jen Looper](https://twitter.com/jenlooper), 博士
* **🎨 草图插画师:** [Tomomi Imura](https://twitter.com/girlie_mac)
* **✅ 测验创建者:** [Lateefah Bello](https://github.com/CinnamonXI), [MLSA](https://studentambassadors.microsoft.com/)
* **🙏 核心贡献者:** [Evgenii Pishchik](https://github.com/Pe4enIks)
## 其他课程
我们的团队还制作了其他课程!查看:
<!-- CO-OP TRANSLATOR OTHER COURSES START -->
### LangChain
[![LangChain4j for Beginners](https://img.shields.io/badge/LangChain4j%20for%20Beginners-22C55E?style=for-the-badge&&labelColor=E5E7EB&color=0553D6)](https://aka.ms/langchain4j-for-beginners)
[![LangChain.js for Beginners](https://img.shields.io/badge/LangChain.js%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=0553D6)](https://aka.ms/langchainjs-for-beginners?WT.mc_id=m365-94501-dwahlin)
---
### Azure / Edge / MCP / Agents
[![AZD for Beginners](https://img.shields.io/badge/AZD%20for%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst)
[![Edge AI for Beginners](https://img.shields.io/badge/Edge%20AI%20for%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst)
[![MCP for Beginners](https://img.shields.io/badge/MCP%20for%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst)
[![AI Agents for Beginners](https://img.shields.io/badge/AI%20Agents%20for%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst)
---
### 生成式 AI 系列
[![Generative AI for Beginners](https://img.shields.io/badge/Generative%20AI%20for%20Beginners-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst)
[![Generative AI (.NET)](https://img.shields.io/badge/Generative%20AI%20(.NET)-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst)
[![Generative AI (Java)](https://img.shields.io/badge/Generative%20AI%20(Java)-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst)
[![Generative AI (JavaScript)](https://img.shields.io/badge/Generative%20AI%20(JavaScript)-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst)
---
### 核心学习
[![ML for Beginners](https://img.shields.io/badge/ML%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst)
[![Data Science for Beginners](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst)
[![AI for Beginners](https://img.shields.io/badge/AI%20for%20Beginners-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst)
[![Cybersecurity for Beginners](https://img.shields.io/badge/Cybersecurity%20for%20Beginners-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung)
[![Web Dev for Beginners](https://img.shields.io/badge/Web%20Dev%20for%20Beginners-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst)
[![IoT for Beginners](https://img.shields.io/badge/IoT%20for%20Beginners-14B8A6?style=for-the-badge&labelColor=E5E7EB&color=14B8A6)](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst)
[![XR Development for Beginners](https://img.shields.io/badge/XR%20Development%20for%20Beginners-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst)
---
### Copilot 系列
[![Copilot for AI Paired Programming](https://img.shields.io/badge/Copilot%20for%20AI%20Paired%20Programming-FACC15?style=for-the-badge&labelColor=E5E7EB&color=FACC15)](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst)
[![Copilot for C#/.NET](https://img.shields.io/badge/Copilot%20for%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst)
[![Copilot Adventure](https://img.shields.io/badge/Copilot%20Adventure-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst)
<!-- CO-OP TRANSLATOR OTHER COURSES END -->
## 获取帮助
如果你遇到困难或有任何关于构建 AI 应用的问题,请加入 MCP 学习者和经验丰富开发者的讨论。这是一个支持性的社区,欢迎提问并自由分享知识。
[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG)
如果你在构建过程中有产品反馈或错误,请访问:
[![Microsoft Foundry Developer Forum](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum)
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**免责声明**
本文件由 AI 翻译服务 [Co-op Translator](https://github.com/Azure/co-op-translator) 进行翻译。虽然我们努力确保准确性,但请注意自动翻译可能存在错误或不准确之处。请以原始语言的原文档为权威来源。对于关键信息,建议采用专业人工翻译。因使用本翻译而产生的任何误解或误释,我们概不负责。
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

View File

@ -0,0 +1,40 @@
## 安全性
Microsoft 非常重视我们软件产品和服务的安全性,这包括通过我们的 GitHub 组织管理的所有源代码库,这些组织包括 [Microsoft](https://github.com/Microsoft)、[Azure](https://github.com/Azure)、[DotNet](https://github.com/dotnet)、[AspNet](https://github.com/aspnet)、[Xamarin](https://github.com/xamarin) 和 [我们的 GitHub 组织](https://opensource.microsoft.com/)。
如果您认为在任何 Microsoft 拥有的代码库中发现了符合 [Microsoft 对安全漏洞的定义](https://aka.ms/opensource/security/definition) 的安全漏洞,请按照以下描述向我们报告。
## 报告安全问题
**请不要通过公共 GitHub 问题报告安全漏洞。**
相反,请通过 Microsoft 安全响应中心 (MSRC) 报告,网址为 [https://msrc.microsoft.com/create-report](https://aka.ms/opensource/security/create-report)。
如果您更愿意在不登录的情况下提交,请发送电子邮件至 [secure@microsoft.com](mailto:secure@microsoft.com)。如果可能,请使用我们的 PGP 密钥加密您的消息;您可以从 [Microsoft 安全响应中心 PGP 密钥页面](https://aka.ms/opensource/security/pgpkey) 下载密钥。
您应该会在 24 小时内收到回复。如果由于某种原因未收到,请通过电子邮件跟进以确保我们收到了您的原始消息。更多信息请访问 [microsoft.com/msrc](https://aka.ms/opensource/security/msrc)。
请尽可能提供以下所需信息,以帮助我们更好地理解问题的性质和范围:
* 问题类型例如缓冲区溢出、SQL 注入、跨站脚本攻击等)
* 与问题表现相关的源文件的完整路径
* 受影响源代码的位置(标签/分支/提交或直接 URL
* 复现问题所需的任何特殊配置
* 复现问题的分步说明
* 概念验证或漏洞利用代码(如果可能)
* 问题的影响,包括攻击者可能如何利用该问题
这些信息将帮助我们更快地对您的报告进行分类和处理。
如果您是为漏洞赏金计划报告问题,更完整的报告可能会有助于获得更高的赏金奖励。有关我们当前计划的更多详细信息,请访问 [Microsoft 漏洞赏金计划](https://aka.ms/opensource/security/bounty) 页面。
## 首选语言
我们更倾向于使用英语进行所有交流。
## 政策
Microsoft 遵循 [协调漏洞披露](https://aka.ms/opensource/security/cvd) 原则。
**免责声明**
本文档使用AI翻译服务 [Co-op Translator](https://github.com/Azure/co-op-translator) 进行翻译。尽管我们努力确保翻译的准确性,但请注意,自动翻译可能包含错误或不准确之处。应以原文档的原始语言版本为权威来源。对于关键信息,建议使用专业人工翻译。我们对因使用此翻译而引起的任何误解或误读不承担责任。

View File

@ -0,0 +1,12 @@
# Microsoft 开源行为准则
本项目已采用 [Microsoft 开源行为准则](https://opensource.microsoft.com/codeofconduct/)。
资源:
- [Microsoft 开源行为准则](https://opensource.microsoft.com/codeofconduct/)
- [Microsoft 行为准则常见问题](https://opensource.microsoft.com/codeofconduct/faq/)
- 如有疑问或需帮助,请联系 [opencode@microsoft.com](mailto:opencode@microsoft.com)
**免责声明**
本文档使用AI翻译服务[Co-op Translator](https://github.com/Azure/co-op-translator)进行翻译。尽管我们努力确保翻译的准确性,但请注意,自动翻译可能包含错误或不准确之处。原始语言的文档应被视为权威来源。对于重要信息,建议使用专业人工翻译。我们对因使用此翻译而产生的任何误解或误读不承担责任。

View File

@ -0,0 +1,22 @@
# 贡献
本项目欢迎贡献和建议。大多数贡献需要您同意贡献者许可协议 (CLA),声明您拥有权利并实际授予我们使用您的贡献的权利。详情请访问 https://cla.microsoft.com。
当您提交拉取请求时CLA-bot 会自动判断您是否需要提供 CLA并适当地标记 PR例如标签、评论。只需按照机器人提供的指示操作即可。您只需在所有使用我们 CLA 的代码库中完成一次此操作。
本项目已采用 [Microsoft 开源行为准则](https://opensource.microsoft.com/codeofconduct/)。
有关更多信息,请参阅 [行为准则常见问题](https://opensource.microsoft.com/codeofconduct/faq/)
或通过 [opencode@microsoft.com](mailto:opencode@microsoft.com) 联系我们,提出其他问题或意见。
# 寻求贡献
我们目前正在积极寻找以下主题的贡献:
- [ ] 撰写关于深度强化学习的章节
- [ ] 改进关于目标检测的章节和笔记本
- [ ] PyTorch Lightning针对[此章节](https://github.com/microsoft/AI-For-Beginners/blob/main/3-NeuralNetworks/05-Frameworks/README.md)
- [ ] 撰写关于命名实体识别的章节和示例
- [ ] 为[此章节](https://github.com/microsoft/AI-For-Beginners/tree/main/5-NLP/15-LanguageModeling)创建训练自定义嵌入的示例
**免责声明**
本文档使用AI翻译服务 [Co-op Translator](https://github.com/Azure/co-op-translator) 进行翻译。尽管我们努力确保翻译的准确性,但请注意,自动翻译可能包含错误或不准确之处。应以原始语言的文档作为权威来源。对于关键信息,建议使用专业人工翻译。我们对于因使用本翻译而引起的任何误解或误读不承担责任。

View File

@ -0,0 +1,78 @@
# 人工智能
## [人工智能简介](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/1-Intro/README.md)
- 人工智能定义
- 人工智能历史
- 人工智能方法
- 自上而下/符号主义
- 自下而上/神经网络
- 演化方法
- 协同/涌现人工智能
- [微软人工智能商业学院](https://www.microsoft.com/ai/ai-business-school/?WT.mc_id=academic-77998-cacaste)
## [符号主义人工智能](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/2-Symbolic/README.md)
- 知识表示
- [专家系统](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/2-Symbolic/Animals.ipynb)
- [本体论](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/2-Symbolic/FamilyOntology.ipynb)
- 语义网
## [神经网络](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/3-NeuralNetworks/README.md)
- [感知机](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/3-NeuralNetworks/03-Perceptron/README.md)
- [多层网络](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/3-NeuralNetworks/04-OwnFramework/README.md)
- [框架简介](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/3-NeuralNetworks/05-Frameworks/README.md)
- [PyTorch](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/3-NeuralNetworks/05-Frameworks/IntroPyTorch.ipynb)
- [TensorFlow](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/3-NeuralNetworks/05-Frameworks/IntroKerasTF.md)
- [过拟合](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/3-NeuralNetworks/05-Frameworks/Overfitting.md)
## [计算机视觉](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/4-ComputerVision/README.md)
- 在微软学习平台
- [人工智能基础:探索计算机视觉](https://docs.microsoft.com/learn/paths/explore-computer-vision-microsoft-azure/?WT.mc_id=academic-77998-cacaste)
- [使用 PyTorch 的计算机视觉](https://docs.microsoft.com/learn/modules/intro-computer-vision-pytorch/?WT.mc_id=academic-77998-cacaste)
- [使用 TensorFlow 的计算机视觉](https://docs.microsoft.com/learn/modules/intro-computer-vision-TensorFlow/?WT.mc_id=academic-77998-cacaste)
- [计算机视觉简介OpenCV](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/4-ComputerVision/06-IntroCV/README.md)
- [卷积网络](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/4-ComputerVision/07-ConvNets/README.md)
- [卷积神经网络架构](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/4-ComputerVision/07-ConvNets/CNN_Architectures.md)
- [迁移学习](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/4-ComputerVision/08-TransferLearning/README.md)
- [训练技巧](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/4-ComputerVision/08-TransferLearning/TrainingTricks.md)
- [自动编码器和变分自动编码器](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/4-ComputerVision/09-Autoencoders/README.md)
- [生成对抗网络](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/4-ComputerVision/10-GANs/README.md)
- [风格迁移](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/4-ComputerVision/10-GANs/StyleTransfer.ipynb)
- [目标检测](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/4-ComputerVision/11-ObjectDetection/README.md)
- [图像分割](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/4-ComputerVision/12-Segmentation/README.md)
## [自然语言处理](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/README.md)
- 在微软学习平台
- [人工智能基础:探索自然语言处理](https://docs.microsoft.com/learn/paths/explore-natural-language-processing/?WT.mc_id=academic-77998-cacaste)
- [使用 PyTorch 的自然语言处理](https://docs.microsoft.com/learn/modules/intro-natural-language-processing-pytorch/?WT.mc_id=academic-77998-cacaste)
- [使用 TensorFlow 的自然语言处理](https://docs.microsoft.com/learn/modules/intro-natural-language-processing-TensorFlow/?WT.mc_id=academic-77998-cacaste)
- [文本表示](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/13-TextRep/README.md)
- 词袋模型
- TF/IDF
- [语义嵌入](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/14-Embeddings/README.md)
- Word2Vec
- GloVE
- [语言建模](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/15-LanguageModeling)
- [循环神经网络](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/16-RNN/README.md)
- LSTM
- GRU
- [生成式循环网络](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/17-GenerativeNetworks/README.md)
- [Transformer 和 BERT](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/18-Transformers/README.md)
- [命名实体识别](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/19-NER/README.md)
- [文本生成与 GPT](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/20-LanguageModels/README.md)
## 其他技术
- [遗传算法](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/6-Other/21-GeneticAlgorithms/README.md)
- [深度强化学习](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/6-Other/22-DeepRL/README.md)
- [多智能体系统](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/6-Other/23-MultiagentSystems/README.md)
## [人工智能伦理](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/7-Ethics/README.md)
- [微软学习平台上的负责任人工智能](https://docs.microsoft.com/learn/paths/responsible-ai-business-principles/?WT.mc_id=academic-77998-cacaste)
## 额外内容
- [多模态网络](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/X-Extras/X1-MultiModal/README.md)
- [CLIP](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/X-Extras/X1-MultiModal/Clip.ipynb)
- DALL-E
- VQ-GAN
**免责声明**
本文档使用AI翻译服务 [Co-op Translator](https://github.com/Azure/co-op-translator) 进行翻译。尽管我们努力确保翻译的准确性,但请注意,自动翻译可能包含错误或不准确之处。应以原文档的原始语言版本为权威来源。对于关键信息,建议使用专业人工翻译。我们对于因使用本翻译而引起的任何误解或误读不承担责任。

View File

@ -0,0 +1,14 @@
# 支持
## 如何提交问题和获取帮助
此项目使用 GitHub Issues 来跟踪错误和功能请求。在提交新问题之前,请先搜索现有问题以避免重复。对于新问题,请将您的错误或功能请求作为新问题提交。
如果需要帮助或对使用此项目有疑问,请使用讨论板。
## Microsoft 支持政策
对此项目的支持仅限于上述列出的资源。
**免责声明**
本文档使用AI翻译服务 [Co-op Translator](https://github.com/Azure/co-op-translator) 进行翻译。尽管我们努力确保翻译的准确性,但请注意,自动翻译可能包含错误或不准确之处。应以原文档的原始语言版本为权威来源。对于关键信息,建议使用专业人工翻译。我们对因使用此翻译而引起的任何误解或误读不承担责任。

View File

@ -0,0 +1,36 @@
# 通过翻译课程内容贡献
我们欢迎对本课程内容进行翻译!
## 指南
每个课程文件夹和课程介绍文件夹中都有包含翻译后的 Markdown 文件的子文件夹。
> 注意,请不要翻译代码示例文件中的任何代码;唯一需要翻译的内容是 README、作业和测验。谢谢
翻译后的文件应遵循以下命名规范:
**README._[language]_.md**
其中 _[language]_ 是遵循 ISO 639-1 标准的两位语言缩写(例如,西班牙语为 `README.es.md`,荷兰语为 `README.nl.md`)。
**assignment._[language]_.md**
与 README 文件类似,请翻译作业文件。
**测验**
1. 将您的翻译添加到测验应用中通过在以下位置添加文件https://github.com/microsoft/AI-For-Beginners/tree/main/etc/quiz-app/src/assets/translations并遵循正确的命名规范例如 en.json, fr.json。**请不要翻译 'true' 或 'false' 这两个词,谢谢!**
2. 在测验应用的 App.vue 文件中添加您的语言代码到下拉菜单中。
3. 编辑测验应用的 [translations index.js 文件](https://github.com/microsoft/AI-For-Beginners/blob/main/etc/quiz-app/src/assets/translations/index.js),以添加您的语言。
4. 最后,编辑您翻译后的 README.md 文件中的所有测验链接使其直接指向您的翻译版测验https://red-field-0a6ddfd03.1.azurestaticapps.net/quiz/1 改为 https://red-field-0a6ddfd03.1.azurestaticapps.net/quiz/1?loc=id
**感谢您!**
我们真诚地感谢您的努力!
**免责声明**
本文档使用AI翻译服务 [Co-op Translator](https://github.com/Azure/co-op-translator) 进行翻译。尽管我们努力确保翻译的准确性,但请注意,自动翻译可能包含错误或不准确之处。应以原始语言的文档作为权威来源。对于关键信息,建议使用专业人工翻译。我们对于因使用本翻译而引起的任何误解或误读不承担责任。

View File

@ -0,0 +1,128 @@
# 测验
这些测验是 AI 课程https://aka.ms/ai-beginners的课前和课后测验。
## 添加翻译后的测验集
通过在 `assets/translations` 文件夹中创建相应的测验结构来添加测验翻译。原始测验位于 `assets/translations/en` 文件夹中。测验按照课程分为多个组别。请确保编号与正确的测验部分对齐。整个课程共有 40 个测验,编号从 0 开始。
编辑翻译内容后,修改翻译文件夹中的 `index.js` 文件,按照 `en` 文件夹中的约定导入所有文件。
接着,编辑 `assets/translations` 文件夹中的 `index.js` 文件,导入新翻译的文件。
然后,编辑此应用中的 `App.vue` 文件中的下拉菜单,添加您的语言。确保本地化缩写与您的语言文件夹名称匹配。
最后,编辑翻译课程中的所有测验链接(如果存在),将本地化作为查询参数添加,例如:`?loc=fr`。
## 项目设置
```
npm install
```
### 编译并热加载用于开发
```
npm run serve
```
### 编译并压缩用于生产
```
npm run build
```
### 检查并修复文件
```
npm run lint
```
### 自定义配置
请参阅 [配置参考](https://cli.vuejs.org/config/)。
致谢感谢此测验应用的原始版本https://github.com/arpan45/simple-quiz-vue
## 部署到 Azure
以下是帮助您入门的分步指南:
1. Fork GitHub 仓库
确保您的静态 Web 应用代码在 GitHub 仓库中。Fork 此仓库。
2. 创建 Azure 静态 Web 应用
- 创建一个 [Azure 账户](http://azure.microsoft.com)
- 访问 [Azure 门户](https://portal.azure.com)
- 点击“创建资源”,搜索“静态 Web 应用”。
- 点击“创建”。
3. 配置静态 Web 应用
- 基本信息:
- 订阅:选择您的 Azure 订阅。
- 资源组:创建一个新的资源组或使用现有的资源组。
- 名称:为您的静态 Web 应用提供一个名称。
- 区域:选择离您的用户最近的区域。
- #### 部署详情:
- 源选择“GitHub”。
- GitHub 账户:授权 Azure 访问您的 GitHub 账户。
- 组织:选择您的 GitHub 组织。
- 仓库:选择包含静态 Web 应用的仓库。
- 分支:选择您要部署的分支。
- #### 构建详情:
- 构建预设:选择您的应用所使用的框架(例如 React、Angular、Vue 等)。
- 应用位置:指定包含应用代码的文件夹(例如,如果在根目录,则为 /)。
- API 位置:如果有 API请指定其位置可选
- 输出位置:指定生成的构建输出所在的文件夹(例如 build 或 dist
4. 审核并创建
审核您的设置并点击“创建”。Azure 将设置必要的资源,并在您的仓库中创建一个 GitHub Actions 工作流。
5. GitHub Actions 工作流
Azure 会自动在您的仓库中创建一个 GitHub Actions 工作流文件(.github/workflows/azure-static-web-apps-<name>.yml。此工作流将处理构建和部署过程。
6. 监控部署
前往 GitHub 仓库中的“Actions”标签页。
您应该会看到一个正在运行的工作流。此工作流将构建并部署您的静态 Web 应用到 Azure。
工作流完成后,您的应用将在提供的 Azure URL 上上线。
### 示例工作流文件
以下是 GitHub Actions 工作流文件的示例:
name: Azure Static Web Apps CI/CD
```
on:
push:
branches:
- main
pull_request:
types: [opened, synchronize, reopened, closed]
branches:
- main
jobs:
build_and_deploy_job:
runs-on: ubuntu-latest
name: Build and Deploy Job
steps:
- uses: actions/checkout@v2
- name: Build And Deploy
id: builddeploy
uses: Azure/static-web-apps-deploy@v1
with:
azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN }}
repo_token: ${{ secrets.GITHUB_TOKEN }}
action: "upload"
app_location: "etc/quiz-app # App source code path"
api_location: ""API source code path optional
output_location: "dist" #Built app content directory - optional
```
### 其他资源
- [Azure 静态 Web 应用文档](https://learn.microsoft.com/azure/static-web-apps/getting-started)
- [GitHub Actions 文档](https://docs.github.com/actions/use-cases-and-examples/deploying/deploying-to-azure-static-web-app)
**免责声明**
本文档使用AI翻译服务 [Co-op Translator](https://github.com/Azure/co-op-translator) 进行翻译。尽管我们努力确保翻译的准确性,但请注意,自动翻译可能包含错误或不准确之处。应以原始语言的文档作为权威来源。对于关键信息,建议使用专业人工翻译。因使用本翻译而引起的任何误解或误读,我们概不负责。

View File

@ -0,0 +1,397 @@
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 简单图像分类器\n",
"\n",
"本笔记本将向您展示如何使用预训练的神经网络对图像进行分类。\n",
"\n",
"**您将学习:**\n",
"- 如何加载和使用预训练模型\n",
"- 图像预处理\n",
"- 对图像进行预测\n",
"- 理解置信度分数\n",
"\n",
"**使用场景:** 识别图像中的物体(例如“猫”、“狗”、“汽车”等)\n",
"\n",
"---\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 第一步:导入所需的库\n",
"\n",
"让我们导入所需的工具。如果你还不完全理解这些也不用担心!\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"# Core libraries\n",
"import numpy as np\n",
"from PIL import Image\n",
"import requests\n",
"from io import BytesIO\n",
"\n",
"# TensorFlow for deep learning\n",
"try:\n",
" import tensorflow as tf\n",
" from tensorflow.keras.applications import MobileNetV2\n",
" from tensorflow.keras.applications.mobilenet_v2 import preprocess_input, decode_predictions\n",
" print(\"✅ TensorFlow loaded successfully!\")\n",
" print(f\" Version: {tf.__version__}\")\n",
"except ImportError:\n",
" print(\"❌ Please install TensorFlow: pip install tensorflow\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 第2步加载预训练模型\n",
"\n",
"我们将使用 **MobileNetV2**,这是一个已经在数百万张图片上训练过的神经网络。\n",
"\n",
"这被称为 **迁移学习** - 使用别人训练好的模型!\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"print(\"📦 Loading pre-trained MobileNetV2 model...\")\n",
"print(\" This may take a minute on first run (downloading weights)...\")\n",
"\n",
"# Load the model\n",
"# include_top=True means we use the classification layer\n",
"# weights='imagenet' means it was trained on ImageNet dataset\n",
"model = MobileNetV2(weights='imagenet', include_top=True)\n",
"\n",
"print(\"✅ Model loaded!\")\n",
"print(f\" The model can recognize 1000 different object categories\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 第 3 步:辅助函数\n",
"\n",
"让我们创建一些函数,用于加载和准备模型所需的图像。\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"def load_image_from_url(url):\n",
" \"\"\"\n",
" Load an image from a URL.\n",
" \n",
" Args:\n",
" url: Web address of the image\n",
" \n",
" Returns:\n",
" PIL Image object\n",
" \"\"\"\n",
" response = requests.get(url)\n",
" img = Image.open(BytesIO(response.content))\n",
" return img\n",
"\n",
"\n",
"def prepare_image(img):\n",
" \"\"\"\n",
" Prepare an image for the model.\n",
" \n",
" Steps:\n",
" 1. Resize to 224x224 (model's expected size)\n",
" 2. Convert to array\n",
" 3. Add batch dimension\n",
" 4. Preprocess for MobileNetV2\n",
" \n",
" Args:\n",
" img: PIL Image\n",
" \n",
" Returns:\n",
" Preprocessed image array\n",
" \"\"\"\n",
" # Resize to 224x224 pixels\n",
" img = img.resize((224, 224))\n",
" \n",
" # Convert to numpy array\n",
" img_array = np.array(img)\n",
" \n",
" # Add batch dimension (model expects multiple images)\n",
" img_array = np.expand_dims(img_array, axis=0)\n",
" \n",
" # Preprocess for MobileNetV2\n",
" img_array = preprocess_input(img_array)\n",
" \n",
" return img_array\n",
"\n",
"\n",
"def classify_image(img):\n",
" \"\"\"\n",
" Classify an image and return top predictions.\n",
" \n",
" Args:\n",
" img: PIL Image\n",
" \n",
" Returns:\n",
" List of (class_name, confidence) tuples\n",
" \"\"\"\n",
" # Prepare the image\n",
" img_array = prepare_image(img)\n",
" \n",
" # Make prediction\n",
" predictions = model.predict(img_array, verbose=0)\n",
" \n",
" # Decode predictions to human-readable labels\n",
" # top=5 means we get the top 5 most likely classes\n",
" decoded = decode_predictions(predictions, top=5)[0]\n",
" \n",
" # Convert to simpler format\n",
" results = [(label, float(confidence)) for (_, label, confidence) in decoded]\n",
" \n",
" return results\n",
"\n",
"\n",
"print(\"✅ Helper functions ready!\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 第四步:在样本图像上进行测试\n",
"\n",
"让我们尝试对一些来自互联网的图像进行分类吧!\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"# Sample images to classify\n",
"# These are from Unsplash (free stock photos)\n",
"test_images = [\n",
" {\n",
" \"url\": \"https://images.unsplash.com/photo-1514888286974-6c03e2ca1dba?w=400\",\n",
" \"description\": \"A cat\"\n",
" },\n",
" {\n",
" \"url\": \"https://images.unsplash.com/photo-1552053831-71594a27632d?w=400\",\n",
" \"description\": \"A dog\"\n",
" },\n",
" {\n",
" \"url\": \"https://images.unsplash.com/photo-1511919884226-fd3cad34687c?w=400\",\n",
" \"description\": \"A car\"\n",
" },\n",
"]\n",
"\n",
"print(f\"🧪 Testing on {len(test_images)} images...\")\n",
"print(\"=\" * 70)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 分类每张图片\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"for i, img_data in enumerate(test_images, 1):\n",
" print(f\"\\n📸 Image {i}: {img_data['description']}\")\n",
" print(\"-\" * 70)\n",
" \n",
" try:\n",
" # Load image\n",
" img = load_image_from_url(img_data['url'])\n",
" \n",
" # Display image\n",
" display(img.resize((200, 200))) # Show smaller version\n",
" \n",
" # Classify\n",
" results = classify_image(img)\n",
" \n",
" # Show predictions\n",
" print(\"\\n🎯 Top 5 Predictions:\")\n",
" for rank, (label, confidence) in enumerate(results, 1):\n",
" # Create a visual bar\n",
" bar_length = int(confidence * 50)\n",
" bar = \"█\" * bar_length\n",
" \n",
" print(f\" {rank}. {label:20s} {confidence*100:5.2f}% {bar}\")\n",
" \n",
" except Exception as e:\n",
" print(f\"❌ Error: {e}\")\n",
"\n",
"print(\"\\n\" + \"=\" * 70)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 第五步:尝试使用自己的图片!\n",
"\n",
"将下面的 URL 替换为您想要分类的任何图片 URL。\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"# Try your own image!\n",
"# Replace this URL with any image URL\n",
"custom_image_url = \"https://images.unsplash.com/photo-1472491235688-bdc81a63246e?w=400\" # A flower\n",
"\n",
"print(\"🖼️ Classifying your custom image...\")\n",
"print(\"=\" * 70)\n",
"\n",
"try:\n",
" # Load and show image\n",
" img = load_image_from_url(custom_image_url)\n",
" display(img.resize((300, 300)))\n",
" \n",
" # Classify\n",
" results = classify_image(img)\n",
" \n",
" # Show results\n",
" print(\"\\n🎯 Top 5 Predictions:\")\n",
" print(\"-\" * 70)\n",
" for rank, (label, confidence) in enumerate(results, 1):\n",
" bar_length = int(confidence * 50)\n",
" bar = \"█\" * bar_length\n",
" print(f\" {rank}. {label:20s} {confidence*100:5.2f}% {bar}\")\n",
" \n",
" # Highlight top prediction\n",
" top_label, top_confidence = results[0]\n",
" print(\"\\n\" + \"=\" * 70)\n",
" print(f\"\\n🏆 Best guess: {top_label} ({top_confidence*100:.2f}% confident)\")\n",
" \n",
"except Exception as e:\n",
" print(f\"❌ Error: {e}\")\n",
" print(\" Make sure the URL points to a valid image!\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 💡 刚刚发生了什么?\n",
"\n",
"1. **我们加载了一个预训练模型** - MobileNetV2 已经在数百万张图片上完成了训练 \n",
"2. **我们对图片进行了预处理** - 调整大小并格式化以适配模型 \n",
"3. **模型进行了预测** - 输出了1000个物体类别的概率 \n",
"4. **我们解码了结果** - 将数字转换为人类可读的标签 \n",
"\n",
"### 理解置信度分数\n",
"\n",
"- **90-100%**:非常有信心(几乎肯定正确) \n",
"- **70-90%**:有信心(可能正确) \n",
"- **50-70%**:信心一般(可能正确) \n",
"- **低于50%**:信心不足(不确定) \n",
"\n",
"### 为什么预测可能会出错?\n",
"\n",
"- **不寻常的角度或光线** - 模型是在典型照片上训练的 \n",
"- **多个物体** - 模型预期只有一个主要物体 \n",
"- **罕见物体** - 模型只识别1000个类别 \n",
"- **低质量图片** - 模糊或像素化的图片更难识别 \n",
"\n",
"---\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 🚀 下一步\n",
"\n",
"1. **尝试不同的图片:**\n",
" - 在 [Unsplash](https://unsplash.com) 上寻找图片\n",
" - 右键点击 → “复制图片地址” 获取 URL\n",
"\n",
"2. **进行实验:**\n",
" - 抽象艺术会有什么效果?\n",
" - 它能识别不同角度的物体吗?\n",
" - 它如何处理多个物体?\n",
"\n",
"3. **深入学习:**\n",
" - 探索 [计算机视觉课程](../lessons/4-ComputerVision/README.md)\n",
" - 学习如何训练自己的图像分类器\n",
" - 理解 CNN卷积神经网络的工作原理\n",
"\n",
"---\n",
"\n",
"## 🎉 恭喜!\n",
"\n",
"你刚刚使用最先进的神经网络构建了一个图像分类器!\n",
"\n",
"这种技术同样驱动了:\n",
"- Google Photos整理你的照片\n",
"- 自动驾驶汽车(识别物体)\n",
"- 医学诊断(分析 X 光片)\n",
"- 质量控制(检测缺陷)\n",
"\n",
"继续探索和学习吧!🚀\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n---\n\n**免责声明** \n本文档使用AI翻译服务 [Co-op Translator](https://github.com/Azure/co-op-translator) 进行翻译。尽管我们努力确保翻译的准确性,但请注意,自动翻译可能包含错误或不准确之处。原始语言的文档应被视为权威来源。对于关键信息,建议使用专业人工翻译。我们不对因使用此翻译而产生的任何误解或误读承担责任。\n"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.0"
},
"coopTranslator": {
"original_hash": "1d472141d9df46b751542b3c29f88677",
"translation_date": "2025-10-03T11:39:30+00:00",
"source_file": "examples/03-image-classifier.ipynb",
"language_code": "zh"
}
},
"nbformat": 4,
"nbformat_minor": 4
}

View File

@ -0,0 +1,85 @@
# 初学者友好的 AI 示例
欢迎!本目录包含简单、独立的示例,旨在帮助您入门 AI 和机器学习。每个示例都设计为对初学者友好,并附有详细的注释和逐步的解释。
## 📚 示例概览
| 示例 | 描述 | 难度 | 前置知识 |
|------|------|------|----------|
| [Hello AI World](../../../examples/01-hello-ai-world.py) | 您的第一个 AI 程序——简单的模式识别 | ⭐ 初学者 | Python 基础 |
| [Simple Neural Network](../../../examples/02-simple-neural-network.py) | 从零开始构建一个神经网络 | ⭐⭐ 初学者+ | Python基础数学 |
| [Image Classifier](./03-image-classifier.ipynb) | 使用预训练模型对图像进行分类 | ⭐⭐ 初学者+ | Pythonnumpy |
| [Text Sentiment](../../../examples/04-text-sentiment.py) | 分析文本情感(正面/负面) | ⭐⭐ 初学者+ | Python |
## 🚀 入门指南
### 前置知识
确保您已安装 Python推荐 3.8 或更高版本)。安装所需的包:
```bash
# For Python scripts
pip install numpy
# For Jupyter notebooks (image classifier)
pip install jupyter numpy pillow tensorflow
```
或者使用主课程中的 conda 环境:
```bash
conda env create --name ai4beg --file ../environment.yml
conda activate ai4beg
```
### 运行示例
**对于 Python 脚本 (.py 文件)**
```bash
python 01-hello-ai-world.py
```
**对于 Jupyter 笔记本 (.ipynb 文件)**
```bash
jupyter notebook 03-image-classifier.ipynb
```
## 📖 学习路径
我们建议按顺序学习以下示例:
1. **从“Hello AI World”开始** - 学习模式识别的基础知识
2. **构建一个简单的神经网络** - 理解神经网络的工作原理
3. **尝试图像分类器** - 使用真实图像体验 AI 的实际应用
4. **分析文本情感** - 探索自然语言处理
## 💡 初学者提示
- **仔细阅读代码注释** - 它们解释了每一行代码的作用
- **大胆尝试!** - 尝试修改参数,观察结果
- **不要担心无法完全理解** - 学习是一个循序渐进的过程
- **提出问题** - 使用 [讨论板](https://github.com/microsoft/AI-For-Beginners/discussions)
## 🔗 下一步
完成这些示例后,可以探索完整课程:
- [AI 简介](../lessons/1-Intro/README.md)
- [神经网络](../lessons/3-NeuralNetworks/README.md)
- [计算机视觉](../lessons/4-ComputerVision/README.md)
- [自然语言处理](../lessons/5-NLP/README.md)
## 🤝 贡献
觉得这些示例有帮助吗?欢迎帮助我们改进:
- 报告问题或提出改进建议
- 添加更多适合初学者的示例
- 改进文档和注释
---
*记住:每个专家都曾是初学者。祝学习愉快! 🎓*
---
**免责声明**
本文档使用AI翻译服务[Co-op Translator](https://github.com/Azure/co-op-translator)进行翻译。尽管我们努力确保准确性,但请注意,自动翻译可能包含错误或不准确之处。应以原始语言的文档为权威来源。对于关键信息,建议使用专业人工翻译。因使用本翻译而引起的任何误解或误读,我们概不负责。

View File

@ -0,0 +1,26 @@
# 给教育工作者
想在课堂上使用这套课程吗?请随意使用!
事实上,您可以通过 GitHub Classroom 在 GitHub 上直接使用它。
要做到这一点,请先 fork 此仓库。您需要为每节课创建一个单独的仓库,因此需要将每个文件夹提取到一个独立的仓库中。这样,[GitHub Classroom](https://classroom.github.com/classrooms) 就可以分别识别每节课。
这些[完整的说明](https://github.blog/2020-03-18-set-up-your-digital-classroom-with-github-classroom/)可以帮助您了解如何设置您的课堂。
## 按原样使用此仓库
如果您希望按当前形式使用此仓库,而不使用 GitHub Classroom这也是可以的。您需要与学生沟通一起完成哪一节课程。
在在线教学环境中(如 Zoom、Teams 或其他平台您可以为测验创建分组讨论室并指导学生为学习做好准备。然后邀请学生参加测验并在特定时间以“issues”的形式提交答案。如果您希望学生公开协作完成作业也可以采用类似的方式。
如果您更喜欢更私密的形式,可以让学生逐节 fork 课程到他们自己的 GitHub 私有仓库,并授予您访问权限。这样,他们可以私下完成测验和作业,并通过您课堂仓库中的 issues 提交给您。
在在线课堂中,有很多方法可以让这套课程发挥作用。请告诉我们哪种方式最适合您!
## 请分享您的想法
我们希望这套课程能够满足您和学生的需求。请在讨论区中给我们反馈!
**免责声明**
本文档使用AI翻译服务 [Co-op Translator](https://github.com/Azure/co-op-translator) 进行翻译。尽管我们努力确保翻译的准确性,但请注意,自动翻译可能包含错误或不准确之处。应以原始语言的文档作为权威来源。对于关键信息,建议使用专业人工翻译。我们对于因使用此翻译而引起的任何误解或误读不承担责任。

Some files were not shown because too many files have changed in this diff Show More