مدیر محصول در هوش مصنوعی و دیتا

پیش نویس1: این مطلب نت هایی است که از کورس خانم Danielle Thé که روی یودمی منتشر شده است برداشته ام.

پیشنویس 2: در نتی که برداشتم عکس ها و نمودارها و… را هم داشته ام که متاسفانه روی این قالب بارگذاری نمی شود و اگر کسی نیاز داشت کامنت بذاره براش می فرستم.

لینک یودمی: https://www.udemy.com/course/the-product-management-for-data-science-ai-course/

لینک دانلود رایگان: https://git.ir/udemy-the-product-management-for-ai-data-science-course-2022/

مدیریت محصول در دیتا نقطه تلاقی این چهارتا است:

  • طراحی یو ایکس
  • بیزنس
  • تکنولوژی
  • دیتا

مدیر محصول مسئول:

  • جمع آوری اطلاعات
  • امنیت آنها
  • تنوع داده ای
  • دقت اطلاعات است

مدیر محصول همچنین باید مطمئن شود که تیم اطلاعات درست و کافی در اختیار داشته باشد

چالشهای خاص مدیریت محصولی در حوزه دیتا:

  • عدم قطعیت زمانی
  • عدم قطعیت درباره سرمایه مورد نیاز
  • عدم قطعیت خروجی عملکرد
  • چون این حوزه جدید است تیم مدیریتی درک درستی از محصول ندارد و باید آنها را هم آموزش بدهیم

مدیریت پروژه با مدیریت محصول تفاوت دارد.
بصورت کلی مدیریت پروژه وظیفه انجام کار در زمان مشخص و با بودجه مشخص را به عهده دارد.
مدیر محصول باید چیزی را بسازد که برای مشتریان ایجاد ارزش می کند.

Analytics translator: پلی بین مهارتهای فنی مهندس داده و علوم داده  با اقدامات عملیات مدیریتی مانند مارکتینگ ، فروش ، تولید ، ریسک و غیره است. کسی که مدیر محصول داده است باید این توانایی را داشته باشد و در خودش تقویت کند.

مفاهیمی که در کار کردن با هوش مصنوعی باید درباره آنها آگاهی داشته باشیم:

تشابه : هردو با بیگ دیتا کار می کنند.

Data analytics: با یک سوال شروع می شود. کاربران ما چه مقدار زمان در برنامه می مانند؟ کدامیک از ویدئوهای ما انگیجمنت بیشتری ایجاد کرده است؟
ویژوال کردن دیتا هم جزو کار دیتا آنالیزر است.
یادگیری ماشین ، یادگیری عمیق ، مدیریت دیتابیس ، ساختن الگوریتم ها از حوزها های کاری انالیزر است.

  • Artificial intelligence
  • Machine learning
  • Deep learning

Data scientist: با یک ایده شروع می شود.
تصور کن ما بتوانیم دقت تشخیص هایمان را بیشتر کنیم
تصور کن بتوانیم محتواها مورد نیاز را در اسکیل بازبینی کنیم.
دیتا ساینس درباره نوآوری صحبت می کند.

دیتا ساینس می گوید چگونه یک محصول نوآورانه در زمینه هوش مصنوعی و دیتا بسازم

دیتا آنالیتکس تعیین می کند چه چیزی  بسازیم و محصول چگونه کار کند.

هوش مصنوعی:

الگوریتم ها به کامپیوتر می گویند که چه کاری را انجام دهد. اینکار را با استفاده از توالی دستورات انجام میدهند. اما محدودیت های زیادی دارند.

هوش مصنوعی هم از الگوریتم استفاده می کند اما نوع متفاوتی از الگوریتم که به کامپیوتر می گوید که چگونه یاد بگیرند. اما این الگوریتم ها برای کار نیاز به حجم خیلی زیادی از اطلاعات دارند.

هوش مصنوعی به کامپیوتر هایی گفته می شود که توانایی یادگیری و حل مساله دارند

انواع هوش مصنوعی:

Artificial narrow intelligence: که یکی از اقدامات انسان را در یک حوزه مشخص انجام می دهد.

Artificial general intelligence: کمتر مورد استفاده قرار می گیرد و تلاش بر این دارد که هوش انسانی را در محدوده های وسیعتر شبیه سازی کند و بیشتر برای بازی اینکار را کرده اند. مثل الفازیرو گوگل

Artificial super intelligence: هوش مصنوعی موجود در فیلم ها را می گویند که در حال حاضر وجود ندارد.

Machine learning models:
زیرشاخه ای از هوش مصنوعی است که با استفاده از الگوریتم به ماشین یاد میدهد چگونه از طریق آزمودن بیگ دیتا یادبگیرد.

Training data + Ml algorithm = model

ماشین مثل بچه است و با دیدن نمونه های مختلف الگوها را کشف می کند.  ماشین هم با مقایسه و بررسی هزاران داده الگوهارا از آن استخراج می کند و یادگیری اتفاق می افتد که به اینکار training گفته می شود. در یادگیری ماشین وارد جزئیات و توضیح آنها نمی شویم. این کار الگوریتم سنتی است. 

یادگیری ماشین آمار را دوباره چهارچوب بندی می کند.

یک یادگیری ماشین موفق با استفاده از دیتای با کیفیت اتفاق می افتد. کیفیت برنامه با توجه به دیتایی که از طریق آن تمرین کرده مشخص می شود.  انسان باید کیفیت اطلاعات و کیفیت دستگاه را تایید کند

Deep learning

پیشرفت هایی که در حوزه تشخیص صدا و تصویر اتفاق افتاده است به این دلیل دیپ لرنینگ است.

یادگیری ماشین بر اساس یادگیری انسان کار می کند

یادگیری عمیق با الگوبرداری از کارکرد مغز کار میکند . مغز دارای نورن های متعددی است و از طریق آنها اطلاعات را منتقل و پردازش می کند. در اویل 2000 شبکه نورنی مصنوعی artificial neural networks , ANN ساخته شد

یادگیری عمیق 3 لایه دارد:
1-لایه ورودی که اطلاعات خام وارد می شود.
2- لایه پنهان: جایی است که آنالیز جدید روی اطلاعاتی که دریافت شده است اعمال می شود.
3- لایه خروجی: جایی که خروجی نهایی پردازش می شود.

نود های مختلفی در لایه های مختلف وجود دارد که در هرکدام از آنها کار پردازش انجام می گیرد و به ارتباط بین این نورون ها کانال گفته می شود.

نام عمیق به خاطر لایه های مخفی مختلفی است که در این بین وجود دارد که می تواند از 2 لایه تا چند صد لایه را شامل بشود. و هرچه تعداد لایه ها بیشتر شود عملکرد ماشین بهتر می شود و نیاز به حجم بالایی از داده بیشتر می شود.

چه روشی برای یادگیری ماشین به کار بگیرم؟ 5 نکته ای که باید در نظر بگیریم:

  1. حجم اطلاعات ما چقدر است؟
      برای دیتا های کم ماشین لرنینگ مناسب است و برای دیتاهای زیاد دیپ لرنینگ هم دقیقتر است و هم کاملتر اما پیاده سازی آن کندتر ، پیچیده تر و گرانتر است.
  2. سخت افزار:
     برای ماشین لرنینگ به cpu  وبرای دیپ لرنینگ به gpu  که گرانتر است داریم.
  3. Training:
    زمان ترین کردن ماشین لرنینگ کمتر از دیپ لرنینگ است.
  4. ورودی:
    برای ماشین لرنینگ نیاز داریم که انسان اهمیت خصوصیات مختلف را برای ماشین مشخص کند. به این فرایند Feature selection  می گویند. در مقابل دیپ لرنینگ نیاز به تجربه انسانی ندارد و خودش بررسی کرده و  مهمترین معیارها را برای ما کشف می کند.
  5. Interpret ability:
    آیا شما قادر به توصیف و توضیح خروجی مدل AI هستید؟
    خروجی ماشین لرنینگ را ما می توانیم تفسیر کنیم و تشخیص بدهیم که به دلیل کدام مشخصه ها این نتیجه حاصل شده است. اما در دیپ لرنینگ ما فقط خروجی را داریم و معیار انتخاب دست ما نیست.

برای توسعه الگوریتم ماشین لرنینگ و دیپ لرنینگ باید بدانیم که کدام نوع یادگیری برای ما مناسبتر است:

  1. Supervised learning:
    مرسومترین روش این است. در این روش ما دقیقا به ماشین می گوییم که چه چیزی را باید یاد بگیرد. برای اینکار نمونه دیتاهایی که میخواهیم یادبگیرد را لیبل زده و به ماشین معرفی می کنیم. این روش برای خوشه بندی چیزهای معمول و شناسایی غیرمعمول ها مناسب است. این روش برای زمانی که می دانیم خروجی چه چیزی باید باشد مناسب است.
  2. Unsupervised learning:
     در این روش ماشین باید خودش الگوها را شناسایی کند. در این روش اطلاعات را لیبل نمی کنیم. اطلاعات را بصورت کلی به ماشین می دهیم و ماشین نقاط اشتراک را شناسایی می کند. این روش برای زمانی که نمی دانیم خروجی چه چیزی است مناسب است.
  3. Reinforcement learning:
    در این روش به ماشین می گوییم که هدف چیست و ماشین کشف می کند که چگونه به این هدف برسد. این روش شبیه روش مدیریت شده (شماره 1) است با این تفاوت که نیاز نیست دیتاها را لیبل بزنیم در عوض rule تعیین می کنیم و ماشین با آزمون خطا و با در نظر گرفتن قوانین یاد می گیرد.  در زمینه روباتیک و بازی سازی این روش مرسوم است. الفازیرو ازین روش استفاده می کند و قوانین بازی به او داده می شود. در زمینه رباتیک شرکت بوستون روباتیک روباتهایی دارد که از نقطه آ به نقطه ب می رود و قانون برای رباط ها جاذبه زمین است.

انتخاب از بین این روش ها بر اساس اهداف محصول و نوع دیتایی است که داریم.

بخش های کسب و کاری مدیریت محصولی در حوزه دیتا و هوش مصنوعی

برای بسیاری از سازمان ها محصول دیتا محور یا هوش مصنوعی سرمایه گذاری استراتژیک برای نوآوری است.

  1. این محصولات بینش تولید می کنند
  2. بهره وری عملیاتی ایجاد می کنند
  3. ایجاد فیچر جدید برای محصولات
  4. ایجاد یک محصول جدید

مثال: واتسون IBM که برای تشخیص کیفیت کارمندان استاده می شود.

محصولات دیتا و هوش مصنوعی کجا مناسب است:

  1. وقتی که کارشناس انسانی می تواند این وظیفه را در چند ثانیه انجام دهد.
  2. زمان هایی که مشکل یا غیر ممکن است که قواعد و قوانین را برای برنامه مشخص کنیم.
  3. وقتی که ارائه مثال برای رفتار مطلوب آسان است ( دیتای برچسب دار)

باید منابع لازم برای ساخت محصول هوش مصنوعی و دیتا محور را هم داشته باشیم:

  • سخت افزار
  • دیتا آنالیزر که اطلاعات را مرتب کند و تمیز کند
  • دیتا ساینتیست که مدل را بسازد
  • مهندس داده که مدل را تولید کند.

در نهایت فرهنگ سازمانی هم باید از پروژه حمایت کند

SWOT:

قبل از شروع کسب و کار  باید با استفاده این فریمورک باید کسب و کار را تحلیل کنیم.

سوالات مربوط به بخش داخلی، نقاط ضعف ، نقاط قوت:

در دسترس بودن اطلاعات:
1- دسترسی به چه اطلاعاتی وجود ندارد؟ آیا این نقطه ضعف است؟

2- یا نقطه قوت؟

3-بیشتر چه نوع اطلاعاتی دارید؟

4-چه نوع داده هایی را ندارید؟

مهارتهای کارمندان:

پایگاه مشتریان:

قسمت فاکتورهای بیرونی چارت swot ، فرصت ها و تهدیدها:

از خودمان بپرسیم که آیا می توانیم با استفاده از دیتا نقطه ضعف را بهتر کنم یا حجم آن را کم کنیم؟

روندها بازار ، رقبا ،اندازه بازار

بعد از اینکه چارت آماده شد

با در نظر گرفتن فرصت ها و نقاط ضعف اهداف استراتژیک را تعیین می کنیم

فرصت ها برای ایجاد رشد مناسب هستند و نقاط ضعف قسمت هایی است که با استفاده از آن می توانیم سازمان را بهبود بدهیم. و این سوالها را باید از خودمان بپرسیم:

آیا دیتا و هوش مصنوعی به من کمک می کند که نقاط ضعف را بهبود بدهم؟

آیا کمک می کند تا از فرصت ها استفاده کنم؟

بعد از اینکه هدف گذاری کردید برای رسیدن به این اهداف باید نقاط قوت و تهدید ها را در نظر داشته باشیم.

آیا یکی از نقاط قوت ما داشتن مجموعه اطلاعات خوب است؟ آیا می توانم از این اطلاعات کمک بگیرم تا از فرصت ها استفاد کنم؟

فرضیه سازی

بعد از تحلیل کسب و کار  باید فرضیه های قابل تست بسازیم. فرضیه چیزی است که ما باور داریم درست است. اما باید آزمایش کنیم تا درست و غلط بودن آن اثبات شود. در شروع پروژه ما فرض می کنیم که جواب خواهد داد و یادمان می رود که فرضیات پشت آن را بررسی کنیم و ببینم چرا این باور را داریم.

در فرضیه باید این 5 بخش را داشته باشید:

  1. بازار هدف
  2. فرضیه
  3. هدف
  4. تاثیر مورد انتظار
  5. چگونگی اندازه گیری موفقیت

بهترین نوع فرضیه آنهایی است که به سادگی می توانیم تایید یا رد کنیم.

محدوده فرضیه ها نباید زیادی گسترده باشد.

تست فرضیه ها

 قبل از اینکه به سراع آزمودن فرضیه برویم باید با استفاده از روشهای تفکر نقادانه فرضیه را بررسی کنیم.

مثل از روش 5 چرا استفاده می کنیم تا فرضیه را تحلیل کنیم. جواب هر چرا هم دوباره چرا می پرسیم

بوم کسب و کارهای هوش مصنوعی

سطر اول آیتم ها نشان دهنده انتظارات ما از مدل هوش مصنوعی است.

  • پردیکشن: مشکلی که میخواهیم حل کنیم یا عدم قطعیتی که با آن سرکار داریم چیست.
  • جاجمنت: نتیاج پیش بینی خوب و بد را در نظر می گیریم.
  • اکشن: اقدام کاربر بعد از مشاهده پیش بینی چه خواهد بود؟
  • اوتکام: خروجی مورد انتظارتان چیست؟

سطر دوم درباره بازبینی اطلاعات است

  • ترینینگ: چه اطلاعاتی برای تمرین دادن و یاد دادن نیاز دارید؟ نمونه خوب و بد در ماشین لرنینگ
  • اینپوت: بعد از اینکه ماشین ترین شد چه اطلاعاتی باید به ماشین بدهیم؟
  • فیدبک: بازخوررد مطولبی که از کاربر انتظار داریم چیست؟

UX برای محصولات دیتا و هوش مصنوعی

انجام کار دلخواه برای کاربر چقدر آسان است؟

چه مراحلی کاربر را برای استفاده از محصول هیجان زده می کند؟

UI مثل زین ، یراق و افسار اسب هست و UX  تجربه ای است که از اسب سورای به شما دست می ده.

UI توسط بخش طراحی ساخته میشود و UX به عهده مدیرمحصول است. مدیر محصول باید کاربر را بشناسد و بداند که در حال حاضر تجربه شان چیست و چگونه می توان بهترین تجربه ممکن را فراهم کرد.

محصول برای 3نوع کاربر اصلی ساخته می شود:

  1. کاربران مصرفی:
     این نوع کاربران عموم مردم را شامل می شوند و خارج از سازمان هستند
  2. کاربران داخلی:
     بیشتر استفاده از نرم افزارهای دیتا و هوش مصنوعی درون سازمانی است و باید این نکته را در نظر گرفت.
  3. Saas user:
     در اینجا محصول را برای سازمان های دیگر می سازیم. در محصولات دیتا و هوش مصنوعی احتمالا نیاز به سفارشی سازی هایی برای هر مشتری داشته باشیم. اغلب در این محصولات مدل موجود را باد دیتاهای منحصربفرد مشتری retrain می کنیم.

در طراحی یو.ایکس باید خاطرمان باشد که یوزر با مشتری فرق دارد. مشتری کسی است که محصول را می خرد و کاربر کسی است که از محصول استفاده می کند.

شناسایی کاربر

شناختن کاربر با اینکه آسان به نظر می رسد اما پیچیدگی هایی هم دارد. باید بدانیم که هر محصول ممکن است که چند نوع کاربر داشته باشد. ما باید هریوزر را بشناسیم و در هر زمان روی یکی از آنها تمرکز کنیم.

چگونه تصمیم می گیریم روی چه یوزری تمرکز کنیم؟ روی کاربری تمرکز کنید که بزرگترین مشکل را دارد. همچنین باید درک کنیم که مشکل اصلی هریک از کاربران چیست. ممکن از تقاضاهای بی شماری از طرف کاربران مختلف ، مشتری و مدیران شرکت  ممکن است تقاضاهای مختلفی داشته باشند ما برای تقاضای آنها چیزی نمی سازیم برای مشکلی که پشت این درخواست ها وجود دارد محصول را می سازیم.

باید از روش 5 چرا استفاده کنیم که بدانیم چرا آنها چنین خواسته ای دارند؟

بعنوان مدیر محصول ما با راه حل مشتری سازگار نمی شویم با مشکل مشتری سازگار می شویم و برای آن محصول می سازیم

تحقیق درباره کاربران

بعد از اینکه مشکل مرکزی کاربر را پیدا کنیم باید سراغ تحقیق درباره آنها برویم

شناخت کاربران مثل یک قیف است هرچه کاربر را بیشتر می شناسیم قیف تنگتر می شود و جزئیات بیشتر می شود.

اطلاعات عمومی کاربران:

  • بیشترین فعالیت های کاربرانتان چیست؟
  • کدام کاربران فعالتر هستند؟
  • بیشترین کاربرانتان در چه رده سنی هستند؟
  • چه تعداد تیکت دریافت می کنند؟ جوابها چقدر طولی می کشند؟

مصاحبه کاوشگرانه:  در مصاحبه به دنبال اطلاعات عمومی هستیم ،

  • آنها چه کسانی هستند؟
  • چه چیزی را دوست دارند؟
  • چه چیزی آنها را هیجان زده می کند؟

این مصاحبه ها درباره پرزنت کردن راه حل تان نیست. همچنین باید مواظب باشید که سوالاتی نپرسید که سوگیری ایجاد کند. چون آدمها نمیخواهند مارا ناراحت کنند به راحتی جوابشان را تحریف میکنند. در عوض همیشه باید سوالهای باز بپرسیم که خودشان توضیح دهند.

نظرسنجی:
نظرسنجی با تعداد گسترده تری از کاربران تعامل می کند و جوابهای عدد را شامل می شود.

یکی از مشکلات احتمالی که در تحقیق کاربران وجود دارد این است که ممکن است ایده یک راه حل وارد تحقیق بشویم و سعی در گرفتن تایید برای آن داشته باشیم و بدنبال مشکل نباشیم.

ساخت پرسونای کاربر

بعد از  تحقیق کاربران ،شناختن کاربران و مشکل اصلی آنها به سراغ قسمت احساسی کاربران می رویم که درباره اینکه آنها چه فکری می کنند و چه احساسی دارند می رویم.

بعنوان مدیر محصول باید به تیم و ذی نفعان کمک کنیم کاربر را بهتر درک کنند. برای اینکار از پرسونای کاربر استفاده کنی.

پرسونا نشان دهنده فعالیت هایی است کاربران اغلب انجام میدهند. با جمع آوری رفتارهای غالب یک توصیف شخصیتی می سازیم که می توانیم در بین کاربران پیدا کنیم.

در حین ساخت محصول پرسونا را در گوشه ذهنمان داریم.

پرسونا باید شامل اطلاعات عددی و کیفی باشد. 

مثال: مهندس شکوری 40 سال دارد و مالک شرکت ماشین سازی شکوری است. او دستگاههای بسته بندی می سازد و در این کار 4 سال سابقه دارد. اکثر مشتریان او شرکت های کوچک بوده اند که بدنبال خرید دستگاه با کیفیت و قیمت مناسب هستند. او تلاش می کند که بازار خودش را گسترش دهد. او سرش با انجام کارهای خودش شلوغ است و فرصت انجام کارهای بیشتر برای مارکتینگ را ندارد. اما افزایش فروش برای او جذاب است.

Empathy map برای درک مشتری و احساسات او استفاده می شود.

در مرکز امپَتی مپ پروسنای کاربر را می نویسیم.

اکثر محصولات دیتا و هوش مصنوعی اینترفیس ندارند و به همین دلیل امپَتی مپ و پرسونا را برای خودمان می نویسیم تا درک بهتری از کاربر داشته باشیم نه برای ایجاد تجربه کاربری موفق.

ساخت نمونه اولیه در هوش مصنوعی

یکی از راههای ارزیابی یک نمونه اولیه است.

AI personality design experiments: آزمایش کردن انواع شخصیت های مختلف که سیستم هوش مصنوعی می تواند با آن برنامه نویسی شود تا تجربه کاربری بهینه شود. مثلا: اگر مخاطب ما خانم های 20 تا 25 ساله شاغل باشند صدایی که هوش مصنوعی ما باید داشته باشد صدای مردانه یا یک زن مسنتر است.

WOZ Design Experiments: ویزارد آو اوز ، یک نفر آدم واقعی را پشت سیستم قرار می دهیم که نقش هوش مصنوعی را ایفا کند و کارکرد آن را به نمایش بگذارد.

DATA

اولین چیزی که ما بعنوان مدیر محصول باید بدانیم این است که اطلاعات کافی برای ساخت محصول دیتا و هوش مصنوعی وجود دارد.

زمان یک مدیر محصول در این حوزه می تواند به:

  • مذاکره برای گرفتن اطلاعات از سازمان های بیرونی
  • کار با تیم برای ساخت فیچرهای جدید روی محصول ولیبل زدن اطلاعات
  • توسعه یک دستور العمل مرحله به مرحله شود.

دیتا استراتژی: مدیر محصول دیتا نیاز دارد که بصورت استراتژیک در این باره فکر کند که تیمش برای ساخت محصول به چه اطلاعاتی نیاز دارد.

چه اطلاعاتی می تواند به سازمان و محصول در برابر رقبا مزیت رقابتی بدهد؟
آیا اطلاعاتی داریم که بصورت اختصاصی در اختیار سازمان ما  قرار داشته باشد و دیگر سازمان ها به آن دسترسی نداشته باشند؟

کسب و کار دیتا به دو نوع اطلاعات نیاز دارد :

  • اطلاعاتی که برای اجرای کسب و کار نیاز است
  • ·          اطلاعاتی که برای رشد کسب و کار نیاز است.

دیتاهای اجرای کسب و کار:  که در واقع بهینه سازی فرایند دیتا در سازمان است

  1. مدیریت جریان کاری دیتا ساینتیست ها
  2. چگونگی ذخیره سازی امن داده ها
  3. افزایش سرعت پردازش داده ها

تمامی این وظایف توسط دستا ساینتیست های ارشد ، مهندسین داده ، و کلا تیم دیتا انجام می گیرد.

دیتاهای رشد کسب وکار: همچنین کارهای که روی دیتا برای نوآوری ، رشد درآمد ، کاوش انجام می گیرد به حوزه کاری مدیر محصول مربوط می شود

اطلاعات کنونی سازمان  را باید بر اساس SWOT تحلیل کنیم. نقاط ضعف و قوت و فرصت و تهدیدهای آن را دربیاوریم.

5 متد جمع آوری دیتا: از آسانترین به سختترین . می توان نقاط ضعف دیتا را با این روش ها پوشش داد.

  1. Open data: اطلاعات که به رایگان روی اینترنت هست
  2. Company data: اطلاعات که داخل شرکت هست.
  3. Crowdsourcing labeled data: اطلاعاتی که توسط دیگران لیبل زنی شده است.
  4. New feature  data: فیچر جدیدی روی محصول اضافه می کنیم که اطلاعات جمع آوری کند
  5. Acquisition or purchased data: سازمانی را پیدا کنید که بتوانید از آنجا اطلاعات تهیه کنید.

Open data:
با الهام از دنیای اوپن سورس برخی از اطلاعات به رایگان و برای استفاده همگان روی اینترنت قرار دارد. و  اوپن دیتای واقعی این خصوصیات را دارد:

موجود است و به آسانی در دسترس است

می توان آن را باز استفاده و باز توزیع کرد که شامل ترکیب آن با دگیر اطلاعات می شود

هیچ محدودیتی برای استفاده از آن وجود ندارد. می توانید آن را برای انواع ابزارهای رایگان و پولی استفاده کنید.

موتوری های جستجوی اپن دیتا:

  • Google data set search
  • Dataverse.org
  • Opendatakitnetwork

با دیتای رایگان شما می توانید هوش مصنوعیتان را train کنید یا با استفاده از آن دیتاهای موجودتان را تقویت کنید.

Open data می تواند به انجام آزمایشات/تست ها کمک کند. البته برخی از انواع دیتاهای رایگان در انواع سیستم های هوش مصنوعی برای از بین بردن Bias وجود دارد.

نقطه ضعف اپن دیتا:

  • عمومی است و برای مدل خاص شما احتمالا مناسب نیست.
  • باید بتوانید به منبع دیتا اطمینان کنید.

Company data: این اطلاعات اختصاصا در اختیار شماست. دسترسی به آن سریع است و برای ما مزیت رقابتی منحصر بفرد ایجاد می کند.

اکثر سازمان هایی که باور ندارند دیتا داشته باشند در واقع دارند. این اطلاعات شامل رفتار کاربران که در گوگل انالیتیکس یا نرم افزار ثبت می شود ، فعالیت های ایمیلی مثل باز کردن ، کلیک کردن راشامل می شود. اطلاعتی که در CRM  ثبت شده است. یا تیکت های پشتیبانی که دریافت کرده ایم.

این اطلاعات باید در حجم بالا موجود باشد که بتوان از آن استفاده مناسبی کرد ، به همین دلیل است که شرکت های بزرگ می توانند اطلاعات را اهرم کنند. همیشه با تیم حقوقی صبحت کنید تا در استفاده از این اطلاعات مشکلی وجود نداشته باشد.

اطلاعات مشتری ممکن است لیبل دار باشد مثل شرکت هایی که در CRM تیم فروش توقف همکاریشان را ثبت کرده است که از این اطلاعات در روش سوپروایزد لرنینگ استفاده کرد.

اطلاعات می تواند خام باشد که برای استفاده در روش unsupervised learning می توان استفاده کرد. مثل لیست تمام مشتریان که می توان از بین آن نقاط اشتراک و غیرمعول را شناسایی کرد.

Crowd sourcing labeled data

در برخی از موارد حتی اگر شرکت ها اطلاعات  داشته باشند هم ممکن است آنها لیبل گذاری نشده باشند که بتوان در روش supervised استفاده کرد.

Data annotation فرایندی است که از طریق آن داده لیبل گذاری می شوند.

مثال: کامنت هایی که در یک شبکه اجتماعی منتشر می شوند را اگر بخواهیم فیلتر کنیم و نامناسب ها را حذف بکنیم نیاز داریم که کامنت ها را دسته بندی کنیم تا ماشین بتواند از آنها یاد بگیرید. کامنت های معمولی ، اسپم ، توهین آمیز و… لیبل های احتمالی است.

برایAnnotate  کردن ما متکی به کاربر انسانی هستیم

مثال: نتفلیکس برای ساخت سیستم پیشنهاد فیلم 50 نفر را از سراسر جهان استخدام کردم که فیلم ها را بر اساس معیارهای مختلف تگ زنی کنند. تگهایی مثل ژانر ، حرفه شخصیت اصلی ، توهین های بکار رفته ، تنظیمات فیلم ، مود و… استفاده شدند. با این اطلاعات لیبل گزاری شده نتفلیکس یک سیستم ریکامندیشن قوی ساختم.

Annotation  می تواند توسط شرکت های خارج از سازمان انجام گیرد.

قیمت حاشیه نویسی اطلاعات بر اساس هر داده قیمت گذاری می شود. و رابطه مستقیم با سختی حاشیه نویسی دارد.

یکی از وظایف مدیر محصول این است که اگر لازم باشد اطلاعات را لیبل گذاری کند.

در زمان انتخاب یک شرکت annotation  بیرونی به این مسائل توجه داشته باشید:

  1. Specialization:
    آیا آنها حاشیه نویسی را بر اساس نیاز شما انجام می دهند؟ آنها روی چه نوع اطلاعاتی حاشیه نویسی می کنند؟ عکس ؟ تکست؟
  2. هزینه:
    هزینه چقدر است؟ با بودجه ما همخوانی دارد؟
  3. سرعت:
    آنها چقدر نیروی انسانی دارند و با چه سرعتی می توانند کار را انجام دهند؟
  4. آموزش:
    آیا برای انجام اینکار باید آنها را آموزش بدهیم؟

New feature data collection

 فیچر جدیدی می سازیم که برای ما اطلاعات جمع اوری کند. اطلاعات رایگان نداریم ، اطلاعات شرکت کافی نیست ، لیل گذاری اطلاعات زیادی گران یا طولانی می شود در این حالت باید به سراغ ساخت فیچری برویم که اطلاعات موردنیازمان را جمع آور کند.

بعنوان مدیر محصول شاید ما وظیف ساخت هوش مصنوعی را نداشته باشیم و صرفا نیاز باشد که یک نرم افزار برای جمع آوری اطلاعات بسازیم.

جمع آوری اطلاعات می تواند اشکال مختلفی داشته باشد. از فرم ثبت نام محصول تا فیچری که اطلاعات رفتاری کاربر را جمع می کند.

ملاحضه ای که قبل از ساخت فیچر باید داشته باشیم این است که این فیچر باید کاربردی فراتر از جمع آوری اطلاعات داشته باشد. چون شما نیاز دارید که کاربر این اطلاعات را وارد کند و اینکار را به دقیقترین شکلی که ممکن است انجام دهد. اگر ما فیچری بسازیم که از کاربر اطلاعات بگیرد و هیچ ارزش افزوده ای برای او نداشته باشد تجربه کاربری ضعیفی خواهیم داشت و دقت اطلاعات هم مورد سوال خواهد بود.
چرا باید کاربر این اطلاعات را به ما بدهد؟
ما در مقابله چه چیزی به او ارائه می دهیم؟
چه چیزی باعث می شود اطلاعات دقیق وارد کند؟

سوال اصلی این است چگونه این فیچر کاربر را خوشحال می کند و اطلاعات مورد نیاز ما را جمع آوری می کند؟

مثال: فیسبوک برای اینکه فیدش بیشتر اسکرول شود از ایموجی و ترکیب ایموجی ها برای کشف احساساتی که هر پست به کاربر منتقل می کند استفاده کرد از نظر کاربر اینکار ریکشن به پست است اما از نظر فیسبوک اینکار جمع آوری اطلاعات درباره کاربر واحساسات پست و اینکه کاربر با چه احساساتی بیشتر اسکرول می کند است.

خرید اطلاعات یا شرکت هایی که اطلاعات را دارند:

این سختترین نوع جمع آوری اطلاعات است و یک کار چند مسئولیتی است. باید اطلاعاتی که میخواهیم را پیدا کنیم ، به توافق برسیم و بتوانیم پرداختی لازم را داشته باشیم.

معمولا خرید اطلاعات در سازمان های بزرگ برای اهداف بلند مدت انجام می گیرد.

مذاکره برای خرید هم مساله مهمی است.

ROI در خرید اطلاعات مهم است و باید در نظر گرفته شود

باید این موضوع را هم در نظر بگیریم که اگر نخواهیم این محصول را بسازیم چقدر هزینه روی دستمان خواهد ماند؟
چه هزینه فرصت هایی را متقبل می شوم؟
آیا این انتخاب باعث می شود رقبای من هیچ مزیتی نداشته باشند؟

DATA warehouse

اطلاعات یک سازمان در یک فضا نیست و در بخش ها و سیلو ها مختلف موجود است و پردازش ، کلین کردن یا دستگاه آن برای تیم سخت است.
همچنین جمع آوری اطلاعات در یک فضا کار دشواری است.

اطلاعات در دیتا بیس ذخیره می شود. و ممکن است ما چند دیتا بیس داشته باشیم. شیوه ای که دیتا ذخیره می شود توانایی تیم برای دسترسی به آن را مشخص می کند. اگه یک آشپزخانه داشته باشیم که مواد اولیه در بخش های مختلف پخش شده باشد پختن غذا طول می کشد.

اینها ابزارهای متمرکز سازی هستند که ما برای جمع کردن همه چیز در یک جا نیاز داریم.
Data Warehouse:
 انبار اطلاعات سیستمی است که اطلاعات را از منابع مختلف در یک سازمان کنار هم جمع می کند تا قابل تحلیل باشد. اینجا برخلاف دیتابیس اطلاعات لحظه ای آپدیت نمی شود. داده ها مربوط به گذشته هستند.
با استفاده از سیستم ETL

  • Extract: اطلاعات از دیتابیس استخراج می شود.
  • Transform: اطلاعات را از اطلاعات خام به اطلاعات آماده برای هضم تبدیل می کنیم.
  • Load: اطلاعات را در انباره اطلاعات بارگزاری می کنیم.
  • انبارهای دیتا معمولا با داشتن یک هدف ساخته می شوند. مثل پیشبینی آینده کسب و کار ، یا تحلیل رشد کاربران.


Data Lakes:

دریاچه اطلاعات مشابه انباره است با این تفاوت که جمع آوری اطلاعات در آن یک هدف ندارد و می توان اهداف مختلف را دنبال کرد.
در عوض دریاچه داده مخزنی از اطلاعات خام غیرساختاریافته ، فیلتر نشده ، پردازش نشده است که هیچ هدف ویژه ای برای در نظر گرفته نشده است. و این باعث می شود که تیم های مختلف بتوانند تحلیل ها  ، ترینینگها و کارهای مختلفی را به آسانی رو دیتا انجام دهند. جمع آوری اطلاعات در دریاچه نسبت به انبار کار سختتری است اما در بلند مدت مزایای بهتری ارائه می دهد.

AI flywheel یا چرخ هوش مصنوعی:

محصولات هوش مصنوعی چرخه عمر مشابه با محصولات سنتی ندارند که شامل ورود رشد بلوغ و افول بشوند. در عوض از چهارچوب چرخ هوش مصنوعی استفاده می کنند.

هرچه پیش بینی بهتری داشته باشیم تجربه کاربری بهتری داریم و تعداد کاربران افزایش پیدا می کند و می توانیم اطلاعات بیشتری جمع آوری کنیم و پیش بینی های بهتری داشته باشیم و …الی آخر.

بعنوان مدیر محصول باید مطمئن شویم که محصولمان با این سیکل سازگار است.

Top and bottom problem solving

مشکل اصلی چیست؟
چگونه باید آن را حل کنم؟

حل مساله با شناسایی مشکل اساسی کاربر شروع می شود و به سمت ایده پردازی و داده ای که داریم پیش می رود.

اما در زمینه هوش مصنوعی و دیتا این تنها روش نیست و می توان این مسیر را از پایین به سمت بالا رفت.

از دیتایی که داریم شروع می کنیم. ایده هایی که بتوانند از دیتای موجود به بهترین روش استفاده کنند را می سازیم.

چرا اینکار را می کنیم؟
مگر غیر از این است که ممکن است راه حلی را بسازیم که با مشکل کاربر سازگار نباشد؟
بله اما ممکن است راه مشکل کاربر مربوط به دیتا و هوش مصنوعی نباشد به همین دلیل به سراغ دیتای موجود می رویم.

وقتی از پایین به بالا می رویم و دیتا را اهرم می کنیم ممکن است که یک مشکل حیاتی را حل نکنیم. ما بعنوان مدیرمحصول نباید صرفا مشکل حل کن باشیم باید ایده های مختلف را هم بشنویم و نقاط ضعف و قوت آنها را بسنجیم.

در ابتدا باید مشکلات اصلی و مجموعه داده های اصلی را جمع آوری کنیم.
برای جمع آوری داده ها باید با دیتا ساینتیست ها و دیتا آنالیتیست ها همکاری کنیم.
برای جمع آوری مشکل اصلی باید از E.M.U.C استفاده کنیم.
Employees: کارمندان سراسر سازمان
metrics: اطلاعات استفاده از محصولات
users: کاربران محصولات
customers: مشتریان یا خریداران محصول

بعد از جمع آوری مشکل اصلی و داده ها اصلی به سراغ تولید ایده هایی برای حل مشکل و ایده هایی برای اهرم کردن داده می رویم.

ایده پردازی:

طوفان فکری: روش را ذکر نمی کنم
مشکلاتی که دارد این است که برخی افراد استرس می گیرند و ایده هایشان را مطرح نمی کنند. و ایده های مطرح شده روی دیگر ایده ها اثر می گذارند.

3 روش ایده پردازی:

برای استفاده از این روش ها باید افراد متنوعی از اعضای شرکت داشته باشیم. آنها باید بک گراند متفاوت و نقش های مختلف داشته باشند.

Crazy eights:
 یک کاغذ A4 به هرکس می دهیم با یک خودکار. کاغذ را یک بار از وسط تا می زنیم ، دوباره اینکار را انجام می دهیم و دوباره و کاغذ را باز می کنیم. تا روی کاغذ 8 فضای مختلف ساخته شود.

مشکل اصلی یا دیتای اصلی در دسترس را پرزنت می کنیم.
برای هر قسمت کاغذ 15 ثانیه وقت می دهیم که هرکس ایده یا راه حلش برای مشکل و دیتا را بنویسد. ایده کم بودن زمان برای این است که افراد به سرعت اولین ایده شان را بنویسند. اینجا مساله کیفیت ایده ها نیست و تعداد ایده ها مهم است. مرتب کردن ایده ها به زمان دیگری موکول می شود.

Round robin:
به هرکس یک کاغذ می دهیم و 1 دقیقه وقت تا بهترین ایده ای که برای حل مشکل به ذهنشانی می آید را بنویسند. بعد از اتمام کار برگه به نفر سمت راستی تحویل داده می شود و از نفر سمت چپی تحویل گرفته می شود. دور دوم هرکسی کاغذی دارد که یک ایده در آن است. در این مرحله و باید با الهام از آن ایده در 1 دقیقه ایده دیگری را بنویسد. اینکار را آنقدر انجام می دهیم که برگه هرکس به دست خودش برسد.

The fake press release:
 بعد از اینکه مشکل و مجموعه داده را پرزنت کردیم. به هرکس 5 دقیقه وقت می دهیم تا یک صفحه روزنامه برای آن بنویسد. نیاز نیست شبیه روزنامه واقعی باشد اما باید این موارد در ان رعایت شود. خلاصه ایده ، یک تیتر جذاب ، نقل قول از مشتریان.

Complexity vs. benefit prioritization

مدیر محصول باید تصمیم بگیرد که چه محصولی و در چه زمانی باید ساخته شود واین الویت بندی کار سختی است.

مدیر محصول این نوع الویت بندی ها را نباید داشته باشد:

  1. بر اساس حس.
  2. برای سریع برنده شدن اینکار را انجام ندهیم.
  3. بخاطر درخواست و همهمه کاربران الویت بندی نکنیم.
    اینها عوامل می توانند تاثیر گذار باشند اما معیار اصلی نیستند و بر اساس آنها انتخاب نمی کنیم.

گراف الویت بندی:

دو محور دارد که منافع و پیچیدگی در آنها مشخص می شود. کارها را بر اساس مناعی که ایجاد می کنند و پیچیدگی هایی دارند روی گراف می نویسیم.

کارهایی که منافع بالایی ایجاد می کنند و پیاده سازی ساده ای دارند در اولویت قرار می گیرند.
کارهایی که پیچیده هستند و منافع بالایی ایجاد می کنند در الویت بعدی قرار می گیرند.
کارهای آسان با منافع کم را می توانیم بسته به نیاز ایجاد کنیم.
کارهای پیچیده با منافع کم آخرین الویت را دارند و با بررسی به سراغشان می رویم.

MVP and MVD minimum viable data

ایده پشت ام.وی.پی این است که با کمترین تلاش و هزینه و قبل از ساختن محصول کامل بازخوردها را از آن جمع کنیم.

ساختن ام.وی.پی در زمینه هوش مصنوعی جواب نمی دهد. نمی شود ماشین بدون راننده را ام.وی.پی کرد ، سیستم ریکامندیشن را نمی توان نصف اجرا کرد.

پس مفهوم حداقل دیتای مورد پذیرش مطرح می شود MVD که حداقل دیتای مورد نیاز برای ساخت یک محصول AI بالقوه است. در اینجا با کوچکترین دیتای ممکن شروع به کار می کنیم.

حداقل دیتا را داریم و به آسانترین روش هوش مصنوعی مثل درخت تصمیم گیری ، decision tree ، شروع به تست محصولی که می خواهیم بسازیم می کنیم.

از طریق MVD ما یاد می گیریم که:

  1. 1-       آیا دیتای مناسبی انتخاب یا استفاده می کنیم؟
  2. آیا در هر چرخه MVD ما بهتر می شویم؟
  3. 3-       آیا در هر چرخه MVD  به خودمان و یوزر ارزشی می رسانیم؟

یادمان باشد هر دو روش ام.وی.پی و ام.وی.دی را  در توسعه محصول استفاده کنیم.

Agile data Kanban

در اجایل محصول به تدریج و در چرخه های کوتاه مدت تکمیل و ساخته می شود. اسکرام را داریم که در آن بک لاگ می نویسیم که در واقع لیستی از فیچرهای آماده به ساخت است. و از طریق تعریف چهارچوب های زمانی کوتاه مدت به نام اسپرینت فیچرها را می سازیم و در آخر هر اسپرینت چیزی به محصول اضافه می کنیم.

اسکرام با دیتا و هوش مصنوعی کاملا منطبق نیست چون تخمین زمانی  سیکل ها سخت است. و تحویل یک قسمت از محصول در بازه زمانی یک یا دو هفته سخت است.

Kanban که از کلمه ژاپنی صفحه علائم نشات می گیرد. روشی است که به تیم کمک می کند جریان کاری را مصور کند و تعداد عناوینی که همزمان روی آن کار می کنند را مدیریت کند. در کانبان تعداد تسک هایی که در جریان هستند را محدود می کنیم.

کانبان 3 بخش دارد.

  1. بورد کانبان که 3 ستون دارد.
  2. کارت کانبان که تسک های روی برد است.
  3. محدودیتی که برای کارهای در جریان تعین می کنیم.

با استفاده از کانبان فضای لازم به دیتا ساینتیست ها را می دهیم که مستقلا کار کنند.

بورد کانبان دیتا:

کانبان دیتا نه بر اساس تسک ها که بر اساس مجوعه دیتاهایی که روی آن کار می کنیم سازماندهی می شود. 

با استفاده از این بورد می توانیم مسائل پیش پای توسعه محصول هوش مصنوعی و دیتا را بشناسیم.

مثلا: آیا ترین کردن برای یک مدل مشخص خیلی طول می کشد و  ما در حال حاضر 3 مدل را در ستون ترینینگ داریم؟
آیا ما باید تست را متوقف کنیم و اطلاعات بیشتری را پردازش و پاکسازی کنیم ؟

ابزارهای اجایل مخصوص دیتاوهوش مصنوعی ساخته نشده اند اما می توان چرخه های کار و پیشرفت های مکرر را در آن پیاده سازی کرد.

چه کسی مدل شما را می سازد؟

زمان هایی وجود دارد که شما باید تصمیم بگیرید که مدلتان را در داخل شرکت بسازید یا برونسپاری کنید.

  1. شایستگی مرکزی: تخصص مرکزی تیم شما چیست؟
  2. اطلاعات در دسترس: آیا شما به اطلاعات موجود مورد نیاز دسترسی دارید؟
  3. مزیت رقابتی: کدام انتخاب به شما مزیت رقابتی می دهد ؟ خودتان انجام بدهید یا برونسپاری کنید؟
  4. آیا ما کسی در تیم داریم که در زمینه حل این مشکل تجربه داشته باشد؟

یکی از سوالهایی که مدام باید از خودتان بپرسید این است که چه کسی باید این مشکل را  حل کند؟

Enterprise solution

وقتی به سراغ راه حل هایی که توسط دیگران ساخته شده است می رویم هنوز هم بعنوان مدیر محصول وظایفی داریم:

  • شناسایی راه حل های جایگزین
  • اندازه گیری نتیجه
  • اعمال این راه در محصول اصلی

در حرکت به سمت این راه حل باید این سوال را جواب بدهیم ، آیا این مشکل جزو کسب و کار اصلی (core business ) ماست؟

در این روش باید تمامی گزینه های در دسترس را با این 6 معیار بررسی کنیم:

  1. دیتا:
    آنها از چه دیتایی برای یادگیری  استفاده کرده اند؟
    آن دیتا برای آنها منحصر بفرد است؟
    آیا منبع اطلاعات به اندازه کافی مشابه چیزی که می خواهیم آن را مدل کنیم هست؟
    آیا آنها امکان سفارشی سازی مدل را با استفاده از دیتای ما را دارند؟
  2. تخصصی سازی specialization:
     باید بدانید زمینه تخصصی شرکتی که راه حل را ارائه می دهد چیست؟
  3. Integration:
     آیا راه حلی که خریداری می کنیم با محصول کنونی یکپارچه می شود؟
    شرکت روبرویی در یکپارچه سازی چه کمک هایی را در سطح فنی و مدیریتی ارائه می دهد؟
  4. سفارشی سازی:
    آیا سفارشی سازی ممکن است؟
    اطلاعات خودمان را برای سفارشی سازی می توانم اعمال کنیم؟
  5. امنیت:
    آنها امنیت را چگونه برقرار می کنند؟
    اگر برای سفارشی سازی اطلاعات ما را می گیرند چگونه از دارایی ما محافظت می کنند؟
    آیا آنها مجوزهای لازم برای حوزه های خاص را دارند؟
  6. قیمت :
    قیمت آنها با بودجه ما سازگار است؟
    قیمت شامل پشتیبانی می شود یا خیر؟

Machine learning as a serviceیادگیری ماشین بعنوان سرویس:

بزرگترین سرویس دهنده های این حوزه:Microsoft azure , amazon ml , IBM Watson , google cloud ml

تمام منابع مورد نیاز سخت افزاری و نرم افزاری برای مدل سازی روی MLaas قرار دارد.

3 حوزه ای که MLaas مورد استفاده قرار می گیرد:

  1. تست مدل:
    برای اینکار باید تیم دیتا ساینس باتجربه داشته باشید.
    توانمندی های زیرساختی لازم را داشته باشید.
    تست ها می توانند MVD  یا تست های تکرار اجایل باشند
  2. برای برونسپاری زیرساخت:
    اگر تیم دیتا ساینس با تجربه را دارید اما کارمندان لازم برای نگهداری و راه اندازی و پردازش اطلاعات را ندارید
  3. برای ساخت مدل:
     اگر تیم دیتای جوان دارید و زیرساخت لازم را هم ندارید می توانید از ام لس برای ساخت مدل استفاده کنید.

ساخت AI in house

وقتی هسته کسب و کار شماست باید آن را خودتان بسازید.

شما در این حالت کنترل همه چیز را بعهده دارید
هر سفارشی سازی را می توانید انجام بدهید.
در کل خط لوله دیتا و نه فقط الگوریتم را می توانید بهینه کنید.
 به شکل بهتری می توانید آن را با کسب و کار سازگار کنید

5 مرحله استفاده ساخت هوش مصنوعی این هاوس:

  1. دیتای مورد نیاز راشناسایی کرده و آن را جمع آوری کنید
  2. دیتا را آماده کنید: درون انبار یا دریاچه ریخته و آماده پردازش کنید.
  3. Model training , building , testing: الگوریتم را می سازیم ، آن را ترین می کنیم ، تست می کنیم و تغییرات لازم برای رسیدن به عملکرد دلخواه را اعمال می کنیم.
  4. دیپلویمنت : مدل یادگیری ماشین را به تولید برسانیم
  5. مونیترینگ: کارکرد مدل یادگیری ماشین را به دقت در طول زمان نظارت می کنیم

چقدر طول می کشد؟

پیش بینی زمان تخمینی برای حل راه هوش مصنوعی سخت است.

مدیر محصول دیتا و هوش مصنوعی باید به دقت به بودجه و خروجی نظارت داشته باشد.

محو شدن خروجی در نمودار زمان time line diminishing returns حالتی است که نتیجه ای که از سرمایه گذاری در بازه های زمانی مشخص حاصل می شود به مرور زمان کمتر و کمتر می شود. در هوش مصنوع دقت پیش بینی مثلا به مرور بهتر می شود اما به هدف مشخص شده نمی رسد.

چه زمانی باید سرمایه گذاری روی مدل هوش مصنوعی را متوقف کنیم؟

در دو نقطه زرد باید به توقف پروژه فکر کرد.

در زمانی که دقت مدل خیلی پائین است احتمال دارد که این پروژه هیچوقت به ثمر نرسد و شاید بهتر باشد به توقف کردن آن فکر کنید.

شاخص هایی برای عملکرد مدل در نظر بگیرید

تقریبا هیچ مدل هوش دقت 100 درصد ندارد پس باید هدف واقع گرایانه بذاریم.

چگونه برای محصول هوش مصنوعی هدف تعیین کنیم:

  1. شاخص های عملکرد در سطح انسانی:
    باید بدانیم متوسط دقت انسان در انجام کاری چقدر است و آن را بعنوان هدف قرار دهیم یا نزدیکترین عدد به آن را هدف قرار دهیم.
  2. Base model metric:
     در این روش عملکرد ساده ترین روش های مدل سازی را بعنوان شاخص حداقلی ارزیابی کارکرد مدل در آینده قرار می دهیم. مثال: عملکرد درخت تصمیم گیری
  3. Satisficing and optimizing metrics:
    دو نوع شاخص داریم بهینه ترین شاخص و شاخص راضی کننده. محصول با دقت 100 درصد و سرعت آنی ایده آل شاید باشد. اما دستیابی به آن الزاما ارزشش را ندارد و احتمالا دقت 95 درصدی و 5 ثانیه پردازش رضایت بخش باشد.

انواع دیتا

  1. دیتایی که برای تست نیاز داریم:
    با این دیتا مدل شما یاد می گیرد. 80 درصد دیتای مورد نیاز شما اینجا استفاده می شود.
  2. دیتایی که برای اعتبار سنجی نیاز داریم که به آن دیتای دولوپمنت هم می گویند:
     با استفاده از این دیتا بارها و بارها مدل را اجرا می کنیم تا بتوانیم  عملکرد مدل را به دقت تنظیم کنیم. 10 درصد اطلاعات.
  3. دیتایی که برای تست مورد استفاده قرار می گیرد:
     10 درصد اطلاعات است. با این دیتا مدلی که تمام شده است را امتحان می کنیم.

دلیل تقسیم بندی دیتا ها این است که نمیخواهیم مدل ما از دیتای دنیای واقعی دور باشد.
درصد بندی نسبت به حجم اطلاعاتی که داریم می تواند بیشتر هم بشود.
باید اطمینان حاصل کنیم که اطلاعات در هر 3 بخش مشابه هم باشد و تنوع گستردگی لازم را داشته باشد.

اگر تیم به تشابه اطلاعات دقت نکند ممکن است ناخواسته خطاهایی شود که به آن bias  و variance گفته می شود.

  • Bias:
     بایاس بالا یعنی اینکه مدل شما خیلی ساده است و نمی تواند پیچیدگی اطلاعات را درک کند. بایاس بالا مشابه این است که نقطه نامناسبی را در تیراندازی بعنوان مرکز سیبل هدف قرار داده باشیم.
  • variance:
     واریانس بالا یعنی مدل صرفا الگوهایی که می توانسته را یادگرفته است و در سازگار شدن با الگوهای دگیر مشکل دارد. واریانس بالا مشابه این است که در تیر اندازی مدام مرکز سیبل را نقطه دیگری در نظر بگیریم و آن را تغییر دهیم

مدل ما باید بایاس کم  و واریانس کمی داشته باشد تا بتواند بخوبی اجرا شود.

ماتریکس سردرگمی  confusion matrix

برای بررسی بهتر عملکرد مدل از این ماتریکس استفاده می کنیم توضیحات آن را ننوشتم و برای اطلاعات بیشتر باید سرچ کنم.

True negative , true positive , false positive , false negative

دقت مدل

Accuracy: نسبت جواب های درست به کل اطلاعات

Precision: نسبت جواب های درست به کل داده های شناخته شده

Recall: نسبت جواب های درس به جوابهای درست ممکن

F1 score  که در واقع جمع  پرسیشن و ریکال را نشان میدهد.

بهینه سازی برای تجربه بهتر

کدام روش اندازه گیری دقت برای مدل ما مناسب است بستگی مستقیم به هدف مدل دارد.

مثال:

در این حالت ما باید از فالس نگتیو و فالس پازتیو اجتناب کنیم. و با توجه به فرمول precision مناسبتر است

مثال دیگر:

عکس بالا کانفیوژن ماتریکس هوش مصنوعی بیمارستان است و ما در آن باید تمرکزمان روی کم کردن فالس نگتیو باشد. که با فرمول ریکال همخوانی دارد.

از امتیاز F1  هم درمواقعی که ارزش فالس نگاتیو و ترو پازتیو برابر است استفاده می کنیم

Error recovery

هوش مصنوعی که ما می سازیم در نهایت خطاهایی خواهد داشت حتی اگر دقت انسانی داشته باشد بازهم مواقعی خطا رخ می دهد. به همین دلیل ما نیاز داریم که برای این مواقع استراتژی داشته باشیم.

دو نوع خطا احتمال دار پیش بیاید FP , FN

  1. عواقب هردونوع خطا روی کسب و کار و کاربر را در نظر بگیرید.
  2. چگونه می توان ریسک ، هزینه و ناراحتی کاربران را به حداقل رساند؟
  3. چگونه می توانیم خطا را نرم کنیم تا نگاه منفی به کسب و کار ما کم شود؟
  4. کاربر چگونه می تواند بعد از وقوع خطا به مسیر عادی برگردد؟

روش های دیپلوی مدل

MLOps  راه حلی برای همکاری و ارتباط  بین دیتا ساینتیست ها و عملیاتی ها است ته به مدیریت دیپلویمنت مدل ماشین لرنینیگ کمک کند.

شیوه دیپلوی کردن به نحوه ای که خروجی مدل مصرف می شود بستگی دارد:

  1. آیا بصورت مورد به مورد استفاده میشود؟
  2. آیا بر اساس برنامه زمانی استفاده میشود؟
  3. بصورت آنی و در لحظه مصرف می شود؟

انواع روشها دیپلوی:

Ad-Hoc predictions via SQL: در شرایط که از مدل بصورت کیس به کیس استفاده شود از این روش برای  دیپلوی استفاده می کنیم. در این روش ، مدل بعنوان یک عملکرد SQL اعمال می شود. در این روش داده های ورودی بصورت جدول ارائه می شوند. بصورت ساده از جدول هایی که داریم برای وارد کردن اطلاعات یا نمایش خروجی استفاده می کنیم. اجرای این روش ساده است و توسط دیتا ساینتیست ها انجام می گیرد و به مهندس داده نیاز ندارد.

Batch Predictions:
در این روش مدل در زمان های خاصی از روز اجرا میشود. در این روش با دیتا ساینتیست و دیتا انجینیر کار داریم. این روش برای حالت هایی که نیاز به آنالیز مداوم دارد ، برا تصمیم گیری ، برای هوش مصنوعی هایی که به خروجی لحظه ای نیاز دارند مناسب است. به عبارتی اگه مرتبا میخواهید استفاده کنید اما نیازی به جواب آنی ندارید از این روش استفاده می کنید

Real-time predictions:
در سیستیم مثل خودروی بدون راننده ما نیاز به اعمال لحظه ای هوش مصنوعی داریم.

روش های نظارت

مدل نیاز دارد که  مدام تست شود تا از staleness  جلوگیری شود.

Model staleness: حالتی است که قدرت مدل قدرت پیش بینی مدل به دلیل تغییر روندها و یا تغییر تغییر زائقه کم می شود و دیگر آن کیفیت قبل را نداد

هربار که تشخیص می دهیم staleness اتفاق افتاده باید مدل را با دیتا جدید ترین کنیم.

نظارت دو حالت دارد:

Proactive: در این روش  الگوهای اتولایر دیتایی که داریم با الگوهای اوتلایر دیتای دنیای واقعی مقایسه می شود تا بتوانیم خودمان را بروز نگه داریم.

Reactive: در این روش دلایل اجرای و پیش بینی بد را می شکافیم و بررسی میکنیم.

مدیر محصول باید استراتژی برای نظارت مداوم داشته باشد.

Feedback Metric

مدل را عرضه کردیم از کجا می توانیم مطمئن شویم که مدل به درستی کار می کند؟ از رفتار کاربران

ما باید معیارهایی برای تشخیص عملکرد خوب و بد داشته باشیم.

روش کار به این شکل است: کاربر اینکار را انجام میدهد=> به دلیل فلان

نکته: به نقاط ضعف شاخصی که اندازه می گیرید فکر کنید. و به یک شاخص تکیه نکنید  و هرچه شاخص های بیشتری می توانید جمع آور کنید.

Shadow Deployments

یک نوع تست A/B  برای مدل های مختلفی است که داریم. هر دو یا چند مدل را داریم و کاربران از آن استفاده می کنند و دیتا را جمع آوری می کنیم و بهترین را اعمال می کنیم. این برای جلوگیری از ریسک افت کیفیت و مشکلاتی از این دست است. پیاده سازی این مدل زمان بر و سخت است.

این مسائل را قبل از اقدام برای شدو دیپلویمنت در نظر بگیرید:
آیا عواقب افت عملکرد مدل برای کسب و کار بالاست؟
آیا زمان کافی داریم؟
آیا ما ظرفیت های اجرای شدو دیپلویمنت را داریم؟

سلسله مراتب نیازهای هوش مصنوعی

  1. ابتدا به مجموعه دیتا نیاز داریم.
  2. به زیر ساختهای لازم برای دیتا نیاز داریم data pipelines , ETL, data storage که به ما امکان ذخیر سازی اطلاعات را می دهد و آنها را برای ما قابل دسترسی می کند.
  3. آنالیز داده ها: جمع آوری بینش مشتری  و بینش محصول ،  پاکسازی و آماده سازی دیتا ، تست های A/B و انجام آزمایشات
  4. دیتا ساینس: در این مرحله هرچیزی که برای ساخت مدل های پیشرفته نیاز داریم در اختیارمان است
  5. در آخری محصول هوش مصنوعی را می سازیم.

بعنوان مدیر محصول ما باید تشخیص بدهیم که سازمان یا تیم در کجای این هرم قرار دارد.

محصولات هوش مصنوعی ریسک بالایی دارند و این مساله باید در سازمان حل شده باشد.

ریسک را باید در بازه های زیر سنجید:
1- در بازه زمانی 6 ماهه
2_ در بازه زمانی 3-5 ساله
3- در بازه زمانی 5-10 ساله

اگر سازمان ریسک پذیر نیست باید پروژه هایی با ریسک کم اجرا شود. پروژه هایی که منافع کم و ریسک کم هم دارند  

تیم هوش مصنوعی در سازمان

تیم هوش مصنوعی بصورت مستقل در داخل سازمان فعالیت می کند اما باید با سایر تیم ها در تعامل نزدیک باشد و اهداف یکپارچه ای داشته باشند.

تیم هوش مصنوعی دیتا

مدیر محصول1
دیتا ساینتیست 2
Ml data enginer 1
یک دولوپر فول استک 1
طراح یو.آ./یو.ایکس1

Dual Triple Track

در مدیریت اجایل و در تیم اجایل به خاطر چند مسئولیتی بودن تیم ها حالتی پیش می آید که برای اینکه کسی بتواند کار کند باید منتظر خروجی کار دیگری باشد در این حالت وظایف هرکس را به چند دسته تقسیم بندی می کنیم.

در فاز کشف که ایده پردازی میکنیم و مشکل را از طریق تحقیق کاربری و طوفان فکری شناسایی می کنیم.
اطلاعات مناسب برای ایده های ولدیت شده را آماده می کنیم.
اطلاعات تمیز و آماده است و برای کاوش و مدل سازی می تواند مورد استفاده قرار گیرد.

این روش باید به تیم کمک کند زمان انتظار را به حداقل برسانیم.

مدیرت ذی نفعان داخلی

یکی از وظایف مدیر محصول این است که وقتی تیم دارد کار می کند نگذارد کسی مزاحم آنها بشود.

ذی نفعات 3 دسته اند یا این 3 مشخصه را دارند: 3Is

  1. Intrest: منافعی در محصول و موفقیت آن دارند
  2. Influence: روی تصمیمات محصول نفوذ دارند.
  3. Impacted: بصورت مستقیم یا غیر مستقیم تحت تاثیر قرار می گیرند. 

ما باید به ذی نفعان گوش بدهیم. ایده های آنها را گوش کنیم. بازخورد بگیریم. مسئولیت هایشان را بدانیم.

5 مرحله مدیریت ذی نفعات:

  1. ربطه بسازید: بصورت منظم به دیدن آنها بروید و جلسه بزارید. آنها تاثیر مستقیم روی محصول ندارند. رابطه غیر رسمی و دوستانه بسازید.
  2. به نقطه نظراتشان گوش دهید: آنها دانش ارزشمندی دارند. اما قرار نیست ایده ها به ما دیکته شوند و ما حتما آنها را اجرا کنیم.
  3. آموزش آنها درباره هوش مصنوعی و دیتا: این نقش حیاتیی است که مدیر محصول باید انجام بدهد. بای به آنها توضیح دهیم که چرا دقت 100 درصد نمی شود.
  4. آنها را مطلع نگه دارید: آنها مدام باید درباره فرایند ساخت محصول و پیشرفت های آن آگاه باشند.
  5. مرزهایی مشخص کنید: ذی نفعان باید بدانند که نظرشان برای ما مهم است اما در نظر گرفتن مرزیهایی به آنها نشان می دهیم ما نسبت به مشتریان متعهد هستیم نه ذی نفعان.

انتظاراتتان را از محصول یا داده تعیین کنید.

اگر ما انتظارات را تعیین نکنیم دیگران آن را برای ما تعیین می کنند.

در مدیریت محصول هم احتمال این وجود دارد که ذی نفعان انتظاراتشان از محصول را برای ما تعریف کنند.

برخی از مواقع انتظارات خوش بینانه است که باید آنها را تعدیل کنیم.
برخی از مواقع انتظارات بد بینانه است که باید واقع بینانه اش کنیم.

انتظاراتی که تعیین می کنیم:

  1. اغلب محصولات هوش مصنوعی شکست می خورند. محصول هوش مصنوعی احتمالی است. یعنی می توان روبات چت ساخت اما نمی توان از دقت خروجی آن مطمئن بود.
  2. هوش مصنوعی معجزه و جادو نیست: هوش مصنوعی علم و است و خطا دارد.
  3. هوش مصنوعی و دیتا برای ساخته شدن زمان نیاز دارد

در نهایت تمام این انتظارات را باید با واقعیت تطبیق بدهیم

همچنین شما باید سازمان را در زمینه هوش مصنوعی آموزش بدهیم.

شنونده فعال

ما با مشتریان ، تیم و ذی نفعان در ارتباط هستیم و اینکه بتوانیم این ارتباط را بخوبی مدیریت کنیم نیاز به مهارت های مختلفی دارد.

رفتارهایی که هنگام گوش دادن فعالانه بهتر است انجام دهیم:

  1. توجه کامل به روبرویی داشته باشیم و زبان بدن گشوده ای داشته باشیم.
  2. نشان بدهیم که گوش میدهیم و اینکار را با زبان بدن گشوده و آواهایی تائیدی و تکان دادن سر انجام دهیم.
  3. چیزی که شنیده اید را به او بگوئید.:
    متوجه شدن که…..
  4. سوالهای آشکار ساز یا شفاف ساز بپرسید.

پرزنتیشن

در ارائه اطلاعات باید اطلاعات عددی و داستان آن اعداد را بیان کنیم. شاید اعداد فراموش شوند اما داستان فراموش نمی شود.

در بالای قیف : درباره کاربر ، هدف و مشکل او صحبت میکنیم.  چرا این مشکل مهم است؟ همه چیز با مشکل کاربر شروع می شود

در پله دوم: محصول را داریم که به قهرمان در رسیدن به هدفش کمک می کند.

در پله سوم: اعداد و ارقام مربوط به محصول و کاربران را منتقل می کنیم . این بخش باید بعد از دو بخش قبلی باشد.

و در آخر: مخاطب شما چه نتیجه گیری میخواهید داشته باشد؟

جلسات موثر

باید یه جلسه داشته باشیم و درباره صحبتای جلسه قبل حرف بزنیم.

جلسات ابزار ما برای اقدامات زیر است:

همیشه قبل از جلسه از خودتان بپرسید:

  1. من باید در این جلسه حضور داشته باشم؟
  2. آیا من می توانم این ارتباط را آنلاین انجام بدهم؟
  3. این جلسه باید الان اتفاق بیافتد؟

چه کسانی باید در جلسه حضور داشته باشند:

  1. افرادی که باید مطلع شوند
  2. افرادی که باید اقدامی را انجام بدهند

نکته: افرادی که نیاز نیست اطلاعات عمیق درباره این موضوع داشته باشند را بعدا اطلاع رسانی کنید.

دعوت نامه جلسه باید شامل موارد بالا باشد.

پورپس: چرا جلسه را برگزار می کنیم؟

هدف: چه نتیجه ای از جلسه می خواهیم بگیریم؟

آجندا یا دستور جلسه: یعنی اینکه شما چگونه از زمان برای رسیدن به هدف استفاده خواهید کرد؟

مستندات: چه مستنداتی قبل از جلسه و برای آماده سازی باید مطالعه شود.

در حین جلسه احتمال دارد که بسیاری از افراد بخواهند از این تایم برای بیان مسائل دیگر استفاده کنند این وظیفه ماست که همه چیز را بر اساس دستور جلسه پیش ببریم.

در آخر جلسه باید اقداماتی که باید انجام بشوند را لیست کنیم.

خلاصه سازی: دست آوردهای کلیدی جلسه را بیان می کنیم.

نگرانی های کاربران

کاربران درباره هوش مصنوعی نگرانی هایی دارند ما باید این نگرانی ها را به حداقل برسانیم و اعتماد آنها را جلب کنیم.

4 قدم برای ایجاد اعتماد:

  1. اجازه بخواهید : هم قانون را رعایت کرده اید هم اعتماد کاربر را می خرید. و شفافیت کسب و کار را نشان میدهید.
  2. نتایج را توضیح دهید: کاربر را قادر سازید تا چیزی که می بیند را درک کند.
  3. به کاربران کنترل بدهید: به کاربران پیشنهاد دهید. به کاربر اجازه بدهید برخی چیزها را بلاک کند.
  4. تفاوت بین اعتماد: به کاربران نشان دهید که اگر به شما اعتماد کنند کیفیت نتیجه ها چه اندازه بهبود پیدا خواهد کرد.

بازیگران بد و امنیت هوش مصنوعی

مثال:سئو و گوگل  

برخی حفره های امنیتی ممکن است در سمت دیتا ، یا سمت کاربر وجود داشته باشد که باعث شود مدل کارکرد صحیحش را از دست بدهد.

مثال دیگر: tay  چت بات مایکروسافت روی توئیتر

تاثیر بایاس انسانی روی هوش مصنوعی

هوش مصنوعی گوگل که در استخدام و بررسی رزومه ها فعال بوده است به مردان امتیاز بیشتری نسبت به زنان می داده است. این بخاطر اطلاعات رزومه های خوبی بوده است که به هوش مصنوعی داده شده بود. آنها اکثرا برای مردان بودند و هوش مصنوعی در بررسی رزومه ها ادبیات و مشاهده ادبیات زنانه در توضیحات آنها را کم ارزش الویت بندی می کرد.

جلوگیری از بایاس در دیتا کار سختی است مراحل پائین را می توان در نظر گرفت.

  1. وجود هرگونه بایاس را در دیتای تمرینی در نظر بگیرید.
  2. سخت تلاش کنید که اطلاعات تنوع و گستردگی مناسبی داشته باشند.
  3. اطلاعات لیبل شده را بررسی کنید.
  4. عملکرد را برای هر زیرگروه تست کنید

قوانین مربوط به دیتا

در کار کردن با کشورهای مختلف باید قوانین آنها درباره دیتا را لحاظ کنیم. 

گوگل 20 میلیون دلار در سال 2019 بخاطر نقض GDPR جریمه شده است.

Gdpr  جمع آوری هرگونه اطلاعاتی که مستقیما و غیر مستقیم به شناسایی هویت اشخاص کمک کند را غیرقانون میداند.

اطلاعات غیر مستقیم شامل: لوکیشن ، جنسیت ، اعتقادات مذهبی ، کوکی های وب ، اطلاعات بیومتریک

ما بعنوان مدیر محصول باید در محصولات مختلف قوانین را بدانیم.

One thought on “مدیر محصول در هوش مصنوعی و دیتا

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *