始める無料で始める

猫のスピード

Instagram のフィードを処理して、どの写真に猫が写っているかを判定する新しい Web サービスに取り組んでいます(理由は聞かないでください——インターネットですから)。データを処理するコードが思ったより遅いので、高速化のチューニングを行っています。画像 image が与えられたとき、次の2つの関数で処理できます。

  • process_with_numpy(image)
  • process_with_pytorch(image)

同僚が、コンテキストブロック内のコードの実行時間を出力するコンテキストマネージャ timer() を作成しました。どちらが速いか確認するために、これを使うことを勧められています。各関数の実行時間を計測し、Web サービスでどちらを使うかを判断してください。

この演習はコースの一部です

Python関数の書き方

コースを見る

演習の手順

  • timer() コンテキストマネージャを使って、process_with_numpy(image) の実行時間を計測してください。
  • timer() コンテキストマネージャを使って、process_with_pytorch(image) の実行時間を計測してください。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

image = get_image_from_instagram()

# Time how long process_with_numpy(image) takes to run
____ ____:
  print('Numpy version')
  process_with_numpy(image)

# Time how long process_with_pytorch(image) takes to run
____ ____:
  print('Pytorch version')
  process_with_pytorch(image)
コードを編集して実行