評価指標 | AI tech studio https://cyberagent.ai AI事業本部は、サイバーエージェントグループのデジタルマーケティング分野におけるサービス開発を行う組織です。 Thu, 06 Apr 2023 10:12:45 +0000 ja hourly 1 https://wordpress.org/?v=5.3.26 【採択論文紹介】クラウドソーシングを使った画像生成の評価 (CVPR2023) https://cyberagent.ai/blog/research/computervision/18702/ Thu, 06 Apr 2023 10:11:14 +0000 https://ai-blog-admin.cyberagent.ai/?post_type=blog&p=18702 Media fundamentalsチームの大谷です。今回はText-to-Imageモデルを人手で評価する方法について分析した研究について概説します。この研究成果はCVPR2023に採択されています。論文はこちら。

画像生成の良さはどうやって評価する?

最近は高品質な画像生成AIが発表されて、世間でも非常に注目されています。研究でもここ数年、大量の論文が出版されています。ですが新しい画像生成モデルが次々と開発されている一方で、そのモデルを評価する方法はまだまだ発展途上です。

生成された画像の性能を測る方法として、研究では自動評価指標が主に使われています。例えば一般的な画像生成でよく使われるFID(Fréchet inception distance)は、生成された画像の集合と本物の画像の集合をある特徴空間に埋め込み、その空間でそれぞれの分布がどれだけ近いかを測定しています。FIDは多くの研究で採用されていますが、欠点も多く報告されています。例えば、人の知覚としては軽微な変化に過剰に反応したりするなど、FIDにおいて良いモデルが人にとって必ずしも良いとは言えないことが知られています。

また画像とテキストの内容がどの程度正確に対応しているかを判定することも、まだ難しい点があります。最近は大規模な画像とテキストのペアデータから、画像とテキストの対応づけを可能とする強力なモデルが発表されていますが、十分に細かい内容まで正確に扱うのはまだ難しいところがあります。特にここ最近は画像生成モデルの性能がどんどん上がってきているので、生成された内容の正確性を評価しようと思うと、細かい対応まで考慮した評価が必要になってくると考えられます。

そこで今回の研究では、あらためて人による画像生成の評価に取り組みました。人は画像とテキストを高いレベルで理解することができるので、自動評価では見落とされていたことがわかるかもしれません。また人による評価ラベルを収集すれば、自動評価指標と人の判断のズレを分析することで自動評価指標自体の評価にも使えるなど、自動評価の改良にとっても有益です。

人によるText-to-Image生成評価実験の現状

これまでの研究でも人を使った評価実験は実施されてきました。ですが、この分野として共有された評価方法は確立されていません。そのため、論文がそれぞれみんな違う方法で画像の品質を評価しており、いったいどうやって評価したらいいのかわかりにくい状態になっています。

この研究ではまず主要なコンピュータビジョンの会議で出版されたText-to-Imageに関する論文など37本を調査しました。結果見えてきた現状の人手評価における主な課題は以下の2点です。

1. 実験の詳細報告が不十分
2. 収集されたデータの品質をチェックしていない

まず実験詳細の不透明性についてですが、例えば、一つのサンプルに対して評価したアノテータの数などはデータの信頼性を判断する上で重要な項目なのですが、ほとんどの論文でこの人数は明記されていません。また実際のアノテーションタスクで使われたインターフェースなども公開されていないことが多いです。

また、データ収集方法を正しく設計しないと、同じサンプルに対するアノテータの回答がバラバラになったり、間違った回答を誘発してしまいます。そのような問題を検知するために、アノテータの間の一致率をチェックするなど、収集したデータの品質をチェックすることは実験の信頼性を確かめる上で重要な手順です。しかし、調査した論文の中でそのような分析、特にアノテータ間の一致率を報告している論文はありませんでした。

人による評価実験方法の共有

このような現状をふまえて、今回の研究ではクラウドソーシングを使って評価実験をする標準的な方法を実装し、今後の研究でも使えるように整備することを目指しました。また分野として結果報告のやり方にも問題があることがわかったので、報告文のサンプルなど、今後の評価がやりやすくなるようなリソースを作ることにしました。

この研究では特に新しい評価方法の提案などはしていませんが、実験的に適切な評価方法の設計を探索しました。その過程については論文を参照ください。

自動評価と人による評価

実験ではいくつかの画像生成モデルを使って画像を生成し、(1)画像が本物に見えるか、また(2)入力キャプションの内容を正確に反映しているか、の2点について人手評価したデータを収集しました。そして自動評価指標の評価結果と比較しました。

まず主要な自動評価指標であるFIDの良さと、人が画像を本物らしいと判断するかどうかはあまり一致していないことが確認されました。このような傾向は従来の研究でも多く指摘されています。

もう一つの指標としてCLIPScoreと比較しました。CLIPScoreは、画像のキャプション生成のための指標として提案されましたが、最近では画像生成でも、キャプションと画像の意味的な類似度を計測するために使われるようになっています。この指標についても、やはり人の感覚とは異なる結果になることがわかりました。さらに本物の画像とキャプションのペアよりも、生成された画像との類似度の方が高く評価されていることも確認されました。少なくとも、より良いモデルができたとしても、その改善幅をCLIPScoreで適切に評価することはできなさそうです。やはり自動評価指標のみに頼ることはまだ難しいと言えるでしょう。

CLIPScoreの例。不正確な生成画像が高いCLIPScoreを達成している例。

キャプションに対応する本物の画像よりも、生成された画像の方が高いCLIPScoreを達成している例。テキストとの対応がより正確というわけではなさそうです。

人による評価のこれから

今回はクラウドソーシングを利用してText-to-Image生成を評価をする標準的な方法を整備しましたが、まだまだ改善の余地が残されています。たとえば、信頼性のある結果を得るにはそれなりの量のデータを収集する必要があるのですが、その結果、一回の評価実験にかかる費用は高額になりがちです。アノテーションインターフェースの改善や評価をするデータの選出方法を工夫することで、この費用を抑えることはできると思います。今回の実験方法はオープンソースにする予定なので、今後画像生成コミュニティで改善していくことができれば理想的です。

]]>
【CVPR’22】物体検出アルゴリズムの新しい評価指標 https://cyberagent.ai/blog/research/computervision/16366/ Fri, 01 Apr 2022 01:05:10 +0000 https://ai-blog-admin.cyberagent.ai/?post_type=blog&p=16366 Media fundamentalsチームの大谷です。今回は物体検出を評価するための新しい指標を設計したので、その研究について概要を解説します。この研究成果はCVPR2022に採択されています。論文のリンクはこちらです。

 

Mean Average Precisionはなにを見ている?

物体検出の評価では多くの場合Mean Average Precision (mAP)が使われています。まずAPについて概要を確認しておきましょう。APは検出したオブジェクトをconfidence score順に並べてprecision-recall curveを求め、その曲線の下の面積で求められます。これをカテゴリごとに計算し、全てのカテゴリ上で平均したものがmAPです。ここでは詳細に触れませんが、実際のAPの計算では諸々の実装上の事情があり、それらがAPの振る舞いにおいて少なくない影響を及ぼしています。ここの説明はAPが評価しているものについての簡単な説明なので、実際のAP計算とは異なる点があるので悪しからず。

mAPは物体検出をデータセット全体から見つけたオブジェクトのランキング問題として評価しています。この前提は物体検出を開発しているコミュニティでもあまり意識されていない点ではないでしょうか。この「データセット全体における」「ランキング問題」として物体検出を評価するという姿勢は、なかなかに強い前提です。

一つ論文で出した極端な例を紹介します。下のイラストに示すような、アヒルとロバの検出器、A,B,Cと3枚の画像からなるデータセットを考えます。この例ではある検出器Bはデータセットの画像2枚を完全に無視していますが、mAP上では検出器Aと区別がつきません。APは見つけたオブジェクトを画像からひっぺがして評価するので、データセットの画像それぞれで検出が成功したかどうかという情報は基本的には失われています。これはある画像グループで性能が極端に悪くなっていたとしても、評価指標上では現れないことがあるということです。これは多様な画像で安定した性能を求められるようなアプリケーション、例えば画像認識APIの評価などでは好ましくないでしょう。また検出器Cは大量のロバを誤検出しています。しかし、これらの誤検出はAPを下げません。これは検出された物体のうち、正しいものが誤検出よりも上位にランキングされているかどうかを重視しており、ランキング下位の誤検出については直接ペナルティを課していないことが理由です。

もう一つ、クラス識別を重視するという点もAPの特徴的なスタンスです。APでは予測クラスが間違っていた場合、その検出結果は「完全な失敗」として扱われ、位置の正確性については評価されません。これは扱うクラス数が膨大な場合や、クラス識別よりも位置の予測を重視するアプリケーションには少々厳しすぎる方針かもしれません。

このようにmAPには、データセット全体に対するランキング性能を見ていることに由来する、評価の「クセ」があります。以下は今回の研究で注目したmAPの性質です。

 

  • 物体検出をデータセット全体における検出物体のランキングとして扱っている

  • confidence scoreの低い誤検出の影響は小さい

  • 各画像のAPに対する影響は平等ではない

  • クラス識別が位置推定よりも重視される

  • 評価時に参照する真値アノテーションが最適でない場合がある

 

これらの特徴のほとんどは良い悪いというものではありません。最終的にやりたいことが画像データセット全体から見つけた物体領域のうちconfidence scoreの上位~%を検出とするようなアプリケーションであれば、これらの性質はそれなりに妥当と言えそうです。評価の際は最終的にどんな検出器が欲しいのかを考慮して、目的に合った評価指標を使うことが理想でしょう。ですが、今のところ物体検出に関してはAPとAPをベースに改良された指標がいくつかあるぐらいで、実質的な選択肢は限られています。そこで今回は、APとは違った発想で検出結果を評価する別の指標を考えました。

Optimal Correction Cost

今回提案した指標はOptimal Correction Cost (OC-cost)と呼んでいます。OC-costは誤差を含む検出結果を正解に修正するためにかかるコストを使って、検出結果の品質を測ります。この方法は去年物体検出モデルの学習法として提案されたOTAを参考にしています。実際、その最終的な目的を学習とするか評価とするかで、OTAと提案指標は設計が異なってきますが、技術的には多くの部分で共通しています。

まず検出結果と真値アノテーションからコスト行列を作ります。コスト行列のそれぞれの要素はある検出結果を真値アノテーションのどれかに修正するためにかかるコストです。このコストはクラス識別に関する誤差と予測位置の誤差から計算します。このコスト行列からトータルの修正コストが最小となるような検出結果と真値アノテーションの対応を最適輸送問題を解くことで求めます。そしてその時かかった修正コストをOC-costとします。バウンディングボックスに対する編集距離のようなイメージです。この指標の性質としては以下のようなものがあります

  • 画像1枚に対して検出精度を評価できる

  • 識別の誤差と位置ずれの誤差を同時に評価できる(クラス識別が間違っていても位置予測精度は評価される)

  • 適当な真値アノテーションとの比較に基づく評価ができる

  • 余分な検出に対してペナルティを積極的に与える

繰り返しになりますが、この性質も最終的なアプリケーションによって良し悪しです。基本的には画像1枚1枚の検出精度が重要で、事前に検出結果を間引いておく必要があるようなアプリケーションに合っていると思います。

 

OC-costの実例

実際にこの指標の振る舞いを実例を使ってみていきます。左からOC-costが低い(=良いと判断された)検出結果です。まあまあ納得感のある結果ではないでしょうか。

 

次にmAPとOC-costをそれぞれ使って検出結果をフィルタリングするパラメータを調整してみます。具体的にはNon maximum supressionの閾値パラメータをmAPを最大化、あるいはOC-costを最小化するようにパラメータを最適化しています。この結果を見比べてみることで、それぞれの指標がどのような検出器を高く評価するのかわかります。以下が実例です。

 

mAPは正しい検出結果を得るチャンスを上げるために、なるべくたくさんの予測を出すモデルを好みます。余計な検出が大量に出力されたとしても、そのconfidence scoreが相対的に低ければあまり問題としません。mAPはユーザがそれぞれconfidence scoreの適切な閾値を決めるものと想定しています。一方、OC-costは余計な検出にはペナルティを与えます。検出結果を事前にフィルタリングしておく必要があるような場合にはOC-costを用いたチェックが有効でしょう。

さいごに

物体検出アルゴリズムの新しい評価指標を紹介しました。さらに詳しい内容については論文を見ていただけると幸いです。さて、物体検出の評価もこれをもって十分とはまだ言えません。また他の領域でも評価方法の改良はまだまだやることがありそうです。コンピュータビジョンの発展に評価の観点から貢献することに興味のある方がいればぜひご連絡ください。

]]>