\documentclass[japanese]{jnlp_3.5}
\usepackage{jnlpbbl_2.2}
\usepackage[dvipdfmx]{graphicx}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{url}
\usepackage{hangcaption_jnlp}
%%%%\usepackage{udline}
%%%%\setulminsep{1.2ex}{0.2ex}
%%%%\let\underline=\ul
\allowdisplaybreaks
\usepackage{array}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% author's definition
\usepackage{multirow}
%%%%\usepackage{appendix}
%%%%\usepackage[mathscr]{euscript}
%%%%\usepackage{seqsplit}
%%%%\usepackage[utf8]{inputenc}
%%%%\def\MORI#1#2{\underline{#1} \textcolor{red}{#2}}
%%%%\def\ADD#1{\textcolor{red}{#1}}
%%%%\newcommand{\ds}{\ensuremath{\mathcal D}}
%%%%\newcommand{\E}{\ensuremath{\mathbb E}}
%%%%\newcommand{\Prob}{\ensuremath{\mathrm{Pr}}}
%%%%% input
\newcommand{\X}{\mbox{\boldmath $X$}}
\newcommand{\Hvec}{\mbox{\boldmath $H$}}
\newcommand{\Y}{\mbox{\boldmath $Y$}}
%%%%\newcommand{\y}{\mbox{\boldmath $y$}}
%%%%\newcommand{\Ypred}{\hat{\Y}}
\newcommand{\F}{\mbox{\boldmath $F$}}
%%%%\newcommand{\V}{\mbox{\boldmath $\mathcal{V}$}}
%%%%\newcommand{\Gset}{\mbox{\boldmath $\mathcal{G}$}}
%%%%\newcommand{\video}{\mbox{\boldmath $v$}}
%%%%\newcommand{\ingredient}{\mbox{\boldmath $g$}}
%%%%\newcommand{\e}{\mbox{\boldmath $e$}}
%%%%\newcommand{\h}{\mbox{\boldmath $h$}}
%%%%\renewcommand{\L}{\mathcal{L}}
%%%%\newcommand{\Hset}{\mbox{\boldmath $\mathcal{H}$}}
%%%%\def\Bdma#1{\mbox{\boldmath{$#1$}}}
%%%%\renewcommand{\ss}{{v\rightarrow v}}
%%%%\newcommand{\ins}{{mat\rightarrow v}}
%%%%\newcommand{\biLSTM}{\mathrm{biLSTM}}
%%%%\newcommand{\VI}{{\sf VI} }
%%%%\newcommand{\VIV}{{\sf VIV} }
%%%%\newcommand{\VIVT}{{\sf VIVT} }
\def\tabref#1{表\ref{#1}}
\def\figref#1{図\ref{#1}}
\def\secref#1{節\ref{#1}}
%%%%\def\eqref#1{式(\ref{#1})}
%%%%\newcommand{\etal}{\textit{et al}.~}
%%%%\def\vspaceS{\vspace*{-0.5em}} % Section
%%%%\def\vspaceM{\vspace*{-1.0em}} % Euqation
%%%%\definecolor{deepgreen}{rgb}{ .0, .44, .0}
%%%%\newcounter{counterA}
%%%%\setcounter{counterA}{0}
%%%%\newcounter{counterB}
%%%%\setcounter{counterB}{0}
%%%%\newcounter{counterMeta}
%%%%\setcounter{counterMeta}{0}
%\newcommand{\usecounterA}[1][]{\refstepcounter{counterA}{#1}$^{\thecounterA}$}
%\newcommand{\usecounterB}[1][]{\refstepcounter{counterB}{#1}$^{\thecounterB}$}
%\newcommand{\usecounterMeta}[1][]{\refstepcounter{counterMeta}{#1}$^{\star\thecounterMeta}$}
%\def\RepA#1{\textcolor{red}{\usecounterA#1}} % Do not forget to delete this.
%\def\RepMathA#1{\textcolor{red}{#1}}
%\def\RepB#1{\textcolor{blue}{\usecounterB#1}}
%\def\RepMathB#1{\textcolor{blue}{#1}}
%\def\RepMeta#1{\textcolor{deepgreen}{\usecounterMeta#1}}
%%%%\def\RepA#1#2{\textcolor{red}{$^{#1}$#2}}
%%%%\def\RepB#1#2{\textcolor{blue}{$^{#1}$#2}}
%%%%\def\RepMeta#1#2{\textcolor{deepgreen}{$^{#1}$#2}}
%%%%\renewcommand\UrlFont{\rmfamily}
%%%%\newcommand{\Lagr}{L}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\Volume{29}
\Number{4}
\Month{December}
\Year{2022}
%%%%\Issuetitle{「　　　　」特集号}

\received{2022}{5}{13}
\revised{2022}{7}{26}
\accepted{2022}{8}{30}

\setcounter{page}{1106}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\jsubject{一般論文}
\jtitle{BioVL2データセット：生化学分野における一人称視点の\\実験映像への言語アノテーション}
\jauthor{西村　太一\affiref{KU} \and 迫田航次郎\affiref{KU} \and 牛久　　敦\affiref{KU} \and 橋本　敦史\affiref{OSX} \and 奥田奈津子\affiref{OMP} \and \\小野富三人\affiref{OMP} \and 亀甲　博貴\affiref{KUA} \and 森　　信介\affiref{KUA}}
\jabstract{
本論文では，生化学分野における一人称の実験映像データセットであるBioVL2データセットを提案する．BioVL2データセットは生化学における4種類の基本的実験に対し，それぞれ8動画撮影した合計32，総時間2.5時間の映像からなるデータセットである．各映像はプロトコルと紐づいており，言語アノテーションとして(1)視覚と言語の対応関係のアノテーション，(2)プロトコル中に現れる物体の矩形アノテーションの2種類のアノテーションを付与している．構築したデータセットの応用例として，本研究では実験映像からプロトコルを自動生成する課題に取り組んだ．定量的，定性的な評価の結果，開発した手法はフレームに映っている物体名をそのままプロトコルとして出力する弱いベースラインと比較して，適切なプロトコルを生成できることを確認した．なお，BioVL2データセットは研究用途に限定してデータセットを公開する予定である\footnote{本論文は\cite{nishimura2021iccvw}で発表したBioVLデータセットの拡張版である．拡張内容については，1節の最終段落を参照されたい．}．}
\jkeywords{生化学分野，プロトコル，視覚と言語の融合研究}

\etitle{BioVL2: An Egocentric Biochemical \\ Video-and-Language Dataset}
\eauthor{Taichi Nishimura\affiref{KU} \and Kojiro Sakoda\affiref{KU} \and Atsushi Ushiku\affiref{KU} \and Atsushi Hashimoto\affiref{OSX} \and Natsuko Okuda\affiref{OMP} \and Fumihito Ono\affiref{OMP} \and Hirotaka Kameko\affiref{KUA} \and Shinsuke Mori\affiref{KUA}}
\eabstract{
In this study, we propose an egocentric biochemical video-and-language dataset called BioVL2 comprising eight videos for each of four experiments, with a total duration of 2.5 hours for all 32 samples. Each video corresponds to a protocol and two types of linguistic annotations are provided: (1) video-and-text alignment and (2) bounding boxes linked to objects in the protocol. As an application of the BioVL2 dataset, we consider the task of generating a protocol from an experimental video. Our experimental results show that the proposed system can generate better protocols than a weak baseline designed to output objects appearing in the video frames. The BioVL2 dataset will be released for research purposes only.}
\ekeywords{Biochemical Domain, Protocols, Vision-and-Language}

\headauthor{西村，迫田，牛久，橋本，奥田，小野，亀甲，森}
\headtitle{BioVL2データセット}

\affilabel{KU}{京都大学大学院情報学研究科}{Graduate School of Informatics, Kyoto University}
\affilabel{OSX}{オムロン サイニックエックス株式会社}{OMRON SINIC X Corporation}
\affilabel{OMP}{大阪医科薬科大学医学部生命科学講座生理学教室}{Department of Physiology, Division of Life Sciences, Faculty of Medicine, Osaka Medical College}
\affilabel{KUA}{京都大学学術情報メディアセンター}{Academic Center for Computing and Media Studies, Kyoto University}



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
\maketitle


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 1
\begin{figure}[b]
\begin{center}
\includegraphics{29-4ia3f1.pdf}
\end{center}
\hangcaption{BioVL2データセットの概要．(a)の視覚と言語の対応関係のアノテーションに加え，(b)プロトコル中に現れる物体の矩形アノテーションを付与している．}
\label{fig:overview}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\section{はじめに}
\label{sec:introduction}

科学は再現性の危機に瀕している．生化学や生命科学などの薬品を用いた化学実験を行う研究分野においては，75\%から80\%以上の研究者が他の研究者の実験結果を再現することができなかった経験があると報告している\cite{baker2016nature}．
化学実験で再現性を担保する上で鍵となるのがプロトコルである．プロトコルは人がある実験を再現するために必要な操作を時系列順に記述した文書である（\figref{fig:overview}）．プロトコルには，試薬や装置などの操作対象の物体名と，対応する操作方法が動詞で，実験を再現するのに必要十分な記述がされている\footnote{自明である物体名に関しては省略されることもある．例えば，\figref{fig:overview}の手順2では手順1の成果物を指しているが，明示的に記述してはいない．}．加えて，必要であれば物体の量や，操作する時間，あるいは操作の様態が副詞で記述されていることもある．例えば，\figref{fig:overview}の手順3の``Thoroughly resuspend pellet with 250 $\mu$L of Cell Resuspension Solution''では，pellet，Cell Resuspension Solutionという物体名の記述があり，resuspendという操作方法が動詞で記述されている．加えて，Thoroughlyという副詞や250 $\mu$Lという量に関する記述もある．こうしたプロトコルに従って実行することで，理想的には実験を再現することができるはずだが，操作に抜け漏れがあったり，操作の詳細が記述されていなかったりといった問題があると，他の研究者が実験を再現することが困難になる．

こうした再現性の危機に関する問題に対する有望な解決となりうるのが，視覚と言語の融合研究である．例えば，撮影した実験映像とプロトコルの組から，映像の操作シーンとプロトコルの各手順の対応関係を推定できれば，手順ごとに視覚的に操作を確認できる．あるいは，作業映像を入力としてプロトコルを自動生成できれば研究者がプロトコルを書く負担を軽減することができる．このように，化学実験を対象とした視覚と言語の融合研究は実験プロトコルの参照時と作成時の両方の負担を軽減し，実験再現性の向上に資するであろう．

こうした有用性はあるものの，実験映像を対象とした視覚と言語の融合研究の数は多くない\cite{naim2014aaai,naim2015naacl}．その原因の1つに，実験映像を撮影し公開することが困難な点にある．現に，Naimらの研究で利用しているデータセットは公開されていない．そのため，我々はこの目標に向けた第一歩として，生化学分野を対象として実験映像を収集し，言語アノテーションを付与したBioVL2データセットを構築し研究コミュニティに公開する（\figref{fig:overview}）．具体的には以下の2種類のアノテーションを作業映像に付与する．
\begin{enumerate}
\item \textbf{視覚と言語の対応関係のアノテーション．}
    プロトコルを動詞ごとに分割した文のそれぞれに対して（本論文ではこれを特に\textbf{手順}と呼ぶ），映像の中で手順が実施されている区間（以下，\textbf{イベント}と呼ぶ）を付与する．このアノテーションは従来の視覚と言語の融合研究\cite{zhou2018aaai,krishna2017iccv}と同様であり，映像キャプショニング\cite{xu2016cvpr,nishimura2021acmmm}や映像と視覚の対応関係の推定\cite{naim2014aaai,naim2015naacl}などの応用研究に活用できる．
\item \textbf{プロトコル内に現れる物体の矩形アノテーション．}
    映像中の各フレームごとに，プロトコル中の物体が写っていて，かつ実験者の手と接触があった場合に物体の矩形情報を付与する．これにより，映像中の空間的な分析（例：何が写っているか，どういう状態か）や実験者の動作分析が可能になる．また，前述のアノテーションと合わせてプロトコル中の物体名と映像中の物体との対応関係の推定\cite{zhou2018bmvc}などの応用研究にも利用できる．
\end{enumerate}

これらのアノテーションの付与を行うことで，映像からのプロトコル生成や手順を入力としたシーン検索が可能となる．こうした検索が行えると，初学者に対する教育効果や作業補助が期待でき，実験の再現性の向上につながる．また，データがさらに集まるようになれば，最終的にはプロトコルからのロボット操作などのより挑戦的，かつ有用性が高い課題にも取り組むことが可能になる．本研究で提案するBioVL2データセットはこうした生化学実験を対象とした言語と視覚の融合研究への第一歩である．

BioVL2データセットの収集において意識した設計は，一人称視点のカメラを用いることで，研究者への撮影の負担を最小限にしたことである．実験の度に大掛かりな撮影環境を構築していては，日々実験を行う研究者らは撮影に負担を感じ，結果データセットのサイズはスケールしない．研究者らが自ら撮影に取り組めるように，できるだけ研究者への負担が少ない設計を考える必要がある．この点で，三人称カメラは撮影の度に広範な実験空間をカバーするのに複数台の設置が必要で，故障のリスクが高くなる他，同時撮影などの手間が発生する．一人称カメラは広範な実験空間をカバーしつつも，生化学分野の研究者が手軽に撮影可能である．これが一人称カメラを用いた理由である．こうして撮影を行った結果，全32の実験映像とそのアノテーションからなるデータセットを構築した．

得られたBioVL2データセットを用いて，その応用として本論文では実験映像からプロトコルを生成する課題に取り組む．実験映像の数は他の映像キャプショニングのデータセット\cite{krishna2017iccv,zhou2018aaai,xu2016cvpr}と比較すると少なく，こうした課題で提案されているEnd-to-endな深層学習モデルを本課題に直接適用することは困難である．そのため，本研究では，Ushikuら\cite{ushiku2017ijcnlp}によって提案された手順書生成モデルを活用する．このモデルは本研究と同様，少量の料理映像（20映像）に対して適用できるように外部リソースを活用しながら学習できるよう設計されている．このモデルにいくつかの改良を施し，BioVL2データセットの実験映像からプロトコル生成を生成する課題に取り組む．定量的，定性的評価の結果，モデルは弱いベースラインと比較して，適切なプロトコルを生成できることを確認する．

本論文で述べるBioVL2データセットは\cite{nishimura2021iccvw}にて発表したBioVLデータセットの拡張である．具体的には，(1)映像の数を16から倍の32へ増加させたこと，(2)映像への矩形アノテーションを追加で行ったことの2点の拡張を行った．さらに，\cite{nishimura2021iccvw}では行わなかった，実験映像からプロトコルを生成する課題に取り組んだことも本研究の追加の貢献である．BioVLデータセットと同様，BioVL2データセットは研究用途に限り公開する予定である\footnote{\url{https://github.com/misogil0116/BioVL2}}．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{関連研究}

関連研究を大きく分けて2つの観点から説明する．第一に，作業映像と言語アノテーションの観点から，第二に，生物学の諸分野を対象とした自然言語処理，および視覚と言語の融合研究の観点から本研究の位置付けについて述べる．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{作業映像と言語アノテーションからなるデータセット}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{Web上の作業映像を対象とした研究}

ある目的に向かい処理を進める行動系列を理解するために，作業映像を対象とした研究は近年活発に取り組まれている．作業映像の理解の手がかりとして，言語情報をアノテーションする方法がよく採用され，様々なデータセットが提案されてきた．数ある分野（例：料理，家具の組み立て）の中で，最も注目を集めてきたのは料理分野である．この分野はWeb上でデータを集めやすく，物体や動作の種類が多様であることから，長年にわたり研究者の注目を集め続けてきた\cite{nishimura2021acmmm,zhou2018bmvc,wang2021wacv}．料理分野で提案された映像と言語アノテーションからなるデータセットのうち，最も大規模なデータセットはYouCook2 \cite{zhou2018aaai}データセットである．このデータセットはYouTube上の料理映像を89のカテゴリに分けて収集し，映像に対し料理を達成する上で重要なイベントのアノテーションを行い，各イベントに対し手順を付与したデータセットとなっている．そして，映像の密キャプショニング \cite{krishna2017iccv,zhou2018cvpr}，作業映像における質問応答\cite{wang2021wacv}，作業映像からの手順書生成\cite{nishimura2021acmmm}など様々な研究におけるベンチマークデータセットとしてもよく用いられている．また，料理分野に続き，メイクアップ映像をYouTubeから収集し同様のアノテーションを付与したデータセットであるYouMakeup \cite{wang2019emnlp}も提案されている．

特定の分野に限定せず，作業映像一般を収集し言語アノテーションを付与する取り組みも行われている．Howto100M \cite{miech2019iccv}はその中でも最も大規模なデータセットであり，1億の作業映像と言語の組からなるデータセットである．なお，Howto100Mに付与している言語アノテーションは，映像に付与しているナレーションを言語アノテーションとして自動的に収集し付与したものである．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{一人称視点の作業映像を対象とした研究}

Web上の映像の多くは視聴者のために編集されていることが多く，作業を行う上で必要な行動の全てが映像中に現れるわけではない．例えば，冷蔵庫から材料を取り出すシーンや，ミキサーで混ぜるなどの時間がかかるシーンは編集で切り取られやすい．こうしたシーンも含めた作業行動全体の理解のために，近年，一人称視点の未編集映像を収集する取り組みが行われてきた．料理分野における代表的なデータセットとして，EPIC-KITCHENデータセット\cite{damen2018eccv}がある．このデータセットは，32の参加者の料理を行う過程を一人称視点のカメラを使って撮影したもので，合計100時間，700映像からなり，各映像には全ての人間の動作が言語情報でアノテーションされている（例：冷蔵庫を開ける，じゃがいもを切るなど）．
他にも，おもちゃの車の組み立てを行うためのデータセットとしてAssembly101データセット\cite{sener2022cvpr}が提案されている．このデータセットは合計513時間，4,321映像からなるデータセットであり，EPIC-KITCHENSデータセットと同様に動作情報のアノテーションとして言語アノテーションが行われている．

BioVL2データセットは，生化学分野における一人称視点の作業映像と言語アノテーションからなるデータセットであると位置付けられる．前述したデータセットと比較すると撮影した映像数は少ないが，今後の生化学分野における実験映像理解の研究において有用である．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{生物学の諸分野を対象とした自然言語処理，および視覚との融合研究}

生物学およびその諸分野（生化学，分子生物学）において，再現性の観点からも人工知能技術を適用することのニーズは高い（例：プロトコルから実験映像を検索，プロトコルからロボットの実験実行）．以下では，自然言語処理，および視覚との融合研究に関する先行研究を挙げ，本研究の位置づけを明確にする．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{自然言語処理}

生命科学を対象とした代表的なデータセットとして，GENIAコーパス\cite{kim2003bioinfo}がある．これは，生命科学論文のアブストラクトに対して，品詞情報や構文木，固有表現などの計6種類のアノテーションが付与されたデータセットである．
Kulkarniら\cite{kulkarni2018naacl}は，生物学のプロトコルを処理するためのデータセットであるWet Lab Protocolデータセット（WLPデータセット）を提案した．生物学のプロトコルを機械可読な動作グラフ表現\cite{kiddon2015emnlp}に変換することがこのデータセットの目的であり，\url{https://www.protocols.io/}から収集した全622のプロトコルについて，固有表現のアノテーション（bio-Named Entity，以下b-NEと呼ぶ），加えてそれらの関係性（例えば，ある薬品をどのように操作するといった述語項構造のヲ格に当たる関係）を閉路のない有向グラフで表現するアノテーションを付与している．そして，このアノテーションの根のノードがプロトコルの最終成果物を表している．
EMNLP2020併設のワークショップThe 6th Workshop on Noisy User-generated Text (W-NUT)では，このデータセットをもとに共有タスクとして取り組まれ，固有表現認識および関係抽出の課題において多くの手法が提案されている\cite{knafou2020wnut,singh2020wnut,golam2020wnut}．本研究において，WLPデータセットのb-NEタグのアノテーション基準はBioVL2データセットのプロトコル中の動詞のタグ付けや，物体名の抽出などにおいて参考にしている．また，\secref{sec:protocol_generation}において，手順書生成のための文生成モデルの事前学習においてもWLPデータセットを活用している．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{言語と視覚の融合研究}

自然言語処理技術のみでの発展と比較すると，言語と視覚の融合研究の数は多くはない．Naimら\cite{naim2014aaai,naim2015naacl}はプロトコルと実験映像を入力としてプロトコル中の手順と動画の区間について対応関係を獲得する課題に対し，\cite{naim2014aaai}ではIBMモデル\cite{peter1993cl}をもとに，\cite{naim2015naacl}では条件付き確率場\cite{lafferty2001icml}をもとにして教師なしで学習する手法を提案している．
Naimらの研究との本研究の差分は主に以下の3点にある．第一に，前述した研究ではデータセットを公開していないが，BioVL2データセットは公開する点．第二に，プロトコルの種類数，映像数ともにNaimらのそれを上回る点（BioVL2データセットが4種類8動画に対し，Naimらのデータセットは3種類2動画）．第三に，本研究ではデータセットの応用課題として，言語と視覚の対応関係の獲得ではなく，実験映像からの手順書生成を行う点である．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{BioVL2データセット}

本節では，構築したBioVL2データセットについて説明する．まず，データセットの構築方法について述べ，次に統計情報およびアノテーションの一致率を報告する．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 2
\begin{figure}[b]
\begin{center}
\includegraphics{29-4ia3f2.pdf}
\end{center}
\caption{(a)実験映像の撮影風景．(b)撮影途中の一人称カメラの視点．}
\label{fig:first_person_view}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{データセットの構築}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{実験映像の撮影}

\textbf{撮影環境について．}
1名の研究者（女性）の協力を得て実験映像の撮影を行った．\figref{fig:first_person_view}に撮影途中の光景およびカメラからの視点を示す．カメラにはPanasonic HX-A500を使用しているが，このカメラは十分に軽量であり，実験の邪魔にならないように配慮している．撮影における実験は普段実験を行うのと同じように行動してもらうことを依頼した．

\textbf{撮影する実験について．}
生化学分野の有名かつ基礎的な実験であるPCR，ミニプレップ法，DNA抽出，アガロースゲル作成の4種類の実験に焦点を当てて映像を撮影した．1つの実験あたり8の映像を撮影した．この際，DNA抽出に関しては方法がエタノール沈殿法およびフェノールクロロホルム法の2通りの方法があるため，それぞれ4映像ずつ収録している．合計32の映像からなるデータセットである\footnote{行う実験の内容は同じで，実験者も同じだが，初期状態は実験ごとに異なり，それに応じて行う動作なども映像ごとに異なる．\secref{sec:stats}で述べる通り，いくつかの手順はそれに応じて飛ばされている．こうした実際の実験の動作の違いにも富んだデータセットの構築のために，複数の映像を撮影している．}．

\textbf{映像の前処理について．}
いくつかの実験映像については，研究者が待機しなければならない手順が存在する（例：遠心分離機で5分遠心する）．こうした待ち時間には，研究者はカメラを外し待機しており，手順の内容とは関係がない．そのため，本研究では映像の前処理としてこうした時間を手動で取り除いている．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{映像と言語の対応関係のアノテーション}
\label{subsec:alignment_annotation}

著者のうち1名がアノテータとして映像と言語の対応関係のアノテーションを行った．実験を実施した研究室で使われているプロトコルはイラストなどを用いて視覚的に表現されており，明確な文書化はされていなかった．そのため，実験者に実験内容を口頭で説明してもらい，それを文字で書き起こしたものをプロトコルとして利用した．
次に，プロトコルを動詞ごとに分割し，手順列を得た．例えば，``Invert 4 times to mix and add 10 $\mu$l of Alkaline Protease Solution.''という記述については，``Invert 4 times to mix''と``add 10 $\mu$l of Alkaline Protease Solution.''という文の2つの手順に分割した．この時，接続詞（ここではand）については消去するよう指示した．ここでは，代名詞や省略については特別な処理を行ってはいない．
次に，アノテータは映像を視聴し，各手順の開始時間，終了時間を決定してイベントのアノテーションを付与した．この時，開始時刻と終了時刻にできるだけ曖昧さが残らないように，手順対象の物体を持った時から，手順対象の物体を手放すまでの間をイベントとしてアノテーションした．\tabref{tab:annotation_file}にPCRのアノテーション結果の例を示す．\secref{sec:introduction}で述べた通り，プロトコルの手順には，操作対象の物体名と操作に関する動詞を持ち，必要に応じて副詞や量，時間，数などの情報が追加で記述される．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 1
\begin{table}[b]
\input{03table01.tex}
\hangcaption{PCRを対象としたアノテーション結果の一例．表の値は秒数を示す．なお，商標登録マーク\textregistered は表では記載しているが，データセットの実際のプロトコルには含まれていない．}
\label{tab:annotation_file}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 3
\begin{figure}[b]
\begin{center}
\includegraphics{29-4ia3f3.pdf}
\end{center}
\hangcaption{矩形アノテーションツールのアノテーション画面．ツールはブラウザからアクセスできるように開発されている．(A)にはプロトコル中に現れる物体が列挙されており，(B)にて矩形アノテーションを行う．(C)にて前後のフレームについて移動できる．}
\label{fig:bb_annotation_tool}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{プロトコル内に現れる物体の映像矩形アノテーション}
\label{subsec:bb_annotation}

さらに，別のアノテータがプロトコル中に現れる物体の映像矩形アノテーションを行った．このアノテータも著者のうちの1名である．
映像から4秒ごとにフレームを抽出し\footnote{映像の全てのフレームに矩形アノテーションを行うことは高コストである．アノテーションコストを下げるために，映像から疎にサンプリングしてアノテーションを行うことが一般的である．Zhouら\cite{zhou2019cvpr}は映像あたり10フレームをサンプリングして矩形アノテーションを行っている．}，各フレームに対して(1)手が物体と触れている状態にあり，かつ(2)触れている物体がプロトコル中に存在する場合において，その物体を矩形で囲い，物体名と紐づけるアノテーションを施している（\figref{fig:bb_annotation_tool}）．なお，これらの物体名はWLPデータセット中の物体名に基づく固有表現に該当するものをプロトコルから抽出し利用している．
この時，\secref{subsec:alignment_annotation}のアノテーション結果を参照しながら矩形アノテーションを行っている．なお，イベントのみに矩形アノテーションを行っているのではなく，映像全体にアノテーションを行っている点は注意されたい．映像中のイベント以外の区間においても物体をアノテーションしておくことで，幅広い応用（例：映像からのプロトコル生成）や映像の分析に利用することを想定している．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{統計情報}
\label{sec:stats}

次に，構築したBioVL2データセットについて統計情報を言語側，映像側それぞれの観点から述べる．この結果より，両側面においてBioVL2データセットは多様な実験を収録したデータセットであることを示す．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 2
\begin{table}[b]
\input{03table02.tex}
\hangcaption{言語側の統計情報．各値について，平均と標準偏差を示している．ミニプレップ法とアガロースゲル作成について，同じ実験を行ってはいるが，一部の手順が状況に応じて飛ばされている．そのため，標準偏差が0にならない点は注意が必要である．}
\label{tab:nl_stats}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 3
\begin{table}[b]
\input{03table03.tex}
\caption{他の実験には現れない，ある実験にユニークな物体の種類数および動詞の種類数．}
\label{tab:mat_and_actions}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{プロトコル}

\tabref{tab:nl_stats}に言語側の統計情報を示す．手順あたりの単語数と比較すると，手順数は実験ごとに大きく異なることが分かる．これは，BioVL2データセットの手順の多様性を表している．中でも最も手順数が多かった実験はミニプレップ法であり，最も少ないのはフェノールクロロホルム法であることが分かる．物体の種類数についてはこれと同様の傾向を示しているが，動詞の種類数については最も種類が少ないのはPCRであった．言語の多様性を検証するために，ある実験にユニークな動詞と物体の種類数を調査した（\tabref{tab:mat_and_actions}）．この結果と\tabref{tab:nl_stats}の右2列を比較すると，物体の種類数は一致するのに対し，動詞の種類数は著しく下がっている．このことから，BioVL2データセットでは動詞については全実験を通して共通のものが現れる一方，物体については実験ごとに固有の表現を持っていることが分かる．よって，物体に対する言語の多様性はあると言える．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 4
\begin{table}[b]
\input{03table04.tex}
\caption{実験ごとの映像の長さの統計情報．表の値は平均と標準偏差を示す．}
\label{tab:video_length_stats}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 4
\begin{figure}[b]
\begin{center}
\includegraphics{29-4ia3f4.pdf}
\end{center}
\caption{手順に紐づいたイベントの長さ（秒数）の割合．$d$は秒数を示す．}
\label{fig:stats_event_dist}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{実験映像}

\tabref{tab:video_length_stats}に各実験ごとの映像の長さ（秒数）について，\figref{fig:stats_event_dist}に手順に紐づいたイベントの長さ（秒数）についての統計情報を示す．この結果から，映像やイベントの長さの観点からも，BioVL2データセットは多様性に富んでいることが分かる．映像全体の長さが最も長いのはエタノール沈殿法であり（平均399秒），最も短いものはPCRである（平均254秒）．また，イベントごとの長さに着目すると，ミニプレップ法はイベントの72.4\%は10秒以下の手順で構成されている一方，フェノールクロロホルム法は50.0\%のイベントが30秒以上の長いイベントを占めている．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 5
\begin{table}[b]
\input{03table05.tex}
\caption{矩形アノテーションしたフレーム数の統計情報．}
\label{tab:bb_frame_stats}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 6
\begin{table}[b]
\input{03table06.tex}
\hangcaption{矩形アノテーションに紐づく物体をb-NEタグのカテゴリ種類に分類した上での統計情報．実験ごとにユニークな物体を数え上げ報告している．b-NEタグのうち，物体に基づく固有表現にはReagent，Location，Device，そしてSealがあるが，SealはBioVL2データセットの物体名に該当するものが存在しなかった．そのため，本アノテーションにおいてはReagent，Location，Deviceのみ数えた結果を示している．}
\label{tab:sample_annotation}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 7
\begin{table}[b]
\input{03table07.tex}
\caption{矩形アノテーションの統計情報．}
\label{tab:bb_total_stats}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{矩形アノテーション}

\tabref{tab:bb_frame_stats}に少なくとも1つ以上矩形アノテーションを行ったフレームが何枚存在したかについて，\tabref{tab:bb_total_stats}にアノテーションした矩形の数についての統計情報を示す．また，\tabref{tab:sample_annotation}に矩形アノテーションに紐づく物体をb-NEタグのカテゴリ種類に分類した上での統計情報を示す．b-NEタグの物体に基づく固有表現にはReagent，Location，Device，そしてSealがあるが，SealはBioVL2データセットの物体名に該当するものが存在しなかった．そのため，Reagent，Location，Deivceのみ数えた結果を示している．この表より，Reagentが最も多く，ついでLocation，そしてDeviceが最も少ないことが分かる．\tabref{tab:bb_frame_stats}より，アノテーションするフレーム数には実験ごとに違いがあることが分かる．最もアノテーションをしたフレームの割合が大きいのはフェノールクロロホルム法であり，最も小さいのはミニプレップ法である．\tabref{tab:bb_total_stats}に着目すると，概ねフレームあたり矩形を1つアノテーションしていることが分かる．また，ミニプレップ法はアノテーションするフレームの割合は最も低いものの，アノテーションしている矩形の数は最も多いことも分かる．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{一致率の計算}

アノテーション結果の品質を確かめるため，前節でアノテーションを実施した者とは別のアノテータにアノテーションを依頼し一致率を計算した．映像と言語の対応関係のアノテーションに関しては著者のうち1名が，映像矩形アノテーションについては著者とは別の1名が行った．この時の作業指示については全て\secref{subsec:alignment_annotation}，\secref{subsec:bb_annotation}と同様である．
全ての映像に対してアノテーションを再度行うことはコストが高いため，実験ごとに1つランダムに映像を選択し，アノテーションを依頼した．以下，アノテーションの種類ごとに一致率を報告する．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 8
\begin{table}[b]
\input{03table08.tex}
\caption{視覚と言語の対応関係アノテーションの一致率．表の値はtIoUの平均値を示す．}
\label{tab:event_agreement}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{映像と言語の対応関係のアノテーション}
\label{sec:event_agreement}

撮影した実験の経験者に映像と言語の対応関係のアノテーションを依頼し，その結果と\secref{subsec:alignment_annotation}の結果を比較して一致率を計算した．ここでは一致率の指標として2つのイベントの時間的な重なりを表現するtemporal Intersection over Union (tIoU)を利用した．
\tabref{tab:event_agreement}に一致率の結果を示す．この結果より，すべての実験においてtIoUは平均75\%を超えていることが分かる．言語情報と映像を入力としたイベント検索課題\cite{lei2020eccv}において，tIoUが0.7を超えた時正解とみなして再現率を計算している．この基準から述べると，75\%は高い値であると考えられ，アノテーションの品質は十分であることが分かる．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{プロトコル内に現れる物体の映像矩形アノテーション}

\secref{sec:event_agreement}とは別のアノテータに映像への矩形アノテーションを依頼し，\secref{subsec:bb_annotation}の結果と比較して一致率を計算した．ここでは，物体検出\cite{ren2016tpami}の評価尺度としてよく用いられるmean Average Precision (mAP)を用いた\cite{cartucho2018iros,pascalvoc2012}．新たにアノテーションした方を予測結果，\secref{subsec:bb_annotation}の結果を正解とみなしてmAPの計算を行った\footnote{mAPの計算には，\url{https://github.com/Cartucho/mAP}を用いている（2022年5月11日アクセス）．}．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 5
\begin{figure}[t]
\begin{center}
\includegraphics{29-4ia3f5.pdf}
\end{center}
\hangcaption{(a)物体ごとのAPおよびmAPの結果．(b)物体ごとのTrue positive（真陽性）とFalse positive （偽陽性）の数．}
\label{fig:mAP_TP_FP}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\figref{fig:mAP_TP_FP}にmAPの結果と真陽性と偽陰性の分布を示す．
mAPは72.73\%となった．物体検出課題における最新モデル\cite{carion2020eccv,zhu2021iclr}のmAPが0.6から0.7の間であり，実用的な性能に達していることを考えると，この値は高いと考えられ，アノテーションの品質は十分であることが分かる．
一方で，多くの物体のAPが0.7を超えているもののAPが低い物体もあることが分かる．最もAPが低かったのはnew\_tubeである．元々のアノテータはある手順以降の，新しいtubeのみアノテーションを付与しているのに対し，新たにアノテーションを行った者はすべてのtubeにアノテーションを付与していることが原因であった．このように，複数のインスタンスを文脈に応じて呼び分ける必要があるが，newなどの修飾語に応じた適切なアノテーション方法は今後検討の余地がある．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{応用例：実験映像からのプロトコル自動生成}
\label{sec:protocol_generation}

構築したBioVL2データセットの応用課題の一例として，
\pagebreak
実験映像からプロトコルを自動生成する課題に取り組む．BioVL2データセットの映像の数は32と少なく，深層学習をもとにした映像キャプショニングモデル\cite{krishna2017iccv,zhou2018cvpr}を適用することは困難である．少量の作業映像を対象とした手順書生成手法として，我々はUshikuら\cite{ushiku2017ijcnlp}の手法を活用する．この研究では料理映像を対象に，以下の5つのプロセスで手順書を生成する手法を提案している．(1) Faster-RCNN \cite{ren2016tpami}によって各フレームに対して物体認識を行い，(2)認識した物体の中からレシピ固有表現\cite{sasada2015nlp}（recipe-Named Entity，以下r-NE）に該当する物体のみを抽出する．そして，(3)連続する部分フレームの認識結果を統合してr-NE列を得る．(4)あらかじめ大量のレシピで事前学習させておいたr-NE集合から文を生成するモデル（\cite{ushiku2017ijcnlp}ではLSTMを使用）を用いて，(3)のr-NE列ごとに文を生成する．最後に，(5)生成した文集合の中からレシピとして最も尤もらしい組み合わせをビタビアルゴリズムを用いて探索しレシピとして出力する．本手法の特徴的な点として，物体名以外の視覚情報を活用しない点にある．r-NEと対応する文の組み合わせは，固有表現認識器を用いればWeb上から大量に収集し，文生成モデルの事前学習を行うことができる．こうして学習したモデルと物体認識器を併せて利用することで，少数の映像からでもレシピを生成することができる．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 6
\begin{figure}[b]
\begin{center}
\includegraphics{29-4ia3f6.pdf}
\end{center}
\caption{(1) Primer1を操作している画像と(2) Primer2を操作している画像．}
\label{fig:difference}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

BioVL2データセットでこの手法を適用するにあたり，以下の2点の変更を加えた．
\begin{itemize}
    \item 本研究では(1)と(2)の処理を行う代わりに，矩形アノテーション結果を後段の処理に利用している．料理分野では矩形アノテーションがあれば映像中の物体認識はある程度行うことができるが\cite{hashimoto2014ubicomp}，本研究で対象とする生化学分野においては物体を正しく認識することは困難であることが推察できる．例えば\figref{fig:difference}においてPrimer1とPrimer2の認識を1枚のフレームから行うことは困難である．なぜなら，これらの物体は小さく認識が難しいだけでなく，外観も類似しているからである．映像を通して見ると作業者はこれらの物体を使い分けていることが分かるが，1枚のフレームだけからこの識別を行うことは人にとってもほとんど不可能である．そのため，本研究では矩形アノテーションの結果を入力としてプロトコルを生成する課題に取り組む．この課題設定は，今後QRコードなどを物体に貼り，何を持っているのかが機械的に推定できる状況を想定している．
    \item 文生成の事前学習モデルにはLSTMではなくTransformer \cite{vaswani2017neurips}を用いる．Transformerは機械翻訳，文書要約\cite{liu2019acl}，画像キャプショニング\cite{cornia2020cvpr}など多くの文生成課題においてLSTMよりも良い性能を発揮しており，本課題においても有用であると考えられる．さらに，Transformerにコピー機構 \cite{see2017acl}を導入するモデルも検討する．これは，入力の矩形アノテーションの物体情報を含む文を生成しやすくするためである．また，モデルの事前学習を行うデータセットとして，WLPデータセット\cite{kulkarni2018naacl}を活用する．
\end{itemize}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 7
\begin{figure}[b]
\begin{center}
\includegraphics{29-4ia3f7.pdf}
\end{center}
\caption{実験映像からのプロトコル生成手法．}
\label{fig:ushiku_overview}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

この変更を加えた手法の概要を\figref{fig:ushiku_overview}に示す．以下，手法の詳細について順に説明する．ここで，矩形アノテーションが1つ以上存在するフレーム列を$\F=(f_1, f_2, \ldots, f_n, \ldots, f_{|\F|})$とする．
我々の課題では，各フレームごとにアノテーション済みの物体名を用いて，b-NE列を獲得する．例えば，\figref{fig:ushiku_overview}では，DNA engineや(DNA engine, Template)が該当する．
そして，事前学習した文生成モデルを用いて，b-NE列ごとにプロトコル候補文を生成する（\figref{fig:ushiku_overview}では，``Set it in DNA engine''が該当）．最後に，プロトコル候補文の中から，プロトコルとして最も尤もらしい組み合わせをViterbiアルゴリズムを用いて探索し出力する．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{b-NE列の獲得}
\label{sec:bNE_sequence}

処理(3)にならい，フレーム列の部分列$f_{n}^{n+(l-1)}$（$l$は部分列の長さ）に対し，固有表現列を与える．与えられた固有表現列をバイオ固有表現(b-NE)列と呼ぶ．
矩形アノテーションが1つ1つがb-NEであるとみなすと，$n$番目のフレーム$f_n$はb-NE集合$\mathcal{E}_n$を持つ．
この時，部分フレーム列$f_{n}^{n+(l-1)}$に含まれるb-NE集合は$\mathbf{e}_n^{l} \in \mathcal{E}_n \times \mathcal{E}_{n+1} \times \ldots \times \mathcal{E}_{n+(l-1)}$として定式化する（$\times$は集合のデカルト積）\footnote{Ushikuらの手法では，Faster RCNNの物体検出結果をもとに，デカルト積を用いてr-NE列を構築することで，検出誤りにも頑健にフレーム部分列を表現することを試みている．本研究では，人手でアノテーションしたb-NEを後段の処理に使っているが，従来手法のb-NE列の獲得方法を踏襲している．}．
例えば，\figref{fig:ushiku_overview}の$l=1$の例では，$\mathbf{e}_n^l$はDNA engineのみ，$l=2$の例では，(DNA engine, Template)となる．部分列$l$について，Ushikuらと同様に$l=1,2,3$のb-NE列を構築する．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{b-NE列からのプロトコル候補文生成}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{文生成モデルの事前学習}
\label{sec:transformer}

次に，b-NE列$\mathbf{e}$からプロトコルの候補文を生成する．
これは，入力のb-NE列に対して，その情報を保持したまま，適切な動詞や前置詞などを補完しつつ文を出力する課題である．
\figref{fig:transformer}にWLPデータセットを用いた文生成モデルの事前学習についての概要を示す．モデルはTransformerをベースにした自己回帰型エンコーダデコーダモデルにコピー機構を加えている．入力としてb-NE列を\texttt{[CLS]}という特殊トークンを先頭に，\texttt{[SEP]}トークンで区切って結合した単語列$\X=(x_1, x_2, \ldots, x_i, \ldots, x_{|\X|})$（$x_i$は$i$番目の単語）に対し，出力文を$\Y=(y_1, y_2, \ldots, y_j, \ldots, y_{|\Y|})$（$y_j$は$j$番目の単語）とする．
Transformerエンコーダを$E(\cdot)$，Transformerデコーダを$D(\cdot)$とすると，エンコーダの出力ベクトル列$\Hvec = (h_1, h_2, \ldots, h_i, \ldots, h_{|\X|})$，デコーダの$j$番目の単語に対応する出力ベクトル$o_j$は以下のように計算する．
\begin{align}
\Hvec & = E(\X) \\
o_j &= D(\Y_{<j}, \Hvec)
\end{align}
ここで，$\Y_{<j}$は$j$番未満の部分単語列を表す．\figref{fig:transformer}にあるように，エンコーダの出力はデコーダのSource-target attention層へ入力される．また，エンコーダとデコーダの単語の分散表現層は別々に最適化しており，デコーダ側には位置エンコーディングが加算されているが，エンコーダ側は集合のエンコードであることを考慮してこれを加えていない点は注意されたい．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 8
\begin{figure}[t]
\begin{center}
\includegraphics{29-4ia3f8.pdf}
\end{center}
\caption{Transformer文生成モデル．物体名を入力として対応する文を出力するように学習する．}
\label{fig:transformer}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

本研究の設定では，入力の物体名は出力に必ず含まれるため，それを陽にモデル化することでより正しく文生成を行えるようになると考えられる．これを加味するために，コピー機構をモデルへ導入する．エンコーダの出力$\Hvec$とデコーダの出力$o_j$を用いて，注意確率$\beta_j^i$を以下のように計算する．
\begin{equation}
    \beta_{j}^{i} = \frac{\exp{\{(o_j)^{\sf T} W_c h_i\}}}{\sum_{k} \exp{\{(o_j)^{\sf T} W_c h_k\}}},
\end{equation}
ただし，$W_c$は線形層を表す．次に，b-NE列から単語を選択するか，語彙の単語を選択するかの確率をコピーゲート$g_j (0 \leq g_j \leq 1)$を以下のように計算する．
\begin{equation}
    g_j = \sigma(W_g [o_j;\sum_{m}\beta_{j}^{m}h_m] + b_g),
\end{equation}
ここで，$[\cdot]$，$\sigma(\cdot)$，$W_g$，$b_g$はそれぞれベクトルの結合関数，シグモイド関数，線形層の重みおよびバイアスを表す．$g_j$を用いて，単語の予測分布$p(y_j|y_{<j},\Hvec)$は以下のように計算する．
\begin{equation}
    p(y_j|y_{<j},\Hvec) = (1-g_j)p_{voc}(y_j|y_{<j}, \Hvec) + g_j \sum_{i:x_i=y_j}\beta_{j}^{i},
\end{equation}
ここで，$p_{voc}(y_j|y_{<j}, \Hvec)$は語彙中の単語$y_j$の確率分布を表す．入力と出力の組$(\X,\Y) \in \mathcal{D}$ （$\mathcal{D}$は学習データ全体を表す）について，以下の負の対数尤度$\mathcal{L}(\theta)$を最小化するように学習を行う．
\begin{equation}
    \mathcal{L}(\theta) = - \sum_{(\X,\Y) \in \mathcal{D}} \log{p(\Y|\X;\theta)},
\end{equation}
ここで，$\theta$はモデルの学習可能なパラメータ全体を表す．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{b-NE列からのプロトコル候補文生成およびスコアの算出}

WLPデータセットで事前学習したモデルを用いて，\secref{sec:bNE_sequence}で獲得したb-NE列から文を生成する．また，後段のプロトコル出力の探索のために，生成したプロトコル候補文のそれぞれについて，生成した文の尤もらしさをスコアとして得る．
具体的には，$n$番目のフレーム，長さ$l$のb-NE列$\mathbf{e}_n^l$に対し，以下の式に則ってスコアを求める．
\begin{equation}
    Score(\mathbf{e}_n^l) = \prod_{i=1}^{N} p(d_i | d_1, d_2, \ldots, d_{k-1};\mathbf{e}_n^l),
\end{equation}
ここで，$d_i$は出力文の$i$番目の単語を示し，$N$は単語列の長さを示す．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{プロトコルの出力}

生成した文集合の中から，プロトコルとして最も尤もらしい系列を選択しプロトコルを出力する．各文に対して与えるスコア$Score(\mathbf{e}_n^l)$の和が最大となるようにフレーム列を選択する．ここで，2つのヒューリスティックを導入する．
第一に，1人の研究者が2つの作業を同時に行うことはほとんど不可能であるため，プロトコル手順の候補に対応する部分フレーム列は重なってはならないこととする．
第二に，同じ手順が複数回登場することはないとし，プロトコル中に一度登場した手順のスコアを0とする．この第二の仮定のもとでは，手順候補のスコアが変化しうるため，全探索を行ってプロトコルを出力するべきである．しかし，スコアの変化は同一文の生成時のみに限定され，頻繁に発生するものではないと考えられるため，ビタビアルゴリズム\cite{viterbi1967ieee}を用いて時間方向に沿って探索を行う．手順候補のスコアを高めるための経路を選択した結果を結合してプロトコルとして出力する．スコアが高ければ高いほど，プロトコルとして尤もらしいと考える．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{評価}
\label{sec:experiments}

前節で説明した手法をBioVL2データセットに適用してプロトコルを生成し評価を行った．以下では，実験設定について，利用したデータセット，モデルのハイパーパラメータなどの詳細設定，そして評価尺度の点から述べる．次に，生成したプロトコルの定量的，定性的な評価結果を報告する．評価の結果，我々はある程度正しくプロトコルを自動生成できていることを確認する．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{実験設定}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{データセット}

文生成モデルの学習において，b-NE集合と文の対からなるデータセットが必要である．データセットのサイズの観点からBioVL2データセットを学習に用いることは困難であるため，十分なサンプル数があるWLPデータセット\cite{kulkarni2018naacl}を学習に利用する．
WLPデータセットの各文にはb-NEのアノテーションが行われているが，矩形アノテーションを付与した物体が，Reagent，Location，およびDeviceのいずれかである点を踏まえ（\tabref{tab:sample_annotation}），本研究では特にReagent，Location，Deviceの3つのタグを用いる．
また，BioVL2データセットの手順あたりの単語数は平均10単語以下である点を考慮し（表\ref{tab:nl_stats}），(1)文に前述した3つのタグのいずれかが含まれない，あるいは(2)単語数が20を超える文については学習データと検証データから削除する．さらに，\tabref{tab:sample_annotation}ではDeviceは数が少ないことを加味して（Locationの$\frac{1}{4}$），フィルタリングの(1)について，ReagentとLocationのいずれかが含まれないケースも検討する．なお，フィルタリングの効果については，\secref{sec:word_overlap}にて考察する．\tabref{tab:wlp_stats}にて上記のフィルタリングを行わなかった場合と，行った場合のWLPデータセットの統計情報を示す．このデータセットで学習した文生成モデルを用いて，BioVL2データセットを評価データとして用いた．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 9
\begin{table}[t]
\input{03table09.tex}
\hangcaption{WLPデータセットの統計情報．全てのb-NEタグを利用した場合，物体に基づく固有表現のみを利用した場合，そしてReagentとLocationのみを利用した場合について，20単語以上の文をフィルタリングするか，しないかの両ケースにおける統計を示している．データセットの分割は元のWLPデータセットの分割に従っており，評価データは本研究においては利用していない．BioVL2データセットを評価データとして用いているためである．}
\label{tab:wlp_stats}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{詳細設定}

文生成モデルの学習において，スペース区切りで文を単語に分割し，訓練データ内で頻度が5回以下のものは未知語として処理した．結果，語彙サイズは$1,827$となった．Transformerの隠れ層のサイズは$768$，層数は$2$，Multi-head attentionのヘッド数は$12$に設定した．位置エンコーディングには\cite{vaswani2017neurips}と同様の方法を用いる．また，Transformerの学習にはBERT \cite{dalvin2019naacl}の学習で行われているように，Adam \cite{diederik2015iclr}を学習率を$\alpha=0.0001$，$\beta_1=0.9$，$\beta_2=0.999$，L2重み減衰率を$0.01$に設定し，最初の5エポックをウォームアップとした．最大エポックは$50$に設定し，バッチサイズは$16$，WLPデータセットの検証用データを用いて損失関数の値が最小になったモデルを評価に用いた．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{評価尺度}

文の自動評価尺度として広く利用されるBLEU \cite{papineni2002acl}，METEOR \cite{banerjee2005acl}，ROUGE-L \cite{lin2004acl}を用いて評価を行った．BLEUの$N$については$N=1,2,3,4$の値を評価結果として報告する\footnote{評価を行うコードとして，\url{https://github.com/tylin/coco-caption}を用いた（2022年5月11日アクセス）．}．
なお，本研究で利用する手法によって生成されたプロトコルは必ずしも正解のプロトコルと同じ手順数になるとは限らないため，手順レベルでの評価は不可能である．そのため，本研究ではすべての手順を結合し，正解のプロトコルとの文書レベルでの評価結果を報告する．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{定量的評価}
\label{sec:word_overlap}

文生成モデルとして，ベースラインモデル（入力のb-NE列をプロトコルとして出力するモデル），Transformerのみのモデル，Transformerにコピー機構を加えたモデル（以下，Transformer+コピー機構と呼ぶ）との間で比較を行う．\tabref{tab:overlap_metrics}に文の自動評価尺度による結果を示す．この結果より以下の4点のことが明らかとなった．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 10
\begin{table}[t]
\input{03table10.tex}
\caption{文の自動評価尺度による評価結果．太字は最も結果が良い値を示す．}
\label{tab:overlap_metrics}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

第一に，正しいプロトコルの生成には文生成モデルの学習が必須であることである．ベースラインモデルに比べてTransformerモデルの性能が高いことから，このことが確認できる．
第二に，WLPデータセットはBioVL2データセットの文生成に適用可能だということである．WLPデータセットは生物学のプロトコルを収集したものであり，生化学分野のプロトコルを対象としたBioVL2データセットとは分野がやや異なる（生化学は生物学の一分野）．しかし，BioVL2データセットの語彙の83\%はWLPデータセットに現れ，両者のデータセットに大きな差はないことが分かる．第三に，Transformer+コピー機構はTransformerのみの文生成モデルよりも概ね良い性能を発揮することが分かる．これは，矩形アノテーションを付与した物体を正しく生成文に反映できているからと考えられる．
第四に，学習に用いたb-NEタグの種類はモデルの性能に大きく影響を与えることである．全てのb-NEタグを学習に利用したモデル（フィルタリングなし）と，その他のモデルを比較すると後者のモデルは前者のモデルの性能を大きく上回った．また，Reagent，Location，Deviceのみを学習に用いたモデル（フィルタリングなし）とReagentとLocationのみを学習に用いたモデル（フィルタリングなし）を比較すると後者のモデルが概ね良い結果となった．これは，BioVL2データセットに含まれる物体にはReagentとLocationが大きい割合を占めるためと考えられる．一方，単語数によるフィルタリングには大きな性能の変化は見られなかった．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{定性的評価}

図\ref{fig:pcr_generated_protocol}にTransformerのみ，Transformer+コピー機構，そして正解のプロトコルの比較結果を示す．
\secref{sec:introduction}で述べた通り，プロトコルとして正しい点であるためには，生成した各手順は正しく操作対象の物体を記述できており，かつ対応する動詞が正しくあらねばならない．また，必要に応じて副詞，量や時間に関する表現を追加で記述して作業者が再現できる形であらねばならない．
Transformerのみのモデルの場合，正しく物体を予測できている手順も存在する一方で（例：手順1のsterile water），概ね物体の言語化において失敗していることが分かる．例えば，Primer1，Primer2，PrimeSTAR\textregistered などの単語については正しく言及できていない．一方で，コピー機構をTransformerに加えることにより，これらの物体の言及にある程度正しく生成できていることが分かる（例：手順2におけるPrimer1，手順3におけるPrimer2，手順4におけるPrimeSTAR\textregistered など）．
以上の結果を踏まえると，プロトコルとして必要な要件の中で，物体に関する生成という点では，コピー機構を加えることが有用であることが分かる．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 9
\begin{figure}[t]
\begin{center}
\includegraphics{29-4ia3f9.pdf}
\end{center}
\hangcaption{生成したプロトコルと正解のプロトコルの比較（実験はPCR）．利用したモデルは，\tabref{tab:overlap_metrics}中の「Reagent，Location，Deviceのみ学習に利用，単語数によるフィルタリングあり」．各プロトコルの中央列は選択したフレームを示す．ここで，各フレームの下には入力となるb-NE列を表示している．商標登録マーク\textregistered は論文中では図中には記載しているが，実際の生成文および正解の文には含まれていない．}
\label{fig:pcr_generated_protocol}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\textbf{限界点．}コピー機構を入れることである程度正しくプロトコルを生成できるようになった一方で，このモデルには2点の限界点がある．第一に，動詞の生成である．図\ref{fig:pcr_generated_protocol}の手順1においてPrepareという動詞を生成しているが，正確にはAddを生成するべきである．本研究の手法には視覚情報は物体以外入力に与えていないため，動詞を正しく生成できるかは文生成モデルに依存する．この点は信頼性の高いプロトコル生成の点で提案手法が不十分な点の1つであろう．

第二に，全ての物体が必ずしも生成したプロトコル中に含まれるとは限らない点である．図\ref{fig:pcr_generated_protocol}の正解の手順6において``DNA engine''という単語が文中に存在するが，生成したプロトコルの中にはこれが含まれていない．与えた物体を全て言語化することは正しくプロトコルの生成する上で重要であり，この点は今後の課題である．

第三に，数や量についての正しい生成が挙げられる．図\ref{fig:pcr_generated_protocol}中では1 volumeや1 minutes，300lなどの量や時間に関する表現が生成されていることが分かるが，これらの量は実際には適切ではない\footnote{PCR実験においてプロトコルには量は記述されていない．PCRはキットによって試薬の量などがあらかじめ決められているため，実験者はそれを順に操作していくだけとなっている．}．これも，映像の情報を活用していないことの明確な限界点であり，動詞の生成と同じく正しい時間や量が生成されるかどうかは生成モデルに依存する．この量に関する記述も正しいプロトコル生成の点で提案手法の不十分な点であろう．今後，映像の情報を活用した文生成を行っていく必要がある．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 11
\begin{table}[b]
\input{03table11.tex}
\hangcaption{WLPデータセットの訓練データにおける，頻度が最も高い10の動詞とその出現頻度およびPMIが高い物体上位5件．低頻度な単語はPMIが過剰に高くなる傾向があるため，頻度が11以上の物体の上位5件を報告している．}
\label{tab:pmi}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{物体と動詞の自己相互情報量の観点からの文生成モデルの挙動の考察}

図\ref{fig:pcr_generated_protocol}中のTransformer+コピー機構において，手順2や手順3において，物体のみしか与えていないにも関わらず，正しく動詞``Add''を生成できている．前述した通り，これは文生成モデルに依存しているが，ある物体が決まれば正しい動詞を生成できるといったことは起こり得るだろうか．この点を明らかにするために，WLPデータセットの訓練データにおける頻度が最も高い10の動詞，および物体とその出現頻度，および自己相互情報量(PMI)が高い物体，および動詞の上位5件を計算した．
\begin{equation}
    \mathrm{PMI(物体，動詞)} = \log_2 \frac{P(物体，動詞)}{P(物体)P(動詞)} = \log_2 \frac{C(物体，動詞) N}{C(物体)C(動詞)}
\end{equation}
ここで，$C(\cdot)$はある物体か動詞の単語の数，またはその両方が共起する文の数を示す．$N$は訓練データ中の全ての単語数を示す．\tabref{tab:pmi}，\ref{tab:pmi_mats}にその結果を示す．その結果，ある物体に対してPMIの値が極端に高い物体が存在するわけではなく，上位5件は概ね同程度の値を示した．動詞からみた物体についても同様である．このことから，ある動詞あるいは物体に対し，特定の物体や動詞が一意に定まることはないと考えられる．ではなぜ\figref{fig:pcr_generated_protocol}にて正しい動詞を生成できたのであろうか．1つの考えられる仮説として，モデルは高頻度な動詞を生成しやすいことがある．実験において，Primer1やPrimer2は文生成時に未知語として処理されている\footnote{入力が語彙中に存在しない場合，モデルには未知語として与えられる．しかし，コピー機構は入力をそのまま出力文に含められるため，未知語であっても対応する単語をコピーして出力することが可能である．複数未知語が存在する場合に特別な処理を施してはいない．なお，BioVL2中の物体名のうち，未知語を含む物体の割合は34.3\%($=12/35$)であった．}．しかし，addはもっとも頻度が高い動詞であるので，\figref{fig:pcr_generated_protocol}ではこれを出力したものではないかと考えられる．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 12
\begin{table}[b]
\input{03table12.tex}
\hangcaption{WLPデータセットの訓練データにおける，頻度が最も高い10の物体とその出現頻度およびPMIが高い動詞上位5件．低頻度な単語はPMIが過剰に高くなる傾向があるため，頻度が11以上の動詞の上位5件を報告している．}
\label{tab:pmi_mats}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 13
\begin{table}[b]
\input{03table13.tex}
\hangcaption{生成したプロトコルと正解のプロトコルの実験ごとの手順数，および文の自動評価尺度の結果．なお，ここで用いたモデルは\tabref{tab:overlap_metrics}中の「Reagent，Location，Deviceのみ学習に利用，単語数によるフィルタリングあり」である．}
\label{tab:protocol_step_results}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{プロトコルの手順数と性能についての考察}

\tabref{tab:protocol_step_results}に生成したプロトコルと
\pagebreak
正解のプロトコルの間の実験ごとの手順数と文の自動評価尺度の結果を示す．最も手順数の差が最も小さいのはPCRとフェノールクロロホルム法，最も差が大きかったのはミニプレップ法であった．
手順数の差は小さい方が理想的である．一方で，文の自動評価尺度による評価では手順数の差が大きいミニプレップが最も良い性能を示している．生成したプロトコルの手順数が多くなるほど，文書で見た時の単語数が増加し，正解と比較して一致するn-gramが増加する．このことが，文書レベルでの評価を行った時に手順数が最も多いミニプレップが，正解との手順数に差はあれど評価結果が高くなる理由であると考えられる．
今後，プロトコル生成の評価として，手順数の差も考慮に入れた評価，正しい動詞や物体が生成したプロトコル中に現れるかどうかといった，プロトコルの質をその要件と照らし合わせた評価を行う仕組みを検討する必要がある．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{おわりに}

本研究は生化学分野における一人称の実験映像データセットであるBioVL2データセットを構築した．BioVL2データセットは生化学における4種類の基本的な実験に対し，それぞれ8動画撮影した合計32映像からなるデータセットであり，言語アノテーションとして(1)視覚と言語の対応関係のアノテーション，(2)プロトコル中に現れる物体の矩形アノテーションの2種類のアノテーションを付与している．構築したデータセットを用いて，応用課題として実験映像からプロトコルを自動生成する課題に取り組んだ．その結果，ある程度正しくプロトコルを生成できることを確認した．今後，BioVL2データセットは研究用途に限り公開予定である．このデータセットを通して生化学分野における人工知能技術の発展が進むことを強く望む．



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\acknowledgment

本研究はJSPS科研費JP21J20250，JP20H04210，JP21H04910の助成を受けたものです．また，本研究を進めるにあたって，オムロンサイニックエックス株式会社の牛久 祥孝氏からは有益なコメントを頂きました．本論文に内容の一部はThe 4th Workshop on Closing the Loop Between Vision and Language (CLVL21)で発表したものです\cite{nishimura2021iccvw}．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\appendix

\section{WLPデータセットで定義されたタグの種類}
\tabref{tab:tag_kinds}にWLPデータセットで定義された全てのタグ，
\pagebreak
それらが属するカテゴリ，そしてその説明を示す．元論文\cite{kulkarni2018naacl}の定義によると，タグのカテゴリは動作を表すもの（表中のAction），物体に基づく固有表現を示すもの（表中のReagentからSealまで），測量に基づく固有表現（表中のAmountからpHまで），そして品詞に基づく固有表現(ModifierとMention)に分類されている．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 14
\begin{table}[t]
\input{03table14.tex}
\caption{WLPデータセットで定義されたタグ．}
\label{tab:tag_kinds}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{tIoUの計算}

イベントA，イベントB開始時間と終了時間の組からなり，その区間$A$，$B$とする．2つのイベントのtIoUは以下の式で計算できる．
\begin{equation}
    \mathrm{tIoU}(A, B) = \frac{|A \cap B|}{|A \cup B|}
\end{equation}
ここで，$|A \cap B|$と$|A \cup B|$はそれぞれイベント区間の積集合と和集合を表す．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibliographystyle{jnlpbbl_1.6}
\bibliography{03refs}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{biography}

\bioauthor{西村　太一}{
2019年九州大学芸術工学部卒業，2020年京都大学大学院情報学研究科修士課程修了．現在同大学博士課程．修士（情報学）．マルチメディア，自然言語処理，コンピュータビジョンの研究に従事．言語処理学会学生会員．学術振興会特別研究員 (DC1)．}

\bioauthor{迫田航次郎}{2020年神戸大学工学部卒業．2022年京都大学大学院情報学研究科修士課程修了．修士（情報学）．言語処理学会学生会員．}

\bioauthor{牛久　　敦}{2017年京都大学大学院情報学研究科修士課程修了．修士（情報学）．}

\bioauthor{橋本　敦史}{
2005年京都大学工学部卒業，2006年経産省Vulcanus in Europeプログラム国費奨学生．2013年京大大学院情報学研究科にて博士（情報学）取得．現在オムロンサイニックエックス株式会社研究員．主に，料理や組立作業を対象として，未来予測に基づく人と機械のインタラクションに関する研究などに従事．IEEE, IEICE, IPSJ各会員．}

\bioauthor{奥田奈津子}{2012年神戸大学発達科学部卒業．2016年より大阪医科大学（現 大阪医科薬科大学）医学部生命科学講座生理学教室に研究補助員として入職．現在，主たる実験動物ゼブラフィッシュの維持管理と分子生物学研究補助に従事．}

\bioauthor{小野富三人}{1991年東京大学医学部卒業．国立国際医療研究センターの研修医を経て，1996年東京大学医学部博士課程修了．学術振興会特別研究員，ニューヨーク州立大学ポスドク，フロリダ大学助教授，NIH室長をへて2014年より大阪医科大学（現大阪医科薬科大学）生理学教室教授．神経系を中心とした生理学の研究に従事．日本生理学会，北米神経科学会会員．}

\bioauthor{亀甲　博貴}{2018年東京大学大学院工学研究科博士課程修了．博士（工学）．同年より京都大学学術情報メディアセンター助教．自然言語処理，ゲームAI等に関する研究に従事．言語処理学会，情報処理学会各会員．}

\bioauthor{森　　信介}{
1998年京都大学大学院工学研究科電子通信工学専攻博士後期課程修了．同年日本アイ・ビー・エム株式会社入社．2007年より京都大学学術情報メディアセンター准教授．2016年同教授．現在に至る．計算言語学ならびに自然言語処理の研究に従事．博士（工学）．1997年情報処理学会山下記念研究賞受賞．2010年，2013年情報処理学会論文賞受賞．2010年第58回電気科学技術奨励賞．言語処理学会，情報処理学会，日本データベース学会各会員．}
\end{biography}



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\biodate




\end{document}

