Содержание
Новая форма СЗВ-М за май 2021
Оглавление
Скрыть
Что изменилось в бланке
Как заполнить СЗВ-М с учётом изменений
Образец заполнения новой формы СЗВ-М
Ответы на частые вопросы про заполнение СЗВ-М
Нужно ли заполнять СЗВ-М на работников, которым не начисляли и не выплачивали зарплату
Как заполнить СЗВ-М, если нет работников, а есть директор без зарплаты
Можно ли сдать СЗВ-М раньше окончания месяца
Как заполнить дополняющую форму СЗВ-М
Что изменилось в бланке
Новая форма СЗВ-М приведена в приложении № 1 к Постановлению Правления ПФ РФ № 103п от 15.04.2021.
В разделе 1 «Реквизиты страхователя» вместо краткого наименования организации теперь можно написать полное или сокращённое.
В разделе 3 «Тип формы (код)» вместо сокращенных «исхд», «доп» или «отмн» нужно указывать полностью:
- «Исходная» — если сдаёте СЗВ-М за отчётный период (месяц) впервые;
- «Дополняющая» — если нужно дополнить ранее принятый фондом отчёт;
- «Отменяющая» — для отмены принятых ошибочных сведений.
Также из бланка убрали все пояснения к разделам. Их перенесли в отдельное приложение № 2 «Порядок заполнения формы СЗВ-М».
Как заполнить СЗВ-М с учётом изменений
Правила заполнения в целом не изменились, но есть нюансы.
- В строке «Полное или сокращённое наименование» вписывают название организации как в учредительных документах. Оно может быть и на латинице.
- В разделе 4 «Сведения о застрахованных лицах» фамилию, имя, отчество работников заполняют в именительном падеже. Нельзя ничего сокращать и писать инициалы.
- В графе «№ п/п» нумерация должна быть сквозной — по возрастанию без пропусков и повторов (1, 2, 3, 4 и т. д.).
- 11-значный СНИЛС заполняют в формате XXX–XXX–XXX–CC или XXX–XXX–XXX CC.
- ИНН работника заполняют, если у работодателя есть эта информация. Если нет, графу оставляют пустой.
В порядке заполнения теперь чётко прописано, что в СЗВ-М нужно включать застрахованных лиц, на которых распространяется обязательное пенсионное страхование согласно ст. 7 закона № 167-ФЗ от 15 декабря 2001 г. Это значит, что заполнить СЗВ-М нужно и на руководителя организации — единственного учредителя, даже если с ним нет трудового договора. В старом бланке было только пояснение о том, что включать в отчёт нужно тех, с кем заключены трудовые или гражданско-правовые договоры.
Образец заполнения новой формы СЗВ-М
Образец заполнения новой формы СЗВ-М
Ответы на частые вопросы про заполнение СЗВ-М
Нужно ли заполнять СЗВ-М на работников, которым не начисляли и не выплачивали зарплату
Если в организации или у ИП числятся работники, их нужно включить в СЗВ-М, даже если за отчётный месяц не было начислений, выплаты зарплаты и уплаты страховых взносов. Главное, что с физлицом заключён трудовой или гражданско-правовой договор, который действовал хотя бы один день.
Как заполнить СЗВ-М, если нет работников, а есть директор без зарплаты
Если нет наёмных сотрудников, СЗВ-М сдают на директора — единственного учредителя. Даже если он работает без трудового договора и зарплаты, то всё равно состоит с организацией в трудовых отношениях. То есть считается застрахованным лицом в системе ОПС и на него тоже подают сведения по форме СЗВ-М (п. 14 Порядка заполнения).
Можно ли сдать СЗВ-М раньше окончания месяца
Последний день подачи формы СЗВ-М — 15-ое число месяца, следующего за отчётным. Но в законодательстве нет запрета сдавать её досрочно. То есть СЗВ-М за июнь можно сдать в этом же месяце, не дожидаясь его окончания.
Но после досрочной сдачи могут появиться новые сведения. Например, до окончания месяца приняли нового сотрудника. Тогда информацию в принятом отчёте придётся уточнить и подать СЗВ-М с типом формы «Дополняющая». Сделать это нужно до истечения срока сдачи отчёта.
Как заполнить дополняющую форму СЗВ-М
В разделе 3 «Тип формы (код)» нужно написать «Дополняющая». Реквизиты и отчётный период заполняют как в уже принятой исходной СЗВ-М. В дополняющую форму не нужно переносить информацию из исходного отчёта. Вносите только данные на сотрудников, которых недостаёт в первом отчёте.
Машина опорных векторов (SVM) Python, пример
В этом посте вы узнаете о концепциях машины опорных векторов (SVM) с помощью примера кода Python для построения модели классификации машинного обучения . Мы будем работать с пакетом Python Sklearn для построения модели. Специалистам по данным важно хорошо разбираться в алгоритме SVM и связанных с ним аспектах.
Содержание
Что такое метод опорных векторов (SVM)?
Метод опорных векторов (SVM) — это контролируемый алгоритм машинного обучения, который можно использовать как для задач классификации, так и для задач регрессии. Иногда SVM для классификации называется классификацией опорных векторов (SVC), а SVM для регрессии называется регрессией опорных векторов (SVR). В этом посте мы узнаем о классификаторе SVM. Основная идея классификатора SVM состоит в том, чтобы найти гиперплоскость, которая максимально разделяет точки данных разных классов. Другими словами, мы ищем наибольшую разницу между двумя классами. Учитывая помеченные обучающие данные (обучение с учителем), алгоритм классификации SVM выводит оптимальную гиперплоскость, которая распределяет новые примеры по разным классам. Затем эта гиперплоскость используется для прогнозирования новых точек данных. Классификатор машины опорных векторов также называется классификатором максимальной маржи, что означает, что он находит линию или гиперплоскость, которая имеет наибольшее расстояние до ближайших точек обучающих данных любого класса. Давайте возьмем пример, чтобы лучше понять машину опорных векторов. Скажем, вас попросили предсказать, уйдет ли клиент или нет, и у вас есть все записи о его прошлых транзакциях, а также демографическая информация. Изучив данные, вы обнаружили, что нет большой разницы между средней суммой транзакций клиентов, которые ушли, и тех, кто этого не сделал. Вы также обнаружили, что большинство ушедших клиентов живут относительно далеко от центра города. Основываясь на этих выводах, вы решили использовать алгоритм классификации машины опорных векторов для построения модели прогнозирования. Модель, обученная с использованием алгоритма классификации SVM, сможет классифицировать клиентов как клиентов с высоким риском (ушедших) или иначе.
Есть несколько ключевых понятий, которые важно понимать при работе с SVM. Во-первых, точки данных, которые находятся ближе всего к гиперплоскости, называются опорными векторами. Эти точки оказывают непосредственное влияние на положение и ориентацию гиперплоскости. Во-вторых, есть два параметра, которые управляют моделью SVM: C и гамма. C управляет компромиссом между максимизацией запаса и минимизацией ошибки обучения, в то время как гамма управляет формой границы решения.
В качестве примера предположим, что у нас есть набор данных с двумя функциями (x1 и x2) и двумя классами (0 и 1). Мы можем визуализировать эти данные, отобразив их в двумерном пространстве, где каждая точка окрашена в соответствии с меткой класса. Посмотрите на диаграмму ниже.
В приведенном выше случае мы видим, что существуют разные прямые линии, которые могут идеально разделить два класса. Тем не менее, мы все еще можем найти границу решения, которая делает довольно хорошую работу. Эта граница генерируется алгоритмом машины опорных векторов. Используя алгоритм SVM, как упоминалось выше, обучение модели представляет собой нахождение гиперплоскости (пунктирная линия на рисунке ниже), которая разделяет данные, принадлежащие двум разным классам, на максимальное или наибольшее расстояние . А точки, ближайшие к этой гиперплоскости, называются опорными векторами . Обратите внимание на это на диаграмме, приведенной ниже.
Синие квадратные точки представляют один класс, а красные точки представляют другой класс. Черная линия — это граница решения, полученная SVM. Как видите, SVM разместила границу таким образом, чтобы максимизировать разницу между двумя классами.
Машины опорных векторов — мощный инструмент для классификации, но, как и любой алгоритм машинного обучения, они требуют тщательной настройки своих гиперпараметров для достижения оптимальной производительности. Наиболее важными гиперпараметрами являются функция ядра и параметр выравнивания r . Функция ядра определяет, как точки данных преобразуются в многомерное пространство, а параметр регуляризации управляет компромиссом между сложностью модели и переоснащением. Кроме того, машина опорных векторов также имеет ряд других важных гиперпараметров, которые можно настроить для повышения производительности, включая максимальное количество итераций, устойчивость к ошибкам и скорость обучения. Тщательно настроив эти гиперпараметры, можно добиться значительно более высокой производительности машины опорных векторов. Вот связанный пост о настройке гиперпараметров для построения оптимальной модели SVM для классификации:
- SVM как классификатор мягкой маржи и значение C
- SVM — понимание значения C с примерами кода
Машина опорных векторов (SVM) Пример Python
Следующие шаги будут рассмотрены для обучения модели с использованием SVM при использовании кода Python:
- Загрузка данных
- Создание обучения и тестового разделения
- Выполнение масштабирования признаков
- Создание экземпляра классификатор SVC
- Подгонка модели
- Измерение производительности модели
В первую очередь мы загрузим соответствующие модули и классы Sklearn.
# Базовые пакеты импортировать numpy как np импортировать панд как pd импортировать matplotlib.pyplot как plt # Модули и классы Sklearn из sklearn.linear_model импортировать Perceptron, LogisticRegression из sklearn.svm импортировать SVC из sklearn. model_selection импорта train_test_split из sklearn.preprocessing импортировать StandardScaler из наборов данных импорта sklearn из показателей импорта sklearn
Давайте начнем с загрузки набора данных и создания обучающего и тестового разделения из набора данных. Обратите внимание на аспект стратификации, используемый при создании разделения обучения и тестирования. train_test_split класс sklearn.model_selection используется для создания разделения обучения и тестирования.
# Загрузить набор данных; В этом примере загружается набор данных рака молочной железы. bc = наборы данных.load_breast_cancer() X = bc.данные у = bc.target # Создать тренировочный и тестовый сплит X_train, X_test, y_train, y_test = train_test_split (X, y, test_size = 0,3, random_state = 1, stratify = y)
Следующим шагом является масштабирование объекта. Причина масштабирования признаков — убедиться, что данные для разных признаков находятся в одном диапазоне. StandardScaler класс sklearn.preprocessing используется.
sc = Стандартный масштаб() sc.fit(X_train) X_train_std = sc.transform(X_train) X_test_std = sc.transform(X_test)
Следующим шагом является создание экземпляра SVC (классификатора опорных векторов) и подгонка модели. Используется класс SVC модуля sklearn.svm .
# Создание экземпляра классификатора опорных векторов (SVC) svc = SVC (C = 1.0, random_state = 1, ядро = «линейный») # Подходит к модели svc.fit (X_train_std, y_train)
Наконец, пришло время измерить производительность модели. Вот код для того же:
# Делайте прогнозы y_predict = svc.predict(X_test_std) # Измеряем производительность print("Оценка точности %.3f" %metrics.accuracy_score(y_test, y_predict))
Производительность модели получится 0,953.
- Автор
- Последние сообщения
Аджитеш Кумар
Недавно я работал в области анализа данных, включая науку о данных и машинное обучение / глубокое обучение. Я также увлекаюсь различными технологиями, включая языки программирования, такие как Java/JEE, Javascript, Python, R, Julia и т. д., а также такие технологии, как блокчейн, мобильные вычисления, облачные технологии, безопасность приложений, платформы облачных вычислений, большие данные, и т. д. Чтобы быть в курсе последних обновлений и блогов, следите за нами в Twitter. Я хотел бы связаться с вами на Linkedin.
Ознакомьтесь с моей последней книгой, озаглавленной «Основы мышления: создание успешных продуктов с использованием первых принципов».
Недавно я работал в области аналитики данных, включая науку о данных и машинное обучение/глубокое обучение. Я также увлекаюсь различными технологиями, включая языки программирования, такие как Java/JEE, Javascript, Python, R, Julia и т. д., а также такие технологии, как блокчейн, мобильные вычисления, облачные технологии, безопасность приложений, платформы облачных вычислений, большие данные, и т. д. Чтобы быть в курсе последних обновлений и блогов, следите за нами в Twitter. Я хотел бы связаться с вами на Linkedin.
Ознакомьтесь с моей последней книгой под названием «Мышление на основе первых принципов: создание успешных продуктов с использованием мышления на основе первых принципов».0011
Опубликовано в AI, Data Science, Machine Learning, Python. Метки: наука о данных, машинное обучение, python.
Алгоритм метода опорных векторов (SVM)
следующий → Машина опорных векторов или SVM — это один из самых популярных алгоритмов обучения с учителем, который используется как для задач классификации, так и для задач регрессии. Однако в первую очередь он используется для задач классификации в машинном обучении. Целью алгоритма SVM является создание наилучшей линии или границы решения, которая может разделить n-мерное пространство на классы, чтобы мы могли легко поместить новую точку данных в правильную категорию в будущем. Эта граница наилучшего решения называется гиперплоскостью. SVM выбирает крайние точки/векторы, которые помогают в создании гиперплоскости. Эти крайние случаи называются опорными векторами, и, следовательно, алгоритм называется машиной опорных векторов. Рассмотрим приведенную ниже диаграмму, на которой есть две разные категории, которые классифицируются с использованием границы решения или гиперплоскости: Пример: SVM можно понять на примере, который мы использовали в классификаторе KNN. Предположим, мы видим странную кошку, которая также имеет некоторые черты собак, поэтому, если нам нужна модель, которая может точно определить, кошка это или собака, то такую модель можно создать с помощью алгоритма SVM. Сначала мы обучим нашу модель большим количеством изображений кошек и собак, чтобы она могла узнать о различных особенностях кошек и собак, а затем протестируем ее на этом странном существе. Так как опорный вектор создает границу решения между этими двумя данными (кошка и собака) и выбирает крайние случаи (опорные векторы), он увидит крайний случай кошки и собаки. На основе опорных векторов он классифицирует его как кошку. Рассмотрим приведенную ниже диаграмму: Алгоритм SVM может использоваться для распознавания лиц, классификации изображений, категоризации текста, и т. д. Типы SVMSVM может быть двух типов:
Гиперплоскость и опорные векторы в алгоритме SVM:Гиперплоскость: Может быть несколько линий/границ решений для разделения классов в n-мерном пространстве, но нам нужно найти наилучшую границу решения, которая помогает классифицировать точки данных. Эта лучшая граница известна как гиперплоскость SVM. Размеры гиперплоскости зависят от объектов, присутствующих в наборе данных, что означает, что если есть 2 объекта (как показано на изображении), то гиперплоскость будет прямой линией. А если признаков 3, то гиперплоскость будет двумерной плоскостью. Мы всегда создаем гиперплоскость с максимальным запасом, что означает максимальное расстояние между точками данных. Опорные векторы: Точки данных или векторы, находящиеся ближе всего к гиперплоскости и влияющие на положение гиперплоскости, называются опорными векторами. Поскольку эти векторы поддерживают гиперплоскость, они называются опорными векторами. Как работает SVM?Линейный SVM: Работу алгоритма SVM можно понять на примере. Предположим, у нас есть набор данных с двумя тегами (зеленый и синий), а также набор данных с двумя функциями x1 и x2. Нам нужен классификатор, который может классифицировать пару (x1, x2) координат либо зеленым, либо синим цветом. Рассмотрим изображение ниже: Итак, поскольку это двумерное пространство, то, используя прямую линию, мы можем легко разделить эти два класса. Но может быть несколько линий, которые могут разделять эти классы. Рассмотрим изображение ниже: Следовательно, алгоритм SVM помогает найти наилучшую линию или границу решения; эта наилучшая граница или область называется гиперплоскостью . Алгоритм SVM находит ближайшую точку линий из обоих классов. Эти точки называются опорными векторами. Расстояние между векторами и гиперплоскостью называется margin . И цель SVM — максимизировать эту маржу. Гиперплоскость с максимальным запасом называется оптимальной гиперплоскостью . Нелинейный SVM: Если данные расположены линейно, то мы можем разделить их с помощью прямой линии, но для нелинейных данных мы не можем провести одну прямую линию. Рассмотрим изображение ниже: Итак, чтобы разделить эти точки данных, нам нужно добавить еще одно измерение. Для линейных данных мы использовали два измерения x и y, поэтому для нелинейных данных мы добавим третье измерение z. Его можно рассчитать как: z=x 2 +y 2 При добавлении третьего измерения пространство выборки станет таким, как показано на рисунке ниже: Теперь SVM разделит наборы данных на классы следующим образом. Рассмотрим изображение ниже: Поскольку мы находимся в трехмерном пространстве, оно выглядит как плоскость, параллельная оси x. Если мы преобразуем его в 2d-пространство с z=1, то он станет таким: Следовательно, мы получаем окружность радиусом 1 в случае нелинейных данных. Python Реализация машины опорных векторов Теперь мы реализуем алгоритм SVM с помощью Python. Здесь мы будем использовать тот же набор данных user_data , который мы использовали в логистической регрессии и классификации KNN.
До этапа предварительной обработки данных код остается прежним. Ниже код: #Этап предварительной обработки данных #импорт наборов данных #Извлечение независимой и зависимой переменной # Разделение набора данных на обучающий и тестовый наборы. После выполнения приведенного выше кода мы предварительно обработаем данные. Код даст набор данных как: Масштабированный вывод для тестового набора будет: Подгонка SVM-классификатора к обучающему набору: Теперь обучающая выборка будет подогнана к классификатору SVM. Чтобы создать классификатор SVM, мы импортируем класс SVC из библиотеки Sklearn.svm . Ниже приведен код для него: from sklearn.svm import SVC # «Классификатор опорных векторов» В приведенном выше коде мы использовали kernel=’linear’ , так как здесь мы создаем SVM для линейно разделимых данных. Однако мы можем изменить его для нелинейных данных. А затем мы подобрали классификатор к набору обучающих данных (x_train, y_train) . Вывод: Выход[8]: SVC(C=1.0, cache_size=200, class_weight=Нет, coef0=0.0, solution_function_shape='ovr', степень=3, гамма='auto_deprecated', ядро = 'линейное', max_iter = -1, вероятность = ложь, random_state = 0, сжатие = Истина, tol = 0,001, verbose = Ложь) Производительность модели можно изменить, изменив значение C (коэффициент регуляризации), гамму и ядро .
#Предсказание результата набора тестов Получив вектор y_pred, мы можем сравнить результат y_pred и y_test для проверки разницы между фактическим значением и прогнозируемым значением. Вывод: Ниже приведен вывод для прогноза тестового набора:
#Создание матрицы путаницы Вывод: Как видно из выходного изображения выше, имеется 66+24= 90 правильных предсказаний и 8+2= 10 правильных предсказаний. Поэтому мы можем сказать, что наша модель SVM улучшилась по сравнению с моделью логистической регрессии.
из matplotlib.colors импортировать ListedColormap Вывод: Выполнив приведенный выше код, мы получим вывод: Как мы видим, приведенный выше вывод похож на вывод логистической регрессии. На выходе мы получили прямую линию в виде гиперплоскости, потому что использовали линейное ядро в классификаторе . И мы также обсуждали выше, что для двумерного пространства гиперплоскость в SVM является прямой линией.
#Визуализация результата набора тестов Вывод: Выполнив приведенный выше код, мы получим вывод: Как мы видим на приведенном выше выходном изображении, классификатор SVM разделил пользователей на две области (Купленные или Не купленные). |