Читаем Разберись в Data Science полностью

Принятие корреляции за причинно-следственную связь. Не поддавайтесь искушению построить причинно-следственный нарратив вокруг коррелированных переменных. Рост уровня продаж компании может коррелировать с увеличением количества просмотров ее рекламы на YouTube, но это не значит, что одно вызвало другое. Как правило, следует избегать разговоров о причинно-следственных связях, если только вы не разработали процесс сбора и анализа данных специально для их поиска (то есть если вы не используете экспериментальные данные). Эти идеи обсуждались в главах 4 и 5.


p

-хакинг. Представьте, что в некой статье говорится: «Люди, которые пьют слишком много кофе, имеют повышенный риск развития рака желудка. Результат статистически значим на уровне значимости 0,05»[147]. Как говорилось в главе 7, при уровне значимости 0,05 результаты бывают ложноположительными в 1 случае из 20. p-хакинг – это процесс тестирования нескольких закономерностей в данных вплоть до обнаружения статистически значимого p
-значения. Связь между употреблением кофе и раком желудка была бы менее пугающей, если бы впоследствии вы узнали, что исследователи также изучили взаимосвязь между употреблением кофе и раком мозга, раком мочевого пузыря, раком молочной железы, раком легких или любым другим из 100 видов рака. По чистому совпадению в пяти случаях было бы обнаружено статистически значимое p-значение, даже если бы никакой связи не существовало. Учтите, что p-хакинг – это разновидность ошибки выжившего, поскольку при этом сообщаются только значимые p-значения.


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


Утечка данных.

Не обучайте модель на данных, недоступных во время прогнозирования. Вам может показаться, что у вашей команды превосходная модель, но она на самом деле может быть совершенно бесполезной. Предсказать, купит ли посетитель вашего сайта продукт, довольно легко, если вы знаете, что при покупке он применил код купона. Главные по данным должны убедиться в наличии каждого признака в модели в момент принятия решения (см. главы 9 и 10).


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


Нерепрезентативные обучающие данные. Эта ловушка предполагает использование «нерепрезентативной выборки» для создания модели машинного обучения. Модели знают только те данные, на которых они были обучены. Модель, обученная на данных о недвижимости в Огайо для предсказания цены продажи домов в Огайо, не способна предсказать цену аренды квартиры в Нью-Йорке. Точно так же интеллектуальный динамик с голосовым помощником, обученный на образцах звука, записанных в студии звукозаписи, может испытывать сложности с разбором команд в шумном доме. Чтобы избежать этой ловушки, главные по данным должны тщательно продумать обстоятельства использования их модели и собрать отражающие их обучающие данные.

Перейти на страницу:

Все книги серии Мировой компьютерный бестселлер

Похожие книги

1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных
C++ Primer Plus
C++ Primer Plus

C++ Primer Plus is a carefully crafted, complete tutorial on one of the most significant and widely used programming languages today. An accessible and easy-to-use self-study guide, this book is appropriate for both serious students of programming as well as developers already proficient in other languages.The sixth edition of C++ Primer Plus has been updated and expanded to cover the latest developments in C++, including a detailed look at the new C++11 standard.Author and educator Stephen Prata has created an introduction to C++ that is instructive, clear, and insightful. Fundamental programming concepts are explained along with details of the C++ language. Many short, practical examples illustrate just one or two concepts at a time, encouraging readers to master new topics by immediately putting them to use.Review questions and programming exercises at the end of each chapter help readers zero in on the most critical information and digest the most difficult concepts.In C++ Primer Plus, you'll find depth, breadth, and a variety of teaching techniques and tools to enhance your learning:• A new detailed chapter on the changes and additional capabilities introduced in the C++11 standard• Complete, integrated discussion of both basic C language and additional C++ features• Clear guidance about when and why to use a feature• Hands-on learning with concise and simple examples that develop your understanding a concept or two at a time• Hundreds of practical sample programs• Review questions and programming exercises at the end of each chapter to test your understanding• Coverage of generic C++ gives you the greatest possible flexibility• Teaches the ISO standard, including discussions of templates, the Standard Template Library, the string class, exceptions, RTTI, and namespaces

Стивен Прата

Программирование, программы, базы данных
Programming with POSIX® Threads
Programming with POSIX® Threads

With this practical book, you will attain a solid understanding of threads and will discover how to put this powerful mode of programming to work in real-world applications. The primary advantage of threaded programming is that it enables your applications to accomplish more than one task at the same time by using the number-crunching power of multiprocessor parallelism and by automatically exploiting I/O concurrency in your code, even on a single processor machine. The result: applications that are faster, more responsive to users, and often easier to maintain. Threaded programming is particularly well suited to network programming where it helps alleviate the bottleneck of slow network I/O. This book offers an in-depth description of the IEEE operating system interface standard, POSIX (Portable Operating System Interface) threads, commonly called Pthreads. Written for experienced C programmers, but assuming no previous knowledge of threads, the book explains basic concepts such as asynchronous programming, the lifecycle of a thread, and synchronization. You then move to more advanced topics such as attributes objects, thread-specific data, and realtime scheduling. An entire chapter is devoted to "real code," with a look at barriers, read/write locks, the work queue manager, and how to utilize existing libraries. In addition, the book tackles one of the thorniest problems faced by thread programmers-debugging-with valuable suggestions on how to avoid code errors and performance problems from the outset. Numerous annotated examples are used to illustrate real-world concepts. A Pthreads mini-reference and a look at future standardization are also included.

David Butenhof

Программирование, программы, базы данных