پرسپترون یک الگوریتم یادگیری ماشین است که در دسته یادگیری با نظارت قرار میگیرد. الگوریتم پرسپترون یک الگوریتم دستهبندی دودویی (نوعی از دستهبندی که میتواند با توجه به بردار ورودی تصمیم بگیرد که این ورودی متعلق به یک کلاس هست یا خیر) است. این الگوریتم یک دستهبند خطی است، بهاین معنا که پیشبینیهایش را باتوجه به ترکیب خطی وزن دار ورودی الگوریتم انجام میدهد. همچنین این الگوریتم به دلیل اینکه ورودیهایش را به صورت تک تک در زمان بررسی میکند، یک الگوریتم برخط میباشد. الگوریتم پرسپترون در سال ۱۹۵۷ در لابراتوار کرنل آرونوتیکال توسط فرانک روزنبلت ابداع شد. درواقع این الگوریتم جزء اولین شبکههای عصبی مصنوعی است که بهکار گرفته شدهاست.پرسپترون بیشتر به عنوان یک دستگاه مد نظر بودهاست تا یک برنامه و با اینکه اولین پیادهسازی آن به صورت یک نرمافزار برای آی بی ام ۷۰۴ بود، پس از آن به صورت سختافزار اختصاصی "پرسپترون مارک ۱" پیادهسازی شد. این دستگاه برای تشخیص تصویر طراحی شده بود، مجموعهای از ۴۰۰ حسگر نور، که به صورت تصادفی به "نورون"ها متصل شدهاند. وزنها در پتانسیومترها کدگذاری شده بودند، و بروزرسانی وزنها در طول یادگیری با موتورهای الکتریکی صورت میگرفت.
الگوریتم پرسپترون یک الگوریتم تکرار شونده است، به این صورت که در ابتدا بردار وزن w و بایاس b به نحوی مقداردهی میشوند و سپس در هر مرحله، الگوریتم با توجه به نقاطی که درست دستهبندی نشدهاند مقادیر وزن w و بایاس b را تغییر میدهد تا این نقاط به درستی دستهبندی شوند. اگر نقاط دادهشده به صورت خطی تفکیکپذیر نباشند الگوریتم پرسپترون پایان نمییابد اما در صورتی که نقاط خطی تفکیکپذیر باشند الگوریتم در تعداد متناهی مرحله پایان مییابد.در زیر نمونه ای از کار پرسپترون آورده شده است.