2024 08 07, 2048 今日內容
2024-08-07, 20:48-今日內容
A star Un informed search informed search, greedy best first search Stack , DFS depth first search , BFs breath first search Node searching problem. New Note Search. Harvard CS50 python Harvard Cs 50 AI with python x此oh>sum Law of large numbers Central limit theorem Random variable & normal distribution dispersion standard deviation range interquatile range, standard deviation… sampling 概率论 描述data (ML)mean , mode, median central tendency 中心趋势 hhWWBWB+4:e⁰_-0 65(3,2) torch里面的view 可以改变我们的matrix的形状,特别适合用来更改维度 See torch.arange是干什么的 torch.zeros 14:7.78] → - X=:(0⁰!^2⋅3imma1001/00/4⋅7.81/X:C:1 pytorch 的 tensor matrix 怎么通过索引取value 什么是integer tensor (torch里面的概念) torch.INT64? 就是torch.long 一模一樣。 所以long 就是int! one hot encoding 對於多维度向量的表达,在pytorch里面 torch.float 是 float32 一模一樣 abl s 27 character, building NLP 的dataset [0] * 5 是多少 Dictionary 同时获取key 和value的方式 MLP 解决NLP问题 y=tanhx
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
A star 
#Astar
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
Un informed search informed search, greedy best first search uninformed search  informed search 

 #Manhattan_distance #Harvard #python #Astar
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
Stack , DFS depth first search , BFs breath first search last in first out



#stack
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
Node searching problem. ✓ Parent ✓ Path cost ◦  ✓ Action. ✓ State
#stack #CS50 #Harvard #Searching
Harvard CS50’s Artificial Intelligence with Python – Full University Course
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
New Note
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
Search. Harvard CS50 python 
 #CS50 #python #Harvard
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
Harvard Cs 50 AI with python 
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
x此oh>sum 
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
Law of large numbers Central limit theorem 
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
Random variable & normal distribution 
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
dispersion standard deviation range interquatile range, standard deviation… dispersion standard deviation range interquatile range, standard deviation

🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
sampling 概率论 描述data (ML)mean , mode, median (13) Statistics: Sampling and Describing Data | Math for ML (Part 2) - YouTube
Mode 
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
central tendency 中心趋势 一般用 mean median Mode 来描述数据的特征
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
hhWWBWB+4:e⁰_-0 
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
65(3,2) 
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
torch里面的view 可以改变我们的matrix的形状,特别适合用来更改维度 特别是增加一个维度或者减小一个维度
只要是变化前后,每个维度的数字想乘,一致 就可以了。
例子: 假如a 是一个torch.tensor,a 的shape是(37, 3, 2)
也就是37条数据,3个数字,2每个数字有两个特征
我们为了把他feed进去NN,就需要把这个压缩称为两个维度的。所以会用到view 来改变
也就是我们要把最后两个维度进行压缩,成只有一个维度的。 执行 a.view(37, 6)
Kanpathy 说这个view 是特别efficient的一个操作,因为他并没有增加内存的使用。他还分享了一个文章,来告诉我pytorch的internal是怎么对这个view进行牛逼的改造的。 足以证明这个view的厉害。 (13) Building makemore Part 2: MLP - YouTube
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
See torch.arange是干什么的 给他一个开始(一般都是0),给他一个结束(最后他产生的数是包含这个结束的数的),给他一个step就可以工作,他一般会让step是1, 然后开始间隔一个数产生一个新的值,然后最后用torch.tensor包裹着这个产生的list
这里有个例子:
1. torch.arange(5) 给你的是torch([0, 1, 2, 3, 4)
2. torch.arange(1, 4) 给你的是(1, 2, 3, 4)
3. Torch.arange(1, 2.5, 0.5) 给你的是tensor([1.0000, 1.5000, 2.0000])
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
torch.zeros 返回的是满足你给出的形状的全是0的torch.tensor的matix。 每一个row都是一个tensor
你只需要给出形状的shape就好了
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
14:7.78] → -  有多少的个数字等着被one hot encode,我们就会有多少个新的row。 每个row有多少个column来描述他,就是我们给他的num_classes来决定的
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
X=:(0⁰!^2⋅3imma1001/00/4⋅7.81/X:C:1 
请解释为什么C[X]会变成shape 32, 3, 2。 我理解的是X难道不是C的索引嘛? X的形状都超出了C的shape了,为什么这个操作还是合法的? 
在这个例子中,C 是一个形状为 [27, 2] 的张量,而 X 是一个形状为 [32, 3] 的张量。当你执行 C[X] 时,这是一个高级索引(advanced indexing)的操作,它会产生一个新的张量。
在 PyTorch 中,高级索引会遵循以下规则:
X中的每个值都是C的索引。C的形状是[27, 2],所以C的第一个维度有 27 个元素,而第二个维度有 2 个元素。X的形状是[32, 3],表示你有一个 32 行 3 列的索引数组。
当你使用 C[X] 时,PyTorch 会使用 X 的值来索引 C。具体来说,每个 X 的值会指向 C 的第一维度,然后提取对应的第二维度的所有元素。
举个例子:
- 假设
X[0, 0]的值是 5,那么C[5]会返回一个形状为[2]的向量(因为C的第二维度有 2 个元素)。 - 类似地,
X[0, 1]可能是 10,那么C[10]会返回另一个形状为[2]的向量。
因此,C[X] 的结果是,将 X 中每个索引都替换为 C 的对应行,得到一个形状为 [32, 3, 2] 的张量:
32是X的第一个维度的大小。3是X的第二个维度的大小。2是C的第二个维度的大小。
所以 C[X] 的形状为 [32, 3, 2]。
这就是为什么即使 X 的形状 [32, 3] 超出了 C 的形状 [27, 2],这个操作仍然是合法的。X 实际上是用于索引 C 的第一维度,而 C 的第二维度保持不变。高级索引会自动处理这种情况并返回预期的结果。
我的解释:
我明白了。我们提取的X的其实是他的value,而不是row 和column number。而这个value刚好在C的row的自取范围内?
是的,你理解得完全正确!
当我们使用 C[X] 进行高级索引时,X 中的值实际上用作 C 的行索引,而不是行和列的编号。具体来说:
X的每个元素值(比如X[i, j])都表示要从C的哪一行进行索引。- 由于
C的形状是[27, 2],X中的值必须在0到26之间,这样C[X]操作才能合法。
举个例子,如果 X 的值在 0 到 26 之间:
- 假设
X[0, 0]的值是5,那么C[5]会返回C的第5行。 - 这第
5行是一个长度为2的向量(因为C的第二维度是2)。
这样,C[X] 的形状变成 [32, 3, 2]:
32和3是X的形状。2是C的第二维度的长度。
所以,你提取的 X 的值用作 C 的行索引,而不是 X 的行和列编号。这个值必须在 C 的行范围内,即在 0 到 26 之间,这样 C 才能正确地索引这些值并返回相应的结果。
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
pytorch 的 tensor matrix 怎么通过索引取value
- 可以用integer
- 可以用list
-
可以用integer tensor
- (13) Building makemore Part 2: MLP - YouTube 17:03
一个小小的例子: C[torch.tensor([5, 6, 7, 8, 7, 7, 7, 7)] 这里的torch.tensor就是integer tensor。 里面的都是integer的list 被一层torch.tensor包裹着了。
这里的C就是一个torch.tensor包裹的matrix 我们可以通过这个语法,索引到C的第5, 6, 7, 8, 7, 7, 7, 7这些行的值
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
什么是integer tensor (torch里面的概念) 也就是,tensor包裹的是integer
可以是这样的torch.tensor([1, 2, 3])
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
torch.INT64? 就是torch.long 一模一樣。 所以long 就是int! 就是代表int的意思
只不過是能夠存儲很長的int
注意在torch里面。 F.one_hot()给你返回的就是int64或者说事long 转换她们的方法就是.float() 直接cast就好了,long可以这样搞成float,这个事long这个class里面已经有的一个函数。
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
one hot encoding 對於多维度向量的表达,在pytorch里面 vector [5] 让他的num_classes = 7 , 会把整个过程做成:

🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
torch.float 是 float32 一模一樣
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
abl s 27 character, (13) Building makemore Part 2: MLP - YouTube
 unifrom distribution

🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
building NLP 的dataset  data type: X:integer [32] torch.int64 label Y: interger : [32, 3] torch.int64
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
[0] * 5 是多少 答案是[0, 0, 0, 0, 0]
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
Dictionary 同时获取key 和value的方式 dd.items()
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
MLP 解决NLP问题 每个字, (一共13000个字/character) ,把每个字都弄成vector 相似的字,可能在经过我们的training((也就是back propagation之后,可以知道他们是可以替换的,也就是在vector的向量空间他们离得很近)   
🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️下一個筆記🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️🐿️
y=tanhx 
#匯總今日內容