Skip to content

Releases: fga-eps-mds/2022-2-IsItKbs

Release 2

07 Feb 01:28
01971d7
Compare
Choose a tag to compare

Release 2

[ v2,0,0] [ 6/2/2023 ]

🔁 Atualização

Antes de começarmos, para atualizar a sua versão do pacote, digite o seguinte comando no seu terminal:

pip install --upgrade isitkbs

📬 Novidades

  • Novas funções;
  • Melhora significativa na acurácia;
  • Adição de um novo modelo;
  • Refatoração e limpeza do código;
  • Realização de testes unitários;

👨‍💻 Novas funcionalidades

  • Novas funções de análise de keyboard smashing; (#103, #102)
  • Novas funções auxiliares para análise lexical; (#122)
  • Melhora da acurácia da função antiga; (#122)
  • Adição do modelo Naive Bayes; (#101)
  • Adição dos testes unitários; (#100, #121)
  • Refatoração das funções de alta complexidade; (#122, #100)

🗂 Documentação adicionada

  • Configuração do ambiente para uso dos testes unitários (#100)
  • Como utilizar o Coveralls para os testes unitários (#100)
  • Criação de DocStrings para todas as classes e métodos do projeto (#122)

🪰 Tratamento de Bugs

A release antiga não possuía nenhum bug de funcionamento, somente uma acurácia reduzida, a qual foi melhorada, então:

  • Para o bem da nação, Batatatata foi impedido 🥳;

Contudo, obviamente, a função não possui 100% de precisão. Palavras que não necessariamente existam mas tem uma grafia semelhante à de palavras normais ainda passam.

Release 1

11 Dec 20:51
f435d18
Compare
Choose a tag to compare

Release 1

[ v1.0.0 ] [ 14/12/2022 ]

Apresentação

Nosso projeto consiste em um pacote python que contém uma função destinada à detecção de keyboard smashing em palavras isoladas ou em frases compostas, inicialmente somente na língua inglesa. Tais funcionalidades podem ser úteis para a limpeza ou a filtragem de dados, por exemplo.
O modelo escolhido para o treinamento do algoritmo nessa release é o RandomForestClassifier, devido à acurácia alcançada ao utilizá-lo. Futuramente adicionaremos novos modelos para o usuário poder escolher.

Novas features

(#21, #17, #24, #18, #19)

# Estrutura da função
is_kbs(input_data, analyser='word', model='randomForest')
  • Detecção de keyboard smashing em palavras isoladas. Retorno: 0 (negativo) ou 1 (positivo).
  • Detecção de keyboard smashing em frases. Retorno: 0, se negativo, ou lista de palavras detectadas como keyboard smashing, se positivo.

Exemplos de utilização

is_kbs(“Newspaper”)  # Chamada da função
0                    # Valor de retorno

is_kbs("ajfkjkasf")  # Chamada da função
1                    # Valor de retorno
is_kbs(“I am fine”, analyser=phrases”)   # Chamada da função especificando 'phrases'
0                                         # Valores de retorno

is_kbs(“I am fknwq”, analyser=phrases”)  # Chamada da função especificando 'phrases'
['fknwq']                                 # Valores de retorno

Documentação adicionada

  • Descrição (#8)
  • README (#8)
  • GitPage (#29, #76)
  • Code of Conduct (#44)
  • Contributing Guide (#50)
  • License (#8)
  • Security Policy (#67)
  • Issue template (#53)
  • Pull Request template (#57)
  • WorkFlow (#51)
  • User Story Map (#54)
  • Roadmap (#81)

Bugs encontrados

Nós não encontramos bugs sérios ao testar a função, apenas constatamos uma pequena imprecisão, que já era esperada.

Exemplos

# Reconhece uma palavra real como um K.S.
is_kbs("my") 
1               
# Reconhe "my" como K.S. e não reconhece "Srthyr".
is_kbs("My nqme is Srthyr", "phrases")
[['My'], ['nqme']]

Para a próxima release

  • Aumentar acurácia do algoritmo existente
  • Treinar novos modelos
  • Desenvolver novas funções