Skip to main content

SAFER package

Project description

SAFER

This guide provides SAFER model module

Baseline

  • Baseline
    • data_processing_m1
      • init.py
      • crf_data.py
      • location_data.py
      • sensor_data.py
    • data_processing_m2
      • init.py
      • crf_data.ppy
      • location_data.py
      • sensor_data.py
    • model1
      • init.py
      • model
        • tft_model.pkl
      • dataloader.py
      • model.py
      • predictor.py
    • model2
      • model
        • final_model.pkl
      • dataloader.py
      • model.py
      • preictor.py
    • setup.py
    • init.py
    • README.md

How To Use

Start pip install

!pip install saferx

m1

m1 data processing

  1. location data
  # Location 데이터 
    import saferx

  # saferx 패키지에서 LocationProcessor 사용
    location_processor = saferx.M1LocationProcessor()

  # CSV 파일에서 데이터 로드 및 전처리
    file_path = 'path_to_location_data.csv'
    processed_data = location_processor.load_data_from_csv(file_path)

  # 엔트로피 및 위치 가변성 계산
    resampled_data = location_processor.resample_and_calculate(processed_data)

  # 위치 레이블 할당
    location_dict = {
        (37.7749, -122.4194): 'hallway',
        (34.0522, -118.2437): 'ward'
    }
    labeled_data = location_processor.assign_location_labels(processed_data, location_dict)
  
  1. sensor data
    # saferx 패키지에서 M1SensorDataProcessor 사용
      import saferx

      # M1SensorDataProcessor 인스턴스 생성
      sensor_processor = saferx.M1SensorDataProcessor()

      # 센서 데이터 로드
      sensor_data = sensor_processor.load_sensing_data('path_to_sensor_data.csv')

      # 센서 데이터 처리
      processed_data = sensor_processor.process_sensing_data(sensor_data)

      # 데이터 집계
      aggregated_data = sensor_processor.aggregate_sensing_data(processed_data)

      # 열 이름 재정렬
      final_data = sensor_processor.reorganize_column_names(aggregated_data)

      # 결과 출력
      print(final_data.head())
  1. CRF data
  import saferx

  data_processor = saferx.M1DataProcessor()
  # 데이터 로드
  location_data, sensor_data, crf_data, trait_data = processor.load_data(
      location_file='location_data.csv',
      sensor_file='sensor_data.csv',
      crf_file='crf_data.csv',
      trait_file='trait_data.csv'
  )
  # 위치와 센서 데이터 병합
  merged_data = processor.merge_location_and_sensor()

  # CRF 데이터 병합
  merged_data_with_crf = processor.process_crf_data()

  # 성향 데이터 병합
  merged_data_with_traits = processor.merge_trait_data()

  # 자살 플래그 설정
  suicide_flags = [('John Doe', pd.Timestamp('2024-01-15 08:00:00'))]
  merged_data_with_flags = processor.clean_and_set_suicide_flag(suicide_flags)

  # 자해 발생 데이터 필터링
  filtered_data = processor.filter_data_for_self_harm_and_random()

  # 결과 확인
  print(filtered_data.head())
      

m1 model

  import torch
  import saferx
    # 데이터 경로 설정
    data_paths = ['merged_data_m1.csv']

    # PredictionHandler 객체 생성 (모델 경로는 고정)
    predictor = saferx.PredictionHandler(data_paths, batch_size=16, device='cpu')
   
    # 예측 수행
    predictions = predictor.predict()

    print(predictions)

m2

m2 data processing

  1. location data
  # Location 데이터 
    import saferx

  # saferx 패키지에서 LocationProcessor 사용
    location_processor = saferx.M2LocationProcessor()

  # CSV 파일에서 데이터 로드 및 전처리
    file_path = 'path_to_location_data.csv'
    processed_data = location_processor.load_data_from_csv(file_path)

  # 엔트로피 및 위치 가변성 계산
    resampled_data = location_processor.resample_and_calculate(processed_data)

  # 위치 레이블 할당
    location_dict = {
        (37.7749, -122.4194): 'hallway',
        (34.0522, -118.2437): 'ward'
    }
    labeled_data = location_processor.assign_location_labels(processed_data, location_dict)
  1. sensor data
      # saferx 패키지에서 M2SensorDataProcessor 사용
      import saferx

      # M1SensorDataProcessor 인스턴스 생성
      sensor_processor = saferx.M2SensorDataProcessor()

      # 센서 데이터 로드
      sensor_data = sensor_processor.load_sensing_data('path_to_sensor_data.csv')

      # 센서 데이터 처리
      processed_data = sensor_processor.process_sensing_data(sensor_data)

      # 데이터 집계
      aggregated_data = sensor_processor.aggregate_sensing_data(processed_data)

      # 열 이름 재정렬
      final_data = sensor_processor.reorganize_column_names(aggregated_data)

      # 결과 출력
      print(final_data.head())
  1. CRF data
  import saferx

  data_processor = saferx.M2DataProcessor()

  # 데이터 로드
  processor.load_data(
      location_file='location_data.csv',
      sensor_file='sensor_data.csv',
      crf_file='crf_data.csv',
      trait_file='trait_data.csv'
  )

  # 위치와 센서 데이터 병합
  processor.merge_location_and_sensor()

  # CRF 데이터 처리 및 병합
  processor.process_crf_data()

  # 성향 데이터 병합
  merged_data = processor.merge_trait_data()

  # 최종 결과 확인
  print(merged_data.head())

m2 model

   import torch
   import saferx

   data_path = 'merged_data_m2.csv'  # 데이터 경로 (CRF, sensor, location 등 합친 상태)

   device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')

   # Predictor 객체 생성
   predictor = saferx.Predictor(device=device)

   # 데이터 로드 및 전처리
   data_loader = predictor.preprocess_data(data_path)

   # 예측 수행
   predictions = predictor.predict(data_loader)

   # 예측 결과 출력
   print(predictions)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

saferx-0.3.1.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

saferx-0.3.1-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file saferx-0.3.1.tar.gz.

File metadata

  • Download URL: saferx-0.3.1.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.16

File hashes

Hashes for saferx-0.3.1.tar.gz
Algorithm Hash digest
SHA256 e8c4df6856106770a1330524683c7a3f077864d4ab082258e8210c8c49835e27
MD5 3d1016eaf3ff84e4d5f3cfaca732101e
BLAKE2b-256 331b5805bad003c619d8b246b0e285e1730a6c179c26bff636e5445bcc0f0506

See more details on using hashes here.

File details

Details for the file saferx-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: saferx-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.16

File hashes

Hashes for saferx-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8383a879b0b4d661e13c32726202790e0a2fd8ecde1e037416bada61dbe00b76
MD5 001923bfd7ffc6a34b79f78db6a42552
BLAKE2b-256 0aa2967054cdc4790d55f81f8e47ab302f999ee638df9c7eec63d6d956696f83

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page