机器学习以及计算机公开课汇总帖
之前在简书上发过两个帖子,分别总结了CS以及机器学习的课程资源,现在也学习了几个月,就把学完的记录在这里,部分课程做了笔记的也会列出。
系统自学计算机课程:
https://www.jianshu.com/p/8f2646a825e8
机器学习资料:
https://www.jianshu.com/p/dc9020fd03b1
计算机计算机基础
哈佛大学 CS50
https://www.edx.org/course/cs50s-introduction-computer-science-harvardx-cs50x
如果0基础想要学习计算机知识,非常推荐这门课,课程生动有趣。这门课面非常广,介绍了C语言,SQL,HTML,Python以及Javascript,如果时间有限,可以着重学习C语言部分。
Nand to Tetris
https://www.coursera.org/learn/build-a-computer
https://www.coursera.org/learn/nand2tetris2
https://www.nand2tetris.org/
非常非常好的课 ...
未完成的课程汇总
由于时间或者个人原因,在学习的过程中难免有没有学习完的课程,这里会将其列出,方便后续填坑。
未完成列表
MIT 6.172(完成4讲)
MIT 概率课程
台交大信息论(完成10讲)
台交大随机过程(完成6讲)
Information Theory, Inference and Learning Algorithms(完成8讲)
MIT 18.605 Matrix Methods in Data Analysis, Signal Processing, and Machine Learning(上传6讲,完成到21讲)
CS236 Deep Generative Models(完成8讲)
CS234 强化学习(完成1讲)
EE364 凸优化(完成8讲)
Deep Learning for Human Language Processing (完成语音部分)
斯坦福算法专项课程(完成9周内容)
博客主题配置
记录博客主题的配置以及相关优化。
博客内容整理
记录对博客内容整理的过程。
OSTEP Chapter 18 回顾
这里回顾第18章,本章介绍了分页。
书籍介绍:
https://book.douban.com/subject/34994608/
学习资料:
https://pages.cs.wisc.edu/~remzi/OSTEP/
https://github.com/remzi-arpacidusseau/ostep-translations/tree/master/chinese
https://github.com/joshuap233/Operating-Systems-Three-Easy-Pieces-NOTES
第18 章 分页:介绍内容回顾
分页:把进程地址空间分割成固定大小的单元,每个单元称为一页;
物理内存看成是定长槽块的阵列,叫作页帧(page frame),每个页帧包含一个虚拟内存页;
例子:
页表(page table):记录地址空间的每个虚拟页放在物理内存中的位置
主要作用是为地址空间的每个虚拟页面保存地址转换(address translation)
将虚拟地址映射到物理地址
拥有的内容:
映射关系
有效位(valid bit)用于指示特定地 ...
OSTEP Chapter 17 回顾
这里回顾第17章,本章介绍了空闲空间管理。
书籍介绍:
https://book.douban.com/subject/34994608/
学习资料:
https://pages.cs.wisc.edu/~remzi/OSTEP/
https://github.com/remzi-arpacidusseau/ostep-translations/tree/master/chinese
https://github.com/joshuap233/Operating-Systems-Three-Easy-Pieces-NOTES
第17 章 空闲空间管理内容回顾
管理空闲空间的数据结构被称为空闲列表(free list)
两种碎片
外部碎片:物理内存充满了许多空闲空间的小洞,因而很难分配给新的段,或扩大已有的段。
内部碎片:分配程序给出的内存块超出请求的大小,在这种块中超出请求的空间(因此而未使用)就被认为是内部碎片。
底层机制:
分割与合并
追踪已分配空间的大小
使用头块
typedef struct header_t {
int size;
int ...
OSTEP Chapter 16 回顾
这里回顾第16章,本章介绍了分段。
书籍介绍:
https://book.douban.com/subject/34994608/
学习资料:
https://pages.cs.wisc.edu/~remzi/OSTEP/
https://github.com/remzi-arpacidusseau/ostep-translations/tree/master/chinese
https://github.com/joshuap233/Operating-Systems-Three-Easy-Pieces-NOTES
参考资料:
https://pages.cs.wisc.edu/~remzi/OSTEP/vm-segmentation.pdf
第16 章 分段内容回顾
分段:
在MMU中引入不止一个基址和界限寄存器,给地址空间内的每个逻辑段(segment)一对
端:
地址空间里一个连续定长的区域
典型的地址空间里有3个逻辑不同的段:代码,栈,堆
段错误(segmentation fault):
在支持分段的机器上发生了非法的内存访问
判断引用了哪个段 ...
OSTEP Chapter 15 回顾
这里回顾第15章,本章介绍了机制:地址转换。
书籍介绍:
https://book.douban.com/subject/34994608/
学习资料:
https://pages.cs.wisc.edu/~remzi/OSTEP/
https://github.com/remzi-arpacidusseau/ostep-translations/tree/master/chinese
https://github.com/joshuap233/Operating-Systems-Three-Easy-Pieces-NOTES
参考资料:
https://github.com/joshuap233/Operating-Systems-Three-Easy-Pieces-NOTES/blob/main/15.%E7%AC%AC%E5%8D%81%E4%BA%94%E7%AB%A0-%E6%9C%BA%E5%88%B6:%E5%9C%B0%E5%9D%80%E8%BD%AC%E6%8D%A2/%E9%97%AE%E9%A2%98%E7%AD%94%E6%A1%88.md
第1 ...
OSTEP Chapter 14 回顾
这里回顾第14章,本章介绍了插叙:内存操作API。
书籍介绍:
https://book.douban.com/subject/34994608/
学习资料:
https://pages.cs.wisc.edu/~remzi/OSTEP/
https://github.com/remzi-arpacidusseau/ostep-translations/tree/master/chinese
https://github.com/joshuap233/Operating-Systems-Three-Easy-Pieces-NOTES
参考资料:
https://stackoverflow.com/questions/29459957/program-received-signal-sigabrt-aborted
https://github.com/joshuap233/Operating-Systems-Three-Easy-Pieces-NOTES/blob/main/14.%E7%AC%AC%E5%8D%81%E5%9B%9B%E7%AB%A0-%E6%8F%92%E5 ...
OSTEP Chapter 13 回顾
这里回顾第13章,本章介绍了抽象:地址空间。
书籍介绍:
https://book.douban.com/subject/34994608/
学习资料:
https://pages.cs.wisc.edu/~remzi/OSTEP/
https://github.com/remzi-arpacidusseau/ostep-translations/tree/master/chinese
https://github.com/joshuap233/Operating-Systems-Three-Easy-Pieces-NOTES
第13 章 抽象:地址空间内容回顾关键概念
操作系统的历史
早期系统:内存中的一组函数
多道程序(multiprogramming)系统:多个进程在给定时间准备运行
分时系统:
方式一:让进程占用全部内存运行一段时间,然后停止,保存状态,切换到其他进程;
方式二:和方式一类似,但是只使用内存的一小部分;
地址空间
包括程序代码,堆,栈
虚拟化内存
在单一的物理内存上为多个运行的进程构建一个私有的,可能很大的地址空间的抽象
虚拟内存系统的 ...
OSTEP Chapter 10 回顾
这里回顾第10章,本章介绍了多处理器调度(高级)。
书籍介绍:
https://book.douban.com/subject/34994608/
学习资料:
https://pages.cs.wisc.edu/~remzi/OSTEP/
https://github.com/remzi-arpacidusseau/ostep-translations/tree/master/chinese
https://github.com/joshuap233/Operating-Systems-Three-Easy-Pieces-NOTES
第10 章 多处理器调度(高级)内容回顾关键概念
缓存
很小但很快的存储设备,通常拥有内存中最热的数据的备份。
基于局部性的概念,分为时间局部性和空间局部性。
内存
很大且拥有所有的数据,但访问速度较慢。
对共享数据访问需要考虑同步问题
解决方法是使用锁
缓存亲和度(cache affinity)
由于缓存的原因,应该尽可能将相同的进程保持在同一个CPU上
单队列多处理器调度(Single Queue Multiprocessor ...
OSTEP Chapter 9 回顾
这里回顾第9章,本章介绍了调度:比例份额。
书籍介绍:
https://book.douban.com/subject/34994608/
学习资料:
https://pages.cs.wisc.edu/~remzi/OSTEP/
https://github.com/remzi-arpacidusseau/ostep-translations/tree/master/chinese
https://github.com/joshuap233/Operating-Systems-Three-Easy-Pieces-NOTES
第9 章 调度:比例份额内容回顾关键概念
比例份额(proportional-share)调度程序,也称公平份额(fair-share)调度程序
因为调度程序的最终目标是确保每个工作获得一定比例的CPU 时间
彩票调度(lottery scheduling)
每个进程拥有一定的彩票数,不断定时地抽取彩票,彩票调度从概率上(但不是确定的)获得这种份额比例
相关概念
彩票货币(ticket currency)
这种方式允许拥有一组彩票的用户以他们喜欢的某 ...