Kaggle API가 작동하지 않습니다. Pytorch와 fastai로 시작하는 딥 러닝 9장에서 샘플 코드의 에러가 나왔기 때문에 정리한다.

소개



이번에는 "Pytorch와 fastai로 시작하는 딥 러닝"이라는 책의 데이터 세트 취득으로 평소와는 다른 방법으로 Kaggle API를 이용했습니다. 거기서 오류가 나거나 거동이 불안정했기 때문에 데이터 취득 방법에 대해 정리했습니다.

이 책을 하고 있는 분으로 넘어지는 것이 아마 있다고 생각합니다. 도움이되면 기쁩니다.

환경


  • Google Colab

  • 문제



    9장의 데이터 세트를 검색하는 동안 다음 코드에서 오류가 발생했습니다.

    09_tabular.ipynb
    #hide
    from fastbook import *
    # ここでエラーがおきる
    from kaggle import api
    (省略)
    

    발생한 오류는 다음과 같습니다.
    OSError: Could not find kaggle.json. Make sure it's located in /root/.kaggle. Or use the environment method.
    
    kaggle.json 없습니다. 라고 합니다. 물론, 정확히 코드를 실행하는 경우 from kaggle impport api를 제거하고 kaggle.json를 추가 한 다음 실행하십시오.

    삭제된 코드를 실행합니다.

    09_tabuler.ipynb
    # 2つ目のセル
    #hide
    from fastbook import *
    from pandas.api.types import is_string_dtype, is_numeric_dtype, is_categorical_dtype
    from fastai.tabular.all import *
    from sklearn.ensemble import RandomForestRegressor
    from sklearn.tree import DecisionTreeRegressor
    from dtreeviz.trees import *
    from IPython.display import Image, display_svg, SVG
    
    pd.options.display.max_rows = 20
    pd.options.display.max_columns = 8
    

    계속해서 다음 셀도 실행합니다.
    # 3つ目のセル
    # kaggleに登録してAccountからAPIキー(kaggle.json)をダウンロードする
    creds = 'kaggle.jsonの内容をここにはりつける'
    
    # 4つ目のセル
    cred_path = Path('~/.kaggle/kaggle.json').expanduser()
    if not cred_path.exists():
        cred_path.parent.mkdir(exist_ok=True)
        cred_path.write_text(creds)
        cred_path.chmod(0o600)
    
    # 5つ目のセル
    path = URLs.path('bluebook')
    path
    
    # 6つ目のセル
    #hide
    Path.BASE_PATH = path
    
    # 新たにセルを追加
    from kaggle import api
    

    그런 다음 다운로드를 위해 다음 셀을 실행합니다.
    if not path.exists():
        path.mkdir(parents=true)
        api.competition_download_cli('bluebook-for-bulldozers', path=path)
        file_extract(path/'bluebook-for-bulldozers.zip')
    
    path.ls(file_type='text')
    

    그러면 여기에서도 오류가 발생합니다.
    이번에는 이 오류의 대처법을 중심으로 기사로 합니다.

    해결 방법



    여기에서 발생하는 오류를 해결하려면 다음 작업이 필요합니다.
    책에는 설명이 없었습니다.

    1. Kaggle에서 경쟁 사이트에 액세스



    여기 로 이동합니다.
    이 데이터 세트가 사용되는 Complete Blue Book for Bulldozers의 페이지입니다.

    거기에서 규칙 으로 이동하여 I Understand and Accept 를 클릭하여 사용할 수 있습니다.



    클릭한 후에는 이렇게 됩니다.



    또한,
    if not path.exists():
        path.mkdir(parents=true)
        api.competition_download_cli('bluebook-for-bulldozers', path=path)
        file_extract(path/'bluebook-for-bulldozers.zip')
    
    path.ls(file_type='text')
    

    한 번 다운로드에 실패하면 캐시의 영향으로 다운로드를 할 수 없기 때문에 ランタイムの再起動を行う必要があります
    그러면 성공적으로 다운로드할 수 있습니다.

    사이고에게



    책을 공부하고 있으면 언제 책대로 할 수 없게 될지 히야히야합니다.
    그러나 과연 오라일리. 코드도 모두 Colab에서 준비되어 있으므로 대부분의 것은 책대로 움직일 수 있습니다. (책이 잘못되어 움직이지 않는 것도 있지만 샘플 코드는 움직입니다)

    그런 가운데 움직이지 않는 코드는 드물지만 어떻게든 움직이게 되어 좋았습니다.

    참고



  • Blue Book for Bulldozers
  • 공식 Colab 코드
  • 좋은 웹페이지 즐겨찾기