0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

oTreeによる調査・実験サイトの作成とAmazon Mechanical Turkでの実行

Last updated at Posted at 2022-06-26

Mturkでは、調査用のテンプレートが用意されていますが、より凝った調査を行いたい場合は、自前で調査・実験用WEBアプリを作る必要があります。

 今回は、実験用WEBアプリの実装において、PythonのoTree[1, 2]というフレームワークを使います。
このoTreeにはoTreeStudio[3]というプログラミングの知識がなくても実験用WEBアプリを作れるツールが用意されています。oTreeHubの有料会員になることで、実験用WEBアプリをHerokuにデプロイすることとmTurkでの調査が簡単になるため、下記ではoTreeStudioを使った場合の解説をします。

1 oTreeによる実験アプリケーションの実装

 oTree Studio.png
 oTreeStudioにおけるtitleと書かれた場所に実験のタイトルを記入し、mturk_templateと書かれた場所に実験参加者への説明を書きます。タイトルに所用時間を記載しておくと閲覧数が増えるそうです[4]。
 また、qualification_requirementsは重要です。oTreehubの初期条件では英語圏の人に限って実験に参加できるようになっています。多くの研究ではHITs承認率が95%以上のワーカーでないと実験に参加できないように設定されています。oTreehubでは、次のコードを追加する必要があります。

  'QualificationTypeId': "000000000000000000L0",
  'Comparator': "GreaterThanOrEqualTo",
  'IntegerValues': [95]

 oTree Studio (1).png

 mTurkの設定ができているのかも確認します。real_world_currency_per_pointは実験におけるポイントと現実の通貨の交換比率です。国際比較を容易にするために、経済ゲーム実験ではポイントが用いられています。participation_feeは0.5に設定してあるため、50セントとなります。

oTree Studio (2).png

 次に、実験のためのアプリケーションを作成する必要があります。oTreeStudioでは調査や経済ゲーム実験用のテンプレートが用意されているので、それを使ってアプリケーションを作成し、実験条件の割当てなど他に必要な要素は自分でコードを書いて補完するとよいでしょう。

 実験のためのアプリケーションが作成できたら、最後に実験参加者がmTurkに入力するための完了コードを載せたページを作ります。

oTree Studio (3).png

 以上で、実験アプリケーションは完成です。続いてHEROKUのデプロイについて解説します。

2 Herokuへのデプロイ

oTreehubでHerokuの設定をします。Herokuのアカウントと連携して、oTreehubでファイルを選択してアップロードします。
 oTreehubから公開できるのは、Standard会員だと非公開プロジェクトが1つ公開プロジェクトが2つだけで、Herokuサーバー上から削除してしまうとプロジェクトの枠がなくなってしまうので注意が必要です。

Deploy.png

 続いて、Amazon Web ServiceでAWS_ACCESS_KEY_ID と AWS_SECRET_ACCESS_KEYを取得する必要があります。

IAM Management C.png

 そして、HerokuにあるアプリケーションのSettingページでconfig varsにAWS_ACCESS_KEY_ID と AWS_SECRET_ACCESS_KEYを設定します。

dyadic · Settin.png

 さらにHerokuのアドオンであるPostgresとRedisを設定する必要があります。PostgresはデータベースでRedisはキーバリュー型データストアです。9$ほど掛かります。

dyadic _ Heroku.png

 以上で完了です。続いてmTurkの設定について解説します。

3 mTurkでの実験

 本番環境で失敗しないために、mTurkで実験する前に、mTurkのsandbox[6]でテストすることが推奨されています。まずは、Sandboxで実験してみましょう。SandboxとAWSのアカウントを紐付ける必要があります。

dyadic_ session .png

 sandboxに行くと、mTurkerには次のように表示されていることが分かります。

A Psychological .png

 自分で解いてみて問題がなければ、チェックを外して本実験を行いましょう。①mTurkでの本実験をするためには、mTurkとAWSのアカウントを紐付ける、②mTurkに事前にお金をチャージする必要があります。
 Mechanical Turk Cost Calculator[5]で予め必要な金額を計算しておくとよいでしょう。

 Mechanical Turk .png

 mTurkで公開するとすぐに参加者が集まります。oTreeでは各参加者がいまどのページを見ているのかを監視することができます。

Videotogif.gif

 公開当初はどんどん実験参加者が増えていきますが、時間が立つにつれ実験参加者が増えるペースは減少していきます。気長に待ちましょう。

 最後に、oTreeのPaymentで実験参加者への支払いを忘れないようにしましょう。Completion codeに表示されている文字列がLast Pageに乗せている文字列と一致するか確認する必要があります。

dyadic_ session  (2).png

 

参考文献

[1]oTree日本語ドキュメント
https://akrgt.gitbook.io/otree-jp/
[2]oTree公式ドキュメント
https://otree.readthedocs.io/en/latest/
[3]oTreehub
https://www.otreehub.com/
[4]実践 Amazon Mechanical Turk
https://www.slideshare.net/Ayako_Hasegawa/amazon-mechanical-turk-92372451
[5]Mechanical Turk Cost Calculator
https://morninj.github.io/mechanical-turk-cost-calculator/
[6]Sandbox
https://requester.mturk.com/developer/sandbox

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?