ভূমিকা
এই টিউটোরিয়ালটি টেনসরফ্লো এক্সটেন্ডেড (টিএফএক্স) এবং ক্লাউড এআই প্ল্যাটফর্ম পাইপলাইনগুলি উপস্থাপনের জন্য ডিজাইন করা হয়েছে এবং গুগল ক্লাউডে আপনার নিজস্ব মেশিন লার্নিং পাইপলাইন তৈরি করতে শিখতে আপনাকে সহায়তা করে। এটি টিএফএক্স, এআই প্ল্যাটফর্ম পাইপলাইনস এবং কুবেফ্লো এর সাথে একত্রীকরণের পাশাপাশি জুপিটার নোটবুকগুলিতে টিএফএক্সের সাথে ইন্টারঅ্যাকশন দেখায়।
এই টিউটোরিয়ালটির শেষে, আপনি গুগল ক্লাউডে হোস্ট করা একটি এমএল পাইপলাইন তৈরি এবং পরিচালনা করবেন। আপনি প্রতিটি রানের ফলাফলগুলি ভিজ্যুয়ালাইজ করতে সক্ষম হবেন এবং তৈরি শিল্পকর্মগুলির বংশটি দেখতে পারবেন।
আপনি একটি সাধারণ এমএল বিকাশ প্রক্রিয়া অনুসরণ করবেন, ডেটাসেট পরীক্ষা করে শুরু করে এবং একটি সম্পূর্ণ কাজের পাইপলাইন দিয়ে শেষ করে। আপনি আপনার পাইপলাইনটি ডিবাগ এবং আপডেট করার উপায়গুলি অনুসন্ধান করতে পারবেন এবং কার্য সম্পাদন পরিমাপ করবেন।
শিকাগো ট্যাক্সি ডেটাসেট
আপনি শিকাগো শহর দ্বারা প্রকাশিত ট্যাক্সি ট্রিপস ডেটাসেট ব্যবহার করছেন।
আপনি গুগল বিগকুয়েরিতে ডেটাসেট সম্পর্কে আরও পড়তে পারেন। বিগকোয়ারী ইউআই-তে সম্পূর্ণ ডেটাসেট অন্বেষণ করুন।
মডেল লক্ষ্য - বাইনারি শ্রেণিবদ্ধকরণ
গ্রাহক আরও বা কম 20% টিপ দেবে?
1. একটি গুগল ক্লাউড প্রকল্প সেট আপ করুন
1.a গুগল ক্লাউডে আপনার পরিবেশ সেট আপ করুন
শুরু করতে আপনার একটি Google মেঘ অ্যাকাউন্ট প্রয়োজন need আপনার যদি ইতিমধ্যে একটি থাকে তবে নতুন প্রকল্প তৈরি করতে এগিয়ে যান।
গুগল ক্লাউড কনসোলে যান।
গুগল ক্লাউডের শর্তাবলী এবং সাথে সম্মত হন ree
আপনি যদি নিখরচায় পরীক্ষামূলক অ্যাকাউন্ট দিয়ে শুরু করতে চান তবে ট্রাই ফর ফ্রিতে ক্লিক করুন (বা বিনামূল্যে শুরু করুন )।
তোমার দেশ নির্বাচন কর.
পরিষেবার শর্তাদিতে সম্মত হন।
বিলিংয়ের বিশদ লিখুন।
এই মুহুর্তে আপনাকে চার্জ করা হবে না। আপনার যদি অন্য কোনও গুগল ক্লাউড প্রকল্প না থাকে তবে আপনি গুগল ক্লাউড ফ্রি টিয়ার সীমা অতিক্রম না করেই এই টিউটোরিয়ালটি সম্পূর্ণ করতে পারেন, এতে একই সময়ে সর্বাধিক ৮ টি কোর চলবে।
1.b একটি নতুন প্রকল্প তৈরি করুন।
- প্রধান গুগল ক্লাউড ড্যাশবোর্ড থেকে গুগল ক্লাউড প্ল্যাটফর্ম শিরোনামের পাশের প্রকল্পের ড্রপডাউনটি ক্লিক করুন এবং নতুন প্রকল্প নির্বাচন করুন।
- আপনার প্রকল্পের একটি নাম দিন এবং অন্যান্য প্রকল্পের বিশদ লিখুন
- আপনি একবার একটি প্রকল্প তৈরি করার পরে, এটি প্রকল্পের ড্রপ-ডাউন থেকে নির্বাচন করুন।
২. একটি নতুন কুবারনেটস ক্লাস্টারে একটি এআই প্ল্যাটফর্ম পাইপলাইন স্থাপন এবং স্থাপন করুন
এআই প্ল্যাটফর্ম পাইপলাইন ক্লাস্টার পৃষ্ঠাতে যান।
প্রধান নেভিগেশন মেনু এর অধীনে: AI> এআই প্ল্যাটফর্ম> পাইপলাইন
একটি নতুন ক্লাস্টার তৈরি করতে + নতুন ইনস্ট্যান্স ক্লিক করুন।
কুবেফ্লো পাইপলাইন ওভারভিউ পৃষ্ঠাতে কনফিগার করুন এ ক্লিক করুন।
আপনাকে অগ্রসর হওয়ার আগে কয়েক মিনিট অপেক্ষা করতে হতে পারে, যখন কুবারনেটস ইঞ্জিন এপিআই আপনার জন্য সক্ষম করা হবে।
ডিপ্লয়ে কুবেফ্লো পাইপলাইন পৃষ্ঠায়:
আপনার ক্লাস্টারের জন্য একটি অঞ্চল (বা "অঞ্চল") নির্বাচন করুন।
গুরুত্বপূর্ণ নীচের ক্লাউড এপিআইগুলিতে অ্যাক্সেসের অনুমতি দিন লেবেলযুক্ত বক্সটি চেক করুন। (এই ক্লাস্টারের জন্য আপনার প্রকল্পের অন্যান্য টুকরো অ্যাক্সেসের প্রয়োজন এটি যদি আপনি এই পদক্ষেপটি মিস করেন তবে পরে এটি ঠিক করা কিছুটা জটিল)
তৈরি ক্লিক করুন এবং ক্লাস্টারটি তৈরি না হওয়া পর্যন্ত কয়েক মিনিট অপেক্ষা করুন ।
একটি নেমস্পেস এবং উদাহরণের নাম নির্বাচন করুন (ডিফল্টগুলি ব্যবহার করে ভাল হয়)। আপনার ব্যবহার করা পরিচালিত স্টোরেজ পরীক্ষা করতে হবে না।
স্থাপন ক্লিক করুন, এবং যতক্ষণ না পাইপলাইন স্থাপন করা হয়েছে বিভিন্ন মুহূর্ত অপেক্ষা করুন। কুবেফ্লো পাইপলাইন মোতায়েনের মাধ্যমে আপনি পরিষেবার শর্তাদি স্বীকার করেন।
৩. ক্লাউড এআই প্ল্যাটফর্ম নোটবুক উদাহরণটি সেট আপ করুন।
এআই প্ল্যাটফর্ম নোটবুক পৃষ্ঠাতে যান।
প্রধান নেভিগেশন মেনু এর অধীনে: ≡ -> এআই প্ল্যাটফর্ম -> নোটবুক
যদি অনুরোধ করা হয় তবে কম্পিউট ইঞ্জিন এপিআই সক্ষম করুন।
টেনসরফ্লো ২.১ (বা তার চেয়ে বেশি) ইনস্টল করে একটি নতুন ইনস্ট্যান্স তৈরি করুন।
নতুন উদাহরণ -> টেনসরফ্লো 2.1 -> জিপিইউ ছাড়াই
ফ্রি টিয়ার সীমাতে থাকার জন্য, এখানে ডিফল্ট সেটিংস গ্রহণ করবেন না। আপনাকে এই উদাহরণে উপলব্ধ ভিসিপিইউগুলির সংখ্যা 4 থেকে 2 থেকে হ্রাস করতে হবে:
- নতুন নোটবুক উদাহরণ ফর্মের নীচে কাস্টমাইজ নির্বাচন করুন ।
1 বা 2 টি ভিসিপিইউ সহ একটি মেশিন কনফিগারেশন নির্বাচন করুন।
4. প্রারম্ভিক নোটবুক চালু করুন
এআই প্ল্যাটফর্ম পাইপলাইন ক্লাস্টার পৃষ্ঠাতে যান।
প্রধান নেভিগেশন মেনু এর অধীনে: ≡ -> এআই প্ল্যাটফর্ম -> পাইপলাইন
আপনি এই টিউটোরিয়ালে যে ক্লাস্টারটি ব্যবহার করছেন তার লাইনে, পাইপলাইনস ড্যাশবোর্ড খুলুন ক্লিক করুন।
শুরু করা পৃষ্ঠায়, টিএফ 2.1 নোটবুক খুলুন ক্লিক করুন।
আপনি এই টিউটোরিয়ালটির জন্য নোটবুক উদাহরণটি নির্বাচন করুন এবং চালিয়ে যান Continue
৫. নোটবুকে কাজ চালিয়ে যান
ইনস্টল করুন
শুরু করা নোটবুকটি স্কেফোল্ড মডিউল সহ জুপিটার ল্যাব চালাচ্ছে এমন ভিএম- তে টিএফএক্স এবং কুবেফ্লো পাইপলাইনস (কেএফপি) ইনস্টল করে শুরু হবে:
এরপরে এটি ব্যবহারকারীর পাইথন বাইনারি ডিরেক্টরি এবং skaffold
সহ একটি ডিরেক্টরি অন্তর্ভুক্ত করার জন্য PATH
সেট করে:
এরপরে টিএফএক্স এর কোন সংস্করণ ইনস্টল করা আছে, একটি আমদানি করে এবং প্রকল্প আইডি সেট করে এবং মুদ্রণ করে তা পরীক্ষা করে:
আপনার গুগল ক্লাউড পরিষেবাগুলির সাথে সংযুক্ত হন
পাইপলাইন কনফিগারেশন আপনার প্রজেক্ট আইডি প্রয়োজন, যা আপনি নোটবুকের মাধ্যমে পেতে পারেন এবং পরিবেশগত পরিবর্তনশীল হিসাবে সেট করতে পারেন।
# Read GCP project id from env.
shell_output=!gcloud config list --format 'value(core.project)' 2>/dev/null
GCP_PROJECT_ID=shell_output[0]
print("GCP project ID:" + GCP_PROJECT_ID)
এখন আপনার কেএফপি ক্লাস্টার শেষ পয়েন্ট সেট করুন।
এটি পাইপলাইন ড্যাশবোর্ডের URL থেকে পাওয়া যাবে। কুবেফ্লো পাইপলাইন ড্যাশবোর্ডে যান এবং URL টি দেখুন। শেষবিন্দু পর URL- এ সবকিছু https://
, আপ, এবং সহ googleusercontent.com
।
ENDPOINT='' # Enter YOUR ENDPOINT here.
নোটবুকটি কাস্টম ডকার চিত্রের জন্য একটি অনন্য নাম সেট করে:
# Docker image name for the pipeline image
CUSTOM_TFX_IMAGE='gcr.io/' + GCP_PROJECT_ID + '/tfx-pipeline'
Your. আপনার প্রকল্প ডিরেক্টরিতে একটি টেম্পলেট অনুলিপি করুন
আপনার পাইপলাইনের জন্য একটি নাম সেট করতে পরবর্তী নোটবুক সেলটি সম্পাদনা করুন। এই টিউটোরিয়ালে আমরা my_pipeline
ব্যবহার my_pipeline
।
PIPELINE_NAME="my_pipeline"
PROJECT_DIR=os.path.join(os.path.expanduser("~"),"imported",PIPELINE_NAME)
নোটবুকটি পাইপলাইন টেমপ্লেটটি অনুলিপি করতে tfx
CLI ব্যবহার করে। এই টিউটোরিয়ালটি বাইনারি শ্রেণিবদ্ধকরণ করতে শিকাগো ট্যাক্সি ডেটাসেট ব্যবহার করে, তাই টেমপ্লেটটি মডেলটিকে taxi
সেট করে:
!tfx template copy \
--pipeline-name={PIPELINE_NAME} \
--destination-path={PROJECT_DIR} \
--model=taxi
নোটবুকটি তারপরে সিডাব্লুডি প্রসঙ্গে প্রকল্প ডিরেক্টরিতে পরিবর্তন করে:
%cd {PROJECT_DIR}
পাইপলাইন ফাইলগুলি ব্রাউজ করুন
ক্লাউড এআই প্ল্যাটফর্ম নোটবুকের বাম দিকে, আপনার একটি ফাইল ব্রাউজার দেখতে হবে। আপনার পাইপলাইন নাম ( my_pipeline
) সহ একটি ডিরেক্টরি থাকতে হবে। এটি খুলুন এবং ফাইলগুলি দেখুন। (আপনি এগুলি খুলতে এবং নোটবুকের পরিবেশ থেকেও সম্পাদনা করতে সক্ষম হবেন))
# You can also list the files from the shell
ls
উপরের tfx template copy
কমান্ড ফাইলগুলির একটি বেসিক স্ক্যাফোল্ড তৈরি করেছে যা পাইপলাইন তৈরি করে। এর মধ্যে পাইথন সোর্স কোড, নমুনা ডেটা এবং জুপিটার নোটবুক অন্তর্ভুক্ত রয়েছে। এগুলি এই নির্দিষ্ট উদাহরণের জন্য বোঝানো হয়েছে। আপনার নিজস্ব পাইপলাইনের জন্য এগুলি আপনার পাইপলাইনের জন্য প্রয়োজনীয় ফাইলগুলির সহায়তা করবে requires
পাইথন ফাইলগুলির সংক্ষিপ্ত বিবরণ এখানে দেওয়া হল।
-
pipeline
- এই ডিরেক্টরিতে পাইপলাইনের সংজ্ঞা রয়েছে-
configs.py
- পাইপলাইন রানারদের জন্য সাধারণconfigs.py
সংজ্ঞা দেয় -
pipeline.py
- টিএফএক্স উপাদান এবং একটি পাইপলাইন সংজ্ঞায়িত করে
-
-
models
- এই ডিরেক্টরিতে এমএল মডেল সংজ্ঞা রয়েছে।-
features.py
features_test.py
- মডেলের বৈশিষ্ট্যগুলি সংজ্ঞায়িত করে -
preprocessing.py
/preprocessing_test.py
-tf::Transform
ব্যবহার করে প্রিপ্র্রোসেসিং কাজের সংজ্ঞা দেয় -
estimator
- এই ডিরেক্টরিতে একটিestimator
ভিত্তিক মডেল রয়েছে।-
constants.py
- মডেলের ধ্রুবককে সংজ্ঞায়িত করে -
model.py
/model_test.py
-model.py
model_test.py
ব্যবহার করে ডিএনএন মডেলকে সংজ্ঞায়িত করে
-
-
keras
- এই ডিরেক্টরির একটি Keras ভিত্তিক মডেল রয়েছে।-
constants.py
- মডেলের ধ্রুবককে সংজ্ঞায়িত করে -
model.py
/model_test.py
- কেরাস ব্যবহার করে ডিএনএন মডেলকে সংজ্ঞায়িত করে
-
-
-
beam_dag_runner.py
/kubeflow_dag_runner.py
- প্রতিটি অর্কেস্ট্রেশন ইঞ্জিনের জন্য রানার সংজ্ঞায়িত করুন
7. কুবেফ্লোতে আপনার প্রথম টিএফএক্স পাইপলাইন চালান
নোটবুক tfx run
সিএলআই কমান্ডটি ব্যবহার করে পাইপলাইনটি tfx run
।
স্টোরেজ সংযোগ করুন
চলমান পাইপলাইনগুলি শৈলী তৈরি করে যা এমএল-মেটাডেটাতে সঞ্চয় করতে হয়। শিল্পকলাগুলি প্যলোডগুলি বোঝায়, এটি এমন ফাইল যা অবশ্যই কোনও ফাইল সিস্টেম বা ব্লক স্টোরেজে সংরক্ষণ করতে হবে। এই টিউটোরিয়ালের জন্য, আমরা সেটআপের সময় স্বয়ংক্রিয়ভাবে তৈরি করা বালতিটি ব্যবহার করে আমাদের মেটাডেটা পেইলডগুলি সঞ্চয় করতে জিসিএস ব্যবহার করব। এর নামটি হবে <your-project-id>-kubeflowpipelines-default
।
পাইপলাইন তৈরি করুন
নোটবুকটি জিএসসি বালতিতে আমাদের নমুনা ডেটা আপলোড করবে যাতে আমরা পরে এটি আমাদের পাইপলাইনে ব্যবহার করতে পারি।
gsutil cp data/data.csv gs://{GOOGLE_CLOUD_PROJECT}-kubeflowpipelines-default/tfx-template/data/data.csv
নোটবুকটি পরে tfx pipeline create
করতে tfx pipeline create
কমান্ড ব্যবহার করে।
!tfx pipeline create \
--pipeline-path=kubeflow_dag_runner.py \
--endpoint={ENDPOINT} \
--build-target-image={CUSTOM_TFX_IMAGE}
পাইপলাইন তৈরি করার সময় Dockerfile
এবং build.yaml
একটি ডকার চিত্র তৈরি করতে উত্পন্ন হবে। এই উত্সগুলি অন্যান্য উত্স ফাইলগুলির সাথে আপনার উত্স নিয়ন্ত্রণ সিস্টেমে (উদাহরণস্বরূপ, গিট) যুক্ত করতে ভুলবেন না।
পাইপলাইন চালাও
নোটবুকটি আপনার পাইপলাইনের একটি এক্সিকিউশন রান শুরু tfx run create
কমান্ড ব্যবহার করে। আপনি এই রানটি কুবেফ্লো পাইপলাইন ড্যাশবোর্ডে পরীক্ষার অধীনে তালিকাভুক্ত দেখতে পাবেন।
tfx run create --pipeline-name={PIPELINE_NAME} --endpoint={ENDPOINT}
আপনি আপনার পাইপলাইন কুবেরফ্লো পাইপলাইন ড্যাশবোর্ড থেকে দেখতে পারেন।
৮. আপনার ডেটা যাচাই করুন
যে কোনও ডেটা সায়েন্স বা এমএল প্রকল্পের প্রথম কাজটি হ'ল ডেটা বোঝা এবং পরিষ্কার করা।
- প্রতিটি বৈশিষ্ট্যের জন্য ডেটা প্রকারগুলি বুঝতে
- অসঙ্গতি এবং অনুপস্থিত মানগুলির সন্ধান করুন
- প্রতিটি বৈশিষ্ট্যের জন্য বিতরণ বুঝতে
উপাদান
- উদাহরণজেন ইনপুট ডেটাসেটকে অন্তর্ভুক্ত করে এবং বিভক্ত করে।
- পরিসংখ্যানজেন ডেটাসেটের জন্য পরিসংখ্যান গণনা করে।
- স্কিমাজেন স্কিমাজেন পরিসংখ্যান পরীক্ষা করে একটি ডেটা স্কিমা তৈরি করে।
- উদাহরণভালিডেটর ডেটাসেটে অসঙ্গতি এবং অনুপস্থিত মানগুলির সন্ধান করে।
জুপিটার ল্যাব ফাইল সম্পাদকে:
pipeline
/ pipeline.py
, এই পাইপলাইনগুলিতে আপনার পাইপলাইনে এই উপাদানগুলিকে যুক্ত করে এমন লাইনগুলি সংকোচিত করুন:
# components.append(statistics_gen)
# components.append(schema_gen)
# components.append(example_validator)
(টেমপ্লেট ফাইলগুলি অনুলিপি করা হলে ExampleGen
ইতিমধ্যে সক্ষম হয়েছিল))
পাইপলাইন আপডেট করুন এবং এটি আবার চালান
# Update the pipeline
! tfx pipeline update \
--pipeline-path=kubeflow_dag_runner.py \
--endpoint={ENDPOINT}
! tfx run create --pipeline-name "{PIPELINE_NAME}"
পাইপলাইন চেক করুন
কুবেরফ্লো অর্কেস্টেটরের জন্য, কেএফপি ড্যাশবোর্ডটি দেখুন এবং আপনার পাইপলাইন চালনার জন্য পৃষ্ঠায় পাইপলাইন আউটপুটগুলি সন্ধান করুন। বামদিকে "পরীক্ষা" ট্যাব এবং পরীক্ষার পৃষ্ঠাতে "সমস্ত রান" ক্লিক করুন। আপনার পাইপলাইনের নাম দিয়ে রানটি সন্ধান করতে সক্ষম হওয়া উচিত।
আরও উন্নত উদাহরণ
এখানে উপস্থাপিত উদাহরণটি কেবল আপনাকে শুরু করার জন্যই বোঝানো হয়েছে। আরও উন্নত উদাহরণের জন্য টেনসরফ্লো ডেটা বৈধকরণ কল্যাব দেখুন ।
ডেটাসেটটি অন্বেষণ ও যাচাই করতে টিএফডিভি ব্যবহারের বিষয়ে আরও তথ্যের জন্য, টেনসরফ্রো.আর.জে উদাহরণ দেখুন ।
9. বৈশিষ্ট্য প্রকৌশল
আপনি আপনার ডেটার ভবিষ্যদ্বাণীমূলক গুণমান বাড়াতে পারেন এবং / অথবা বৈশিষ্ট্য ইঞ্জিনিয়ারিংয়ের মাধ্যমে মাত্রিকতা হ্রাস করতে পারেন।
- বৈশিষ্ট্য অতিক্রম করে
- শব্দভাণ্ডার
- এম্বেডিংস
- পিসিএ
- শ্রেণিবদ্ধ এনকোডিং
টিএফএক্স ব্যবহার করার একটি সুবিধা হ'ল আপনি একবার আপনার রূপান্তর কোডটি লিখবেন এবং ফলস্বরূপ রূপান্তরগুলি প্রশিক্ষণ এবং পরিবেশনের মধ্যে সামঞ্জস্যপূর্ণ হবে।
উপাদান
- রূপান্তর ডেটাসেটে ফিচার ইঞ্জিনিয়ারিং সম্পাদন করে।
জুপিটার ল্যাব ফাইল সম্পাদকে:
pipeline
/ pipeline.py
, লাইনের সন্ধান করুন এবং পাইপলাইনে ট্রান্সফর্ম সংযোজনকারী লাইনটি আপত্তিহীন করুন।
# components.append(transform)
পাইপলাইন আপডেট করুন এবং এটি আবার চালান
# Update the pipeline
! tfx pipeline update \
--pipeline-path=kubeflow_dag_runner.py \
--endpoint={ENDPOINT}
! tfx run create --pipeline-name "{PIPELINE_NAME}"
পাইপলাইন আউটপুট চেক করুন
কুবেরফ্লো অর্কেস্টেটরের জন্য, কেএফপি ড্যাশবোর্ডটি দেখুন এবং আপনার পাইপলাইন চালনার জন্য পৃষ্ঠায় পাইপলাইন আউটপুটগুলি সন্ধান করুন। বামদিকে "পরীক্ষা" ট্যাব এবং পরীক্ষার পৃষ্ঠাতে "সমস্ত রান" ক্লিক করুন। আপনার পাইপলাইনের নাম দিয়ে রানটি সন্ধান করতে সক্ষম হওয়া উচিত।
আরও উন্নত উদাহরণ
এখানে উপস্থাপিত উদাহরণটি কেবল আপনাকে শুরু করার জন্যই বোঝানো হয়েছে। আরও উন্নত উদাহরণের জন্য টেনসরফ্লো ট্রান্সফর্ম কোলাব দেখুন ।
10. প্রশিক্ষণ
আপনার সুন্দর, পরিষ্কার, রূপান্তরিত ডেটা দিয়ে একটি টেনসরফ্লো মডেলকে প্রশিক্ষণ দিন।
- পূর্ববর্তী পদক্ষেপ থেকে রূপান্তরগুলি অন্তর্ভুক্ত করুন যাতে তারা ধারাবাহিকভাবে প্রয়োগ করা হয়
- উত্পাদনের জন্য সেভডমডেল হিসাবে ফলাফলগুলি সংরক্ষণ করুন
- টেনসরবোর্ড ব্যবহার করে প্রশিক্ষণ প্রক্রিয়াটি ভিজ্যুয়ালাইজ করুন এবং অন্বেষণ করুন
- মডেল পারফরম্যান্স বিশ্লেষণের জন্য একটি ইভালসেভডমডেল সংরক্ষণ করুন
উপাদান
- প্রশিক্ষক একটি টেনসরফ্লো মডেল প্রশিক্ষণ দেয় ।
জুপিটার ল্যাব ফাইল সম্পাদকে:
pipeline
/ pipeline.py
, pipeline.py
ট্রেনারকে সংযুক্ত করে যা অনিশ্চিত করুন:
# components.append(trainer)
পাইপলাইন আপডেট করুন এবং এটি আবার চালান
# Update the pipeline
! tfx pipeline update \
--pipeline-path=kubeflow_dag_runner.py \
--endpoint={ENDPOINT}
! tfx run create --pipeline-name "{PIPELINE_NAME}"
পাইপলাইন আউটপুট চেক করুন
কুবেরফ্লো অর্কেস্টেটরের জন্য, কেএফপি ড্যাশবোর্ডটি দেখুন এবং আপনার পাইপলাইন চালনার জন্য পৃষ্ঠায় পাইপলাইন আউটপুটগুলি সন্ধান করুন। বামদিকে "পরীক্ষা" ট্যাব এবং পরীক্ষার পৃষ্ঠাতে "সমস্ত রান" ক্লিক করুন। আপনার পাইপলাইনের নাম দিয়ে রানটি সন্ধান করতে সক্ষম হওয়া উচিত।
আরও উন্নত উদাহরণ
এখানে উপস্থাপিত উদাহরণটি কেবল আপনাকে শুরু করার জন্যই বোঝানো হয়েছে। আরও উন্নত উদাহরণের জন্য টেনসরবোর্ড টিউটোরিয়াল দেখুন ।
11. মডেল কর্মক্ষমতা বিশ্লেষণ
শীর্ষ স্তরের মেট্রিকের চেয়ে বেশি বোঝা।
- ব্যবহারকারীরা কেবল তাদের প্রশ্নের জন্য মডেল পারফরম্যান্স অনুভব করেন
- ডেটার টুকরোগুলিতে দুর্বল পারফরম্যান্স শীর্ষ স্তরের মেট্রিক দ্বারা গোপন করা যেতে পারে
- মডেল ন্যায্যতা গুরুত্বপূর্ণ
- প্রায়শই ব্যবহারকারী বা ডেটাগুলির কী সাবসেটগুলি খুব গুরুত্বপূর্ণ, এবং এটি ছোটও হতে পারে
- সমালোচনামূলক তবে অস্বাভাবিক পরিস্থিতিতে পারফরম্যান্স
- প্রভাবশালী হিসাবে গুরুত্বপূর্ণ শ্রোতাদের জন্য পারফরম্যান্স
- আপনি যদি বর্তমানে উত্পাদিত এমন কোনও মডেল প্রতিস্থাপন করছেন তবে প্রথমে নিশ্চিত হয়ে নিন যে নতুনটি আরও ভাল
উপাদান
- মূল্যায়নকারী প্রশিক্ষণের ফলাফলের গভীর বিশ্লেষণ করে।
জুপিটার ল্যাব ফাইল সম্পাদকে:
pipeline
/ pipeline.py
, রেখাটি আবিষ্কার করুন এবং pipeline.py
মূল্যায়নকারী সংযোজন করে এমন লাইনটি সঙ্কোচন করুন:
components.append(evaluator)
পাইপলাইন আপডেট করুন এবং এটি আবার চালান
# Update the pipeline
! tfx pipeline update \
--pipeline-path=kubeflow_dag_runner.py \
--endpoint={ENDPOINT}
! tfx run create --pipeline-name "{PIPELINE_NAME}"
পাইপলাইন আউটপুট চেক করুন
কুবেরফ্লো অর্কেস্টেটরের জন্য, কেএফপি ড্যাশবোর্ডটি দেখুন এবং আপনার পাইপলাইন চালনার জন্য পৃষ্ঠায় পাইপলাইন আউটপুটগুলি সন্ধান করুন। বামদিকে "পরীক্ষা" ট্যাব এবং পরীক্ষার পৃষ্ঠাতে "সমস্ত রান" ক্লিক করুন। আপনার পাইপলাইনের নাম দিয়ে রানটি সন্ধান করতে সক্ষম হওয়া উচিত।
12. মডেল পরিবেশন করা
নতুন মডেলটি প্রস্তুত থাকলে এটি তৈরি করুন make
- পুশার স্যাভডমোডেলগুলি সুপরিচিত স্থানগুলিতে স্থাপন করে
স্থাপনার লক্ষ্যগুলি সুপরিচিত স্থানগুলি থেকে নতুন মডেলগুলি গ্রহণ করে
- টেনসরফ্লো পরিবেশন করা
- টেনসরফ্লো লাইট
- টেনসরফ্লো জেএস
- টেনসরফ্লো হাব
উপাদান
- পুশার একটি পরিবেশনামূলক অবকাঠামোতে মডেলটি নিযুক্ত করে।
জুপিটার ল্যাব ফাইল সম্পাদকে:
pipeline
/ pipeline.py
, পাইশলাইনটিতে পুশারকে যুক্ত করে এমন লাইনটি আবিষ্কার করুন এবং অজানা করুন:
# components.append(pusher)
পাইপলাইন আউটপুট চেক করুন
কুবেরফ্লো অর্কেস্টেটরের জন্য, কেএফপি ড্যাশবোর্ডটি দেখুন এবং আপনার পাইপলাইন চালনার জন্য পৃষ্ঠায় পাইপলাইন আউটপুটগুলি সন্ধান করুন। বামদিকে "পরীক্ষা" ট্যাব এবং পরীক্ষার পৃষ্ঠাতে "সমস্ত রান" ক্লিক করুন। আপনার পাইপলাইনের নাম দিয়ে রানটি সন্ধান করতে সক্ষম হওয়া উচিত।
উপলব্ধ স্থাপনার লক্ষ্যমাত্রা
আপনি এখন আপনার মডেলকে প্রশিক্ষণ দিয়েছেন এবং যাচাই করেছেন এবং আপনার মডেল এখন উত্পাদনের জন্য প্রস্তুত। আপনি এখন আপনার মডেলটিকে টেনসরফ্লো মোতায়েনের লক্ষ্যে যে কোনও একটিতে স্থাপন করতে পারেন, সহ:
- টেনসরফ্লো সার্ভিং , কোনও সার্ভার বা সার্ভার ফার্মে আপনার মডেলটি পরিবেশন করার জন্য এবং আরএসটি এবং / অথবা জিআরপিসি অনুমানের অনুরোধগুলির প্রক্রিয়াকরণ করার জন্য।
- আপনার মডেলকে অ্যান্ড্রয়েড বা আইওএস নেটিভ মোবাইল অ্যাপ্লিকেশন বা রাস্পবেরি পাই, আইওটি, বা মাইক্রোকন্ট্রোলার অ্যাপ্লিকেশনটিতে অন্তর্ভুক্ত করার জন্য টেনসরফ্লো লাইট ।
- TensorFlow.js , একটি ওয়েব ব্রাউজার বা Node.js অ্যাপ্লিকেশনে আপনার মডেল চালানোর জন্য।
আরও উন্নত উদাহরণ
উপরে উপস্থাপিত উদাহরণটি কেবল আপনাকে শুরু করার জন্য বোঝানো হয়েছে। নীচে অন্যান্য মেঘ পরিষেবাদির সাথে একীকরণের কয়েকটি উদাহরণ দেওয়া আছে।
কুবফ্লো পাইপলাইনের সংস্থানসমূহ বিবেচনা করে
আপনার কাজের চাপের প্রয়োজনীয়তার উপর নির্ভর করে, আপনার কুব্লু পাইপলাইন মোতায়েনের জন্য ডিফল্ট কনফিগারেশন আপনার প্রয়োজনগুলি মেটাতে পারে বা নাও পারে। আপনি আপনার কলটিতে KubeflowDagRunnerConfig
pipeline_operator_funcs
ব্যবহার করে আপনার সংস্থান কনফিগারেশনগুলি কাস্টমাইজ করতে পারেন।
pipeline_operator_funcs
OpFunc
আইটেমগুলির একটি তালিকা, যা OpFunc
পাইপলাইন স্পেকের সমস্ত উত্পন্ন ContainerOp
দৃষ্টান্তকে রূপান্তর করে যা KubeflowDagRunner
থেকে সংকলিত।
উদাহরণস্বরূপ, মেমরি কনফিগার করতে আমরা প্রয়োজনীয় মেমরির পরিমাণ ঘোষণার জন্য set_memory_request
ব্যবহার করতে পারি। এটি করার একটি সাধারণ উপায় হ'ল set_memory_request
জন্য একটি মোড়ক তৈরি করা এবং এটি পাইপলাইন OpFunc
এর তালিকায় যুক্ত করতে ব্যবহার করুন:
def request_more_memory():
def _set_memory_spec(container_op):
container_op.set_memory_request('32G')
return _set_memory_spec
# Then use this opfunc in KubeflowDagRunner
pipeline_op_funcs = kubeflow_dag_runner.get_default_pipeline_operator_funcs()
pipeline_op_funcs.append(request_more_memory())
config = KubeflowDagRunnerConfig(
pipeline_operator_funcs=pipeline_op_funcs,
...
)
kubeflow_dag_runner.KubeflowDagRunner(config=config).run(pipeline)
অনুরূপ সংস্থান কনফিগারেশন ফাংশন অন্তর্ভুক্ত:
-
set_memory_limit
-
set_cpu_request
-
set_cpu_limit
-
set_gpu_limit
BigQueryExampleGen
বিগকিয়ারি হ'ল একটি সার্ভারলেস, অত্যন্ত স্কেলযোগ্য এবং ব্যয়বহুল ক্লাউড ডেটা গুদাম। বিগকোয়ারি টিএফএক্সের প্রশিক্ষণের উদাহরণগুলির জন্য উত্স হিসাবে ব্যবহার করা যেতে পারে। এই পদক্ষেপে, আমরা পাইপলাইনে BigQueryExampleGen
যুক্ত করব।
জুপিটার ল্যাব ফাইল সম্পাদকে:
pipeline.py
খুলতে ডাবল ক্লিক করুন । আউট মন্তব্য CsvExampleGen
এবং uncomment লাইন যার একটি দৃষ্টান্ত সৃষ্টি BigQueryExampleGen
। আপনার create_pipeline
ফাংশনটির query
যুক্তিটি create_pipeline
হবে।
আমাদের বিগকিউরির জন্য কোন জিসিপি প্রকল্প ব্যবহার করতে হবে তা নির্দিষ্ট করতে হবে এবং পাইপলাইন তৈরি করার সময় beam_pipeline_args
--project
সেট করে এটি করা হয়।
configs.py
খুলতে ডাবল ক্লিক করুন । BIG_QUERY_WITH_DIRECT_RUNNER_BEAM_PIPELINE_ARGS
এবং BIG_QUERY_QUERY
এর BIG_QUERY_WITH_DIRECT_RUNNER_BEAM_PIPELINE_ARGS
BIG_QUERY_QUERY
। আপনার জিসিপি প্রকল্পের জন্য সঠিক মানগুলির সাথে আপনার এই ফাইলের প্রকল্প আইডি এবং অঞ্চল মানটি প্রতিস্থাপন করা উচিত।
ডিরেক্টরি এক স্তর উপরে পরিবর্তন করুন। ফাইল তালিকার উপরে ডিরেক্টরিটির নাম ক্লিক করুন। ডিরেক্টরিটির নাম my_pipeline
পাইপলাইনের নাম যা my_pipeline
যদি আপনি পাইপলাইনের নাম পরিবর্তন না করেন।
kubeflow_dag_runner.py
খুলতে ডাবল ক্লিক করুন । create_pipeline
ফাংশনের জন্য দুটি টি আর্গুমেন্ট, query
এবং beam_pipeline_args
create_pipeline
করুন।
এখন পাইপলাইনটি বিগকোয়ারিকে উদাহরণ উত্স হিসাবে ব্যবহার করতে প্রস্তুত। পূর্বের মতো পাইপলাইন আপডেট করুন এবং একটি নতুন এক্সিকিউশন রান তৈরি করুন যা আমরা 5 এবং 6 ধাপে করেছি।
পাইপলাইন আপডেট করুন এবং এটি আবার চালান
# Update the pipeline
!tfx pipeline update \
--pipeline-path=kubeflow_dag_runner.py \
--endpoint={ENDPOINT}
!tfx run create --pipeline-name {PIPELINE_NAME} --endpoint={ENDPOINT}
ডেটাফ্লো চেষ্টা করুন
বেশ কয়েকটি টিএফএক্স উপাদান ডেটা সমান্তরাল পাইপলাইনগুলি প্রয়োগ করতে অ্যাপাচি বিম ব্যবহার করে এবং এর অর্থ আপনি গুগল ক্লাউড ডেটাফ্লো ব্যবহার করে ডেটা প্রসেসিং ওয়ার্কলোডগুলি বিতরণ করতে পারেন। এই পদক্ষেপে, আমরা অ্যাপাচি রশ্মির জন্য ডেটা প্রসেসিং ব্যাক-এন্ড হিসাবে ডেটাফ্লো ব্যবহার করার জন্য কুবেলফ অর্কেস্টেটরকে সেট করব।
# Select your project:
gcloud config set project YOUR_PROJECT_ID
# Get a list of services that you can enable in your project:
gcloud services list --available | grep Dataflow
# If you don't see dataflow.googleapis.com listed, that means you haven't been
# granted access to enable the Dataflow API. See your account adminstrator.
# Enable the Dataflow service:
gcloud services enable dataflow.googleapis.com
ডিরেক্টরি পরিবর্তন করতে pipeline
ডাবল-ক্লিক করুন এবং configs.py
খুলতে ডাবল ক্লিক করুন । GOOGLE_CLOUD_REGION
এবং DATAFLOW_BEAM_PIPELINE_ARGS
।
ডিরেক্টরি এক স্তর উপরে পরিবর্তন করুন। ফাইল তালিকার উপরে ডিরেক্টরিটির নাম ক্লিক করুন। ডিরেক্টরিটির নাম my_pipeline
পাইপলাইনের নাম যা my_pipeline
যদি আপনি পরিবর্তন না করেন।
kubeflow_dag_runner.py
খুলতে ডাবল ক্লিক করুন । beam_pipeline_args
। (এছাড়াও আপনি বর্তমান beam_pipeline_args
ম beam_pipeline_args
যুক্ত beam_pipeline_args
মন্তব্য করার বিষয়ে নিশ্চিত হন)
পাইপলাইন আপডেট করুন এবং এটি আবার চালান
# Update the pipeline
!tfx pipeline update \
--pipeline-path=kubeflow_dag_runner.py \
--endpoint={ENDPOINT}
!tfx run create --pipeline-name {PIPELINE_NAME} --endpoint={ENDPOINT}
আপনি ক্লাউড কনসোলে ডেটাফ্লোতে আপনার ডেটাফ্লো কাজগুলি পেতে পারেন।
কেএফপি সহ ক্লাউড এআই প্ল্যাটফর্ম প্রশিক্ষণ এবং ভবিষ্যদ্বাণী ব্যবহার করে দেখুন
টিএফএক্স প্রশিক্ষিত ও পূর্বাভাসের জন্য ক্লাউড এআই প্ল্যাটফর্মের মতো বেশ কয়েকটি পরিচালিত জিসিপি পরিষেবাদির সাথে আন্তঃসংযোগ স্থাপন করে। এমএল মডেলদের প্রশিক্ষণের জন্য পরিচালিত পরিষেবা, ক্লাউড এআই প্ল্যাটফর্ম প্রশিক্ষণ ব্যবহার করতে আপনি নিজের Trainer
উপাদানটি সেট করতে পারেন। তাছাড়া, যখন আপনার মডেল নির্মিত এবং প্রস্তুত করা হয় সার্ভ করা জন্য, আপনাকে আপনার মডেল ক্লাউড এআই প্ল্যাটফর্ম ভবিষ্যদ্বাণী ভজনা জন্য ধাক্কা পারেন। এই পদক্ষেপে, আমরা ক্লাউড এআই প্ল্যাটফর্ম পরিষেবাগুলি ব্যবহারের জন্য আমাদের Trainer
এবং Pusher
উপাদানটি সেট করব।
ফাইল সম্পাদনা করার আগে আপনাকে প্রথমে এআই প্ল্যাটফর্ম প্রশিক্ষণ এবং প্রেডিকশন এপিআই সক্ষম করতে হবে।
ডিরেক্টরি পরিবর্তন করতে pipeline
ডাবল-ক্লিক করুন এবং configs.py
খুলতে ডাবল ক্লিক করুন । GOOGLE_CLOUD_REGION
, GCP_AI_PLATFORM_TRAINING_ARGS
এবং GCP_AI_PLATFORM_SERVING_ARGS
GCP_AI_PLATFORM_TRAINING_ARGS
GCP_AI_PLATFORM_SERVING_ARGS
। ক্লাউড এআই প্ল্যাটফর্ম প্রশিক্ষণে একটি মডেলকে প্রশিক্ষণ দেওয়ার জন্য আমরা আমাদের কাস্টম বিল্ট কনটেইনার চিত্রটি ব্যবহার করব, সুতরাং আমাদের উপরের CUSTOM_TFX_IMAGE
সমান মান হিসাবে GCP_AI_PLATFORM_TRAINING_ARGS
masterConfig.imageUri
সেট করা উচিত।
ডিরেক্টরি এক স্তর উপরে পরিবর্তন করুন এবং kubeflow_dag_runner.py
খুলতে ডাবল ক্লিক করুন । ai_platform_training_args
এবং ai_platform_serving_args
।
পাইপলাইন আপডেট করুন এবং এটি আবার চালান
# Update the pipeline
!tfx pipeline update \
--pipeline-path=kubeflow_dag_runner.py \
--endpoint={ENDPOINT}
!tfx run create --pipeline-name {PIPELINE_NAME} --endpoint={ENDPOINT}
আপনি ক্লাউড এআই প্ল্যাটফর্ম জবসে আপনার প্রশিক্ষণ কাজগুলি পেতে পারেন। যদি আপনার পাইপলাইনটি সফলভাবে সমাপ্ত হয়, আপনি ক্লাউড এআই প্ল্যাটফর্ম মডেলগুলিতে আপনার মডেলটি সন্ধান করতে পারেন।
14. আপনার নিজস্ব ডেটা ব্যবহার করুন
এই টিউটোরিয়ালে, আপনি শিকাগো ট্যাক্সি ডেটাসেট ব্যবহার করে কোনও মডেলের জন্য পাইপলাইন তৈরি করেছেন। এখন আপনার নিজের ডেটা পাইপলাইনে রাখার চেষ্টা করুন। আপনার ডেটা গুগল ক্লাউড স্টোরেজ, বিগকিউয়ারী, বা সিএসভি ফাইল সহ পাইপলাইনটি যে কোনও জায়গায় এটি অ্যাক্সেস করতে পারে যেখানেই সংরক্ষণ করা যায়।
আপনার ডেটা সামঞ্জস্য করার জন্য আপনাকে পাইপলাইন সংজ্ঞাটি পরিবর্তন করতে হবে।
যদি আপনার ডেটা ফাইলগুলিতে জমা থাকে
- অবস্থান
kubeflow_dag_runner.py
,DATA_PATH
এkubeflow_dag_runner.py
পরিবর্তন করুন।
যদি আপনার ডেটা বিগকুয়েরিতে সঞ্চিত থাকে
- আপনার ক্যোয়ারী বিবৃতিতে
BIG_QUERY_QUERY
এ BIG_QUERY_QUERY পরিবর্তন করুন। - মধ্যে বৈশিষ্ট্য যোগ করুন
models
/features.py
। - প্রশিক্ষণের জন্য ইনপুট ডেটা রুপান্তর করতে
models
/preprocessing.py
সংশোধন করুন । - পরিবর্তন করুন
models
/keras
/model.py
এবংmodels
/keras
/constants.py
করার বর্ণনা আপনার এমএল মডেল ।
প্রশিক্ষক সম্পর্কে আরও জানুন
প্রশিক্ষণ পাইপলাইনগুলির বিষয়ে আরও তথ্যের জন্য প্রশিক্ষক উপাদান গাইড দেখুন।
পরিষ্কার আপ
এই প্রকল্পে ব্যবহৃত সমস্ত গুগল ক্লাউড রিসোর্সগুলি পরিষ্কার করতে, আপনি টিউটোরিয়ালটির জন্য ব্যবহৃত Google মেঘ প্রকল্প মুছতে পারেন।
বিকল্পভাবে, আপনি প্রতিটি কনসোলগুলিতে গিয়ে পৃথক সংস্থানগুলি পরিষ্কার করতে পারেন: - গুগল ক্লাউড স্টোরেজ - গুগল ধারক রেজিস্ট্রি - গুগল কুবারনেটস ইঞ্জিন