本篇博客 主要是我 记录学习摄影的一个过程。
原因:和同事聊天,羡慕同事的各种游玩经历,买了个相机准备激励自己多出门走走。
基础:以前从来没有涉及这方面的知识,一直以来都是拿手机瞎拍,所以一切都是从 入门开始。
目的:出门,记录生活,拍好看的照片,最好还能卖钱。
设备:由于这次下的决心比较大,所以入手了 索尼Alpha7RM4A机身加 SEL2470GM镜头。因为主要目的是为了出门,所以选择贵一点的可以让抠门的我主动迈开步伐走出舒适区。
局限:作为程序员兼Manager,平时时间没机会捣鼓,所以整个学习过程比一般人会长上许多。
目录
第一天 网课学习
2022年03月06日
上网课,获得基本的一些关于摄影知识普及
设备机器刚下单
确定初始学习路径为:相机参数 → \rightarrow → 实践 → \rightarrow → 后期参数
相机参数
光圈
- 光圈:”一个用来控制光线透过镜头,进入机身内感光面光量的装置”
- 参数:F / F/F /
float
表示光圈数 又称F数。
光 圈 F 值 = 镜 头 焦 距 / 镜 头 有 效 口 径 直 径 光圈F值=镜头焦距/镜头有效口径直径光圈F 值=镜头焦距/镜头有效口径直径
- 光圈大小与F数大小成反比:
- 大光圈的镜头,F数小,光圈数小;
- 小光圈的镜头,F数大,光圈数大。
- 光圈大小与进光量有关:
- 光圈值:有f/1.0,f/1.4,f/2.0,f/2.8,f/4.0,f/5.6,f/8.0,f/11,f/16,f/22,f/32,f/44,f/64
- 两档之间相差2 ≈ 1.414 \sqrt{2}\approx1.414 2 ≈1 .4 1 4, 进光面积差一倍, 进光量相差一倍。
- 分类:
- 固定:沃特侯瑟光圈。
- 可变:转动圆盘可将适当大小的圆孔移到光轴上,达到控制孔径的效果。
-
其他 : …
-
虚化(在快门不变的情况下):
- F数越 小,光圈越大,进光量越多,画面比较 亮,焦平面越窄,主体背景越 虚化, 景深浅;
- F数越 大,光圈越小,进光量越少,画面比较 暗,焦平面越宽,主体前后越 清晰, 景深深。
; 快门速度
- 快门:用来控制光线照射感光元件时间的装置。
- 作用:控制感光片有效曝光时间。
- 参数:单位 秒。
- 含义: 曝光多长时间。
- 常用:1,1/2,1/4,1/8,1/15,1/30,1/60,1/125,1/250,1/500,1/1000,1/2000等。
- 指标:
T e = T 1 + 0.5 ∗ T 3 Te=T1+0.5*T3 T e =T 1 +0 .5 ∗T 3 - 等效曝光时间(Te)
- 快门延迟时间(T1):快门由接到动作的命令一直到快门叶片开始遮住光路的时间
- 快门速度(T3):快门由全开到全关的时间
- 安全快门:为了避免手抖,一般为1 / 焦 距 1/焦距1 /焦距,该值为经验数值。
ISO 感光度
- 感光度:传感器对光的敏感度。衡量底片对于光的灵敏程度。
- 效果:
- 光线通过的越多,画面就越亮;
- 感光度越低,画面越亮越细腻;
- 光线不足时,感光度越高,噪点越多。
- Remark: 有时为了拍到照片,感官度调高是必要的。
焦距
- 焦距:f f f ,衡量光的聚集或发散的度量方式,指平行光入射时从透镜光心到光聚集之焦点的距离。
- 光圈:F F F
- 镜头焦距:f f f
- 对焦距离:L L L
- 前景深:Δ L 1 = F σ L 2 f 2 + F σ L \displaystyle \Delta L_1 = \frac{F \sigma L^2}{f^2 + F \sigma L}ΔL 1 =f 2 +F σL F σL 2
- 后景深:Δ L 2 = F σ L 2 f 2 − F σ L \displaystyle \Delta L_2 = \frac{F \sigma L^2}{f^2 – F \sigma L}ΔL 2 =f 2 −F σL F σL 2
- 景深:Δ L = Δ L 1 + Δ L 2 = 2 f 2 F σ L 2 f 4 − F 2 σ 2 L 2 \displaystyle \Delta L = \Delta L_1 + \Delta L_2 = \frac{2 f^2 F \sigma L^2}{f^4 – F^2 \sigma^2 L^2}ΔL =ΔL 1 +ΔL 2 =f 4 −F 2 σ2 L 2 2 f 2 F σL 2
- 焦段:一般称
- 超广角< 16 mm
- 广角< 35 mm
- 长焦> 70 >70 >7 0 mm
- 超长焦> 200 >200 >2 0 0 mm
- 能力:
- 短焦距的光学系统比长焦距的光学系统有更佳聚集光的能力。
- 同样主体大小,长焦距离主体更远,长焦的背景依然更虚化。
- 常用题材:
- 人像:35mm – 85mm F1.4 F1.8
- 风光:70mm – 200mm F4 F2.8
; 相机可用参数
知己知彼嘛,记录一下我可以控制的一些参数。
- 焦距:24mm – 70mm
- 最近对焦距离:0.38m
- 最小光圈:22
- 快门速度:
- 静态图像:1/8000秒至30秒,B门;
- 动态影像: 1/8000秒至1/4秒(1/3步级)
- 质量:886 g + 580 g = 1466 g 886g + 580g = 1466g 8 8 6 g +5 8 0 g =1 4 6 6 g
- 有效像素:6100万有效像素
- 降噪:长时间曝光降噪,高感光度降噪
- 防抖:镜头防抖(OSS 镜头)和影像传感器位移方式(5轴防抖)
第一次 拍摄
2022年05月06日
从上次买相机后,上海疫情爆发就没出过门了。相机放包里吃了两个月的灰。
今天听朋友讲会有宝瓶座η \eta η流星雨,有了在阳台拍摄星空的想法。
被封在家太无聊了所以打算开启我的第一次拍摄。
- 今天尝试了两种拍摄方式,由于对面的QJ酒店的招牌太亮与星星太少,最后以失败而告终。
- 本次只以记录A7R4 怎么设置为主。
A7R4 延时摄影设置
学习这篇博客《使用索尼微单™间隔拍摄功能——拍摄延时视频教程》 图文来源:三夏shiny
- 在
Menu
中的相 机 1 相机_1 相机1 设置中可以设置以下一系列参数。


- 间隔拍摄:是否开启间隔拍摄功能,设置为开
- 拍摄开始时间:按下快门后间隔多少时间启动隔间拍摄(1秒-99分59秒),一般设置5秒
- 拍摄间隔:两张照片的间隔时间(1-60秒),一般设置5秒(日落、日出、车流、云朵)
- 拍摄次数:一共拍摄多少张照片(最多到9999张),如发朋友圈10秒视频设置250张即可。
- AE跟踪灵敏度:根据光线变化而调整快门速度的灵敏度,设置灵敏度低曝光会更加平滑。
- 拍摄时间:完成间隔拍摄所需要的时间,由拍摄次数*拍摄张数决定
- 间隔内的静音拍摄:开启静音拍摄,减少机械快门损耗和震动。
- 拍摄间隔优先:如果设置拍摄间隔为5秒,若现场曝光时间需要8秒,则将以拍摄间隔5秒为曝光时间,不建议开启
生成延时视频,这次没做。因为拍的不好,没心情弄。
; A7R4 基础设置
- 因为拍摄照片以学习为主,以后拍摄将以全手动设置参数为主。在相机右上角圈圈调整至
M
。 - 下图这个转轮可调整快门速度
- 下图这个转轮可调整光圈大小
- 下图按下→键可进入iso设置界面
A7R4 长曝光设置
- 三脚架固定相机来保持稳定。
- 调整快门速度至最大
>30''
可进入BULB
模式(俗称 B门)。 - ISO 调大。
- 在
menu
中进入联网模式,连接手机控制。 - 以手机充当快门线进行拍摄,拍摄时间为手动开关。
星空拍摄的实用设置
从《星空拍摄实用技巧参数详解》– 慕色摄影MUSE STUDIO 中摘录
镜头焦段光圈快门ISO图示15mm鱼眼F4.025”5000

15mm鱼眼F4.0900”400

35mmF2.84000”100

35mmF2.8550”400

35mmF2.040”2500

28mmF2.840”2500

28mmF4.02000”100

24mmF4.0200”100

28mmF4.0600”100

- 由上面参数可知,iso与曝光时长有关。曝光时间越长,其对光线的灵敏度(ISO)就需要越低。
- 曝光时间越就,星星运动产生的运动轨迹就越长。
- 常用光圈为 F4.0 与 F2.8。要用大光圈。
- 使用小焦距。
第一次拍摄总结
- 由于阳台对面QJ酒店招牌太亮了,所以一开始以为遮光罩可以遮挡一些招牌光线,但最后光线照射到遮光罩内部会对照片形成光圈。(在写博客时调整后期参数才发现的)
- 因为是工作日,大概随便拍了下,没有对参数进行详细的对比拍摄研究。
Original: https://blog.csdn.net/Varalpha/article/details/123313868
Author: Varalpha
Title: 记录一些关于学习摄影的东西(从入门到放弃)
相关阅读
Title: 复现KGAT: Knowledge Graph Attention Network for Recommendation(三)
复现KGAT: Knowledge Graph Attention Network for Recommendation(三)
昨天写了复现KGAT系列的第二篇文章,准确的说那片文章里第二部分是昨天写的,第三部分是今天写的。如果再连着写下去就太长了,不如正好把第四部分单拿出来写,正好第四部分是实验部分,也是我复现论文需要关注的主要部分。
能挤出很多时间来复现论文真的很不容易,估计今天写完明天就没有什么时间来继续写了,也不知道再写又会是什么时候了。
[En]
It is really not easy to squeeze out a lot of time to reproduce the paper. It is estimated that after writing today, there will be no time to continue writing tomorrow, and I do not know when it will be written again.
4.EXPERIMENTS
我们在三个真实数据集上估计了我们提出的方法,特别是嵌入传播层,我们的目标是回答以下三个研究问题:
[En]
We estimate our proposed approach on three real data sets, especially the embedded communication layer, and our goal is to answer the following three research questions:
RQ1:KGAT与最先进的知识感知推荐方法比表现如何?
RQ2:不同的内容(比如说,知识图谱嵌入(konwledge graph embedding),注意力机制(attention mechanism)和聚集器选择(aggregator selection))对KGAT的影响如何?
RQ3:KGAT可以为用户对于物品的的偏好做出合理的解释吗?
4.1 Dataset Description
为了评估KGAT的效果,我们利用了三个分支数据集:Amazon-book,Last-FM和Yelp2018,这三个数据集都是公开可获得的并且在域、大小和稀疏程度上都是不同的。
Amazon-book: Amazon-review是被产品推荐广泛使用的数据集。我们从这个集合中选取了Amazon-book数据集。为了保证数据集的质量,我们使用了10-core的设置,即保留至少有10个交互的用户和物品。
Last-FM: 这是音乐收听数据集,收集自Last.fm 在线音乐系统。其中,tracks被视作items。特别的,我们使用时间从2015.1 到2015. 6期间的数据子集。同样的,我们使用10-core的设置保证数据质量。
Yelp2018: 这个数据集收集自2018版的黄色挑战。因此我们将当地的商业,比如说餐馆和酒吧看作是item。同样的,我们使用了10-core设置来确保用户和物品有最少10词交互。
除了用户和物品的交互,我们需要对每个数据集构造物品的知识。对于Amazon-book和Last-fm,如果有映射,我们通过标题匹配将项目映射到freebase entity(自由基础实体)。特别的,我们考虑与和物品对齐的实体直接相关的三元组,无论他是subject还是object。和仅提供物品一跳实体的知识感知数据集不同,我们将包括两跳邻居的实体的三元组也考虑在内。对于Yelp2018,我们从当地商业的信息网络(比如说,分类,地点和属性)中提取物品的知识作为KG数据。为了确保KG的质量,我们通过过滤掉不常用的实体(在两个数据集中都低于10)和保持至少在50个三元组中出现的关系来处理三个KG部分。我们总结了三个数据集的的特性(见下表)然后将数据集发布在了t https://github.com/xiangwang1223/knowledge_graph_attention_network.这个网址上。

对于每个数据集,我们随机选取交互历史的80%作为训练集,剩下的部分作为测试集。对于训练集,我们随机选取10%的交互作为验证集来调整超参数。对于每一个观测到的uesr-item交互,我们将他们看作是正样本,然后执行负采样策略来为正样本配对,这个负样本是用户之前没有消费过的。
; 4.2 Experimental Settings
4.2.1 Evaluation Metrics(评估指标):对于测试集中的每一个用户,我们将用户没有交互过的物品看作是负样本。然后,每一个方法都输出用户对于每一个不在训练集中的正样本的偏好分数。为了评估top-K推荐的效率和喜爱度的排名,我们采用了两种广泛使用的评估策略:recall@K、ndcg@K。默认的,K=20。我们报告了对于所有用户在测试集中的平均指标。
4.2.2 Baseline:为了证明有效性,我们对比了我们提出的KGAT和SL(FM和NFM)、基于正则化的方法(CFKG和CKE)、基于路径的方法(MCRec和RippleNet)和基于图神经网络的方法(GC-MC),如下:
1)FM: factorization model的简写,矩阵分解。FM考虑了在输入之间的两级特征交互。这里我们将用户ID、物品的ID以及物品的知识(也就是和他关联的实体)作为输入。
2)NFM: 这个方法是现在很流行的矩阵分解模型,将FM归入到了神经网络下面。特别的,按照建议,我们在输入特征部署了一个隐藏层。
3)CKE: 这是一种典型的正则化方法,它探索了起源于TransR的语义嵌入增强了矩阵分解。
4)CFKG: 这个模型在包括了用户、物品、实体和关系的统一图上应用了TransE,并将推荐系统转化为了三元组的合理性预测。
5)MCRec: 这是基于路径的模型,在用户和和项目之间提取了符合条件的元路径作为连接。
6)RippleNet: 这个模型结合了基于正则化和基于路径的的方法,通过在根于每个用户的路径中添加项来丰富用户的表示。
7)GC-MC: 这个模型设计是为了在基于图结构的数据上部署GCN编码器,特别是对于user-item的二部图。特别的,按照建议我们部署了一个图卷积层,这里的隐藏层维度和嵌入层维度是相同的。
4.2.3 Parameter Settings:参数设置。我们在tensorflow上部署了我们的KGAT模型。对于所有模型,嵌入层的大小固定为64,但是由于RippleNet的高计算代价,我们在RippleNet上使用了16。对于所有模型,我们均使用了Adam优化器,batch大小均为1024,默认的初始化参数的初始化器为Xavier 初始化器。我们对于超参数使用了网格搜索:学习率被调整的范围是{0.05,0.01,0.005,0.001},L2正则化系数搜索范围是:

4.3 Performance Comparison(RQ1)
[ RQ1:KGAT与最先进的知识感知推荐方法比表现如何? ]
我们首先报告了所有方法的表现,然后研究了高阶关联模型(the modeling of high-order connectivity)如何减轻稀疏问题。
4.3.1 Overall Comparison (总体比较)
表现比较结果呈现在了表2中,有以下观察:

1)KGAT始终在所有数据集上有最佳表现。特别的,KGAT提升了最强基线recall@20在Amazon-book上是8.95%,Last-FM是4.93%,Yelp2018是7.18%。 通过叠加多个注意力嵌入传播层,KGAT能够使用显式的方式探索高阶关连关系,所以能够有效的捕捉协同信号。这个方式验证了传递知识时捕捉协同过滤信号的重要性。更多的,和GC-MC相比,KGAT证明了注意力机制的有效性,制定了注意力的权重也就是组合语义关系,而不是像GC-MC一样使用了固定的权重。
2)SL方法(FM、NFM)在很多案例下都取得了比CFKG和CKE更好的表现,这表明了基于正则化的方法很可能没有充分利用物品的知识。特别的,为了丰富物品的表现,FM和NFM探索了和他关联的实体的嵌入层,而CFKG和CKE只是用了和他对齐的实体。更多的,在FM和NFM中的交叉特征实际上充当了用户和实体之间的第二阶关联关系,然而CFKG和CKE在对三元组的关联关系建模的粒度并没有使用高阶关联关系。
3)和FM相比,RippleNet的表现证实了混合了两跳邻居对于丰富用户表现是很重要的。他也因此指出了对于高阶关联关系和邻居进行建模是有积极效果的。然而,在Amazon-book数据集上RippleNet表现有一点不如NFM和Last-FM,但是比Yelp2018表现的好一点。一个可能的原因是NFM有更强的表达,隐藏层允许NFM去捕捉用户、物品和实体之间非线性和混合交互特征。
4)RippleNet在亚马逊数据集上比MCRec表现要好得多。一个可能的原因是MCRec很强的依赖于元路径的质量,这个需要大量的域知识才能去定义。
5)GC-MC和RippleNet在Last-FM和Yelp2018数据集上表现效果相当。当像用户和物品表现引入高阶关联的时候,GC-MC放弃了节点之间的语义关系,然而RippleNet利用了这个关系引导了用户表现的探索。
4.3.2 Performance Comparison w.r.t. Interaction Sparsity Level
利用KG的一个目的是解决稀疏性的问题,稀疏性常常限制了推荐系统的表现。很难对有很少交互数据的用户有很好的表示。因此我们研究探索关联关系信息是否有助于解决稀疏性问题。
朝着这个目标,我们用关于用户不同稀疏程度的数据组来进行实验。特别的,我们根据每个用户的交互数据量将数据集分为四组,同时尝试使每个组的交互数据总量是相同的。以Amazon-book数据集作为例子,每个用户交互数据量分别小于7,15,48,4475。图三(下图)说明了关于ndcg@20在Amazon-book,Last-FM和Yelp2018在不同用户组上的结果。

我们可以看到:
1)KGAT在大多数案例下表现都比其他模型好,尤其是在Amazon-Book和Yelp2018的两个最稀疏的用户组上。这再次证明了高阶关联关系模型的重要性,一个是包含了低阶关联关系在基线上的使用,其二通过递归地嵌入传播丰富了不活跃用户的表现。
2)值得指出的是,KGAT在一些密度很大的群组上表现的比基线稍微好一些。一个可能的原因,交互过多的偏好过于普遍,无法捕捉。高阶关连关系可能会在用户偏好上引入噪声,从而使模型表现下降。
; 4.4 Study of KGAT(RQ2)
[ RQ2:不同的内容(比如说,知识图谱嵌入(konwledge graph embedding),注意力机制(attention mechanism)和聚集器选择(aggregator selection))对KGAT的影响如何? ]
为了深入了解KGAT的专注嵌入传播层,我们研究了它的影响。我们首先研究了层数的影响。然后我们探索了聚合器对模型表现影响有什么不同。接着,我们检查了知识图谱嵌入和注意力机制的影响。
4.4.1 Effect of Model Depth
我们改变了KGAT的深度(也就是L)来研究使用多个嵌入传播层的效率。特别的,层数在{1,2,3,4}之间探索,我们使用KGAT-1来表示只有一层的模型,其他的符号相似。我们将结果总结在了Table3上(如下图),有如下的观察:

1)增加KGAT的深度能够大大提高性能。显然,KGAT-2和KGAT-3全面实现了比KGAT-1连续的提升。我们将这种提升归因为在用户、物品、实体之间有效的高阶关系建模,这分别由二阶、三阶的关联关系实现。
2)在KGAT-3上继续叠加一层,我们观察到KGAT-4只获得了很少的提升。这说明了在实体间使用三阶关系就能有效地捕捉协同信号。
3)将表2和表3连起来分析,在大多数案例下KGAT-1表现的不错。他再次证明了注意力嵌入传播的有效性,实验结果证明他对一阶关系建模更好。
4.4.2 Effect of Aggregators
为了探索聚合器的影响,我们讨论使用不同设置的KGAT-1的变体,特别的,GCN,GraphSage和Bi-Interaction被称为KGAT-1GCN,KGAT-1GraphSage和KGAT-1Bi-Interaction。表4(见下图)总结了实验结果,有如下发现:

1)KGAT-1GCN表现持续优于KGAT-1GraphSage。一个可能的原因是GraphSage没有在实体表示eh和它的ego-network表示之间有交互。他也因此证明了在信息传播和聚集中特征交互的重要性。
2)和KGAT-1GCN相,比KGAT-1Bi证实了将额外的特征交互混合进来可以提高表示学习,他再次证明了Bi-Interaction聚合器的合理性和有效性。
4.4.3 Effect of Koneledge Graph Embedding and Attention Mechanism 知识图谱嵌入和注意力机制的效果
为了证实知识图谱嵌入和注意力机制的影响,我们在考虑了三个不同KGAT-1的情况下做了消融实验。特别地,我们使KGAT中TransR的嵌入内容失效,将这个模型叫做KGAT-1 w/o KGE,我们将注意力机制失效,并且将pai(h,r,t)的值设置为1/|Nh|,这个模型叫做 KGAT-1 w/o Att。更多的,我们将另一种将两个内容都去掉的模型种类叫做KGAT-1 w/o K&A。我们在列表5中总结了以下发现:

1)将知识图嵌入和注意力内容都移走会降低模型表现。KGAT-1 w/o K&A 比KGAT-1 w/o KGE和KGAT-1 w/o Att表现得都不好。 这表示了KGAT-1 w/o K&A不能在三元组三元组力度上显示地对相关表示进行建模。
2)和KGAT-1 w/o Att相比,KGAT-1 w/o KGE在大多数案例下表现的好,一个可能的原因是,将邻居们平等的看待可能会引入噪声并且误导嵌入传播过程。他证明了图注意力机制的重要影响。
4.5 Case Study(RQ3)
受益于注意力机制,我们可以推理高阶连接来推断用户目标项的偏好,并提供解释。为了这个目标,我们从Amazon-Book中选取了一个用户u208,和一个相关的物品i4293(来自测试集,在训练阶段不可见)。我们根据注意力分数抽取了基于行为和基于属性的连接了用户-物品对的高阶关系,图4(下图)展示了高阶关联关系的可视化表示。这里有两个关键的发现:

1)KGAT捕捉了基于行为的和基于属性的高阶关联,该关联对于推断用户的偏好起着十分重要的作用。恢复的路径可以看作是物品满足用户偏好的证据。正如我们看到的,如下关联有着最好的注意力分值。

该路径在Figure4左边子图中用实线标出来了。因此我们可以解释The last Colony会被推荐出来是因为看过了John Scalzi写的Old Man’s War。
2)物品知识的质量至关重要。因为我们可以看到,实体 _English_和关系 _Original Language_在同一条路径中。这激励我们在未来的工作中努力过滤信息较少的实体。
; 总结
文章读完了,从开始读到读完总共花了13.5个小时,这个速度还是可以接受的。接下来要开始真的复现了。代码,啊,是代码。。。今天周三,这周还能搞KGAT的时间应该是寥寥无几了,准确的说应该是没有时间做他了,事情,啊,事情,啊,好多事情。。。
Original: https://blog.csdn.net/weixin_45665465/article/details/115664647
Author: Lalune21
Title: 复现KGAT: Knowledge Graph Attention Network for Recommendation(三)
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/197476/
转载文章受原作者版权保护。转载请注明原作者出处!