Как решить старую задачу с помощью ML на Python и .Net

Автор: admin от Вчера, 15:30, посмотрело: 7

Как решить старую задачу с помощью ML на Python и .Net

Бывает, что некоторые задачи преследуют тебя много лет. Для меня такой задачей стала склейка предложений текстов, в которых жестко забит переход на новую строку, а часто еще и перенос слов. На практике, это извлеченный из PDF или с помощью OCR текст. Часто можно было встретить такие тексты на сайтах он-лайн библиотек, в архивах старых документов, которые редактировались еще DOS-редакторами. И такое форматирование очень мешает затем правильной разбивке на предложения (а с переносами — и на токены) для последующей NLP-обработки. Да и банально показать такой документ в поисковой выдаче — будет некрасиво.



Решал я эту задачу несколько раз — на Delphi, C#. Тогда это был жесткий алгоритм, где руками прописывал, например, какая может быть ширина текста, чтобы этот текст считался отформатированным "по-старому". Не всегда это срабатывало идеально, но в общем, хватало.

Категория: Программирование

 

Субъективное видение идеального языка программирования

Автор: admin от 7-01-2019, 17:25, посмотрело: 112

Дальнейший текст — моя точка зрения. Возможно, она позволит кому-то по-новому взглянуть на дизайн языков программирования или увидеть какие-то преимущества и недостатки конкретных фич. Я не буду лезть в частные подробности типа "в языке должна быть конструкция while", а просто опишу общие подходы. P.S. У меня когда-то была идея создать свой язык программирования, но это оказалось довольно сложным процессом, который я пока не осилил.



Влияние предыдущего опыта



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



Рамки мышления немного раздвигаются после освоения нескольких языков. Тогда в языке А вам может захотеться иметь фичу из Б и наоборот, а ещё появится осознание сильных и слабых стороны каждого языка.



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



Мой опыт: когда-то я начинал с паскаля, впоследствии познакомился с Java, Kotlin, C++, Python, Scheme, а основными языком считаю Scala. Как и в вышеописанном случае, мой "идеальный" язык имеет много общего со Scala. По крайней мере, я отдаю себе отчёт в этом сходстве)

Категория: Программирование

 

Подборка @pythonetc, ноябрь 2018

Автор: admin от 12-12-2018, 10:55, посмотрело: 75

Подборка @pythonetc, ноябрь 2018


Это шестая подборка советов про Python и программирование из моего авторского канала @pythonetc.



Предыдущие подборки:




  • Октябрь 2018

  • Сентябрь 2018

  • Август 2018

  • Июль 2018

  • Июнь 2018

Категория: iOS

 

Подборка @pythonetc, август 2018

Автор: admin от 10-09-2018, 12:05, посмотрело: 110

Подборка @pythonetc, август 2018




Это третья подборка советов про Python и программирование из моего авторского канала @pythonetc.



Предыдущие подборки:




  • Июль 2018


  • Июнь 2018


Категория: Linux

 

Убираем радиальное искажение с фото и видео при помощи библиотеки openCV и языка python

Автор: admin от 30-10-2017, 01:30, посмотрело: 855

В данной статье будет рассказываться о применении библиотеки машинного зрения (openCV) для удаления эффекта радиального искажения (дисторсии) с фото и видео. Данный эффект также известен как эффект рыбьего глаза (fisheye) или distortion. Решение написать данную статью было принято после нескольких дней поиска информации в интернете. Не смотря на то, что есть гайды на английском языке, они не объясняют как правильно установить openCV, чтобы все работало. В статье присутствует готовый код.


Сразу привожу фото итогового результата. Слева оригинальное фото, справа — обработанное:


Убираем радиальное искажение с фото и видео при помощи библиотеки openCV и языка python Убираем радиальное искажение с фото и видео при помощи библиотеки openCV и языка python

Категория: Программирование

 

Pygest #15. Релизы, статьи, интересные проекты из мира Python [01 августа 2017 — 14 августа 2017]

Автор: admin от 14-08-2017, 10:25, посмотрело: 317

Pygest #15. Релизы, статьи, интересные проекты из мира Python [01 августа 2017 — 14 августа 2017] Всем привет! Это уже пятнадцатый выпуск дайджеста на Хабрахабр о новостях из мира Python.



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



А теперь к делу!
Перейти к дайджесту

Категория: Программирование, Веб-разработка

 

Метод оптимизации Trust-Region DOGLEG. Пример реализации на Python

Автор: admin от 13-08-2017, 08:25, посмотрело: 619

Метод оптимизации Trust-Region DOGLEG. Пример реализации на Python


Trust-region метод (TRM) является одним из самых важных численных методов оптимизации в решении проблем нелинейного программирования (nonlinear programming problems). Метод базируется на определении региона вокруг лучшего решения, в котором квадратичная модель аппроксимирует целевую функцию.



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



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

Категория: Программирование

 

Резервное копирование базы mysql и файлов на удаленный FTP — Python 3

Автор: admin от 11-08-2017, 23:30, посмотрело: 444

Начал изучать волшебный язык Python3 и решил испробовать его в действие на своем маленьком VPS.



На сервере стоит Mysql, Apache, nginx… во общем простой стандартный набор, там же хостятся с два десятка клиентских сайтов.



Каждый день делается резервная копия всех баз и файлов доменнов средствами приметного скрипта #!bin/bash



Я решил использовать Python 3… Вот непосредственно и сам код:
->

Категория: Веб-разработка, Linux

 

Начало работы с Wagtail CMS (Django) и GraphQL

Автор: admin от 8-08-2017, 16:35, посмотрело: 725

Если у вас появилась потребность добавить React в Wagtail CMS, да еще и с использованием GraphQL, то это руководство должно помочь вам в этом.



Начало работы с Wagtail CMS (Django) и GraphQL



Это перевод статьи из официального блога Wagtail, автор Brent Clark.
->

Категория: Программирование » Веб-разработка

 

Решение закрытой транспортной задачи с дополнительными условиями средствами Python

Автор: admin от 7-08-2017, 19:35, посмотрело: 600

Постановка задачи



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



Решение закрытой транспортной задачи средствами Python с классическим условиями для поставщиков и потребителей товара приведено в моей статье “Решение задач линейного программирования с использованием Python” [1].



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

Категория: Веб-разработка, Windows

 
Назад Вперед