Sas portal что это за программа

Обновлено: 02.07.2024

Работаете ли вы со статистикой, строите ли прогнозные модели, исследуете данные или анализируете процессы, с мощными инструментами SAS вы расширите свои возможности и увидите, как легко и точно можно изучать, анализировать и визуализировать данные.

Что дальше?

Недавно я заглянул в дорожную карту SAS Customer Intelligence 360, и мне стало очевидно, что это уже не просто расширение digital-возможностей «классических» решений традиционного целевого маркетинга SAS. SAS Customer Intelligence 360 медленно, но верно превращается в самодостаточную Digital Marketing платформу. Дорабатываются интеграции (внешние DMP и традиционные каналы), шлифуются модели аналитических помощников (расширенная сегментация и продуктовый рекомендер), в имеющиеся инструменты добавляются новые «фичи» (мультистраничное A/B тестирование и online персонализация контента). C каждым релизом увеличивается встроенная функциональность MRM.

На все интересующие вопросы по SAS Customer Intelligence 360 я готов ответить в комментариях.

Sas7bdat и данные

Начнем с того, что SAS Base работает только с особым форматом данных, который называется SAS Data Set (набор данных SAS). Но помимо всего прочего SAS является очень гибким инструментом и может считывать практически любые данные, преобразовывая в SAS Data Set. Набор данных SAS представляет собой обычную плоскую таблицу, состоящую из строк и столбцов. Набор данных SAS хранится как файл с расширением .sas7bdat.

С точки зрения традиционной терминологии SAS наборы данных состоят из переменных (variables) и наблюдений (observations). Проведя аналогию с терминологией реляционных баз данных, переменные являются столбцами, а наблюдения – строками.

Рассмотрим на примере описанное выше.

Представленная программа создает таблицу people (сам синтаксис мы рассмотрим позже):


Исходные данные могут иметь различный вид, SAS упростил эту задачу. В SAS существует всего два типа данных числовой (numeric) и символьный (character). В наборе данных people переменные First_Name, Last_Name, Phone_Number имеют символьный тип, а переменная Id – числовой. Стоит отметить, что даты в SAS — это тоже числа.

Данная программа создает набор данных time, содержащий текущие дату, время и дату и время (datetime) в формате SAS:


Возможный вид набора данных представлен ниже:


Все три значения – это даты в формате SAS. Итак, дата в формате SAS – это количество дней, начиная с 01 января 1960 до текущей даты, время в формате SAS – это количество секунд, начиная с полуночи текущей даты, дата и время – это количество секунд, начиная с полуночи 1960 года. Именно в таком виде хранятся даты в формате SAS в наборах данных.

Иногда данные могут быть неполными, как в наборе данных people: в нем отсутствуют некоторые значения. В SAS существует понятие missing – пропущенное значение. По факту, пропущенное значение – это тип значения для переменной, которая не содержит данных для конкретной строки или столбца. По умолчанию SAS записывает недостающее числовое значение в виде точки и отсутствующее значение текстовой переменной в качестве пробела. При сравнении «миссинг» всегда равен «миссингу», при этом в операторах сравнения «миссинг» — самое минимальное значение.

Кроме фактических значений, набор данных SAS имеет такие данные, как тип переменной, длину, имя, ярлыки, форматы, называемые атрибутами набора данных.

Канадский центр по работе с зависимостями и психическим здоровьем использует SAS, чтобы обеспечить пациентам лучший уход.

В Канаде каждый пятый человек испытывает проблемы с психическим здоровьем или зависимостью, что намного выше среднего показателя по всему миру. Но психические заболевания не лечатся, так как многие молчат об этом. Являясь крупнейшей в Канаде клиникой по обучению в области психического здоровья, CAMH использует аналитику для устранения этой проблемы. Учреждение, расположенное в Торонто, ежегодно обслуживает более 34 000 пациентов.

SAS: мы анализировали данные и обучали модели задолго до того, как это стало модным


Наша аналитическая платформа работает в WalMart, Bank of America, Bank of China, Сбербанке, МТС. SAS как предмет преподают в МГУ, ВШЭ, МИФИ, МГТУ им. Баумана, МЭИ, МИИТ и других ВУЗах. А под катом — наша краткая история-знакомство, с которой мы хотим открыть наш блог на Хабре.

Добываем инструменты

Научиться программировать на SAS Base можно на бесплатном интерфейсе под названием SAS University Edition или сокращенно SAS UE.


При запуске программы или задачи SAS Studio подключается к серверу SAS для обработки кода. Сервер SAS может быть размещен в облачной среде, локальной среде или же на локальном компьютере. После обработки кода результаты возвращаются в SAS Studio в вашем браузере.

SAS Studio поддерживает несколько веб-браузеров: Microsoft Internet Explorer, Apple Safari, Mozilla Firefox, and Google Chrome.

День D

«Диджитал» подкрался незаметно из социальных сетей, поисковых систем, экранов мобильных телефонов и различных носимых устройств.


К комфорту современного интернета быстро привыкаешь, некогда непривычно высокий уровень обслуживания становится делом обыденным и соответствующим минимальным «must have».

Для того чтобы безнадежно не отстать от потребностей своих клиентов, компании вынуждены рваться вперед в гонке цифровых клиентских сервисов.

С какими проблемами сталкиваются организации при работе с цифровыми каналами? Их много, но мы выделяем три наиболее острые:

  • Возрастающая сложность идентификации. Одни и те же клиенты одновременно взаимодействуют с разными цифровыми каналами. Возможностей традиционной веб-аналитики для всестороннего мониторинга здесь недостаточно. Реализация отдельных кейсов не приводит к созданию универсального средства управления взаимоотношениями с клиентом в цифровых каналах.
  • Возрастающая скорость изменений. Пора признать, что ретроспективный анализ данных в современном мире утрачивает свою ценность. Безусловно, отчеты об эффективности работы сайта или мобильного приложения, основанные на терабайтах кликстрим данных, выглядят впечатляюще. Однако оказывается, что для бизнеса они несут мало пользы. Они отлично иллюстрируют прошлое — но ничего не говорят о будущем.
  • Возрастающий объем информации. Посетители онлайн-магазинов или банковских сайтов могут генерировать гигантский поток данных о себе и своем поведении. Всю эту информацию нужно уметь использовать. Но данные о цифровых каналах — это лишь часть общей картины, которая останется неполной без данных из оффлайн-источников. С неполными исходными данными сложно добиться успеха, даже используя самые современные инструменты, например, датамайнинг или предиктивную аналитику.

Разбираемся в интерфейсе

Немного о том, как выглядит интерфейс SAS UE.

Слева находится панель навигации, справа – рабочая область. Три основные вкладки рабочей области – «Код», «Журнал», «Результаты».

Справка по синтаксису появляется, как только вы уменьшаете список релевантных ключевых слов. Справка по синтаксису также появляется, если щелкнуть правой кнопкой мыши на ключевое слово в программе и выбрать Syntax Help (Справка по синтаксису).


Можно перейти на страницу документации по той или иной процедуре, кликнув на ссылку «Документация по продукту».


На вкладке «Выходные данные» вы можете увидеть созданные таблицы.


На вкладке «Результаты» вы можете просматривать вывод процедур, создающих отчеты.


Если какая-то часть программы используется часто, ее можно добавить во «Фрагменты кода».





Вы можете открыть справку (SAS Help) и документацию прямо из главной панели инструментов. SAS Studio Help (Справка SAS Studio) для перехода на страницу документации по SAS Studio. Эта веб-страница содержит справку по интерфейсу SAS Studio.


Если вы только начали изучать продукты SAS, то наверняка незнакомы с некоторыми особенностями терминологии, используемой в продуктах компании.

Основы программирования на SAS Base. Урок 1

Привет! Я Анна Добрыченко, преподаватель учебного центра SAS в России: провожу тренинги по программированию на SAS Base, использованию SAS Enterprise Guide и SAS Visual Analytics, участвую в подготовке стажеров. Вся техническая документация и статьи продуктов и решений SAS изложены на английском языке, а локализованного материала в Рунете недостаточно.

Поэтому в нашем блоге на Хабрахабре я расскажу об основах программирования на SAS Base в цикле статей.



Язык SAS Base представляет собой основу большинства этих продуктов и решений SAS, именно ему и будут посвящены статьи. В них я познакомлю с терминологией, типами данных, с которыми работает SAS Base, со структурой кода, написанного на SAS Base, и покажу основные приемы, которые используются при написании программ SAS.

Переменные и атрибуты

У переменных в SAS есть ряд атрибутов, давайте познакомимся с некоторыми из них.
Длина переменной — это количество байт, приходящихся на один символ.
Данный код демонстрирует вышеизложенное:


Имена переменных, как и наборов данных, задаются самостоятельно. Есть ряд правил именования переменных SAS:

  1. Имена не должны превышать 32 символов.
  2. Имена должны начинаться только с буквы или символа нижнего подчеркивания.
  3. Имена могут содержать только буквы, цифры или символы нижнего подчеркивания.
  4. В именах переменных нельзя использовать специальные символы, в том числе и пробел.
  5. Имена могут содержать как прописные, так и строчные буквы, так как SAS не чувствителен к регистру при именовании сущностей (переменные, наборы данных, библиотеки и так далее). Обращаться в коде к переменной вы можете в любом регистре. Но! Важно то, что SAS запоминает первое появление названия переменной в программе и при формировании отчета использует именно его.


В последующих статьях мы подробнее познакомимся с атрибутом формат.

Ярлык переменной используется в отчетах вместо имен переменных. Ярлык может содержать до 256 символов, включая специальные символы, в том числе и знак пробела. В последующих статьях мы рассмотрим, виды ярлыков и как они используются в программном коде, а также приемы, когда в имени переменной может быть использован, например, пробел.

Ключевые требования

Однако не все так просто. Эффективность работы с аналитикой зависит от нескольких ключевых факторов, отсутствие которых способно испортить весь эффект.

Во-первых, для аналитики в первую очередь необходимо иметь адекватные и упорядоченные данные. В некоторых отраслях это не представляет сложности (банки, телеком), но в некоторых структурированность, да и просто наличие нужных данных – большая проблема (например, страхование, агробизнес).


Во-вторых, большую роль играет то, насколько руководство готово внедрять аналитику и использовать ее при принятии решений, причем основная проблема кроется даже не в затратах, а именно в готовности менять схемы работы. Много где руководство считает, что если их схемы работают уже двадцать лет, а эксперты раньше принимали нужные решения без всякой аналитики, то и менять ничего не стоит. В современном мире эта стратегия работает либо до первого крупного происшествия (мошенничества, неурожая и пр.), либо до тех пор, пока компания не начинает заметно проигрывать на рынке конкурентам, использующим современные технологии и схемы управления.

В-третьих, в компании должна быть команда аналитиков, которые будут работать с полученными данными. Такие команды тоже есть не везде, и в телекоме аналитики, математики, дата-сайентисты окажутся скорее, чем, например, в сельском хозяйстве. Впрочем, и здесь все меняется: с одной стороны, все больше предприятий понимают, что необходимо иметь собственное аналитическое подразделение, с другой – использование искусственного интеллекта позволяет аналитическим системам работать точнее и лучше подстраиваться под существующие условия, что повышает эффективность в конкретных задачах. Плюс системы стали проще для пользователя.


Наконец, сейчас широко распространяется аутсорсинг, когда собственно работу аналитиков берут на себя партнеры, а заказчик получает готовые для понимания и использования аналитические данные. Например, часто в начале сотрудничества мы работаем в качестве внешних аналитиков (по модели RaaS), и клиент получает эффект и понимание, что и как работает, какие направления следует развивать, а какие – нет. Это поможет ему при формировании своей команды или же подтолкнет принять решение продолжить работать на аутсорсе.

На каких рынках мы работаем

Мы активно работаем на банковском рынке, в число наших клиентов входят практически все крупнейшие банки. Наши решения используются в клиентской аналитике, целевом маркетинге, помогают обеспечить управление данными и подготовку управленческой и аналитической отчетностью. Одно из ключевых направлений — управление рисками, которое применяется в том числе для борьбы с мошенничеством.

Несмотря на изначальный скепсис в отрасли, мы успешно работаем со страховым бизнесом. У них главная проблема — это очень небольшой объем транзакционных данных по клиентам. Нормальный человек покупает полис и приходит только через год за следующим. Поэтому страховщики сомневались, можно ли извлечь из технологий машинного обучения какую-то пользу. Но капля камень точит. Пару лет назад плотину все-таки прорвало, и мы начали делать первые проекты. Самые перспективные направления для нас – борьба с мошенничеством и оценка потенциальной убыточности клиентов.


В последние годы мы активно выходим на рынок ритейла. В этой отрасли наши решения используются как в товарной аналитике (оптимизация цен, запасов, размещения на полках и пр.), так и в клиентской аналитике (все, что связано с персонализацией отношений с клиентами). Также аналитика дает реальный и быстрый эффект в таких секторах как логистика, медицина и сельское хозяйство

Сегодня потребности клиентов и рынка в аналитике развиваются чрезвычайно быстро, поэтому свои перспективы мы оцениваем с большим оптимизмом.

Что привлекает клиентов

Больше всего клиенты ценят то, что получают от SAS готовые решения. Наши решения позволяют не просто разрабатывать модели – мы можем встраивать их в бизнес-процессы компании. Очень часто именно эта возможность становится решающей при принятии решения об использовании именно нашего продукта. Потому что зарабатывать деньги на любых моделях или аналитике можно только тогда, когда они реально дают возможность принимать прибыльные бизнес-решения и повышать эффективность. Поэтому мы уделяем огромное внимание тому, чтобы наша аналитика была тесно интегрирована в бизнес-процессы компании. Но это не единственное наше достоинство.

Мы сами разрабатываем все свои продукты и решения, что обеспечивает единообразность и согласованную работу, в дальнейшем наши решения можно легко масштабировать или модифицировать. Наши решения тесно интегрированы между собой: мы предлагаем общую платформу, на которую можно «навешивать» разные модули. Благодаря этому степень риска при их внедрении гораздо ниже – клиенту не надо собирать в единую систему из чужих технологий и инструментов с неизвестным результатом. Можно сразу (и зачастую перед полноценным внедрением) оценить работу решения, составить предварительное впечатление.

В наши решения заложены накопленные нами знания и опыт в области решения конкретных аналитических задач, типовые бизнес-процессы, формы мониторинга и отчетности и т.д. Плюс, у нас нет «просто аналитиков», наши специалисты обладают предметными данными в конкретной области, что позволяет им лучше понимать ситуацию. В принципе, даже технические специалисты обладают знаниями и пониманием происходящих в отрасли процессов, что позволяет им более адекватно работать с данными.

Еще момент – скорость обработки данных. О высокой скорости говорят все, но чаще речь идет о каких-то специальных бенчмарках. Мы же имеем опыт реальных внедрений сложных решений с огромными скоростями обработки для таких компаний как WalMart, Bank of America, Bank of China, Сбербанк. Кроме того, у нас есть особая услуга: специальный дата-центр, имеющий 114 высокопроизводительных процессорных ядра, 3 ТБ оперативной памяти, 24 ТБ SSD емкости, который смонтирован в передвижном ящике весом в 120 кг. Мы можем поставить его у заказчика на пару недель, чтобы он смог проверить и оценить его работу. Да, и часто клиенты не хотят отдавать ее обратно.


Наконец, стоит отметить, что, хотя продукты SAS и стоят немало, для наших клиентов цены конкретных решений, как правило, не играют решающей роли – они больше смотрят на то, какие выгоды они получат от внедрения. Это может быть повышение рентабельности, снижение издержек или повышение скорости реагирования, что тоже повышает эффективность. Впрочем, если цена кажется излишней или заказчик пока не понимает, выгодным ли для него окажется использование наших решений, можно начать с облачных сервисов на платформе SAS – порог вхождения для них куда ниже, но при этом можно в полной мере оценить наши возможности.


Уже сейчас с решениями SAS работают ведущие предприятия во многих отраслях. SAS преподают в крупнейших вузах – спецкурсы, куда могут прийти все желающие, есть в МГУ, ВШЭ, МИФИ, МГТУ им. Баумана, МЭИ, МИИТ и др. Мы регулярно проводим набор на стажерскую программу, причем она расширена и на наших клиентов – всем нужны люди со знанием SAS.

Мы с радостью услышим ваши пожелания о темах, которыми нам лучше поделиться. Пишите в комментариях вопросы, мы с радостью ответим, в том числе, в будущих материалах.

Вводная

Есть несколько вариантов изучить основы программирования на SAS Base.

  1. Прочитать документацию: все решения SAS хорошо задокументированы, чтобы пользоваться ими было легко даже новичку. Все справочники находятся на сайте поддержки. Из плюсов стоит отметить, что найти можно все, что интересует бесплатно, из минусов – долго, и вся информация на английском языке.
  2. Посмотреть бесплатный онлайн-курс в формате e-Learning. Плюсы – все подробно разъясняется с примерами и выполнением практических упражнений, минусы – долго (длительность 24 часа), курс на английском языке. Также можно посмотреть видео SAS на Youtube.
  3. Купить книгу, например, Little SAS Book. Книга знакомит начинающих пользователей с языком SAS Base, содержит практические примеры и упражнения. Но опять же, вся литература, выпускаемая SAS, на английском языке и имеет относительно высокую стоимость. Все книги представлены на официальном сайте SAS в разделе «Обучение», также можно воспользоваться ресурсом Amazon. Но если вы студент и участвуете, например, в нашей стажерской программе, то вам могло повезти и вы получили книгу в подарок, что не может не радовать.
  4. Прочитать наш курс статей, освящающий основы программирования на SAS Base. Эти статьи адресованы новым пользователям SAS, работающим в различных сферах бизнеса, по большому счету для всех, кто собирается проводить анализ данных с помощью решений SAS или писать свои программы на SAS Base.

Цифровой маркетинг в режиме одного окна: разбираем облачные продукты SAS

Меня зовут Максим, и я работаю консультантом по клиентской аналитике в компании SAS (это не спецназ и не авиакомпания, а институт). Мы оцениваем применимость новых технологий в бизнес-процессах различных отраслей и на основе этого делаем проекты. В том числе в цифровом маркетинге. Самыми интересными результатами нашей работы я буду делиться с вами в этой и последующих публикациях.

Сегодняшний герой — облачный продукт для цифрового маркетинга SAS Customer Intelligence 360, который позволяет централизованно собирать и обрабатывать данные о клиентах. Разбор возможностей и примеры работы — под катом.


Использование ИИ для декодирования «танцев» пчел.

Видеодатчики внутри ульев и обучающие алгоритмы машинного обучения для декодирования танца помогают Beefutures понять, где насекомые находят пищу. Пчеловоды могут отслеживать ульи в течение всего дня, определять, где находятся источники пищи, и, если их недостаточно, оценивать, где лучше высадить новые поля для пчел.

Защити Амазонию.

Амазонский тропический лес, в котором обитает более 2000 видов животных и растений, находится под угрозой. Вместе мы можем это предотвратить. Наше краудсорсинговое приложение собирает и идентифицирует изображения, которые помогут обучить модели ИИ выявлять вырубку леса.

Структура программы SAS Base

Ознакомимся со структурой программы на языке SAS Base.

Все программы SAS состоят всего из двух шагов: шаг PROC и шаг DATA. Шаг DATA предназначен для чтения, преобразования и создания наборов данных SAS, а процедурный шаг PROC в основном – для анализа данных, формирования и печати отчетов. Шаги состоят из операторов. Индикатор окончания шага – это ключевое слово RUN (или, например, QUIT для ряда процедур), также сигналом к завершению шага может быть наличие операторов STOP и ABORT. Шаги могут размещаться в произвольном порядке, компилятор считывает последовательно шаг за шагом. Стоит отметить, что и сами шаги считываются построчно и никак иначе. Разные части программы обмениваются друг с другом данными в виде наборов данных SAS.

Синтаксис SAS Base очень прост, так же как и написание кода.

Пример простейшей программы SAS представлен ниже:


Важным требованием синтаксиса является наличие точки с запятой в конце каждого оператора. Данная программа SAS считывает набор данных ads из библиотеки sasuser (с понятием «библиотека» мы познакомимся в следующей статье), создает новый набор данных new. На следующем шаге мы создаем отчет из нового набора данных.

Стоит отметить, что у SAS Base нет требований к форматированию кода. Вы можете написать код в одну строку и код будет работать. Чтобы отформатировать код в SAS U, нажмите на кнопку «формат кода»:


Хороший тон для программиста – это пояснения к исходному тексту программы. Комментарии не влияют на семантику программы.

В SAS Base есть два вида комментариев:



Как отмечалось ранее, Log необходимо детально изучать. Давайте рассмотрим несколько самых распространенных синтаксических ошибок:

В данном случае шаг отработает с предупреждением. В Log мы увидим следующую информацию:

В данном случае run на втором шаге программы будет расценен как параметр оператора proc print.

Ошибка будет выглядеть следующим образом:


  • Непарные кавычки. В SAS Base можно использовать одинарные и двойные кавычки, которые должны быть парными.


Итак, это кратко об интерфейсе SAS UE, терминологии SAS Base и основных требованиях к синтаксису SAS Base. В следующей статье мы рассмотрим библиотеки SAS и их создание, создание детализированных отчетов, рассмотрим форматирование значений и задание постоянных атрибутов переменным.

Уверена, что работа с SAS окажется интересной и увлекательной. Grow with SAS!

Кто мы такие

Компания SAS существует с 1976 г. Мы выросли из маленького проекта одного молодого профессора математики из Университета Северной Каролины. Началось все с небольших подрядов на статобработку данных Минсельхоза, которые он выполнял вместе со своими студентами.

Разумеется, стандартных решений для автоматизации тогда не существовало, поэтому большинство статистических функций профессор писал сам на языках С и COBOL.

В какой-то момент количество перешло в качество: вместо того чтобы просто выполнять определенные расчеты для своих клиентов, профессор решил продавать сами свои наработки по расчетам и другим клиентам, которым необходимо было работать с аналитикой и статистикой, а также строить математические модели. Так появилась компания SAS.

Сегодня мы работаем по всему миру практически во всех традиционных отраслях, где необходим анализ статистики. В круг наших партнеров входят банки и крупнейшие страховые компании, ритейлеры и производственные компании, энергетика и нефтегаз, ресторанные и гостиничные сети, а также самые разные госструктуры. На сегодняшний день мы обслуживаем более 83 000 клиентов по всему миру. В нашей компании работает 14 000 сотрудников, более 4 000 из которых заняты непосредственно разработкой ПО.

Мы имеем богатую историю работы и на российском рынке. Хотя официальная история SAS в России началась с 1996 года, первые крупные внедрения нашего ПО относятся к самому началу 90-х, а отдельные решения работали еще при существовании СССР.

Одним из первых крупных клиентов на российском рынке стал Альфа-банк, история работы с которым уходит в самое начало 90-х. Среди крупнейших российских клиентов можно упомянуть и компанию МТС, где мы создавали хранилище данных и систему обработки управленческой и аналитической отчетности. Общий объем хранилища составлял 30 ТБ, что на тот момент (более 10 лет назад) являлось самым большим хранилищем данных в РФ, а возможно даже и в Европе. Также наши технологии и решения активно используется в сфере железнодорожного транспорта и некоторых других отраслях российской промышленности.

Хочу все знать. Язык SAS


История возникновения

Для начала в сотый раз обратимся к рейтингу ресурса TIOBE, дабы отыскать в нём нашего сегодняшнего героя. SAS располагается на “предлидирующем” 21 месте, что, согласитесь, для data-языка великолепный результат. Так что давайте познакомимся с ним поближе.


Итак, Джеймс Гуднайт (James Goodnight) в 1976 году окончил Университет Северной Каролины, тут же приложил свою руку к созданию небольшой аналитической компании SAS Institute и вот уже 40 лет он ее CEO. SAS - аббревиатура от Statistical Analysis System, что полностью описывает основное направление деятельности компании.

Естественно, для того, чтобы эффективно обрабатывать большие потоки информации потребовался не только качественный программный продукт, но и соответствующий язык. И им стал SAS. Изначально это был довольно примитивный набор шаблонных запросов для группировки данных, но со временем SAS стал полноценным и достаточно популярным языком программирования.

В общем-то с этого момента можно было бы смело вести историю языка, программного обеспечения и всей компании, как единого целого, но в 2002 году объявился идеологический конкурент - World Programming System (WPS), который в своей деятельности не просто стал использовать язык SAS, но и разработал для него собственный компилятор и IDE.

Разумеется, вскоре началась судебная тяжба, которая в итоге создала интересный прецедент для всего IT-сообщества: WPS выиграл суд, доказав, что авторское право не нарушается, если используется синтаксис и функциональность языка, но не используются исходные коды. Таким образом, язык SAS отчасти избежал участи MATLAB, сорвав ярлык “вещи в себе”.

Кстати, сегодня SAS Institute - не просто преуспевающая компания с оборотом в несколько миллиардов долларов в год, но и одно из наиболее привлекательных мест для работы. Так, в 2013 году SAS заняла второе место в рейтинге “привлекательности” компаний США, пропустив вперёд лишь Google.

Краткая справка

Впрочем, оставим дела компании и обратимся непосредственно к языку. Чтобы вы визуально представляли его внешний вид, вот небольшой отрывок кода, содержащий вывод на экран таблицу данных:

PROC PRINT DATA = models NOOBS;
WHERE Type = "Mountain";
FORMAT Price DOLLAR6.;
TITLE "Current Models of Mountain Bicycles";
RUN;

Основным конкурентом SAS является язык R, причём стоит признать, что последний имеет солидное преимущество. Во-первых, он был создан позднее, соответственно избежал многих проблем роста. Во-вторых, и это наверное главный фактор, он бесплатный, в то время как SAS требует дорогое программное обеспечение. Впрочем, давайте взглянем на преимущества и недостатки SAS в сравнении с главным конкурентом.

Простой синтаксис, быстрое обучение “с нуля”;

Отладка кода проходит значительно проще, чем на R;

Интеграция с БД (Oracle/Teradata);

Удобный формат выходных данных (особенно таблиц);

Мощная поддержка со стороны компании SAS;

Многолетний успешный опыт эксплуатации компаниями разной величины, с разными задачами и разным объёмом входных данных. В частности, России SAS используют ОАО “РЖД”, МТС, ЦБ РФ, а также ведущие банки, среди которых Сбербанк, Альфабанк, Тинькофф и многие другие.

Профессиональное использование языка предполагает покупку программного продукта;

Исходники многих исполняемых алгоритмов SAS не являются публичными, следовательно изучение работы языка сильно ограничено;

SAS значительно уступает в производительности R;

С точки зрения объёма кода SAS также зачастую сильно проигрывает (иногда в несколько раз).

При этом надо понимать, что далеко не во всех сферах SAS и R являются прямыми конкурентами. Взгляните на следующее изображение:


Из него отчётливо видно, что в Data Science SAS сильно проигрывает не только R, но и Python. Но вот в анализе данных, предполагающем дальнейшие прогнозы, SAS занимает лидирующую позицию.

Программный продукт

Для того, чтобы оценить степень размаха в прикладных программах, с которым придётся столкнуться желающему освоить SAS в полном объёме, можно посетить официальный раздел с перечислением пакетов заглавной IDE. Впрочем, здесь прослеживается аналогия с уже упомянутым продуктом MATLAB/Simulink, где также имеется большое количество надстроек, но по сути подавляющее большинство из них имеет строгую специализацию. Так что изначально стоит сфокусироваться лишь на 4 следующих:

SAS Visual Analytics - инструмент для визуализации ваших данных;

SAS Enterprise Miner - инструмент для машинного обучения;

Enterprise / Text Miner - пакет надстроек, аналогичный SAS Visual Analytics, но с большим упором на упрощение любых внутренних взаимодействий;

SAS ETS Module - система прогнозирования.

Если вы вдруг сейчас подумали, что возможно стоит прикупить пару из них, то вот стоп-сигнал: SAS Enterprise Miner, к примеру, обходится крупным компаниям более чем в 100 тысяч долларов. Пакет Analytics будет значительно дешевле, около 8,5 тысяч, но разве от этого легче?

Обучение

Впрочем, это не означает, что постигнуть азы SAS невозможно. Компания активно продвигает свой продукт среди студентов, причём абсолютно бесплатно. Достаточно мощную пробную версию SAS University Edition можно скачать перейдя по ссылке.

Также на официальном сайте у вас есть возможность записаться на экспресс-курсы по изучению языка (причём на русском языке). Рекомендуемая длительность обучения в каждом разделе составляет 3 дня, требования и программу можно посмотреть прямо рядом с торжественной кнопкой записи.

В общем, было бы желание.

Работа

Откровенно говоря, получить работу конкретно SAS-специалисту в России будет очень сложно. Как правило, SAS идёт как жирный плюс. но не как основная специализация. Тем не менее, если вам удастся набраться практического опыта работы с SAS хотя бы в течение 2 лет, хотя бы базово освоить SQL, VB и прочие полезности, то вы сможете смело рассчитывать на зарплату не менее 80 тысяч рублей в месяц. Причём речь не только о столице, стоимость программного продукта SAS как бы подсказывает работодателю не экономить в поисках дешёвой рабочей силы. Но, как уже было сказано, нужную вакансию ещё придётся поискать.

Литература

Нет смысла перечислять лучшие иностранные книги по SAS, так как все они собраны в одном месте, прямо на официальном сайте компании. Особое внимание стоит уделить пошаговому самоучителю, описанию возможностей языка и IDE, а также справочнику новичка.

Что касается ресурсов на русском языке, то тут, разумеется, всё значительно сложнее, но кое-что всё же есть. Помимо официального сайта, лекции Дмитрия Звежинского помогут тем, кто пока не познал английский язык на хорошем уровне, на официальные курсы записывать не хочет, но SAS изучить отчаянно желает.

На этом краткое знакомство считаем оконченным. А вы сталкивались когда-нибудь с языком SAS? Какие впечатления?

Освоить востребованную профессию в Data Science можно всего за полтора года на курсах GeekBrains. После учёбы вы сможете работать по специальностям Data Scientist, Data Analyst, Machine Learning, Engineer Computer Vision-специалист или NLP-специалист.

Как выбирают

Решения SAS выбирают крупные предприятия для серьезной работы, поэтому выбор решения занимает много времени и включает оценку широкого круга возможностей и параметров работы предлагаемых решений. При этом ключевым фактором для них является рост эффективности, который, как и точность принимаемых решений, в значительной степени зависит от точности используемой модели. Иногда заказчик даже устраивает своего рода соревнование – предлагает нескольким вендорам построить нужную ему аналитическую модель и смотрит, кто лучше справится с заданием.


Однако сама точность модели – фактор не постоянный. Она зависит от многих факторов, как относящихся к модели, так и внешних. Например, точность модели полностью зависит от корректности и адекватности предоставляемых в рамках тестирования данных. Иногда они есть, иногда нужные данные находятся в рассеянном виде и их нужно искать, собирать и приводить к единому формату, либо вообще приходится самостоятельно налаживать их сбор.

Также на первом этапе не всегда понятно, что к чему, какие есть особенности и главное, что именно нужно клиенту. Поэтому на первых этапах работы преимущество в точности часто получают усредненные модели, которые уже «из коробки» дают относительно высокую точность работы. Однако такая модель со временем скорее всего будет терять актуальность за счет того, что меняются условия работы предприятия и самого рынка. Это необходимо учитывать и либо вручную, либо автоматически адаптировать модель к меняющимся условиям.

При правильной организации работы (когда модель подстраивается под особенности работы клиента и рынка) точность модели в первое время будет расти по мере «тонкой настройки», накопления данных и пр. В одном из внедрений наша модель изначально показала результат хуже, чем у конкурентов, однако в кратчайшие сроки, набрав нужную информацию и адаптировав ее работу, мы вырвались вперед.

Мы уверены в своих решениях, и та статистика, что у нас есть, показывает, что клиенты нам тоже доверяют. Отток клиентов у нас не превышает 1%, очень часто менеджеры и клиенты, переходя в новую компанию, стремятся и ее перевести на использование наших решений. В России мы растем на 40% в год, что дает нам основания считать, что наши решения востребованы.

Что делать?

Чтобы успешно решать эти и другие проблемы, мы разработали SAS Customer Intelligence 360. Это решение распространяется по модели SaaS и пока включает два модуля — для сбора данных о поведении пользователей (Discover) и для управления клиентскими путешествиями и персонификацией (Engage).

У нескольких заказчиков проходят закрытое тестирование еще два модуля — управления email-рассылками и маркетинговыми инициативами (MRM). Мы планируем регулярно обновлять существующие модули и добавлять новые. Все обновления происходят автоматически, без участия пользователей.



На данный момент SAS Customer Intelligence 360 состоит из двух модулей

В отличие от традиционных продуктов SAS, решение базируется в облаке. Это типичный подход для реализации SaaS-решений, который не требует от пользователя покупки дополнительного «железа», и мы не стали идти против трендов индустрии.

Облачная реализация имеет и дополнительные преимущества: гибкое управление потребляемыми услугами, автоматическое обновление и быстрый старт при начале работы (у меня уходит меньше 10 минут, чтобы подключить новый сайт).

На стороне браузера клиента происходит хеширование по алгоритму SHA-384. Если данные вдруг попадут в чужие руки, процесс восстановления значений из хеша окажется крайне сложным и нерентабельным (в отличие от шифрования данных, когда достаточно знать правильную парольную фразу для расшифровки). Когда захешированные данные попадают в облако, они подвергаются повторному хешированию с иными параметрами. Требования к хешированию предъявляются и при пакетной (например, из CRM) загрузке персональных данных в облако – SAS не допускает их хранение в открытом виде.

Теперь подробнее остановимся на составляющих решения. Начнем с модуля Discover.

Все собирают данные о работе сайта, но не все обладают способностью формировать единый омниканальный профиль клиента и автоматически загружать собираемую информацию в нормализованную витрину данных, не прибегая к необходимости писать код или совершать какие-то сложные интеграции. А SAS 360 Discover это делать умеет. Сбор большей части действий клиента происходит автоматически сразу же после добавления тега на сайт. Для отслеживания более сложных событий или процессов используется мастер настройки, который позволяет гибко сконфигурировать систему. И, да, для этого не требуется писать код.



Настройки сбора правил задаются через интерфейс администратора – не нужно что-либо дополнительно дорабатывать на сайте

«Окей, — скажет кто-то, — у любого решения есть ограничения, не все события на сайте можно собрать. Что делать в таком случае?». Без паники, это также предусмотрели. Есть возможность передавать события напрямую в SAS 360 Discover простым вызовом RESTful сервиса по API. В самом простом виде тело запроса будет похоже на эти два примера:


Для сбора данных из мобильного имеется особый SDK, который несложно прикрутить к приложению под Android или iOS. Собираемые с разных устройств данные накапливаются в единой витрине и всегда доступны.

Теперь поговорим про вовлечение — модуль «Engage».

Имея под рукой столь ценные разведданные, было бы преступлением ими не пользоваться. Все, что известно о посетителе сайта, может быть использовано против него для более точного таргетинга.

И дело не ограничивается тривиальными механиками вроде «догони пользователя баннером любой ценой» (кстати, мы в SAS выступаем резко против подобного спама). Решение позволяет элегантно «отруливать» такие важные вопросы как контактная политика, тестирование, сегментация базы и анализ эффективности онлайн-кампаний. Можно загрузить список клиентов из CRM, выбрать контент для коммуникации, настроить правила и показатели эффективности проведения кампании и следить за ее успешностью — в рамках одного пользовательского интерфейса.

Встроенные аналитические помощники позволяют проводить различные А/B тестирования, оптимизировать коммуникации, профилировать клиентскую базу и подбирать товары или услуги для клиента.

Для примера разберем вариант реализации простой коммуникации в 360 Engage. Пока опустим создание баннера, настройку места вывода баннера, выбора аудитории и создание событий (об этом мы планируем рассказывать в новых публикациях) и ограничимся этапом постановки задачи.

Задачи бывают разных типов и для разных каналов. На сегодняшний день доступны web, mobile и email. Для примера выберем web – это самый простой из них. Откроется интерфейс настройки задачи Web. Указываем, в какой спот какой контент (креативы, баннеры) выводить.



Типы задач

Дополнительно указываем ограничения контактной политики. Можно задать максимальное количество показов баннера для конкретного пользователя за все время действия кампании или за определенный период (сессия или какой-то промежуток времени). Еще один параметр — срок актуальности задачи (например, время проведения кампании). Когда наступит «час Х», кампания автоматически завершится.



Контактная политика


Чтобы убедиться, что креативы (баннеры) будут корректно отображаться на сайте, можно воспользоваться превью.

Пример предпросмотра на сайте

Для реализации более сложных сценариев взаимодействия с клиентами можно настроить карту активностей – диаграмму, где отображается путь клиента в цифровых каналах. Каждый следующий шаг на карте активностей выбирается в зависимости от поведения пользователя на предыдущем шаге. Приятная особенность – можно проводить A/B тестирования целых процессов (нескольких объединенных шагов). Карты активностей — еще один предмет будущих публикаций.



Карты активностей позволяют строить многошаговые сценарии взаимодействия с клиентами

Что мы делаем

Наша аналитическая платформа имеет очень широкую функциональность. В круг ее возможностей входят разведочный анализ, подготовка данных, классическое прогнозное моделирование и машинное обучение, прогнозирование на основе временных рядов, оптимизация, и много чего еще.

Все блоки и решения мы разрабатываем сами. Поэтому мы понимаем, что и как работает и как взаимодействует между собой – у нас нет сложностей с согласованием работы различных компонентов и решений между собой. При этом блоки работают на единой платформе управления метаданными и имеют в основе общий язык программирования SAS Base.

Один из наших приоритетов – интегрировать наши решения в рабочие процессы и схемы принятия решений в компании. Дело в том, что если аналитика и данные существуют отдельно, «в вакууме», эффективность их использования существенно падает. Кроме того, без нормальной бесшовной интеграции очень велик риск операционных ошибок. А такие ошибки очень сильно бьют по доверию к аналитике и моделям.


Для встраивания аналитики в бизнес-процессы в SAS предусмотрен целый стек технологий. Интеграция на уровне данных (SAS Data Integration), интеграция на уровне потоков событий (SAS Event Stream Processing), интеграция на уровне запросов решений (SAS Decision Manager), интеграция на уровне управления жизненным циклом моделей (SAS Model Manager), интеграция на уровне разнородных аналитических инструментов типа R, Python, Scala (SAS Viya). В крупной организации, будь то банк, ретейлер, телеком или что-то другое, основная сложность — это огромное количество разнородных источников данных на разных платформах и СУБД, и большое число процессов, где требуется применение аналитики (потребителей аналитики), реализованных в разных системах.

Из новых приоритетов стоит упомянуть скорость. Сегодня многим нашим клиентам уже недостаточно получать данные и аналитику с задержкой. Время на принятие решения все сокращается, и во многих случаях данные требуются уже в реальном времени.

Естественно, что сегодня SAS работает не только по традиционной модели предоставления софта, но и предоставляет облачные сервисы. В самых разных форматах: SaaS (ПО как сервис), BaaS (бизнес как сервис – аутсорсинг аналитических процессов), RaaS (результат как сервис – реализация какого-либо законченного продукта для клиента под ключ, от разработки прогнозной модели, до формирования статистически обоснованной стратегии развития сети торговых точек, например).

Облачные сервисы востребованы больше не в банках, где все хорошо с данными, с деньгами, с аналитиками, а в других отраслях – страховании, ритейле, агросекторе, например. Клиенты в этих отраслях готовы привлекать внешних экспертов не только на этапе настройки, но и на постоянную работу. Еще один плюс облачных сервисов — отсутствие необходимости больших инвестиций в начале работы, что дает более быстрый выход на окупаемость и снижает риски убытков.

Зачем мы здесь

Одна из целей нашего присутствия на Хабре – познакомиться с молодежью, развеять мифы о нас, в том числе главный – о недоступности SAS из-за высокой стоимости и прочих ограничений. Нет, у нас не все платное – вы всегда можете найти варианты бесплатного использования, в том числе для исследований и изучения; нет, у нас не все недоступное – в открытом доступе есть масса ресурсов; нет, у нас не все на английском языке – и мы обязательно будем работать над увеличением русскоязычного материала.

Читайте также: