Складові разом

У мене було досить багато роботи з часу мого останнього допису. Не можу сказати, що я приділив багато часу стабільному дифузійному або іншим візуальним AI моделям, але, ймовірно, я повернусь до них з часом з цікавості. Варто зазначити, що я завершив отримання ступеня бакалавра в галузі комп'ютерних інформаційних систем в Університеті штату Арізона. Відчувається добре, що я закінчив навчання на даний момент, і тепер можу зосередитись на переході до професії, удосконалюючи навички, що я сам обрав (риболовля ніколи не припиняється).

pic

Це твій хлопець

В результаті, я почав розробляти Flask веб-додаток, який буде фінальним користувацьким інтерфейсом для моєї щоденної системи аналізу подань SEC. Система складається з 3 Python скриптів, написаних для взаємодії з обліковим записом зберігання Azure та SQL базою даних, які намагаються парсити подання наступних типів (наразі):

  • 10-Q, 10-K
  • 6-K
  • 13F-HR, 13F-NT
  • SC 13D, SC 13G
  • S1, S3
  • 8K
  • 4
  • DEF 14A
  • SEC STAFF ACTION, SEC STAFF LETTER

Я розробив кілька структур даних для організації інформації, що містять ці подання:

  • Текстові секції
  • Фінансові звіти
  • PDF файли (текст витягується)
  • Звіти про володіння
  • Інформація про події 8K
  • Транзакції інсайдерів

В кінці кожного дня подання завантажуються та парситься в JSON об'єкти зазначених типів, які потім використовуються для заповнення SQL бази даних. Ось тут і починає працювати Flask додаток.

pic

Заповнена SQL база даних

Головна сторінка надає розподіл типів подань і індустрій, до яких вони належать, і додаток навігується здебільшого по цих 2 вимірах. Наприклад, користувач може натискати на вкладку 10-K, щоб побачити розподіл усіх 10-K, що були проаналізовані того дня, згрупованих за галузями, а потім за подавачами. Для кожного подавача відображаються текстові секції та фінансові звіти (мої дві JSON структури даних, що стосуються 10-K подань). Вкладки для інших типів подань, для яких я вже почав писати HTML шаблони, мають подібну загальну структуру з організацією у вигляді акордеону за галузями->подавачами.

pic

Головна / стартова сторінка

pic

Сторінка 10-K

Користувач також може вибрати перегляд подань за індустріями, в такому випадку вони побачать розподіл подань по індустріях, згрупованих як за типом подання, так і за подавачем/компанією.

pic

Індустріальний підсумок

Все це було достатньо тривіально для мене і мого молодшого розробника GPT, але мені потрібно прийняти кілька рішень щодо того, коли і де саме я хочу ввести більш просунуту аналітику. Наприклад, я планую використати модель NLP для аналізу текстових секцій, але потрібно вирішити, чи хочу я, щоб ця робота виконувалась заздалегідь за допомогою пайплайну/сервера, або тільки коли ці дані будуть запитуватись користувачем веб-додатку. Я також хотів би проводити аналіз настроїв для конкретних типів подань, індустрій та подавачів; подібні питання, коли саме це робити, виникають у контексті робочого процесу.

Моя перша думка — переважно робити всю важку роботу заздалегідь, а не на етапі веб-додатку. По-перше, це лише одне добове подання (кілька тисяч подань за нашими цілями, згідно з моїм досвідом), тому, чесно кажучи, це не повинно бути занадто обтяжливим або дорогим, щоб виконувати деякий аналіз, який кінцевий користувач може ніколи не запитати/використати.
По-друге, здається, що такий аналіз на основі машинного навчання в реальному часі може уповільнити роботу панелі приладів, але це я говорю без значного тестування цього аспекту. Таким чином, мій пайплайн з трьох скриптів може перетворитись на чотири, щоб зберегти простоту веб-додатку. У такому разі я, ймовірно, додам кілька додаткових таблиць до моєї SQL бази даних для зберігання даних аналізу, які Flask додаток просто буде витягувати.

Тож, коли я буду розробляти HTML шаблони для додатку, я також вирішуватиму, на якому етапі саме я хочу впровадити машинне навчання або будь-який інший аналіз, і на яких рівнях агрегації або групування це робити (за замовчуванням?: рівень подання, рівень подавача, рівень індустрії, рівень типу подання, індустрія X тип подання, подавач X тип подання). Наприклад, аналіз 10-K подань певної індустрії може дати дуже різний результат для настроїв, порівняно з 10-K поданнями іншої, як ви, ймовірно, могли б собі уявити.

Я з нетерпінням чекаю можливості поділитися своїм прогресом і сподіваюся, що незабаром ми зможемо побачити щось досить круте. З Новим роком, продовжуйте вчитися, як дитина.

З повагою.

Перекладено з: Piecing it Together

Leave a Reply

Your email address will not be published. Required fields are marked *