ArcFace: Additive Angular Margin Loss for Deep Face Recognitionharmonylab
出典: Jiankang Deng, Jia Guo, Niannan Xue, Stefanos Zafeiriou : ArcFace: Additive Angular Margin Loss for Deep Face Recognition, Proceedings of the IEEE/CVF conference on computer vision and pattern recognition (2019)
公開URL:https://arxiv.org/abs/1801.07698
概要 : 顔認識のための畳み込みニューラルネットワーク(DCNN)の課題は識別力を高める適切な損失関数を設計することです。本論文では、顔認識のための識別性の高い特徴量を得るために、Additive Angular Margin Loss (ArcFace)を提案します。一般的な顔認識ベンチマークから1兆ペアの大規模データセットなどを用いて、最先端顔認識技術との比較実験を行いました。結果は、従来手法を凌駕する精度を持つことが明らかになりました。
ArcFace: Additive Angular Margin Loss for Deep Face Recognitionharmonylab
出典: Jiankang Deng, Jia Guo, Niannan Xue, Stefanos Zafeiriou : ArcFace: Additive Angular Margin Loss for Deep Face Recognition, Proceedings of the IEEE/CVF conference on computer vision and pattern recognition (2019)
公開URL:https://arxiv.org/abs/1801.07698
概要 : 顔認識のための畳み込みニューラルネットワーク(DCNN)の課題は識別力を高める適切な損失関数を設計することです。本論文では、顔認識のための識別性の高い特徴量を得るために、Additive Angular Margin Loss (ArcFace)を提案します。一般的な顔認識ベンチマークから1兆ペアの大規模データセットなどを用いて、最先端顔認識技術との比較実験を行いました。結果は、従来手法を凌駕する精度を持つことが明らかになりました。
[DL輪読会]Libra R-CNN: Towards Balanced Learning for Object DetectionDeep Learning JP
Libra R-CNN is a paper that was presented at CVPR2019. It analyzes three major issues in existing object detection methods: imbalance at the sample extraction stage, feature extraction stage, and optimization stage. To address these, it proposes IoU-balanced sampling to better select hard negative samples, a Balanced Feature Pyramid to better integrate features from different layers, and a Balanced L1 loss function to improve optimization. Experiments show the proposed methods effectively improve object detection performance over existing state-of-the-art methods on the COCO dataset.
1. Materials Informatics uses Python tools like RDKit for analyzing molecular structures and properties.
2. ORGAN and MolGAN are two generative models that use GANs to generate novel molecular structures based on SMILES strings, with ORGAN incorporating reinforcement learning to optimize for desired properties.
3. Tools like RDKit enable analyzing molecular fingerprints and descriptors that can be used for machine learning applications in materials informatics.
[DL輪読会]Libra R-CNN: Towards Balanced Learning for Object DetectionDeep Learning JP
Libra R-CNN is a paper that was presented at CVPR2019. It analyzes three major issues in existing object detection methods: imbalance at the sample extraction stage, feature extraction stage, and optimization stage. To address these, it proposes IoU-balanced sampling to better select hard negative samples, a Balanced Feature Pyramid to better integrate features from different layers, and a Balanced L1 loss function to improve optimization. Experiments show the proposed methods effectively improve object detection performance over existing state-of-the-art methods on the COCO dataset.
1. Materials Informatics uses Python tools like RDKit for analyzing molecular structures and properties.
2. ORGAN and MolGAN are two generative models that use GANs to generate novel molecular structures based on SMILES strings, with ORGAN incorporating reinforcement learning to optimize for desired properties.
3. Tools like RDKit enable analyzing molecular fingerprints and descriptors that can be used for machine learning applications in materials informatics.
2022年3月26日に開催されたイベント「CDLE DAY 2022春」の公開資料です。
参加者5万人を超える日本最大級のAIコミュニティとなったCDLEそのものを紹介する内容や、今までのイベント、そして今後の企画等が目白押しで盛りだくさんの内容となっています。
※CDLEとは、日本ディープラーニング協会主催の資格試験に合格した人が入れるコミュニティ
2021年11月27日に開催されたイベント「CDLE DAY 2021秋」の公開資料です。
参加者5万人を超える日本最大級のAIコミュニティとなったCDLEそのものを紹介する内容や、今までのイベント、そして今後の企画等が目白押しで盛りだくさんの内容となっています。
※CDLEとは、日本ディープラーニング協会主催の資格試験に合格した人が入れるコミュニティ
2020年11月28日に開催されたイベント「CDLE DAY 2020」の公開資料です。
参加者3万人を超える日本最大級のAIコミュニティとなったCDLEそのものを紹介する内容や、今までのイベント、そして今後の企画等が目白押しで盛りだくさんの内容となっています。
※CDLEとは、日本ディープラーニング協会主催の資格試験に合格した人だけが入れるコミュニティ
28. 27
どっちが良いコード?
public class PerformanceTester
{
public statc final TcpConnectionSimulator wifi = new TcpConnectionSimulator(
500, /*Kbps*/
80, /*msec latency*/
200,/*jitter*/
1/*packet loss %*/);
public static final TcpConnectionSimulator t3_fibar = new TcpConnectionSimulator(
45000,
10,
0,
0);
public static final TcpConnectionSimulator cell = new TcpConnectionSimulator(
100,
400,
250,
5);
}
(A)
public class PerformanceTester
{
// TcpConnectionSimulator(throughput, latency, jitter, packet_loss)
// [kbps] [ms] [ms] [%]
public statc final TcpConnectionSimulator wifi =
new TcpConnectionSimulator(500, 80, 200,1);
public static final TcpConnectionSimulator t3_fibar =
new TcpConnectionSimulator(45000, 10, 0, 0);
public static final TcpConnectionSimulator cell =
new TcpConnectionSimulator(100, 400, 250, 5);
}
(B)
4つの引数を持つTcpConnectionSimulatorクラスを使って、3つのインスタンスを作る。
1.接続速度(kbps) 2.平均遅延時間(msec) 3.遅延時間(msec) 4.パケットロス率(percent,%)
29. 28
どっちが良いコード?
public class PerformanceTester
{
public statc final TcpConnectionSimulator wifi = new TcpConnectionSimulator(
500, /*Kbps*/
80, /*msec latency*/
200,/*jitter*/
1/*packet loss %*/);
public static final TcpConnectionSimulator t3_fibar = new TcpConnectionSimulator(
45000,
10,
0,
0);
public static final TcpConnectionSimulator cell = new TcpConnectionSimulator(
100,
400,
250,
5);
}
(A)
public class PerformanceTester
{
// TcpConnectionSimulator(throughput, latency, jitter, packet_loss)
// [kbps] [ms] [ms] [%]
public statc final TcpConnectionSimulator wifi =
new TcpConnectionSimulator(500, 80, 200,1);
public static final TcpConnectionSimulator t3_fibar =
new TcpConnectionSimulator(45000, 10, 0, 0);
public static final TcpConnectionSimulator cell =
new TcpConnectionSimulator(100, 400, 250, 5);
}
(B)
4つの引数を持つTcpConnectionSimulatorクラスを使って、3つのインスタンスを作る。
1.接続速度(kbps) 2.平均遅延時間(msec) 3.遅延時間(msec) 4.パケットロス率(percent,%)
シルエットを意識する
30. 29
どっちが良いコード?
CheckFullName("doug Adams","Mr.Doglas Adams","");
CheckFullName("Jake Brown","Mr. Jake Brown III","");
CheckFullName("No such Guy","","no match found");
CheckFullName("John","","more than one result");
CheckFullName("doug Adams" ,"Mr.Doglas Adams" ,"");
CheckFullName("Jake Brown" ,"Mr. Jake Brown III" ,"");
CheckFullName("No such Guy" ,"" ,"no match found");
CheckFullName("John" ,"" ,"more than one result");
(A)
(B)
31. 30
どっちが良いコード?
CheckFullName("doug Adams","Mr.Doglas Adams","");
CheckFullName("Jake Brown","Mr. Jake Brown III","");
CheckFullName("No such Guy","","no match found");
CheckFullName("John","","more than one result");
CheckFullName("doug Adams" ,"Mr.Doglas Adams" ,"");
CheckFullName("Jake Brown" ,"Mr. Jake Brown III" ,"");
CheckFullName("No such Guy" ,"" ,"no match found");
CheckFullName("John" ,"" ,"more than one result");
(A)
(B) 私のチームでは、こっちを「良いコード」と定義・・・できるかどうか微妙。
シルエットを意識する
54. 53
どっちが良いコード?
<script>
var f = function(){
for( i = 0; i < 10 ; i += 1 )...
};
f();
</script>
<script>
alert(i);
</script>
(A)
<script>
var f = function(){
for( var i = 0; i < 10 ; i += 1 )...
};
f();
</script>
<script>
alert(i);
</script>
(B)
←10が表示される ←undefined
55. 54
どっちが良いコード?
<script>
var f = function(){
for( i = 0; i < 10 ; i += 1 )...
};
f();
</script>
<script>
alert(i);
</script>
(A)
<script>
var f = function(){
for( var i = 0; i < 10 ; i += 1 )...
};
f();
</script>
<script>
alert(i);
</script>
(B)
私のチームでは、こっちを
「良いコード」と定義します。
変数のスコープを縮める
←10が表示される ←undefined