Danilo Onishi, Developer in Registro - State of São Paulo, Brazil
Danilo is available for hire
Hire Danilo

Danilo Onishi

Verified Expert  in Engineering

Artificial Intelligence (AI) Developer

Location
Registro - State of São Paulo, Brazil
Toptal Member Since
September 27, 2020

Danilo is a machine learning engineer with a master's degree in computer science from the Nagoya Institute of Technology and 7+ years of experience in automatic speech recognition (ASR), natural language processing (NLP), and audio classification. From research to production, he's been involved in all steps of the ML lifecycle. He also designs data pipelines and performs training, evaluation, and deployment of deep learning models for education and business intelligence applications.

Availability

Part-time

Preferred Environment

Linux, Python, Vi

The most amazing...

...production system I've built was a speech recognition back end with custom acoustic and language models that serves 200,000+ requests per week.

Work Experience

Machine Learning Engineer

2021 - 2022
VoiceOps
  • Designed a training pipeline for BERT-based text-to-text models, including data loading, text preprocessing, training, validation, tracking of metrics, logs, and output files.
  • Trained and evaluated text-to-text models and benchmarked them against third-party services and legacy systems used by the company.
  • Wrote new back-end APIs for legacy NLP systems to migrate them to a new infrastructure managed by the Hashicorp Nomad container orchestrator.
  • Created and implemented a complete data pipeline for an NLP-based semantic search system, including the periodic check for new files to be processed, text embeddings generation and storing, and the back-end API.
Technologies: Machine Learning, Deep Learning, Generative Pre-trained Transformers (GPT), Natural Language Processing (NLP), Python, Back-end, APIs, Conda, Pandas, Databases, PostgreSQL, MySQL, Pytest, Nomad, Prometheus, Grafana

Machine Learning Expert

2020 - 2021
Online Learning Platform (Toptal Client)
  • Trained, evaluated, and improved automatic speech recognition (ASR) models. The final model more than halved the error rate compared to Google Speech Recognition for the same task.
  • Designed a scalable back-end API that receives audio files in any format and sampling rate and returns the text recognition result.
  • Deployed the system to GCP Cloud Run and monitored its results. The system had 200,000+ requests per week as of early September 2021.
  • Created data preprocessing tools in Python to retrieve the client's audio data from GCP buckets and prepare it for ASR model training and evaluation.
  • Designed training and testing tools for audio classification in speech recognition using TensorFlow.
Technologies: Python, APIs, Back-end, TensorFlow, Speech Recognition, Automatic Speech Recognition (ASR), Kaldi, Docker, Google Cloud Platform (GCP), Artificial Intelligence (AI), Machine Learning, Deep Learning, Linux, Bash, Git, Speech to Text, Pandas, Neural Networks

Software Engineer

2014 - 2019
Yume Technology Co. Ltd. (Assigned to Honda Research Institute Japan)
  • Co-authored a system that achieved the third-best and sixth-best team results for two different metrics of the DCASE Challenge 2018, task 5.
  • Implemented a server cluster structure that increased the speed of speech-model training five-fold compared to training models on a single server.
  • Kick-started using deep learning models for speech recognition at the company, replacing legacy Hidden Markov models with DNNs, CNNs, attention models, and others.
  • Trained and evaluated acoustic and language models for speech recognition in English and Japanese, targeting several applications such as robots, cars, and meetings.
  • Maintained Git repositories for software tools and frameworks to be shared with other developers while fixing bugs and adding new functionalities as requested.
  • Analyzed and summarized academic papers to grasp the state-of-the-art techniques in relevant fields and evaluate which ones could be integrated into the frameworks used by the team.
  • Evaluated an audio dereverberation algorithm and its effects on speech recognition performance and ported its MATLAB implementation to C++.
Technologies: Generative Pre-trained Transformers (GPT), Natural Language Processing (NLP), Speech to Text, Data Science, Docker, Artificial Intelligence (AI), Python, Scikit-learn, NumPy, Kaldi, Chainer, TensorFlow, Git, Slurm Workload Manager, Speech Recognition, Deep Learning, Machine Learning, Bash, Neural Networks, Digital Signal Processing, DSP

Junior Development Engineer

2009 - 2010
Siemens Enterprise Communications (Now Unify)
  • Designed and assembled microcontroller programming tools that saved the company €2,500 per piece.
  • Assessed telephone hardware problems reported by the customer support team and submitted firmware fixes.
  • Validated country-specified settings for telephone hardware before its international release.
  • Received a promotion to this position in mid-2010 after serving as an engineering intern.
Technologies: PCB Design, Bash, Embedded C

Acoustic Event Recognition System for the DCASE Challenge 2018, Task 5

The fifth task of the DCASE Challenge 2018 involved training systems in recognizing acoustic events of routine activities, such as cooking, speaking on the phone, or watching TV.

Our proposed solution was a multi-task CNN network with shared filters between the tasks. I was in charge of fixing and improving a preexisting TensorFlow implementation, training and tuning the models, and writing the technical report.

Our implementation achieved the third-best team result for the known microphone array and the sixth-best team result for the unknown microphone array.

Environmental Sound Recognition Aiding Device

This project involved an environmental sound recognition device using machine learning to support hearing-impaired people. It was developed at the laboratory where I worked while earning my master's degree. I supported the FPGA-based hardware redesign (about the size of two credit cards), and eventually created myself a miniaturized design of it (the size of an SD card) for my master's thesis.
2011 - 2013

Master's Degree in Scientific and Engineering Simulation

Nagoya Institute of Technology - Nagoya, Japan

2005 - 2010

Bachelor's Degree in Electronics and Telecommunications

Federal University of Technology - Curitiba, Parana State, Brazil

Libraries/APIs

NumPy, Scikit-learn, TensorFlow, Pandas

Tools

Git, Kaldi, Pytest, Grafana, Whisper

Languages

Python, Bash, VHDL, C, C++, Embedded C

Platforms

Linux, Docker, Amazon Web Services (AWS), Google Cloud Platform (GCP)

Storage

Databases, PostgreSQL, MySQL

Frameworks

Chainer

Paradigms

Data Science

Industry Expertise

Telecommunications

Other

Machine Learning, Deep Learning, Artificial Intelligence (AI), Speech Recognition, Vi, Natural Language Processing (NLP), Speech to Text, Neural Networks, Automatic Speech Recognition (ASR), Conda, Generative Pre-trained Transformers (GPT), Digital Signal Processing, PCB Design, Embedded Hardware, Software Design, Slurm Workload Manager, FPGA, APIs, Back-end, Nomad, Prometheus, DSP

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring