ใช้ 製紙機ทำ 自動化กับ ノートブック
4263 ワード
背景
ในยุคนี้เวลาที่ชาว データ科学者อยากจะสื่อสารผลที่ได้จากการวิเคราะห์ข้อมูลกับฝั่ง ビジネスหรืออยากที่จะสร้างโมเดลทำนายผลทางธุรกิจสักอย่างหนึ่ง Jupyter Notebooks จะเป็นอาวุธหรือเครื่องมือสำคัญที่ส่วนใหญ่เราจะหยิบเอามาใช้กัน ซึ่งข้อดีของเครื่องมือตัวนี้ก็คือมันสามารถเป็นทั้ง 書類เป็น ライブコードรวมไปถึง 可視化ภายในตัว
挑戦
แต่อย่างไรก็ดี เครื่องมือตัวนี้ยังมีข้อจำกัดอยู่ที่ว่าเวลาที่เรา
製紙機の紹介
บทความนี้เลยอยากจะมาแนะนำเครื่องมือ オープンソースตัวหนึ่งที่ชื่อ Papermill ครับ เค้าว่ามาแบบนี้
Papermill is a tool for parameterizing and executing Jupyter Notebooks.
หมายความว่าเราสามารถที่จะ
สิ่งที่ 製紙機ทำมีอยู่ 3ขั้นตอนสั้นๆ คือ
製紙工場を始める
ติดตั้ง 製紙機กับ Jupyterノートブックก่อนครับ
pip install papermill jupyter
เสร็จแล้วก็ให้เปิด サーバของ Jupyterノートブックขึ้นมาjupyter notebook
เสร็จแล้วก็เขียนโค้ดตามปกติประมาณนี้
ต่อไปให้เรากำหนด タグให้กับ 細胞ที่เราอยากให้เป็น パラメータครับ วิธีกำหนดก็ตามรูปด้านล่างนี้เลย กดที่ 細胞นั้นๆ ก่อน

ให้เราใส่ タグเป็นคำว่า
parameters
ครับ
เสร็จแล้วให้เราไปที่ 端末แล้วสั่ง
papermill -p name 'Kan' -p x 9 -p y 8 main.ipynb output.ipynb
คำสั่งด้านบนนี้แปลว่าเรากำหนด パラメータตามนี้name
ให้มีค่าเป็น 文字列มีค่า 'Kan'
x
ให้เป็น 整数มีค่า 9y
ให้เป็น 整数มีค่า 8output.ipynb
ดูครับ จะเป็นประมาณนี้
เห็นได้ว่า 製紙機มาแทรก 細胞ที่มี タグชื่อ
injected-parameters
ไว้ข้างใต้ 細胞ของเราที่ タグไว้ก่อนหน้านี้ ซึ่งทำให้ 細胞ถัดๆ ไปได้ใช้ค่า パラメータที่โดน 注入するเข้าไปแทนที่จะใช้ パラメータที่เรากำหนดไว้ตอนแรกดูเป็นวิธีที่ シンプルมากๆ แต่แก้ปัญหาได้เยอะเลยนะ งดงามมาก
ใครอยากเห็นโค้ดที่ใช้ในบทความนี้ ตามไปดูกันได้ที่ hello-papermill
ใครที่ใช้ 製紙機กันอยู่ อยากรู้จังว่าเอาไปใช้ใน ユースケースไหนกันบ้าง แชร์กันมาได้นะครับ ^^
ปล. ถ้าเราไม่ タグคำว่า
parameters
ที่ 細胞ของเราไว้ 製紙機จะใส่ injected-parameters
ไว้ที่ 細胞ด้านบนสุดให้Reference
この問題について(ใช้ 製紙機ทำ 自動化กับ ノートブック), 我々は、より多くの情報をここで見つけました https://dev.to/dataength/papermill-automation-jupyter-notebooks-n91テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol