суббота, 27 августа 2011 г.

Книга "Data-Intensive Text Processing with MapReduce"

Совершенно случайно наткнулся на сайт Джими Лин, соавтора книги Data-Intensive Text Processing with MapReduce. MapReduce является моделью программирования для распределенной обработки больших массивов данных на кластерах, основанных на обычных компьютерах. Модель представляет легкие для понимания абстракции для разработки масштабируемых алгоритмов, в то время как фреймворк обрабатывает детали на системном уровне от синхронизации до отказоустойчивости. В книге рассматриваются MapReduce алгоритмы на примере обработки текстовых данных, извлечения информации, машинного обучения.

Книга в электронном виде доступна на сайте автора или ее можно заказать в бумажном переплете на сайте Amazon.com Data-Intensive Text Processing with MapReduce (Synthesis Lectures on Human Language Technologies)

воскресенье, 21 августа 2011 г.

Преобразование xml в словарь

Несколько дней назад мне потребовалось обработать несколько тысяч небольших (от нескольких килобайт до 3 Мб) xml файлов, содержащих различные статистические данные. В чистом виде работать с xml файлами не очень удобно. Гораздо проще, когда сложные структуры такие как данные в xml файлах представлены в виде словаря. Процесс xml2dict предназначен как раз для таких задач.

понедельник, 15 августа 2011 г.

Новое ядро (core3) для pyflowctrl

Время показало, что версия ядра core2.py имеет недостатки, ограничивающие выполнение ряда операций над данными. Разберем текущую схему реализации:
Если у процесса есть входной поток, процесс ожидает поступление из него данных. Отсутствие данных на входе приводит к формированию исключения EmptyStream, и следом за ним исключения StopIteration. Согласно специфики реализации ProcessFlow на базе core2, это событие приведет к останову процесса и некорректной работе для случаев, когда предыдущие в цепочке процессы могут не возвращать данные.

пятница, 5 августа 2011 г.

Introduction to Artificial Intelligence

A free, online version of "Introduction to Artificial Intelligence", taught by Sebastian Thrun and Peter Norvig. A syllabus and more information about the Stanford course is available here.

The class runs from Sept 26 through Dec 16, 2011. While this class is being offered online, it is also taught at Stanford University, where it continues to be a popular intro-level class on AI. For the online version, the instructors aim to offer identical materials, assignments, and exams, and to use the same grading criteria. Both instructors will be available for online discussions.

Обработка текста, часть третья

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

среда, 3 августа 2011 г.

Обработка текста, часть вторая

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