KL divergenceに与える分布を入れ替えることの意味をまじめに考えたことあります?

KL divergenceに与える分布を入れ替えることの意味をまじめに考えたことあります?

本記事はQrunchからの転載です。


みんながよく使うKL(Kullback–Leibler) divergenceの話題です。 KL divergenceといえば2つの確率分布の違いを計算できるやつですね。 KL divergenceは対称性というものがなく、与えられた2つの分布を入れ替えるとKL divergenceの値が変わります。 今回は、この入れ替えたときの影響を最小化問題を例としてまじめに考えます。

画像と自然言語でのマルチモーダルなImageBERT

画像と自然言語でのマルチモーダルなImageBERT

本記事はQrunchからの転載です。


最近Microsoftから発表されたImageBERTについて紹介します。
ImageBERTはBERTの入力に自然言語だけではなく、画像も受け付けるようにしたマルチモーダルなモデルです。 また論文ではモデルのアーキテクチャだけではなく、学習方法にも新たな提案がされています。
実験ではImage-to-Sentenceでの検索とSentence-to-Imageの検索タスクでSOTAが示されています。

Flutterで吹き出しを作る

本記事はQrunchからの転載です。


吹き出しのライブラリ

Flutterで吹き出しを出すためのライブラリとしてBubbleがあります。こちらを使うと吹き出しを簡単に表示できます。 もう一つSpeechBubbleというライブラリもありますが、Bubbleのほうが色々オプションが設定できます。

Bubble

Bubbleを使うと以下のような吹き出しが簡単に表示できます。

Pythonのnamedtupleを使おう

本記事はQrunchからの転載です。


Pythonのnamedtuple使ってますか? 案外使っていない方が多いので、ご紹介しておきます。

namedtupleとは?

通常のタプルはインデックス指定でのみ要素を参照します。一方で、NamedTupleはタプルの各要素を名前によって参照できます。
例えばpというnamedtupleの要素にnameというものがあれば、次のようにして参照できます。

BERTを軽量化したALBERTの概要

BERTを軽量化したALBERTの概要

本記事はQrunchからの転載です。


BERTのパラメータの数を減らしたモデルであるALBERTについての概要を書いていきます。

参考論文:ALBERT: A Lite BERT for Self-supervised Learning of Language Representations

問題意識

2018年に提案されたBERTは自然言語界隈では非常に上手くいった手法です。先程論文の引用数を見たら、もう3000を超えていまして、この数字を見てもよくわかります。