• RuSSIR 2018: 12-я летняя школа по информационному поиску

      27–31 августа в Казани пройдет 12-я международная летняя школа по информационному поиску RuSSIR 2018.

      В этом году её организуют Казанский федеральный университет (КФУ) и Российский семинар по оценке методов информационного поиска (РОМИП) при поддержке ACM SIGIR и BCS IRSG.



      Программа включает два пленарных доклада и семь курсов, а также постер-сессию конференции молодых ученых «RuSSIR Young Scientist Conference».

      Пленарные доклады:

      1. Carlos Castillo (Universitat Pompeu Fabra), «Crisis Informatics» — о том, как использовать данные из социальных сетей для борьбы с чрезвычайными ситуациями;
      2. Carlos Castillo, «The Biases of Social Data» — о подводных камнях при анализе пользовательского контента.

      Курсы:

      1. Cathal Gurrin (Dublin City University), «The Information Retrieval Challenge of Lifelogs and Personal Life Archives» — об анализе персональных данных;
      2. Henning Müller (University of Geneva), «Evaluation of IR systems and multi-modal retrieval in the medical domain» — о поиске медицинских изображений;
      3. Valentin Malykh, Mikhail Burtsev (Moscow Institute of Physics and Technology), «Conversational AI through Deep Learning» — о том, как создать интеллектуального чат-бота с помощью глубокого обучения;
      4. Rishabh Mehrotra (Spotify Research), «Learning from User Interactions» — о том, как угадать потребность пользователя из его взаимодействия с онлайн-системой;
      5. Guido Zuccon (Queensland University of Technology), «Health Search» — о поиске по медицинским данным;
      6. Harrie Oosterhuis (University of Amsterdam), «Learning to Rank and Evaluation in the Online Setting» — о том, как обучить систему на основе данных о взаимодействии с пользователем;
      7. Prasenjit Mitra (Pennsylvania State University), «Retrieving Information Interactively Using Natural Language» — о том, как научить систему общаться на естественном языке.

      Участие в школе бесплатное. Регистрация открыта до 10 июля.
      Как попасть?
    • Технологии Semantic Web

      • Tutorial
      Semantic Web (он же Web of Data, Linked Data, Linking Open Data) — это направление развития Всемирной паутины, позволяющее машинам не только отображать информацию в интернете, но и понимать ее смысл.



      Несколько лет назад Semantic Web вырвался за пределы исследовательских лабораторий и стал достоянием широкого круга разработчиков. К сожалению, в русскоязычном сообществе SW распространен пока слабо. Мало русскоязычных наборов данных. Мало приложений, которые с ними работают.

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

      Мы с коллегами из ИТИС КФУ при поддержке Computer Science клуба и сообщества SWUG решили сделать такой курс, который я хочу представить хабралюдям. Он состоит из шести частей:

      1. Введение в семантику и Semantic Web;
      2. Формат представления данных RDF;
      3. Формальные онтологии;
      4. Язык описания онтологий OWL;
      5. Язык запросов SPARQL;
      6. Semantic Web в дикой природе: популярные ресурсы, онтологии и сервисы.

      Я решил оформить курс не в виде сплошного текста, а виде слайдов с примерами и картинками. Надеюсь, его будет интереснее читать, чем традиционные учебники. (См. ответ на замечание ivanych относительно выбора формата).

      Смотрите первые две части под катом.
      Смотреть первые две части
    • RuSSIR 2014: VIII летняя школа по информационному поиску

        18–22 августа 2014 года в Нижнем Новгороде пройдет VIII Российская летняя школа по информационному поиску «RuSSIR 2014». До этого школа проходила в Екатеринбурге, Таганроге, Петрозаводске, Воронеже, Санкт-Петербурге, Ярославле и  Казани.

        В этом году её организуют Национальный исследовательский университет «Высшая школа экономики» и Российский семинар по Оценке Методов Информационного Поиска «РОМИП» при участии Яндекса, Mail.ru, Google, ABBYY и Лекториума.

        Главной темой школы будет визуализация данных в задачах информационного поиска. Рабочий язык — английский.



        Программа школы включает шесть основных курсов, пленарный курс и доклады спонсоров, а также конференцию молодых ученых «RuSSIR Young Scientist Conference».

        Основные курсы:
        • Katja Hofmann (Microsoft Research) — Online Experimentation for Information Retrieval;
        • Alfred Inselberg (Tel Aviv University) — Visualization & Data Mining for High Dimensional Data;
        • Dmitry I. Ignatov (Higher School of Economics) — Introduction to Formal Concept Analysis and Its Applications in Information Retrieval and Related Fields;
        • Preslav Nakov (Qatar Computing Research Institute) — Web as a Corpus: Going Beyond the n-gram;
        • Sujatha Das G., Cornelia Caragea, Xiaoli Li, C. Lee Giles — Document Analysis and Retrieval in Scientific Digital Libraries;
        • Paolo Rosso (Universitat Politecnica de Valencia) — Author Profiling and Plagiarism Detection.

        К участию в школе приглашаются студенты, аспиранты, исследователи и разработчики. Всего планируется принять до 120 слушателей. Участие бесплатное; для тех, кто в этом нуждается, организаторы предоставляют гранты на проживание (количество ограничено).
        Как попасть?
      • Font boosting в мобильных браузерах

          Я хочу рассказать о том, что такое font boosting в мобильных браузерах, к какой неожиданной проблеме он может привести при web-разработке и как с этой проблемой бороться.

          Рассмотрим пример из реальной жизни:
          Пример 1:

          1. Имеется вновь созданный элемент с display: inline-block.
          2. Измерим его ширину через свойство offsetWidth.
          3. Поменяем его цвет.
          4. И, вдруг, в Google Chrome for Mobile, после изменения цвета ширина элемента резко увеличивается, переставая соответствовать той, что была измерена всего двумя строчками выше!

          Показать код
          <!DOCTYPE html>
          <html>
            <head>
              <meta http-equiv = "content-type" content = "text/html; charset=utf-8" />
              <title>Проблема с Font boosting в Google Chrome for Mobile</title>
              <script type = "text/javascript">
                window.onload = function ()
                  {
                  var spnSpan1 = document.getElementById ("span-1");
                  
                  alert ("Ширина элемента до изменения цвета: "+ spnSpan1.offsetWidth +"px"); //59px
                  spnSpan1.style.color = "red";
                  alert ("Ширина элемента после изменения цвета: "+ spnSpan1.offsetWidth +"px"); //186px (WTF?!)
                  }
              </script>
            </head>
            <body>
              <p>
                <span id = "span-1" style = "display: inline-block;">Элемент</span> 
              </p>
          
              <!--
              На странице должно быть достаточно текста.
              Если убрать этот абзац, глюк перестанет возникать.
              -->
              <p>
                abc abc abc abc abc abc abc abc abc abc abc abc abc abc abc abc abc
                abc abc abc abc abc abc abc abc abc abc abc abc abc abc abc
                abc abc abc abc abc abc abc abc abc abc abc abc abc abc abc
                abc abc abc abc abc abc abc abc abc abc abc abc abc abc abc
              </p>
            </body>
          </html>
          


          Смотреть пример on-line.

          (Для просмотра примеров из этой статьи воспользуйтесь Google Chrome for Mobile или обычным Google Chrome в режиме эмуляции смартфона, например Apple iPhone 5 или Samsung Galaxy Note II).

          Почему же изменение цвета элемента приводит к увеличению его размера?! Причиной этого странного поведения, как раз, и является font boosting.
          Что же это такое?
          • +24
          • 24,3k
          • 5
        • Нужно ли с наступлением Нового года обновлять дату в подвале сайта?

            Через несколько часов наступит Новый год, и многие хабралюди будут стараться как можно скорее обновить у себя на сайте дату в разделе «копирайта». Но правильно ли обновлять ее сразу с наступлением Нового года?

            Раздел «копирайта», который обычно расположен в подвале сайта, официально называется «знаком охраны авторского права». Правилам его использования посвящена статья 1271 ГК РФ, а также целый ГОСТ Р 7.0.1-2003. Согласно этому стандарту знак «состоит из латинской буквы „C“ в окружности, наименования объекта защиты права, имени правообладателя и цифрового обозначения года первого опубликования произведения».

            Таким образом:
            Дата в разделе «копирайта» обозначает НЕ время существования сайта, а время публикации размещенных на нем материалов.
            Когда все материалы сайта опубликованы в один год, знак имеет стандартный вид (такой же как, например, в бумажных книгах):
            Василий Пупкин, 2013
            Когда же разные материалы опубликованы в разные годы, можно либо использовать на каждой странице сайта свою дату, либо использовать диапазон дат:
            Василий Пупкин, 2008–2013
            Но, в любом случае, это именно даты публикации материалов. Поэтому, если после наступления Нового года на сайте еще не появилось новых материалов, обновлять дату — неправильно.

            Если же обновить ее ну очень хочется, можно поздравить читателей c Новым годом — на сайте появится новый материал, ...и полное основание, наконец, поставить заветную циферку.
            Посмотреть список литературы
          • RuSSIR 2013: VII летняя школа по информационному поиску

              16–20 сентября 2013 года в Казани пройдет VII Российская летняя школа по информационному поиску (RuSSIR 2013).

              Её организуют Казанский Федеральный Университет (КФУ) и Российский семинар по Оценке Методов Информационного Поиска (РОМИП) при участии Яндекса, Mail.ru, Google и ABBYY.

              Главной темой школы в этом году будет поиск и обработка аудиоинформации. Рабочий язык — английский.



              Основная программа состоит из 7 курсов:

              Voice and Music Information Retrieval:
              • Spoken Content Retrieval: Challenges, Techniques and Applications — Gareth Jones (Dublin City University)
              • Content- and Context-based Music Similarity and Retrieval — Markus Schedl & Peter Knees (University of Linz)
              • Query by Singing/Humming and Audio Fingerprinting as Two Successful Paradigms of Music Information Retrieval — Jyh-Shing Roger Jang (Taiwan University)
              • Adaptivity in Audio and Music Retrieval — Andreas Nürnberger & Sebastian Stober (OVG University Magdeburg)

              General Information retrieval:

              Участие в школе бесплатное, но количество мест ограничено.
              Как попасть?
              • +33
              • 6,7k
              • 6
            • 10 приемов, разрушающих хрупкую красоту кода

                Статья приводится в сокращении из-за ограничения на объем материала.

                Для меня программирование — это не только технология, но и, во многом — искусство. И, поэтому, большое значение имеет красота кода.

                Последние несколько лет я собирал приемы программирования, разрушающие в программном коде его утонченную красоту:
                1. Объявление всех переменных в начале программы;
                2. Возврат результата функции через ее параметр;
                3. Отсутствие локальных функций;
                4. Отсутствие else if;
                5. Использование параллельных массивов;
                6. Хранение размера массива в отдельной переменной;
                7. Доступ к свойствам объекта через obj.getProperty() и obj.setProperty(value);
                8. Использование рекурсии для вычисления факториалов и Чисел Фибоначчи;
                9. Отсутствие именованных параметров функции;
                10. Невозможность объявления объектов «на лету».
                Наверняка, в некоторых местах вы будете со мной несогласны — ведь чувство красоты у всех разное.


                Объявление всех переменных в начале программы


                В двух словах:

                Переменные должны объявляться в начале логического блока, в котором они используются, а НЕ в начале функции или программы.


                Читать дальше →
              • «Совершенный Ajax» – новый подход к построению настоящих клиент-серверных web-приложений

                  «Совершенный Ajax» — новый подход к построению web-приложений, при котором web-сервер не генерирует ни строчки HTML-кода и взаимодействует с внешним миром только посредством web-служб; а клиентский интерфейс реализуется только на основе клиентских HTML, CSS, JavaScript.

                  Статья состоит из двух частей. В первой части — более живой и провокационной я постараюсь заинтересовать проблемой, рассказать о технологии «Совершенный Ajax» и показать ее применение на примере нашего проекта «Система Интерактивного Тестирования Знаний “Синтез”» (который имеет ряд интересных особенностей, таких, как использование серверного JavaScript на платформе Mozilla Rhino, прототипно-ориентированная ORM и поддержка SPARQL — языка запросов к Semantic Web).

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

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



                  Попробуйте угадать: к какой архитектуре относятся web-приложения?

                  К клиент-серверной говорите? Я ожидал, что Вы так ответите :-)

                  Что ж, давайте разберемся. В клиент-серверной архитектуре выделяют:
                  • Сервер — отвечает за хранение данных и реализацию бизнес-логики приложения.

                  • Клиент — отвечает за взаимодействие с пользователем [1].

                  Реализация бизнес-логики на сервере и взаимодействие с пользователем на клиенте четко разделены.

                  Преимущества клиент-серверной архитектуры очевидны; мы их все знаем:
                  1. Бизнес-логика не смешивается с пользовательским интерфейсом.
                  2. Можно реализовать несколько клиентов с разными пользовательскими интерфейсами: интерфейс командной строки, оконный Windows-интерфейс, Flash, web-интерфейс, мобильный интерфейс и т.д.
                  3. Клиентский компьютер не требователен к ресурсам;
                  4. И т.д.


                  Но, относятся ли web-приложения к клиент-серверной архитектуре? Web-сервер

                  Действительно, в web-приложениях есть сервер, отвечающий за бизнес логику приложения.

                  Но! За реализацию интерфейса отвечает не клиент, а тоже сервер. На сервере происходит обработка клиентской формы. Сервер генерирует HTML-код пользовательского интерфейса.

                  Браузер Клиент, т.е. браузер лишь визуализирует уже готовый HTML-код интерфейса. Это, фактически, то же самое, что прицепить к серверу монитор и объявить этот монитор клиентом…

                  Читать дальше →
                • Закат Веба?

                    7 марта прошлого года W3C, после 10-летнего перерыва, возобновила работу над HTML.

                    Тогда я написал несколько внутрикорпоративных заметок о том, что я думаю по этому поводу и о перспективах развития web-приложений.

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

                    Я решил выложить их в виде статьи, переработав и снабдив иллюстрациями и примечаниями.


                    Содержание:

                    1. Вступление
                    2. Сценарии гибели
                      • Гибель ментальная, или HTML — новый ассемблер
                      • Гибель физическая, или HTML — новый Turbo Pascal
                    3. Все ли так серьезно?
                      • Ментальной гибели не будет, если web-технологии будут правильно поняты
                      • Физической гибели не будет, если web-технологии будут развиваться
                    4. Заключение
                    5. Примечания


                    В настоящий момент мир вступает в эпоху расцвета богатых web-приложений.

                    Программы, работающие через Веб, все больше вытесняют традиционные десктопные приложения. Gmail, Google Map, online-офис, даже web-операционные системы… Список можете продолжить сами.

                    Однако, по мере продвижения web-приложений, все больше возрастают требования к основным клиентским web-технологиям: xHTML, CSS, JavaScript.

                    И, если эти технологии не будут поспевать за все более возрастающими требованиями, это приведет к их медленному закату…
                     
                    Читать дальше →
                  • RE: О браузерах и маргиналах

                      В блоге «Безумные книги» я опубликовал заметку «Альтернативные браузеры — удел маргиналов?!», в которой показал, как важна для прогресса в IT базовая подготовка обычных пользователей и раскритиковал книгу «Самоучитель. Осваиваем Интернет».

                      Автор книги — Виталий tantrist Леонтьев ответил в этом комментарии и своем ЖЖ.

                      В этой заметке я постарался не просто ответить В. Леонтьеву, но и показать, почему IE 6 — сознательная диверсия Микрософт против IT-индустрии, а также еще раз показать критическую важность книг «для простых пользователей» для IT-прогресса.

                      Показать, что мы, в погоне за технологиями, не всегда понимаем: главное условие прогресса: укрепление слабого звена (в котором и рвется цепь развития IT) — базовой подготовки пользователей! Книга В. Леонтьева — просто яркий пример и лишь повод об этом напомнить.


                      Микрософт не так плоха


                      Сразу скажу: я очень уважительно отношусь к компании Микрософт и ее продуктам. Времена Windows Me давно прошли, и теперь Windows Server 2003 действительно является одной из надежных серверных ОС; MS SQL Server — одним из мощнейших коммерческих СУБД, а C# — одним из лучших нединамических языков программирования.

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

                      … но Internet Explorer 6 пользоваться нельзя


                      НО! Это не относится к Internet Explorer 6 — худшему детищу Корпорации. И его действительно можно использовать только с одной целью — для скачивания одного из нормальных браузеров.
                      Читать дальше →
                    • Альтернативные браузеры — удел маргиналов?

                        Хабралюди часто задаются вопросом: почему столько людей использует этот глючный, дырявый, не поддерживающий стандарты браузер — Microsoft Internet Explorer 6?

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

                        Но в книгах для «простого народа» пишут совсем по-другому.

                        Например, в книге «Самоучитель. Осваиваем Интернет», помимо всего прочего, пользователи альтернативных браузеров объявляются маргиналами… Заметим, книга вышла в 2005 году: Firefox, а тем более, Opera уже существовали.

                        Читать дальше →
                      • Может ли страдать тетрадка в клеточку,
                        или моральные проблемы создания искусственного интеллекта

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

                          Как будет осознавать себя искусственный разум? Не будет ли у человеческого разума, перенесенного на электронный носитель, болеть «ампутированное тело»? Гуманно ли ставить негуманные опыты над искусственным интеллектом или электронными копиями реальных людей?

                          Так вот, я считаю, что страдания искусственного разума — полная чушь.
                          Читать дальше →