[Translate] translate CS188/Docker/GUN_Make (#540)

* complete eng_version for deep learning folder

* fix typo

* add english version for machine learning systems

* Update AICS.en.md

Adjust indentation

* [ADD]add translation for CS188

* [ADD]add translation for Docker

* [UPDATE]update file name

* [ADD]add translation for GNU_Make

* [FIX]fix typo

* [FIX]fix spacing error
This commit is contained in:
nzomi 2023-12-15 13:45:13 +08:00 committed by GitHub
parent 905592de9b
commit f5ef84aaf3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 48 additions and 0 deletions

View File

@ -0,0 +1,20 @@
# CS188: Introduction to Artificial Intelligence
## Course Overview
- UniversityUC Berkeley
- PrerequisitesCS70
- Programming LanguagePython
- Course Difficulty🌟🌟🌟
- Estimated Hours50 hours
This introductory artificial intelligence course at UC Berkeley provides in-depth and accessible course notes, making it possible to grasp the material without necessarily watching the lecture videos. The course follows the chapters of the classic AI textbook *Artificial Intelligence: A Modern Approach*, covering topics such as search pruning, constraint satisfaction problems, Markov decision processes, reinforcement learning, Bayesian networks, Hidden Markov Models, as well as fundamental concepts in machine learning and neural networks.
The Fall 2018 version of the course offered free access to gradescope, allowing students to complete written assignments online and receive real-time assessment results. The course also includes 6 projects of high quality, featuring the recreation of the classic Pac-Man game. These projects challenge students to apply their AI knowledge to implement various algorithms, enabling their Pac-Man to navigate mazes, evade ghosts, and collect pellets.
## Course Resources
- Course Websites[Fall 2022](https://inst.eecs.berkeley.edu/~cs188/fa22/), [Fall 2018](https://inst.eecs.berkeley.edu/~cs188/fa18/index.html)
- Course Videos[Fall 2022](https://inst.eecs.berkeley.edu/~cs188/fa22/), [Fall 2018](https://inst.eecs.berkeley.edu/~cs188/fa18/index.html), with links to each lecture on the course website
- Course TextbookArtificial intelligence: A Modern Approach
- Course AssignmentsOnline assessments for written assignments and projects, details available on the course website

View File

@ -0,0 +1,15 @@
# Docker
## Why Docker
The main obstacle when using software/tools developed by others is often the hassle of setting up the environment. This configuration headache can significantly dampen your enthusiasm for software and programming. While virtual machines can solve some of these issues, they are cumbersome and might not be worth simulating an entire operating system for a single application's configuration.
[Docker](https://www.docker.com/) has changed the game by making environment configuration (potentially) less painful. In essence, Docker uses lightweight "containers" instead of an entire operating system to support an application's configuration. Applications, along with their environment configurations, are packaged into images that can freely run on different platforms in containers, saving considerable time and effort for everyone.
## How to learn Docker
The [official Docker documentation](https://docs.docker.com/) is the best starting point, but the best teacher is often yourself—try using Docker to experience its convenience. Docker has rapidly developed in the industry and is already quite mature. You can download its desktop version and use the graphical interface.
If you're like me, reinventing the wheel, consider building a [Mini Docker](https://github.com/PKUFlyingPig/rubber-docker) yourself to deepen your understanding.
[KodeKloud Docker for the Absolute Beginner](https://kodekloud.com/courses/docker-for-the-absolute-beginner/) offers a comprehensive introduction to Docker's basic functionalities with numerous hands-on exercises. It also provides a free cloud environment for practice. While other cloud-related courses, such as Kubernetes, may require payment, I highly recommend them. The explanations are detailed, suitable for beginners, and come with a corresponding Kubernetes lab environment, eliminating the need for complex setups.

View File

@ -0,0 +1,13 @@
# GNU Make
## Why GNU Make
Everyone remembers their first "hello world" program. After editing `helloworld.c`, you needed to use `gcc` to compile and generate an executable file, and then execute it. (If you're not familiar with this, please Google *gcc compilation* and understand the related content first.) However, what if your project consists of hundreds of C source files scattered across various subdirectories? How do you compile and link them together? Imagine if your project takes half an hour to compile (quite common for large projects), and you only changed a semicolon—would you want to wait another half an hour?
This is where GNU Make comes to the rescue. It allows you to define the entire compilation process and the dependencies between target files and source files in a script (known as a `Makefile`). It only recompiles the parts affected by your changes, significantly reducing compilation time.
## How to learn GNU Make
Here is a well-written [document] (https://seisman.github.io/how-to-write-makefile/overview.html) for in-depth and accessible understanding.
Mastering GNU Make is relatively easy, but using it effectively requires continuous practice. Integrate it into your daily development routine, be diligent in learning, and mimic the `Makefile` styles from other excellent open-source projects. Develop your own template that suits your needs, and over time, you will become more proficient in using GNU Make.