نحوه استفاده از GPT برای تجزیه و تحلیل مجموعه داده های بزرگ
جذب و سپس خلاصه کردن مقادیر بسیار زیاد محتوا در چند ثانیه واقعاً کار بزرگی است. به عنوان مثال، مدتی قبل پیوندی به ضبط یک کنفرانس ویدیویی تجاری مهم 90 دقیقه ای دریافت کردم که چند ساعت قبل آن را از دست داده بودم.
دلیل اینکه نسخه زنده را از دست دادم این بود که وقت نداشتم (اگر باید بدانید، عجله داشتم تا کتاب منینگ، راهنمای کامل منسوخ برای هوش مصنوعی مولد را به پایان برسانم - که این مقاله گزیده ای از آن است).
خوب، نیم دوجین ساعت بعد من هنوز برای ویدیو وقت نداشتم. و به طور غیرقابل توضیحی، کتاب هنوز تمام نشده بود.
پس در اینجا نحوه حل تعارض به روش GPT آمده است:
من از OpenAI Whisper برای تولید رونوشت بر اساس صدای ضبط شده استفاده کردم
من رونوشت را به یک فایل PDF صادر کردم
من پی دی اف را در ChatPDF آپلود کردم
من از ChatPDF خواستم تا خلاصه های مرتبط با موضوعات خاصی را که به من علاقه مند بود، ارائه دهد
کل زمان برای "دانلود" لحظات کلیدی از تماس 90 دقیقه ای: 10 دقیقه. این 10 دقیقه برای تبدیل مجموعه داده ای متشکل از حدود 15000 کلمه گفتاری به قالبی قابل خواندن توسط ماشین و سپس هضم، تجزیه و تحلیل و خلاصه کردن آن است.
نحوه استفاده از GPT برای تجزیه و تحلیل تجاری
اما همه اینها در حال حاضر اخبار قدیمی است. سطح بعدی مشکل تجزیه و تحلیل کسب و کار را حل خواهد کرد.
باشه پس "مشکل با تجزیه و تحلیل کسب و کار" چیست ؟ این کار سخت ساخت کدهای پیچیده است که مجموعه داده های بزرگ را تجزیه می کند تا آنها را به طور مداوم قابل خواندن با ماشین (همچنین به عنوان "جدال داده" شناخته می شود) تجزیه کند. سپس الگوریتمهای پیچیده را برای دستیابی به بینشهای مفید اعمال میکند. شکل زیر به طور کلی فرآیند را نشان می دهد.
که فرآیند جدال داده ها را نشان می دهد" width="1021" height="680" loading="lazy">
بسیاری از کدهایی که با این توضیحات مطابقت دارند، بسیار پیچیده هستند، البته هوشمندانه نیستند. الهام بخشیدن به مهندسان داده باهوش برای نوشتن آن کد هوشمند، البته می تواند برای سازمان ها هزینه های بسیار زیادی را به همراه داشته باشد. پس "مشکل" هزینه است.
پس حل این مشکل می تواند شامل استفاده از هزینه های API مدل زبان بزرگ (LLM) به ارزش چند صد دلار باشد. در اینجا نحوه برنامه ریزی من برای نشان دادن آن است.
برای کار کردن به یک صفحه گسترده شلوغ نیاز دارم، درست است؟ بهترین مکانی که برای داده های خوب می شناسم، وب سایت Kaggle است.
Kaggle یک پلت فرم آنلاین برای میزبانی مجموعه داده ها (و مسابقات علم داده) است. این به منبع مهمی برای دانشمندان داده، متخصصان یادگیری ماشین و محققان تبدیل شده است و به آنها امکان می دهد مهارت های خود را به نمایش بگذارند، از دیگران بیاموزند و در پروژه ها همکاری کنند. این پلتفرم طیف گسترده ای از مجموعه داده های عمومی و خصوصی و همچنین ابزارها و ویژگی هایی را برای پشتیبانی از کاوش و مدل سازی داده ها ارائه می دهد.
نحوه تهیه مجموعه داده
مجموعه داده "پیش بینی نوع برنامه سرمایه گذاری" مرتبط با این کد باید به خوبی کار کند. از آنچه من می توانم بگویم، این داده هایی بود که توسط یک بانک در جایی در جهان جمع آوری شده بود که نشان دهنده رفتار مشتریانش است.
البته همه چیز ناشناس بوده است، پس هیچ راهی برای ما وجود ندارد که بدانیم در مورد کدام بانک صحبت می کنیم، مشتریان چه کسانی بودند یا حتی در کجای دنیا این همه اتفاق می افتاد. در واقع، من حتی 100٪ مطمئن نیستم که هر ستون از داده ها چه چیزی را نشان می دهد.
آنچه مشخص است این است که سن و محله هر مشتری وجود دارد. اگرچه مکانها بهعنوان C1
، C2
، C3
و غیره ناشناس شدهاند، برخی از ستونهای باقیمانده به وضوح حاوی اطلاعات مالی هستند.
بر اساس آن مفروضات، هدف نهایی من جستجوی روابط معتبر آماری بین ستونها است. به عنوان مثال، آیا ویژگی های جمعیت شناختی خاصی (درآمد، محله، سن) وجود دارد که احتمال بیشتری را برای خرید محصولات بانکی اضافی توسط مشتری پیش بینی می کند؟ برای این مثال خاص، میبینم که آیا میتوانم مناطق جغرافیایی را در دادهها شناسایی کنم که میانگین ثروت خانوارشان بالاترین است.
برای استفاده های معمولی، چنین داده هایی که به طور مبهم توصیف شده اند بی ارزش خواهند بود. اما از آنجایی که ما فقط به دنبال نشان دادن فرآیند هستیم، به خوبی انجام خواهد شد. سرصفحه های ستونی را می سازم که کم و بیش متناسب با شکل داده هایشان باشد. اسم آنها را اینگونه گذاشتم:
شناسه مشتری
سن مشتری
موقعیت جغرافیایی
بازدید از شعب در سال
کل دارایی های خانوار
کل بدهی خانوار
کل سرمایه گذاری با بانک
نام ستونها باید بسیار توصیفی باشند، زیرا اینها تنها سرنخهایی هستند که به GPT برای کمک به درک دادهها میدهم. من مجبور شدم شناسه های مشتری خودم را به آن ستون اول اضافه کنم (در ابتدا وجود نداشتند).
سریعترین راهی که برای انجام آن فکر میکردم این بود که فرمول =(RAND())
در سلول داده بالای آن ستون (با فایل بارگذاری شده در نرمافزار صفحهگسترده مانند Excel، Google Sheets یا LibreOffice Calc) و سپس اعمال کنید. فرمول به بقیه ردیف های داده. وقتی این کار انجام شد، همه 1000 ردیف داده دارای شناسههای منحصربهفرد خواهند بود، البته شناسههایی بین 0 تا 1 با ارقام اعشاری بسیار.
نحوه اعمال LlamaIndex به مشکل
با تهیه دادههایم، از LlamaIndex برای شروع به کار تجزیه و تحلیل اعداد استفاده خواهم کرد. مانند قبل، کدی که قرار است اجرا کنم، خواهد بود:
قابلیت های لازم را وارد کنید
کلید OpenAI API من را اضافه کنید
فایل داده ای که در دایرکتوری به نام data
است را بخوانید
گره هایی را بسازید که از آنها ایندکس خود را پر می کنیم
import os import openai from llama_index import SimpleDirectoryReader from llama_index.node_parser import SimpleNodeParser from llama_index import GPTVectorStoreIndex os.environ[ 'OPENAI_API_KEY' ] = "sk-XXXX" documents = SimpleDirectoryReader( 'data' ).load_data() parser = SimpleNodeParser() nodes = parser.get_nodes_from_documents(documents) index = GPTVectorStoreIndex.from_documents(documents)
در نهایت، من درخواست خود را ارسال می کنم:
response = index.query( "Based on the data, which 5 geographic regions had the highest average household net wealth? Show me nothing more than the region codes" ) print(response)
در اینجا دوباره در قالبی است که برای چشم راحت تر است:
بر اساس داده ها، کدام 5 منطقه جغرافیایی بیشترین ثروت خالص خانوار را داشته اند؟
من این سوال را در درجه اول پرسیدم تا تأیید کنم که GPT داده ها را درک کرده است. همیشه خوب است که مدل خود را آزمایش کنید تا ببینید آیا به نظر می رسد پاسخ هایی که دریافت می کنید به طور منطقی آنچه را که قبلاً در مورد داده ها می دانید منعکس می کند یا خیر.
برای پاسخ صحیح، GPT باید معنی هر یک از سرصفحههای ستون و روابط بین ستونها را بفهمد. به عبارت دیگر، باید بداند که چگونه ارزش خالص را برای هر ردیف (شناسه حساب) از مقادیر موجود در Total household assets
، Total household debt
، و Total investments with bank
محاسبه کند. سپس باید تمام اعداد دارای ارزش خالص تولید شده توسط Geographic location
را جمع آوری کند، میانگین ها را برای هر مکان محاسبه کند و در نهایت، تمام میانگین ها را مقایسه کرده و آنها را رتبه بندی کند.
نتیجه؟ من فکر می کنم GPT آن را میخکوب کرد. پس از یک یا دو دقیقه تفکر عمیق و عمیق (و حدود 0.25 دلار هزینه API)، پنج کد مکان (G0، G90، G96، G97، G84، در صورتی که کنجکاو باشید) به من نشان داده شد. این به من او میگوید که GPT ستون مکان را به همان روشی که من فهمیدم میفهمد و حداقل در تلاش است تا روابط بین مکان و آپشن های جمعیتی را استنتاج کند.
منظورم از "فکر می کنم" چه بود؟ خوب من هرگز در واقع تحلیل نکردم تا تأیید کنم که اعداد منطقی هستند. برای یک چیز، این به هر حال داده واقعی نیست و، با تمام آنچه می دانم، محتویات هر ستون را اشتباه حدس زدم.
اما همچنین به دلیل اینکه هر تجزیه و تحلیل داده نیاز به تحلیل در برابر دنیای واقعی دارد، پس ، از این نظر، تجزیه و تحلیل تولید شده توسط GPT تفاوتی ندارد. به عبارت دیگر، هر زمان که با دادههایی کار میکنید که قرار است دنیای واقعی را نشان دهند، همیشه باید راهی برای کالیبره کردن دادههای خود با استفاده از مقادیر شناخته شده پیدا کنید تا تأیید کنید که کل چیز یک فانتزی شاد نیست.
سپس سوال دومی را پرسیدم که نشان دهنده یک پرس و جوی واقعی است که هر بانکی را مورد علاقه قرار می دهد:
بر اساس سن، موقعیت جغرافیایی، تعداد بازدید سالانه از شعبه بانک و مجموع سرمایهگذاریهای جاری، ده مشتری بیشترین احتمال سرمایهگذاری در یک محصول جدید را چه کسانی هستند؟ فقط ارزش ستون های customer ID
را برای آن ده مشتری به من نشان دهید.
یک بار دیگر GPT پاسخی را پس زد که حداقل به نظر منطقی می رسید . این سوال همچنین برای آزمایش GPT در مورد توانایی آن در ارتباط چندین معیار و ارائه آنها به یک ارزیابی پیچیده طراحی شده است ("...به احتمال زیاد در یک محصول جدید سرمایه گذاری می شود").
من آن را به عنوان یک آزمایش موفق دیگر ارزیابی می کنم.
بسته بندی
GPT - و سایر LLM ها - قادر به تجزیه، تجزیه و تحلیل، و استخراج بینش از مجموعه داده های بزرگ هستند.
البته محدودیت هایی برای جادو وجود خواهد داشت. GPT و پسرعموهایش هنوز هم می توانند توهم داشته باشند - به خصوص وقتی که درخواست های شما فضای زیادی برای "خلاق" بودن به آن می دهد یا، گاهی اوقات، زمانی که شما بیش از حد در یک موضوع سریع فرو رفته اید. و همچنین محدودیتهای سختی برای میزان دادهای که OpenAI به شما اجازه آپلود میدهد وجود دارد.
اما، به طور کلی، شما می توانید بیشتر و سریعتر از آنچه که در حال حاضر تصور می کنید انجام دهید.
در حالی که همه اینها فرآیند تجزیه و تحلیل داده ها را بسیار ساده می کند، موفقیت همچنان به درک زمینه دنیای واقعی داده های شما و ارائه درخواست های خاص و هوشمندانه بستگی دارد. این کار شما خواهد بود.
این مقاله برگرفته از کتاب منینگ من، راهنمای کامل منسوخ برای هوش مصنوعی مولد است. از طریق وبسایت من، مزایای فناوری بسیار بیشتری وجود دارد .
ارسال نظر