尋夢新聞LINE@每日推播熱門推薦文章,趣聞不漏接❤️
小編的推薦語:經過親自驗證,該課程對高校學生的確完全免費,還有答疑群,中間無套路。各位小夥伴加油!
今天向大家安利這個20課時的第三期免費課程:《AI領域的Python核心編程-帶你從0到1做到一個深度學習項目》
截止目前已經有2300+同學參與了這個項目,通過用戶反饋,我們發現這門課真正適合的群體是有一定編程基礎,希望Python能力進階,在深度學習領域進一步發展的同學。我們設立的目標是希望通過這門課提升你的代碼能力,助力你成為合格的算法工程師。
重要的事情說一遍:本門課程第三期挑戰對高校學生免費開放
免費課詳細介紹
《AI領域的Python核心編程-帶你從0到1做到一個深度學習項目》
課程OKR:掌握AI領域里的Python開發
會用:獨立用Python做到機器學習算法
會讀:讀懂開源社區代碼,並可以進行修改和擴展
會寫:Python代碼更加Pythonic,促進協作和交流
會學:有了對的認知,在編程世界自然一往無前
導師簡介
丁老師,AI軟件系統架構師,GitHub百星作者,HackerRank Python板塊滿分,累積面試100+AI算法研發及Python開發人員
課程內容
本課程分為兩部分:
第一部分:20課時的AI中的Python編程基礎講解
第 1 集 課程簡介,設計原則及學習方法
1.1 課程OKR
1.2 為什麼要用Markdown式講稿而非keynote
1.3 為什麼學習Python
1.4 為什麼做AI要學習Python
1.5 為什麼學習Python3而不是Python2
1.6 課程設計原則
1.6.1 學習Python的正確姿勢
1.6.2 AI領域Python的最小知識範圍
1.7 課程學習方法
第 2 集 Python學習的預備內容
2.1 本節課主要內容
2.2 Linux系統簡介
2.2.1 Linux
2.2.2 跨硬件平台
2.2.3 一切皆是文件
2.3 Linux命令行簡介
2.3.1 shell
2.3.2 終端仿真器程序-terminal
2.4 使用SIGAI在線編程模塊的terminal
2.5 Linux文件系統及讀寫權限簡介
2.6 Linux目錄結構
2.7 帳戶讀寫權限
2.7.1 看第一列字符串
2.7.2 文件類型
2.7.3 權限類型
2.8 Python解釋器
2.8.1 Python的程序是怎麼執行的
2.8.2 增強版解釋器-IPython
2.8.3 更強的工具-Jupyter Notebook
2.8.4 REPL-DD(交互式命令行驅動開發)
2.9 SIGAI在線編程功能
2.9.1 四個模塊
2.9.2 使用SIGAI在線編程模塊與本地環境的區別
第 3 集 Python快速面面觀(上)
3.1 課程介紹
3.2 第一個Python程序
3.3 輸入與輸出
3.4 Python中應知道的細節
3.5 數據類型
3.6 常量與基本運算
3.7 淺談變量
3.8 List
3.8.1 可變有序集合
3.8.2 List之可變
3.8.3 List之有序
3.8.4 List之集合
3.9 Tuple
3.9.1 Tuple之不可變
3.9.2 Tuple之括號歧義
3.9.3 Tuple之可變
3.10 Dict
3.11 Set
3.12 Python入門小坑之除法與字符串
3.12.1 單引號,雙引號,三單引號,三雙引號
3.12.2 引號作為字符
3.12.3 轉義字符
3.12.4 raw string
3.12.5 三引號?
3.13 Python入門小坑之字符編碼
3.13.1 字符編碼常見工作模式
3.13.2 Python中的字符串
3.13.3 字符串的編解碼(decode&encode)
3.14 Python入門小坑之再談變量
3.14.1 可變類型與不可變類型
3.14.2 可變對象與不可變對象
3.14.3 Python中的引用與拷貝
第 4 集 Python快速面面觀(下)
4.1 本集內容簡介
4.2 布爾變量的基本判斷規則與方法
4.3 數字的基本判斷規則與方法
4.4 Python入門小坑之邏輯判斷
4.5 深入理解Python中的 and和or
4.6 if語句
4.7 循環之for循環
4.8 循環之while循環、break、continue
4.8.1 while循環:只要滿足條件則持續操作
4.8.2 break語句:滿足條件則跳出循環
4.8.3 continue語句:滿足條件則直接進入下個循環
4.9 函數
4.9.1 調用內置函數
4.9.2 自定義函數
4.9.3 函數的默認參數
4.10 Python入門小坑之默認參數的記憶性
4.11 傳入任意個數的參數
4.12 Python中的面向對象
4.13 Python代碼的組織-模塊
4.14 包管理工具pip
4.15 Python入門小坑之解釋器默認搜尋路徑
第 5 集 玩轉Python中的List
5.1 本集內容簡介
5.2 切片
5.2.1切片功能的三個參數
5.3 多重List的淺拷貝與深拷貝
5.4 序列的加法,乘法,初始化
5.4.1 序列的加法
5.4.2 序列的乘法
5.4.3 常用的序列初始化方案
5.5 序列的常見內置方法
5.5.1 序列的包含關係:in
5.5.2 序列的長度,最大值,最小值:len,max,min
5.5.3 List與str的相互轉換
5.5.4 List的元素與切片的賦值與刪除
5.5.5 計數函數:count
5.5.6 列表的排序
5.5.7 Llst的內置方法及其時間空間複雜度
5.6 初見 List comprehension
第 6 集 Python中的函數與函數式編程(上)
6.1 本集內容簡介
6.2 認識函數
6.2.1 代碼塊
6.2.2 函數定義
6.3 函數參數
6.3.1 形參與實參
6.3.2 參數的傳遞
6.3.3 位置參數與關鍵字參數
6.4 名稱空間與作用域解析
6.4.1 作用域的產生
6.4.2 作用域的查看(globals()與locals())
6.4.3 作用域間變量的遮蓋
6.4.4 修改不同作用域里的變量
6.4.5 作用域的生命周期
第 7 集 Python中的函數與函數式編程(下)
7.1 函數式編程概述
7.1.1 程序的狀態與命令式編程
7.1.2 函數式編程
7.2 一等函數
7.2.1 一等對象
7.3 一階函數
7.3.1 map高階函數
7.3.2 filter高階函數
7.3.3 reduce高階函數
7.3.4 sorted高階函數
7.3.5 partial高階函數
7.4 匿名函數
7.4.1 用lambda 與用def 的區別在哪
7.4.2 lambda 速寫
7.4.3 List + lambda
7.4.4 入門小坑系列之—惰性計算
第 8 集 閉包
8.1 再談變量作用域
8.1.1 從內層函數的角度看,變量使用的兩個維度
8.1.2 變量作用域識別三要素
8.1.3 三種變量作用域
8.1.4 實踐和金句
8.1.5 Python解釋器如何識別變量的作用域?
8.1.6 為什麼會有 nonlocal 關鍵字?
8.2 什麼是閉包?
8.2.1 閉包的各種做到方式
8.3 閉包的作用
第 9 集 裝飾器
9.1 概述
9.2 Why?為什麼會出現裝飾器這個東西?
9.2.1 不引入多餘變量名
9.2.2 顯示調用,就近原則
9.2.3 分層封裝,充分服用
9.3 What? 什麼是裝飾器
9.3.1 裝飾器的堆疊
9.3.2 裝飾器在導入時立即執行
9.3.3 帶參數的裝飾器
9.4 How?裝飾器怎麼用
9.4.1 裝飾器的常見使用場景
9.4.2 註冊機制或授權機制(與應用開發相關)
9.4.3 參數的數據驗證或清洗
9.4.4 復用核心計算模塊,僅改變輸出方式
9.5 總結
第 10 集 理解面向對象編程(OPP)
10.1 本節課的OKR
10.1.1 三節課之間的關係:層層遞進
10.1.2 本節課的object
10.1.3 本節課的key Result
10.2 什麼是面向對象,什麼是面向過程
10.2.1 面向過程式編程
10.2.2 面向對象式編程
10.2.3 舉例說明
10.3 面向對象和面向過程的區別
10.4 比設計模式更重要的是設計原則
10.4.1 面向對象設計的目標
10.4.2 面向對象設計的SOLID原則
10.4.3 AI場景+Python(語言)+OOP(編程模式)
第 11 集 OOP in Python
11.1 本節課的OKR
11.1.1 本節課與上節課的關係
11.1.2 本節課與下節課的關係
11.1.3 本節課的Key Result
11.2 面向對象的Python做到
11.2.1 類的創建
11.2.2 類的數據綁定
11.2.3 類的自定義做到化
11.2.4 對象方法
11.2.5 類方法
11.2.6 屬性封裝
11.2.7 繼承(隱式實例化)
11.2.8 繼承(顯示實例化)
11.2.9 多態
11.3 面向對象的重要特性總結
第 12 集 Pythonic OOP(上)
12.1 本節課的OKR
12.1.1 本節課的KR
12.1.2 說明
12.2 關於雙下劃線
12.2.1 怎麼讀
12.2.2 雙下劃線開頭和結尾的變量或方法叫什麼
12.2.3 如何認識Python的special method
12.3 從語言設計層面理解Python的數據模型
12.3.1 一切都是對象
12.3.2Objects 的組成⼀:identity
12.3.3Objects 的組成二:type
12.3.4Objects 的組成二:value
12.3.5 存放其他 Object 的reference的Object:Container
12.4 Pythonic OOP with SpecialMethod and Attribute
12.4.1 Theimplicit superclass – object & type object
12.4.2Integrating Seamlessly with Python
12.5 Attribute Access andProperties(Level I:Basic Access)
第 13 集 Pythonic OOP(下)
13. 1Attribute Access andProperties(Level II:Property)
13.1.1 Cross-Cutting and DuckTyping
13.1.2 單繼承 vs 多態
13.2.2 傳統OOP vs 鴨子類型
13.2.3 傳統OOP的多態 vs 鴨子類型的多態
13.2.4MixIn:基於鴨子類型的視角看Multi-Inheritance
13.2.5Cross-Cutting:基於鴨子類型的視角看Decorator與Special Method
13.2.6Python語言設計的三個關鍵詞(其實是一件事的三個不同視角)
13.3 總結
第 14 集 迭代器協議
14.1 本節課的OKR
14.1.1 Objective
14.1.2 Key Result
14.2 Iterator Protocol
14.3 Generator
14.3.1 yield Expression
14.3.2 Generator Expression
14.3.3 在Python中不要小瞧任何看似微小的區別
14.4 為什麼需要生成器
14.4.1 用生成器表示全部的斐波那契數列
14.4.2 通過生成器管道模塊化處理數據
14.5 總結:關於Python中的迭代思維
第 15 集 異常處理
15.1 什麼是異常
15.2 為什麼程序會出現異常
15.3 通常如何處理
15.4 Python中的異常及相關語法
15.4.1 案例:主動拋出異常
15.4.2 案例:被動遇到異常
15.4.3 案例:異常處理語句—未遇到異常
15.4.4 案例:異常處理語句—捕獲全部異常
15.4.5 案例:異常處理語句—捕獲指定異常
15.4.6 案例:異常處理語句—捕獲異常後仍拋出
15.4.7 案例:異常處理語句—捕獲異常後顯示異常信息但不拋出異常 15.4.8 案例:異常語句與循環的連用
15.5 異常的傳播
15.6 關於異常的後續學習
第 16 集 上下文管理器
16.1 概述
16.1.1 為什麼要講Context Manager?
16.1.2 Context Manager與Decorator之間的關係?
16.1.3 本節課的主要內容
16.2 Why?為什麼我們需要Context Manager?
16.2.1 有始必有終
16.2.2 有始必有終的try/finally做到及相應的Context Manager抽象 16.2.3 When to use Context Manager?
16.3 What?什麼是Context Manager?與with語句是何關係?
16.3.1 Context Manager is a protocol for Python with statement
16.3.2 案例:Context Manager通用結構
16.4 How?Context Manager都怎麼使用?
16.4.1 成對出現的模式:Context Manager使用的信號
16.4.2 確保一個打開的流在程序中關閉
16.4.3 確保為測試而準備的代碼執行環境在執行完畢後銷毀
16.4.5 確保不同線程之間訪問共享資源時的線程鎖一定會釋放 16.4.6 在部分代碼處使用高精度模式
16.4.7 管理數據庫的連接資源
16.4.8 對某一塊代碼進行運行時間測量
16.4.9 臨時創建文件進行緩存,並在使用完畢後刪除
16.4.10 一個功能的代碼做到與其工程化的區別
第 17 集 導入時與運行時(上)
17.1 概述
17.2 安裝Python的時候到底安裝的是什麼?
17.3 Python解釋器是什麼?
17.4 解釋器由什麼組成?
17.5 程序運行完整流程
17.6 模塊是一個對象
17.7 模塊有自己的作用域
17.8 模塊只需要導入一次
第 18 集 導入時與運行時(中)
第 18 集 導入時與運行時(中)
18.1 模塊通常怎麼用(一):工具包
18.2 模塊通常怎麼用(二):測試包
18.3 模塊通常怎麼用(三):配置包
18.4 模塊怎麼變成包
18.5 模塊有自己的預設字段
18.6 如果使用 from pkg import ,你需知道模塊的訪問限制變
第 19 集 導入時與運行時(下)
19.1 案例:模塊,類,函數,在導入時與運行時的行為
19.2 案例:加上裝飾器,類中類,看導入時與運行時
19.3 如果沒有 if name == main,會發生什麼
19.4 總結
第 20 集 結束語,後面的路靠你自己了
20.1 回顧一下整個課程內容
20.2 從課程的特點談談對Python教學的理解
20.3 課程的KR藏於課程設計中,而O的做到要靠你後續的努力
第二部分:實踐項目:從讀論文到代碼復現(學習完基礎課程並通過測評的同學才能進階)
具體步驟:
- 選定一篇經典論文;
- 怎麼搜尋,怎麼下載論文;
- 怎麼找到訓練數據集;
- 怎麼分析數據集;
- 怎麼做到論文的模型結構;
- 怎麼處理數據集;
- 復現論文模型需要找到哪些參數;
- 評估結果,調試模型;
- 配置GPU服務器環境的流程;
- 訓練好的模型如何使用;
報名流程
Step 2:回復「OpenCV學堂推薦」
Step 3: www.sigai.cn註冊帳號,找小編開通課程
P.S. 小編不會強行要求你轉載,但是如果你覺得這門課不錯,請推薦給需要的小夥伴
學習流程
- www.sigai.cn註冊帳號
- 將註冊用手機號發給小編,開通課程權限
- 登錄網站,下載課件
- 學習基礎知識部分,建議一個月內搞定(目前最快學習者7天左右搞定)
- 修完基礎課程,找小編申請評測
- 評測通過,獲得實踐項目權限
輔助工具
- 在線答疑群聊(能力強的同學歡迎競選班委,班委任職期間免費享受SIGAI深度學習專題課程)
- SIGAI在線編程(本課程基於SIGAI在線編程功能進行講解,將代碼放在瀏覽器,輕鬆省力)
進階:優秀的算法工程師
要成為優秀的算法工程師,數學基礎、代碼能力、算法功底三種能力缺一不可!
- 關於數學基礎,詳見,里邊詳細介紹了機器學習涉及的數學知識,如果還有不清楚,也可以在網易雲課堂來聽下SIGAI公開課《機器學習中的數學基礎》或SIGAI的。
- 關於算法功底,小編誠懇地說修煉之路沒有捷徑,只能一步一個腳印。這里推薦下我們的兩門課程: 課程導師是《機器學習和應用》(12月即將在清華出版社出版)一書的作者雷老師親自錄制,這里稍稍分享幾篇雷老師出的好文,希望能夠讓你有所收益。
- 此外,SIGAI邀請了各個方向的資深專家就其研究領域遇到的高質量論文進行精彩解讀,部分還包含源碼解讀並附帶源碼,對於正在埋頭苦讀論文的同學,這波助攻確實給力。戳這里,看看有沒有你關心的論文《》。
最後,算法工程師之路需要耐心和毅力,現在開始不驕不躁的積累,才能為自己成就一個美好未來。
再次強調免費Python核心編程課程的報名方式:
如果你覺得文章不錯,歡迎點讚分享到朋友圈