Fast.ai v3 2019课程中文版笔记

fastai part1 2019 中文版

什么是fast.ai

fast.ai的教学哲学

什么是中文版

目标

  • 成为中文学员深入fast.ai的窗口
  • 成为fast.ai学习资源和工作的中文集成地
  • 成为我贡献fast.ai和为大家提供服务的平台

提供服务

  • 整理在fast.ai所学的知识点,并转为中文分享给大家
  • 如果条件允许,且大家有需求,可以将知识点转化为视频 详情见, 已完成的fast.ai中文笔记视频,请前往B站

共建

  • 欢迎大家协助翻译,提问,回答
  • 回复能直接看出直接贡献者,无需为credit归属担忧
  • 我会将你的内容贡献的链接植入此页面和合适位置,大家只用专心分享即可
  • 目前我可以协助大家在笔记Notebook汉化和文档改进做贡献
每日必看

每日观光地

fast.ai v3 2019 课程官网 :white_check_mark:
fastai 文档官网 :white_check_mark:
fast.ai 官方论坛 :white_check_mark:
fast.ai 论坛官方课程更新 :white_check_mark:
fast.ai 文档改进探讨 :white_check_mark:
Kaggle 官网
Real python plt tutorial
hard and uncool style

常用工具箱

my translation contribution
my video manager
我的fast.ai本地工作设置与常用技能
ML/DS求职信模版 thanks to Susan Holcomb


新人快速上手

我只在fastai论坛里回答问题, 其他学习形式,请前往组队学习

好提问,必回答!:heartpulse:
好问题的标准,见how to ask for help 中文版

课程视频
官方课程综述(中英文)

github版本

欢迎大家就翻译细节提出质疑和改进意见(请在相关post下回复,我会确保贡献者都收到credit)

第一课: 你的宠物图片分类 内容综述
第二课:数据清洗和模型云端应用;手写SGD 内容综述
第三课 data blocks, 多标签分类,图片像素隔离 内容综述
第四课:自然语言,表格数据,推荐系统算法collab, 嵌入层embeddings 内容综述
第五课:反向传递,加速版随机梯度下降,手写神经网络 内容综述
第六课:正则化,卷积,数据伦理 内容综述
第七课: 手写Resnets, U-net, GAN 内容综述

开启你的免费GPU
课程Notebook中文版

第零课:如何使用Jupyter Notebook
第一课:你的宠物
更多中文Notebooks,请跳转

其他基础
  • 如何更新课程notebook与fastai库 笔记
  • 为什么用Jupyter Notebook 笔记
  • 如何更新notebook与fastai? 笔记
  • 如何使用Jupyter Notebook?
  • /([^/]+)_\d+.jpg$是如何提取标注label的? 笔记 notebook

组建和维护学习小组

fastai推荐的学习小组运营指南
第一个在上海的学习小组2019.3启动!感谢 @royam0820
微信群学习小组 感谢 @PegasusWithoutWinds

共建fast.ai社区

如果你要借助参考前辈的笔记,同时有兴趣汉化笔记,请前往汉化笔记项目
如果你要学习阅读和改进文档,请前往共建文档项目


Jeremy的课程建议(忠告):heartpulse:

引言

感谢 @MadeUpMasters 分享的post这里是它的中文镜像版(原文直译)

在开始学习fast.ai前,我尝试学习已毕业学员发表在网上的经验分享,尤其是他们后悔的事情。

最常见的忠告:“真的要听Jeremy的话,将时间用在他建议的地方。”
最多的懊悔:“我真应该听Jeremy的话,不要将大把时间浪费在一次性搞懂理论理解上。”

在这里我记录了每节课Jeremy给出的建议,我会照做,也希望大家跟我一起做。

第一课的建议
  1. 不要尝试停下来理解所有的知识点
  2. 不要浪费时间:请学习JN的快捷键,一天学4-5个
  3. 请跑代码,“真的”去跑代码。不要去深入学习理论。去玩转代码,看看它们“吃进什么吐出什么”
  4. 选择一个项目,认真做好,做到超棒!
  5. 跑这个Nb(lesson1-pets.ipynb),然后用你自己的数据集跑跑,一定要做!
  6. 如果你有很多类别要区分,不要选择confusion matrix,要用
interp.most_confused(min_val=n)
第二课的建议
  1. 如果论坛博文太庞杂,点击博文下方的“summarize this topic总结此主题”
  2. 请跟着官方的安装说明设置你的GPU,步骤简单快捷。
  3. 如果感觉论坛里大家都太厉害,有太多新东西,而且感觉很难,真的没关系!选择一个点下手,比如跑几行代码,学一个概念如regular expression, 或者创建一个分类器,什么都行,关键是忘记烦恼,行动起来。建议出处视频节点 Lesson 2: It’s okay to feel intimidated
  4. 如果卡壳了,不要停下来深挖,继续前行!(看下图) 视频节点: Lesson 2: If you’re stuck, keep going
  5. 如果你不确定图中的哪个学习率更好,每个都试试看。
  6. 当你将模型做成网页APP,你会选择用CPU做预测,除非是巨量规模的服务请求才会用到GPU。视频节点: Lesson 2: Putting Model into Production
  7. 多数公司浪费大量时间在收集更多数据上。正确做法是,用一小撮数据跑跑看,然后在看问题是否是数据不够。
  8. 如果你认为自己“天生不擅长数学”, 请看看Rachel的TED演讲: There’s no such thing as “not a math person” . My own input: only 6 minutes, everyone should watch it!

keepgoing
keepgoing.png876×537 125 KB

第三课的建议
  1. 在你使用数据集时,请务必给予数据创建者荣誉和感谢
  2. 在接下来的一周里,看看你能不能找到你想解决的多标注分类问题,图片回归问题,或图片区域隔离问题等等,试试看你能否拿出解决方案。 视频节点: Fast.ai Lesson 3 Homework
  3. 记住要使用pretrained模型训练时所用的均值与方差。 视频节点: Lesson 3: Normalized data and ImageNet
  4. 对问题 “有理由阻止我们尝试 64x64 to 128x128 to 256x256等尺寸图片训练微调模型吗?”的回答: “是的,非常值得一试!效果不错,试试吧!” 视频节点: Lesson 3: 64x64 vs 128x128 vs 256x256
第四课的建议
  1. 如果做的是NLP,没有理由不用验证集参与训练。 视频节点Lesson 4: A little NLP trick
  2. 在回答提问:”在怎样10%的情况下你不会使用神经网络”时,回应:“你可以都尝试,random forest和神经网络. 视频节点Lesson 4: How to know when to use neural nets
  3. 习惯使用这些词汇 (参数parameters, 层layers, 激活activations…etc) 并尝试准确使用。 视频节点Lesson 4: Important vocabulary for talking about ML
第五课的建议
  1. 如果你心里有疑问:“我是否应该试试?”, 回答是:试试看吧,这是你成为优秀实践者的必修课。 视频节点Lesson 5: Should I try blah ?
第六课的建议
  1. “一个潜力巨大的研究方向是各个领域数据增强研究。几乎没有关注这个方向,而我认为这是蕴藏着巨大的机会,可以帮助节省5-10倍的数据需求。” 视频节点Lesson 6: Data augmentation on inputs that aren’t images
  2. 如果你会花时间跑整个Nb,包括 the convolution kernel 和 the heatmap部分, 尝试实验这些代码看看他们的反应。最重要的是记住: shape也就是这里说的rank或tensor维度。尝试思考:“为什么?” 回头看看模型summary, 各个层的设置,作出的各种图,想象以下背后的机制。视频节点Lesson 6: Go through the convolution kernel and heatmap notebook
第七课的建议
  1. 这节课的内容很多,目的是让你们忙起来,直到进入part2的课程。

下面内容源于这节课视频中的一段精彩演讲,强烈建议再看一遍 Lesson 7: What to do once you’ve completed Part 1

  1. 回头再去看看视频,这一遍肯定有些内容理解和感悟是之前没有的。
  2. 写代码并分享到github中。有多好不重要,重要的是写下来和分享出来。这样才能获得反馈帮助你进步。
  3. 现在可以开始读课程中介绍过的论文了。论文里所有关于derivations/theorems/lemmas(数学公式部分)都可以忽略,因为它们无法帮助增加对深度学习的实践性理解。认真阅读关于为什么以及怎样定义和解决问题的。写下总结来帮助那些与6个月前的你的状态水平相似的人。
  4. 可能最重要的是和大家一起学,这样效果往往更好。组建一个读书会,学习小组,定期聚会,动手做些项目。不需要是什么特别棒的东西,只要是能让世界更美好一点,甚至是让你的2岁大孩子开心的事情。完成一件事情,然后在进一步完善它。或者是参与到fast.ai中来帮助开发代码和完善文档。如何参与件 Dev Projects Index on forums.
  5. 提问:“在part 2 开始前,你建议我们做些什么呢”,回答: "就是代码,不停写代码,看看你的输入值,输出值,尝试输出一个你的mini-batch。我们覆盖的内容非常多,如果你能做到”不作弊“状态下,重建所有的notebook,你将是极少数顶级的实践者。 视频节点:Lesson 7: What to do/learn/practice between now and Part 2

课程Notebook 汇总

英文版Nb

中文Kaggle版

Kaggle Nb 中文版 学习借鉴了 @init_27 @wdhortonkernel并尽可能保持与课程github版本Nb同步更新。

第零课:如何使用Jupyter Notebook
第一课:你的宠物
第二课:创建你的数据集和分类器
第二课:梯度下降SGD
第三课:Camvid tiramisu 简化版
第三课:Camvid 图片隔离
第三课:图片回归BIWI数据集
第三课:IMDb影评数据集 @kachun1017 创建并维护

超快commit,详细解说版
第六课:重返宠物识别

听写Nb

Jeremy 建议大家自己从头构建全部课程Notebooks(不作弊), 如果能做到,会让你成为极少数优秀深度学习实践者。

如果这是你想要的,那么我们可以先迈出第一步,从Notebook听写开始!

同时我还会逐步将原视频课程内容也融入到以下Notebook中

第一课 你的宠物
第二课 你的图片数据集
第二课 手写SGD
第三课 camvid图片隔离问题
第三课 BIWI head pose回归问题
第三课 IMDB自然语言问题
第三课 planet多标注分类问题
第四课 collab filtering 影片影评数据集
第四课 表格数据问题
第五课 基于pytorch 和fastai 的SGD解决mnist分类
第六课 回顾宠物篇
第六课 Rossmann 销售预测
第七课 手写Resnet
第七课 U-net的故事
第七课 从低清到高清 fastai GAN
第七课 WGAN bedroom
第七课 supperres with feature loss
强化版
第六课:pets revisited


贡献 fast.ai :heartpulse:

英中双语字幕与词汇翻译

我会提供英中双语字幕与词汇翻译,并保障字幕和词汇的定期维护与更新。

欢迎大家对中英文字幕不理解或是感觉有错误的地方提问和指正,我会尽力解答和及时纠正 :heartpulse:

详情请前往

笔记汉化

课程笔记汉化项目

欢迎大家共同来建设课程笔记汉化项目!:heartpulse:
详情,请前往

简化文档

fastai library 极有可能是世界上最优秀的深度学习库,值得深入学习。
对于初学者,库的内容还是比较庞大,这里尝试在文档和源码基础上梳理简单脉络。
简版文档,请前往

共建文档

如果你想尝试学习阅读和改进文档,可以看看下面三个贡献的经验总结视频。论坛里大家都很热情,认真提问,努力尝试,肯定会有收获的!

初学者可视化PR指南 论坛版, github版本, 视频解读
freeze文档解读 学习探讨, Notebook, 成果, 视频解读
freeze_to文档解读 学习探讨, Kaggle kernel, 听写, 成果, 视频解读

更多文档建设, 请前往

论文翻译 paper translation

ULMFIT paper 感谢 @thousfeet

经典问答

如何才能能灵活自由掌握底层代码?
问答链接

Excel是否是深度学习不可或缺的好帮手?
问答链接

如何读取学习率
Jeremy 在课程中是如何讲解的?


fast.ai 见闻

搜集在fast.ai世界里看到的值得关注的动态和见闻

great study groups

medical imaging thanks to @PegasusWithoutWinds

  • don’t miss out some additional resources posted by members in the study groups

Time series/ sequential data thanks to @oguiza

中文网络参考资源

邱锡鹏深度学习教科书开源
机器之心
AI研习社


关于深度碎片

更多fastai课程字幕翻译工作,见fastai_courses_translation_EN2CN repo
更多fastai文档贡献,见 fastai_treasures repo
更多我的机器学习和深度学习视频作品,见已完成项目

23 Likes

如何使用Colab


这是fast.ai v3 课程使用Colab的快速入门指南

如何你不是第一次使用,请参看returning to work 指南

注意: 这是免费服务但不是随时都提供,而且你需要额外工作保存你的实验。务必仔细阅读colab说明理解服务的局限性.

Step 1: Accessing Colab

  1. 首先,登陆谷歌账户here.

  2. 然后, 前往 Colab Welcome Page 并点击 ‘Github’. 在 ‘Enter a GitHub URL or search by organization or user’ 一栏填写 ‘fastai/course-v3’. 你将看到所有课程notebooks,点击一个你感兴趣的.

  1. 在你运行前,需要告知Colab你希望使用GPU. 你可以点击 ‘Runtime’ tab 选择 ‘Change runtime type’. 在随后打开的窗口下拉菜单里选择‘GPU’,或者在edit中选择Notebook settings中选择GPU 然后点击 ‘Save’.

Step 2: Configuring your notebook instance

  1. 在你开始使用notebook前, 你需要安装必须的软件包。你可以用以下代码,运行第一个Cell
!pip install numpy==1.15
# then restart the runtime, open a new cell to run the following
!curl -s https://course.fast.ai/setup/colab | bash

  1. 然后,你会看到一个跳出窗口说 ‘Warning: This notebook was not authored by Google’; 你选中’Reset all runtimes before running’, 然后点击‘Run Anyway’.

  1. 在新窗口中点击 ‘Yes’.

Step 3: Saving your notebook

如果你是从github打开notebook,你需要将实验存入Google Drive. 你可以点击 ‘File’ 再点击 ‘Save’. 你可以看到以下窗口,然后点击‘SAVE A COPY IN DRIVE’


这将打开一个新 tab 含有相同文件位于你的Google Drive. 如果你希望保存后继续工作,那么直接在这个新tab中工作就可以. 你的notebook将被保存在一个叫 Colab Notebooks的文件夹位于你的Google Drive中.

Step 4: Saving your data files

如果你希望改写你的文件,你需要允许你的Colaboratory instance读取和改写你的 Google Drive. 你只需要在每一个notebook的第一个Cell中写入以下代码

from google.colab import drive
drive.mount('/content/gdrive', force_remount=True)
root_dir = "/content/gdrive/My Drive/"
base_dir = root_dir + 'fastai-v3/'

现在,你的 Google Drive 变成了一个文件系统允许标准python读写文件. 不要忘记给所有notebook的根目录地址前加上 base_dir . 例如, 在 lesson2-download.ipynb 5th cell, 做一下修改

path = Path(base_dir + 'data/bears')
dest = path/folder
dest.mkdir(parents=True, exist_ok=True)

More help

更多问题可以在 fast.ai forum 提出。

Colab

1 Like

如何使用Crestle


::Crestle.ai 官网::
* 为深度学习提供轻松无痛的即开即用基础设施.
* 一旦注册成功,你可以在一分钟以内开启携带GPU的notebook做深度学习实验
* 你无需任何安装

::使用指南::
* 下文的使用指南,适用于初次使用者
* 如果不是第一次使用,而是再次登陆跟进工作实验进度,请看直接进入 returning to work 产看相关的Crestle的使用指南

Crestle.ai 为 fast.ai v3 课程提供定制化服务

- 捆绑安装了fast.ai课程所需的所有配置,包括35GB的数据
- 你可以打开notebook直接上手实验,无需做任何杂物工作

价格设定

* Crestle 使用了 AWS [p2.xlarge *spot*](https://aws.amazon.com/ec2/instance-types/p2/) instances 来降低GPU使用成本,通过多地点服务器支持来保障GPU服务供应稳定。
* Crestle的每一个携带GPU的notebook背后都由一个专供的 [NVIDIA Tesla K80 GPU](https://www.nvidia.com/en-us/data-center/tesla-k80/)提供支持
* Crestle的目标是为fast.ai的学生和实践者提供尽可能低的使用成本,目前的定价如下:
	- K80 GPU instance: 每小时0.30 美元, 每秒计价
	- 数据存储: $0 (upto 75 GB) until 12/31/2018以前,75GB以内免费,此后,每月每GB只需0.1美元
	- 首次使用,拥有1小时免费使用时间

步骤 1: 创建crestle.ai账户

* 在这里注册Crestle [here](https://www.crestle.ai/). 
* 在邮箱中点击验证Crestle邮件链接 
* 验证完毕后,可进入Crestle直接使用了

步骤 2: 开启你的Jupyter Notebook

* 一旦登陆,你可以开启你的Jupyter notebook
* 只有当你开启Jupyter notebook时,你才会被计费

步骤 3: 前往 fast.ai 课程

* 一旦开启携带GPU的notebook,你的GUP会在一分钟内就绪
* fast.ai课程设置已经到位,你可直接根据下面的文件结构前往课程
- courses
     - fast-ai
        - course-v3

步骤 4: 更新 the fastai library 库

* 在开始实验之前,你需要先更新fastai library
* 为此,我们需要开启terminal 
* 点击 New, 点击 Terminal, 完成开启
* ![](&&&SFLOCALFILEPATH&&&763FF91A-3661-4CED-927D-DF4888844A5B.png)
* 在跳出的Terminal 窗口中输入:
conda update conda
conda install -c fastai fastai
* 最后关闭 terminal 窗口

步骤 5: 数据早已到位,直接写代码就行

* 课程所需的数据 [datasets](https://course.fast.ai/datasets) 已经就位,35GB的数据随时准备用来训练模型,无需下载. 

* 你可以前往相关课程notebook开始实验

步骤 6: 当你结束时务必关闭the instance

* 为了避免GPU空转计费,务必stop the instance,关闭键在最上方. 
* 你可以随时重新开启GPU,如步骤2所示
* 关闭你的instance时,模型会自动备份,下次可以接着使用

Crestle为我们安装了什么?

* 安装了全套的 [full Anaconda 5.3.0 Python environment](https://repo.anaconda.com/archive/) 
* 此外还安装了fast.ai所需的环境 [here](https://github.com/fastai/fastai#conda-install) ,包括Pytorch with GPU 支持 与 fastai library.
* 你也可以从Notebook里打开Terminal,通过 `conda install` or even `pip install`直接安装库或软件到你的home directory
* 当你关闭instance时,所有库都会自动备份

存储与数据

* Crestle.ai 为你提供 75GB 存储空间.
* 其中37GB被fast.ai课程数据和所需环境所占据
* 对这些数据和库,你拥有100%读写权限。你可以前往/home/nbuser 在courses directory and anaconda install directory (hidden directory) 查看
* 你添加到home directory下的内容都会免费备份

Crestle.ai与crestle.com有何不同?

* 是crestle.com的新版本
* 为fast.ai v3 定制
* 更快更便宜

去哪里寻求帮助

* 发送邮件到 support@crestle.com 

谁创建和支持Crestle?

* crestle.com was created by [Anurag Goel](https://twitter.com/anuraggoel) 
* and is now being supported and managed by [doc.ai](https://doc.ai/).

Where can I learn more about Crestle?

Please read our FAQ. Our pricing information is listed here. You can always reach out to us at support@crestle.com.

2 Likes

谢谢您给我们写非常好的中文版笔记 :grinning:

(Any volunteers to help translate the lessons to Chinese?..)

5 Likes

Thanks @jeremy !

Yes, I want to help more Chinese to study fast.ai too. The following is my attempts.

  • I have done very detailed 7 lesson notes in English and done a lot of ytcropper, and I am incorporating them into the existing forum lesson notes.

  • Meanwhile I started to contribute to English subtitle and Chinese subtitle for 2019 lesson videos on Youtube, but I fear as Machine Translation becomes more and more powerful, any subtitle will be made obsolete soon. So, I am not strongly motivated to work on English and Chinese subtitles. Maybe I am wrong about this, what’s your opinion?

  • I am experienced in making short study note video series on ML and DL courses. I have done Ng’s ML and DL courses study-notes-videos in Chinese. Although Ng’s videos are wonderful and extremely friendly, still lots of people appreciate and consider my study note videos to be good complement with original videos with Chinese subtitles. So, my current plan is to turn the forum incorporated lesson notes into a long series of short videos in Chinese, and I will post the video links here.

Of course, I will provide the Chinese version of lesson notes here too.

Will my plan of work violate any rules of fast.ai?
When the study note videos are done and posted, how can I give credit to fast.ai and people on forum formally and correctly?

Thanks!

4 Likes

重回 Crestle.ai


继续Notebook实验,仅需一下步骤

1. 启动你的GPU instance
2. 更新你的课程repository
3. 更新你的 fastai library
4. 实验结束时,关闭GUP instance

启动GPU instance

* 登陆 [Crestle](https://www.crestle.ai/) ,点击 Start Jupyter
* GUP instance需要1-2分钟就绪
* 你之前的实验内容已经准备就绪

更新课程repository

更新课程repository,你需要使用 terminal.
点击 ‘Jupyter Notebook’ 按钮, jupyter notebook 菜单中开启一个新的 terminal

cd courses/fast-ai/course-v3/
git pull

以上步骤讲给你最新的课程notebooks
如果之前你直接修改了课程course-v3/nbs中的notebooks,GitHub会报错
你需要执行 git stash 来删除你之前所做的修改
牢记:你应该始终在复制的notebook 中进行实验工作

更新 fastai library

更新fastai library,需要像之前一样打开 terminal 执行以下代码

conda update conda
conda install -c fastai fastai

停止你的GPU instance

一旦结束实验,请回到控制页面,点击 Stop Jupyter

It’s not enough to just close your browser or turn off your own computer.

从新连接你的GPU instance

步骤大体与之前描述一致

Lesson 2

如果你是新创建的GPU instance,以上操作没问题

如果你之前试验过了,那么这次需要在terminal 中执行: rm -r ~/.datasets/camvid


1 Like

0:00-0:47 * ytcropper 可以循环播放
点击前往 fast.ai 官方指南 教你如何开启你的第一个GPU。

1 Like

如何问问题

Original English post from Jeremy - Part 1 (2018)

在提问之前

  • 先搜索
  • 再尝试不同关键词搜索

你的问题源于你所面对的环境和困难本身的属性。只有详细全面描述你所处的环境和困难本身,才能帮助回答者更准确的理解你的问题,并给予有帮助的回答。

为此,你需要详细描述以下几点:

  1. 为了解决你的问题,你做了哪些尝试?每个尝试中,你预期有怎样的结果,实际结果是怎样的?视频相关问题,请提供视频链接和时间节点
  2. 你是如何理解问题的?你对问题发生的原因是如何解释的?你认为怎样的解决方案可能解决这个问题?
  3. 你的工作环境配置是怎样的?比如,AWS (p2 or t2?), Paperspace, 你的电脑是PC,OS,Linus…
  4. 如果你没有使用标准的AMIs/scripts,或做了某些修改,请务必指出来
  5. 如果你对工作环境libraries 或者 notebooks做了修改,也必须指出来
  6. 准确给出你收到的错误提示
  7. 如果有必要,提供错误发生时的截图
  8. 如果你在安装或configuration时出现异样(不同于课上展示的),务必指出来
  9. 如果你解决了一部分问题,务必详细描述并告知
2 Likes

在本地运行课程的Notebook时,如何进行library与notebook更新?

# 如果你在conda environment 下,运行以下代码更新 conda 与 fastai
conda update conda -y # 在 conda env 之外运行,更新conda

git pull # 在 course v3 文件夹下运行,更新notebook

conda install -c fastai fastai # 在conda env 下运行, 更新fastai

为什么用Jupyter Notebook?

前往练习Jupyter notebook使用
Kaggle中文版Jupyter notebook使用方法将稍后提供

可以说,做深度学习,我们只需要Jupyter Notebook就够了。
在Notebook中我们可以完成任何任务,写代码,编辑文档,作图,图片,表格,等等

I think it’ll be a few more years until automatic translations are good enough that people won’t want manual ones - so I think it would still be very valuable indeed.

Fantastic! That will be great :slight_smile:

There’s no “formal and correct” approach - just a note at the top that your notes are summarizing a fast.ai lesson, along with a link to the lesson, would be a good way for people using your notes to be aware of the source, and access it if they wish.

2 Likes

The forum post system says I edit too much and only allow to edit again after 3 hours. How can I get around this for working on this particular post intensively? thanks!

Hey Daniel, forum posts are pretty useful for a live update when the class is still going on. As for completed courses, I would recommend @hiromi’s approach, that is, creating them on Github like this. Note that I am not saying that you should transcript the lecture video word by word like @hiromi, which is a lot of work; (you are my hero, @hiromi) rather, I mean that I would go for Github rather than Discourse forum for collaborating on and sharing lecture notes on completed courses. It is visually more friendly to the reader and allows for better collaboration. Discourse is really not intended for this purpose.

欢迎加入fastai大家庭,感谢你的贡献。

3 Likes

The first time around, I put my notes up in https://medium.com/. It definitely had wider audiences but editing and maintaining was a little difficult because there is no plain markdown text you can access. So for something simple like video URL changing was not as simple as find and replace.

Github approach has been great so far. Actually, @stas created a script utilizing pandoc to export markdown files to PDF for me (https://github.com/hiromis/notes/blob/master/pdf/build/process.txt), so conversion to other format is an added bonus :slight_smile:

5 Likes

I’m afraid I don’t know - we’re using the Discourse forum software, so if you find some setting you’d like me to change, I’m happy to do so.

1 Like

Thanks Jeremy, I think I can work it out with github+issues version freely and update on this forum post version once a day.

1 Like

Hi @hiromi,
Thanks for your great work and the PDF solution!

I started my notes using your beautiful notes on github. I think I will continue to use your notes as one of my main note sources.

Looking forward to more of your work!

2 Likes

Thanks @PegasusWithoutWinds for the github suggestion! I am taking it.

Also, you are right that it is wise to consider user experience. I hope my style of using github md + issues is not painful to use.

1 Like

Cheers!

For all the amazing posts you have shared above, since these are all md, we should be able to get most of them to work just by copying and pasting. Feel free to start an issue or pull request in https://github.com/fastai/course-v3. We could figure out how to organize them there.

Let me know if there is anything I could help with the docs and website build process. It could be a bit tricky when getting started, but you will find the workflow pretty smooth after getting used to it.

Thanks @PegasusWithoutWinds, I am sure I will need your help on all these issues mentioned above at some point in the future. At the moment, I have no idea what is necessary to be added onto course v3 repo, given this Chinese version note only just get started.

Right now, I will just try to keep working on this, adding more content, as it progress, many of the issues above may become necessary and I will push them forward with your help.

1 Like